@redneckz/wildless-cms-uni-blocks 0.6.31 → 0.6.32
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/bin/migration-scripts/0.6.32.js +26 -0
- package/bundle/blocks.schema.json +1 -1
- package/bundle/bundle.umd.js +137 -102
- package/bundle/bundle.umd.min.js +1 -1
- package/bundle/components/CarouselLinks/CarouselLinks.d.ts +5 -0
- package/bundle/components/CarouselLinks/CarouselLinksContent.d.ts +9 -0
- package/bundle/components/ContactsBlock/ContactsBlockContent.d.ts +11 -20
- package/bundle/components/StepsBlock/renderStepContent.d.ts +1 -1
- package/bundle/icons/IconName.d.ts +6 -4
- package/bundle/model/HeadlineType.d.ts +2 -2
- package/bundle/ui-kit/LinkButton/LinkButton.d.ts +5 -0
- package/bundle/utils/sliceArray.d.ts +1 -0
- package/cosmos-static/icons/ArrowRightIcon.svg +1 -0
- package/dist/components/Blocks.js +2 -0
- package/dist/components/Blocks.js.map +1 -1
- package/dist/components/CarouselLinks/CarouselLinks.d.ts +5 -0
- package/dist/components/CarouselLinks/CarouselLinks.js +20 -0
- package/dist/components/CarouselLinks/CarouselLinks.js.map +1 -0
- package/dist/components/CarouselLinks/CarouselLinksContent.d.ts +9 -0
- package/dist/components/CarouselLinks/CarouselLinksContent.js +2 -0
- package/dist/components/CarouselLinks/CarouselLinksContent.js.map +1 -0
- package/dist/components/ContactsBlock/ContactsBlock.js +5 -9
- package/dist/components/ContactsBlock/ContactsBlock.js.map +1 -1
- package/dist/components/ContactsBlock/ContactsBlockContent.d.ts +11 -20
- package/dist/components/Headline/constants.js +6 -0
- package/dist/components/Headline/constants.js.map +1 -1
- package/dist/components/StepsBlock/renderStepContent.d.ts +1 -1
- package/dist/icons/IconName.d.ts +6 -4
- package/dist/icons/IconName.js +4 -2
- package/dist/icons/IconName.js.map +1 -1
- package/dist/model/HeadlineType.d.ts +2 -2
- package/dist/ui-kit/LinkButton/LinkButton.d.ts +5 -0
- package/dist/ui-kit/LinkButton/LinkButton.js +16 -0
- package/dist/ui-kit/LinkButton/LinkButton.js.map +1 -0
- package/dist/utils/sliceArray.d.ts +1 -0
- package/dist/utils/sliceArray.js +15 -0
- package/dist/utils/sliceArray.js.map +1 -0
- package/lib/common.css +1 -1
- package/lib/components/Blocks.js +2 -0
- package/lib/components/Blocks.js.map +1 -1
- package/lib/components/CarouselLinks/CarouselLinks.d.ts +5 -0
- package/lib/components/CarouselLinks/CarouselLinks.fixture.d.ts +5 -0
- package/lib/components/CarouselLinks/CarouselLinks.js +18 -0
- package/lib/components/CarouselLinks/CarouselLinks.js.map +1 -0
- package/lib/components/CarouselLinks/CarouselLinksContent.d.ts +9 -0
- package/lib/components/CarouselLinks/CarouselLinksContent.js +2 -0
- package/lib/components/CarouselLinks/CarouselLinksContent.js.map +1 -0
- package/lib/components/ContactsBlock/ContactsBlock.js +5 -9
- package/lib/components/ContactsBlock/ContactsBlock.js.map +1 -1
- package/lib/components/ContactsBlock/ContactsBlockContent.d.ts +11 -20
- package/lib/components/Headline/constants.js +6 -0
- package/lib/components/Headline/constants.js.map +1 -1
- package/lib/components/StepsBlock/renderStepContent.d.ts +1 -1
- package/lib/icons/IconName.d.ts +6 -4
- package/lib/icons/IconName.js +4 -2
- package/lib/icons/IconName.js.map +1 -1
- package/lib/model/HeadlineType.d.ts +2 -2
- package/lib/ui-kit/LinkButton/LinkButton.d.ts +5 -0
- package/lib/ui-kit/LinkButton/LinkButton.fixture.d.ts +5 -0
- package/lib/ui-kit/LinkButton/LinkButton.js +14 -0
- package/lib/ui-kit/LinkButton/LinkButton.js.map +1 -0
- package/lib/utils/sliceArray.d.ts +1 -0
- package/lib/utils/sliceArray.js +12 -0
- package/lib/utils/sliceArray.js.map +1 -0
- package/mobile/bundle/bundle.umd.js +1 -1
- package/mobile/bundle/bundle.umd.min.js +1 -1
- package/mobile/bundle/components/CarouselLinks/CarouselLinks.d.ts +5 -0
- package/mobile/bundle/components/CarouselLinks/CarouselLinksContent.d.ts +9 -0
- package/mobile/bundle/components/ContactsBlock/ContactsBlockContent.d.ts +11 -20
- package/mobile/bundle/components/StepsBlock/renderStepContent.d.ts +1 -1
- package/mobile/bundle/icons/IconName.d.ts +6 -4
- package/mobile/bundle/model/HeadlineType.d.ts +2 -2
- package/mobile/bundle/ui-kit/LinkButton/LinkButton.d.ts +5 -0
- package/mobile/bundle/utils/sliceArray.d.ts +1 -0
- package/mobile/dist/components/CarouselLinks/CarouselLinks.d.ts +5 -0
- package/mobile/dist/components/CarouselLinks/CarouselLinks.js +20 -0
- package/mobile/dist/components/CarouselLinks/CarouselLinks.js.map +1 -0
- package/mobile/dist/components/CarouselLinks/CarouselLinksContent.d.ts +9 -0
- package/mobile/dist/components/CarouselLinks/CarouselLinksContent.js +2 -0
- package/mobile/dist/components/CarouselLinks/CarouselLinksContent.js.map +1 -0
- package/mobile/dist/components/ContactsBlock/ContactsBlock.js +5 -9
- package/mobile/dist/components/ContactsBlock/ContactsBlock.js.map +1 -1
- package/mobile/dist/components/ContactsBlock/ContactsBlockContent.d.ts +11 -20
- package/mobile/dist/components/Headline/constants.js +6 -0
- package/mobile/dist/components/Headline/constants.js.map +1 -1
- package/mobile/dist/components/StepsBlock/renderStepContent.d.ts +1 -1
- package/mobile/dist/icons/IconName.d.ts +6 -4
- package/mobile/dist/icons/IconName.js +4 -2
- package/mobile/dist/icons/IconName.js.map +1 -1
- package/mobile/dist/model/HeadlineType.d.ts +2 -2
- package/mobile/dist/ui-kit/LinkButton/LinkButton.d.ts +5 -0
- package/mobile/dist/ui-kit/LinkButton/LinkButton.js +16 -0
- package/mobile/dist/ui-kit/LinkButton/LinkButton.js.map +1 -0
- package/mobile/dist/utils/sliceArray.d.ts +1 -0
- package/mobile/dist/utils/sliceArray.js +15 -0
- package/mobile/dist/utils/sliceArray.js.map +1 -0
- package/mobile/lib/components/CarouselLinks/CarouselLinks.d.ts +5 -0
- package/mobile/lib/components/CarouselLinks/CarouselLinks.js +18 -0
- package/mobile/lib/components/CarouselLinks/CarouselLinks.js.map +1 -0
- package/mobile/lib/components/CarouselLinks/CarouselLinksContent.d.ts +9 -0
- package/mobile/lib/components/CarouselLinks/CarouselLinksContent.js +2 -0
- package/mobile/lib/components/CarouselLinks/CarouselLinksContent.js.map +1 -0
- package/mobile/lib/components/ContactsBlock/ContactsBlock.js +5 -9
- package/mobile/lib/components/ContactsBlock/ContactsBlock.js.map +1 -1
- package/mobile/lib/components/ContactsBlock/ContactsBlockContent.d.ts +11 -20
- package/mobile/lib/components/Headline/constants.js +6 -0
- package/mobile/lib/components/Headline/constants.js.map +1 -1
- package/mobile/lib/components/StepsBlock/renderStepContent.d.ts +1 -1
- package/mobile/lib/icons/IconName.d.ts +6 -4
- package/mobile/lib/icons/IconName.js +4 -2
- package/mobile/lib/icons/IconName.js.map +1 -1
- package/mobile/lib/model/HeadlineType.d.ts +2 -2
- package/mobile/lib/ui-kit/LinkButton/LinkButton.d.ts +5 -0
- package/mobile/lib/ui-kit/LinkButton/LinkButton.js +14 -0
- package/mobile/lib/ui-kit/LinkButton/LinkButton.js.map +1 -0
- package/mobile/lib/utils/sliceArray.d.ts +1 -0
- package/mobile/lib/utils/sliceArray.js +12 -0
- package/mobile/lib/utils/sliceArray.js.map +1 -0
- package/mobile/src/components/CarouselLinks/CarouselLinks.example.json +55 -0
- package/mobile/src/components/CarouselLinks/CarouselLinks.json +8 -0
- package/mobile/src/components/CarouselLinks/CarouselLinks.tsx +61 -0
- package/mobile/src/components/CarouselLinks/CarouselLinksContent.ts +10 -0
- package/mobile/src/components/ContactsBlock/ContactsBlock.example.json +22 -18
- package/mobile/src/components/ContactsBlock/ContactsBlock.tsx +25 -35
- package/mobile/src/components/ContactsBlock/ContactsBlockContent.ts +12 -22
- package/mobile/src/components/Headline/constants.ts +6 -0
- package/mobile/src/components/StepsBlock/renderStepContent.tsx +1 -1
- package/mobile/src/icons/ArrowLeftIcon.svg +1 -1
- package/mobile/src/icons/ArrowRightIcon.svg +1 -0
- package/mobile/src/icons/ArrowUpIcon.svg +1 -1
- package/mobile/src/icons/IconName.ts +4 -4
- package/mobile/src/model/HeadlineType.ts +2 -2
- package/mobile/src/ui-kit/LinkButton/LinkButton.tsx +42 -0
- package/mobile/src/utils/sliceArray.ts +15 -0
- package/package.json +2 -2
- package/src/components/Blocks.ts +2 -0
- package/src/components/CarouselLinks/CarouselLinks.example.json +55 -0
- package/src/components/CarouselLinks/CarouselLinks.fixture.tsx +28 -0
- package/src/components/CarouselLinks/CarouselLinks.json +8 -0
- package/src/components/CarouselLinks/CarouselLinks.tsx +61 -0
- package/src/components/CarouselLinks/CarouselLinksContent.ts +10 -0
- package/src/components/ContactsBlock/ContactsBlock.example.json +22 -18
- package/src/components/ContactsBlock/ContactsBlock.fixture.tsx +21 -15
- package/src/components/ContactsBlock/ContactsBlock.tsx +25 -35
- package/src/components/ContactsBlock/ContactsBlockContent.ts +12 -22
- package/src/components/Headline/constants.ts +6 -0
- package/src/components/StepsBlock/renderStepContent.tsx +1 -1
- package/src/icons/ArrowLeftIcon.svg +1 -1
- package/src/icons/ArrowRightIcon.svg +1 -0
- package/src/icons/ArrowUpIcon.svg +1 -1
- package/src/icons/IconName.ts +6 -327
- package/src/model/HeadlineType.ts +2 -2
- package/src/ui-kit/LinkButton/LinkButton.fixture.tsx +9 -0
- package/src/ui-kit/LinkButton/LinkButton.tsx +42 -0
- package/src/utils/sliceArray.ts +15 -0
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { JSX } from '@redneckz/uni-jsx';
|
|
2
|
+
import type { UniBlockProps } from '../../model/JSXBlock';
|
|
3
|
+
import type { LinkProps } from '../../model/LinkProps';
|
|
4
|
+
import { BlockWrapper } from '../../ui-kit/BlockWrapper';
|
|
5
|
+
import { Description } from '../../ui-kit/Description/Description';
|
|
6
|
+
import { Heading } from '../../ui-kit/Heading/Heading';
|
|
7
|
+
import { LinkButton } from '../../ui-kit/LinkButton/LinkButton';
|
|
8
|
+
import { sliceArray } from '../../utils/sliceArray';
|
|
9
|
+
import { Carousel } from '../Carousel/Carousel';
|
|
10
|
+
import type { CarouselLinksContent } from './CarouselLinksContent';
|
|
11
|
+
|
|
12
|
+
export interface CarouselLinksProps extends CarouselLinksContent, UniBlockProps {}
|
|
13
|
+
|
|
14
|
+
const MAX_LINKS_COUNT = 12;
|
|
15
|
+
|
|
16
|
+
export const CarouselLinks = JSX<CarouselLinksProps>(
|
|
17
|
+
({ additionalDescription, block, description, links, title, className = '', ...rest }) => {
|
|
18
|
+
return (
|
|
19
|
+
<BlockWrapper
|
|
20
|
+
className={`bg-primary-main flex w-full p-10 overflow-hidden justify-between font-sans ${className}`}
|
|
21
|
+
{...rest}
|
|
22
|
+
>
|
|
23
|
+
<div className="flex flex-col max-w-96 pr-9 text-white text-xl-light">
|
|
24
|
+
{title ? <Heading title={title} as="h1" headingType="h0" className="pb-0.5" /> : null}
|
|
25
|
+
{description ? (
|
|
26
|
+
<Description description={description} className="text-xl-light pt-5" />
|
|
27
|
+
) : null}
|
|
28
|
+
{additionalDescription ? (
|
|
29
|
+
<Description description={additionalDescription} className="pt-6" />
|
|
30
|
+
) : null}
|
|
31
|
+
</div>
|
|
32
|
+
{links?.length ? renderLinks(links, block) : null}
|
|
33
|
+
</BlockWrapper>
|
|
34
|
+
);
|
|
35
|
+
},
|
|
36
|
+
);
|
|
37
|
+
|
|
38
|
+
const renderLinks = (links: LinkProps[], block: any) => {
|
|
39
|
+
const slicedLinks = sliceArray(links, MAX_LINKS_COUNT);
|
|
40
|
+
|
|
41
|
+
const slides = slicedLinks.map((slide) => (
|
|
42
|
+
<div className="w-[672px] min-w-[672px] ml-20 mr-20 flex flex-wrap self-start">
|
|
43
|
+
{slide.map((link, index) => (
|
|
44
|
+
<LinkButton className="m-1" key={String(index)} {...link} />
|
|
45
|
+
))}
|
|
46
|
+
</div>
|
|
47
|
+
));
|
|
48
|
+
|
|
49
|
+
return (
|
|
50
|
+
<Carousel
|
|
51
|
+
className="min-w-[832px] w-[832px]"
|
|
52
|
+
isBlur={false}
|
|
53
|
+
cardFullViewCount={1}
|
|
54
|
+
cardWidth={'832'}
|
|
55
|
+
isCyclic={true}
|
|
56
|
+
block={{ type: 'Carousel', blocks: slides }}
|
|
57
|
+
>
|
|
58
|
+
{slides}
|
|
59
|
+
</Carousel>
|
|
60
|
+
);
|
|
61
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { HeadlineCommonProps } from '../../model/HeadlineType';
|
|
2
|
+
import type { LinkProps } from '../../model/LinkProps';
|
|
3
|
+
|
|
4
|
+
/** @title Карусель с ссылками */
|
|
5
|
+
export interface CarouselLinksContent extends HeadlineCommonProps {
|
|
6
|
+
/** @title Дополнительное описание */
|
|
7
|
+
additionalDescription?: string;
|
|
8
|
+
/** @title Ссылки */
|
|
9
|
+
links?: LinkProps[];
|
|
10
|
+
}
|
|
@@ -2,26 +2,30 @@
|
|
|
2
2
|
"content": {
|
|
3
3
|
"version": "secondary",
|
|
4
4
|
"info": [
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
"
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
5
|
+
[
|
|
6
|
+
{
|
|
7
|
+
"title": "Заголовок 1",
|
|
8
|
+
"description": "Описание 1",
|
|
9
|
+
"button": {
|
|
10
|
+
"href": "#",
|
|
11
|
+
"text": "Кнопка 1",
|
|
12
|
+
"target": "_blank",
|
|
13
|
+
"version": "secondary"
|
|
14
|
+
}
|
|
13
15
|
}
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
"
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
16
|
+
],
|
|
17
|
+
[
|
|
18
|
+
{
|
|
19
|
+
"title": "Заголовок 2ff",
|
|
20
|
+
"description": "Описание 2",
|
|
21
|
+
"button": {
|
|
22
|
+
"href": "#",
|
|
23
|
+
"text": "Кнопка 2",
|
|
24
|
+
"target": "_blank",
|
|
25
|
+
"version": "secondary"
|
|
26
|
+
}
|
|
23
27
|
}
|
|
24
|
-
|
|
28
|
+
]
|
|
25
29
|
],
|
|
26
30
|
"contacts": [
|
|
27
31
|
[
|
|
@@ -1,68 +1,58 @@
|
|
|
1
1
|
import { JSX } from '@redneckz/uni-jsx';
|
|
2
|
+
import type { BlockVersion } from '../../model/BlockVersion';
|
|
3
|
+
import { VersionStyleMap } from '../../model/BlockVersion';
|
|
2
4
|
import { UniBlockProps } from '../../model/JSXBlock';
|
|
3
5
|
import { BlockWrapper } from '../../ui-kit/BlockWrapper';
|
|
4
6
|
import { Button } from '../../ui-kit/Button/Button';
|
|
5
7
|
import { Description } from '../../ui-kit/Description/Description';
|
|
6
|
-
import {
|
|
7
|
-
import type {
|
|
8
|
+
import { Headline } from '../Headline/Headline';
|
|
9
|
+
import type { ContactBlockProps, ContactsBlockContent } from './ContactsBlockContent';
|
|
8
10
|
|
|
9
11
|
export interface ContactsBlockProps extends ContactsBlockContent, UniBlockProps {}
|
|
10
12
|
|
|
11
13
|
interface RenderContactsColumnProps {
|
|
12
|
-
|
|
14
|
+
version?: BlockVersion;
|
|
15
|
+
column?: ContactBlockProps[];
|
|
13
16
|
index?: number;
|
|
14
17
|
}
|
|
15
18
|
|
|
16
|
-
const contactsBlockStyleMap = {
|
|
17
|
-
primary: 'bg-white',
|
|
18
|
-
secondary: 'bg-primary-main text-white',
|
|
19
|
-
};
|
|
20
|
-
|
|
21
19
|
export const ContactsBlock = JSX<ContactsBlockProps>(
|
|
22
20
|
({ className = '', contacts, info, version = 'secondary', ...rest }) => {
|
|
23
21
|
return (
|
|
24
|
-
<BlockWrapper
|
|
25
|
-
|
|
26
|
-
{
|
|
27
|
-
>
|
|
28
|
-
{info ? renderInfo(info) : null}
|
|
29
|
-
{contacts ? renderContacts(contacts) : null}
|
|
22
|
+
<BlockWrapper className={`${VersionStyleMap[version]} flex p-[50px] ${className}`} {...rest}>
|
|
23
|
+
{info?.length ? renderBlocks(info, version) : null}
|
|
24
|
+
{contacts?.length ? renderBlocks(contacts, version) : null}
|
|
30
25
|
</BlockWrapper>
|
|
31
26
|
);
|
|
32
27
|
},
|
|
33
28
|
);
|
|
34
29
|
|
|
35
|
-
const
|
|
36
|
-
<div className="flex grow basis-0 pr-11">
|
|
37
|
-
{info.map(({ title, description, button }, index) => (
|
|
38
|
-
<div className="grow basis-0 pr-11 last:pr-0" key={String(index)}>
|
|
39
|
-
<Heading as="h5" headingType="h5" title={title} className="pb-2.5" />
|
|
40
|
-
<Description className="text-l-light pb-6" description={description} />
|
|
41
|
-
{button ? <Button {...button} /> : null}
|
|
42
|
-
</div>
|
|
43
|
-
))}
|
|
44
|
-
</div>
|
|
45
|
-
);
|
|
46
|
-
|
|
47
|
-
const renderContacts = (contacts: ContactItemProps[][]) => (
|
|
30
|
+
const renderBlocks = (info: ContactBlockProps[][], version?: BlockVersion) => (
|
|
48
31
|
<div className="flex grow basis-0">
|
|
49
|
-
{
|
|
32
|
+
{info.map((column, index) => renderBlocksColumn({ column, index, version }))}
|
|
50
33
|
</div>
|
|
51
34
|
);
|
|
52
35
|
|
|
53
|
-
const
|
|
54
|
-
|
|
55
|
-
<div className="flex flex-col grow basis-0 pr-11" key={String(index)}>
|
|
56
|
-
{
|
|
57
|
-
<div className="
|
|
58
|
-
<
|
|
59
|
-
|
|
36
|
+
const renderBlocksColumn = ({ column, index, version }: RenderContactsColumnProps) =>
|
|
37
|
+
column ? (
|
|
38
|
+
<div className="flex flex-col grow basis-0 pr-11 last:pr-0" key={`col-${String(index)}`}>
|
|
39
|
+
{column.map(({ title = '', description, additionalDescription, button }, key) => (
|
|
40
|
+
<div className="mt-6 first:mt-0" key={String(key)}>
|
|
41
|
+
<Headline
|
|
42
|
+
className="!p-0"
|
|
43
|
+
title={title}
|
|
44
|
+
description={description}
|
|
45
|
+
headlineVersion="XS"
|
|
46
|
+
align="left"
|
|
47
|
+
bgColorHeadline={version}
|
|
48
|
+
/>
|
|
60
49
|
{additionalDescription ? (
|
|
61
50
|
<Description
|
|
62
51
|
className="text-m-light mt-1.5 opacity-80"
|
|
63
52
|
description={additionalDescription}
|
|
64
53
|
/>
|
|
65
54
|
) : null}
|
|
55
|
+
{button ? <Button className="mt-6" {...button} /> : null}
|
|
66
56
|
</div>
|
|
67
57
|
))}
|
|
68
58
|
</div>
|
|
@@ -2,6 +2,16 @@ import type { BlockVersion } from '../../model/BlockVersion';
|
|
|
2
2
|
import type { HeadlineCommonProps } from '../../model/HeadlineType';
|
|
3
3
|
import type { ButtonProps } from '../../ui-kit/Button/ButtonProps';
|
|
4
4
|
|
|
5
|
+
/**
|
|
6
|
+
* @title Элемент плитки
|
|
7
|
+
*/
|
|
8
|
+
export interface ContactBlockProps extends HeadlineCommonProps {
|
|
9
|
+
/** @title Дополнительное описание */
|
|
10
|
+
additionalDescription?: string;
|
|
11
|
+
/** @title Кнопка */
|
|
12
|
+
button?: ButtonProps;
|
|
13
|
+
}
|
|
14
|
+
|
|
5
15
|
/**
|
|
6
16
|
* @title Контакты
|
|
7
17
|
*/
|
|
@@ -10,31 +20,11 @@ export interface ContactsBlockContent {
|
|
|
10
20
|
* @title Данные
|
|
11
21
|
* @maxItems 2
|
|
12
22
|
* */
|
|
13
|
-
info?:
|
|
23
|
+
info?: ContactBlockProps[][];
|
|
14
24
|
/**
|
|
15
25
|
* @title Контакты
|
|
16
26
|
* @maxItems 2
|
|
17
27
|
* */
|
|
18
|
-
contacts?:
|
|
28
|
+
contacts?: ContactBlockProps[][];
|
|
19
29
|
version?: BlockVersion;
|
|
20
30
|
}
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
* @title Элемент плитки
|
|
24
|
-
*/
|
|
25
|
-
export interface ContactItemProps {
|
|
26
|
-
/** @title Дополнительное описание */
|
|
27
|
-
additionalDescription?: string;
|
|
28
|
-
/** @title Описание */
|
|
29
|
-
description?: string;
|
|
30
|
-
/** @title Заголовок */
|
|
31
|
-
title?: string;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
/**
|
|
35
|
-
* @title Элемент плитки
|
|
36
|
-
*/
|
|
37
|
-
export interface InfoItemProps extends HeadlineCommonProps {
|
|
38
|
-
/** @title Кнопка */
|
|
39
|
-
button?: ButtonProps;
|
|
40
|
-
}
|
|
@@ -64,6 +64,12 @@ export const HEADLINE_VERSION: Record<HeadlineVersion, VersionStyleType> = {
|
|
|
64
64
|
headingType: 'h4',
|
|
65
65
|
as: 'h4',
|
|
66
66
|
},
|
|
67
|
+
XS: {
|
|
68
|
+
descriptionFont: 'text-l-light',
|
|
69
|
+
gap: 'gap-2',
|
|
70
|
+
headingType: 'h5',
|
|
71
|
+
as: 'h5',
|
|
72
|
+
},
|
|
67
73
|
};
|
|
68
74
|
|
|
69
75
|
export const HEADLINE_SMALL_VERSION: Record<HeadlineSmallVersion, string> = {
|
|
@@ -13,7 +13,7 @@ export const renderStepContent =
|
|
|
13
13
|
}: {
|
|
14
14
|
styleMap: StyleType;
|
|
15
15
|
isMainButton: boolean;
|
|
16
|
-
version
|
|
16
|
+
version?: BlockVersion;
|
|
17
17
|
}) =>
|
|
18
18
|
(step: Step, i: number, { length }: { length: number }): VNode => {
|
|
19
19
|
const { label, description, button, items, isDotted } = step;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<svg title="Стрелка" isInverse="true" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
1
|
+
<svg title="Стрелка 'Влево'" isInverse="true" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2
2
|
<path d="M7 11.834L3 8.00065L7 4.16732" stroke="currentColor" stroke-width="2" stroke-linecap="round"/>
|
|
3
3
|
<path d="M14 9.00195C14.5523 9.00195 15 8.55424 15 8.00195C15 7.44967 14.5523 7.00195 14 7.00195L14 9.00195ZM8 7.00195C7.44772 7.00195 7 7.44967 7 8.00195C7 8.55424 7.44772 9.00195 8 9.00195L8 7.00195ZM14 7.00195L8 7.00195L8 9.00195L14 9.00195L14 7.00195Z" fill="currentColor"/>
|
|
4
4
|
</svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg title="Стрелка 'Вправо'" isInverse="true" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M14.43 5.93 20.5 12l-6.07 6.07M11.01 12h9.32M3.5 12h3.47" stroke="#42AB44" stroke-width="2" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/></svg>
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<svg title="Стрелка
|
|
1
|
+
<svg title="Стрелка 'Вверх'" isInverse="true" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2
2
|
<path d="M13.3416 9.29163L11.1582 7.10829C10.5166 6.46662 9.46657 6.46662 8.8249 7.10829L3.3999 12.5416" stroke="currentColor" stroke-width="2" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/>
|
|
3
3
|
<path d="M16.6001 12.5416L15.7334 11.675" stroke="currentColor" stroke-width="2" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/>
|
|
4
4
|
</svg>
|
|
@@ -7,11 +7,11 @@ export const IconsWithoutInversion = new Set([
|
|
|
7
7
|
]);
|
|
8
8
|
|
|
9
9
|
export enum IconMap {
|
|
10
|
-
ActualBalanceIcon = 'ActualBalanceIcon', AirPlaneIcon = 'AirPlaneIcon', AppleIcon = 'AppleIcon', ArrowDownIcon = 'ArrowDownIcon', ArrowLeftIcon = 'ArrowLeftIcon', ArrowUpIcon = 'ArrowUpIcon', AtmIcon = 'AtmIcon', BankIcon = 'BankIcon', BuildingIcon = 'BuildingIcon', BurgerIcon = 'BurgerIcon', Calendar2Icon = 'Calendar2Icon', CalendarCircleIcon = 'CalendarCircleIcon', CalendarIcon = 'CalendarIcon', CalendarTickIcon = 'CalendarTickIcon', Car2Icon = 'Car2Icon', CardIcon = 'CardIcon', CardPosIcon = 'CardPosIcon', CardTickIcon = 'CardTickIcon', CardWithGemIcon = 'CardWithGemIcon', CarIcon = 'CarIcon', ChartSquareIcon = 'ChartSquareIcon', CinemaIcon = 'CinemaIcon', ClockIcon = 'ClockIcon', CloseIcon = 'CloseIcon', ComfortableCompIcon = 'ComfortableCompIcon', CreditCardsIcon = 'CreditCardsIcon', DiscountShapeIcon = 'DiscountShapeIcon', DocDownloadIcon = 'DocDownloadIcon', DocIcon = 'DocIcon', DocIconMonoColor = 'DocIconMonoColor', DocsIcon = 'DocsIcon', DocumentText2Icon = 'DocumentText2Icon', DocumentTextIcon = 'DocumentTextIcon', DollarIcon = 'DollarIcon', DoneIcon = 'DoneIcon', DoneSimpleIcon = 'DoneSimpleIcon', EarthIcon = 'EarthIcon', EmptyWalletChangeIcon = 'EmptyWalletChangeIcon', EmptyWalletIcon = 'EmptyWalletIcon', EuroIcon = 'EuroIcon', FullScreenIcon = 'FullScreenIcon', GeolocationIcon = 'GeolocationIcon', GlassIcon = 'GlassIcon', GlobalIcon = 'GlobalIcon', GpsIcon = 'GpsIcon', GridIcon = 'GridIcon', HeartIcon = 'HeartIcon', HuaweiIcon = 'HuaweiIcon', InterestGrowthIcon = 'InterestGrowthIcon', InterestIcon = 'InterestIcon', JCBIcon = 'JCBIcon', LogoIcon = 'LogoIcon', LoupeIcon = 'LoupeIcon', MapMarkerClusterIcon = 'MapMarkerClusterIcon', MapMarkerSingleIcon = 'MapMarkerSingleIcon', MasterCardIcon = 'MasterCardIcon', MetroIcon = 'MetroIcon', MinusIcon = 'MinusIcon', MirIcon = 'MirIcon', MoneyIcon = 'MoneyIcon', MoneyInsuranceIcon = 'MoneyInsuranceIcon', MoneysIcon = 'MoneysIcon', MonitorMobileIcon = 'MonitorMobileIcon', NewDocIcon = 'NewDocIcon', OfficeIcon = 'OfficeIcon', OkIcon = 'OkIcon', PackA4Icon = 'PackA4Icon', PassSendIcon = 'PassSendIcon', PercentageRoundIcon = 'PercentageRoundIcon', PercentageSquareIcon = 'PercentageSquareIcon', PersonalCardIcon = 'PersonalCardIcon', PlayMarketIcon = 'PlayMarketIcon', PlusIcon = 'PlusIcon', PowerIcon = 'PowerIcon', Profile2UserIcon = 'Profile2UserIcon', ProfileIcon = 'ProfileIcon', PumpkinIcon = 'PumpkinIcon', RoundRubleIcon = 'RoundRubleIcon', SafeIcon = 'SafeIcon', ShieldTickIcon = 'ShieldTickIcon', SignDocsIcon = 'SignDocsIcon', SmallClockIcon = 'SmallClockIcon', SoundIcon = 'SoundIcon', StrongBoxIcon = 'StrongBoxIcon', TelegramIcon = 'TelegramIcon', UnionPayIcon = 'UnionPayIcon', UserGeoLocationIcon = 'UserGeoLocationIcon', UserSquareIcon = 'UserSquareIcon', UserTickIcon = 'UserTickIcon', VisaIcon = 'VisaIcon', VKIcon = 'VKIcon', WalletAdd2Icon = 'WalletAdd2Icon', WalletAddIcon = 'WalletAddIcon', WalletIcon = 'WalletIcon', WalletWithMoneyIcon = 'WalletWithMoneyIcon', WateringCanIcon = 'WateringCanIcon'
|
|
10
|
+
ActualBalanceIcon = 'ActualBalanceIcon', AirPlaneIcon = 'AirPlaneIcon', AppleIcon = 'AppleIcon', ArrowDownIcon = 'ArrowDownIcon', ArrowLeftIcon = 'ArrowLeftIcon', ArrowRightIcon = 'ArrowRightIcon', ArrowUpIcon = 'ArrowUpIcon', AtmIcon = 'AtmIcon', BankIcon = 'BankIcon', BuildingIcon = 'BuildingIcon', BurgerIcon = 'BurgerIcon', Calendar2Icon = 'Calendar2Icon', CalendarCircleIcon = 'CalendarCircleIcon', CalendarIcon = 'CalendarIcon', CalendarTickIcon = 'CalendarTickIcon', Car2Icon = 'Car2Icon', CardIcon = 'CardIcon', CardPosIcon = 'CardPosIcon', CardTickIcon = 'CardTickIcon', CardWithGemIcon = 'CardWithGemIcon', CarIcon = 'CarIcon', ChartSquareIcon = 'ChartSquareIcon', CinemaIcon = 'CinemaIcon', ClockIcon = 'ClockIcon', CloseIcon = 'CloseIcon', ComfortableCompIcon = 'ComfortableCompIcon', CreditCardsIcon = 'CreditCardsIcon', DiscountShapeIcon = 'DiscountShapeIcon', DocDownloadIcon = 'DocDownloadIcon', DocIcon = 'DocIcon', DocIconMonoColor = 'DocIconMonoColor', DocsIcon = 'DocsIcon', DocumentText2Icon = 'DocumentText2Icon', DocumentTextIcon = 'DocumentTextIcon', DollarIcon = 'DollarIcon', DoneIcon = 'DoneIcon', DoneSimpleIcon = 'DoneSimpleIcon', EarthIcon = 'EarthIcon', EmptyWalletChangeIcon = 'EmptyWalletChangeIcon', EmptyWalletIcon = 'EmptyWalletIcon', EuroIcon = 'EuroIcon', FullScreenIcon = 'FullScreenIcon', GeolocationIcon = 'GeolocationIcon', GlassIcon = 'GlassIcon', GlobalIcon = 'GlobalIcon', GpsIcon = 'GpsIcon', GridIcon = 'GridIcon', HeartIcon = 'HeartIcon', HuaweiIcon = 'HuaweiIcon', InterestGrowthIcon = 'InterestGrowthIcon', InterestIcon = 'InterestIcon', JCBIcon = 'JCBIcon', LogoIcon = 'LogoIcon', LoupeIcon = 'LoupeIcon', MapMarkerClusterIcon = 'MapMarkerClusterIcon', MapMarkerSingleIcon = 'MapMarkerSingleIcon', MasterCardIcon = 'MasterCardIcon', MetroIcon = 'MetroIcon', MinusIcon = 'MinusIcon', MirIcon = 'MirIcon', MoneyIcon = 'MoneyIcon', MoneyInsuranceIcon = 'MoneyInsuranceIcon', MoneysIcon = 'MoneysIcon', MonitorMobileIcon = 'MonitorMobileIcon', NewDocIcon = 'NewDocIcon', OfficeIcon = 'OfficeIcon', OkIcon = 'OkIcon', PackA4Icon = 'PackA4Icon', PassSendIcon = 'PassSendIcon', PercentageRoundIcon = 'PercentageRoundIcon', PercentageSquareIcon = 'PercentageSquareIcon', PersonalCardIcon = 'PersonalCardIcon', PlayMarketIcon = 'PlayMarketIcon', PlusIcon = 'PlusIcon', PowerIcon = 'PowerIcon', Profile2UserIcon = 'Profile2UserIcon', ProfileIcon = 'ProfileIcon', PumpkinIcon = 'PumpkinIcon', RoundRubleIcon = 'RoundRubleIcon', SafeIcon = 'SafeIcon', ShieldTickIcon = 'ShieldTickIcon', SignDocsIcon = 'SignDocsIcon', SmallClockIcon = 'SmallClockIcon', SoundIcon = 'SoundIcon', StrongBoxIcon = 'StrongBoxIcon', TelegramIcon = 'TelegramIcon', UnionPayIcon = 'UnionPayIcon', UserGeoLocationIcon = 'UserGeoLocationIcon', UserSquareIcon = 'UserSquareIcon', UserTickIcon = 'UserTickIcon', VisaIcon = 'VisaIcon', VKIcon = 'VKIcon', WalletAdd2Icon = 'WalletAdd2Icon', WalletAddIcon = 'WalletAddIcon', WalletIcon = 'WalletIcon', WalletWithMoneyIcon = 'WalletWithMoneyIcon', WateringCanIcon = 'WateringCanIcon'
|
|
11
11
|
}
|
|
12
12
|
|
|
13
13
|
export enum IconTitleMap {
|
|
14
|
-
ActualBalanceIcon = 'Деньги', AirPlaneIcon = 'Самолёт', AppleIcon = 'Лого «Apple»', ArrowDownIcon = 'Стрелка \'Вниз\'', ArrowLeftIcon = 'Стрелка', ArrowUpIcon = 'Стрелка
|
|
14
|
+
ActualBalanceIcon = 'Деньги', AirPlaneIcon = 'Самолёт', AppleIcon = 'Лого «Apple»', ArrowDownIcon = 'Стрелка \'Вниз\'', ArrowLeftIcon = 'Стрелка \'Влево\'', ArrowRightIcon = 'Стрелка \'Вправо\'', ArrowUpIcon = 'Стрелка \'Вверх\'', AtmIcon = 'Банкомат', BankIcon = 'Банк', BuildingIcon = 'Здание с деревом', BurgerIcon = 'Бургер', Calendar2Icon = 'Календарь 2', CalendarCircleIcon = 'Скруглённый календарь', CalendarIcon = 'Календарь', CalendarTickIcon = 'Календарь с галочкой', Car2Icon = 'Машина2', CardIcon = 'Кред. карта', CardPosIcon = 'Кред. карта под наклоном', CardTickIcon = 'Кред. карта с галочкой', CardWithGemIcon = 'Карта с драгоценностями', CarIcon = 'Машина', ChartSquareIcon = 'Деньги внутри кошелька', CinemaIcon = 'Кинотеатр', ClockIcon = 'Часы', CloseIcon = 'Крестик', ComfortableCompIcon = 'Кресло', CreditCardsIcon = 'Кредитные карты', DiscountShapeIcon = 'Скидка', DocDownloadIcon = 'Скачать документ', DocIcon = 'Документ', DocIconMonoColor = 'Документ (одноцветный)', DocsIcon = 'Документы', DocumentText2Icon = 'Документы-2', DocumentTextIcon = 'Документ с текстом', DollarIcon = 'Доллар', DoneIcon = 'Зелёная \'галочка\' в круге', DoneSimpleIcon = 'Зелёная \'галочка\'', EarthIcon = 'Земля', EmptyWalletChangeIcon = 'Пустой кошелёк с возвратом', EmptyWalletIcon = 'Пустой кошелёк', EuroIcon = 'Евро', FullScreenIcon = 'FullScreenIcon', GeolocationIcon = 'Геолокация', GlassIcon = 'Зеркало', GlobalIcon = 'Глобус', GpsIcon = 'Gps', GridIcon = 'Сетка (белая)', HeartIcon = 'Сердце', HuaweiIcon = 'Лого «Huawei»', InterestGrowthIcon = 'Диаграмма роста', InterestIcon = 'Скидка', JCBIcon = 'JCB', LogoIcon = 'Logo', LoupeIcon = 'Лупа', MapMarkerClusterIcon = 'Маркер карты', MapMarkerSingleIcon = 'Маркер карты РСХБ', MasterCardIcon = 'MasterCard', MetroIcon = 'Лого Метро', MinusIcon = 'Минус', MirIcon = 'МИР', MoneyIcon = 'Деньги', MoneyInsuranceIcon = 'Денежное страхование', MoneysIcon = 'Купюры', MonitorMobileIcon = 'Монитор и мобильный', NewDocIcon = 'Новый документ', OfficeIcon = 'Офис', OkIcon = 'Лого «Одноклассники»', PackA4Icon = 'Пачка бумаги А4', PassSendIcon = 'Бизнес', PercentageRoundIcon = 'Проценты (круг.)', PercentageSquareIcon = 'Проценты', PersonalCardIcon = 'Персональная карта', PlayMarketIcon = 'Лого «PlayMarket»', PlusIcon = 'Плюс', PowerIcon = 'Щит', Profile2UserIcon = 'Профиль, 2 персоны', ProfileIcon = 'Профиль', PumpkinIcon = 'Тыква', RoundRubleIcon = 'Рубль (круг.)', SafeIcon = 'Сейф', ShieldTickIcon = 'Безопасность', SignDocsIcon = 'Подписанные документы', SmallClockIcon = 'Маленькие часы', SoundIcon = 'Звук', StrongBoxIcon = 'Ящик с замочной скважиной', TelegramIcon = 'Лого «Telegram»', UnionPayIcon = 'UnionPay', UserGeoLocationIcon = 'UserGeoLocationIcon', UserSquareIcon = 'Пользователь в рамке', UserTickIcon = 'Пользователь', VisaIcon = 'Visa', VKIcon = 'Лого «VK»', WalletAdd2Icon = 'Пополнение карты', WalletAddIcon = 'Кошелёк с плюсом', WalletIcon = 'Кошелёк', WalletWithMoneyIcon = 'Кошелёк с деньгами', WateringCanIcon = 'Добавить продукт'
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
/**
|
|
@@ -19,7 +19,7 @@ export enum IconTitleMap {
|
|
|
19
19
|
* @title Иконка
|
|
20
20
|
* @enumNames [
|
|
21
21
|
* "",
|
|
22
|
-
* 'Деньги', 'Самолёт', 'Лого «Apple»', 'Стрелка \'Вниз\'', 'Стрелка', 'Стрелка
|
|
22
|
+
* 'Деньги', 'Самолёт', 'Лого «Apple»', 'Стрелка \'Вниз\'', 'Стрелка \'Влево\'', 'Стрелка \'Вправо\'', 'Стрелка \'Вверх\'', 'Банкомат', 'Банк', 'Здание с деревом', 'Бургер', 'Календарь 2', 'Скруглённый календарь', 'Календарь', 'Календарь с галочкой', 'Машина2', 'Кред. карта', 'Кред. карта под наклоном', 'Кред. карта с галочкой', 'Карта с драгоценностями', 'Машина', 'Деньги внутри кошелька', 'Кинотеатр', 'Часы', 'Крестик', 'Кресло', 'Кредитные карты', 'Скидка', 'Скачать документ', 'Документ', 'Документ (одноцветный)', 'Документы', 'Документы-2', 'Документ с текстом', 'Доллар', 'Зелёная \'галочка\' в круге', 'Зелёная \'галочка\'', 'Земля', 'Пустой кошелёк с возвратом', 'Пустой кошелёк', 'Евро', 'FullScreenIcon', 'Геолокация', 'Зеркало', 'Глобус', 'Gps', 'Сетка (белая)', 'Сердце', 'Лого «Huawei»', 'Диаграмма роста', 'Скидка', 'JCB', 'Logo', 'Лупа', 'Маркер карты', 'Маркер карты РСХБ', 'MasterCard', 'Лого Метро', 'Минус', 'МИР', 'Деньги', 'Денежное страхование', 'Купюры', 'Монитор и мобильный', 'Новый документ', 'Офис', 'Лого «Одноклассники»', 'Пачка бумаги А4', 'Бизнес', 'Проценты (круг.)', 'Проценты', 'Персональная карта', 'Лого «PlayMarket»', 'Плюс', 'Щит', 'Профиль, 2 персоны', 'Профиль', 'Тыква', 'Рубль (круг.)', 'Сейф', 'Безопасность', 'Подписанные документы', 'Маленькие часы', 'Звук', 'Ящик с замочной скважиной', 'Лого «Telegram»', 'UnionPay', 'UserGeoLocationIcon', 'Пользователь в рамке', 'Пользователь', 'Visa', 'Лого «VK»', 'Пополнение карты', 'Кошелёк с плюсом', 'Кошелёк', 'Кошелёк с деньгами', 'Добавить продукт'
|
|
23
23
|
* ]
|
|
24
24
|
*/
|
|
25
|
-
export type IconName = '' | 'ActualBalanceIcon' | 'AirPlaneIcon' | 'AppleIcon' | 'ArrowDownIcon' | 'ArrowLeftIcon' | 'ArrowUpIcon' | 'AtmIcon' | 'BankIcon' | 'BuildingIcon' | 'BurgerIcon' | 'Calendar2Icon' | 'CalendarCircleIcon' | 'CalendarIcon' | 'CalendarTickIcon' | 'Car2Icon' | 'CardIcon' | 'CardPosIcon' | 'CardTickIcon' | 'CardWithGemIcon' | 'CarIcon' | 'ChartSquareIcon' | 'CinemaIcon' | 'ClockIcon' | 'CloseIcon' | 'ComfortableCompIcon' | 'CreditCardsIcon' | 'DiscountShapeIcon' | 'DocDownloadIcon' | 'DocIcon' | 'DocIconMonoColor' | 'DocsIcon' | 'DocumentText2Icon' | 'DocumentTextIcon' | 'DollarIcon' | 'DoneIcon' | 'DoneSimpleIcon' | 'EarthIcon' | 'EmptyWalletChangeIcon' | 'EmptyWalletIcon' | 'EuroIcon' | 'FullScreenIcon' | 'GeolocationIcon' | 'GlassIcon' | 'GlobalIcon' | 'GpsIcon' | 'GridIcon' | 'HeartIcon' | 'HuaweiIcon' | 'InterestGrowthIcon' | 'InterestIcon' | 'JCBIcon' | 'LogoIcon' | 'LoupeIcon' | 'MapMarkerClusterIcon' | 'MapMarkerSingleIcon' | 'MasterCardIcon' | 'MetroIcon' | 'MinusIcon' | 'MirIcon' | 'MoneyIcon' | 'MoneyInsuranceIcon' | 'MoneysIcon' | 'MonitorMobileIcon' | 'NewDocIcon' | 'OfficeIcon' | 'OkIcon' | 'PackA4Icon' | 'PassSendIcon' | 'PercentageRoundIcon' | 'PercentageSquareIcon' | 'PersonalCardIcon' | 'PlayMarketIcon' | 'PlusIcon' | 'PowerIcon' | 'Profile2UserIcon' | 'ProfileIcon' | 'PumpkinIcon' | 'RoundRubleIcon' | 'SafeIcon' | 'ShieldTickIcon' | 'SignDocsIcon' | 'SmallClockIcon' | 'SoundIcon' | 'StrongBoxIcon' | 'TelegramIcon' | 'UnionPayIcon' | 'UserGeoLocationIcon' | 'UserSquareIcon' | 'UserTickIcon' | 'VisaIcon' | 'VKIcon' | 'WalletAdd2Icon' | 'WalletAddIcon' | 'WalletIcon' | 'WalletWithMoneyIcon' | 'WateringCanIcon';
|
|
25
|
+
export type IconName = '' | 'ActualBalanceIcon' | 'AirPlaneIcon' | 'AppleIcon' | 'ArrowDownIcon' | 'ArrowLeftIcon' | 'ArrowRightIcon' | 'ArrowUpIcon' | 'AtmIcon' | 'BankIcon' | 'BuildingIcon' | 'BurgerIcon' | 'Calendar2Icon' | 'CalendarCircleIcon' | 'CalendarIcon' | 'CalendarTickIcon' | 'Car2Icon' | 'CardIcon' | 'CardPosIcon' | 'CardTickIcon' | 'CardWithGemIcon' | 'CarIcon' | 'ChartSquareIcon' | 'CinemaIcon' | 'ClockIcon' | 'CloseIcon' | 'ComfortableCompIcon' | 'CreditCardsIcon' | 'DiscountShapeIcon' | 'DocDownloadIcon' | 'DocIcon' | 'DocIconMonoColor' | 'DocsIcon' | 'DocumentText2Icon' | 'DocumentTextIcon' | 'DollarIcon' | 'DoneIcon' | 'DoneSimpleIcon' | 'EarthIcon' | 'EmptyWalletChangeIcon' | 'EmptyWalletIcon' | 'EuroIcon' | 'FullScreenIcon' | 'GeolocationIcon' | 'GlassIcon' | 'GlobalIcon' | 'GpsIcon' | 'GridIcon' | 'HeartIcon' | 'HuaweiIcon' | 'InterestGrowthIcon' | 'InterestIcon' | 'JCBIcon' | 'LogoIcon' | 'LoupeIcon' | 'MapMarkerClusterIcon' | 'MapMarkerSingleIcon' | 'MasterCardIcon' | 'MetroIcon' | 'MinusIcon' | 'MirIcon' | 'MoneyIcon' | 'MoneyInsuranceIcon' | 'MoneysIcon' | 'MonitorMobileIcon' | 'NewDocIcon' | 'OfficeIcon' | 'OkIcon' | 'PackA4Icon' | 'PassSendIcon' | 'PercentageRoundIcon' | 'PercentageSquareIcon' | 'PersonalCardIcon' | 'PlayMarketIcon' | 'PlusIcon' | 'PowerIcon' | 'Profile2UserIcon' | 'ProfileIcon' | 'PumpkinIcon' | 'RoundRubleIcon' | 'SafeIcon' | 'ShieldTickIcon' | 'SignDocsIcon' | 'SmallClockIcon' | 'SoundIcon' | 'StrongBoxIcon' | 'TelegramIcon' | 'UnionPayIcon' | 'UserGeoLocationIcon' | 'UserSquareIcon' | 'UserTickIcon' | 'VisaIcon' | 'VKIcon' | 'WalletAdd2Icon' | 'WalletAddIcon' | 'WalletIcon' | 'WalletWithMoneyIcon' | 'WateringCanIcon';
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @title Размер заголовка
|
|
3
|
-
* @enumNames ["Самый большой", "Очень большой", "Большой", "Средний", "Маленький"]
|
|
3
|
+
* @enumNames ["Самый большой", "Очень большой", "Большой", "Средний", "Маленький", "Самый маленький"]
|
|
4
4
|
*/
|
|
5
|
-
export type HeadlineVersion = 'XXL' | 'XL' | 'L' | 'M' | 'S';
|
|
5
|
+
export type HeadlineVersion = 'XXL' | 'XL' | 'L' | 'M' | 'S' | 'XS';
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* @title Размер заголовка
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { JSX } from '@redneckz/uni-jsx';
|
|
2
|
+
import type { LinkProps } from '../../model/LinkProps';
|
|
3
|
+
import { Img } from '../Img/Img';
|
|
4
|
+
|
|
5
|
+
const LINK_CLASS_NAME = `absolute border border-primary-main ml-3 px-6 py-5
|
|
6
|
+
text-l-light bg-white text-primary-text flex w-[316px]
|
|
7
|
+
justify-between items-center group-hover:text-primary-main z-10`;
|
|
8
|
+
|
|
9
|
+
const LINK_BORDER_CLASS_NAME =
|
|
10
|
+
'bg-transparent border-white border h-[70px] absolute w-[316px] top-0';
|
|
11
|
+
|
|
12
|
+
export type LinkButtonProps = LinkProps & {
|
|
13
|
+
className?: string;
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
export const LinkButton = JSX<LinkButtonProps>(
|
|
17
|
+
({ text, href = '', target = '', className = '' }) => {
|
|
18
|
+
if (!text) {
|
|
19
|
+
return null;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
return (
|
|
23
|
+
<div className={`relative group cursor-pointer w-[328px] h-[82px] ${className}`}>
|
|
24
|
+
<a className={LINK_CLASS_NAME} role="link" href={href} target={target}>
|
|
25
|
+
<div className="p-0.5">{text}</div>
|
|
26
|
+
<div className="w-6 h-6">
|
|
27
|
+
<Img
|
|
28
|
+
className="w-4 h-4 min-w-4 min-h-4 rounded-full box-border brightness-0 group-hover:brightness-100"
|
|
29
|
+
image={{ icon: 'ArrowRightIcon', iconVersion: 'black' }}
|
|
30
|
+
imageClassName="group-hover:text-primary-main"
|
|
31
|
+
width="24"
|
|
32
|
+
height="24"
|
|
33
|
+
asSVG
|
|
34
|
+
/>
|
|
35
|
+
</div>
|
|
36
|
+
</a>
|
|
37
|
+
<div className={`${LINK_BORDER_CLASS_NAME} mx-1.5 mt-1.5`} />
|
|
38
|
+
<div className={`${LINK_BORDER_CLASS_NAME} mt-3 mr-3`} />
|
|
39
|
+
</div>
|
|
40
|
+
);
|
|
41
|
+
},
|
|
42
|
+
);
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export const sliceArray = <T>(items: T[], size: number) => {
|
|
2
|
+
const result = items.reduce((resultArray: T[][], item: T, index: number) => {
|
|
3
|
+
const chunkIndex = Math.floor(index / (size - 1));
|
|
4
|
+
|
|
5
|
+
if (!resultArray[chunkIndex]) {
|
|
6
|
+
resultArray[chunkIndex] = [item];
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
resultArray[chunkIndex].push(item);
|
|
10
|
+
|
|
11
|
+
return resultArray;
|
|
12
|
+
}, []);
|
|
13
|
+
|
|
14
|
+
return result;
|
|
15
|
+
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@redneckz/wildless-cms-uni-blocks",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.32",
|
|
4
4
|
"private": false,
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "ЦК",
|
|
@@ -181,7 +181,7 @@
|
|
|
181
181
|
},
|
|
182
182
|
"size-limit": [
|
|
183
183
|
{
|
|
184
|
-
"limit": "
|
|
184
|
+
"limit": "9 kB",
|
|
185
185
|
"path": "lib/common.css"
|
|
186
186
|
},
|
|
187
187
|
{
|
package/src/components/Blocks.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { BlocksRegistry } from '../model/BlocksRegistry';
|
|
2
2
|
import { Accordion } from './Accordion/Accordion';
|
|
3
3
|
import { AccordionItem } from './AccordionItem/AccordionItem';
|
|
4
|
+
import { CarouselLinks } from './CarouselLinks/CarouselLinks';
|
|
4
5
|
import { BenefitsBlock } from './BenefitsBlock/BenefitsBlock';
|
|
5
6
|
import { Bonus } from './Bonus/Bonus';
|
|
6
7
|
import { BonusBenefitsBlock } from './BonusBenefitsBlock/BonusBenefitsBlock';
|
|
@@ -49,6 +50,7 @@ import { VerticalLayout } from './VerticalLayout/VerticalLayout';
|
|
|
49
50
|
export const Blocks: BlocksRegistry = {
|
|
50
51
|
Accordion,
|
|
51
52
|
AccordionItem,
|
|
53
|
+
CarouselLinks,
|
|
52
54
|
BenefitsBlock,
|
|
53
55
|
BusinessBlock,
|
|
54
56
|
Bonus,
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "Заголовок",
|
|
3
|
+
"description": "Описание 1",
|
|
4
|
+
"additionalDescription": "Описание 2",
|
|
5
|
+
"links": [
|
|
6
|
+
{
|
|
7
|
+
"text": "Текст",
|
|
8
|
+
"href": "#"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"text": "Текст",
|
|
12
|
+
"href": "#"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"text": "Текст",
|
|
16
|
+
"href": "#"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"text": "Текст",
|
|
20
|
+
"href": "#"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"text": "Текст",
|
|
24
|
+
"href": "#"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"text": "Текст",
|
|
28
|
+
"href": "#"
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"text": "Текст",
|
|
32
|
+
"href": "#"
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"text": "Текст",
|
|
36
|
+
"href": "#"
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"text": "Текст",
|
|
40
|
+
"href": "#"
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"text": "Текст",
|
|
44
|
+
"href": "#"
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
"text": "Текст",
|
|
48
|
+
"href": "#"
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
"text": "Текст",
|
|
52
|
+
"href": "#"
|
|
53
|
+
}
|
|
54
|
+
]
|
|
55
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { CarouselLinks } from './CarouselLinks';
|
|
2
|
+
|
|
3
|
+
const link = {
|
|
4
|
+
text: 'Аудиторские заключения',
|
|
5
|
+
href: '#',
|
|
6
|
+
};
|
|
7
|
+
const links = Array(24).fill(link);
|
|
8
|
+
|
|
9
|
+
const description = `Акционерное общество «Российский Сельскохозяйственный банк»* —
|
|
10
|
+
один из крупнейших банков в России. Был основан в 2000 году в целях развития
|
|
11
|
+
национальной кредитно-финансовой системы агропромышленного сектора и
|
|
12
|
+
сельских территорий Российской Федерации.`;
|
|
13
|
+
|
|
14
|
+
const additionalDescription = `Сегодня это универсальный коммерческий банк,
|
|
15
|
+
предоставляющий все виды банковских услуг и занимающий лидирующие позиции
|
|
16
|
+
в финансировании агропромышленного комплекса России.`;
|
|
17
|
+
|
|
18
|
+
export default {
|
|
19
|
+
default: (
|
|
20
|
+
<CarouselLinks
|
|
21
|
+
links={links}
|
|
22
|
+
title="О Банке"
|
|
23
|
+
description={description}
|
|
24
|
+
additionalDescription={additionalDescription}
|
|
25
|
+
block={{ type: 'Carousel', blocks: new Array(3).fill(link).flat() }}
|
|
26
|
+
/>
|
|
27
|
+
),
|
|
28
|
+
};
|