@trackunit/filters-asset-filter-definitions 0.0.473 → 0.0.477

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/index.cjs.js CHANGED
@@ -2,21 +2,22 @@
2
2
 
3
3
  var jsxRuntime = require('react/jsx-runtime');
4
4
  var i18nLibraryTranslation = require('@trackunit/i18n-library-translation');
5
- var client = require('@apollo/client');
6
5
  var filtersFilterBar = require('@trackunit/filters-filter-bar');
6
+ var reactCoreHooks = require('@trackunit/react-core-hooks');
7
+ var reactFilterComponents = require('@trackunit/react-filter-components');
8
+ var reactFormComponents = require('@trackunit/react-form-components');
9
+ var react = require('react');
10
+ var client = require('@apollo/client');
7
11
  var filtersGraphqlHook = require('@trackunit/filters-graphql-hook');
8
12
  var utilizationIndicator = require('@trackunit/utilization-indicator');
9
- var react = require('react');
10
13
  var sharedUtils = require('@trackunit/shared-utils');
11
14
  var stringTs = require('string-ts');
12
- var reactFilterComponents = require('@trackunit/react-filter-components');
13
15
  var reactComponents = require('@trackunit/react-components');
14
16
  var translationsMachineType = require('@trackunit/translations-machine-type');
15
17
  var criticalityIndicator = require('@trackunit/criticality-indicator');
16
- var reactCoreHooks = require('@trackunit/react-core-hooks');
17
- var reactFormComponents = require('@trackunit/react-form-components');
18
- var reactRouter = require('@tanstack/react-router');
18
+ var tailwindMerge = require('tailwind-merge');
19
19
  var zod = require('zod');
20
+ var reactRouter = require('@tanstack/react-router');
20
21
 
