@gooddata/sdk-ui-kit 10.30.0-alpha.11 → 10.30.0-alpha.13
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/esm/@ui/UiPagedVirtualList/UiPagedVirtualList.d.ts +12 -0
- package/esm/@ui/UiPagedVirtualList/UiPagedVirtualList.d.ts.map +1 -1
- package/esm/@ui/UiPagedVirtualList/UiPagedVirtualList.js +24 -1
- package/esm/@ui/UiPagedVirtualList/UiPagedVirtualList.js.map +1 -1
- package/esm/@ui/hooks/useListWithActionsKeyboardNavigation.d.ts +3 -2
- package/esm/@ui/hooks/useListWithActionsKeyboardNavigation.d.ts.map +1 -1
- package/esm/@ui/hooks/useListWithActionsKeyboardNavigation.js +9 -4
- package/esm/@ui/hooks/useListWithActionsKeyboardNavigation.js.map +1 -1
- package/esm/List/AsyncList.js +1 -1
- package/esm/List/InvertableSelect/InvertableSelect.js +1 -1
- package/esm/List/InvertableSelect/InvertableSelectAllCheckbox.d.ts +2 -0
- package/esm/List/InvertableSelect/InvertableSelectAllCheckbox.d.ts.map +1 -1
- package/esm/List/InvertableSelect/InvertableSelectAllCheckbox.js +6 -3
- package/esm/List/InvertableSelect/InvertableSelectAllCheckbox.js.map +1 -1
- package/esm/List/InvertableSelect/InvertableSelectVirtualised.d.ts +91 -0
- package/esm/List/InvertableSelect/InvertableSelectVirtualised.d.ts.map +1 -0
- package/esm/List/InvertableSelect/InvertableSelectVirtualised.js +168 -0
- package/esm/List/InvertableSelect/InvertableSelectVirtualised.js.map +1 -0
- package/esm/List/InvertableSelect/index.d.ts +2 -0
- package/esm/List/InvertableSelect/index.d.ts.map +1 -1
- package/esm/List/InvertableSelect/index.js +1 -0
- package/esm/List/InvertableSelect/index.js.map +1 -1
- package/esm/List/List.js +1 -1
- package/esm/List/List.js.map +1 -1
- package/esm/List/index.d.ts +2 -2
- package/esm/List/index.d.ts.map +1 -1
- package/esm/List/index.js +1 -1
- package/esm/List/index.js.map +1 -1
- package/esm/sdk-ui-kit.d.ts +109 -2
- package/package.json +8 -8
@@ -18,6 +18,18 @@ export interface UiPagedVirtualListProps<T> {
|
|
18
18
|
hasNextPage?: boolean;
|
19
19
|
loadNextPage?: () => void;
|
20
20
|
isLoading?: boolean;
|
21
|
+
/**
|
22
|
+
* An item in the list that should be scrolled into view when the component renders.
|
23
|
+
* By default, items are compared by object identity (i.e., `===`).
|
24
|
+
* To customize how the target item is found (e.g., by ID), provide a `scrollToItemKeyExtractor` as well.
|
25
|
+
*/
|
26
|
+
scrollToItem?: T;
|
27
|
+
/**
|
28
|
+
* A function that extracts a unique key from each item for comparison with `scrollToItem`.
|
29
|
+
* This is useful when the provided `scrollToItem` may not be the same object reference as items in the list.
|
30
|
+
* If not provided, object identity (`===`) is used for comparison.
|
31
|
+
*/
|
32
|
+
scrollToItemKeyExtractor?: (item: T) => string | number;
|
21
33
|
children: (item: T) => React.ReactNode;
|
22
34
|
SkeletonItem?: React.ComponentType<UiPagedVirtualListSkeletonItemProps>;
|
23
35
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"UiPagedVirtualList.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiPagedVirtualList/UiPagedVirtualList.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAoB,MAAM,OAAO,CAAC;AAOzC;;GAEG;AACH,MAAM,WAAW,mCAAmC;IAChD,UAAU,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB,CAAC,CAAC;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,KAAK,CAAC,SAAS,CAAC;IACvC,YAAY,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,mCAAmC,CAAC,CAAC;CAC3E;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,KAAK,EAAE,uBAAuB,CAAC,CAAC,CAAC,qBAmDtE"}
|
1
|
+
{"version":3,"file":"UiPagedVirtualList.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiPagedVirtualList/UiPagedVirtualList.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAoB,MAAM,OAAO,CAAC;AAOzC;;GAEG;AACH,MAAM,WAAW,mCAAmC;IAChD,UAAU,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB,CAAC,CAAC;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;OAIG;IACH,YAAY,CAAC,EAAE,CAAC,CAAC;IACjB;;;;OAIG;IACH,wBAAwB,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,GAAG,MAAM,CAAC;IACxD,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,KAAK,CAAC,SAAS,CAAC;IACvC,YAAY,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,mCAAmC,CAAC,CAAC;CAC3E;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,KAAK,EAAE,uBAAuB,CAAC,CAAC,CAAC,qBAmDtE"}
|
@@ -34,7 +34,7 @@ export function UiPagedVirtualList(props) {
|
|
34
34
|
})))));
|
35
35
|
}
|
36
36
|
function useVirtualList(props) {
|
37
|
-
const { items, itemHeight, itemsGap, skeletonItemsCount, hasNextPage, loadNextPage, isLoading, maxHeight, } = props;
|
37
|
+
const { items, itemHeight, itemsGap, skeletonItemsCount, hasNextPage, loadNextPage, isLoading, maxHeight, scrollToItem, scrollToItemKeyExtractor, } = props;
|
38
38
|
const scrollContainerRef = React.useRef(null);
|
39
39
|
const itemsCount = items ? items.length : 0;
|
40
40
|
let renderItemsCount = itemsCount;
|
@@ -69,6 +69,29 @@ function useVirtualList(props) {
|
|
69
69
|
loadNextPage?.();
|
70
70
|
}
|
71
71
|
}, [hasNextPage, loadNextPage, itemsCount, isLoading, virtualItems, skeletonItemsCount]);
|
72
|
+
// Add scroll into view effect
|
73
|
+
useEffect(() => {
|
74
|
+
if (!scrollToItem || !items || items.length === 0) {
|
75
|
+
return;
|
76
|
+
}
|
77
|
+
const findItemIndex = () => {
|
78
|
+
if (scrollToItemKeyExtractor) {
|
79
|
+
const targetKey = scrollToItemKeyExtractor(scrollToItem);
|
80
|
+
return items.findIndex((item) => scrollToItemKeyExtractor(item) === targetKey);
|
81
|
+
}
|
82
|
+
else {
|
83
|
+
return items.findIndex((item) => item === scrollToItem);
|
84
|
+
}
|
85
|
+
};
|
86
|
+
const index = findItemIndex();
|
87
|
+
if (index === -1) {
|
88
|
+
return;
|
89
|
+
}
|
90
|
+
rowVirtualizer.scrollToIndex(index, {
|
91
|
+
align: "center",
|
92
|
+
behavior: "smooth",
|
93
|
+
});
|
94
|
+
}, [scrollToItem, items, rowVirtualizer, itemHeight, itemsGap, scrollToItemKeyExtractor]);
|
72
95
|
return {
|
73
96
|
itemsCount,
|
74
97
|
scrollContainerRef,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"UiPagedVirtualList.js","sourceRoot":"","sources":["../../../src/@ui/UiPagedVirtualList/UiPagedVirtualList.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AAErC,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AAEvC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,8BAA8B,CAAC,CAAC;
|
1
|
+
{"version":3,"file":"UiPagedVirtualList.js","sourceRoot":"","sources":["../../../src/@ui/UiPagedVirtualList/UiPagedVirtualList.tsx"],"names":[],"mappings":"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"}
|
@@ -6,13 +6,14 @@ export declare const SELECT_ITEM_ACTION = "selectItem";
|
|
6
6
|
/**
|
7
7
|
* @internal
|
8
8
|
*/
|
9
|
-
export declare function useListWithActionsKeyboardNavigation<Item, Action extends string>({ items, actionHandlers, getItemAdditionalActions, isNestedList, }: {
|
9
|
+
export declare function useListWithActionsKeyboardNavigation<Item, Action extends string>({ items, actionHandlers, getItemAdditionalActions, isNestedList, focusedIndex: focusedIndexProp, }: {
|
10
10
|
items: Item[];
|
11
11
|
actionHandlers: {
|
12
|
-
[key in Action | typeof SELECT_ITEM_ACTION]: (item: Item) => (() => void) | undefined;
|
12
|
+
[key in Action | typeof SELECT_ITEM_ACTION]: (item: Item, e?: React.KeyboardEvent) => (() => void) | undefined;
|
13
13
|
};
|
14
14
|
getItemAdditionalActions: (item: Item) => Action[];
|
15
15
|
isNestedList?: boolean;
|
16
|
+
focusedIndex?: number;
|
16
17
|
}): {
|
17
18
|
onKeyboardNavigation: (event: React.KeyboardEvent<Element>) => void;
|
18
19
|
onBlur: React.FocusEventHandler<Element>;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"useListWithActionsKeyboardNavigation.d.ts","sourceRoot":"","sources":["../../../src/@ui/hooks/useListWithActionsKeyboardNavigation.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B;;GAEG;AACH,eAAO,MAAM,kBAAkB,eAAe,CAAC;
|
1
|
+
{"version":3,"file":"useListWithActionsKeyboardNavigation.d.ts","sourceRoot":"","sources":["../../../src/@ui/hooks/useListWithActionsKeyboardNavigation.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B;;GAEG;AACH,eAAO,MAAM,kBAAkB,eAAe,CAAC;AAiB/C;;GAEG;AACH,wBAAgB,oCAAoC,CAAC,IAAI,EAAE,MAAM,SAAS,MAAM,EAAE,EAC9E,KAAK,EACL,cAAc,EACd,wBAAwB,EACxB,YAAoB,EACpB,YAAY,EAAE,gBAAgB,GACjC,EAAE;IACC,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,cAAc,EAAE;SACX,GAAG,IAAI,MAAM,GAAG,OAAO,kBAAkB,GAAG,CACzC,IAAI,EAAE,IAAI,EACV,CAAC,CAAC,EAAE,KAAK,CAAC,aAAa,KACtB,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS;KAChC,CAAC;IACF,wBAAwB,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,MAAM,EAAE,CAAC;IACnD,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;;;;;;EA6DA"}
|
@@ -9,10 +9,15 @@ export const SELECT_ITEM_ACTION = "selectItem";
|
|
9
9
|
/**
|
10
10
|
* @internal
|
11
11
|
*/
|
12
|
-
export function useListWithActionsKeyboardNavigation({ items, actionHandlers, getItemAdditionalActions, isNestedList = false, }) {
|
13
|
-
const [focusedIndex, setFocusedIndex] = React.useState(0);
|
12
|
+
export function useListWithActionsKeyboardNavigation({ items, actionHandlers, getItemAdditionalActions, isNestedList = false, focusedIndex: focusedIndexProp, }) {
|
13
|
+
const [focusedIndex, setFocusedIndex] = React.useState(focusedIndexProp ?? 0);
|
14
14
|
const focusedItem = focusedIndex === undefined ? undefined : items[focusedIndex];
|
15
15
|
const [focusedAction, setFocusedAction] = React.useState(SELECT_ITEM_ACTION);
|
16
|
+
React.useEffect(() => {
|
17
|
+
if (focusedIndexProp !== undefined) {
|
18
|
+
setFocusedIndex(focusedIndexProp);
|
19
|
+
}
|
20
|
+
}, [focusedIndexProp]);
|
16
21
|
const focusedItemAdditionalActions = React.useMemo(() => (focusedItem ? getItemAdditionalActions(focusedItem) : []), [focusedItem, getItemAdditionalActions]);
|
17
22
|
// If the items change and we're suddenly focusing on a nonexistent item
|
18
23
|
if (focusedIndex && focusedIndex > items.length - 1) {
|
@@ -70,12 +75,12 @@ function makeItemSelectionNavigation(depsRef) {
|
|
70
75
|
const { items, setFocusedIndex } = depsRef.current;
|
71
76
|
setFocusedIndex(items.length - 1);
|
72
77
|
},
|
73
|
-
onSelect: () => {
|
78
|
+
onSelect: (e) => {
|
74
79
|
const { actionHandlers, focusedItem } = depsRef.current;
|
75
80
|
if (!focusedItem) {
|
76
81
|
return;
|
77
82
|
}
|
78
|
-
actionHandlers.selectItem(focusedItem)?.();
|
83
|
+
actionHandlers.selectItem(focusedItem, e)?.();
|
79
84
|
},
|
80
85
|
onEnterLevel: () => {
|
81
86
|
const { focusedItemAdditionalActions, setFocusedAction } = depsRef.current;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"useListWithActionsKeyboardNavigation.js","sourceRoot":"","sources":["../../../src/@ui/hooks/useListWithActionsKeyboardNavigation.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,4BAA4B,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAE3G;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,YAAY,CAAC;
|
1
|
+
{"version":3,"file":"useListWithActionsKeyboardNavigation.js","sourceRoot":"","sources":["../../../src/@ui/hooks/useListWithActionsKeyboardNavigation.ts"],"names":[],"mappings":"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"}
|
package/esm/List/AsyncList.js
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"InvertableSelectAllCheckbox.d.ts","sourceRoot":"","sources":["../../../src/List/InvertableSelect/InvertableSelectAllCheckbox.tsx"],"names":[],"mappings":"AACA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAKnD;;GAEG;AACH,MAAM,WAAW,iCAAiC;IAC9C,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACnC,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,SAAS,EAAE,OAAO,CAAC;
|
1
|
+
{"version":3,"file":"InvertableSelectAllCheckbox.d.ts","sourceRoot":"","sources":["../../../src/List/InvertableSelect/InvertableSelectAllCheckbox.tsx"],"names":[],"mappings":"AACA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAKnD;;GAEG;AACH,MAAM,WAAW,iCAAiC;IAC9C,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACnC,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,SAAS,EAAE,OAAO,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;IAChC,eAAe,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,iCAAiC,qBAiFnF"}
|
@@ -2,12 +2,12 @@
|
|
2
2
|
import React, { useCallback, useRef } from "react";
|
3
3
|
import cx from "classnames";
|
4
4
|
import { useIntl } from "react-intl";
|
5
|
-
import { isSpaceKey } from "../../utils/events.js";
|
5
|
+
import { isEnterKey, isSpaceKey } from "../../utils/events.js";
|
6
6
|
/**
|
7
7
|
* @internal
|
8
8
|
*/
|
9
9
|
export function InvertableSelectAllCheckbox(props) {
|
10
|
-
const { isVisible, checked, onToggle, isFiltered, totalItemsCount, isPartialSelection } = props;
|
10
|
+
const { isVisible, checked, onToggle, onApplyButtonClick, isApplyDisabled, isFiltered, totalItemsCount, isPartialSelection, } = props;
|
11
11
|
const intl = useIntl();
|
12
12
|
const itemRef = useRef(null);
|
13
13
|
const handleToggle = useCallback((_e) => {
|
@@ -21,10 +21,13 @@ export function InvertableSelectAllCheckbox(props) {
|
|
21
21
|
}
|
22
22
|
};
|
23
23
|
const onKeyDown = (event) => {
|
24
|
+
event.preventDefault(); // Prevent scrolling
|
24
25
|
if (isSpaceKey(event)) {
|
25
|
-
event.preventDefault(); // Prevent scrolling on Space
|
26
26
|
onToggle();
|
27
27
|
}
|
28
|
+
if (isEnterKey(event) && !isApplyDisabled) {
|
29
|
+
onApplyButtonClick();
|
30
|
+
}
|
28
31
|
};
|
29
32
|
const checkboxClasses = cx("input-checkbox", "gd-checkbox-selection", {
|
30
33
|
"checkbox-indefinite": isPartialSelection,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"InvertableSelectAllCheckbox.js","sourceRoot":"","sources":["../../../src/List/InvertableSelect/InvertableSelectAllCheckbox.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;
|
1
|
+
{"version":3,"file":"InvertableSelectAllCheckbox.js","sourceRoot":"","sources":["../../../src/List/InvertableSelect/InvertableSelectAllCheckbox.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAiB/D;;GAEG;AACH,MAAM,UAAU,2BAA2B,CAAC,KAAwC;IAChF,MAAM,EACF,SAAS,EACT,OAAO,EACP,QAAQ,EACR,kBAAkB,EAClB,eAAe,EACf,UAAU,EACV,eAAe,EACf,kBAAkB,GACrB,GAAG,KAAK,CAAC;IAEV,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IACvB,MAAM,OAAO,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAE7C,MAAM,YAAY,GAAG,WAAW,CAC5B,CAAC,EAAuC,EAAE,EAAE;QACxC,QAAQ,EAAE,CAAC;IACf,CAAC,EACD,CAAC,QAAQ,CAAC,CACb,CAAC;IAEF,MAAM,OAAO,GAAG,CAAC,KAAuC,EAAE,EAAE;QACxD,6DAA6D;QAC7D,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;YACnC,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,OAAO,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,yBAAyB;QACvD,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,CAAC,KAA0C,EAAE,EAAE;QAC7D,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC,oBAAoB;QAC5C,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YACpB,QAAQ,EAAE,CAAC;QACf,CAAC;QACD,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YACxC,kBAAkB,EAAE,CAAC;QACzB,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,EAAE,CAAC,gBAAgB,EAAE,uBAAuB,EAAE;QAClE,qBAAqB,EAAE,kBAAkB;KAC5C,CAAC,CAAC;IAEH,MAAM,YAAY,GAAG,EAAE,CAAC,sBAAsB,EAAE,uBAAuB,CAAC,CAAC;IAEzE,IAAI,CAAC,SAAS,EAAE,CAAC;QACb,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,OAAO,CACH,6BACI,SAAS,EAAC,mCAAmC,EAC7C,GAAG,EAAE,OAAO,EACZ,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,SAAS,EACpB,IAAI,EAAC,QAAQ;QAEb,+BAAO,SAAS,EAAE,YAAY;YAC1B,+BACI,QAAQ,EAAE,IAAI,EACd,IAAI,EAAC,UAAU,EACf,SAAS,EAAE,eAAe,EAC1B,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,YAAY,GACxB;YACF,8BAAM,SAAS,EAAC,kBAAkB;gBAC9B,8BAAM,SAAS,EAAE,EAAE,CAAC,sBAAsB,EAAE,EAAE,8BAA8B,EAAE,OAAO,EAAE,CAAC;oBACnF,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,EAAE,aAAa,EAAE,CAAC;oBACzC,UAAU;wBACP,CAAC,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC;4BACnB,EAAE,EAAE,uBAAuB;yBAC9B,CAAC,EAAE;wBACN,CAAC,CAAC,IAAI,CACP;gBACP,8BAAM,SAAS,EAAC,6DAA6D,IAAE,IAAI,eAAe,GAAG,CAAQ,CAC1G,CACH,CACN,CACT,CAAC;AACN,CAAC"}
|
@@ -0,0 +1,91 @@
|
|
1
|
+
import React from "react";
|
2
|
+
import { IInvertableSelectRenderErrorProps, IInvertableSelectRenderLoadingProps, IInvertableSelectRenderNoDataProps, IInvertableSelectRenderSearchBarProps, IInvertableSelectRenderStatusBarProps } from "./InvertableSelect.js";
|
3
|
+
/**
|
4
|
+
* Properties of List item component implementation
|
5
|
+
*
|
6
|
+
* @internal
|
7
|
+
*/
|
8
|
+
export interface IInvertableSelectVirtualisedRenderItemProps<T> {
|
9
|
+
/**
|
10
|
+
* Item of list
|
11
|
+
*/
|
12
|
+
item: T;
|
13
|
+
/**
|
14
|
+
* Title of the item
|
15
|
+
*/
|
16
|
+
title: string;
|
17
|
+
/**
|
18
|
+
* Indicate that item is selected
|
19
|
+
*/
|
20
|
+
isSelected: boolean;
|
21
|
+
focused: boolean;
|
22
|
+
focusedAction?: string;
|
23
|
+
/**
|
24
|
+
* Add item to selection callback
|
25
|
+
*/
|
26
|
+
onSelect: () => void;
|
27
|
+
/**
|
28
|
+
* Remove item from selection
|
29
|
+
*/
|
30
|
+
onDeselect: () => void;
|
31
|
+
/**
|
32
|
+
* Select item only
|
33
|
+
*/
|
34
|
+
onSelectOnly: () => void;
|
35
|
+
}
|
36
|
+
/**
|
37
|
+
* @internal
|
38
|
+
*/
|
39
|
+
export interface IInvertableSelectVirtualisedRenderActionsProps {
|
40
|
+
checked: boolean;
|
41
|
+
onChange: (value: boolean) => void;
|
42
|
+
onToggle: () => void;
|
43
|
+
totalItemsCount: number;
|
44
|
+
isFiltered: boolean;
|
45
|
+
isPartialSelection: boolean;
|
46
|
+
isVisible: boolean;
|
47
|
+
onApplyButtonClick?: () => void;
|
48
|
+
}
|
49
|
+
/**
|
50
|
+
* @internal
|
51
|
+
*/
|
52
|
+
export interface IInvertableSelectVirtualisedProps<T> {
|
53
|
+
className?: string;
|
54
|
+
width?: number;
|
55
|
+
height?: number;
|
56
|
+
adaptiveWidth?: boolean;
|
57
|
+
adaptiveHeight?: boolean;
|
58
|
+
isSingleSelect?: boolean;
|
59
|
+
items: T[];
|
60
|
+
totalItemsCount?: number;
|
61
|
+
itemHeight?: number;
|
62
|
+
getItemTitle: (item: T) => string;
|
63
|
+
getItemKey: (item: T) => string;
|
64
|
+
isInverted: boolean;
|
65
|
+
selectedItems: T[];
|
66
|
+
selectedItemsLimit?: number;
|
67
|
+
onSelect?: (items: T[], isInverted: boolean) => void;
|
68
|
+
numberOfHiddenSelectedItems?: number;
|
69
|
+
searchString?: string;
|
70
|
+
searchPlaceholder?: string;
|
71
|
+
onSearch?: (search: string) => void;
|
72
|
+
error?: any;
|
73
|
+
canSubmitOnKeyDown?: boolean;
|
74
|
+
isLoading?: boolean;
|
75
|
+
nextPageItemPlaceholdersCount?: number;
|
76
|
+
isLoadingNextPage?: boolean;
|
77
|
+
onLoadNextPage?: () => void;
|
78
|
+
onApplyButtonClick?: () => void;
|
79
|
+
renderError?: (props: IInvertableSelectRenderErrorProps) => JSX.Element;
|
80
|
+
renderLoading?: (props: IInvertableSelectRenderLoadingProps) => JSX.Element;
|
81
|
+
renderSearchBar?: (props: IInvertableSelectRenderSearchBarProps) => JSX.Element;
|
82
|
+
renderNoData?: (props: IInvertableSelectRenderNoDataProps) => JSX.Element;
|
83
|
+
renderItem?: (props: IInvertableSelectVirtualisedRenderItemProps<T>) => JSX.Element;
|
84
|
+
renderStatusBar?: (props: IInvertableSelectRenderStatusBarProps<T>) => JSX.Element;
|
85
|
+
renderActions?: (props: IInvertableSelectVirtualisedRenderActionsProps) => JSX.Element;
|
86
|
+
}
|
87
|
+
/**
|
88
|
+
* @internal
|
89
|
+
*/
|
90
|
+
export declare function InvertableSelectVirtualised<T>(props: IInvertableSelectVirtualisedProps<T>): React.JSX.Element;
|
91
|
+
//# sourceMappingURL=InvertableSelectVirtualised.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"InvertableSelectVirtualised.d.ts","sourceRoot":"","sources":["../../../src/List/InvertableSelect/InvertableSelectVirtualised.tsx"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,168 @@
|
|
1
|
+
// (C) 2007-2025 GoodData Corporation
|
2
|
+
import React, { useCallback, useEffect, useState } from "react";
|
3
|
+
import cx from "classnames";
|
4
|
+
import DefaultMeasure from "react-measure";
|
5
|
+
import { LoadingMask } from "../../LoadingMask/index.js";
|
6
|
+
import { useInvertableSelect } from "./useInvertableSelect.js";
|
7
|
+
import { InvertableSelectSearchBar } from "./InvertableSelectSearchBar.js";
|
8
|
+
import { InvertableSelectAllCheckbox } from "./InvertableSelectAllCheckbox.js";
|
9
|
+
import { InvertableSelectStatusBar } from "./InvertableSelectStatusBar.js";
|
10
|
+
import { InvertableSelectNoResultsMatch } from "./InvertableSelectNoResultsMatch.js";
|
11
|
+
import { ErrorComponent } from "@gooddata/sdk-ui";
|
12
|
+
import { InvertableSelectItem } from "./InvertableSelectItem.js";
|
13
|
+
import { defaultImport } from "default-import";
|
14
|
+
import { useListWithActionsKeyboardNavigation } from "../../@ui/hooks/useListWithActionsKeyboardNavigation.js";
|
15
|
+
import noop from "lodash/noop.js";
|
16
|
+
import { isEnterKey, isSpaceKey } from "../../utils/events.js";
|
17
|
+
import { UiPagedVirtualList } from "../../@ui/UiPagedVirtualList/UiPagedVirtualList.js";
|
18
|
+
// There are known compatibility issues between CommonJS (CJS) and ECMAScript modules (ESM).
|
19
|
+
// In ESM, default exports of CJS modules are wrapped in default properties instead of being exposed directly.
|
20
|
+
// https://github.com/microsoft/TypeScript/issues/52086#issuecomment-1385978414
|
21
|
+
const Measure = defaultImport(DefaultMeasure);
|
22
|
+
const DEFAULT_VISIBLE_ITEMS_COUNT = 10;
|
23
|
+
/**
|
24
|
+
* @internal
|
25
|
+
*/
|
26
|
+
export function InvertableSelectVirtualised(props) {
|
27
|
+
const { className, height, adaptiveHeight, isSingleSelect = false, items, totalItemsCount, itemHeight, getItemTitle, getItemKey, isInverted = true, selectedItems, selectedItemsLimit = Infinity, onSearch, searchString, searchPlaceholder, error, isLoading, nextPageItemPlaceholdersCount, isLoadingNextPage, canSubmitOnKeyDown, onLoadNextPage, onApplyButtonClick, renderError = defaultError, renderLoading = defaultLoading, renderSearchBar = defaultSearchBar, renderNoData = defaultNoData, renderItem = defaultItem, renderStatusBar = defaultStatusBar, renderActions = defaultActions, } = props;
|
28
|
+
const { onSelectAllCheckboxChange, onSelectAllCheckboxToggle, selectOnly, selectItems, deselectItems, selectionState, getIsItemSelected, } = useInvertableSelect(props);
|
29
|
+
const [focusedIndex, setFocusedIndex] = useState(0);
|
30
|
+
useEffect(() => {
|
31
|
+
if (items.length === 0) {
|
32
|
+
setFocusedIndex(-1);
|
33
|
+
}
|
34
|
+
else {
|
35
|
+
const firstSelectedIndex = items.findIndex((item) => getIsItemSelected(item));
|
36
|
+
if (firstSelectedIndex !== -1) {
|
37
|
+
setFocusedIndex(firstSelectedIndex);
|
38
|
+
}
|
39
|
+
else {
|
40
|
+
setFocusedIndex(0);
|
41
|
+
}
|
42
|
+
}
|
43
|
+
}, [selectedItems, items, getIsItemSelected, setFocusedIndex]);
|
44
|
+
const handleSelectItem = React.useCallback((item, e) => () => {
|
45
|
+
if (isSingleSelect) {
|
46
|
+
selectOnly(item);
|
47
|
+
}
|
48
|
+
else {
|
49
|
+
const isSelected = getIsItemSelected(item);
|
50
|
+
if (isSpaceKey(e)) {
|
51
|
+
if (isSelected) {
|
52
|
+
deselectItems([item]);
|
53
|
+
}
|
54
|
+
else {
|
55
|
+
selectItems([item]);
|
56
|
+
}
|
57
|
+
}
|
58
|
+
if (isEnterKey(e) && canSubmitOnKeyDown) {
|
59
|
+
onApplyButtonClick?.();
|
60
|
+
}
|
61
|
+
}
|
62
|
+
}, [
|
63
|
+
isSingleSelect,
|
64
|
+
canSubmitOnKeyDown,
|
65
|
+
selectOnly,
|
66
|
+
getIsItemSelected,
|
67
|
+
deselectItems,
|
68
|
+
selectItems,
|
69
|
+
onApplyButtonClick,
|
70
|
+
]);
|
71
|
+
const handleSelectOnly = React.useCallback((item) => () => {
|
72
|
+
if (isSingleSelect) {
|
73
|
+
return undefined;
|
74
|
+
}
|
75
|
+
selectOnly(item);
|
76
|
+
onApplyButtonClick();
|
77
|
+
}, [isSingleSelect, selectOnly, onApplyButtonClick]);
|
78
|
+
const getItemAdditionalActions = React.useCallback(() => {
|
79
|
+
if (isSingleSelect) {
|
80
|
+
return [];
|
81
|
+
}
|
82
|
+
return ["only", "questionMark"];
|
83
|
+
}, [isSingleSelect]);
|
84
|
+
const { onKeyboardNavigation, focusedItem, focusedAction } = useListWithActionsKeyboardNavigation({
|
85
|
+
items,
|
86
|
+
getItemAdditionalActions,
|
87
|
+
actionHandlers: {
|
88
|
+
selectItem: handleSelectItem,
|
89
|
+
only: handleSelectOnly,
|
90
|
+
questionMark: () => noop,
|
91
|
+
},
|
92
|
+
focusedIndex,
|
93
|
+
});
|
94
|
+
const itemRenderer = useCallback((item) => {
|
95
|
+
return renderItem({
|
96
|
+
onSelect: () => {
|
97
|
+
selectItems([item]);
|
98
|
+
},
|
99
|
+
onDeselect: () => {
|
100
|
+
deselectItems([item]);
|
101
|
+
},
|
102
|
+
onSelectOnly: () => selectOnly(item),
|
103
|
+
item,
|
104
|
+
title: getItemTitle(item),
|
105
|
+
isSelected: getIsItemSelected(item),
|
106
|
+
focused: item === focusedItem,
|
107
|
+
focusedAction: item === focusedItem ? focusedAction : undefined,
|
108
|
+
});
|
109
|
+
}, [
|
110
|
+
renderItem,
|
111
|
+
getIsItemSelected,
|
112
|
+
getItemTitle,
|
113
|
+
selectItems,
|
114
|
+
deselectItems,
|
115
|
+
selectOnly,
|
116
|
+
focusedAction,
|
117
|
+
focusedItem,
|
118
|
+
]);
|
119
|
+
return (React.createElement("div", { className: "gd-invertable-select" },
|
120
|
+
React.createElement("div", { className: "gd-invertable-select-search-bar", onKeyDown: (e) => e.stopPropagation() }, renderSearchBar({ onSearch, searchPlaceholder, searchString })),
|
121
|
+
isLoading ? (React.createElement("div", { className: "gd-invertable-select-loading" }, renderLoading({ height }))) : error ? (React.createElement("div", { className: "gd-invertable-select-error" }, renderError({ height, error }))) : (React.createElement(React.Fragment, null,
|
122
|
+
renderActions({
|
123
|
+
isVisible: items.length > 0,
|
124
|
+
checked: selectionState !== "none",
|
125
|
+
onToggle: onSelectAllCheckboxToggle,
|
126
|
+
onChange: onSelectAllCheckboxChange,
|
127
|
+
isFiltered: searchString?.length > 0,
|
128
|
+
totalItemsCount,
|
129
|
+
isPartialSelection: selectionState === "partial",
|
130
|
+
}),
|
131
|
+
items.length > 0 && (React.createElement(Measure, { client: true }, ({ measureRef, contentRect }) => {
|
132
|
+
const maxHeight = adaptiveHeight
|
133
|
+
? contentRect?.client.height
|
134
|
+
: Math.min(items.length, DEFAULT_VISIBLE_ITEMS_COUNT) * itemHeight;
|
135
|
+
return isLoading ? (React.createElement(LoadingMask, { height: height })) : (React.createElement("div", { className: "gd-invertable-select-list", ref: measureRef },
|
136
|
+
React.createElement("div", { tabIndex: 0, onKeyDown: onKeyboardNavigation, className: cx("gd-async-list", className ? className : "") },
|
137
|
+
React.createElement(UiPagedVirtualList, { items: items, itemHeight: itemHeight, itemsGap: 0, itemPadding: 0, skeletonItemsCount: nextPageItemPlaceholdersCount, hasNextPage: nextPageItemPlaceholdersCount > 0, loadNextPage: onLoadNextPage, isLoading: isLoadingNextPage, maxHeight: maxHeight, scrollToItem: focusedItem, scrollToItemKeyExtractor: getItemKey }, itemRenderer))));
|
138
|
+
})),
|
139
|
+
items.length === 0 && (React.createElement("div", { className: "gd-invertable-select-no-data" }, renderNoData?.({ height }))))),
|
140
|
+
React.createElement("div", { className: "gd-invertable-select-status-bar" }, renderStatusBar({ getItemTitle, isInverted, selectedItems, selectedItemsLimit }))));
|
141
|
+
}
|
142
|
+
function defaultError(props) {
|
143
|
+
const { error } = props;
|
144
|
+
return React.createElement(ErrorComponent, { message: error?.message });
|
145
|
+
}
|
146
|
+
function defaultLoading(props) {
|
147
|
+
const { height } = props;
|
148
|
+
return React.createElement(LoadingMask, { height: height });
|
149
|
+
}
|
150
|
+
function defaultSearchBar(props) {
|
151
|
+
const { onSearch, searchPlaceholder, searchString } = props;
|
152
|
+
return (React.createElement(InvertableSelectSearchBar, { searchPlaceholder: searchPlaceholder, onSearch: onSearch, searchString: searchString, isSmall: true }));
|
153
|
+
}
|
154
|
+
function defaultNoData() {
|
155
|
+
return React.createElement(InvertableSelectNoResultsMatch, null);
|
156
|
+
}
|
157
|
+
function defaultItem(props) {
|
158
|
+
return (React.createElement(InvertableSelectItem, { title: props.title, isSelected: props.isSelected, onClick: props.isSelected ? props.onDeselect : props.onSelect, onOnly: props.onSelectOnly }));
|
159
|
+
}
|
160
|
+
function defaultStatusBar(props) {
|
161
|
+
const { isInverted, selectedItems, getItemTitle, selectedItemsLimit } = props;
|
162
|
+
return (React.createElement(InvertableSelectStatusBar, { isInverted: isInverted, selectedItems: selectedItems, getItemTitle: getItemTitle, selectedItemsLimit: selectedItemsLimit }));
|
163
|
+
}
|
164
|
+
function defaultActions(props) {
|
165
|
+
const { checked, onToggle, onChange, isFiltered, totalItemsCount, isPartialSelection, isVisible } = props;
|
166
|
+
return (React.createElement(InvertableSelectAllCheckbox, { isVisible: isVisible, checked: checked, onChange: onChange, onToggle: onToggle, isFiltered: isFiltered, totalItemsCount: totalItemsCount, isPartialSelection: isPartialSelection }));
|
167
|
+
}
|
168
|
+
//# sourceMappingURL=InvertableSelectVirtualised.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"InvertableSelectVirtualised.js","sourceRoot":"","sources":["../../../src/List/InvertableSelect/InvertableSelectVirtualised.tsx"],"names":[],"mappings":"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"}
|
@@ -12,4 +12,6 @@ export type { IInvertableSelectAllCheckboxProps } from "./InvertableSelectAllChe
|
|
12
12
|
export { InvertableSelectAllCheckbox } from "./InvertableSelectAllCheckbox.js";
|
13
13
|
export type { IInvertableSelectStatusProps } from "./InvertableSelectSelectionStatus.js";
|
14
14
|
export { InvertableSelectStatus, useInvertableSelectionStatusText, } from "./InvertableSelectSelectionStatus.js";
|
15
|
+
export type { IInvertableSelectVirtualisedProps, IInvertableSelectVirtualisedRenderItemProps, IInvertableSelectVirtualisedRenderActionsProps, } from "./InvertableSelectVirtualised.js";
|
16
|
+
export { InvertableSelectVirtualised } from "./InvertableSelectVirtualised.js";
|
15
17
|
//# sourceMappingURL=index.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/List/InvertableSelect/index.ts"],"names":[],"mappings":"AACA,YAAY,EACR,sBAAsB,EACtB,gCAAgC,EAChC,iCAAiC,EACjC,mCAAmC,EACnC,kCAAkC,EAClC,qCAAqC,EACrC,qCAAqC,EACrC,mCAAmC,GACtC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,YAAY,EAAE,+BAA+B,EAAE,MAAM,gCAAgC,CAAC;AACtF,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,YAAY,EAAE,kCAAkC,EAAE,MAAM,mCAAmC,CAAC;AAC5F,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AACjF,YAAY,EAAE,qBAAqB,EAAE,oCAAoC,EAAE,MAAM,2BAA2B,CAAC;AAC7G,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,YAAY,EAAE,+BAA+B,EAAE,MAAM,gCAAgC,CAAC;AACtF,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,YAAY,EAAE,iCAAiC,EAAE,MAAM,kCAAkC,CAAC;AAC1F,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,YAAY,EAAE,4BAA4B,EAAE,MAAM,sCAAsC,CAAC;AACzF,OAAO,EACH,sBAAsB,EACtB,gCAAgC,GACnC,MAAM,sCAAsC,CAAC"}
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/List/InvertableSelect/index.ts"],"names":[],"mappings":"AACA,YAAY,EACR,sBAAsB,EACtB,gCAAgC,EAChC,iCAAiC,EACjC,mCAAmC,EACnC,kCAAkC,EAClC,qCAAqC,EACrC,qCAAqC,EACrC,mCAAmC,GACtC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,YAAY,EAAE,+BAA+B,EAAE,MAAM,gCAAgC,CAAC;AACtF,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,YAAY,EAAE,kCAAkC,EAAE,MAAM,mCAAmC,CAAC;AAC5F,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AACjF,YAAY,EAAE,qBAAqB,EAAE,oCAAoC,EAAE,MAAM,2BAA2B,CAAC;AAC7G,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,YAAY,EAAE,+BAA+B,EAAE,MAAM,gCAAgC,CAAC;AACtF,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,YAAY,EAAE,iCAAiC,EAAE,MAAM,kCAAkC,CAAC;AAC1F,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,YAAY,EAAE,4BAA4B,EAAE,MAAM,sCAAsC,CAAC;AACzF,OAAO,EACH,sBAAsB,EACtB,gCAAgC,GACnC,MAAM,sCAAsC,CAAC;AAE9C,YAAY,EACR,iCAAiC,EACjC,2CAA2C,EAC3C,8CAA8C,GACjD,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC"}
|
@@ -5,4 +5,5 @@ export { InvertableSelectItem } from "./InvertableSelectItem.js";
|
|
5
5
|
export { InvertableSelectSearchBar } from "./InvertableSelectSearchBar.js";
|
6
6
|
export { InvertableSelectAllCheckbox } from "./InvertableSelectAllCheckbox.js";
|
7
7
|
export { InvertableSelectStatus, useInvertableSelectionStatusText, } from "./InvertableSelectSelectionStatus.js";
|
8
|
+
export { InvertableSelectVirtualised } from "./InvertableSelectVirtualised.js";
|
8
9
|
//# sourceMappingURL=index.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/List/InvertableSelect/index.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAE3E,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AAEjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAE3E,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAE/E,OAAO,EACH,sBAAsB,EACtB,gCAAgC,GACnC,MAAM,sCAAsC,CAAC"}
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/List/InvertableSelect/index.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAE3E,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AAEjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAE3E,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAE/E,OAAO,EACH,sBAAsB,EACtB,gCAAgC,GACnC,MAAM,sCAAsC,CAAC;AAO9C,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC"}
|
package/esm/List/List.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
// (C) 2007-2025 GoodData Corporation
|
2
|
-
import React, {
|
2
|
+
import React, { useCallback, useEffect, useMemo } from "react";
|
3
3
|
import { Table, Column, Cell } from "fixed-data-table-2";
|
4
4
|
import cx from "classnames";
|
5
5
|
// it configures max number of records due to
|
package/esm/List/List.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"List.js","sourceRoot":"","sources":["../../src/List/List.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,EAAE,EAAE,
|
1
|
+
{"version":3,"file":"List.js","sourceRoot":"","sources":["../../src/List/List.tsx"],"names":[],"mappings":"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"}
|
package/esm/List/index.d.ts
CHANGED
@@ -14,8 +14,8 @@ export type { IMultiSelectListItemProps } from "./MultiSelectListItem.js";
|
|
14
14
|
export { MultiSelectListItem } from "./MultiSelectListItem.js";
|
15
15
|
export type { IAsyncListProps } from "./AsyncList.js";
|
16
16
|
export { AsyncList } from "./AsyncList.js";
|
17
|
-
export type { IInvertableSelectItem, IInvertableSelectProps, IInvertableSelectSearchBarProps, IInvertableSelectRenderItemProps, IInvertableSelectRenderErrorProps, IInvertableSelectRenderLoadingProps, IInvertableSelectRenderNoDataProps, IInvertableSelectLimitWarningProps, IInvertableSelectRenderSearchBarProps, IInvertableSelectRenderStatusBarProps, IInvertableSelectStatusBarProps, IInvertableSelectAllCheckboxProps, IInvertableSelectRenderActionsProps, IInvertableSelectStatusProps, IInvertableSelectItemRenderOnlyProps, } from "./InvertableSelect/index.js";
|
18
|
-
export { InvertableSelect, InvertableSelectItem, InvertableSelectLimitWarning, InvertableSelectSearchBar, InvertableSelectStatusBar, InvertableSelectAllCheckbox, InvertableSelectStatus, useInvertableSelectionStatusText, } from "./InvertableSelect/index.js";
|
17
|
+
export type { IInvertableSelectItem, IInvertableSelectProps, IInvertableSelectSearchBarProps, IInvertableSelectRenderItemProps, IInvertableSelectRenderErrorProps, IInvertableSelectRenderLoadingProps, IInvertableSelectRenderNoDataProps, IInvertableSelectLimitWarningProps, IInvertableSelectRenderSearchBarProps, IInvertableSelectRenderStatusBarProps, IInvertableSelectStatusBarProps, IInvertableSelectAllCheckboxProps, IInvertableSelectRenderActionsProps, IInvertableSelectStatusProps, IInvertableSelectItemRenderOnlyProps, IInvertableSelectVirtualisedProps, IInvertableSelectVirtualisedRenderItemProps, IInvertableSelectVirtualisedRenderActionsProps, } from "./InvertableSelect/index.js";
|
18
|
+
export { InvertableSelect, InvertableSelectItem, InvertableSelectLimitWarning, InvertableSelectSearchBar, InvertableSelectStatusBar, InvertableSelectAllCheckbox, InvertableSelectStatus, useInvertableSelectionStatusText, InvertableSelectVirtualised, } from "./InvertableSelect/index.js";
|
19
19
|
export type { ISingleSelectListItemProps, SingleSelectListItemType } from "./ListItem.js";
|
20
20
|
export { SingleSelectListItem } from "./ListItem.js";
|
21
21
|
export type { ILegacyInvertableListProps } from "./LegacyInvertableList.js";
|
package/esm/List/index.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/List/index.ts"],"names":[],"mappings":"AAEA,YAAY,EAAE,UAAU,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClF,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAGtE,YAAY,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,YAAY,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAChF,YAAY,EAAE,yBAAyB,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AACtG,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAClF,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,YAAY,EAAE,qBAAqB,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AAC/F,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,YAAY,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,YAAY,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,YAAY,EACR,qBAAqB,EACrB,sBAAsB,EACtB,+BAA+B,EAC/B,gCAAgC,EAChC,iCAAiC,EACjC,mCAAmC,EACnC,kCAAkC,EAClC,kCAAkC,EAClC,qCAAqC,EACrC,qCAAqC,EACrC,+BAA+B,EAC/B,iCAAiC,EACjC,mCAAmC,EACnC,4BAA4B,EAC5B,oCAAoC,
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/List/index.ts"],"names":[],"mappings":"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"}
|
package/esm/List/index.js
CHANGED
@@ -7,7 +7,7 @@ export { List } from "./List.js";
|
|
7
7
|
export { MultiSelectList } from "./MultiSelectList.js";
|
8
8
|
export { MultiSelectListItem } from "./MultiSelectListItem.js";
|
9
9
|
export { AsyncList } from "./AsyncList.js";
|
10
|
-
export { InvertableSelect, InvertableSelectItem, InvertableSelectLimitWarning, InvertableSelectSearchBar, InvertableSelectStatusBar, InvertableSelectAllCheckbox, InvertableSelectStatus, useInvertableSelectionStatusText, } from "./InvertableSelect/index.js";
|
10
|
+
export { InvertableSelect, InvertableSelectItem, InvertableSelectLimitWarning, InvertableSelectSearchBar, InvertableSelectStatusBar, InvertableSelectAllCheckbox, InvertableSelectStatus, useInvertableSelectionStatusText, InvertableSelectVirtualised, } from "./InvertableSelect/index.js";
|
11
11
|
export { SingleSelectListItem } from "./ListItem.js";
|
12
12
|
export { default as LegacyInvertableList } from "./LegacyInvertableList.js";
|
13
13
|
export { LegacyList } from "./LegacyList.js";
|
package/esm/List/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/List/index.ts"],"names":[],"mappings":"AAAA,qCAAqC;AAGrC,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAItE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAEhF,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/List/index.ts"],"names":[],"mappings":"AAAA,qCAAqC;AAGrC,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAItE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAEhF,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAqB3C,OAAO,EACH,gBAAgB,EAChB,oBAAoB,EACpB,4BAA4B,EAC5B,yBAAyB,EACzB,yBAAyB,EACzB,2BAA2B,EAC3B,sBAAsB,EACtB,gCAAgC,EAChC,2BAA2B,GAC9B,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAIrD,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAE5E,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAE9E,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAK3E,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAE7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC"}
|
package/esm/sdk-ui-kit.d.ts
CHANGED
@@ -2735,6 +2735,8 @@ export declare interface IInvertableSelectAllCheckboxProps {
|
|
2735
2735
|
totalItemsCount: number;
|
2736
2736
|
isPartialSelection: boolean;
|
2737
2737
|
isVisible: boolean;
|
2738
|
+
onApplyButtonClick?: () => void;
|
2739
|
+
isApplyDisabled?: boolean;
|
2738
2740
|
}
|
2739
2741
|
|
2740
2742
|
/**
|
@@ -2922,6 +2924,93 @@ export declare interface IInvertableSelectStatusProps<T> {
|
|
2922
2924
|
getItemTitle: (item: T) => string;
|
2923
2925
|
}
|
2924
2926
|
|
2927
|
+
/**
|
2928
|
+
* @internal
|
2929
|
+
*/
|
2930
|
+
export declare interface IInvertableSelectVirtualisedProps<T> {
|
2931
|
+
className?: string;
|
2932
|
+
width?: number;
|
2933
|
+
height?: number;
|
2934
|
+
adaptiveWidth?: boolean;
|
2935
|
+
adaptiveHeight?: boolean;
|
2936
|
+
isSingleSelect?: boolean;
|
2937
|
+
items: T[];
|
2938
|
+
totalItemsCount?: number;
|
2939
|
+
itemHeight?: number;
|
2940
|
+
getItemTitle: (item: T) => string;
|
2941
|
+
getItemKey: (item: T) => string;
|
2942
|
+
isInverted: boolean;
|
2943
|
+
selectedItems: T[];
|
2944
|
+
selectedItemsLimit?: number;
|
2945
|
+
onSelect?: (items: T[], isInverted: boolean) => void;
|
2946
|
+
numberOfHiddenSelectedItems?: number;
|
2947
|
+
searchString?: string;
|
2948
|
+
searchPlaceholder?: string;
|
2949
|
+
onSearch?: (search: string) => void;
|
2950
|
+
error?: any;
|
2951
|
+
canSubmitOnKeyDown?: boolean;
|
2952
|
+
isLoading?: boolean;
|
2953
|
+
nextPageItemPlaceholdersCount?: number;
|
2954
|
+
isLoadingNextPage?: boolean;
|
2955
|
+
onLoadNextPage?: () => void;
|
2956
|
+
onApplyButtonClick?: () => void;
|
2957
|
+
renderError?: (props: IInvertableSelectRenderErrorProps) => JSX.Element;
|
2958
|
+
renderLoading?: (props: IInvertableSelectRenderLoadingProps) => JSX.Element;
|
2959
|
+
renderSearchBar?: (props: IInvertableSelectRenderSearchBarProps) => JSX.Element;
|
2960
|
+
renderNoData?: (props: IInvertableSelectRenderNoDataProps) => JSX.Element;
|
2961
|
+
renderItem?: (props: IInvertableSelectVirtualisedRenderItemProps<T>) => JSX.Element;
|
2962
|
+
renderStatusBar?: (props: IInvertableSelectRenderStatusBarProps<T>) => JSX.Element;
|
2963
|
+
renderActions?: (props: IInvertableSelectVirtualisedRenderActionsProps) => JSX.Element;
|
2964
|
+
}
|
2965
|
+
|
2966
|
+
/**
|
2967
|
+
* @internal
|
2968
|
+
*/
|
2969
|
+
export declare interface IInvertableSelectVirtualisedRenderActionsProps {
|
2970
|
+
checked: boolean;
|
2971
|
+
onChange: (value: boolean) => void;
|
2972
|
+
onToggle: () => void;
|
2973
|
+
totalItemsCount: number;
|
2974
|
+
isFiltered: boolean;
|
2975
|
+
isPartialSelection: boolean;
|
2976
|
+
isVisible: boolean;
|
2977
|
+
onApplyButtonClick?: () => void;
|
2978
|
+
}
|
2979
|
+
|
2980
|
+
/**
|
2981
|
+
* Properties of List item component implementation
|
2982
|
+
*
|
2983
|
+
* @internal
|
2984
|
+
*/
|
2985
|
+
export declare interface IInvertableSelectVirtualisedRenderItemProps<T> {
|
2986
|
+
/**
|
2987
|
+
* Item of list
|
2988
|
+
*/
|
2989
|
+
item: T;
|
2990
|
+
/**
|
2991
|
+
* Title of the item
|
2992
|
+
*/
|
2993
|
+
title: string;
|
2994
|
+
/**
|
2995
|
+
* Indicate that item is selected
|
2996
|
+
*/
|
2997
|
+
isSelected: boolean;
|
2998
|
+
focused: boolean;
|
2999
|
+
focusedAction?: string;
|
3000
|
+
/**
|
3001
|
+
* Add item to selection callback
|
3002
|
+
*/
|
3003
|
+
onSelect: () => void;
|
3004
|
+
/**
|
3005
|
+
* Remove item from selection
|
3006
|
+
*/
|
3007
|
+
onDeselect: () => void;
|
3008
|
+
/**
|
3009
|
+
* Select item only
|
3010
|
+
*/
|
3011
|
+
onSelectOnly: () => void;
|
3012
|
+
}
|
3013
|
+
|
2925
3014
|
/**
|
2926
3015
|
* @internal
|
2927
3016
|
*/
|
@@ -3693,6 +3782,11 @@ export declare function InvertableSelectStatus<T>(props: IInvertableSelectStatus
|
|
3693
3782
|
*/
|
3694
3783
|
export declare function InvertableSelectStatusBar<T>(props: IInvertableSelectStatusBarProps<T>): React_2.JSX.Element;
|
3695
3784
|
|
3785
|
+
/**
|
3786
|
+
* @internal
|
3787
|
+
*/
|
3788
|
+
export declare function InvertableSelectVirtualised<T>(props: IInvertableSelectVirtualisedProps<T>): React_2.JSX.Element;
|
3789
|
+
|
3696
3790
|
/**
|
3697
3791
|
* @internal
|
3698
3792
|
*/
|
@@ -6045,6 +6139,18 @@ export declare interface UiPagedVirtualListProps<T> {
|
|
6045
6139
|
hasNextPage?: boolean;
|
6046
6140
|
loadNextPage?: () => void;
|
6047
6141
|
isLoading?: boolean;
|
6142
|
+
/**
|
6143
|
+
* An item in the list that should be scrolled into view when the component renders.
|
6144
|
+
* By default, items are compared by object identity (i.e., `===`).
|
6145
|
+
* To customize how the target item is found (e.g., by ID), provide a `scrollToItemKeyExtractor` as well.
|
6146
|
+
*/
|
6147
|
+
scrollToItem?: T;
|
6148
|
+
/**
|
6149
|
+
* A function that extracts a unique key from each item for comparison with `scrollToItem`.
|
6150
|
+
* This is useful when the provided `scrollToItem` may not be the same object reference as items in the list.
|
6151
|
+
* If not provided, object identity (`===`) is used for comparison.
|
6152
|
+
*/
|
6153
|
+
scrollToItemKeyExtractor?: (item: T) => string | number;
|
6048
6154
|
children: (item: T) => React_2.ReactNode;
|
6049
6155
|
SkeletonItem?: React_2.ComponentType<UiPagedVirtualListSkeletonItemProps>;
|
6050
6156
|
}
|
@@ -6205,13 +6311,14 @@ export declare const useIsZoomed: (baseZoomLevel?: number) => boolean;
|
|
6205
6311
|
/**
|
6206
6312
|
* @internal
|
6207
6313
|
*/
|
6208
|
-
export declare function useListWithActionsKeyboardNavigation<Item, Action extends string>({ items, actionHandlers, getItemAdditionalActions, isNestedList, }: {
|
6314
|
+
export declare function useListWithActionsKeyboardNavigation<Item, Action extends string>({ items, actionHandlers, getItemAdditionalActions, isNestedList, focusedIndex: focusedIndexProp, }: {
|
6209
6315
|
items: Item[];
|
6210
6316
|
actionHandlers: {
|
6211
|
-
[key in Action | typeof SELECT_ITEM_ACTION]: (item: Item) => (() => void) | undefined;
|
6317
|
+
[key in Action | typeof SELECT_ITEM_ACTION]: (item: Item, e?: React_2.KeyboardEvent) => (() => void) | undefined;
|
6212
6318
|
};
|
6213
6319
|
getItemAdditionalActions: (item: Item) => Action[];
|
6214
6320
|
isNestedList?: boolean;
|
6321
|
+
focusedIndex?: number;
|
6215
6322
|
}): {
|
6216
6323
|
onKeyboardNavigation: (event: React_2.KeyboardEvent<Element>) => void;
|
6217
6324
|
onBlur: React_2.FocusEventHandler<Element>;
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@gooddata/sdk-ui-kit",
|
3
|
-
"version": "10.30.0-alpha.
|
3
|
+
"version": "10.30.0-alpha.13",
|
4
4
|
"description": "GoodData SDK - UI Building Components",
|
5
5
|
"repository": {
|
6
6
|
"type": "git",
|
@@ -75,11 +75,11 @@
|
|
75
75
|
"@codemirror/autocomplete": "^6.18.6",
|
76
76
|
"@lezer/highlight": "~1.2.1",
|
77
77
|
"@codemirror/commands": "~6.8.1",
|
78
|
-
"@gooddata/sdk-backend-spi": "10.30.0-alpha.
|
79
|
-
"@gooddata/sdk-
|
80
|
-
"@gooddata/sdk-
|
81
|
-
"@gooddata/
|
82
|
-
"@gooddata/
|
78
|
+
"@gooddata/sdk-backend-spi": "10.30.0-alpha.13",
|
79
|
+
"@gooddata/sdk-model": "10.30.0-alpha.13",
|
80
|
+
"@gooddata/sdk-ui": "10.30.0-alpha.13",
|
81
|
+
"@gooddata/util": "10.30.0-alpha.13",
|
82
|
+
"@gooddata/sdk-ui-theme-provider": "10.30.0-alpha.13"
|
83
83
|
},
|
84
84
|
"peerDependencies": {
|
85
85
|
"react": "^16.10.0 || ^17.0.0 || ^18.0.0",
|
@@ -137,8 +137,8 @@
|
|
137
137
|
"typescript": "5.3.3",
|
138
138
|
"vitest": "3.0.8",
|
139
139
|
"vitest-dom": "0.1.1",
|
140
|
-
"@gooddata/reference-workspace": "10.30.0-alpha.
|
141
|
-
"@gooddata/sdk-backend-mockingbird": "10.30.0-alpha.
|
140
|
+
"@gooddata/reference-workspace": "10.30.0-alpha.13",
|
141
|
+
"@gooddata/sdk-backend-mockingbird": "10.30.0-alpha.13"
|
142
142
|
},
|
143
143
|
"scripts": {
|
144
144
|
"clean": "rm -rf ci dist esm coverage styles/css *.log tsconfig.tsbuildinfo",
|