@trackunit/filters-filter-bar 1.3.235 → 1.3.236

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 (28) hide show
  1. package/package.json +13 -13
  2. package/src/lib/FilterBar.d.ts +1 -1
  3. package/src/lib/components/AppliedFiltersRenderer.d.ts +1 -1
  4. package/src/lib/components/DefaultCheckboxFilter.d.ts +1 -1
  5. package/src/lib/components/DefaultFilterTypes.d.ts +2 -2
  6. package/src/lib/components/FilterOptionsResults.d.ts +2 -2
  7. package/src/lib/components/FilterResults.d.ts +2 -2
  8. package/src/lib/components/FilterTableComponent.d.ts +1 -1
  9. package/src/lib/components/FilterTooltips/MultipleFilterTooltipLabel.d.ts +2 -2
  10. package/src/lib/components/FiltersMenu.d.ts +2 -2
  11. package/src/lib/components/FiltersMenuContent.d.ts +4 -4
  12. package/src/lib/components/FiltersRenderer.d.ts +2 -2
  13. package/src/lib/components/GroupedFiltersList.d.ts +1 -1
  14. package/src/lib/components/HierarchicalCheckboxFilter/HierarchicalCheckboxFilter.d.ts +3 -3
  15. package/src/lib/components/HierarchicalCheckboxFilter/HierarchicalCheckboxFilter.utils.d.ts +2 -2
  16. package/src/lib/components/HierarchicalCheckboxFilter/RenderHierarchicalOption.d.ts +1 -1
  17. package/src/lib/components/HierarchicalCheckboxFilter/useHierarchicalOptionState.d.ts +2 -2
  18. package/src/lib/hooks/useFiltersMenu.d.ts +3 -3
  19. package/src/lib/hooks/useGroupFilters.d.ts +3 -3
  20. package/src/lib/hooks/utils/useFilterBarPersistence.d.ts +1 -1
  21. package/src/lib/types/FilterTypes.d.ts +16 -21
  22. package/src/lib/utils/createFilterSetters.d.ts +1 -1
  23. package/src/lib/utils/createFilterValues.d.ts +1 -1
  24. package/src/lib/utils/createInitialState.d.ts +3 -3
  25. package/src/lib/utils/mergeFilters.d.ts +1 -1
  26. package/src/lib/utils/reduceFilterText.d.ts +1 -1
  27. package/src/lib/utils/toggleFilterValue.d.ts +1 -1
  28. package/src/lib/utils/validateFilter.d.ts +3 -3
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@trackunit/filters-filter-bar",
3
- "version": "1.3.235",
3
+ "version": "1.3.236",
4
4
  "repository": "https://github.com/Trackunit/manager",
5
5
  "license": "SEE LICENSE IN LICENSE.txt",
6
6
  "engines": {
@@ -14,18 +14,18 @@
14
14
  "tailwind-merge": "^2.0.0",
15
15
  "string-ts": "^2.0.0",
16
16
  "zod": "3.23.4",
17
- "@trackunit/iris-app-api": "1.3.147",
18
- "@trackunit/react-core-hooks": "1.3.152",
19
- "@trackunit/react-filter-components": "1.3.193",
20
- "@trackunit/react-date-and-time-components": "1.3.196",
21
- "@trackunit/shared-utils": "1.5.140",
22
- "@trackunit/react-form-components": "1.3.195",
23
- "@trackunit/react-core-contexts-api": "1.4.147",
24
- "@trackunit/geo-json-utils": "1.3.138",
25
- "@trackunit/i18n-library-translation": "1.3.159",
26
- "@trackunit/css-class-variance-utilities": "1.3.140",
27
- "@trackunit/react-components": "1.4.171",
28
- "@trackunit/react-test-setup": "1.0.30"
17
+ "@trackunit/iris-app-api": "1.3.148",
18
+ "@trackunit/react-core-hooks": "1.3.153",
19
+ "@trackunit/react-filter-components": "1.3.194",
20
+ "@trackunit/react-date-and-time-components": "1.3.197",
21
+ "@trackunit/shared-utils": "1.5.141",
22
+ "@trackunit/react-form-components": "1.3.196",
23
+ "@trackunit/react-core-contexts-api": "1.4.148",
24
+ "@trackunit/geo-json-utils": "1.3.139",
25
+ "@trackunit/i18n-library-translation": "1.3.160",
26
+ "@trackunit/css-class-variance-utilities": "1.3.141",
27
+ "@trackunit/react-components": "1.4.172",
28
+ "@trackunit/react-test-setup": "1.0.31"
29
29
  },
