@redneckz/wildless-cms-uni-blocks 0.14.147 → 0.14.149
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/bundle/blocks.schema.json +1 -1
- package/bundle/bundle.umd.js +67 -14
- package/bundle/bundle.umd.min.js +1 -1
- package/bundle/components/OfficesAtmsMap/OfficesAtmsMapContent.d.ts +2 -3
- package/bundle/components/TabsLayout/TabsLayout.d.ts +5 -0
- package/bundle/components/TabsLayout/TabsLayoutButton.d.ts +10 -0
- package/bundle/components/TabsLayout/TabsLayoutContent.d.ts +21 -0
- package/bundle/components/TabsLayout/TabsLayoutRedirectTab.d.ts +6 -0
- package/bundle/components/TabsLayout/alignTabStyle.d.ts +2 -0
- package/bundle/ui-kit/Shimmer/Shimmer.d.ts +5 -0
- package/bundle/ui-kit/SwipeListControl/SwipeListContainer.d.ts +2 -2
- package/bundle/ui-kit/SwipeListControl/useSwipeListScroll.d.ts +1 -1
- package/dist/components/Blocks.js +3 -1
- package/dist/components/Blocks.js.map +1 -1
- package/dist/components/Blocks.mobile.js +3 -1
- package/dist/components/Blocks.mobile.js.map +1 -1
- package/dist/components/ContentPage/ContentPage.page.json +0 -37
- package/dist/components/OfficesAtmsMap/OfficesAtmsMapContent.d.ts +2 -3
- package/dist/components/OfficesAtmsMap/OfficesAtmsMapLayout.js +2 -2
- package/dist/components/OfficesAtmsMap/OfficesAtmsMapLayout.js.map +1 -1
- package/dist/components/Placeholder/Placeholder.js +2 -7
- package/dist/components/Placeholder/Placeholder.js.map +1 -1
- package/dist/components/TabsLayout/TabsLayout.d.ts +5 -0
- package/dist/components/TabsLayout/TabsLayout.js +32 -0
- package/dist/components/TabsLayout/TabsLayout.js.map +1 -0
- package/dist/components/TabsLayout/TabsLayoutButton.d.ts +10 -0
- package/dist/components/TabsLayout/TabsLayoutButton.js +23 -0
- package/dist/components/TabsLayout/TabsLayoutButton.js.map +1 -0
- package/dist/components/TabsLayout/TabsLayoutContent.d.ts +21 -0
- package/dist/components/TabsLayout/TabsLayoutContent.js +2 -0
- package/dist/components/TabsLayout/TabsLayoutContent.js.map +1 -0
- package/dist/components/TabsLayout/TabsLayoutRedirectTab.d.ts +6 -0
- package/dist/components/TabsLayout/TabsLayoutRedirectTab.js +17 -0
- package/dist/components/TabsLayout/TabsLayoutRedirectTab.js.map +1 -0
- package/dist/components/TabsLayout/alignTabStyle.d.ts +2 -0
- package/dist/components/TabsLayout/alignTabStyle.js +8 -0
- package/dist/components/TabsLayout/alignTabStyle.js.map +1 -0
- package/dist/setup-fixture.js +1 -1
- package/dist/setup-fixture.js.map +1 -1
- package/dist/ui-kit/Shimmer/Shimmer.d.ts +5 -0
- package/dist/ui-kit/Shimmer/Shimmer.js +13 -0
- package/dist/ui-kit/Shimmer/Shimmer.js.map +1 -0
- package/dist/ui-kit/SwipeListControl/SwipeListContainer.d.ts +2 -2
- package/dist/ui-kit/SwipeListControl/SwipeListContainer.js +2 -2
- package/dist/ui-kit/SwipeListControl/SwipeListContainer.js.map +1 -1
- package/dist/ui-kit/SwipeListControl/SwipeListItem.js +3 -2
- package/dist/ui-kit/SwipeListControl/SwipeListItem.js.map +1 -1
- package/dist/ui-kit/SwipeListControl/useSwipeListScroll.d.ts +1 -1
- package/dist/ui-kit/SwipeListControl/useSwipeListScroll.js +6 -6
- package/dist/ui-kit/SwipeListControl/useSwipeListScroll.js.map +1 -1
- package/lib/common.css +1 -1
- package/lib/components/Blocks.js +3 -1
- package/lib/components/Blocks.js.map +1 -1
- package/lib/components/Blocks.mobile.js +3 -1
- package/lib/components/Blocks.mobile.js.map +1 -1
- package/lib/components/ContentPage/ContentPage.page.json +0 -37
- package/lib/components/OfficesAtmsMap/OfficesAtmsMapContent.d.ts +2 -3
- package/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.js +2 -2
- package/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.js.map +1 -1
- package/lib/components/Placeholder/Placeholder.js +2 -7
- package/lib/components/Placeholder/Placeholder.js.map +1 -1
- package/lib/components/TabsLayout/TabsLayout.d.ts +5 -0
- package/lib/components/TabsLayout/TabsLayout.fixture.d.ts +6 -0
- package/lib/components/TabsLayout/TabsLayout.fixture.mobile.d.ts +6 -0
- package/lib/components/TabsLayout/TabsLayout.js +30 -0
- package/lib/components/TabsLayout/TabsLayout.js.map +1 -0
- package/lib/components/TabsLayout/TabsLayoutButton.d.ts +10 -0
- package/lib/components/TabsLayout/TabsLayoutButton.js +21 -0
- package/lib/components/TabsLayout/TabsLayoutButton.js.map +1 -0
- package/lib/components/TabsLayout/TabsLayoutContent.d.ts +21 -0
- package/lib/components/TabsLayout/TabsLayoutContent.js +2 -0
- package/lib/components/TabsLayout/TabsLayoutContent.js.map +1 -0
- package/lib/components/TabsLayout/TabsLayoutRedirectTab.d.ts +6 -0
- package/lib/components/TabsLayout/TabsLayoutRedirectTab.js +15 -0
- package/lib/components/TabsLayout/TabsLayoutRedirectTab.js.map +1 -0
- package/lib/components/TabsLayout/alignTabStyle.d.ts +2 -0
- package/lib/components/TabsLayout/alignTabStyle.js +6 -0
- package/lib/components/TabsLayout/alignTabStyle.js.map +1 -0
- package/lib/setup-fixture.js +1 -1
- package/lib/setup-fixture.js.map +1 -1
- package/lib/ui-kit/Shimmer/Shimmer.d.ts +5 -0
- package/lib/ui-kit/Shimmer/Shimmer.js +11 -0
- package/lib/ui-kit/Shimmer/Shimmer.js.map +1 -0
- package/lib/ui-kit/SwipeListControl/SwipeListContainer.d.ts +2 -2
- package/lib/ui-kit/SwipeListControl/SwipeListContainer.js +2 -2
- package/lib/ui-kit/SwipeListControl/SwipeListContainer.js.map +1 -1
- package/lib/ui-kit/SwipeListControl/SwipeListItem.js +3 -2
- package/lib/ui-kit/SwipeListControl/SwipeListItem.js.map +1 -1
- package/lib/ui-kit/SwipeListControl/useSwipeListScroll.d.ts +1 -1
- package/lib/ui-kit/SwipeListControl/useSwipeListScroll.js +6 -6
- package/lib/ui-kit/SwipeListControl/useSwipeListScroll.js.map +1 -1
- package/mobile/bundle/bundle.umd.js +76 -23
- package/mobile/bundle/bundle.umd.min.js +1 -1
- package/mobile/bundle/components/OfficesAtmsMap/OfficesAtmsMapContent.d.ts +2 -3
- package/mobile/bundle/components/TabsLayout/TabsLayout.d.ts +5 -0
- package/mobile/bundle/components/TabsLayout/TabsLayoutButton.d.ts +10 -0
- package/mobile/bundle/components/TabsLayout/TabsLayoutContent.d.ts +21 -0
- package/mobile/bundle/components/TabsLayout/TabsLayoutRedirectTab.d.ts +6 -0
- package/mobile/bundle/components/TabsLayout/alignTabStyle.d.ts +2 -0
- package/mobile/bundle/ui-kit/Shimmer/Shimmer.d.ts +5 -0
- package/mobile/bundle/ui-kit/SwipeListControl/SwipeListContainer.d.ts +2 -2
- package/mobile/bundle/ui-kit/SwipeListControl/useSwipeListScroll.d.ts +1 -1
- package/mobile/dist/components/Blocks.js +3 -1
- package/mobile/dist/components/Blocks.js.map +1 -1
- package/mobile/dist/components/ContentPage/ContentPage.page.json +0 -37
- package/mobile/dist/components/OfficesAtmsMap/OfficesAtmsMapContent.d.ts +2 -3
- package/mobile/dist/components/OfficesAtmsMap/OfficesAtmsMapLayout.js +2 -2
- package/mobile/dist/components/OfficesAtmsMap/OfficesAtmsMapLayout.js.map +1 -1
- package/mobile/dist/components/Placeholder/Placeholder.js +2 -7
- package/mobile/dist/components/Placeholder/Placeholder.js.map +1 -1
- package/mobile/dist/components/TabsLayout/TabsLayout.d.ts +5 -0
- package/mobile/dist/components/TabsLayout/TabsLayout.js +32 -0
- package/mobile/dist/components/TabsLayout/TabsLayout.js.map +1 -0
- package/mobile/dist/components/TabsLayout/TabsLayoutButton.d.ts +10 -0
- package/mobile/dist/components/TabsLayout/TabsLayoutButton.js +23 -0
- package/mobile/dist/components/TabsLayout/TabsLayoutButton.js.map +1 -0
- package/mobile/dist/components/TabsLayout/TabsLayoutContent.d.ts +21 -0
- package/mobile/dist/components/TabsLayout/TabsLayoutContent.js +2 -0
- package/mobile/dist/components/TabsLayout/TabsLayoutContent.js.map +1 -0
- package/mobile/dist/components/TabsLayout/TabsLayoutRedirectTab.d.ts +6 -0
- package/mobile/dist/components/TabsLayout/TabsLayoutRedirectTab.js +17 -0
- package/mobile/dist/components/TabsLayout/TabsLayoutRedirectTab.js.map +1 -0
- package/mobile/dist/components/TabsLayout/alignTabStyle.d.ts +2 -0
- package/mobile/dist/components/TabsLayout/alignTabStyle.js +8 -0
- package/mobile/dist/components/TabsLayout/alignTabStyle.js.map +1 -0
- package/mobile/dist/setup-fixture.js +1 -1
- package/mobile/dist/setup-fixture.js.map +1 -1
- package/mobile/dist/ui-kit/Shimmer/Shimmer.d.ts +5 -0
- package/mobile/dist/ui-kit/Shimmer/Shimmer.js +13 -0
- package/mobile/dist/ui-kit/Shimmer/Shimmer.js.map +1 -0
- package/mobile/dist/ui-kit/SwipeListControl/SwipeListContainer.d.ts +2 -2
- package/mobile/dist/ui-kit/SwipeListControl/SwipeListContainer.js +2 -2
- package/mobile/dist/ui-kit/SwipeListControl/SwipeListContainer.js.map +1 -1
- package/mobile/dist/ui-kit/SwipeListControl/SwipeListItem.js +3 -2
- package/mobile/dist/ui-kit/SwipeListControl/SwipeListItem.js.map +1 -1
- package/mobile/dist/ui-kit/SwipeListControl/useSwipeListScroll.d.ts +1 -1
- package/mobile/dist/ui-kit/SwipeListControl/useSwipeListScroll.js +6 -6
- package/mobile/dist/ui-kit/SwipeListControl/useSwipeListScroll.js.map +1 -1
- package/mobile/lib/common.css +1 -1
- package/mobile/lib/components/Blocks.js +3 -1
- package/mobile/lib/components/Blocks.js.map +1 -1
- package/mobile/lib/components/ContentPage/ContentPage.page.json +0 -37
- package/mobile/lib/components/OfficesAtmsMap/OfficesAtmsMapContent.d.ts +2 -3
- package/mobile/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.js +2 -2
- package/mobile/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.js.map +1 -1
- package/mobile/lib/components/Placeholder/Placeholder.js +2 -7
- package/mobile/lib/components/Placeholder/Placeholder.js.map +1 -1
- package/mobile/lib/components/TabsLayout/TabsLayout.d.ts +5 -0
- package/mobile/lib/components/TabsLayout/TabsLayout.js +30 -0
- package/mobile/lib/components/TabsLayout/TabsLayout.js.map +1 -0
- package/mobile/lib/components/TabsLayout/TabsLayoutButton.d.ts +10 -0
- package/mobile/lib/components/TabsLayout/TabsLayoutButton.js +21 -0
- package/mobile/lib/components/TabsLayout/TabsLayoutButton.js.map +1 -0
- package/mobile/lib/components/TabsLayout/TabsLayoutContent.d.ts +21 -0
- package/mobile/lib/components/TabsLayout/TabsLayoutContent.js +2 -0
- package/mobile/lib/components/TabsLayout/TabsLayoutContent.js.map +1 -0
- package/mobile/lib/components/TabsLayout/TabsLayoutRedirectTab.d.ts +6 -0
- package/mobile/lib/components/TabsLayout/TabsLayoutRedirectTab.js +15 -0
- package/mobile/lib/components/TabsLayout/TabsLayoutRedirectTab.js.map +1 -0
- package/mobile/lib/components/TabsLayout/alignTabStyle.d.ts +2 -0
- package/mobile/lib/components/TabsLayout/alignTabStyle.js +6 -0
- package/mobile/lib/components/TabsLayout/alignTabStyle.js.map +1 -0
- package/mobile/lib/setup-fixture.js +1 -1
- package/mobile/lib/setup-fixture.js.map +1 -1
- package/mobile/lib/ui-kit/Shimmer/Shimmer.d.ts +5 -0
- package/mobile/lib/ui-kit/Shimmer/Shimmer.js +11 -0
- package/mobile/lib/ui-kit/Shimmer/Shimmer.js.map +1 -0
- package/mobile/lib/ui-kit/SwipeListControl/SwipeListContainer.d.ts +2 -2
- package/mobile/lib/ui-kit/SwipeListControl/SwipeListContainer.js +2 -2
- package/mobile/lib/ui-kit/SwipeListControl/SwipeListContainer.js.map +1 -1
- package/mobile/lib/ui-kit/SwipeListControl/SwipeListItem.js +3 -2
- package/mobile/lib/ui-kit/SwipeListControl/SwipeListItem.js.map +1 -1
- package/mobile/lib/ui-kit/SwipeListControl/useSwipeListScroll.d.ts +1 -1
- package/mobile/lib/ui-kit/SwipeListControl/useSwipeListScroll.js +6 -6
- package/mobile/lib/ui-kit/SwipeListControl/useSwipeListScroll.js.map +1 -1
- package/mobile/src/components/Blocks.ts +3 -1
- package/mobile/src/components/ContentPage/ContentPage.page.json +0 -37
- package/mobile/src/components/OfficesAtmsMap/OfficesAtmsMap.ui.json +3 -0
- package/mobile/src/components/OfficesAtmsMap/OfficesAtmsMapContent.ts +2 -3
- package/mobile/src/components/OfficesAtmsMap/OfficesAtmsMapLayout.tsx +4 -8
- package/mobile/src/components/Placeholder/Placeholder.tsx +2 -19
- package/mobile/src/components/TabsLayout/TabsLayout.example.json +8 -0
- package/mobile/src/components/TabsLayout/TabsLayout.tsx +88 -0
- package/mobile/src/components/TabsLayout/TabsLayout.ui.json +11 -0
- package/mobile/src/components/TabsLayout/TabsLayoutButton.tsx +60 -0
- package/mobile/src/components/TabsLayout/TabsLayoutContent.ts +26 -0
- package/mobile/src/components/TabsLayout/TabsLayoutRedirectTab.tsx +26 -0
- package/mobile/src/components/TabsLayout/alignTabStyle.ts +7 -0
- package/mobile/src/setup-fixture.ts +1 -1
- package/mobile/src/ui-kit/Shimmer/Shimmer.tsx +29 -0
- package/mobile/src/ui-kit/SwipeListControl/SwipeListContainer.tsx +5 -4
- package/mobile/src/ui-kit/SwipeListControl/SwipeListItem.tsx +12 -3
- package/mobile/src/ui-kit/SwipeListControl/useSwipeListScroll.ts +10 -7
- package/package.json +2 -2
- package/src/components/Blocks.mobile.ts +3 -1
- package/src/components/Blocks.ts +3 -1
- package/src/components/ContentPage/ContentPage.page.json +0 -37
- package/src/components/OfficesAtmsMap/OfficesAtmsMap.fixture.mobile.tsx +4 -2
- package/src/components/OfficesAtmsMap/OfficesAtmsMap.fixture.tsx +4 -2
- package/src/components/OfficesAtmsMap/OfficesAtmsMap.ui.json +3 -0
- package/src/components/OfficesAtmsMap/OfficesAtmsMapContent.ts +2 -3
- package/src/components/OfficesAtmsMap/OfficesAtmsMapLayout.tsx +4 -8
- package/src/components/Placeholder/Placeholder.tsx +2 -19
- package/src/components/TabsLayout/TabsLayout.example.json +8 -0
- package/src/components/TabsLayout/TabsLayout.fixture.mobile.tsx +53 -0
- package/src/components/TabsLayout/TabsLayout.fixture.tsx +53 -0
- package/src/components/TabsLayout/TabsLayout.tsx +88 -0
- package/src/components/TabsLayout/TabsLayout.ui.json +11 -0
- package/src/components/TabsLayout/TabsLayoutButton.tsx +60 -0
- package/src/components/TabsLayout/TabsLayoutContent.ts +26 -0
- package/src/components/TabsLayout/TabsLayoutRedirectTab.tsx +26 -0
- package/src/components/TabsLayout/alignTabStyle.ts +7 -0
- package/src/setup-fixture.ts +1 -1
- package/src/ui-kit/Shimmer/Shimmer.tsx +29 -0
- package/src/ui-kit/SwipeListControl/SwipeListContainer.tsx +5 -4
- package/src/ui-kit/SwipeListControl/SwipeListItem.tsx +12 -3
- package/src/ui-kit/SwipeListControl/useSwipeListScroll.ts +10 -7
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { JSX } from '@redneckz/uni-jsx';
|
|
2
|
+
import { style } from '../../utils/style';
|
|
3
|
+
|
|
4
|
+
const GOLDEN_RATIO = 1.618;
|
|
5
|
+
|
|
6
|
+
export interface ShimmerProps {
|
|
7
|
+
className?: string;
|
|
8
|
+
size?: number;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export const Shimmer = JSX<ShimmerProps>(({ className, size }) => (
|
|
12
|
+
<figure className={style('m-0 mt-xl min-w-[80%]', className)}>{renderShimmer(size)}</figure>
|
|
13
|
+
));
|
|
14
|
+
|
|
15
|
+
const renderShimmer = (size = 3) =>
|
|
16
|
+
goldenSequence(100, size)
|
|
17
|
+
.map((_) => Math.floor(_))
|
|
18
|
+
.map(renderShimmerItem);
|
|
19
|
+
|
|
20
|
+
const renderShimmerItem = (width: number, index: number) => (
|
|
21
|
+
<div
|
|
22
|
+
key={String(index)}
|
|
23
|
+
style={{ width: `${width || 100}%` }}
|
|
24
|
+
className="h-4 mt-xs bg-secondary-light"
|
|
25
|
+
/>
|
|
26
|
+
);
|
|
27
|
+
|
|
28
|
+
const goldenSequence = (first: number, size: number): number[] =>
|
|
29
|
+
[first].concat(size > 0 ? goldenSequence(first / GOLDEN_RATIO, size - 1) : []);
|
|
@@ -9,16 +9,15 @@ import { SwipeListItem } from './SwipeListItem';
|
|
|
9
9
|
|
|
10
10
|
type ItemsVisibilityList = Array<IntersectionObserverEntry | undefined>;
|
|
11
11
|
|
|
12
|
-
type SwipeListItemWidthAuto = 0;
|
|
13
|
-
|
|
14
12
|
/**
|
|
15
13
|
* @title Список
|
|
16
14
|
*/
|
|
17
15
|
interface SwipeListContainerProps extends SwipeListContainerContent {
|
|
18
16
|
className?: string;
|
|
17
|
+
itemClassName?: string;
|
|
19
18
|
containerRef?: { current: HTMLDivElement | null };
|
|
20
19
|
activeIndex?: number;
|
|
21
|
-
visibleItemCount?:
|
|
20
|
+
visibleItemCount?: 0 | 1 | 2 | 3 | 4;
|
|
22
21
|
snapAlign?: 'snap-start' | 'snap-center' | 'snap-end';
|
|
23
22
|
gap?: number;
|
|
24
23
|
padding?: number;
|
|
@@ -30,7 +29,8 @@ const childStyleMap = ['min-w-full', '@lg:min-w-[50%]', '@lg:min-w-[33.3%]', '@l
|
|
|
30
29
|
|
|
31
30
|
export const SwipeListContainer = JSX<SwipeListContainerProps>(
|
|
32
31
|
({
|
|
33
|
-
className
|
|
32
|
+
className,
|
|
33
|
+
itemClassName,
|
|
34
34
|
containerRef,
|
|
35
35
|
activeIndex,
|
|
36
36
|
visibleItemCount = 0,
|
|
@@ -84,6 +84,7 @@ export const SwipeListContainer = JSX<SwipeListContainerProps>(
|
|
|
84
84
|
snapAlign,
|
|
85
85
|
visibleItemCount ? childStyleMap[visibleItemCount - 1] : '',
|
|
86
86
|
isVerticalList ? 'h-full' : '',
|
|
87
|
+
itemClassName,
|
|
87
88
|
)}
|
|
88
89
|
style={isHorizontalList ? getContainerOffset(padding / 4) : {}}
|
|
89
90
|
activeIndex={activeIndex}
|
|
@@ -4,6 +4,7 @@ import {
|
|
|
4
4
|
useIntersectionObserver,
|
|
5
5
|
type IntersectionObserverOptions,
|
|
6
6
|
} from '../../hooks/useIntersectionObserver';
|
|
7
|
+
import { style } from '../../utils/style';
|
|
7
8
|
|
|
8
9
|
/**
|
|
9
10
|
* @title Элемент списка
|
|
@@ -18,7 +19,15 @@ interface SwipeListControlItemProps {
|
|
|
18
19
|
}
|
|
19
20
|
|
|
20
21
|
export const SwipeListItem = JSX<SwipeListControlItemProps>(
|
|
21
|
-
({
|
|
22
|
+
({
|
|
23
|
+
className,
|
|
24
|
+
style: inlineStyle,
|
|
25
|
+
idx,
|
|
26
|
+
activeIndex,
|
|
27
|
+
observerOptions,
|
|
28
|
+
children,
|
|
29
|
+
onIntersection,
|
|
30
|
+
}) => {
|
|
22
31
|
const observerCallback = useCallback(
|
|
23
32
|
(entries: IntersectionObserverEntry[]) => {
|
|
24
33
|
if (entries.length && onIntersection) {
|
|
@@ -31,8 +40,8 @@ export const SwipeListItem = JSX<SwipeListControlItemProps>(
|
|
|
31
40
|
|
|
32
41
|
return (
|
|
33
42
|
<div
|
|
34
|
-
className={
|
|
35
|
-
style={
|
|
43
|
+
className={style('inline-block snap-always box-border', className)}
|
|
44
|
+
style={inlineStyle}
|
|
36
45
|
aria-current={Boolean(idx === activeIndex)}
|
|
37
46
|
ref={ref}
|
|
38
47
|
>
|
|
@@ -9,7 +9,7 @@ import { scrollToStart } from './scrollToStart';
|
|
|
9
9
|
export interface SwipeListScroll {
|
|
10
10
|
scrollLeft: () => void;
|
|
11
11
|
scrollRight: () => void;
|
|
12
|
-
scrollTo: (idx: number) => void;
|
|
12
|
+
scrollTo: (idx: number, options?: ScrollIntoViewOptions) => void;
|
|
13
13
|
canScrollLeft: boolean;
|
|
14
14
|
canScrollRight: boolean;
|
|
15
15
|
visibleIndicesRange: [number, number];
|
|
@@ -70,13 +70,16 @@ export const useSwipeListScroll = <E extends HTMLElement>({
|
|
|
70
70
|
}, [itemCount, canScrollRight]);
|
|
71
71
|
|
|
72
72
|
const scrollTo = useCallback(
|
|
73
|
-
(
|
|
73
|
+
(
|
|
74
|
+
idx: number,
|
|
75
|
+
options = {
|
|
76
|
+
behavior: 'smooth',
|
|
77
|
+
block: 'nearest',
|
|
78
|
+
inline: 'center',
|
|
79
|
+
} as ScrollIntoViewOptions,
|
|
80
|
+
) => {
|
|
74
81
|
if (containerRef?.current) {
|
|
75
|
-
containerRef.current.children[idx]?.scrollIntoView(
|
|
76
|
-
behavior: 'smooth',
|
|
77
|
-
block: 'nearest',
|
|
78
|
-
inline: 'center',
|
|
79
|
-
});
|
|
82
|
+
containerRef.current.children[idx]?.scrollIntoView(options);
|
|
80
83
|
}
|
|
81
84
|
},
|
|
82
85
|
[containerRef],
|