@redneckz/wildless-cms-uni-blocks 0.14.209 → 0.14.211
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/bundle.umd.js +15 -16
- package/bundle/bundle.umd.min.js +1 -1
- package/bundle/components/CarouselLinks/ArrowIconStyles.d.ts +2 -0
- package/bundle/components/CarouselLinks/ArrowIconStyles.mobile.d.ts +2 -0
- package/bundle/components/CarouselLinks/CarouselLinkButton.d.ts +2 -2
- package/dist/components/Carousel/CarouselScrollButtons.js +1 -1
- package/dist/components/Carousel/CarouselScrollButtons.js.map +1 -1
- package/dist/components/CarouselLinks/ArrowIconStyles.d.ts +2 -0
- package/dist/components/CarouselLinks/ArrowIconStyles.js +5 -0
- package/dist/components/CarouselLinks/ArrowIconStyles.js.map +1 -0
- package/dist/components/CarouselLinks/ArrowIconStyles.mobile.d.ts +2 -0
- package/dist/components/CarouselLinks/ArrowIconStyles.mobile.js +5 -0
- package/dist/components/CarouselLinks/ArrowIconStyles.mobile.js.map +1 -0
- package/dist/components/CarouselLinks/CarouselLinkButton.d.ts +2 -2
- package/dist/components/CarouselLinks/CarouselLinkButton.js +5 -4
- package/dist/components/CarouselLinks/CarouselLinkButton.js.map +1 -1
- package/dist/components/CarouselLinks/CarouselLinks.js +4 -7
- package/dist/components/CarouselLinks/CarouselLinks.js.map +1 -1
- package/dist/components/OfficesAtmsMap/OfficesAtmsMapLayout.js +1 -1
- package/dist/components/OfficesAtmsMap/OfficesAtmsMapLayout.js.map +1 -1
- package/dist/components/SafeDepositRental/utils.js +1 -1
- package/dist/components/SafeDepositRental/utils.js.map +1 -1
- package/lib/common.css +1 -1
- package/lib/components/Carousel/CarouselScrollButtons.js +1 -1
- package/lib/components/Carousel/CarouselScrollButtons.js.map +1 -1
- package/lib/components/CarouselLinks/ArrowIconStyles.d.ts +2 -0
- package/lib/components/CarouselLinks/ArrowIconStyles.js +3 -0
- package/lib/components/CarouselLinks/ArrowIconStyles.js.map +1 -0
- package/lib/components/CarouselLinks/ArrowIconStyles.mobile.d.ts +2 -0
- package/lib/components/CarouselLinks/ArrowIconStyles.mobile.js +3 -0
- package/lib/components/CarouselLinks/ArrowIconStyles.mobile.js.map +1 -0
- package/lib/components/CarouselLinks/CarouselLinkButton.d.ts +2 -2
- package/lib/components/CarouselLinks/CarouselLinkButton.js +5 -4
- package/lib/components/CarouselLinks/CarouselLinkButton.js.map +1 -1
- package/lib/components/CarouselLinks/CarouselLinks.js +4 -7
- package/lib/components/CarouselLinks/CarouselLinks.js.map +1 -1
- package/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.js +1 -1
- package/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.js.map +1 -1
- package/lib/components/SafeDepositRental/utils.js +1 -1
- package/lib/components/SafeDepositRental/utils.js.map +1 -1
- package/mobile/bundle/bundle.umd.js +35 -31
- package/mobile/bundle/bundle.umd.min.js +1 -1
- package/mobile/bundle/components/CarouselLinks/ArrowIconStyles.d.ts +2 -0
- package/mobile/dist/components/Carousel/CarouselScrollButtons.js +1 -1
- package/mobile/dist/components/Carousel/CarouselScrollButtons.js.map +1 -1
- package/mobile/dist/components/CarouselLinks/ArrowIconStyles.d.ts +2 -0
- package/mobile/dist/components/CarouselLinks/ArrowIconStyles.js +5 -0
- package/mobile/dist/components/CarouselLinks/ArrowIconStyles.js.map +1 -0
- package/mobile/dist/components/CarouselLinks/CarouselLinkButton.js +5 -2
- package/mobile/dist/components/CarouselLinks/CarouselLinkButton.js.map +1 -1
- package/mobile/dist/components/CarouselLinks/CarouselLinks.js +8 -11
- package/mobile/dist/components/CarouselLinks/CarouselLinks.js.map +1 -1
- package/mobile/dist/components/OfficesAtmsMap/OfficesAtmsMapLayout.js +1 -1
- package/mobile/dist/components/OfficesAtmsMap/OfficesAtmsMapLayout.js.map +1 -1
- package/mobile/dist/components/SafeDepositRental/utils.js +1 -1
- package/mobile/dist/components/SafeDepositRental/utils.js.map +1 -1
- package/mobile/lib/common.css +1 -1
- package/mobile/lib/components/Carousel/CarouselScrollButtons.js +1 -1
- package/mobile/lib/components/Carousel/CarouselScrollButtons.js.map +1 -1
- package/mobile/lib/components/CarouselLinks/ArrowIconStyles.d.ts +2 -0
- package/mobile/lib/components/CarouselLinks/ArrowIconStyles.js +3 -0
- package/mobile/lib/components/CarouselLinks/ArrowIconStyles.js.map +1 -0
- package/mobile/lib/components/CarouselLinks/CarouselLinkButton.js +5 -2
- package/mobile/lib/components/CarouselLinks/CarouselLinkButton.js.map +1 -1
- package/mobile/lib/components/CarouselLinks/CarouselLinks.js +8 -11
- package/mobile/lib/components/CarouselLinks/CarouselLinks.js.map +1 -1
- package/mobile/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.js +1 -1
- package/mobile/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.js.map +1 -1
- package/mobile/lib/components/SafeDepositRental/utils.js +1 -1
- package/mobile/lib/components/SafeDepositRental/utils.js.map +1 -1
- package/mobile/src/components/Carousel/CarouselScrollButtons.tsx +3 -3
- package/mobile/src/components/CarouselLinks/ArrowIconStyles.ts +2 -0
- package/mobile/src/components/CarouselLinks/CarouselLinkButton.tsx +47 -19
- package/mobile/src/components/CarouselLinks/CarouselLinks.tsx +45 -55
- package/mobile/src/components/OfficesAtmsMap/OfficesAtmsMapLayout.tsx +1 -1
- package/mobile/src/components/SafeDepositRental/utils.ts +1 -1
- package/package.json +1 -1
- package/src/components/Carousel/CarouselScrollButtons.tsx +3 -3
- package/src/components/CarouselLinks/ArrowIconStyles.mobile.ts +2 -0
- package/src/components/CarouselLinks/ArrowIconStyles.ts +2 -0
- package/src/components/CarouselLinks/CarouselLinkButton.tsx +34 -18
- package/src/components/CarouselLinks/CarouselLinks.fixture.mobile.tsx +2 -2
- package/src/components/CarouselLinks/CarouselLinks.tsx +11 -14
- package/src/components/OfficesAtmsMap/OfficesAtmsMapLayout.tsx +1 -1
- package/src/components/SafeDepositRental/utils.ts +1 -1
- package/bundle/components/CarouselLinks/CarouselLinkButton.mobile.d.ts +0 -5
- package/bundle/components/CarouselLinks/CarouselLinks.mobile.d.ts +0 -5
- package/dist/components/CarouselLinks/CarouselLinkButton.mobile.d.ts +0 -5
- package/dist/components/CarouselLinks/CarouselLinkButton.mobile.js +0 -15
- package/dist/components/CarouselLinks/CarouselLinkButton.mobile.js.map +0 -1
- package/dist/components/CarouselLinks/CarouselLinks.mobile.d.ts +0 -5
- package/dist/components/CarouselLinks/CarouselLinks.mobile.js +0 -20
- package/dist/components/CarouselLinks/CarouselLinks.mobile.js.map +0 -1
- package/lib/components/CarouselLinks/CarouselLinkButton.mobile.d.ts +0 -5
- package/lib/components/CarouselLinks/CarouselLinkButton.mobile.js +0 -13
- package/lib/components/CarouselLinks/CarouselLinkButton.mobile.js.map +0 -1
- package/lib/components/CarouselLinks/CarouselLinks.mobile.d.ts +0 -5
- package/lib/components/CarouselLinks/CarouselLinks.mobile.js +0 -18
- package/lib/components/CarouselLinks/CarouselLinks.mobile.js.map +0 -1
- package/src/components/CarouselLinks/CarouselLinkButton.mobile.tsx +0 -40
- package/src/components/CarouselLinks/CarouselLinks.mobile.tsx +0 -75
|
@@ -1,11 +1,16 @@
|
|
|
1
1
|
import { JSX } from '@redneckz/uni-jsx';
|
|
2
2
|
import { useLink } from '../../hooks/useLink';
|
|
3
|
-
import { Icon } from '../../ui-kit/Icon/Icon';
|
|
4
3
|
import { Img } from '../../ui-kit/Img/Img';
|
|
5
4
|
import { Text } from '../../ui-kit/Text/Text';
|
|
6
5
|
import { style } from '../../utils/style';
|
|
6
|
+
import { IconSize, IconVersion } from './ArrowIconStyles';
|
|
7
7
|
import { type CarouselLinkProps } from './CarouselLinksContent';
|
|
8
8
|
|
|
9
|
+
const LINK_CLASS_NAME = `absolute border
|
|
10
|
+
bg-white flex items-center justify-between group-hover/link:text-primary-main`;
|
|
11
|
+
|
|
12
|
+
const LINK_BORDER_CLASS_NAME = 'absolute w-full h-full border border-white';
|
|
13
|
+
|
|
9
14
|
export type CarouselLinkButtonProps = CarouselLinkProps & {
|
|
10
15
|
className?: string;
|
|
11
16
|
};
|
|
@@ -16,24 +21,47 @@ export const CarouselLinkButton = JSX<CarouselLinkButtonProps>(
|
|
|
16
21
|
const { text, href, target, onClick } = link(linkProps);
|
|
17
22
|
|
|
18
23
|
return text ? (
|
|
19
|
-
<div
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
)
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
24
|
+
<div
|
|
25
|
+
className={style(
|
|
26
|
+
'flex relative group/link pl-s pb-s sm:pr-2xs min-w-64 sm:min-w-72',
|
|
27
|
+
className,
|
|
28
|
+
)}
|
|
29
|
+
>
|
|
30
|
+
<div className="relative min-h-16 w-full pb-lg sm:pb-0">
|
|
31
|
+
<a
|
|
32
|
+
className={style(
|
|
33
|
+
LINK_CLASS_NAME,
|
|
34
|
+
'flex rounded-md lg:rounded-none w-full w-full p-lg whitespace-nowrap z-10',
|
|
35
|
+
)}
|
|
36
|
+
role="link"
|
|
37
|
+
href={href}
|
|
38
|
+
target={target}
|
|
39
|
+
onClick={onClick}
|
|
40
|
+
>
|
|
41
|
+
<div className="flex items-center space-x-lg">
|
|
42
|
+
{icon ? (
|
|
43
|
+
<Img
|
|
44
|
+
imageClassName="text-green-dark"
|
|
45
|
+
image={icon}
|
|
46
|
+
width={IconSize}
|
|
47
|
+
height={IconSize}
|
|
48
|
+
/>
|
|
49
|
+
) : null}
|
|
50
|
+
<Text size="text-l" font="font-light" color="text-primary-text">
|
|
51
|
+
{text}
|
|
52
|
+
</Text>
|
|
53
|
+
</div>
|
|
54
|
+
<Img
|
|
55
|
+
className="group-hover/link:brightness-100 sm:ml-2xs"
|
|
56
|
+
image={{ icon: 'ArrowRightIcon', iconVersion: IconVersion }}
|
|
57
|
+
imageClassName="group-hover/link:text-primary-main"
|
|
58
|
+
width={IconSize}
|
|
59
|
+
height={IconSize}
|
|
60
|
+
/>
|
|
61
|
+
</a>
|
|
62
|
+
<div className={style(LINK_BORDER_CLASS_NAME, '-bottom-1 -left-1')} />
|
|
63
|
+
<div className={style(LINK_BORDER_CLASS_NAME, '-bottom-2 -left-2')} />
|
|
64
|
+
</div>
|
|
37
65
|
</div>
|
|
38
66
|
) : null;
|
|
39
67
|
},
|
|
@@ -1,75 +1,65 @@
|
|
|
1
1
|
import { JSX } from '@redneckz/uni-jsx';
|
|
2
2
|
import { type LinkProps } from '../../model/LinkProps';
|
|
3
3
|
import { BlockWrapper } from '../../ui-kit/BlockWrapper';
|
|
4
|
-
import { DefaultFoldButton } from '../../ui-kit/Foldable/DefaultFoldButton';
|
|
5
|
-
import { Foldable } from '../../ui-kit/Foldable/Foldable';
|
|
6
|
-
import { type FoldablePartProps } from '../../ui-kit/Foldable/FoldablePartProps';
|
|
7
|
-
import { FoldableSection } from '../../ui-kit/Foldable/FoldableSection';
|
|
8
4
|
import { type UniBlockProps } from '../../UniBlock/UniBlockProps';
|
|
5
|
+
import { style } from '../../utils/style';
|
|
6
|
+
import { Carousel } from '../Carousel/Carousel';
|
|
9
7
|
import { Headline } from '../Headline/Headline';
|
|
10
8
|
import { CarouselLinkButton } from './CarouselLinkButton';
|
|
11
9
|
import { type CarouselLinksContent } from './CarouselLinksContent';
|
|
10
|
+
// import { MAX_LINKS_COUNT } from './maxLinksCount';
|
|
12
11
|
|
|
13
12
|
export interface CarouselLinksProps extends CarouselLinksContent, UniBlockProps {}
|
|
14
13
|
|
|
15
14
|
export const CarouselLinks = JSX<CarouselLinksProps>(
|
|
16
|
-
({ className, additionalDescription, description, links
|
|
17
|
-
<BlockWrapper className={className} {...rest}>
|
|
18
|
-
<div>
|
|
19
|
-
<
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
15
|
+
({ className, additionalDescription, description, links, title, ...rest }) => (
|
|
16
|
+
<BlockWrapper defaultPadding="p-5xl" className={style('overflow-hidden', className)} {...rest}>
|
|
17
|
+
<div className="flex flex-col m:flex-row gap-s justify-between">
|
|
18
|
+
<div className="w-full m:w-1/3">
|
|
19
|
+
<Headline
|
|
20
|
+
isEmbedded={true}
|
|
21
|
+
title={title}
|
|
22
|
+
description={description}
|
|
23
|
+
as="h1"
|
|
24
|
+
align="text-left"
|
|
25
|
+
/>
|
|
26
|
+
<Headline
|
|
27
|
+
className="pt-m"
|
|
28
|
+
description={additionalDescription}
|
|
29
|
+
align="text-left"
|
|
30
|
+
isEmbedded={true}
|
|
31
|
+
/>
|
|
32
|
+
</div>
|
|
33
|
+
{links?.length ? renderLinks(links, 'm:justify-self-end m:pt-s w-full m:w-2/3') : null}
|
|
32
34
|
</div>
|
|
33
|
-
{links?.length ? renderLinks(links) : null}
|
|
34
35
|
</BlockWrapper>
|
|
35
36
|
),
|
|
36
37
|
);
|
|
37
38
|
|
|
38
|
-
const renderLinks = (links: LinkProps[],
|
|
39
|
-
const
|
|
40
|
-
<CarouselLinkButton key={String(index)} {...link} />
|
|
41
|
-
));
|
|
42
|
-
|
|
43
|
-
const [visibleLinks, hiddenLinks] =
|
|
44
|
-
visibleLinksNum > 0
|
|
45
|
-
? [carouselLinks.slice(0, visibleLinksNum), carouselLinks.slice(visibleLinksNum)]
|
|
46
|
-
: [carouselLinks, []];
|
|
39
|
+
const renderLinks = (links: LinkProps[], className = '') => {
|
|
40
|
+
const itemCount = Math.ceil(links.length / 3);
|
|
47
41
|
|
|
48
42
|
return (
|
|
49
|
-
<
|
|
50
|
-
{
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
43
|
+
<Carousel
|
|
44
|
+
className={className}
|
|
45
|
+
version="secondary"
|
|
46
|
+
itemCount={itemCount}
|
|
47
|
+
arrowsPadded={false}
|
|
48
|
+
padding="p-0"
|
|
49
|
+
visibleItemCount={0}
|
|
50
|
+
>
|
|
51
|
+
{Array.from({ length: itemCount })
|
|
52
|
+
.fill(null)
|
|
53
|
+
.map((_, groupIndex) => (
|
|
54
|
+
<div
|
|
55
|
+
key={String(groupIndex)}
|
|
56
|
+
className={style('flex flex-wrap gap-2xs m:justify-center')}
|
|
57
|
+
>
|
|
58
|
+
{links.slice(groupIndex * 3, (groupIndex + 1) * 3).map((link, index) => (
|
|
59
|
+
<CarouselLinkButton key={String(index)} {...link} />
|
|
60
|
+
))}
|
|
61
|
+
</div>
|
|
62
|
+
))}
|
|
63
|
+
</Carousel>
|
|
64
64
|
);
|
|
65
65
|
};
|
|
66
|
-
|
|
67
|
-
const renderFoldButton = ({ isUnfolded, onToggle }: FoldablePartProps) =>
|
|
68
|
-
isUnfolded ? null : (
|
|
69
|
-
<DefaultFoldButton
|
|
70
|
-
className="border-t-main-divider/50"
|
|
71
|
-
icon="PlusIcon"
|
|
72
|
-
label="Показать еще"
|
|
73
|
-
onClick={onToggle}
|
|
74
|
-
/>
|
|
75
|
-
);
|
|
@@ -48,7 +48,7 @@ export const OfficesAtmsMapLayout = JSX<OfficesAtmsMapLayoutProps<Branch | Atm>>
|
|
|
48
48
|
|
|
49
49
|
const _points = _filteredItems
|
|
50
50
|
.map((_) => ({
|
|
51
|
-
coords: [Number(_.gpsLatitude), Number(_.gpsLongitude)]
|
|
51
|
+
coords: [Number(_.gpsLatitude), Number(_.gpsLongitude)]?.filter(Boolean),
|
|
52
52
|
content: getBalloon(_),
|
|
53
53
|
}))
|
|
54
54
|
.filter((_) => _.coords && _.coords.length === 2);
|
|
@@ -5,7 +5,7 @@ export const getCoordinates = (data?: Branch | Branch[]): BalloonPoints[] => {
|
|
|
5
5
|
if (Array.isArray(data)) {
|
|
6
6
|
return data
|
|
7
7
|
.map((_) => ({
|
|
8
|
-
coords: [_.gpsLatitude, _.gpsLongitude]
|
|
8
|
+
coords: [Number(_.gpsLatitude), Number(_.gpsLongitude)]?.filter(Boolean),
|
|
9
9
|
}))
|
|
10
10
|
.filter((_) => _.coords && _.coords.length === 2);
|
|
11
11
|
}
|
package/package.json
CHANGED
|
@@ -51,17 +51,17 @@ export const CarouselScrollButtons = JSX<CarouselScrollButtonsProps>(
|
|
|
51
51
|
}, [scrollRight, onScrollRight, hasEdgeBlocks, canScrollLeft, activeIndex, itemCount]);
|
|
52
52
|
|
|
53
53
|
return (
|
|
54
|
-
<div className="hidden
|
|
54
|
+
<div className="m:hidden block">
|
|
55
55
|
{renderBlur(scroll)}
|
|
56
56
|
{canMoveLeft ? (
|
|
57
57
|
<ScrollLeftButton
|
|
58
|
-
className={style(scrollButtonStyle, arrowsPadded ? 'left-1
|
|
58
|
+
className={style(scrollButtonStyle, arrowsPadded ? 'left-1 m:left-8' : 'left-0')}
|
|
59
59
|
onClick={handleScrollLeft}
|
|
60
60
|
/>
|
|
61
61
|
) : null}
|
|
62
62
|
{canMoveRight ? (
|
|
63
63
|
<ScrollRightButton
|
|
64
|
-
className={style(scrollButtonStyle, arrowsPadded ? 'right-1
|
|
64
|
+
className={style(scrollButtonStyle, arrowsPadded ? 'right-1 m:right-8' : 'right-0')}
|
|
65
65
|
onClick={handleScrollRight}
|
|
66
66
|
/>
|
|
67
67
|
) : null}
|
|
@@ -1,50 +1,66 @@
|
|
|
1
1
|
import { JSX } from '@redneckz/uni-jsx';
|
|
2
2
|
import { useLink } from '../../hooks/useLink';
|
|
3
|
-
import { type LinkProps } from '../../model/LinkProps';
|
|
4
3
|
import { Img } from '../../ui-kit/Img/Img';
|
|
5
4
|
import { Text } from '../../ui-kit/Text/Text';
|
|
6
5
|
import { style } from '../../utils/style';
|
|
6
|
+
import { IconSize, IconVersion } from './ArrowIconStyles';
|
|
7
|
+
import { type CarouselLinkProps } from './CarouselLinksContent';
|
|
7
8
|
|
|
8
9
|
const LINK_CLASS_NAME = `absolute border
|
|
9
|
-
bg-white flex justify-between group-hover/link:text-primary-main`;
|
|
10
|
+
bg-white flex items-center justify-between group-hover/link:text-primary-main`;
|
|
10
11
|
|
|
11
|
-
const LINK_BORDER_CLASS_NAME = '
|
|
12
|
+
const LINK_BORDER_CLASS_NAME = 'absolute w-full h-full border border-white';
|
|
12
13
|
|
|
13
|
-
export type CarouselLinkButtonProps =
|
|
14
|
+
export type CarouselLinkButtonProps = CarouselLinkProps & {
|
|
14
15
|
className?: string;
|
|
15
16
|
};
|
|
16
17
|
|
|
17
18
|
export const CarouselLinkButton = JSX<CarouselLinkButtonProps>(
|
|
18
|
-
({ className = '', ...linkProps }) => {
|
|
19
|
+
({ className = '', icon, ...linkProps }) => {
|
|
19
20
|
const link = useLink();
|
|
20
21
|
const { text, href, target, onClick } = link(linkProps);
|
|
21
22
|
|
|
22
23
|
return text ? (
|
|
23
|
-
<div
|
|
24
|
-
|
|
24
|
+
<div
|
|
25
|
+
className={style(
|
|
26
|
+
'flex relative group/link pl-s pb-s sm:pr-2xs min-w-64 sm:min-w-72',
|
|
27
|
+
className,
|
|
28
|
+
)}
|
|
29
|
+
>
|
|
30
|
+
<div className="relative min-h-16 w-full pb-lg sm:pb-0">
|
|
25
31
|
<a
|
|
26
32
|
className={style(
|
|
27
33
|
LINK_CLASS_NAME,
|
|
28
|
-
'rounded-md lg:rounded-none w-full p-lg whitespace-nowrap z-10',
|
|
34
|
+
'flex rounded-md lg:rounded-none w-full w-full p-lg whitespace-nowrap z-10',
|
|
29
35
|
)}
|
|
30
36
|
role="link"
|
|
31
37
|
href={href}
|
|
32
38
|
target={target}
|
|
33
39
|
onClick={onClick}
|
|
34
40
|
>
|
|
35
|
-
<
|
|
36
|
-
{
|
|
37
|
-
|
|
41
|
+
<div className="flex items-center space-x-lg">
|
|
42
|
+
{icon ? (
|
|
43
|
+
<Img
|
|
44
|
+
imageClassName="text-green-dark"
|
|
45
|
+
image={icon}
|
|
46
|
+
width={IconSize}
|
|
47
|
+
height={IconSize}
|
|
48
|
+
/>
|
|
49
|
+
) : null}
|
|
50
|
+
<Text size="text-l" font="font-light" color="text-primary-text">
|
|
51
|
+
{text}
|
|
52
|
+
</Text>
|
|
53
|
+
</div>
|
|
38
54
|
<Img
|
|
39
|
-
className="group-hover/link:brightness-100
|
|
40
|
-
image={{ icon: 'ArrowRightIcon', iconVersion:
|
|
41
|
-
imageClassName="group-hover/link:text-primary-main
|
|
42
|
-
width=
|
|
43
|
-
height=
|
|
55
|
+
className="group-hover/link:brightness-100 sm:ml-2xs"
|
|
56
|
+
image={{ icon: 'ArrowRightIcon', iconVersion: IconVersion }}
|
|
57
|
+
imageClassName="group-hover/link:text-primary-main"
|
|
58
|
+
width={IconSize}
|
|
59
|
+
height={IconSize}
|
|
44
60
|
/>
|
|
45
61
|
</a>
|
|
46
|
-
<div className={style(LINK_BORDER_CLASS_NAME, '-bottom-1
|
|
47
|
-
<div className={style(LINK_BORDER_CLASS_NAME, '-bottom-
|
|
62
|
+
<div className={style(LINK_BORDER_CLASS_NAME, '-bottom-1 -left-1')} />
|
|
63
|
+
<div className={style(LINK_BORDER_CLASS_NAME, '-bottom-2 -left-2')} />
|
|
48
64
|
</div>
|
|
49
65
|
</div>
|
|
50
66
|
) : null;
|
|
@@ -25,7 +25,7 @@ const links = [
|
|
|
25
25
|
icon: { icon: 'BriefcaseIcon' },
|
|
26
26
|
},
|
|
27
27
|
{
|
|
28
|
-
text: '
|
|
28
|
+
text: 'Меры безопасности',
|
|
29
29
|
href: '#',
|
|
30
30
|
icon: { icon: 'ShieldTickIcon' },
|
|
31
31
|
},
|
|
@@ -55,7 +55,7 @@ const links = [
|
|
|
55
55
|
icon: { icon: 'ChartRoundIcon' },
|
|
56
56
|
},
|
|
57
57
|
{
|
|
58
|
-
text: '
|
|
58
|
+
text: 'Меры безопасности',
|
|
59
59
|
href: '#',
|
|
60
60
|
icon: { icon: 'CopyIcon' },
|
|
61
61
|
},
|
|
@@ -7,15 +7,15 @@ import { Carousel } from '../Carousel/Carousel';
|
|
|
7
7
|
import { Headline } from '../Headline/Headline';
|
|
8
8
|
import { CarouselLinkButton } from './CarouselLinkButton';
|
|
9
9
|
import { type CarouselLinksContent } from './CarouselLinksContent';
|
|
10
|
-
import { MAX_LINKS_COUNT } from './maxLinksCount';
|
|
10
|
+
// import { MAX_LINKS_COUNT } from './maxLinksCount';
|
|
11
11
|
|
|
12
12
|
export interface CarouselLinksProps extends CarouselLinksContent, UniBlockProps {}
|
|
13
13
|
|
|
14
14
|
export const CarouselLinks = JSX<CarouselLinksProps>(
|
|
15
15
|
({ className, additionalDescription, description, links, title, ...rest }) => (
|
|
16
|
-
<BlockWrapper className={style('overflow-hidden', className)} {...rest}>
|
|
17
|
-
<div className="flex flex-col
|
|
18
|
-
<div>
|
|
16
|
+
<BlockWrapper defaultPadding="p-5xl" className={style('overflow-hidden', className)} {...rest}>
|
|
17
|
+
<div className="flex flex-col m:flex-row gap-s justify-between">
|
|
18
|
+
<div className="w-full m:w-1/3">
|
|
19
19
|
<Headline
|
|
20
20
|
isEmbedded={true}
|
|
21
21
|
title={title}
|
|
@@ -30,14 +30,14 @@ export const CarouselLinks = JSX<CarouselLinksProps>(
|
|
|
30
30
|
isEmbedded={true}
|
|
31
31
|
/>
|
|
32
32
|
</div>
|
|
33
|
-
{links?.length ? renderLinks(links, '
|
|
33
|
+
{links?.length ? renderLinks(links, 'm:justify-self-end m:pt-s w-full m:w-2/3') : null}
|
|
34
34
|
</div>
|
|
35
35
|
</BlockWrapper>
|
|
36
36
|
),
|
|
37
37
|
);
|
|
38
38
|
|
|
39
39
|
const renderLinks = (links: LinkProps[], className = '') => {
|
|
40
|
-
const itemCount = Math.ceil(links.length /
|
|
40
|
+
const itemCount = Math.ceil(links.length / 3);
|
|
41
41
|
|
|
42
42
|
return (
|
|
43
43
|
<Carousel
|
|
@@ -46,21 +46,18 @@ const renderLinks = (links: LinkProps[], className = '') => {
|
|
|
46
46
|
itemCount={itemCount}
|
|
47
47
|
arrowsPadded={false}
|
|
48
48
|
padding="p-0"
|
|
49
|
+
visibleItemCount={0}
|
|
49
50
|
>
|
|
50
51
|
{Array.from({ length: itemCount })
|
|
51
52
|
.fill(null)
|
|
52
53
|
.map((_, groupIndex) => (
|
|
53
54
|
<div
|
|
54
55
|
key={String(groupIndex)}
|
|
55
|
-
className={style(
|
|
56
|
-
'flex flex-wrap gap-2xs self-start xl:justify-center @5xl:grid @5xl:grid-cols-2',
|
|
57
|
-
)}
|
|
56
|
+
className={style('flex flex-wrap gap-2xs m:justify-center')}
|
|
58
57
|
>
|
|
59
|
-
{links
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
<CarouselLinkButton key={String(index)} {...link} />
|
|
63
|
-
))}
|
|
58
|
+
{links.slice(groupIndex * 3, (groupIndex + 1) * 3).map((link, index) => (
|
|
59
|
+
<CarouselLinkButton key={String(index)} {...link} />
|
|
60
|
+
))}
|
|
64
61
|
</div>
|
|
65
62
|
))}
|
|
66
63
|
</Carousel>
|
|
@@ -48,7 +48,7 @@ export const OfficesAtmsMapLayout = JSX<OfficesAtmsMapLayoutProps<Branch | Atm>>
|
|
|
48
48
|
|
|
49
49
|
const _points = _filteredItems
|
|
50
50
|
.map((_) => ({
|
|
51
|
-
coords: [Number(_.gpsLatitude), Number(_.gpsLongitude)]
|
|
51
|
+
coords: [Number(_.gpsLatitude), Number(_.gpsLongitude)]?.filter(Boolean),
|
|
52
52
|
content: getBalloon(_),
|
|
53
53
|
}))
|
|
54
54
|
.filter((_) => _.coords && _.coords.length === 2);
|
|
@@ -5,7 +5,7 @@ export const getCoordinates = (data?: Branch | Branch[]): BalloonPoints[] => {
|
|
|
5
5
|
if (Array.isArray(data)) {
|
|
6
6
|
return data
|
|
7
7
|
.map((_) => ({
|
|
8
|
-
coords: [_.gpsLatitude, _.gpsLongitude]
|
|
8
|
+
coords: [Number(_.gpsLatitude), Number(_.gpsLongitude)]?.filter(Boolean),
|
|
9
9
|
}))
|
|
10
10
|
.filter((_) => _.coords && _.coords.length === 2);
|
|
11
11
|
}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { type CarouselLinkProps } from './CarouselLinksContent';
|
|
2
|
-
export declare type CarouselLinkButtonProps = CarouselLinkProps & {
|
|
3
|
-
className?: string;
|
|
4
|
-
};
|
|
5
|
-
export declare const CarouselLinkButton: import("@redneckz/uni-jsx").UNIComponent<CarouselLinkButtonProps, any, any>;
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { type UniBlockProps } from '../../UniBlock/UniBlockProps';
|
|
2
|
-
import { type CarouselLinksContent } from './CarouselLinksContent';
|
|
3
|
-
export interface CarouselLinksProps extends CarouselLinksContent, UniBlockProps {
|
|
4
|
-
}
|
|
5
|
-
export declare const CarouselLinks: import("@redneckz/uni-jsx").UNIComponent<CarouselLinksProps, any, any>;
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { type CarouselLinkProps } from './CarouselLinksContent';
|
|
2
|
-
export declare type CarouselLinkButtonProps = CarouselLinkProps & {
|
|
3
|
-
className?: string;
|
|
4
|
-
};
|
|
5
|
-
export declare const CarouselLinkButton: import("@redneckz/uni-jsx").UNIComponent<CarouselLinkButtonProps, any, any>;
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
2
|
-
exports.CarouselLinkButton = void 0;
|
|
3
|
-
const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
|
|
4
|
-
const uni_jsx_1 = require("@redneckz/uni-jsx");
|
|
5
|
-
const useLink_1 = require("../../hooks/useLink");
|
|
6
|
-
const Icon_1 = require("../../ui-kit/Icon/Icon");
|
|
7
|
-
const Img_1 = require("../../ui-kit/Img/Img");
|
|
8
|
-
const Text_1 = require("../../ui-kit/Text/Text");
|
|
9
|
-
const style_1 = require("../../utils/style");
|
|
10
|
-
exports.CarouselLinkButton = (0, uni_jsx_1.JSX)(({ className = '', icon, ...linkProps }) => {
|
|
11
|
-
const link = (0, useLink_1.useLink)();
|
|
12
|
-
const { text, href, target, onClick } = link(linkProps);
|
|
13
|
-
return text ? ((0, jsx_runtime_1.jsx)("div", { className: (0, style_1.style)('w-full pb-lg', className), children: (0, jsx_runtime_1.jsxs)("a", { className: "bg-white flex justify-between rounded-md w-full p-lg whitespace-nowrap", role: "link", href: href, target: target, onClick: onClick, children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex items-center space-x-lg", children: [icon ? ((0, jsx_runtime_1.jsx)(Img_1.Img, { imageClassName: "text-green-dark", image: icon, width: "20", height: "20" })) : null, (0, jsx_runtime_1.jsx)(Text_1.Text, { size: "text-l", font: "font-light", color: "text-primary-text", children: text })] }), (0, jsx_runtime_1.jsx)(Icon_1.Icon, { className: "text-green", name: "ArrowRightIcon", width: "20", height: "20" })] }) })) : null;
|
|
14
|
-
});
|
|
15
|
-
//# sourceMappingURL=CarouselLinkButton.mobile.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CarouselLinkButton.mobile.js","sourceRoot":"","sources":["../../../src/components/CarouselLinks/CarouselLinkButton.mobile.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,iDAA8C;AAC9C,iDAA8C;AAC9C,8CAA2C;AAC3C,iDAA8C;AAC9C,6CAA0C;AAO7B,QAAA,kBAAkB,GAAG,IAAA,aAAG,EACnC,CAAC,EAAE,SAAS,GAAG,EAAE,EAAE,IAAI,EAAE,GAAG,SAAS,EAAE,EAAE,EAAE;IACzC,MAAM,IAAI,GAAG,IAAA,iBAAO,GAAE,CAAC;IACvB,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;IAExD,OAAO,IAAI,CAAC,CAAC,CAAC,CACZ,gCAAK,SAAS,EAAE,IAAA,aAAK,EAAC,cAAc,EAAE,SAAS,CAAC,YAC9C,+BACE,SAAS,EAAC,wEAAwE,EAClF,IAAI,EAAC,MAAM,EACX,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,aAEhB,iCAAK,SAAS,EAAC,8BAA8B,aAC1C,IAAI,CAAC,CAAC,CAAC,CACN,uBAAC,SAAG,IAAC,cAAc,EAAC,iBAAiB,EAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,GAAG,CAC7E,CAAC,CAAC,CAAC,IAAI,EACR,uBAAC,WAAI,IAAC,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAC,YAAY,EAAC,KAAK,EAAC,mBAAmB,YAC5D,IAAI,GACA,IACH,EACN,uBAAC,WAAI,IAAC,SAAS,EAAC,YAAY,EAAC,IAAI,EAAC,gBAAgB,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,GAAG,IAC1E,GACA,CACP,CAAC,CAAC,CAAC,IAAI,CAAC;AACX,CAAC,CACF,CAAC"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { type UniBlockProps } from '../../UniBlock/UniBlockProps';
|
|
2
|
-
import { type CarouselLinksContent } from './CarouselLinksContent';
|
|
3
|
-
export interface CarouselLinksProps extends CarouselLinksContent, UniBlockProps {
|
|
4
|
-
}
|
|
5
|
-
export declare const CarouselLinks: import("@redneckz/uni-jsx").UNIComponent<CarouselLinksProps, any, any>;
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
2
|
-
exports.CarouselLinks = void 0;
|
|
3
|
-
const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
|
|
4
|
-
const uni_jsx_1 = require("@redneckz/uni-jsx");
|
|
5
|
-
const BlockWrapper_1 = require("../../ui-kit/BlockWrapper");
|
|
6
|
-
const DefaultFoldButton_1 = require("../../ui-kit/Foldable/DefaultFoldButton");
|
|
7
|
-
const Foldable_1 = require("../../ui-kit/Foldable/Foldable");
|
|
8
|
-
const FoldableSection_1 = require("../../ui-kit/Foldable/FoldableSection");
|
|
9
|
-
const Headline_1 = require("../Headline/Headline");
|
|
10
|
-
const CarouselLinkButton_1 = require("./CarouselLinkButton");
|
|
11
|
-
exports.CarouselLinks = (0, uni_jsx_1.JSX)(({ className, additionalDescription, description, links = [], title, ...rest }) => ((0, jsx_runtime_1.jsxs)(BlockWrapper_1.BlockWrapper, { className: className, ...rest, children: [(0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)(Headline_1.Headline, { isEmbedded: true, title: title, description: description, as: "h1", align: "text-left" }), (0, jsx_runtime_1.jsx)(Headline_1.Headline, { className: "pt-m", description: additionalDescription, align: "text-left", isEmbedded: true })] }), links?.length ? renderLinks(links) : null] })));
|
|
12
|
-
const renderLinks = (links, visibleLinksNum = 3) => {
|
|
13
|
-
const carouselLinks = (links || []).map((link, index) => ((0, jsx_runtime_1.jsx)(CarouselLinkButton_1.CarouselLinkButton, { ...link }, String(index))));
|
|
14
|
-
const [visibleLinks, hiddenLinks] = visibleLinksNum > 0
|
|
15
|
-
? [carouselLinks.slice(0, visibleLinksNum), carouselLinks.slice(visibleLinksNum)]
|
|
16
|
-
: [carouselLinks, []];
|
|
17
|
-
return ((0, jsx_runtime_1.jsx)("div", { className: "mt-4xl", children: hiddenLinks.length > 0 ? ((0, jsx_runtime_1.jsx)(Foldable_1.Foldable, { renderFoldableSection: ({ isUnfolded }) => ((0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)("div", { className: "mb-1", children: visibleLinks }), (0, jsx_runtime_1.jsx)(FoldableSection_1.FoldableSection, { isUnfolded: isUnfolded, children: hiddenLinks })] })), renderFoldButton: renderFoldButton })) : ((0, jsx_runtime_1.jsx)("div", { children: visibleLinks })) }));
|
|
18
|
-
};
|
|
19
|
-
const renderFoldButton = ({ isUnfolded, onToggle }) => isUnfolded ? null : ((0, jsx_runtime_1.jsx)(DefaultFoldButton_1.DefaultFoldButton, { className: "border-t-main-divider/50", icon: "PlusIcon", label: "\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u0435\u0449\u0435", onClick: onToggle }));
|
|
20
|
-
//# sourceMappingURL=CarouselLinks.mobile.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CarouselLinks.mobile.js","sourceRoot":"","sources":["../../../src/components/CarouselLinks/CarouselLinks.mobile.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AAExC,4DAAyD;AACzD,+EAA4E;AAC5E,6DAA0D;AAE1D,2EAAwE;AAExE,mDAAgD;AAChD,6DAA0D;AAK7C,QAAA,aAAa,GAAG,IAAA,aAAG,EAC9B,CAAC,EAAE,SAAS,EAAE,qBAAqB,EAAE,WAAW,EAAE,KAAK,GAAG,EAAE,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,CAAC,CACjF,wBAAC,2BAAY,IAAC,SAAS,EAAE,SAAS,KAAM,IAAI,aAC1C,4CACE,uBAAC,mBAAQ,IACP,UAAU,EAAE,IAAI,EAChB,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,WAAW,EACxB,EAAE,EAAC,IAAI,EACP,KAAK,EAAC,WAAW,GACjB,EACF,uBAAC,mBAAQ,IACP,SAAS,EAAC,MAAM,EAChB,WAAW,EAAE,qBAAqB,EAClC,KAAK,EAAC,WAAW,EACjB,UAAU,EAAE,IAAI,GAChB,IACE,EACL,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,IAC7B,CAChB,CACF,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,KAAkB,EAAE,eAAe,GAAG,CAAC,EAAE,EAAE;IAC9D,MAAM,aAAa,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CACvD,uBAAC,uCAAkB,OAAyB,IAAI,IAAvB,MAAM,CAAC,KAAK,CAAC,CAAc,CACrD,CAAC,CAAC;IAEH,MAAM,CAAC,YAAY,EAAE,WAAW,CAAC,GAC/B,eAAe,GAAG,CAAC;QACjB,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,eAAe,CAAC,EAAE,aAAa,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QACjF,CAAC,CAAC,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;IAE1B,OAAO,CACL,gCAAK,SAAS,EAAC,QAAQ,YACpB,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CACxB,uBAAC,mBAAQ,IACP,qBAAqB,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CACzC,4CACE,gCAAK,SAAS,EAAC,MAAM,YAAE,YAAY,GAAO,EAC1C,uBAAC,iCAAe,IAAC,UAAU,EAAE,UAAU,YAAG,WAAW,GAAmB,IACpE,CACP,EACD,gBAAgB,EAAE,gBAAgB,GAClC,CACH,CAAC,CAAC,CAAC,CACF,0CAAM,YAAY,GAAO,CAC1B,GACG,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAqB,EAAE,EAAE,CACvE,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAClB,uBAAC,qCAAiB,IAChB,SAAS,EAAC,0BAA0B,EACpC,IAAI,EAAC,UAAU,EACf,KAAK,EAAC,qEAAc,EACpB,OAAO,EAAE,QAAQ,GACjB,CACH,CAAC"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { type CarouselLinkProps } from './CarouselLinksContent';
|
|
2
|
-
export declare type CarouselLinkButtonProps = CarouselLinkProps & {
|
|
3
|
-
className?: string;
|
|
4
|
-
};
|
|
5
|
-
export declare const CarouselLinkButton: import("@redneckz/uni-jsx").UNIComponent<CarouselLinkButtonProps, any, any>;
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "@redneckz/uni-jsx/jsx-runtime";
|
|
2
|
-
import { JSX } from '@redneckz/uni-jsx';
|
|
3
|
-
import { useLink } from '../../hooks/useLink.js';
|
|
4
|
-
import { Icon } from '../../ui-kit/Icon/Icon.js';
|
|
5
|
-
import { Img } from '../../ui-kit/Img/Img.js';
|
|
6
|
-
import { Text } from '../../ui-kit/Text/Text.js';
|
|
7
|
-
import { style } from '../../utils/style.js';
|
|
8
|
-
export const CarouselLinkButton = JSX(({ className = '', icon, ...linkProps }) => {
|
|
9
|
-
const link = useLink();
|
|
10
|
-
const { text, href, target, onClick } = link(linkProps);
|
|
11
|
-
return text ? (_jsx("div", { className: style('w-full pb-lg', className), children: _jsxs("a", { className: "bg-white flex justify-between rounded-md w-full p-lg whitespace-nowrap", role: "link", href: href, target: target, onClick: onClick, children: [_jsxs("div", { className: "flex items-center space-x-lg", children: [icon ? (_jsx(Img, { imageClassName: "text-green-dark", image: icon, width: "20", height: "20" })) : null, _jsx(Text, { size: "text-l", font: "font-light", color: "text-primary-text", children: text })] }), _jsx(Icon, { className: "text-green", name: "ArrowRightIcon", width: "20", height: "20" })] }) })) : null;
|
|
12
|
-
});
|
|
13
|
-
//# sourceMappingURL=CarouselLinkButton.mobile.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CarouselLinkButton.mobile.js","sourceRoot":"","sources":["../../../src/components/CarouselLinks/CarouselLinkButton.mobile.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,OAAO,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAO1C,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,CACnC,CAAC,EAAE,SAAS,GAAG,EAAE,EAAE,IAAI,EAAE,GAAG,SAAS,EAAE,EAAE,EAAE;IACzC,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IACvB,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;IAExD,OAAO,IAAI,CAAC,CAAC,CAAC,CACZ,cAAK,SAAS,EAAE,KAAK,CAAC,cAAc,EAAE,SAAS,CAAC,YAC9C,aACE,SAAS,EAAC,wEAAwE,EAClF,IAAI,EAAC,MAAM,EACX,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,aAEhB,eAAK,SAAS,EAAC,8BAA8B,aAC1C,IAAI,CAAC,CAAC,CAAC,CACN,KAAC,GAAG,IAAC,cAAc,EAAC,iBAAiB,EAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,GAAG,CAC7E,CAAC,CAAC,CAAC,IAAI,EACR,KAAC,IAAI,IAAC,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAC,YAAY,EAAC,KAAK,EAAC,mBAAmB,YAC5D,IAAI,GACA,IACH,EACN,KAAC,IAAI,IAAC,SAAS,EAAC,YAAY,EAAC,IAAI,EAAC,gBAAgB,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,GAAG,IAC1E,GACA,CACP,CAAC,CAAC,CAAC,IAAI,CAAC;AACX,CAAC,CACF,CAAC"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { type UniBlockProps } from '../../UniBlock/UniBlockProps';
|
|
2
|
-
import { type CarouselLinksContent } from './CarouselLinksContent';
|
|
3
|
-
export interface CarouselLinksProps extends CarouselLinksContent, UniBlockProps {
|
|
4
|
-
}
|
|
5
|
-
export declare const CarouselLinks: import("@redneckz/uni-jsx").UNIComponent<CarouselLinksProps, any, any>;
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "@redneckz/uni-jsx/jsx-runtime";
|
|
2
|
-
import { JSX } from '@redneckz/uni-jsx';
|
|
3
|
-
import { BlockWrapper } from '../../ui-kit/BlockWrapper.js';
|
|
4
|
-
import { DefaultFoldButton } from '../../ui-kit/Foldable/DefaultFoldButton.js';
|
|
5
|
-
import { Foldable } from '../../ui-kit/Foldable/Foldable.js';
|
|
6
|
-
import { FoldableSection } from '../../ui-kit/Foldable/FoldableSection.js';
|
|
7
|
-
import { Headline } from '../Headline/Headline.js';
|
|
8
|
-
import { CarouselLinkButton } from './CarouselLinkButton.js';
|
|
9
|
-
export const CarouselLinks = JSX(({ className, additionalDescription, description, links = [], title, ...rest }) => (_jsxs(BlockWrapper, { className: className, ...rest, children: [_jsxs("div", { children: [_jsx(Headline, { isEmbedded: true, title: title, description: description, as: "h1", align: "text-left" }), _jsx(Headline, { className: "pt-m", description: additionalDescription, align: "text-left", isEmbedded: true })] }), links?.length ? renderLinks(links) : null] })));
|
|
10
|
-
const renderLinks = (links, visibleLinksNum = 3) => {
|
|
11
|
-
const carouselLinks = (links || []).map((link, index) => (_jsx(CarouselLinkButton, { ...link }, String(index))));
|
|
12
|
-
const [visibleLinks, hiddenLinks] = visibleLinksNum > 0
|
|
13
|
-
? [carouselLinks.slice(0, visibleLinksNum), carouselLinks.slice(visibleLinksNum)]
|
|
14
|
-
: [carouselLinks, []];
|
|
15
|
-
return (_jsx("div", { className: "mt-4xl", children: hiddenLinks.length > 0 ? (_jsx(Foldable, { renderFoldableSection: ({ isUnfolded }) => (_jsxs("div", { children: [_jsx("div", { className: "mb-1", children: visibleLinks }), _jsx(FoldableSection, { isUnfolded: isUnfolded, children: hiddenLinks })] })), renderFoldButton: renderFoldButton })) : (_jsx("div", { children: visibleLinks })) }));
|
|
16
|
-
};
|
|
17
|
-
const renderFoldButton = ({ isUnfolded, onToggle }) => isUnfolded ? null : (_jsx(DefaultFoldButton, { className: "border-t-main-divider/50", icon: "PlusIcon", label: "\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u0435\u0449\u0435", onClick: onToggle }));
|
|
18
|
-
//# sourceMappingURL=CarouselLinks.mobile.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CarouselLinks.mobile.js","sourceRoot":"","sources":["../../../src/components/CarouselLinks/CarouselLinks.mobile.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAExC,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAE1D,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAExE,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAK1D,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,CAC9B,CAAC,EAAE,SAAS,EAAE,qBAAqB,EAAE,WAAW,EAAE,KAAK,GAAG,EAAE,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,CAAC,CACjF,MAAC,YAAY,IAAC,SAAS,EAAE,SAAS,KAAM,IAAI,aAC1C,0BACE,KAAC,QAAQ,IACP,UAAU,EAAE,IAAI,EAChB,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,WAAW,EACxB,EAAE,EAAC,IAAI,EACP,KAAK,EAAC,WAAW,GACjB,EACF,KAAC,QAAQ,IACP,SAAS,EAAC,MAAM,EAChB,WAAW,EAAE,qBAAqB,EAClC,KAAK,EAAC,WAAW,EACjB,UAAU,EAAE,IAAI,GAChB,IACE,EACL,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,IAC7B,CAChB,CACF,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,KAAkB,EAAE,eAAe,GAAG,CAAC,EAAE,EAAE;IAC9D,MAAM,aAAa,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CACvD,KAAC,kBAAkB,OAAyB,IAAI,IAAvB,MAAM,CAAC,KAAK,CAAC,CAAc,CACrD,CAAC,CAAC;IAEH,MAAM,CAAC,YAAY,EAAE,WAAW,CAAC,GAC/B,eAAe,GAAG,CAAC;QACjB,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,eAAe,CAAC,EAAE,aAAa,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QACjF,CAAC,CAAC,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;IAE1B,OAAO,CACL,cAAK,SAAS,EAAC,QAAQ,YACpB,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CACxB,KAAC,QAAQ,IACP,qBAAqB,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CACzC,0BACE,cAAK,SAAS,EAAC,MAAM,YAAE,YAAY,GAAO,EAC1C,KAAC,eAAe,IAAC,UAAU,EAAE,UAAU,YAAG,WAAW,GAAmB,IACpE,CACP,EACD,gBAAgB,EAAE,gBAAgB,GAClC,CACH,CAAC,CAAC,CAAC,CACF,wBAAM,YAAY,GAAO,CAC1B,GACG,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAqB,EAAE,EAAE,CACvE,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAClB,KAAC,iBAAiB,IAChB,SAAS,EAAC,0BAA0B,EACpC,IAAI,EAAC,UAAU,EACf,KAAK,EAAC,qEAAc,EACpB,OAAO,EAAE,QAAQ,GACjB,CACH,CAAC"}
|