30
30
  "module": "./index.esm.js",
31
31
  "main": "./index.cjs.js",
@@ -3,7 +3,7 @@ interface FilterBarProps<TFilterBarDefinition extends FilterBarDefinition> {
3
3
  /**
4
4
  * If you want some of the filters to be hidden, but still programmatically enabled
5
5
  */
6
- hiddenFilters?: string[];
6
+ hiddenFilters?: Array<string>;
7
7
  /**
8
8
  * CSS class name for styling purposes
9
9
  */
@@ -3,7 +3,7 @@ import { FilterBarConfig, FilterBarDefinition, FilterDefinition, FilterMapAction
3
3
  *
4
4
  */
5
5
  export declare const AppliedFiltersRenderer: <TFilterBarDefinition extends FilterBarDefinition>({ appliedFilters, filterBarConfig, showResetButton, }: {
6
- appliedFilters: FilterDefinition[];
6
+ appliedFilters: Array<FilterDefinition>;
7
7
  filterBarConfig: FilterBarConfig<TFilterBarDefinition> & FilterMapActions & FilterMapGetter;
8
8
  showResetButton?: boolean;
9
9
  }) => import("react/jsx-runtime").JSX.Element;
@@ -1,6 +1,6 @@
1
1
  import { ValueName } from "../types/FilterTypes";
2
2
  import { DefaultFilterProps } from "./DefaultFilterTypes";
3
- type FilterDefinitionValue = string[] | ValueName[];
3
+ type FilterDefinitionValue = Array<string> | Array<ValueName>;
4
4
  /**
5
5
  * `DefaultCheckboxFilter` is a React component for handling checkbox filters.
6
6
  *
@@ -25,7 +25,7 @@ export interface HierarchicalFilterOption extends FilterOption {
25
25
  /**
26
26
  * Child options for this node in the hierarchy.
27
27
  */
28
- children?: HierarchicalFilterOption[];
28
+ children?: Array<HierarchicalFilterOption>;
29
29
  /**
30
30
  * The nesting level of this option (0 for root).
31
31
  * Added during hierarchy processing.
@@ -36,7 +36,7 @@ export interface DefaultFilterProps<TReturnType> extends FilterViewProps<TReturn
36
36
  /**
37
37
  * An array of filter options to be displayed.
38
38
  */
39
- options: FilterOption[];
39
+ options: Array<FilterOption>;
40
40
  /**
41
41
  * Indicates whether the filter is in a loading state.
42
42
  */
@@ -1,9 +1,9 @@
1
1
  import { ReactElement } from "react";
2
2
  interface Props<TResult> {
3
- results: TResult[] | undefined | null;
3
+ results: Array<TResult> | undefined | null;
4
4
  loading?: boolean;
5
5
  ignoreUndefined?: boolean;
6
- children: (results: TResult[]) => ReactElement;
6
+ children: (results: Array<TResult>) => ReactElement;
7
7
  }
8
8
  /**
9
9
  * Wrapper around results for filters.
@@ -1,9 +1,9 @@
1
1
  import { ReactElement } from "react";
2
2
  interface Props<TResult> {
3
- results: TResult[] | undefined | null;
3
+ results: Array<TResult> | undefined | null;
4
4
  loading?: boolean;
5
5
  ignoreUndefined?: boolean;
6
- children: (results: TResult[]) => ReactElement;
6
+ children: (results: Array<TResult>) => ReactElement;
7
7
  }
8
8
  /**
9
9
  * Wrapper around results for filters.
@@ -4,7 +4,7 @@ interface FilterComponentProps<TFilterBarDefinition extends FilterBarDefinition>
4
4
  /**
5
5
  * The definition of the filter.
6
6
  */
7
- filterKey: string | string[];
7
+ filterKey: string | Array<string>;
8
8
  /**
9
9
  * The state of the filter.
10
10
  */
@@ -2,8 +2,8 @@ import { ReactElement } from "react";
2
2
  import { FilterBarDefinition, FilterDefinition, FilterMapActions, FilterMapGetter, FilterState } from "../../types/FilterTypes";
3
3
  interface MultipleFilterTooltipLabelProps<TFilterBarDefinition extends FilterBarDefinition> {
4
4
  filterBarConfig: FilterState<TFilterBarDefinition> & FilterMapActions & FilterMapGetter;
5
- filterKeys?: string[];
6
- filters: FilterDefinition[];
5
+ filterKeys?: Array<string>;
6
+ filters: Array<FilterDefinition>;
7
7
  }
8
8
  /**
9
9
  * Component that displays a tooltip for filters.
@@ -17,7 +17,7 @@ interface FiltersMenuProps<TFilterBarDefinition extends FilterBarDefinition> ext
17
17
  /**
18
18
  * If you want some of the filters to be hidden, but still programmatically enabled
19
19
  */
20
- hiddenFilters?: string[];
20
+ hiddenFilters?: Array<string>;
21
21
  /**
22
22
  * If true, the starred filters will be displayed in a compact mode
23
23
  */
@@ -37,7 +37,7 @@ interface FiltersMenuProps<TFilterBarDefinition extends FilterBarDefinition> ext
37
37
  /**
38
38
  * The filter keys to include in the filter bar, if not defined all filters will be shown.
39
39
  */
40
- includeFilterKeys?: string[];
40
+ includeFilterKeys?: Array<string>;
41
41
  }
42
42
  /**
43
43
  * FilterMenu is a React component that displays a list of filters in a popover menu based on the provided filter bar configuration.
@@ -8,11 +8,11 @@ export declare const FiltersMenuContent: ({ filterBarConfig, setShowCustomFilter
8
8
  setShowCustomFilters: (show: boolean) => void;
9
9
  setSearchText: (text: string) => void;
10
10
  searchText: string;
11
- searchResultsGrouped: GroupOfFilters[];
12
- filtersToShowGrouped: GroupOfFilters[];
13
- removeCustomFieldsGroup: (groupOfFilters: GroupOfFilters[]) => GroupOfFilters[];
11
+ searchResultsGrouped: Array<GroupOfFilters>;
12
+ filtersToShowGrouped: Array<GroupOfFilters>;
13
+ removeCustomFieldsGroup: (groupOfFilters: Array<GroupOfFilters>) => Array<GroupOfFilters>;
14
14
  hasCustomFields: boolean;
15
- appliedCustomFields: FilterDefinition[];
15
+ appliedCustomFields: Array<FilterDefinition>;
16
16
  showCustomFilters: boolean;
17
17
  filterBarDefinitionCount: number;
18
18
  }) => import("react/jsx-runtime").JSX.Element;
@@ -2,7 +2,7 @@ import { ComponentProps, ReactElement } from "react";
2
2
  import { FilterBarConfig, FilterBarDefinition, FilterDefinition, FilterMapActions, FilterMapGetter } from "../types/FilterTypes";
3
3
  import { FilterComponent } from "./FilterComponent";
4
4
  type FiltersRendererProps = {
5
- filters: FilterDefinition[];
5
+ filters: Array<FilterDefinition>;
6
6
  filterBarConfig: FilterBarConfig<FilterBarDefinition> & FilterMapActions & FilterMapGetter;
7
7
  visualStyle?: ComponentProps<typeof FilterComponent>["visualStyle"];
8
8
  };
@@ -18,5 +18,5 @@ type FiltersRendererProps = {
18
18
  * @param {ComponentProps<typeof FilterComponent>["visualStyle"]} [props.visualStyle] - The visual style of the filters
19
19
  * @returns {ReactElement[] | null} - Returns an array of Filter components or null
20
20
  */
21
- export declare const FiltersRenderer: ({ filters, filterBarConfig, visualStyle, }: FiltersRendererProps) => ReactElement[] | null;
21
+ export declare const FiltersRenderer: ({ filters, filterBarConfig, visualStyle, }: FiltersRendererProps) => Array<ReactElement> | null;
22
22
  export {};
@@ -7,7 +7,7 @@ interface FiltersListProps extends CommonProps {
7
7
  * The configuration of the filter bar, including its actions and state.
8
8
  */
9
9
  filterBarConfig: FilterBarConfig<FilterBarDefinition> & FilterMapActions & FilterMapGetter;
10
- filtersGrouped: GroupOfFilters[];
10
+ filtersGrouped: Array<GroupOfFilters>;
11
11
  }
12
12
  /**
13
13
  * FiltersList is a React component that displays a list of filters within a filter bar.
@@ -4,12 +4,12 @@ import { DefaultFilterProps, HierarchicalFilterOption } from "../DefaultFilterTy
4
4
  * Props for the HierarchicalCheckboxFilter component.
5
5
  * Extends base filter props but requires hierarchical options and ValueName[] type.
6
6
  */
7
- export interface HierarchicalFilterProps extends Omit<DefaultFilterProps<ValueName[]>, "options" | "customSearch" | "showRequestMoreUseSearch" | "showUndefinedOptionWithCountAtBottom" | "totalRecords"> {
7
+ export interface HierarchicalFilterProps extends Omit<DefaultFilterProps<Array<ValueName>>, "options" | "customSearch" | "showRequestMoreUseSearch" | "showUndefinedOptionWithCountAtBottom" | "totalRecords"> {
8
8
  /**
9
9
  * An array of hierarchical filter options to be displayed.
10
10
  * The structure (parent-child relationships and levels) should be pre-processed.
11
11
  */
12
- options: HierarchicalFilterOption[];
12
+ options: Array<HierarchicalFilterOption>;
13
13
  /**
14
14
  * The filter definition, constrained to the 'valueNameArray' type for this component.
15
15
  */
@@ -19,7 +19,7 @@ export interface HierarchicalFilterProps extends Omit<DefaultFilterProps<ValueNa
19
19
  /**
20
20
  * Callback function to update the filter's value state.
21
21
  */
22
- setValue: FilterStateSetterCallback<ValueName[]>;
22
+ setValue: FilterStateSetterCallback<Array<ValueName>>;
23
23
  /**
24
24
  * Enable cascading selection behavior.
25
25
  * - Checking/unchecking a parent affects all descendants.
@@ -5,9 +5,9 @@ import { HierarchicalFilterOption } from "../DefaultFilterTypes";
5
5
  * @param option The starting hierarchical filter option.
6
6
  * @returns An array of string keys representing the option and all its descendants.
7
7
  */
8
- export declare const getAllDescendantKeys: (option: HierarchicalFilterOption) => string[];
8
+ export declare const getAllDescendantKeys: (option: HierarchicalFilterOption) => Array<string>;
9
9
  /**
10
10
  * Recursively filters hierarchical options based on a search term.
11
11
  * Keeps an option if its label matches or if any descendant matches.
12
12
  */
13
- export declare const filterHierarchicalOptions: (options: HierarchicalFilterOption[], searchTerm: string, parentMatches?: boolean) => HierarchicalFilterOption[];
13
+ export declare const filterHierarchicalOptions: (options: Array<HierarchicalFilterOption>, searchTerm: string, parentMatches?: boolean) => Array<HierarchicalFilterOption>;
@@ -8,7 +8,7 @@ interface RenderHierarchicalOptionProps {
8
8
  filterBarActions: HierarchicalFilterProps["filterBarActions"];
9
9
  setValue: HierarchicalFilterProps["setValue"];
10
10
  logEvent: ReturnType<typeof useAnalytics>["logEvent"];
11
- selectedValues: ValueName[];
11
+ selectedValues: Array<ValueName>;
12
12
  cascadeSelection: boolean;
13
13
  optionsMap: Map<string, HierarchicalFilterOption>;
14
14
  }
@@ -3,9 +3,9 @@ import { ValueName } from "../../types/FilterTypes";
3
3
  import { HierarchicalFilterOption } from "../DefaultFilterTypes";
4
4
  import { HierarchicalFilterProps } from "./HierarchicalCheckboxFilter";
5
5
  interface UseHierarchicalOptionStateProps {
6
- options: HierarchicalFilterOption[];
6
+ options: Array<HierarchicalFilterOption>;
7
7
  option: HierarchicalFilterOption;
8
- selectedValues: ValueName[];
8
+ selectedValues: Array<ValueName>;
9
9
  cascadeSelection: boolean;
10
10
  optionsMap: Map<string, HierarchicalFilterOption>;
11
11
  setValue: HierarchicalFilterProps["setValue"];
@@ -3,9 +3,9 @@ import { GroupOfFilters } from "./useGroupFilters";
3
3
  type UseFiltersMenuProps<TFilterBarDefinition extends FilterBarDefinition> = {
4
4
  filterBarDefinition: TFilterBarDefinition;
5
5
  filterBarConfig: FilterBarConfig<TFilterBarDefinition> & FilterMapActions & FilterMapGetter;
6
- hiddenFilters?: string[];
6
+ hiddenFilters?: Array<string>;
7
7
  allowShowFiltersDirectly?: boolean;
8
- includeFilterKeys?: string[];
8
+ includeFilterKeys?: Array<string>;
9
9
  };
10
10
  /**
11
11
  * This hook is used to manage the filters menu.
@@ -21,6 +21,6 @@ export declare const useFiltersMenu: <TFilterBarDefinition extends FilterBarDefi
21
21
  setSearchText: import("react").Dispatch<string>;
22
22
  filtersToShowGrouped: GroupOfFilters[];
23
23
  searchResultsGrouped: GroupOfFilters[];
24
- removeCustomFieldsGroup: (groupOfFilters: GroupOfFilters[]) => GroupOfFilters[];
24
+ removeCustomFieldsGroup: (groupOfFilters: Array<GroupOfFilters>) => Array<GroupOfFilters>;
25
25
  };
26
26
  export {};
@@ -11,10 +11,10 @@ export interface GroupOfFilters {
11
11
  /**
12
12
  * An array of filter definitions that belong to this group.
13
13
  */
14
- filters: FilterDefinition[];
14
+ filters: Array<FilterDefinition>;
15
15
  }
16
16
  interface UseGroupFiltersReturnType {
17
- filtersGrouped: GroupOfFilters[];
17
+ filtersGrouped: Array<GroupOfFilters>;
18
18
  }
19
19
  /**
20
20
  * Custom React hook for grouping and filtering a list of filters.
@@ -23,5 +23,5 @@ interface UseGroupFiltersReturnType {
23
23
  * @param {string[]} hiddenFilters - An array of filter keys representing filters to be hidden, if not provided, all filters will be shown
24
24
  * @returns {UseGroupFiltersReturnType} An object containing the grouped filters.
25
25
  */
26
- export declare const useGroupFilters: (filterDefinitions: FilterDefinition[], hiddenFilters?: string[]) => UseGroupFiltersReturnType;
26
+ export declare const useGroupFilters: (filterDefinitions: Array<FilterDefinition>, hiddenFilters?: Array<string>) => UseGroupFiltersReturnType;
27
27
  export {};
@@ -11,7 +11,7 @@ type FilterBarPersistenceProps<TFilterBarDefinition extends FilterBarDefinition>
11
11
  * @returns { object } An object containing the loadData and saveData functions.
12
12
  */
13
13
  export declare const useFilterBarPersistence: <TFilterBarDefinition extends FilterBarDefinition>({ name, setValue, }: FilterBarPersistenceProps<TFilterBarDefinition>) => {
14
- loadData: <TFilterBarDefinitionExtended extends TFilterBarDefinition>(updatedFilterDefinitionsValues: TFilterBarDefinitionExtended[keyof TFilterBarDefinitionExtended][]) => FilterBarConfig<TFilterBarDefinition>;
14
+ loadData: <TFilterBarDefinitionExtended extends TFilterBarDefinition>(updatedFilterDefinitionsValues: Array<TFilterBarDefinitionExtended[keyof TFilterBarDefinitionExtended]>) => FilterBarConfig<TFilterBarDefinition>;
15
15
  saveData: (filterBarConfig: Partial<FilterBarConfig<TFilterBarDefinition>>, filterBarDefinitions: TFilterBarDefinition) => void;
16
16
  };
17
17
  export {};
@@ -1,3 +1,4 @@
1
+ import { geoJsonMultiPolygonSchema, geoJsonPolygonSchema } from "@trackunit/geo-json-utils";
1
2
  import { ReactNode } from "react";
2
3
  import { z } from "zod";
3
4
  export type ValueName = {
@@ -16,11 +17,7 @@ export type MinMaxFilterValue = {
16
17
  };
17
18
  export declare const areaFilterGeoJsonGeometrySchema: z.ZodUnion<[z.ZodObject<{
18
19
  type: z.ZodLiteral<"Polygon">;
19
- coordinates: z.ZodArray<z.ZodEffects<z.ZodArray<z.ZodTuple<[z.ZodNumber /**
20
- * The Group the filter will be shown under in the ui.
21
- *
22
- * @default "OTHER"
23
- */, z.ZodNumber], null>, "many">, [number, number][], [number, number][]>, "many">;
20
+ coordinates: z.ZodArray<z.ZodEffects<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, [number, number][], [number, number][]>, "many">;
24
21
  }, "strict", z.ZodTypeAny, {
25
22
  type: "Polygon";
26
23
  coordinates: [number, number][][];
@@ -29,9 +26,7 @@ export declare const areaFilterGeoJsonGeometrySchema: z.ZodUnion<[z.ZodObject<{
29
26
  coordinates: [number, number][][];
30
27
  }>, z.ZodObject<{
31
28
  type: z.ZodLiteral<"MultiPolygon">;
32
- coordinates: z.ZodArray<z.ZodArray<z.ZodEffects /**
33
- * A boolean that determines if the filter should be generated.
34
- */<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, [number, number][], [number, number][]>, "many">, "many">;
29
+ coordinates: z.ZodArray<z.ZodArray<z.ZodEffects<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, [number, number][], [number, number][]>, "many">, "many">;
35
30
  }, "strict", z.ZodTypeAny, {
36
31
  type: "MultiPolygon";
37
32
  coordinates: [number, number][][][];
@@ -39,20 +34,20 @@ export declare const areaFilterGeoJsonGeometrySchema: z.ZodUnion<[z.ZodObject<{
39
34
  type: "MultiPolygon";
40
35
  coordinates: [number, number][][][];
41
36
  }>]>;
42
- export type AreaFilterGeoJsonGeometry = z.infer<typeof areaFilterGeoJsonGeometrySchema>;
43
- export type FilterValueType = string[] | ValueName[] | ValueName | MinMaxFilterValue | AreaFilterGeoJsonGeometry | string | number | BooleanValue | undefined;
37
+ export type AreaFilterGeoJsonGeometry = z.infer<typeof geoJsonPolygonSchema> | z.infer<typeof geoJsonMultiPolygonSchema>;
38
+ export type FilterValueType = Array<string> | Array<ValueName> | ValueName | MinMaxFilterValue | AreaFilterGeoJsonGeometry | string | number | BooleanValue | undefined;
44
39
  export declare type FilterTypes = "boolean" | "string" | "number" | "dateRange" | "area" | "valueNameArray" | "valueName" | "stringArray" | "minMax";
45
40
  export type FilterMapActions = {
46
41
  updateStarredFilters: (filterkey: string) => void;
47
42
  toggleArrayValue: (key: string, value: string) => void;
48
43
  setStringValue: (key: string, value: string) => void;
49
- setArrayValue: (key: string, value: string[]) => void;
44
+ setArrayValue: (key: string, value: Array<string>) => void;
50
45
  setArea: (area: AreaFilterGeoJsonGeometry) => void;
51
46
  setNumberValue: (key: string, value: NumberValue) => void;
52
47
  setBooleanValue: (key: string, value: BooleanValue) => void;
53
48
  setDateRange: (key: string, value: DateRangeValue) => void;
54
49
  setMinMaxValue: (key: string, minMaxValue: MinMaxFilterValue) => void;
55
- setArrayObjectValue: (key: string, value: ValueName[]) => void;
50
+ setArrayObjectValue: (key: string, value: Array<ValueName>) => void;
56
51
  setObjectValue: (key: string, value: ValueName) => void;
57
52
  toggleArrayObjectValue: (key: string, value: ValueName) => void;
58
53
  toggleObjectValue: (key: string, value: ValueName) => void;
@@ -67,7 +62,7 @@ export type FilterMapGetter = {
67
62
  getValuesByKey: (key: string) => FilterValueType;
68
63
  hasDefaultValue: (key: string) => boolean;
69
64
  arrayIncludesValue: (key: string, value: string | boolean) => boolean;
70
- appliedFilterKeys: () => (keyof FilterBarDefinition)[];
65
+ appliedFilterKeys: () => Array<keyof FilterBarDefinition>;
71
66
  isFilterIncludedByKey(key: string): boolean;
72
67
  };
73
68
  export type FilterName = string;
@@ -144,9 +139,9 @@ export interface AreaFilterDefinition extends AbstractFilterDefinition {
144
139
  }
145
140
  export interface ValueNameArrayFilterDefinition extends AbstractFilterDefinition {
146
141
  type: "valueNameArray";
147
- defaultValue?: ValueName[];
148
- valueAsText?: (value: ValueName[]) => string[];
149
- component: (filterComponentProps: FilterViewProps<ValueName[]>) => ReactNode;
142
+ defaultValue?: Array<ValueName>;
143
+ valueAsText?: (value: Array<ValueName>) => Array<string>;
144
+ component: (filterComponentProps: FilterViewProps<Array<ValueName>>) => ReactNode;
150
145
  }
151
146
  export interface ValueNameFilterDefinition extends AbstractFilterDefinition {
152
147
  type: "valueName";
@@ -156,9 +151,9 @@ export interface ValueNameFilterDefinition extends AbstractFilterDefinition {
156
151
  }
157
152
  export interface StringArrayFilterDefinition extends AbstractFilterDefinition {
158
153
  type: "stringArray";
159
- defaultValue?: string[];
160
- valueAsText?: (value: string[]) => string[];
161
- component: (filterComponentProps: FilterViewProps<string[]>) => ReactNode;
154
+ defaultValue?: Array<string>;
155
+ valueAsText?: (value: Array<string>) => Array<string>;
156
+ component: (filterComponentProps: FilterViewProps<Array<string>>) => ReactNode;
162
157
  }
163
158
  export interface MinMaxFilterDefinition extends AbstractFilterDefinition {
164
159
  type: "minMax";
@@ -209,7 +204,7 @@ export type FiltersStoreInstance<T extends FilterBarDefinition> = Partial<Filter
209
204
  export interface FilterStateMap<T extends FilterBarDefinition> {
210
205
  filtersMap: Record<string, FilterBarConfig<T>>;
211
206
  }
212
- export type FilterBarInferredValue<T extends FilterBarDefinition, K extends keyof T> = T[K]["type"] extends infer Type ? Type extends "boolean" ? BooleanValue | undefined : Type extends "string" ? string | undefined : Type extends "number" ? number | undefined : Type extends "area" ? AreaFilterGeoJsonGeometry | undefined : Type extends "valueNameArray" ? ValueName[] | undefined : Type extends "valueName" ? ValueName | undefined : Type extends "stringArray" ? string[] | undefined : Type extends "minMax" ? MinMaxFilterValue | undefined : Type extends "dateRange" ? DateRangeValue | undefined : undefined : undefined;
207
+ export type FilterBarInferredValue<T extends FilterBarDefinition, K extends keyof T> = T[K]["type"] extends infer Type ? Type extends "boolean" ? BooleanValue | undefined : Type extends "string" ? string | undefined : Type extends "number" ? number | undefined : Type extends "area" ? AreaFilterGeoJsonGeometry | undefined : Type extends "valueNameArray" ? Array<ValueName> | undefined : Type extends "valueName" ? ValueName | undefined : Type extends "stringArray" ? Array<string> | undefined : Type extends "minMax" ? MinMaxFilterValue | undefined : Type extends "dateRange" ? DateRangeValue | undefined : undefined : undefined;
213
208
  export type SetterKey<T extends string> = `set${Capitalize<T>}`;
214
209
  export type ReverseSetterKey<T extends string> = Uncapitalize<T extends `set${infer U}` ? U : never>;
215
210
  export type ExtractFilterKeys<T extends FilterBarDefinition> = Extract<keyof T, string>;
@@ -238,7 +233,7 @@ export interface FilterBarConfig<T extends FilterBarDefinition> extends FilterSt
238
233
  /**
239
234
  * Filter names that should be starred for this filter list.
240
235
  */
241
- starredFilterKeys: ExtractFilterKeys<T>[];
236
+ starredFilterKeys: Array<ExtractFilterKeys<T>>;
242
237
  /**
243
238
  * The initial state of the filter bar - used to restore the filter bar to its initial state, and to validate if a filter has been changed from the initial state.
244
239
  */
@@ -2,4 +2,4 @@ import { FilterBarDefinition, FilterBarInferredValue, FilterDefinition, FilterSt
2
2
  /**
3
3
  *
4
4
  */
5
- export declare const createFilterSetters: <TFilterBarDefinition extends FilterBarDefinition>(mainFilters: FilterDefinition[], setValue: (key: string, callback: (prev: FilterBarInferredValue<TFilterBarDefinition, never> | undefined) => FilterBarInferredValue<TFilterBarDefinition, never> | undefined) => void) => FilterStateSetters<TFilterBarDefinition>;
5
+ export declare const createFilterSetters: <TFilterBarDefinition extends FilterBarDefinition>(mainFilters: Array<FilterDefinition>, setValue: (key: string, callback: (prev: FilterBarInferredValue<TFilterBarDefinition, never> | undefined) => FilterBarInferredValue<TFilterBarDefinition, never> | undefined) => void) => FilterStateSetters<TFilterBarDefinition>;
@@ -2,4 +2,4 @@ import { FilterDefinition } from "../types/FilterTypes";
2
2
  /**
3
3
  *
4
4
  */
5
- export declare const createFilterValues: (mainFilters: FilterDefinition[], useDefaultValues?: boolean) => {};
5
+ export declare const createFilterValues: (mainFilters: Array<FilterDefinition>, useDefaultValues?: boolean) => {};
@@ -4,10 +4,10 @@ type InitialTypes = {
4
4
  Init: "";
5
5
  } | {
6
6
  Arg: "stringArray";
7
- Init: string[];
7
+ Init: Array<string>;
8
8
  } | {
9
9
  Arg: "valueNameArray";
10
- Init: ValueName[];
10
+ Init: Array<ValueName>;
11
11
  } | {
12
12
  Arg: "valueName";
13
13
  Init: {
@@ -44,7 +44,7 @@ export declare const getInitialValueFromType: <TInitialType extends InitialTypes
44
44
  */
45
45
  export declare const createInitialState: <TFilterBarDefinition extends FilterBarDefinition>({ name, mainFilters, setValue, }: {
46
46
  name: string;
47
- mainFilters: FilterDefinition[];
47
+ mainFilters: Array<FilterDefinition>;
48
48
  setValue: (key: string, callback: (prev: FilterBarInferredValue<TFilterBarDefinition, never> | undefined) => FilterBarInferredValue<TFilterBarDefinition, never> | undefined) => void;
49
49
  }) => FilterBarConfig<TFilterBarDefinition>;
50
50
  export {};
@@ -5,4 +5,4 @@ import { FilterDefinition } from "../types/FilterTypes";
5
5
  * @param {Record<string, FilterDefinition>} filterBarDefinition - The existing filter bar definition to which the filters will be added.
6
6
  * @param {FilterDefinition[]} extraFilters - An array of additional filters to merge into the definition.
7
7
  */
8
- export declare const mergeFilters: (filterBarDefinition: Record<string, FilterDefinition | undefined>, extraFilters: FilterDefinition[]) => void;
8
+ export declare const mergeFilters: (filterBarDefinition: Record<string, FilterDefinition | undefined>, extraFilters: Array<FilterDefinition>) => void;
@@ -4,4 +4,4 @@
4
4
  * @param {string[]} [input] Array of values to reduce
5
5
  * @returns {*} {string}
6
6
  */
7
- export declare const reduceFilterText: (input: string | string[]) => string;
7
+ export declare const reduceFilterText: (input: string | Array<string>) => string;
@@ -4,4 +4,4 @@
4
4
  * @template T - The type of the filter values.
5
5
  * @returns {(prev?: T[]) => T[]} A function that takes an optional previous array of filter values
6
6
  */
7
- export declare const toggleFilterValue: <T extends string | number | object>(value: T) => ((prev?: T[]) => T[]);
7
+ export declare const toggleFilterValue: <T extends string | number | object>(value: T) => ((prev?: Array<T>) => Array<T>);
@@ -21,7 +21,7 @@ export declare const isArrayFilterValue: (value: FilterDefinitionValue) => value
21
21
  /**
22
22
  *
23
23
  */
24
- export declare const isStringArrayFilterValue: (value: FilterDefinitionValue) => value is string[];
24
+ export declare const isStringArrayFilterValue: (value: FilterDefinitionValue) => value is Array<string>;
25
25
  /**
26
26
  *
27
27
  */
@@ -33,7 +33,7 @@ export declare const isValueName: (value: unknown) => value is ValueName;
33
33
  /**
34
34
  * Type guard to check if a value is an array of ValueName objects
35
35
  */
36
- export declare const isValueNameArray: (value: FilterDefinitionValue) => value is ValueName[];
36
+ export declare const isValueNameArray: (value: FilterDefinitionValue) => value is Array<ValueName>;
37
37
  /**
38
38
  * Validates a filter configuration against filter definitions.
39
39
  *
@@ -45,5 +45,5 @@ export declare const isValueNameArray: (value: FilterDefinitionValue) => value i
45
45
  export declare const validateFilter: <TFilterBarDefinition extends FilterBarDefinition>({ values, starredFilterKeys, filterDefinitions, }: {
46
46
  values: FilterBarConfig<TFilterBarDefinition>["values"];
47
47
  starredFilterKeys: FilterBarConfig<TFilterBarDefinition>["starredFilterKeys"];
48
- filterDefinitions: FilterDefinition[];
48
+ filterDefinitions: Array<FilterDefinition>;
49
49
  }) => boolean;