@sisense/sdk-ui 1.11.0 → 1.13.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/api/chat-rest-api.d.ts +3 -4
- package/dist/ai/api/hooks.d.ts +2 -2
- package/dist/ai/api/types.d.ts +2 -16
- package/dist/ai/buttons/scroll-to-bottom-button.d.ts +3 -0
- package/dist/ai/buttons/thumbs-down-button.d.ts +2 -1
- package/dist/ai/buttons/thumbs-up-button.d.ts +2 -1
- package/dist/ai/chat-config.d.ts +18 -0
- package/dist/ai/chat-dropup.d.ts +2 -1
- package/dist/ai/chat-input.d.ts +3 -1
- package/dist/ai/common/constants.d.ts +1 -0
- package/dist/ai/common/icon-button.d.ts +2 -3
- package/dist/ai/common/tooltip.d.ts +2 -2
- package/dist/ai/data-topics/data-topic-list.d.ts +0 -1
- package/dist/ai/icons/light-bulb-icon.d.ts +1 -3
- package/dist/ai/icons/scroll-to-bottom-icon.d.ts +1 -0
- package/dist/ai/index.d.ts +1 -0
- package/dist/ai/messages/clickable-message.d.ts +2 -1
- package/dist/ai/messages/feedback-wrapper.d.ts +2 -2
- package/dist/ai/messages/text-message.d.ts +5 -0
- package/dist/ai/scroll-to-bottom.d.ts +7 -0
- package/dist/ai/use-last-nlq-response.d.ts +19 -0
- package/dist/ai.cjs +471 -0
- package/dist/ai.js +1143 -1228
- package/dist/api/types/dashboard-dto.d.ts +2 -1
- package/dist/app/client-application.d.ts +1 -0
- package/dist/chart/helpers/use-chart-renderer-props.d.ts +1 -0
- package/dist/chart/helpers/use-synced-data.d.ts +1 -1
- package/dist/chart-options-processor/chart-options-service.d.ts +4 -0
- package/dist/chart-options-processor/subtype-to-design-options.d.ts +13 -1
- package/dist/chart-options-processor/translations/funnel-plot-options.d.ts +2 -1
- package/dist/chart-options-processor/translations/pie-plot-options.d.ts +2 -1
- package/dist/chart-options-processor/translations/tooltip-utils.d.ts +2 -0
- package/dist/common/components/loading-indicator.d.ts +17 -4
- package/dist/common/components/loading-overlay.d.ts +1 -0
- package/dist/common/hooks/use-fetch.d.ts +1 -1
- package/dist/common/hooks/use-has-changed.d.ts +9 -0
- package/dist/common/hooks/use-should-load.d.ts +12 -0
- package/dist/common-filters/common-filters-connector.d.ts +9 -0
- package/dist/common-filters/selection-utils.d.ts +11 -0
- package/dist/common-filters/types.d.ts +14 -0
- package/dist/common-filters/use-common-filters.d.ts +13 -0
- package/dist/common-filters/utils.d.ts +9 -0
- package/dist/common-filters/widget-header-clear-selection-button.d.ts +3 -0
- package/dist/dashboard/components/content-panel.d.ts +41 -0
- package/dist/dashboard/components/dashboard-container.d.ts +2 -0
- package/dist/dashboard/components/dashboard-header.d.ts +2 -0
- package/dist/dashboard/components/plugin-service.d.ts +21 -0
- package/dist/dashboard/constants.d.ts +2 -0
- package/dist/dashboard/dashboard-by-id.d.ts +7 -0
- package/dist/dashboard/dashboard.d.ts +8 -0
- package/dist/dashboard/types.d.ts +44 -0
- package/dist/dashboard/utils.d.ts +2 -0
- package/dist/dashboard-widget/translate-dashboard-filters.d.ts +4772 -2
- package/dist/dashboard-widget/translate-widget-data-options.d.ts +1 -1
- package/dist/dashboard-widget/translate-widget-filters.d.ts +200 -37
- package/dist/dashboard-widget/types.d.ts +1 -0
- package/dist/dashboard-widget/utils.d.ts +3 -1
- package/dist/dynamic-size-container/dynamic-size-container.d.ts +8 -0
- package/dist/filters/components/cascading-filter-tile/cascading-filter-tile.d.ts +25 -0
- package/dist/filters/components/cascading-filter-tile/cascading-level-filter.d.ts +21 -0
- package/dist/filters/components/cascading-filter-tile/index.d.ts +1 -0
- package/dist/filters/components/common/date-range-field-button.d.ts +3 -6
- package/dist/filters/components/criteria-filter-tile/criteria-filter-operations.d.ts +2 -2
- package/dist/filters/components/criteria-filter-tile/criteria-filter-tile.d.ts +6 -0
- package/dist/filters/components/custom-filter-tile.d.ts +43 -0
- package/dist/filters/components/date-filter/date-filter/date-filter.d.ts +15 -0
- package/dist/filters/components/date-filter/date-range-filter-tile/date-range-filter-display.d.ts +6 -0
- package/dist/filters/components/date-filter/date-range-filter-tile/date-range-filter-tile.d.ts +12 -0
- package/dist/filters/components/date-filter/date-range-filter-tile/editable-date-range-filter.d.ts +14 -0
- package/dist/filters/components/date-filter/date-range-filter-tile/use-date-limits.d.ts +1 -2
- package/dist/filters/components/date-filter/relative-date-filter-tile/relative-date-filter-tile.d.ts +8 -2
- package/dist/filters/components/date-filter/relative-date-filter-tile/relative-date-filter.d.ts +4 -4
- package/dist/filters/components/filter-tile.d.ts +21 -1
- package/dist/filters/components/filters-panel/filters-panel-tile.d.ts +4 -2
- package/dist/filters/components/filters-panel/filters-panel.d.ts +4 -2
- package/dist/filters/components/icons/arrow-icon.d.ts +6 -0
- package/dist/filters/components/icons/double-arrow-icon.d.ts +6 -0
- package/dist/filters/components/member-filter-tile/member-filter-tile.d.ts +4 -1
- package/dist/filters/components/member-filter-tile/member-list.d.ts +1 -1
- package/dist/filters/hooks/use-synchronized-filter.d.ts +12 -0
- package/dist/filters/index.d.ts +2 -0
- package/dist/filters/utils.d.ts +7 -0
- package/dist/highcharts-memorized.d.ts +1 -1
- package/dist/index.cjs +830 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +25012 -20426
- package/dist/models/dashboard/dashboard-model.d.ts +66 -0
- package/dist/models/dashboard/get-dashboard-model.d.ts +3 -1
- package/dist/models/dashboard/get-dashboard-models.d.ts +2 -1
- package/dist/models/dashboard/index.d.ts +1 -1
- package/dist/models/dashboard/translate-dashboard-utils.d.ts +7 -0
- package/dist/models/dashboard/types.d.ts +5 -14
- package/dist/models/dashboard/use-get-dashboard-model.d.ts +1 -1
- package/dist/models/dashboard/use-get-dashboard-models.d.ts +1 -1
- package/dist/models/widget/get-widget-model.d.ts +2 -1
- package/dist/models/widget/translate-widget.d.ts +5 -2
- package/dist/models/widget/types.d.ts +9 -0
- package/dist/models/widget/widget-model.d.ts +31 -1
- package/dist/query/query-result-date-formatting.d.ts +1 -0
- package/dist/query-execution/query-params-comparator.d.ts +1 -7
- package/dist/query-execution/use-execute-pivot-query.d.ts +2 -5
- package/dist/query-execution/use-execute-query-by-widget-id.d.ts +3 -4
- package/dist/translation/resources/en.d.ts +5 -0
- package/dist/translation/resources/index.d.ts +10 -0
- package/dist/types.d.ts +40 -13
- package/dist/useQuery-C8plkncQ.cjs +603 -0
- package/dist/{debounce-BbwkW3DX.js → useQuery-D5W0RM1R.js} +21443 -21103
- package/dist/utils/create-cache.d.ts +0 -1
- package/dist/utils/utility-types.d.ts +1 -0
- package/dist/widgets/common/drilldown-breadcrumbs/styled-buttons.d.ts +2 -2
- package/package.json +12 -8
- package/dist/ai/icons/thumbs-down-hovered-icon.d.ts +0 -2
- package/dist/ai/icons/thumbs-up-hovered-icon.d.ts +0 -2
- package/dist/ai/messages/clear-history-success-message.d.ts +0 -1
- package/dist/filters/components/icons/arrow-right-icon.d.ts +0 -2
- package/dist/filters/components/icons/double-arrow-right-icon.d.ts +0 -2
- package/dist/models/dashboard/translate-dashboard.d.ts +0 -4
|
@@ -21,7 +21,9 @@ export declare function getRootPanelItem(item: PanelItem): PanelItem;
|
|
|
21
21
|
export declare function getSortType(jaqlSort: `${JaqlSortDirection}` | undefined): SortDirection;
|
|
22
22
|
/**
|
|
23
23
|
* Merges two arrays of filter objects, prioritizing 'targetFilters' over 'sourceFilters',
|
|
24
|
-
* and removes duplicates based on filter compare id
|
|
24
|
+
* and removes duplicates based on filter compare id.
|
|
25
|
+
*
|
|
26
|
+
* Saves the 'sourceFilters' filters order, while adds new filters to the end of the array.
|
|
25
27
|
*
|
|
26
28
|
* @param {Filter[]} [sourceFilters=[]] - The source array of filter objects.
|
|
27
29
|
* @param {Filter[]} [targetFilters=[]] - The target array of filter objects.
|
|
@@ -24,7 +24,15 @@ export type DynamicSizeContainerProps = {
|
|
|
24
24
|
* (3) Then the container's size is used.
|
|
25
25
|
* (4) Otherwise the "defaultSize" is used.
|
|
26
26
|
*
|
|
27
|
+
* Component Structure:
|
|
28
|
+
* The component layout consists of multiple layers to address different requirements:
|
|
29
|
+
* - Container layer: The top `div` that handles inheriting the parent size.
|
|
30
|
+
* - Content layer: The middle `div` that represents the actual content size.
|
|
31
|
+
* - Detached content layer: The bottom `div` that detaches the internal content (using "absolute" positioning) from the layout to prevent the parent layout from being constrained by its content size.
|
|
27
32
|
*
|
|
33
|
+
* Limitations:
|
|
34
|
+
* - It is not possible to determine if a parent element has no size to inherit or if its size has been explicitly set to "0px".
|
|
35
|
+
* Therefore, the default size will be applied when the parent element's size is set to "0px".
|
|
28
36
|
*
|
|
29
37
|
* @param {DynamicSizeContainerProps} props - DynamicSizeContainer properties.
|
|
30
38
|
* @returns {JSX.Element} The DynamicSizeContainer component.
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { CascadingFilter, Filter } from '@sisense/sdk-data';
|
|
3
|
+
import { FilterVariant } from '../common/filter-utils.js';
|
|
4
|
+
/**
|
|
5
|
+
* Props for {@link CascadingFilterTile}
|
|
6
|
+
*
|
|
7
|
+
* @internal
|
|
8
|
+
*/
|
|
9
|
+
export interface CascadingFilterTileProps {
|
|
10
|
+
/** Cascading filter object to initialize filter type and default values */
|
|
11
|
+
filter: CascadingFilter;
|
|
12
|
+
/** Arrangement of the filter inputs. Use vertical for standard filter tiles and horizontal for toolbars */
|
|
13
|
+
arrangement?: FilterVariant;
|
|
14
|
+
/** Callback returning filter object, or null for failure */
|
|
15
|
+
onChange: (filter: Filter) => void;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* UI component representing group of cascading (dependent) filters.
|
|
19
|
+
*
|
|
20
|
+
* @param props - Cascading filter tile props
|
|
21
|
+
* @returns Cascading filter tile component
|
|
22
|
+
* @group Filter Tiles
|
|
23
|
+
* @internal
|
|
24
|
+
*/
|
|
25
|
+
export declare const CascadingFilterTile: import("react").FunctionComponent<CascadingFilterTileProps>;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Filter } from '@sisense/sdk-data';
|
|
2
|
+
/**
|
|
3
|
+
* Props of the {@link CascadingLevelFilterTile} component
|
|
4
|
+
*
|
|
5
|
+
* @internal
|
|
6
|
+
*/
|
|
7
|
+
export type CascadingLevelFilterTileProps = {
|
|
8
|
+
/** Filter to display */
|
|
9
|
+
filter: Filter;
|
|
10
|
+
parentFilters: Filter[];
|
|
11
|
+
/** Callback to handle filter change */
|
|
12
|
+
onChange: (filter: Filter | null) => void;
|
|
13
|
+
/** Whether the filter is the last in the list */
|
|
14
|
+
isLast?: boolean;
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* Filter tile component that renders a level filter based on its type
|
|
18
|
+
*
|
|
19
|
+
* @internal
|
|
20
|
+
*/
|
|
21
|
+
export declare const CascadingLevelFilterTile: ({ filter, parentFilters, onChange, isLast, }: CascadingLevelFilterTileProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { CascadingFilterTile, type CascadingFilterTileProps } from './cascading-filter-tile';
|
|
@@ -1,14 +1,11 @@
|
|
|
1
|
-
import { CompleteThemeSettings } from '../../../types';
|
|
2
1
|
import { type FunctionComponent, type ButtonHTMLAttributes } from 'react';
|
|
3
|
-
|
|
2
|
+
import { Themable } from '../../../theme-provider/types';
|
|
3
|
+
export type Variant = 'white' | 'grey';
|
|
4
4
|
type InputProps = {
|
|
5
5
|
variant?: Variant;
|
|
6
6
|
label?: string;
|
|
7
7
|
isActive?: boolean;
|
|
8
8
|
} & ButtonHTMLAttributes<HTMLButtonElement>;
|
|
9
|
-
type
|
|
10
|
-
theme: CompleteThemeSettings;
|
|
11
|
-
};
|
|
12
|
-
export type DateRangeFieldButtonProps = InputProps & ThemeMixin;
|
|
9
|
+
export type DateRangeFieldButtonProps = InputProps & Themable;
|
|
13
10
|
export declare const DateRangeFieldButton: FunctionComponent<DateRangeFieldButtonProps>;
|
|
14
11
|
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Measure } from '@sisense/sdk-data';
|
|
1
|
+
import { Filter, Measure } from '@sisense/sdk-data';
|
|
2
2
|
import { CriteriaFilterType } from './criteria-filter-tile';
|
|
3
3
|
/**
|
|
4
4
|
* Collection of filter options for the {@link CriteriaFilterMenu},
|
|
@@ -37,7 +37,7 @@ export type FilterOptionType = keyof typeof FilterOption;
|
|
|
37
37
|
* @internal
|
|
38
38
|
*/
|
|
39
39
|
export type FilterInfo = {
|
|
40
|
-
fn:
|
|
40
|
+
fn: (...args: any[]) => Filter;
|
|
41
41
|
inputCount: number;
|
|
42
42
|
symbols: string[];
|
|
43
43
|
message: string;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
+
import { FilterTileDesignOptions } from '../filter-tile.js';
|
|
2
3
|
import { ExcludeFilter, Filter, Measure, NumericFilter, RankingFilter, TextFilter } from '@sisense/sdk-data';
|
|
3
4
|
import { FilterVariant } from '../common/filter-utils.js';
|
|
4
5
|
/**
|
|
@@ -15,6 +16,11 @@ export interface CriteriaFilterTileProps {
|
|
|
15
16
|
onUpdate: (filter: Filter | null) => void;
|
|
16
17
|
/** List of available measures to rank by. Required only for ranking filters. */
|
|
17
18
|
measures?: Measure[];
|
|
19
|
+
/**
|
|
20
|
+
* Design options for the filter tile component
|
|
21
|
+
* @internal
|
|
22
|
+
*/
|
|
23
|
+
tileDesignOptions?: FilterTileDesignOptions;
|
|
18
24
|
}
|
|
19
25
|
export type CriteriaFilterType = NumericFilter | TextFilter | RankingFilter | ExcludeFilter;
|
|
20
26
|
/**
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { Filter } from '@sisense/sdk-data';
|
|
3
|
+
/**
|
|
4
|
+
* Props for {@link CustomFilterTile}
|
|
5
|
+
*
|
|
6
|
+
* @internal
|
|
7
|
+
*/
|
|
8
|
+
export interface CustomFilterTileProps {
|
|
9
|
+
/** Custom filter. */
|
|
10
|
+
filter: Filter;
|
|
11
|
+
/**
|
|
12
|
+
* Callback to handle changes in custom filter.
|
|
13
|
+
*
|
|
14
|
+
* @param filter - Custom filter
|
|
15
|
+
*/
|
|
16
|
+
onUpdate: (filter: Filter | null) => void;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* UI component for a custom filter defined with JAQL.
|
|
20
|
+
*
|
|
21
|
+
* @internal
|
|
22
|
+
* @example
|
|
23
|
+
* ```tsx
|
|
24
|
+
* const filterJaql = { from: 10, to: 20000 };
|
|
25
|
+
*
|
|
26
|
+
* const [customFilter, setCustomFilter] = useState<Filter>(
|
|
27
|
+
* filterFactory.customFilter(DM.Commerce.Cost, filterJaql),
|
|
28
|
+
* );
|
|
29
|
+
*
|
|
30
|
+
* return (
|
|
31
|
+
* <CustomFilterTile
|
|
32
|
+
* filter={customFilter}
|
|
33
|
+
* onChange={(filter: Filter) => {
|
|
34
|
+
* setCustomFilter(filter);
|
|
35
|
+
* }}
|
|
36
|
+
* />
|
|
37
|
+
* );
|
|
38
|
+
* ```
|
|
39
|
+
* @param props - Custom filter tile props
|
|
40
|
+
* @returns Custom filter tile component
|
|
41
|
+
* @group Filter Tiles
|
|
42
|
+
*/
|
|
43
|
+
export declare const CustomFilterTile: import("react").FunctionComponent<CustomFilterTileProps>;
|
|
@@ -27,6 +27,21 @@ export type DateRangeFilterProps = {
|
|
|
27
27
|
* Whether this is a dependent filter.
|
|
28
28
|
*/
|
|
29
29
|
isDependent?: boolean;
|
|
30
|
+
/**
|
|
31
|
+
* The variant of the date range field button.
|
|
32
|
+
* To be compatible with the old DateRangeFilterTile.
|
|
33
|
+
*
|
|
34
|
+
* TODO: Remove this prop when the old DateRangeFilterTile is deprecated.
|
|
35
|
+
* @internal
|
|
36
|
+
* @default 'grey'
|
|
37
|
+
*/
|
|
38
|
+
variant?: 'white' | 'grey';
|
|
39
|
+
/**
|
|
40
|
+
* Whether the filter is disabled.
|
|
41
|
+
*
|
|
42
|
+
* @internal
|
|
43
|
+
*/
|
|
44
|
+
disabled?: boolean;
|
|
30
45
|
};
|
|
31
46
|
/**
|
|
32
47
|
* Date Filter component for filtering data by date range.
|
package/dist/filters/components/date-filter/date-range-filter-tile/date-range-filter-tile.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { LevelAttribute, DataSource, Filter } from '@sisense/sdk-data';
|
|
3
|
+
import { FilterTileDesignOptions } from '../../filter-tile';
|
|
3
4
|
export interface DateRangeFilterTileProps {
|
|
4
5
|
/**
|
|
5
6
|
* Filter tile title
|
|
@@ -41,6 +42,17 @@ export interface DateRangeFilterTileProps {
|
|
|
41
42
|
* List of filters this filter is dependent on.
|
|
42
43
|
*/
|
|
43
44
|
parentFilters?: Filter[];
|
|
45
|
+
/**
|
|
46
|
+
* Whether to display the filter as a tiled version.
|
|
47
|
+
* @default false
|
|
48
|
+
* @internal
|
|
49
|
+
*/
|
|
50
|
+
tiled?: boolean;
|
|
51
|
+
/**
|
|
52
|
+
* Design options for the filter tile component
|
|
53
|
+
* @internal
|
|
54
|
+
*/
|
|
55
|
+
tileDesignOptions?: FilterTileDesignOptions;
|
|
44
56
|
}
|
|
45
57
|
/**
|
|
46
58
|
* Date Range Filter Tile component for filtering data by date range.
|
package/dist/filters/components/date-filter/date-range-filter-tile/editable-date-range-filter.d.ts
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { DateRangeFilter } from '@sisense/sdk-data';
|
|
2
|
+
import type { DateRangeFilterTileProps } from './date-range-filter-tile';
|
|
3
|
+
import { DateLimits } from './use-date-limits';
|
|
4
|
+
type EditableDateRangeFilterProps = DateRangeFilterTileProps & {
|
|
5
|
+
filter: DateRangeFilter;
|
|
6
|
+
dateLimits: Required<DateLimits>;
|
|
7
|
+
isOldDateRangeFilterTile?: boolean;
|
|
8
|
+
disabled?: boolean;
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* Editable Date Range Filter component for filtering data by date range.
|
|
12
|
+
*/
|
|
13
|
+
export declare const EditableDateRangeFilter: (props: EditableDateRangeFilterProps) => import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
export {};
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { DataSource, Filter, LevelAttribute } from '@sisense/sdk-data';
|
|
2
|
-
type DateLimits = {
|
|
2
|
+
export type DateLimits = {
|
|
3
3
|
minDate?: string;
|
|
4
4
|
maxDate?: string;
|
|
5
5
|
};
|
|
6
6
|
export declare const useDateLimits: (userLimits: DateLimits, attribute: LevelAttribute, dataSource?: DataSource, parentFilters?: Filter[]) => Required<DateLimits> | null;
|
|
7
|
-
export {};
|
package/dist/filters/components/date-filter/relative-date-filter-tile/relative-date-filter-tile.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { Filter } from '@sisense/sdk-data';
|
|
3
3
|
import { FilterVariant } from '../../common/index.js';
|
|
4
|
+
import { FilterTileDesignOptions } from '../../filter-tile.js';
|
|
4
5
|
/**
|
|
5
6
|
* Props for {@link RelativeDateFilterTile}
|
|
6
7
|
*/
|
|
@@ -14,9 +15,9 @@ export interface RelativeDateFilterTileProps {
|
|
|
14
15
|
/**
|
|
15
16
|
* Callback function that is called when the relative date filter object should be updated.
|
|
16
17
|
*
|
|
17
|
-
* @param filter - Relative date filter
|
|
18
|
+
* @param filter - Relative date filter
|
|
18
19
|
*/
|
|
19
|
-
onUpdate: (filter: Filter
|
|
20
|
+
onUpdate: (filter: Filter) => void;
|
|
20
21
|
/**
|
|
21
22
|
* Limit of the date range that can be selected.
|
|
22
23
|
*/
|
|
@@ -24,6 +25,11 @@ export interface RelativeDateFilterTileProps {
|
|
|
24
25
|
maxDate: string;
|
|
25
26
|
minDate: string;
|
|
26
27
|
};
|
|
28
|
+
/**
|
|
29
|
+
* Design options for the filter tile component
|
|
30
|
+
* @internal
|
|
31
|
+
*/
|
|
32
|
+
tileDesignOptions?: FilterTileDesignOptions;
|
|
27
33
|
}
|
|
28
34
|
/**
|
|
29
35
|
* UI component that allows the user to filter date attributes according to
|
package/dist/filters/components/date-filter/relative-date-filter-tile/relative-date-filter.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { RelativeDateFilter as RelativeDateFilterType } from '@sisense/sdk-data';
|
|
2
2
|
import { FilterVariant } from '../../common/index.js';
|
|
3
3
|
import { FunctionComponent } from 'react';
|
|
4
4
|
/**
|
|
@@ -7,7 +7,7 @@ import { FunctionComponent } from 'react';
|
|
|
7
7
|
export interface RelativeDateFilterProps {
|
|
8
8
|
filter: RelativeDateFilterType;
|
|
9
9
|
arrangement?: FilterVariant;
|
|
10
|
-
onUpdate: (filter:
|
|
10
|
+
onUpdate: (filter: RelativeDateFilterType) => void;
|
|
11
11
|
disabled: boolean;
|
|
12
12
|
limit?: {
|
|
13
13
|
maxDate: string;
|
|
@@ -19,8 +19,8 @@ export interface RelativeDateFilterProps {
|
|
|
19
19
|
*/
|
|
20
20
|
export declare const RelativeDateFilter: FunctionComponent<RelativeDateFilterProps>;
|
|
21
21
|
export declare const DATE_OPS_MAP: {
|
|
22
|
-
[x: string]:
|
|
22
|
+
readonly [x: string]: "dateFilter.last" | "dateFilter.next";
|
|
23
23
|
};
|
|
24
24
|
export declare const DATE_LEVELS_MAP: {
|
|
25
|
-
[x: string]:
|
|
25
|
+
readonly [x: string]: "dateFilter.days" | "dateFilter.weeks" | "dateFilter.months" | "dateFilter.quarters" | "dateFilter.years";
|
|
26
26
|
};
|
|
@@ -1,11 +1,31 @@
|
|
|
1
1
|
import type { FunctionComponent, ReactNode } from 'react';
|
|
2
2
|
import { FilterVariant } from './common/filter-utils';
|
|
3
|
+
import { DeepRequired } from 'ts-essentials';
|
|
4
|
+
/**
|
|
5
|
+
* Design options for the filter tile component.
|
|
6
|
+
* @internal
|
|
7
|
+
*/
|
|
8
|
+
export interface FilterTileDesignOptions {
|
|
9
|
+
header?: {
|
|
10
|
+
shouldBeShown?: boolean;
|
|
11
|
+
isCollapsible?: boolean;
|
|
12
|
+
hasBorder?: boolean;
|
|
13
|
+
};
|
|
14
|
+
border?: {
|
|
15
|
+
shouldBeShown?: boolean;
|
|
16
|
+
};
|
|
17
|
+
footer?: {
|
|
18
|
+
shouldBeShown?: boolean;
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
export type CompleteFilterTileDesignOptions = DeepRequired<FilterTileDesignOptions>;
|
|
3
22
|
interface Props {
|
|
4
|
-
title
|
|
23
|
+
title?: string;
|
|
5
24
|
renderContent: (collapsed: boolean, tileDisabled: boolean) => ReactNode;
|
|
6
25
|
arrangement?: FilterVariant;
|
|
7
26
|
disabled?: boolean;
|
|
8
27
|
isDependent?: boolean;
|
|
28
|
+
design?: FilterTileDesignOptions;
|
|
9
29
|
onToggleDisabled?: () => void;
|
|
10
30
|
}
|
|
11
31
|
/**
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Filter } from '@sisense/sdk-data';
|
|
1
|
+
import { DataSource, Filter } from '@sisense/sdk-data';
|
|
2
2
|
/**
|
|
3
3
|
* Props of the {@link FiltersPanelTile} component
|
|
4
4
|
*
|
|
@@ -9,10 +9,12 @@ export type FiltersPanelTileProps = {
|
|
|
9
9
|
filter: Filter;
|
|
10
10
|
/** Callback to handle filter change */
|
|
11
11
|
onChange: (filter: Filter | null) => void;
|
|
12
|
+
/** Default data source used for filter tiles */
|
|
13
|
+
defaultDataSource?: DataSource;
|
|
12
14
|
};
|
|
13
15
|
/**
|
|
14
16
|
* Filter tile component that renders a filter based on its type
|
|
15
17
|
*
|
|
16
18
|
* @internal
|
|
17
19
|
*/
|
|
18
|
-
export declare const FiltersPanelTile: ({ filter, onChange }: FiltersPanelTileProps) => import("react/jsx-runtime").JSX.Element;
|
|
20
|
+
export declare const FiltersPanelTile: ({ filter, onChange, defaultDataSource, }: FiltersPanelTileProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Filter } from '@sisense/sdk-data';
|
|
1
|
+
import { DataSource, Filter } from '@sisense/sdk-data';
|
|
2
2
|
/**
|
|
3
3
|
* Props of the {@link FiltersPanel} component
|
|
4
4
|
*
|
|
@@ -9,10 +9,12 @@ export type FiltersPanelProps = {
|
|
|
9
9
|
filters: Filter[];
|
|
10
10
|
/** Callback to handle changes in filters */
|
|
11
11
|
onFiltersChange: (filters: Filter[]) => void;
|
|
12
|
+
/** Default data source used for filter tiles */
|
|
13
|
+
defaultDataSource?: DataSource;
|
|
12
14
|
};
|
|
13
15
|
/**
|
|
14
16
|
* Filters panel component that renders a list of filter tiles
|
|
15
17
|
*
|
|
16
18
|
* @internal
|
|
17
19
|
*/
|
|
18
|
-
export declare const FiltersPanel: ({ filters, onFiltersChange }: FiltersPanelProps) => import("react/jsx-runtime").JSX.Element;
|
|
20
|
+
export declare const FiltersPanel: ({ filters, onFiltersChange, defaultDataSource, }: FiltersPanelProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { Themable } from '../../../theme-provider/types';
|
|
2
|
+
import type { SVGProps } from 'react';
|
|
3
|
+
export declare const ArrowIcon: (props: Pick<SVGProps<SVGElement>, 'className' | 'width' | 'height' | 'fill' | 'onClick'> & {
|
|
4
|
+
direction: 'left' | 'right';
|
|
5
|
+
disabled?: boolean;
|
|
6
|
+
} & Themable) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { Themable } from '../../../theme-provider/types';
|
|
2
|
+
import type { SVGProps } from 'react';
|
|
3
|
+
export declare const DoubleArrowIcon: (props: Pick<SVGProps<SVGElement>, 'className' | 'width' | 'height' | 'fill' | 'onClick'> & {
|
|
4
|
+
direction: 'left' | 'right';
|
|
5
|
+
disabled?: boolean;
|
|
6
|
+
} & Themable) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { Attribute, DataSource, Filter } from '@sisense/sdk-data';
|
|
2
2
|
import { FunctionComponent } from 'react';
|
|
3
|
+
import { FilterTileDesignOptions } from '../filter-tile';
|
|
3
4
|
/**
|
|
4
5
|
* Props for {@link MemberFilterTile}
|
|
5
6
|
*/
|
|
@@ -20,6 +21,8 @@ export interface MemberFilterTileProps {
|
|
|
20
21
|
onChange: (filter: Filter | null) => void;
|
|
21
22
|
/** List of filters this filter is dependent on */
|
|
22
23
|
parentFilters?: Filter[];
|
|
24
|
+
/** Design options for the tile @internal */
|
|
25
|
+
tileDesignOptions?: FilterTileDesignOptions;
|
|
23
26
|
}
|
|
24
27
|
/**
|
|
25
28
|
* UI component that allows the user to select members to include/exclude in a
|
|
@@ -3,7 +3,7 @@ import { Member, SelectedMember } from './members-reducer';
|
|
|
3
3
|
export interface MemberListProps {
|
|
4
4
|
members: Member[];
|
|
5
5
|
selectedMembers: SelectedMember[];
|
|
6
|
-
onSelectMember: (member: Member) => void;
|
|
6
|
+
onSelectMember: (member: Member, isSelected: boolean) => void;
|
|
7
7
|
selectAllMembers: () => void;
|
|
8
8
|
clearAllMembers: () => void;
|
|
9
9
|
disabled: boolean;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Filter } from '@sisense/sdk-data';
|
|
2
|
+
/**
|
|
3
|
+
* Filter tiles supposed to be Controlled components (stateless) and to react on passed `filter`.
|
|
4
|
+
* But to achieve backward compatibility, we also need to handle `filter` as internal state
|
|
5
|
+
* in case of using Filter tile as Uncontrolled component (statefull).
|
|
6
|
+
*
|
|
7
|
+
* This hook helps with synchronization for both patterns.
|
|
8
|
+
*/
|
|
9
|
+
export declare function useSynchronizedFilter<TFilter extends Filter = Filter>(filterFromProps: TFilter | null, updateFilterFromProps: (filter: TFilter) => void, createEmptyFilter?: () => TFilter): {
|
|
10
|
+
filter: TFilter;
|
|
11
|
+
updateFilter: (newFilter: TFilter) => void;
|
|
12
|
+
};
|
package/dist/filters/index.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
export * from './components/member-filter-tile';
|
|
2
2
|
export * from './components/date-filter';
|
|
3
3
|
export * from './components/criteria-filter-tile';
|
|
4
|
+
export * from './components/cascading-filter-tile';
|
|
4
5
|
export * from './components/filters-panel';
|
|
6
|
+
export * from './components/custom-filter-tile';
|
|
5
7
|
export { type FilterVariant } from './components/common/filter-utils';
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type Filter } from '@sisense/sdk-data';
|
|
2
|
+
/**
|
|
3
|
+
* Clones a filter with a toggled 'disabled' state.
|
|
4
|
+
* @param filter - Filter to clone
|
|
5
|
+
*/
|
|
6
|
+
export declare const cloneFilterAndToggleDisabled: <TFilter extends Filter>(filter: TFilter) => TFilter;
|
|
7
|
+
export declare const cloneFilter: <TFilter extends Filter>(filter: TFilter) => TFilter;
|
|
@@ -3,5 +3,5 @@ import { HighchartsOptionsInternal } from './chart-options-processor/chart-optio
|
|
|
3
3
|
type HighchartsReactMemoizedProps = {
|
|
4
4
|
options: HighchartsOptionsInternal;
|
|
5
5
|
};
|
|
6
|
-
export declare const HighchartsReactMemoized: import("react").
|
|
6
|
+
export declare const HighchartsReactMemoized: import("react").NamedExoticComponent<HighchartsReactMemoizedProps>;
|
|
7
7
|
export {};
|