21
22
  var defaultTranslations = {
22
23
  "access.management.filter.operator.role.keyAdmin": "Key Admin",
@@ -33,6 +34,7 @@ var defaultTranslations = {
33
34
  "access.management.operator.filter.keyStatus.title": "Key Status",
34
35
  "access.management.operator.filter.operatorRole.keyAdmin.title": "Key Admin",
35
36
  "access.management.operator.filter.operatorRole.title": "Operator Role",
37
+ "assetFilters.activeAssetFilter.label": "Hidden assets",
36
38
  "assetFilters.activityFilter.idling": "Idling",
37
39
  "assetFilters.activityFilter.stopped": "Stopped",
38
40
  "assetFilters.activityFilter.unknown": "Unknown",
@@ -123,10 +125,12 @@ var defaultTranslations = {
123
125
  "auditlog.filter.components": "Components",
124
126
  "auditlog.filter.events": "Events",
125
127
  "auditlog.filter.users": "Users",
128
+ "filters.shared.clear": "clear",
129
+ "filters.shared.clearAll": "clear all",
126
130
  "filters.shared.recentSearches": "Recent searches",
127
- "filters.shared.remove": "remove",
128
- "filters.shared.removeAll": "remove all",
129
131
  "filtersBar.closeFilter": "Close",
132
+ "filtersBar.defaultAssetFilters.activeAssetFilter.hide": "Hide",
133
+ "filtersBar.defaultAssetFilters.activeAssetFilter.show": "Show",
130
134
  "filtersBar.defaultAssetFilters.followedFilter.ALL": "All Assets",
131
135
  "filtersBar.defaultAssetFilters.followedFilter.allLabel": "All Assets",
132
136
  "filtersBar.defaultAssetFilters.followedFilter.FOLLOWED": "Followed Only",
@@ -284,6 +288,51 @@ const setupLibraryTranslations = () => {
284
288
  i18nLibraryTranslation.registerTranslations(translations);
285
289
  };
286
290
 
291
+ const ActiveFilterFiltersView = (props) => {
292
+ const [t] = useTranslation();
293
+ const { logEvent } = reactCoreHooks.useAnalytics(filtersFilterBar.FilterEvents);
294
+ const handleChange = (newValue) => {
295
+ logEvent("Filters Applied - V2", {
296
+ type: "ActiveFilter",
297
+ value: newValue,
298
+ });
299
+ props.setValue(prev => {
300
+ if (newValue === "undefined") {
301
+ return { booleanValue: undefined };
302
+ }
303
+ return newValue === "true" ? { booleanValue: true } : { booleanValue: false };
304
+ });
305
+ };
306
+ return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(filtersFilterBar.FilterHeader, { ...props.filterDefinition, ...props.filterBarActions }), jsxRuntime.jsx(reactFilterComponents.FilterBody, { className: "m-1", limitSize: true, children: jsxRuntime.jsxs(reactFormComponents.RadioGroup, { id: "ActiveAsset", onChange: e => handleChange(e.currentTarget.value), value: props.value ? props.value.booleanValue + "" : "true", children: [jsxRuntime.jsx(reactFilterComponents.RadioFilterItem, { label: t("filtersBar.defaultAssetFilters.activeAssetFilter.hide"), value: "true" }), jsxRuntime.jsx(reactFilterComponents.RadioFilterItem, { label: t("filtersBar.defaultAssetFilters.activeAssetFilter.show"), value: "false" })] }) })] }));
307
+ };
308
+ /**
309
+ *
310
+ */
311
+ const useActiveFilterFilter = () => {
312
+ const [t] = useTranslation();
313
+ const { isTrackunitUser } = reactCoreHooks.useCurrentUser();
314
+ const result = react.useMemo(() => {
315
+ return {
316
+ filterKey: "activeFilter",
317
+ type: "boolean",
318
+ group: "OTHER",
319
+ defaultValue: { booleanValue: true },
320
+ title: t("assetFilters.activeAssetFilter.label"),
321
+ isHidden: !isTrackunitUser,
322
+ valueAsText: (value) => {
323
+ if (!value.booleanValue) {
324
+ return t("filtersBar.defaultAssetFilters.activeAssetFilter.show");
325
+ }
326
+ else {
327
+ return "";
328
+ }
329
+ },
330
+ component: props => jsxRuntime.jsx(ActiveFilterFiltersView, { ...props }),
331
+ };
332
+ }, [isTrackunitUser, t]);
333
+ return result;
334
+ };
335
+
287
336
  const assetCriticalityState = {
288
337
  CRITICAL: "CRITICAL",
289
338
  LOW: "LOW",
@@ -2260,20 +2309,83 @@ const useProductionYearFilter = () => {
2260
2309
  return result;
2261
2310
  };
2262
2311
 
2312
+ const MAX_RECENT_SEARCHES = 20;
2263
2313
  /**
2264
- * This filter UI is basically just an empty shell since the
2265
- * search filter is rendered as a special case with the SearchFilterInside component.
2266
2314
  *
2267
2315
  */
2268
- const SearchFiltersView = (props) => {
2269
- return jsxRuntime.jsx(reactFormComponents.TextInput, { fieldSize: "small" });
2316
+ const SearchFilterInline = ({ filterBarActions, filterState, filterDefinition, localStorageKey, className, dataTestId, }) => {
2317
+ const { logEvent } = reactCoreHooks.useAnalytics(filtersFilterBar.FilterEvents);
2318
+ const searchElementRef = react.useRef(null);
2319
+ const geometry = reactComponents.useGeometry(searchElementRef);
2320
+ const filterValue = (filterDefinition === null || filterDefinition === void 0 ? void 0 : filterDefinition.filterKey) ? String(filterState.values[filterDefinition.filterKey]) : undefined;
2321
+ const [searchString, setSearchString] = react.useState(filterValue !== null && filterValue !== void 0 ? filterValue : "");
2322
+ const previousFilterValue = reactComponents.usePrevious(filterValue);
2323
+ reactComponents.useDebounce(searchString, 500, "both", debouncedSearchString => {
2324
+ if (filterValue === debouncedSearchString) {
2325
+ return;
2326
+ }
2327
+ apply({ value: debouncedSearchString, setRecent: false });
2328
+ });
2329
+ react.useEffect(() => {
2330
+ // Catch a change in filter value from outside the component and update the search string to match
2331
+ if (filterValue === searchString || previousFilterValue === filterValue) {
2332
+ return;
2333
+ }
2334
+ filterValue !== undefined && setSearchString(filterValue);
2335
+ }, [filterValue, previousFilterValue, searchString]);
2336
+ const [t] = useTranslation();
2337
+ const [recentSearches, setRecentSearches] = reactComponents.useLocalStorage({
2338
+ defaultState: [],
2339
+ key: `${localStorageKey}-${filterDefinition === null || filterDefinition === void 0 ? void 0 : filterDefinition.filterKey}-free-text-filter-recent-searches`,
2340
+ schema: zod.z.array(zod.z.string()),
2341
+ });
2342
+ const apply = react.useCallback(({ value, wasPreviousSearch = false, setRecent = true }) => {
2343
+ if (setRecent !== false) {
2344
+ setRecentSearches(prev => {
2345
+ const noDuplicatesRecent = prev.filter(r => r !== value);
2346
+ const cappedLengthRecent = noDuplicatesRecent.slice(0, MAX_RECENT_SEARCHES - 1);
2347
+ return [value, ...cappedLengthRecent];
2348
+ });
2349
+ }
2350
+ logEvent("Filters Applied - V2", {
2351
+ type: "free-text-search",
2352
+ value,
2353
+ additionalProperties: {
2354
+ wasPreviousSearch: Boolean(wasPreviousSearch),
2355
+ },
2356
+ });
2357
+ (filterDefinition === null || filterDefinition === void 0 ? void 0 : filterDefinition.filterKey) && filterBarActions.setStringValue(filterDefinition.filterKey, value);
2358
+ }, [filterDefinition === null || filterDefinition === void 0 ? void 0 : filterDefinition.filterKey, filterBarActions, logEvent, setRecentSearches]);
2359
+ return (jsxRuntime.jsxs(reactComponents.Popover, { activation: defaultActivation => ({ ...defaultActivation, keyboardHandlers: false }), dataTestId: dataTestId ? `${dataTestId}-popover` : undefined, placement: "bottom-start", children: [jsxRuntime.jsx(reactComponents.PopoverTrigger, { children: jsxRuntime.jsx(reactFormComponents.Search
2360
+ //TODO: [Buss] remove height restriction once baseinput sizes matches buttons
2361
+ , {
2362
+ //TODO: [Buss] remove height restriction once baseinput sizes matches buttons
2363
+ className: tailwindMerge.twMerge(className, "h-7 min-w-32 shrink grow basis-32"), fieldSize: "small", onChange: e => {
2364
+ const parsedValue = zod.z.string().safeParse(e.target.value);
2365
+ parsedValue.success ? setSearchString(parsedValue.data) : setSearchString("");
2366
+ }, onClear: () => setSearchString(""), onKeyDown: e => {
2367
+ if (e.key === "Enter") {
2368
+ apply({ value: searchString });
2369
+ }
2370
+ }, ref: searchElementRef, value: searchString }) }), recentSearches.length > 0 ? (jsxRuntime.jsx(reactComponents.PopoverContent, { children: jsxRuntime.jsx("div", { style: { minWidth: geometry.width }, children: jsxRuntime.jsxs(reactComponents.MenuList, { className: "overflow-hidden", children: [jsxRuntime.jsx(reactFilterComponents.FilterBody, { className: "max-w-none p-1", limitSize: true, children: jsxRuntime.jsx("ul", { className: "grid h-full gap-0.5", children: recentSearches.map((option, index) => (jsxRuntime.jsx(reactComponents.MenuItem, { className: "max-h-fit overflow-hidden", id: "free-text-search-filter-inline", label: option, onClick: () => {
2371
+ apply({ value: option, wasPreviousSearch: true });
2372
+ setRecentSearches(prev => {
2373
+ const noDuplicatesRecent = prev.filter(r => r !== option);
2374
+ const cappedLengthRecent = noDuplicatesRecent.slice(0, MAX_RECENT_SEARCHES - 1);
2375
+ return [option, ...cappedLengthRecent];
2376
+ });
2377
+ setSearchString(option);
2378
+ }, selected: option === filterValue, size: "small", suffix: jsxRuntime.jsx(reactComponents.Tooltip, { label: t("filters.shared.clear"), children: jsxRuntime.jsx(reactComponents.IconButton, { circular: true, icon: jsxRuntime.jsx(reactComponents.Icon, { name: "Trash", size: "small" }), onClick: e => {
2379
+ e.stopPropagation();
2380
+ setRecentSearches(prev => prev.filter(r => r !== option));
2381
+ }, size: "small", variant: "ghost-neutral" }) }) }, `${option}-${index}`))) }) }), jsxRuntime.jsxs("div", { className: "flex items-baseline justify-between gap-x-2 border-t-2 border-slate-300 px-2 py-0.5", children: [jsxRuntime.jsx(reactComponents.Text, { className: "py-0.5", size: "small", subtle: true, children: t("filters.shared.recentSearches") }), recentSearches.length > 1 ? (jsxRuntime.jsx(reactComponents.Button, { onClick: () => setRecentSearches([]), size: "small", variant: "ghost", children: t("filters.shared.clearAll") })) : null] })] }) }) })) : null] }));
2270
2382
  };
2271
2383
  /**
2272
2384
  * Search filter definition
2273
2385
  *
2274
2386
  * @returns {StringFilterDefinition} Search filter definition
2275
2387
  */
2276
- const useSearchFilter = () => {
2388
+ const useSearchFilter = ({ localStorageKey }) => {
2277
2389
  const [t] = useTranslation();
2278
2390
  const result = react.useMemo(() => {
2279
2391
  return {
@@ -2282,9 +2394,10 @@ const useSearchFilter = () => {
2282
2394
  type: "string",
2283
2395
  group: "OTHER",
2284
2396
  title: t("assetFilters.searchFilter.label"),
2285
- component: props => jsxRuntime.jsx(SearchFiltersView, { ...props }),
2397
+ showDirectly: true,
2398
+ component: props => jsxRuntime.jsx(SearchFilterInline, { ...props, localStorageKey: localStorageKey }),
2286
2399
  };
2287
- }, [t]);
2400
+ }, [localStorageKey, t]);
2288
2401
  return result;
2289
2402
  };
2290
2403
 
@@ -2779,7 +2892,7 @@ const useDefaultAssetFilterBarDefinition = ({ sitesEnabled, serviceManagementEna
2779
2892
  showInFilterBar: () => sitesEnabled || false,
2780
2893
  });
2781
2894
  const ownerAccountIds = useOwnerAccountIdsFilter();
2782
- const search = useSearchFilter();
2895
+ const search = useSearchFilter({ localStorageKey: "assetSearch" });
2783
2896
  const boundingBox = useBoundingBoxFilter();
2784
2897
  const productionYears = useProductionYearFilter();
2785
2898
  const partner = usePartnerFilter();
@@ -2788,6 +2901,7 @@ const useDefaultAssetFilterBarDefinition = ({ sitesEnabled, serviceManagementEna
2788
2901
  showInFilterBar: () => serviceManagementEnabled || false,
2789
2902
  });
2790
2903
  const telematicsConnected = useTelematicsConnectedFilter();
2904
+ const activeFilter = useActiveFilterFilter();
2791
2905
  return react.useMemo(() => {
2792
2906
  return {
2793
2907
  search,
@@ -2809,6 +2923,7 @@ const useDefaultAssetFilterBarDefinition = ({ sitesEnabled, serviceManagementEna
2809
2923
  productionYears,
2810
2924
  serviceStatus,
2811
2925
  telematicsConnected,
2926
+ activeFilter,
2812
2927
  };
2813
2928
  }, [
2814
2929
  siteIds,
@@ -2830,6 +2945,7 @@ const useDefaultAssetFilterBarDefinition = ({ sitesEnabled, serviceManagementEna
2830
2945
  productionYears,
2831
2946
  serviceStatus,
2832
2947
  telematicsConnected,
2948
+ activeFilter,
2833
2949
  ]);
2834
2950
  };
2835
2951
 
@@ -2964,12 +3080,14 @@ setupLibraryTranslations();
2964
3080
  exports.ALL_TYPES = ALL_TYPES;
2965
3081
  exports.GetFleetGroupSummaryDocument = GetFleetGroupSummaryDocument;
2966
3082
  exports.SERVICE_PLAN_STATUSES_TO_SHOW = SERVICE_PLAN_STATUSES_TO_SHOW;
3083
+ exports.SearchFilterInline = SearchFilterInline;
2967
3084
  exports.assetTypeConst = assetTypeConst;
2968
3085
  exports.coordinatesHasCorrectFormat = coordinatesHasCorrectFormat;
2969
3086
  exports.mapActivityToLabelId = mapActivityToLabelId;
2970
3087
  exports.mapMetadataCompletenessToLabelId = mapMetadataCompletenessToLabelId;
2971
3088
  exports.metadataCompleteness = metadataCompleteness;
2972
3089
  exports.sortSiteTypeSummary = sortSiteTypeSummary;
3090
+ exports.useActiveFilterFilter = useActiveFilterFilter;
2973
3091
  exports.useActivityFilter = useActivityFilter;
2974
3092
  exports.useAssetIdsFilter = useAssetIdsFilter;
2975
3093
  exports.useAssetTypeFilter = useAssetTypeFilter;
package/index.esm.js CHANGED
@@ -1,20 +1,21 @@
1
1
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
2
2
  import { registerTranslations, useNamespaceTranslation } from '@trackunit/i18n-library-translation';
3
+ import { FilterEvents, FilterHeader, DefaultCheckboxFilter, DefaultRadioFilter } from '@trackunit/filters-filter-bar';
4
+ import { useCurrentUser, useAnalytics, useErrorHandler } from '@trackunit/react-core-hooks';
5
+ import { FilterBody, RadioFilterItem } from '@trackunit/react-filter-components';
6
+ import { RadioGroup, RadioItem, Search } from '@trackunit/react-form-components';
7
+ import { useMemo, useCallback, useState, useRef, useEffect } from 'react';
3
8
  import { useQuery } from '@apollo/client';
4
- import { DefaultCheckboxFilter, FilterHeader, FilterEvents, DefaultRadioFilter } from '@trackunit/filters-filter-bar';
5
9
  import { useActiveAssetFilters, useAssetQueryFilters } from '@trackunit/filters-graphql-hook';
6
10
  import { ActivityIndicator } from '@trackunit/utilization-indicator';
7
- import { useMemo, useCallback, useState, useEffect } from 'react';
8
11
  import { objectValues, hourIntervals, enumFromValue, objectKeys } from '@trackunit/shared-utils';
9
12
  import { lowerCase } from 'string-ts';
10
- import { FilterBody, RadioFilterItem } from '@trackunit/react-filter-components';
11
- import { useDebounce } from '@trackunit/react-components';
13
+ import { useDebounce, useGeometry, usePrevious, useLocalStorage, Popover, PopoverTrigger, PopoverContent, MenuList, MenuItem, Tooltip, IconButton, Icon, Text, Button } from '@trackunit/react-components';
12
14
  import { useMachineTypeTranslations } from '@trackunit/translations-machine-type';
13
15
  import { CriticalityIndicator } from '@trackunit/criticality-indicator';
14
- import { useAnalytics, useErrorHandler } from '@trackunit/react-core-hooks';
15
- import { RadioGroup, RadioItem, TextInput } from '@trackunit/react-form-components';
16
- import { useSearch, useNavigate, useRouter } from '@tanstack/react-router';
16
+ import { twMerge } from 'tailwind-merge';
17
17
  import { z } from 'zod';
18
+ import { useSearch, useNavigate, useRouter } from '@tanstack/react-router';
18
19
 
19
20
  var defaultTranslations = {
20
21
  "access.management.filter.operator.role.keyAdmin": "Key Admin",
@@ -31,6 +32,7 @@ var defaultTranslations = {
31
32
  "access.management.operator.filter.keyStatus.title": "Key Status",
32
33
  "access.management.operator.filter.operatorRole.keyAdmin.title": "Key Admin",
33
34
  "access.management.operator.filter.operatorRole.title": "Operator Role",
35
+ "assetFilters.activeAssetFilter.label": "Hidden assets",
34
36
  "assetFilters.activityFilter.idling": "Idling",
35
37
  "assetFilters.activityFilter.stopped": "Stopped",
36
38
  "assetFilters.activityFilter.unknown": "Unknown",
@@ -121,10 +123,12 @@ var defaultTranslations = {
121
123
  "auditlog.filter.components": "Components",
122
124
  "auditlog.filter.events": "Events",
123
125
  "auditlog.filter.users": "Users",
126
+ "filters.shared.clear": "clear",
127
+ "filters.shared.clearAll": "clear all",
124
128
  "filters.shared.recentSearches": "Recent searches",
125
- "filters.shared.remove": "remove",
126
- "filters.shared.removeAll": "remove all",
127
129
  "filtersBar.closeFilter": "Close",
130
+ "filtersBar.defaultAssetFilters.activeAssetFilter.hide": "Hide",
131
+ "filtersBar.defaultAssetFilters.activeAssetFilter.show": "Show",
128
132
  "filtersBar.defaultAssetFilters.followedFilter.ALL": "All Assets",
129
133
  "filtersBar.defaultAssetFilters.followedFilter.allLabel": "All Assets",
130
134
  "filtersBar.defaultAssetFilters.followedFilter.FOLLOWED": "Followed Only",
@@ -282,6 +286,51 @@ const setupLibraryTranslations = () => {
282
286
  registerTranslations(translations);
283
287
  };
284
288
 
289
+ const ActiveFilterFiltersView = (props) => {
290
+ const [t] = useTranslation();
291
+ const { logEvent } = useAnalytics(FilterEvents);
292
+ const handleChange = (newValue) => {
293
+ logEvent("Filters Applied - V2", {
294
+ type: "ActiveFilter",
295
+ value: newValue,
296
+ });
297
+ props.setValue(prev => {
298
+ if (newValue === "undefined") {
299
+ return { booleanValue: undefined };
300
+ }
301
+ return newValue === "true" ? { booleanValue: true } : { booleanValue: false };
302
+ });
303
+ };
304
+ return (jsxs(Fragment, { children: [jsx(FilterHeader, { ...props.filterDefinition, ...props.filterBarActions }), jsx(FilterBody, { className: "m-1", limitSize: true, children: jsxs(RadioGroup, { id: "ActiveAsset", onChange: e => handleChange(e.currentTarget.value), value: props.value ? props.value.booleanValue + "" : "true", children: [jsx(RadioFilterItem, { label: t("filtersBar.defaultAssetFilters.activeAssetFilter.hide"), value: "true" }), jsx(RadioFilterItem, { label: t("filtersBar.defaultAssetFilters.activeAssetFilter.show"), value: "false" })] }) })] }));
305
+ };
306
+ /**
307
+ *
308
+ */
309
+ const useActiveFilterFilter = () => {
310
+ const [t] = useTranslation();
311
+ const { isTrackunitUser } = useCurrentUser();
312
+ const result = useMemo(() => {
313
+ return {
314
+ filterKey: "activeFilter",
315
+ type: "boolean",
316
+ group: "OTHER",
317
+ defaultValue: { booleanValue: true },
318
+ title: t("assetFilters.activeAssetFilter.label"),
319
+ isHidden: !isTrackunitUser,
320
+ valueAsText: (value) => {
321
+ if (!value.booleanValue) {
322
+ return t("filtersBar.defaultAssetFilters.activeAssetFilter.show");
323
+ }
324
+ else {
325
+ return "";
326
+ }
327
+ },
328
+ component: props => jsx(ActiveFilterFiltersView, { ...props }),
329
+ };
330
+ }, [isTrackunitUser, t]);
331
+ return result;
332
+ };
333
+
285
334
  const assetCriticalityState = {
286
335
  CRITICAL: "CRITICAL",
287
336
  LOW: "LOW",
@@ -2258,20 +2307,83 @@ const useProductionYearFilter = () => {
2258
2307
  return result;
2259
2308
  };
2260
2309
 
2310
+ const MAX_RECENT_SEARCHES = 20;
2261
2311
  /**
2262
- * This filter UI is basically just an empty shell since the
2263
- * search filter is rendered as a special case with the SearchFilterInside component.
2264
2312
  *
2265
2313
  */
2266
- const SearchFiltersView = (props) => {
2267
- return jsx(TextInput, { fieldSize: "small" });
2314
+ const SearchFilterInline = ({ filterBarActions, filterState, filterDefinition, localStorageKey, className, dataTestId, }) => {
2315
+ const { logEvent } = useAnalytics(FilterEvents);
2316
+ const searchElementRef = useRef(null);
2317
+ const geometry = useGeometry(searchElementRef);
2318
+ const filterValue = (filterDefinition === null || filterDefinition === void 0 ? void 0 : filterDefinition.filterKey) ? String(filterState.values[filterDefinition.filterKey]) : undefined;
2319
+ const [searchString, setSearchString] = useState(filterValue !== null && filterValue !== void 0 ? filterValue : "");
2320
+ const previousFilterValue = usePrevious(filterValue);
2321
+ useDebounce(searchString, 500, "both", debouncedSearchString => {
2322
+ if (filterValue === debouncedSearchString) {
2323
+ return;
2324
+ }
2325
+ apply({ value: debouncedSearchString, setRecent: false });
2326
+ });
2327
+ useEffect(() => {
2328
+ // Catch a change in filter value from outside the component and update the search string to match
2329
+ if (filterValue === searchString || previousFilterValue === filterValue) {
2330
+ return;
2331
+ }
2332
+ filterValue !== undefined && setSearchString(filterValue);
2333
+ }, [filterValue, previousFilterValue, searchString]);
2334
+ const [t] = useTranslation();
2335
+ const [recentSearches, setRecentSearches] = useLocalStorage({
2336
+ defaultState: [],
2337
+ key: `${localStorageKey}-${filterDefinition === null || filterDefinition === void 0 ? void 0 : filterDefinition.filterKey}-free-text-filter-recent-searches`,
2338
+ schema: z.array(z.string()),
2339
+ });
2340
+ const apply = useCallback(({ value, wasPreviousSearch = false, setRecent = true }) => {
2341
+ if (setRecent !== false) {
2342
+ setRecentSearches(prev => {
2343
+ const noDuplicatesRecent = prev.filter(r => r !== value);
2344
+ const cappedLengthRecent = noDuplicatesRecent.slice(0, MAX_RECENT_SEARCHES - 1);
2345
+ return [value, ...cappedLengthRecent];
2346
+ });
2347
+ }
2348
+ logEvent("Filters Applied - V2", {
2349
+ type: "free-text-search",
2350
+ value,
2351
+ additionalProperties: {
2352
+ wasPreviousSearch: Boolean(wasPreviousSearch),
2353
+ },
2354
+ });
2355
+ (filterDefinition === null || filterDefinition === void 0 ? void 0 : filterDefinition.filterKey) && filterBarActions.setStringValue(filterDefinition.filterKey, value);
2356
+ }, [filterDefinition === null || filterDefinition === void 0 ? void 0 : filterDefinition.filterKey, filterBarActions, logEvent, setRecentSearches]);
2357
+ return (jsxs(Popover, { activation: defaultActivation => ({ ...defaultActivation, keyboardHandlers: false }), dataTestId: dataTestId ? `${dataTestId}-popover` : undefined, placement: "bottom-start", children: [jsx(PopoverTrigger, { children: jsx(Search
2358
+ //TODO: [Buss] remove height restriction once baseinput sizes matches buttons
2359
+ , {
2360
+ //TODO: [Buss] remove height restriction once baseinput sizes matches buttons
2361
+ className: twMerge(className, "h-7 min-w-32 shrink grow basis-32"), fieldSize: "small", onChange: e => {
2362
+ const parsedValue = z.string().safeParse(e.target.value);
2363
+ parsedValue.success ? setSearchString(parsedValue.data) : setSearchString("");
2364
+ }, onClear: () => setSearchString(""), onKeyDown: e => {
2365
+ if (e.key === "Enter") {
2366
+ apply({ value: searchString });
2367
+ }
2368
+ }, ref: searchElementRef, value: searchString }) }), recentSearches.length > 0 ? (jsx(PopoverContent, { children: jsx("div", { style: { minWidth: geometry.width }, children: jsxs(MenuList, { className: "overflow-hidden", children: [jsx(FilterBody, { className: "max-w-none p-1", limitSize: true, children: jsx("ul", { className: "grid h-full gap-0.5", children: recentSearches.map((option, index) => (jsx(MenuItem, { className: "max-h-fit overflow-hidden", id: "free-text-search-filter-inline", label: option, onClick: () => {
2369
+ apply({ value: option, wasPreviousSearch: true });
2370
+ setRecentSearches(prev => {
2371
+ const noDuplicatesRecent = prev.filter(r => r !== option);
2372
+ const cappedLengthRecent = noDuplicatesRecent.slice(0, MAX_RECENT_SEARCHES - 1);
2373
+ return [option, ...cappedLengthRecent];
2374
+ });
2375
+ setSearchString(option);
2376
+ }, selected: option === filterValue, size: "small", suffix: jsx(Tooltip, { label: t("filters.shared.clear"), children: jsx(IconButton, { circular: true, icon: jsx(Icon, { name: "Trash", size: "small" }), onClick: e => {
2377
+ e.stopPropagation();
2378
+ setRecentSearches(prev => prev.filter(r => r !== option));
2379
+ }, size: "small", variant: "ghost-neutral" }) }) }, `${option}-${index}`))) }) }), jsxs("div", { className: "flex items-baseline justify-between gap-x-2 border-t-2 border-slate-300 px-2 py-0.5", children: [jsx(Text, { className: "py-0.5", size: "small", subtle: true, children: t("filters.shared.recentSearches") }), recentSearches.length > 1 ? (jsx(Button, { onClick: () => setRecentSearches([]), size: "small", variant: "ghost", children: t("filters.shared.clearAll") })) : null] })] }) }) })) : null] }));
2268
2380
  };
2269
2381
  /**
2270
2382
  * Search filter definition
2271
2383
  *
2272
2384
  * @returns {StringFilterDefinition} Search filter definition
2273
2385
  */
2274
- const useSearchFilter = () => {
2386
+ const useSearchFilter = ({ localStorageKey }) => {
2275
2387
  const [t] = useTranslation();
2276
2388
  const result = useMemo(() => {
2277
2389
  return {
@@ -2280,9 +2392,10 @@ const useSearchFilter = () => {
2280
2392
  type: "string",
2281
2393
  group: "OTHER",
2282
2394
  title: t("assetFilters.searchFilter.label"),
2283
- component: props => jsx(SearchFiltersView, { ...props }),
2395
+ showDirectly: true,
2396
+ component: props => jsx(SearchFilterInline, { ...props, localStorageKey: localStorageKey }),
2284
2397
  };
2285
- }, [t]);
2398
+ }, [localStorageKey, t]);
2286
2399
  return result;
2287
2400
  };
2288
2401
 
@@ -2777,7 +2890,7 @@ const useDefaultAssetFilterBarDefinition = ({ sitesEnabled, serviceManagementEna
2777
2890
  showInFilterBar: () => sitesEnabled || false,
2778
2891
  });
2779
2892
  const ownerAccountIds = useOwnerAccountIdsFilter();
2780
- const search = useSearchFilter();
2893
+ const search = useSearchFilter({ localStorageKey: "assetSearch" });
2781
2894
  const boundingBox = useBoundingBoxFilter();
2782
2895
  const productionYears = useProductionYearFilter();
2783
2896
  const partner = usePartnerFilter();
@@ -2786,6 +2899,7 @@ const useDefaultAssetFilterBarDefinition = ({ sitesEnabled, serviceManagementEna
2786
2899
  showInFilterBar: () => serviceManagementEnabled || false,
2787
2900
  });
2788
2901
  const telematicsConnected = useTelematicsConnectedFilter();
2902
+ const activeFilter = useActiveFilterFilter();
2789
2903
  return useMemo(() => {
2790
2904
  return {
2791
2905
  search,
@@ -2807,6 +2921,7 @@ const useDefaultAssetFilterBarDefinition = ({ sitesEnabled, serviceManagementEna
2807
2921
  productionYears,
2808
2922
  serviceStatus,
2809
2923
  telematicsConnected,
2924
+ activeFilter,
2810
2925
  };
2811
2926
  }, [
2812
2927
  siteIds,
@@ -2828,6 +2943,7 @@ const useDefaultAssetFilterBarDefinition = ({ sitesEnabled, serviceManagementEna
2828
2943
  productionYears,
2829
2944
  serviceStatus,
2830
2945
  telematicsConnected,
2946
+ activeFilter,
2831
2947
  ]);
2832
2948
  };
2833
2949
 
@@ -2959,4 +3075,4 @@ const servicePlanSchema = z.array(z.union([
2959
3075
  */
2960
3076
  setupLibraryTranslations();
2961
3077
 
2962
- export { ALL_TYPES, AssetActivityState, AssetLastSeen, DayPeriod, GetFleetGroupSummaryDocument, SERVICE_PLAN_STATUSES_TO_SHOW, SiteStatus, SiteTypeSFS, assetTypeConst, coordinatesHasCorrectFormat, mapActivityToLabelId, mapMetadataCompletenessToLabelId, metadataCompleteness, sortSiteTypeSummary, useActivityFilter, useAssetIdsFilter, useAssetTypeFilter, useBoundingBoxFilter, useBrandFilter, useCriticalityFilter, useCustomerIdsFilter, useDefaultAssetFilterBarDefinition, useFollowedFilter, useGroupIdsFilter, useHourIntervalFilter, useLastSeenFilter, useMetadataCompletenessFilter, useModelsFilter, useOwnerAccountIdsFilter, usePeriodFilter, useProductionYearFilter, useSearchFilter, useServicePlanStatusFilter, useSetFilterStateFromUrl, useSiteIdsFilter, useSiteStatusFilter, useSiteTypeFilter, useTelematicsConnectedFilter, useTypesFilter };
3078
+ export { ALL_TYPES, AssetActivityState, AssetLastSeen, DayPeriod, GetFleetGroupSummaryDocument, SERVICE_PLAN_STATUSES_TO_SHOW, SearchFilterInline, SiteStatus, SiteTypeSFS, assetTypeConst, coordinatesHasCorrectFormat, mapActivityToLabelId, mapMetadataCompletenessToLabelId, metadataCompleteness, sortSiteTypeSummary, useActiveFilterFilter, useActivityFilter, useAssetIdsFilter, useAssetTypeFilter, useBoundingBoxFilter, useBrandFilter, useCriticalityFilter, useCustomerIdsFilter, useDefaultAssetFilterBarDefinition, useFollowedFilter, useGroupIdsFilter, useHourIntervalFilter, useLastSeenFilter, useMetadataCompletenessFilter, useModelsFilter, useOwnerAccountIdsFilter, usePeriodFilter, useProductionYearFilter, useSearchFilter, useServicePlanStatusFilter, useSetFilterStateFromUrl, useSiteIdsFilter, useSiteStatusFilter, useSiteTypeFilter, useTelematicsConnectedFilter, useTypesFilter };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@trackunit/filters-asset-filter-definitions",
3
- "version": "0.0.473",
3
+ "version": "0.0.477",
4
4
  "repository": "https://github.com/Trackunit/manager",
5
5
  "license": "SEE LICENSE IN LICENSE.txt",
6
6
  "engines": {
@@ -23,14 +23,15 @@
23
23
  "@trackunit/react-form-components": "*",
24
24
  "@trackunit/shared-utils": "*",
25
25
  "@graphql-typed-document-node/core": "^3.2.0",
26
- "graphql": "^16.8.1",
27
26
  "@trackunit/iris-app-api": "*",
28
27
  "@trackunit/react-core-contexts-test": "*",
29
28
  "zod": "3.22.4",
30
29
  "@trackunit/i18n-library-translation": "*",
31
30
  "jest-fetch-mock": "^3.0.3",
32
31
  "@tanstack/react-router": "1.47.1",
33
- "string-ts": "^2.0.0"
32
+ "string-ts": "^2.0.0",
33
+ "tailwind-merge": "^2.0.0",
34
+ "graphql": "^16.8.1"
34
35
  },
35
36
  "module": "./index.esm.js",
36
37
  "main": "./index.cjs.js",
@@ -0,0 +1,5 @@
1
+ import { BooleanFilterDefinition } from "@trackunit/filters-filter-bar";
2
+ /**
3
+ *
4
+ */
5
+ export declare const useActiveFilterFilter: () => BooleanFilterDefinition;
@@ -1,7 +1,34 @@
1
- import { StringFilterDefinition } from "@trackunit/filters-filter-bar";
1
+ import { FilterBarDefinition, FilterDefinition, FilterMapActions, FilterMapGetter, FilterState, StringFilterDefinition } from "@trackunit/filters-filter-bar";
2
+ import { CommonProps } from "@trackunit/react-components";
3
+ type LocalStorageProps = {
4
+ /**
5
+ * The key to use for storing/retrieving saved previous in local storage.
6
+ * Should be unique for each filter
7
+ */
8
+ localStorageKey: string;
9
+ };
10
+ interface SearchFilterProps<TFilterState extends FilterBarDefinition> extends LocalStorageProps, CommonProps {
11
+ /**
12
+ * The definition of the filter.
13
+ */
14
+ filterDefinition?: FilterDefinition;
15
+ /**
16
+ * The state of the filter.
17
+ */
18
+ filterState: FilterState<TFilterState>;
19
+ /**
20
+ * Actions and getters for the filter bar.
21
+ */
22
+ filterBarActions: FilterMapActions & FilterMapGetter;
23
+ }
24
+ /**
25
+ *
26
+ */
27
+ export declare const SearchFilterInline: <TFilterState extends FilterBarDefinition>({ filterBarActions, filterState, filterDefinition, localStorageKey, className, dataTestId, }: SearchFilterProps<TFilterState>) => import("react/jsx-runtime").JSX.Element;
2
28
  /**
3
29
  * Search filter definition
4
30
  *
5
31
  * @returns {StringFilterDefinition} Search filter definition
6
32
  */
7
- export declare const useSearchFilter: () => StringFilterDefinition;
33
+ export declare const useSearchFilter: ({ localStorageKey }: LocalStorageProps) => StringFilterDefinition;
34
+ export {};
@@ -1,3 +1,4 @@
1
+ export * from "./ActiveFilter";
1
2
  export * from "./ActivityFilter";
2
3
  export * from "./AssetIdsFilter";
3
4
  export * from "./AssetTypeFilter";
@@ -14,6 +15,7 @@ export * from "./ModelsFilter";
14
15
  export * from "./OwnerAccountIdsFilter";
15
16
  export * from "./PeriodFilter";
16
17
  export * from "./ProductionYearFilter";
18
+ export * from "./refetchQueries";
17
19
  export * from "./SearchFilter";
18
20
  export * from "./ServicePlanStatusFilter";
19
21
  export * from "./SiteIdsFilter";
@@ -21,4 +23,3 @@ export * from "./SiteStatusFilter";
21
23
  export * from "./SiteTypeFilter";
22
24
  export * from "./TelematicsConnectedFilter";
23
25
  export * from "./TypesFilter";
24
- export * from "./refetchQueries";
@@ -403,6 +403,8 @@ export declare const systemOfMeasurement: {
403
403
  };
404
404
  export type SystemOfMeasurement = (typeof systemOfMeasurement)[keyof typeof systemOfMeasurement];
405
405
  export type AssetFiltersInput = {
406
+ /** Filter by if the asset is active */
407
+ activeFilter?: InputMaybe<Scalars["Boolean"]["input"]>;
406
408
  /** List of activities */
407
409
  activities?: InputMaybe<Array<AssetActivityState>>;
408
410
  /** A list of asset ID's to do a bulk lookup for. */
@@ -34,6 +34,7 @@ export declare const useDefaultAssetFilterBarDefinition: ({ sitesEnabled, servic
34
34
  productionYears: import("@trackunit/filters-filter-bar").ValueNameFilterDefinition;
35
35
  serviceStatus: import("@trackunit/filters-filter-bar").StringArrayFilterDefinition;
36
36
  telematicsConnected: import("@trackunit/filters-filter-bar").BooleanFilterDefinition;
37
+ activeFilter: import("@trackunit/filters-filter-bar").BooleanFilterDefinition;
37
38
  };
38
39
  export type DefaultAssetFilterBarDefinition = ReturnType<typeof useDefaultAssetFilterBarDefinition>;
39
40
  export type DefaultAssetFilterValues = FilterStateValues<DefaultAssetFilterBarDefinition>;
@@ -14,8 +14,8 @@ export declare const translations: TranslationResource<TranslationKeys>;
14
14
  /**
15
15
  * Local useTranslation for this specific library
16
16
  */
17
- export declare const useTranslation: () => [TransForLibs<"access.management.filter.operator.role.keyAdmin" | "access.management.keys.filter.active" | "access.management.keys.filter.deleted" | "access.management.keys.filter.expired" | "access.management.keys.filter.future" | "access.management.operator.asset.filter.category" | "access.management.operator.asset.filter.keyType" | "access.management.operator.asset.filter.type.digitalKey" | "access.management.operator.asset.filter.type.rollingPin" | "access.management.operator.asset.filter.type.staticPin" | "access.management.operator.filter.category" | "access.management.operator.filter.keyStatus.title" | "access.management.operator.filter.operatorRole.keyAdmin.title" | "access.management.operator.filter.operatorRole.title" | "assetFilters.activityFilter.idling" | "assetFilters.activityFilter.stopped" | "assetFilters.activityFilter.unknown" | "assetFilters.activityFilter.working" | "assetFilters.assetType.ATTACHMENT" | "assetFilters.assetType.EQUIPMENT" | "assetFilters.assetType.GATEWAY" | "assetFilters.assetType.MACHINE" | "assetFilters.assetType.OTHER" | "assetFilters.assetType.TOOL" | "assetFilters.assetType.VEHICLE" | "assetFilters.boundingBoxFilter.label" | "assetFilters.boundingBoxFilter.value" | "assetFilters.criticality.CRITICAL" | "assetFilters.criticality.LOW" | "assetFilters.criticality.NONE" | "assetFilters.followedFilter.label" | "assetFilters.hourIntervalFilter.label" | "assetFilters.lastSeenFilter.anytime" | "assetFilters.lastSeenFilter.last24Hours" | "assetFilters.lastSeenFilter.last30Days" | "assetFilters.lastSeenFilter.last7Days" | "assetFilters.lastSeenFilter.lastHour" | "assetFilters.lastSeenFilter.olderThan30Days" | "assetFilters.metadataCompleteness.ALL" | "assetFilters.metadataCompleteness.COMPLETE" | "assetFilters.metadataCompleteness.PARTIAL" | "assetFilters.ownerAccountNameFilter.label" | "assetFilters.partnerFilter.label" | "assetFilters.periodFilter.label" | "assetFilters.periodFilter.LAST_24_HOURS" | "assetFilters.periodFilter.LAST_30_DAYS" | "assetFilters.periodFilter.LAST_7_DAYS" | "assetFilters.periodFilter.LIFETIME" | "assetFilters.planned" | "assetFilters.productionYear.label" | "assetFilters.regions.ANTARCTICA" | "assetFilters.regions.AUSTRALIA_AND_NEW_ZEALAND" | "assetFilters.regions.CENTRAL_ASIA" | "assetFilters.regions.EASTERN_ASIA" | "assetFilters.regions.EASTERN_EUROPE" | "assetFilters.regions.label" | "assetFilters.regions.LATIN_AMERICA_AND_THE_CARIBBEAN" | "assetFilters.regions.MELANESIA" | "assetFilters.regions.MICRONESIA" | "assetFilters.regions.NORTHERN_AFRICA" | "assetFilters.regions.NORTHERN_AMERICA" | "assetFilters.regions.NORTHERN_EUROPE" | "assetFilters.regions.POLYNESIA" | "assetFilters.regions.SOUTH-EASTERN_ASIA" | "assetFilters.regions.SOUTHERN_ASIA" | "assetFilters.regions.SOUTHERN_EUROPE" | "assetFilters.regions.SUB-SAHARAN_AFRICA" | "assetFilters.regions.WESTERN_ASIA" | "assetFilters.regions.WESTERN_EUROPE" | "assetFilters.regions.WHOLE_WORLD" | "assetFilters.rentalCustomerNameFilter.label" | "assetFilters.searchFilter.label" | "assetFilters.searchPlaceholder" | "assetFilters.serviceAssignmentStatusFilter.label" | "assetFilters.servicePlanFilter.fullyConfigured" | "assetFilters.servicePlanFilter.label" | "assetFilters.servicePlanFilter.notConfigured" | "assetFilters.servicePlanFilter.partiallyConfigured" | "assetFilters.serviceProviderFilter.label" | "assetFilters.serviceProviderStatusFilter.hasServiceProvider" | "assetFilters.serviceProviderStatusFilter.noServiceProvider" | "assetFilters.serviceStatusFilter.COMPLETE" | "assetFilters.serviceStatusFilter.DRAFT" | "assetFilters.serviceStatusFilter.FULLY_CONFIGURED" | "assetFilters.serviceStatusFilter.HAS_PLAN" | "assetFilters.serviceStatusFilter.HAS_SERVICE_PROVIDER" | "assetFilters.serviceStatusFilter.label" | "assetFilters.serviceStatusFilter.MISSING_PLAN" | "assetFilters.serviceStatusFilter.MISSING_PROVIDER" | "assetFilters.serviceStatusFilter.overdue" | "assetFilters.serviceStatusFilter.OVERDUE" | "assetFilters.serviceStatusFilter.PLANNED" | "assetFilters.serviceStatusFilter.UNKNOWN" | "assetFilters.serviceStatusFilter.upcoming" | "assetFilters.serviceStatusFilter.UPCOMING" | "assetFilters.shareOwnerFilter.label" | "assetFilters.telematicsConnectedFilter.label" | "assetFilters.unknown" | "assetFilters.visibleToFilter.label" | "auditlog.filter.categories" | "auditlog.filter.component" | "auditlog.filter.components" | "auditlog.filter.events" | "auditlog.filter.users" | "filters.shared.recentSearches" | "filters.shared.remove" | "filters.shared.removeAll" | "filtersBar.closeFilter" | "filtersBar.defaultAssetFilters.followedFilter.ALL" | "filtersBar.defaultAssetFilters.followedFilter.allLabel" | "filtersBar.defaultAssetFilters.followedFilter.FOLLOWED" | "filtersBar.defaultAssetFilters.followedFilter.followedOnlyLabel" | "filtersBar.defaultAssetFilters.lastSeenFilter.ALL" | "filtersBar.defaultAssetFilters.lastSeenFilter.LAST_24_HOURS" | "filtersBar.defaultAssetFilters.lastSeenFilter.LAST_30_DAYS" | "filtersBar.defaultAssetFilters.lastSeenFilter.LAST_7_DAYS" | "filtersBar.defaultAssetFilters.lastSeenFilter.LAST_HOUR" | "filtersBar.defaultAssetFilters.lastSeenFilter.OLDER_THAN_30_DAYS" | "filtersBar.defaultAssetFilters.metadataGroup" | "filtersBar.defaultAssetFilters.othersGroup" | "filtersBar.defaultAssetFilters.sitesGroup" | "filtersBar.defaultAssetFilters.statusGroup" | "filtersBar.defaultAssetFilters.telematicsConnectedFilter.connected" | "filtersBar.defaultAssetFilters.telematicsConnectedFilter.notConnected" | "filtersBar.emptyResults" | "filtersBar.filtersHeading" | "filtersBar.loading" | "filtersBar.myNetworkGroup" | "filtersBar.resetFilter" | "filtersBar.resetFilters" | "filtersBar.starredFilters.title" | "filtersBar.starredFiltersTitle" | "fleetlist.column.activity" | "fleetlist.column.assetIds" | "fleetlist.column.assetType" | "fleetlist.column.attention" | "fleetlist.column.brand" | "fleetlist.column.city" | "fleetlist.column.country" | "fleetlist.column.customerIds" | "fleetlist.column.externalReference" | "fleetlist.column.groupIds" | "fleetlist.column.lastSeen" | "fleetlist.column.metadata" | "fleetlist.column.metadataCompleteness" | "fleetlist.column.model" | "fleetlist.column.name" | "fleetlist.column.owner" | "fleetlist.column.servicePlanStatus" | "fleetlist.column.siteIds" | "fleetlist.column.siteStatus" | "fleetlist.column.siteType" | "fleetlist.column.streetAddress" | "fleetlist.column.totalHours" | "fleetlist.column.type" | "fleetlist.column.unitSerialNumber" | "fleetlist.column.vin" | "fleetlist.column.year" | "fleetlist.column.zipCode" | "fleetlist.createGroup" | "fleetlist.description" | "fleetList.sorting.ACTIVITY" | "fleetList.sorting.ASSET_TYPE" | "fleetList.sorting.BRAND" | "fleetList.sorting.CATEGORY" | "fleetList.sorting.CRITICALITY" | "fleetList.sorting.EXTERNAL_REFERENCE" | "fleetList.sorting.LOCATION" | "fleetList.sorting.LOCATION_UPDATED_AT" | "fleetList.sorting.MODEL" | "fleetList.sorting.NAME" | "fleetList.sorting.OWNER_ACCOUNT_NAME" | "fleetList.sorting.PRODUCTION_YEAR" | "fleetList.sorting.SERIAL_NUMBER" | "fleetList.sorting.SERVICE_PLAN_ASSIGNMENT_STATUS" | "fleetList.sorting.SERVICE_PLAN_OVERDUENESS" | "fleetList.sorting.SERVICE_PLAN_STATUS" | "fleetList.sorting.TELEMATICS_DEVICE_SERIAL_NUMBER" | "fleetList.sorting.TYPE" | "fleetList.sortingCategories.metadata" | "fleetList.sortingCategories.other" | "fleetList.sortingCategories.status" | "machine.types.ALL" | "machine.types.Unknown" | "pages.machines.telematics.networkTechnology.NW_TECH_2G" | "pages.machines.telematics.networkTechnology.NW_TECH_3G" | "pages.machines.telematics.networkTechnology.NW_TECH_4G" | "pages.machines.telematics.networkTechnology.UNKNOWN" | "pages.machines.telematics.operationalStatus.digitalKeyMode.DISABLED" | "pages.machines.telematics.operationalStatus.digitalKeyMode.LOCKED_FOR_ALL" | "pages.machines.telematics.operationalStatus.digitalKeyMode.LOCKED_FOR_ALL_FIXED" | "pages.machines.telematics.operationalStatus.digitalKeyMode.name" | "pages.machines.telematics.operationalStatus.digitalKeyMode.NEVER_INITIALIZED" | "pages.machines.telematics.operationalStatus.digitalKeyMode.UNKNOWN" | "pages.machines.telematics.operationalStatus.digitalKeyMode.UNLOCKED_FOR_ALL" | "pages.machines.telematics.operationalStatus.digitalKeyMode.UNLOCKED_FOR_ALL_FIXED" | "pages.machines.telematics.operationalStatus.digitalKeyMode.UNLOCKED_FOR_KEY" | "pages.machines.telematics.operationalStatus.digitalKeyMode.UNLOCKED_FOR_KEY_AND_PIN" | "pages.machines.telematics.operationalStatus.digitalKeyMode.UNLOCKED_FOR_PIN" | "pages.machines.telematics.operationalStatus.digitalKeyMode.UNSUPPORTED" | "rental.status.available" | "rental.status.inRepair" | "rental.status.onRent" | "rental.status.other" | "rental.status.pickUpReady" | "rental.status.returned" | "rental.status.transfer" | "rental.status.unknown" | "siteFilters.siteStatus.ACTIVE" | "siteFilters.siteStatus.ARCHIVED" | "siteFilters.siteStatus.FINISHED" | "siteFilters.siteStatus.PLANNED" | "siteFilters.siteStatus.unknown" | "siteFilters.siteType.AREA" | "siteFilters.siteType.CLASSIC_POI" | "siteFilters.siteType.CLASSIC_ZONE" | "siteFilters.siteType.CONSTRUCTION_SITE" | "siteFilters.siteType.DEPOT" | "siteFilters.siteType.NOT_ON_SITE" | "siteFilters.siteType.unknown" | "siteFilters.siteType.WORK_PLACE">, import("i18next").i18n, boolean] & {
18
- t: TransForLibs<"access.management.filter.operator.role.keyAdmin" | "access.management.keys.filter.active" | "access.management.keys.filter.deleted" | "access.management.keys.filter.expired" | "access.management.keys.filter.future" | "access.management.operator.asset.filter.category" | "access.management.operator.asset.filter.keyType" | "access.management.operator.asset.filter.type.digitalKey" | "access.management.operator.asset.filter.type.rollingPin" | "access.management.operator.asset.filter.type.staticPin" | "access.management.operator.filter.category" | "access.management.operator.filter.keyStatus.title" | "access.management.operator.filter.operatorRole.keyAdmin.title" | "access.management.operator.filter.operatorRole.title" | "assetFilters.activityFilter.idling" | "assetFilters.activityFilter.stopped" | "assetFilters.activityFilter.unknown" | "assetFilters.activityFilter.working" | "assetFilters.assetType.ATTACHMENT" | "assetFilters.assetType.EQUIPMENT" | "assetFilters.assetType.GATEWAY" | "assetFilters.assetType.MACHINE" | "assetFilters.assetType.OTHER" | "assetFilters.assetType.TOOL" | "assetFilters.assetType.VEHICLE" | "assetFilters.boundingBoxFilter.label" | "assetFilters.boundingBoxFilter.value" | "assetFilters.criticality.CRITICAL" | "assetFilters.criticality.LOW" | "assetFilters.criticality.NONE" | "assetFilters.followedFilter.label" | "assetFilters.hourIntervalFilter.label" | "assetFilters.lastSeenFilter.anytime" | "assetFilters.lastSeenFilter.last24Hours" | "assetFilters.lastSeenFilter.last30Days" | "assetFilters.lastSeenFilter.last7Days" | "assetFilters.lastSeenFilter.lastHour" | "assetFilters.lastSeenFilter.olderThan30Days" | "assetFilters.metadataCompleteness.ALL" | "assetFilters.metadataCompleteness.COMPLETE" | "assetFilters.metadataCompleteness.PARTIAL" | "assetFilters.ownerAccountNameFilter.label" | "assetFilters.partnerFilter.label" | "assetFilters.periodFilter.label" | "assetFilters.periodFilter.LAST_24_HOURS" | "assetFilters.periodFilter.LAST_30_DAYS" | "assetFilters.periodFilter.LAST_7_DAYS" | "assetFilters.periodFilter.LIFETIME" | "assetFilters.planned" | "assetFilters.productionYear.label" | "assetFilters.regions.ANTARCTICA" | "assetFilters.regions.AUSTRALIA_AND_NEW_ZEALAND" | "assetFilters.regions.CENTRAL_ASIA" | "assetFilters.regions.EASTERN_ASIA" | "assetFilters.regions.EASTERN_EUROPE" | "assetFilters.regions.label" | "assetFilters.regions.LATIN_AMERICA_AND_THE_CARIBBEAN" | "assetFilters.regions.MELANESIA" | "assetFilters.regions.MICRONESIA" | "assetFilters.regions.NORTHERN_AFRICA" | "assetFilters.regions.NORTHERN_AMERICA" | "assetFilters.regions.NORTHERN_EUROPE" | "assetFilters.regions.POLYNESIA" | "assetFilters.regions.SOUTH-EASTERN_ASIA" | "assetFilters.regions.SOUTHERN_ASIA" | "assetFilters.regions.SOUTHERN_EUROPE" | "assetFilters.regions.SUB-SAHARAN_AFRICA" | "assetFilters.regions.WESTERN_ASIA" | "assetFilters.regions.WESTERN_EUROPE" | "assetFilters.regions.WHOLE_WORLD" | "assetFilters.rentalCustomerNameFilter.label" | "assetFilters.searchFilter.label" | "assetFilters.searchPlaceholder" | "assetFilters.serviceAssignmentStatusFilter.label" | "assetFilters.servicePlanFilter.fullyConfigured" | "assetFilters.servicePlanFilter.label" | "assetFilters.servicePlanFilter.notConfigured" | "assetFilters.servicePlanFilter.partiallyConfigured" | "assetFilters.serviceProviderFilter.label" | "assetFilters.serviceProviderStatusFilter.hasServiceProvider" | "assetFilters.serviceProviderStatusFilter.noServiceProvider" | "assetFilters.serviceStatusFilter.COMPLETE" | "assetFilters.serviceStatusFilter.DRAFT" | "assetFilters.serviceStatusFilter.FULLY_CONFIGURED" | "assetFilters.serviceStatusFilter.HAS_PLAN" | "assetFilters.serviceStatusFilter.HAS_SERVICE_PROVIDER" | "assetFilters.serviceStatusFilter.label" | "assetFilters.serviceStatusFilter.MISSING_PLAN" | "assetFilters.serviceStatusFilter.MISSING_PROVIDER" | "assetFilters.serviceStatusFilter.overdue" | "assetFilters.serviceStatusFilter.OVERDUE" | "assetFilters.serviceStatusFilter.PLANNED" | "assetFilters.serviceStatusFilter.UNKNOWN" | "assetFilters.serviceStatusFilter.upcoming" | "assetFilters.serviceStatusFilter.UPCOMING" | "assetFilters.shareOwnerFilter.label" | "assetFilters.telematicsConnectedFilter.label" | "assetFilters.unknown" | "assetFilters.visibleToFilter.label" | "auditlog.filter.categories" | "auditlog.filter.component" | "auditlog.filter.components" | "auditlog.filter.events" | "auditlog.filter.users" | "filters.shared.recentSearches" | "filters.shared.remove" | "filters.shared.removeAll" | "filtersBar.closeFilter" | "filtersBar.defaultAssetFilters.followedFilter.ALL" | "filtersBar.defaultAssetFilters.followedFilter.allLabel" | "filtersBar.defaultAssetFilters.followedFilter.FOLLOWED" | "filtersBar.defaultAssetFilters.followedFilter.followedOnlyLabel" | "filtersBar.defaultAssetFilters.lastSeenFilter.ALL" | "filtersBar.defaultAssetFilters.lastSeenFilter.LAST_24_HOURS" | "filtersBar.defaultAssetFilters.lastSeenFilter.LAST_30_DAYS" | "filtersBar.defaultAssetFilters.lastSeenFilter.LAST_7_DAYS" | "filtersBar.defaultAssetFilters.lastSeenFilter.LAST_HOUR" | "filtersBar.defaultAssetFilters.lastSeenFilter.OLDER_THAN_30_DAYS" | "filtersBar.defaultAssetFilters.metadataGroup" | "filtersBar.defaultAssetFilters.othersGroup" | "filtersBar.defaultAssetFilters.sitesGroup" | "filtersBar.defaultAssetFilters.statusGroup" | "filtersBar.defaultAssetFilters.telematicsConnectedFilter.connected" | "filtersBar.defaultAssetFilters.telematicsConnectedFilter.notConnected" | "filtersBar.emptyResults" | "filtersBar.filtersHeading" | "filtersBar.loading" | "filtersBar.myNetworkGroup" | "filtersBar.resetFilter" | "filtersBar.resetFilters" | "filtersBar.starredFilters.title" | "filtersBar.starredFiltersTitle" | "fleetlist.column.activity" | "fleetlist.column.assetIds" | "fleetlist.column.assetType" | "fleetlist.column.attention" | "fleetlist.column.brand" | "fleetlist.column.city" | "fleetlist.column.country" | "fleetlist.column.customerIds" | "fleetlist.column.externalReference" | "fleetlist.column.groupIds" | "fleetlist.column.lastSeen" | "fleetlist.column.metadata" | "fleetlist.column.metadataCompleteness" | "fleetlist.column.model" | "fleetlist.column.name" | "fleetlist.column.owner" | "fleetlist.column.servicePlanStatus" | "fleetlist.column.siteIds" | "fleetlist.column.siteStatus" | "fleetlist.column.siteType" | "fleetlist.column.streetAddress" | "fleetlist.column.totalHours" | "fleetlist.column.type" | "fleetlist.column.unitSerialNumber" | "fleetlist.column.vin" | "fleetlist.column.year" | "fleetlist.column.zipCode" | "fleetlist.createGroup" | "fleetlist.description" | "fleetList.sorting.ACTIVITY" | "fleetList.sorting.ASSET_TYPE" | "fleetList.sorting.BRAND" | "fleetList.sorting.CATEGORY" | "fleetList.sorting.CRITICALITY" | "fleetList.sorting.EXTERNAL_REFERENCE" | "fleetList.sorting.LOCATION" | "fleetList.sorting.LOCATION_UPDATED_AT" | "fleetList.sorting.MODEL" | "fleetList.sorting.NAME" | "fleetList.sorting.OWNER_ACCOUNT_NAME" | "fleetList.sorting.PRODUCTION_YEAR" | "fleetList.sorting.SERIAL_NUMBER" | "fleetList.sorting.SERVICE_PLAN_ASSIGNMENT_STATUS" | "fleetList.sorting.SERVICE_PLAN_OVERDUENESS" | "fleetList.sorting.SERVICE_PLAN_STATUS" | "fleetList.sorting.TELEMATICS_DEVICE_SERIAL_NUMBER" | "fleetList.sorting.TYPE" | "fleetList.sortingCategories.metadata" | "fleetList.sortingCategories.other" | "fleetList.sortingCategories.status" | "machine.types.ALL" | "machine.types.Unknown" | "pages.machines.telematics.networkTechnology.NW_TECH_2G" | "pages.machines.telematics.networkTechnology.NW_TECH_3G" | "pages.machines.telematics.networkTechnology.NW_TECH_4G" | "pages.machines.telematics.networkTechnology.UNKNOWN" | "pages.machines.telematics.operationalStatus.digitalKeyMode.DISABLED" | "pages.machines.telematics.operationalStatus.digitalKeyMode.LOCKED_FOR_ALL" | "pages.machines.telematics.operationalStatus.digitalKeyMode.LOCKED_FOR_ALL_FIXED" | "pages.machines.telematics.operationalStatus.digitalKeyMode.name" | "pages.machines.telematics.operationalStatus.digitalKeyMode.NEVER_INITIALIZED" | "pages.machines.telematics.operationalStatus.digitalKeyMode.UNKNOWN" | "pages.machines.telematics.operationalStatus.digitalKeyMode.UNLOCKED_FOR_ALL" | "pages.machines.telematics.operationalStatus.digitalKeyMode.UNLOCKED_FOR_ALL_FIXED" | "pages.machines.telematics.operationalStatus.digitalKeyMode.UNLOCKED_FOR_KEY" | "pages.machines.telematics.operationalStatus.digitalKeyMode.UNLOCKED_FOR_KEY_AND_PIN" | "pages.machines.telematics.operationalStatus.digitalKeyMode.UNLOCKED_FOR_PIN" | "pages.machines.telematics.operationalStatus.digitalKeyMode.UNSUPPORTED" | "rental.status.available" | "rental.status.inRepair" | "rental.status.onRent" | "rental.status.other" | "rental.status.pickUpReady" | "rental.status.returned" | "rental.status.transfer" | "rental.status.unknown" | "siteFilters.siteStatus.ACTIVE" | "siteFilters.siteStatus.ARCHIVED" | "siteFilters.siteStatus.FINISHED" | "siteFilters.siteStatus.PLANNED" | "siteFilters.siteStatus.unknown" | "siteFilters.siteType.AREA" | "siteFilters.siteType.CLASSIC_POI" | "siteFilters.siteType.CLASSIC_ZONE" | "siteFilters.siteType.CONSTRUCTION_SITE" | "siteFilters.siteType.DEPOT" | "siteFilters.siteType.NOT_ON_SITE" | "siteFilters.siteType.unknown" | "siteFilters.siteType.WORK_PLACE">;
17
+ export declare const useTranslation: () => [TransForLibs<"access.management.filter.operator.role.keyAdmin" | "access.management.keys.filter.active" | "access.management.keys.filter.deleted" | "access.management.keys.filter.expired" | "access.management.keys.filter.future" | "access.management.operator.asset.filter.category" | "access.management.operator.asset.filter.keyType" | "access.management.operator.asset.filter.type.digitalKey" | "access.management.operator.asset.filter.type.rollingPin" | "access.management.operator.asset.filter.type.staticPin" | "access.management.operator.filter.category" | "access.management.operator.filter.keyStatus.title" | "access.management.operator.filter.operatorRole.keyAdmin.title" | "access.management.operator.filter.operatorRole.title" | "assetFilters.activeAssetFilter.label" | "assetFilters.activityFilter.idling" | "assetFilters.activityFilter.stopped" | "assetFilters.activityFilter.unknown" | "assetFilters.activityFilter.working" | "assetFilters.assetType.ATTACHMENT" | "assetFilters.assetType.EQUIPMENT" | "assetFilters.assetType.GATEWAY" | "assetFilters.assetType.MACHINE" | "assetFilters.assetType.OTHER" | "assetFilters.assetType.TOOL" | "assetFilters.assetType.VEHICLE" | "assetFilters.boundingBoxFilter.label" | "assetFilters.boundingBoxFilter.value" | "assetFilters.criticality.CRITICAL" | "assetFilters.criticality.LOW" | "assetFilters.criticality.NONE" | "assetFilters.followedFilter.label" | "assetFilters.hourIntervalFilter.label" | "assetFilters.lastSeenFilter.anytime" | "assetFilters.lastSeenFilter.last24Hours" | "assetFilters.lastSeenFilter.last30Days" | "assetFilters.lastSeenFilter.last7Days" | "assetFilters.lastSeenFilter.lastHour" | "assetFilters.lastSeenFilter.olderThan30Days" | "assetFilters.metadataCompleteness.ALL" | "assetFilters.metadataCompleteness.COMPLETE" | "assetFilters.metadataCompleteness.PARTIAL" | "assetFilters.ownerAccountNameFilter.label" | "assetFilters.partnerFilter.label" | "assetFilters.periodFilter.label" | "assetFilters.periodFilter.LAST_24_HOURS" | "assetFilters.periodFilter.LAST_30_DAYS" | "assetFilters.periodFilter.LAST_7_DAYS" | "assetFilters.periodFilter.LIFETIME" | "assetFilters.planned" | "assetFilters.productionYear.label" | "assetFilters.regions.ANTARCTICA" | "assetFilters.regions.AUSTRALIA_AND_NEW_ZEALAND" | "assetFilters.regions.CENTRAL_ASIA" | "assetFilters.regions.EASTERN_ASIA" | "assetFilters.regions.EASTERN_EUROPE" | "assetFilters.regions.label" | "assetFilters.regions.LATIN_AMERICA_AND_THE_CARIBBEAN" | "assetFilters.regions.MELANESIA" | "assetFilters.regions.MICRONESIA" | "assetFilters.regions.NORTHERN_AFRICA" | "assetFilters.regions.NORTHERN_AMERICA" | "assetFilters.regions.NORTHERN_EUROPE" | "assetFilters.regions.POLYNESIA" | "assetFilters.regions.SOUTH-EASTERN_ASIA" | "assetFilters.regions.SOUTHERN_ASIA" | "assetFilters.regions.SOUTHERN_EUROPE" | "assetFilters.regions.SUB-SAHARAN_AFRICA" | "assetFilters.regions.WESTERN_ASIA" | "assetFilters.regions.WESTERN_EUROPE" | "assetFilters.regions.WHOLE_WORLD" | "assetFilters.rentalCustomerNameFilter.label" | "assetFilters.searchFilter.label" | "assetFilters.searchPlaceholder" | "assetFilters.serviceAssignmentStatusFilter.label" | "assetFilters.servicePlanFilter.fullyConfigured" | "assetFilters.servicePlanFilter.label" | "assetFilters.servicePlanFilter.notConfigured" | "assetFilters.servicePlanFilter.partiallyConfigured" | "assetFilters.serviceProviderFilter.label" | "assetFilters.serviceProviderStatusFilter.hasServiceProvider" | "assetFilters.serviceProviderStatusFilter.noServiceProvider" | "assetFilters.serviceStatusFilter.COMPLETE" | "assetFilters.serviceStatusFilter.DRAFT" | "assetFilters.serviceStatusFilter.FULLY_CONFIGURED" | "assetFilters.serviceStatusFilter.HAS_PLAN" | "assetFilters.serviceStatusFilter.HAS_SERVICE_PROVIDER" | "assetFilters.serviceStatusFilter.label" | "assetFilters.serviceStatusFilter.MISSING_PLAN" | "assetFilters.serviceStatusFilter.MISSING_PROVIDER" | "assetFilters.serviceStatusFilter.overdue" | "assetFilters.serviceStatusFilter.OVERDUE" | "assetFilters.serviceStatusFilter.PLANNED" | "assetFilters.serviceStatusFilter.UNKNOWN" | "assetFilters.serviceStatusFilter.upcoming" | "assetFilters.serviceStatusFilter.UPCOMING" | "assetFilters.shareOwnerFilter.label" | "assetFilters.telematicsConnectedFilter.label" | "assetFilters.unknown" | "assetFilters.visibleToFilter.label" | "auditlog.filter.categories" | "auditlog.filter.component" | "auditlog.filter.components" | "auditlog.filter.events" | "auditlog.filter.users" | "filters.shared.clear" | "filters.shared.clearAll" | "filters.shared.recentSearches" | "filtersBar.closeFilter" | "filtersBar.defaultAssetFilters.activeAssetFilter.hide" | "filtersBar.defaultAssetFilters.activeAssetFilter.show" | "filtersBar.defaultAssetFilters.followedFilter.ALL" | "filtersBar.defaultAssetFilters.followedFilter.allLabel" | "filtersBar.defaultAssetFilters.followedFilter.FOLLOWED" | "filtersBar.defaultAssetFilters.followedFilter.followedOnlyLabel" | "filtersBar.defaultAssetFilters.lastSeenFilter.ALL" | "filtersBar.defaultAssetFilters.lastSeenFilter.LAST_24_HOURS" | "filtersBar.defaultAssetFilters.lastSeenFilter.LAST_30_DAYS" | "filtersBar.defaultAssetFilters.lastSeenFilter.LAST_7_DAYS" | "filtersBar.defaultAssetFilters.lastSeenFilter.LAST_HOUR" | "filtersBar.defaultAssetFilters.lastSeenFilter.OLDER_THAN_30_DAYS" | "filtersBar.defaultAssetFilters.metadataGroup" | "filtersBar.defaultAssetFilters.othersGroup" | "filtersBar.defaultAssetFilters.sitesGroup" | "filtersBar.defaultAssetFilters.statusGroup" | "filtersBar.defaultAssetFilters.telematicsConnectedFilter.connected" | "filtersBar.defaultAssetFilters.telematicsConnectedFilter.notConnected" | "filtersBar.emptyResults" | "filtersBar.filtersHeading" | "filtersBar.loading" | "filtersBar.myNetworkGroup" | "filtersBar.resetFilter" | "filtersBar.resetFilters" | "filtersBar.starredFilters.title" | "filtersBar.starredFiltersTitle" | "fleetlist.column.activity" | "fleetlist.column.assetIds" | "fleetlist.column.assetType" | "fleetlist.column.attention" | "fleetlist.column.brand" | "fleetlist.column.city" | "fleetlist.column.country" | "fleetlist.column.customerIds" | "fleetlist.column.externalReference" | "fleetlist.column.groupIds" | "fleetlist.column.lastSeen" | "fleetlist.column.metadata" | "fleetlist.column.metadataCompleteness" | "fleetlist.column.model" | "fleetlist.column.name" | "fleetlist.column.owner" | "fleetlist.column.servicePlanStatus" | "fleetlist.column.siteIds" | "fleetlist.column.siteStatus" | "fleetlist.column.siteType" | "fleetlist.column.streetAddress" | "fleetlist.column.totalHours" | "fleetlist.column.type" | "fleetlist.column.unitSerialNumber" | "fleetlist.column.vin" | "fleetlist.column.year" | "fleetlist.column.zipCode" | "fleetlist.createGroup" | "fleetlist.description" | "fleetList.sorting.ACTIVITY" | "fleetList.sorting.ASSET_TYPE" | "fleetList.sorting.BRAND" | "fleetList.sorting.CATEGORY" | "fleetList.sorting.CRITICALITY" | "fleetList.sorting.EXTERNAL_REFERENCE" | "fleetList.sorting.LOCATION" | "fleetList.sorting.LOCATION_UPDATED_AT" | "fleetList.sorting.MODEL" | "fleetList.sorting.NAME" | "fleetList.sorting.OWNER_ACCOUNT_NAME" | "fleetList.sorting.PRODUCTION_YEAR" | "fleetList.sorting.SERIAL_NUMBER" | "fleetList.sorting.SERVICE_PLAN_ASSIGNMENT_STATUS" | "fleetList.sorting.SERVICE_PLAN_OVERDUENESS" | "fleetList.sorting.SERVICE_PLAN_STATUS" | "fleetList.sorting.TELEMATICS_DEVICE_SERIAL_NUMBER" | "fleetList.sorting.TYPE" | "fleetList.sortingCategories.metadata" | "fleetList.sortingCategories.other" | "fleetList.sortingCategories.status" | "machine.types.ALL" | "machine.types.Unknown" | "pages.machines.telematics.networkTechnology.NW_TECH_2G" | "pages.machines.telematics.networkTechnology.NW_TECH_3G" | "pages.machines.telematics.networkTechnology.NW_TECH_4G" | "pages.machines.telematics.networkTechnology.UNKNOWN" | "pages.machines.telematics.operationalStatus.digitalKeyMode.DISABLED" | "pages.machines.telematics.operationalStatus.digitalKeyMode.LOCKED_FOR_ALL" | "pages.machines.telematics.operationalStatus.digitalKeyMode.LOCKED_FOR_ALL_FIXED" | "pages.machines.telematics.operationalStatus.digitalKeyMode.name" | "pages.machines.telematics.operationalStatus.digitalKeyMode.NEVER_INITIALIZED" | "pages.machines.telematics.operationalStatus.digitalKeyMode.UNKNOWN" | "pages.machines.telematics.operationalStatus.digitalKeyMode.UNLOCKED_FOR_ALL" | "pages.machines.telematics.operationalStatus.digitalKeyMode.UNLOCKED_FOR_ALL_FIXED" | "pages.machines.telematics.operationalStatus.digitalKeyMode.UNLOCKED_FOR_KEY" | "pages.machines.telematics.operationalStatus.digitalKeyMode.UNLOCKED_FOR_KEY_AND_PIN" | "pages.machines.telematics.operationalStatus.digitalKeyMode.UNLOCKED_FOR_PIN" | "pages.machines.telematics.operationalStatus.digitalKeyMode.UNSUPPORTED" | "rental.status.available" | "rental.status.inRepair" | "rental.status.onRent" | "rental.status.other" | "rental.status.pickUpReady" | "rental.status.returned" | "rental.status.transfer" | "rental.status.unknown" | "siteFilters.siteStatus.ACTIVE" | "siteFilters.siteStatus.ARCHIVED" | "siteFilters.siteStatus.FINISHED" | "siteFilters.siteStatus.PLANNED" | "siteFilters.siteStatus.unknown" | "siteFilters.siteType.AREA" | "siteFilters.siteType.CLASSIC_POI" | "siteFilters.siteType.CLASSIC_ZONE" | "siteFilters.siteType.CONSTRUCTION_SITE" | "siteFilters.siteType.DEPOT" | "siteFilters.siteType.NOT_ON_SITE" | "siteFilters.siteType.unknown" | "siteFilters.siteType.WORK_PLACE">, import("i18next").i18n, boolean] & {
18
+ t: TransForLibs<"access.management.filter.operator.role.keyAdmin" | "access.management.keys.filter.active" | "access.management.keys.filter.deleted" | "access.management.keys.filter.expired" | "access.management.keys.filter.future" | "access.management.operator.asset.filter.category" | "access.management.operator.asset.filter.keyType" | "access.management.operator.asset.filter.type.digitalKey" | "access.management.operator.asset.filter.type.rollingPin" | "access.management.operator.asset.filter.type.staticPin" | "access.management.operator.filter.category" | "access.management.operator.filter.keyStatus.title" | "access.management.operator.filter.operatorRole.keyAdmin.title" | "access.management.operator.filter.operatorRole.title" | "assetFilters.activeAssetFilter.label" | "assetFilters.activityFilter.idling" | "assetFilters.activityFilter.stopped" | "assetFilters.activityFilter.unknown" | "assetFilters.activityFilter.working" | "assetFilters.assetType.ATTACHMENT" | "assetFilters.assetType.EQUIPMENT" | "assetFilters.assetType.GATEWAY" | "assetFilters.assetType.MACHINE" | "assetFilters.assetType.OTHER" | "assetFilters.assetType.TOOL" | "assetFilters.assetType.VEHICLE" | "assetFilters.boundingBoxFilter.label" | "assetFilters.boundingBoxFilter.value" | "assetFilters.criticality.CRITICAL" | "assetFilters.criticality.LOW" | "assetFilters.criticality.NONE" | "assetFilters.followedFilter.label" | "assetFilters.hourIntervalFilter.label" | "assetFilters.lastSeenFilter.anytime" | "assetFilters.lastSeenFilter.last24Hours" | "assetFilters.lastSeenFilter.last30Days" | "assetFilters.lastSeenFilter.last7Days" | "assetFilters.lastSeenFilter.lastHour" | "assetFilters.lastSeenFilter.olderThan30Days" | "assetFilters.metadataCompleteness.ALL" | "assetFilters.metadataCompleteness.COMPLETE" | "assetFilters.metadataCompleteness.PARTIAL" | "assetFilters.ownerAccountNameFilter.label" | "assetFilters.partnerFilter.label" | "assetFilters.periodFilter.label" | "assetFilters.periodFilter.LAST_24_HOURS" | "assetFilters.periodFilter.LAST_30_DAYS" | "assetFilters.periodFilter.LAST_7_DAYS" | "assetFilters.periodFilter.LIFETIME" | "assetFilters.planned" | "assetFilters.productionYear.label" | "assetFilters.regions.ANTARCTICA" | "assetFilters.regions.AUSTRALIA_AND_NEW_ZEALAND" | "assetFilters.regions.CENTRAL_ASIA" | "assetFilters.regions.EASTERN_ASIA" | "assetFilters.regions.EASTERN_EUROPE" | "assetFilters.regions.label" | "assetFilters.regions.LATIN_AMERICA_AND_THE_CARIBBEAN" | "assetFilters.regions.MELANESIA" | "assetFilters.regions.MICRONESIA" | "assetFilters.regions.NORTHERN_AFRICA" | "assetFilters.regions.NORTHERN_AMERICA" | "assetFilters.regions.NORTHERN_EUROPE" | "assetFilters.regions.POLYNESIA" | "assetFilters.regions.SOUTH-EASTERN_ASIA" | "assetFilters.regions.SOUTHERN_ASIA" | "assetFilters.regions.SOUTHERN_EUROPE" | "assetFilters.regions.SUB-SAHARAN_AFRICA" | "assetFilters.regions.WESTERN_ASIA" | "assetFilters.regions.WESTERN_EUROPE" | "assetFilters.regions.WHOLE_WORLD" | "assetFilters.rentalCustomerNameFilter.label" | "assetFilters.searchFilter.label" | "assetFilters.searchPlaceholder" | "assetFilters.serviceAssignmentStatusFilter.label" | "assetFilters.servicePlanFilter.fullyConfigured" | "assetFilters.servicePlanFilter.label" | "assetFilters.servicePlanFilter.notConfigured" | "assetFilters.servicePlanFilter.partiallyConfigured" | "assetFilters.serviceProviderFilter.label" | "assetFilters.serviceProviderStatusFilter.hasServiceProvider" | "assetFilters.serviceProviderStatusFilter.noServiceProvider" | "assetFilters.serviceStatusFilter.COMPLETE" | "assetFilters.serviceStatusFilter.DRAFT" | "assetFilters.serviceStatusFilter.FULLY_CONFIGURED" | "assetFilters.serviceStatusFilter.HAS_PLAN" | "assetFilters.serviceStatusFilter.HAS_SERVICE_PROVIDER" | "assetFilters.serviceStatusFilter.label" | "assetFilters.serviceStatusFilter.MISSING_PLAN" | "assetFilters.serviceStatusFilter.MISSING_PROVIDER" | "assetFilters.serviceStatusFilter.overdue" | "assetFilters.serviceStatusFilter.OVERDUE" | "assetFilters.serviceStatusFilter.PLANNED" | "assetFilters.serviceStatusFilter.UNKNOWN" | "assetFilters.serviceStatusFilter.upcoming" | "assetFilters.serviceStatusFilter.UPCOMING" | "assetFilters.shareOwnerFilter.label" | "assetFilters.telematicsConnectedFilter.label" | "assetFilters.unknown" | "assetFilters.visibleToFilter.label" | "auditlog.filter.categories" | "auditlog.filter.component" | "auditlog.filter.components" | "auditlog.filter.events" | "auditlog.filter.users" | "filters.shared.clear" | "filters.shared.clearAll" | "filters.shared.recentSearches" | "filtersBar.closeFilter" | "filtersBar.defaultAssetFilters.activeAssetFilter.hide" | "filtersBar.defaultAssetFilters.activeAssetFilter.show" | "filtersBar.defaultAssetFilters.followedFilter.ALL" | "filtersBar.defaultAssetFilters.followedFilter.allLabel" | "filtersBar.defaultAssetFilters.followedFilter.FOLLOWED" | "filtersBar.defaultAssetFilters.followedFilter.followedOnlyLabel" | "filtersBar.defaultAssetFilters.lastSeenFilter.ALL" | "filtersBar.defaultAssetFilters.lastSeenFilter.LAST_24_HOURS" | "filtersBar.defaultAssetFilters.lastSeenFilter.LAST_30_DAYS" | "filtersBar.defaultAssetFilters.lastSeenFilter.LAST_7_DAYS" | "filtersBar.defaultAssetFilters.lastSeenFilter.LAST_HOUR" | "filtersBar.defaultAssetFilters.lastSeenFilter.OLDER_THAN_30_DAYS" | "filtersBar.defaultAssetFilters.metadataGroup" | "filtersBar.defaultAssetFilters.othersGroup" | "filtersBar.defaultAssetFilters.sitesGroup" | "filtersBar.defaultAssetFilters.statusGroup" | "filtersBar.defaultAssetFilters.telematicsConnectedFilter.connected" | "filtersBar.defaultAssetFilters.telematicsConnectedFilter.notConnected" | "filtersBar.emptyResults" | "filtersBar.filtersHeading" | "filtersBar.loading" | "filtersBar.myNetworkGroup" | "filtersBar.resetFilter" | "filtersBar.resetFilters" | "filtersBar.starredFilters.title" | "filtersBar.starredFiltersTitle" | "fleetlist.column.activity" | "fleetlist.column.assetIds" | "fleetlist.column.assetType" | "fleetlist.column.attention" | "fleetlist.column.brand" | "fleetlist.column.city" | "fleetlist.column.country" | "fleetlist.column.customerIds" | "fleetlist.column.externalReference" | "fleetlist.column.groupIds" | "fleetlist.column.lastSeen" | "fleetlist.column.metadata" | "fleetlist.column.metadataCompleteness" | "fleetlist.column.model" | "fleetlist.column.name" | "fleetlist.column.owner" | "fleetlist.column.servicePlanStatus" | "fleetlist.column.siteIds" | "fleetlist.column.siteStatus" | "fleetlist.column.siteType" | "fleetlist.column.streetAddress" | "fleetlist.column.totalHours" | "fleetlist.column.type" | "fleetlist.column.unitSerialNumber" | "fleetlist.column.vin" | "fleetlist.column.year" | "fleetlist.column.zipCode" | "fleetlist.createGroup" | "fleetlist.description" | "fleetList.sorting.ACTIVITY" | "fleetList.sorting.ASSET_TYPE" | "fleetList.sorting.BRAND" | "fleetList.sorting.CATEGORY" | "fleetList.sorting.CRITICALITY" | "fleetList.sorting.EXTERNAL_REFERENCE" | "fleetList.sorting.LOCATION" | "fleetList.sorting.LOCATION_UPDATED_AT" | "fleetList.sorting.MODEL" | "fleetList.sorting.NAME" | "fleetList.sorting.OWNER_ACCOUNT_NAME" | "fleetList.sorting.PRODUCTION_YEAR" | "fleetList.sorting.SERIAL_NUMBER" | "fleetList.sorting.SERVICE_PLAN_ASSIGNMENT_STATUS" | "fleetList.sorting.SERVICE_PLAN_OVERDUENESS" | "fleetList.sorting.SERVICE_PLAN_STATUS" | "fleetList.sorting.TELEMATICS_DEVICE_SERIAL_NUMBER" | "fleetList.sorting.TYPE" | "fleetList.sortingCategories.metadata" | "fleetList.sortingCategories.other" | "fleetList.sortingCategories.status" | "machine.types.ALL" | "machine.types.Unknown" | "pages.machines.telematics.networkTechnology.NW_TECH_2G" | "pages.machines.telematics.networkTechnology.NW_TECH_3G" | "pages.machines.telematics.networkTechnology.NW_TECH_4G" | "pages.machines.telematics.networkTechnology.UNKNOWN" | "pages.machines.telematics.operationalStatus.digitalKeyMode.DISABLED" | "pages.machines.telematics.operationalStatus.digitalKeyMode.LOCKED_FOR_ALL" | "pages.machines.telematics.operationalStatus.digitalKeyMode.LOCKED_FOR_ALL_FIXED" | "pages.machines.telematics.operationalStatus.digitalKeyMode.name" | "pages.machines.telematics.operationalStatus.digitalKeyMode.NEVER_INITIALIZED" | "pages.machines.telematics.operationalStatus.digitalKeyMode.UNKNOWN" | "pages.machines.telematics.operationalStatus.digitalKeyMode.UNLOCKED_FOR_ALL" | "pages.machines.telematics.operationalStatus.digitalKeyMode.UNLOCKED_FOR_ALL_FIXED" | "pages.machines.telematics.operationalStatus.digitalKeyMode.UNLOCKED_FOR_KEY" | "pages.machines.telematics.operationalStatus.digitalKeyMode.UNLOCKED_FOR_KEY_AND_PIN" | "pages.machines.telematics.operationalStatus.digitalKeyMode.UNLOCKED_FOR_PIN" | "pages.machines.telematics.operationalStatus.digitalKeyMode.UNSUPPORTED" | "rental.status.available" | "rental.status.inRepair" | "rental.status.onRent" | "rental.status.other" | "rental.status.pickUpReady" | "rental.status.returned" | "rental.status.transfer" | "rental.status.unknown" | "siteFilters.siteStatus.ACTIVE" | "siteFilters.siteStatus.ARCHIVED" | "siteFilters.siteStatus.FINISHED" | "siteFilters.siteStatus.PLANNED" | "siteFilters.siteStatus.unknown" | "siteFilters.siteType.AREA" | "siteFilters.siteType.CLASSIC_POI" | "siteFilters.siteType.CLASSIC_ZONE" | "siteFilters.siteType.CONSTRUCTION_SITE" | "siteFilters.siteType.DEPOT" | "siteFilters.siteType.NOT_ON_SITE" | "siteFilters.siteType.unknown" | "siteFilters.siteType.WORK_PLACE">;
19
19
  i18n: import("i18next").i18n;
20
20
  ready: boolean;
21
21
  };
@@ -1,4 +0,0 @@
1
- import { BaseEvent } from "@trackunit/react-core-contexts-api";
2
- export declare const FilterEvents: {
3
- "Filters Applied - V2": import("@trackunit/react-core-contexts-api").Event<BaseEvent>;
4
- };