@redneckz/wildless-cms-uni-blocks 0.10.3 → 0.10.5
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 +23 -11
- package/bundle/bundle.umd.min.js +1 -1
- package/bundle/ui-kit/CookiePopup/CookiePopup.d.ts +8 -0
- package/bundle/ui-kit/Dialog/useDialogProps.d.ts +1 -1
- package/bundle/ui-kit/LinkWrapper/LinkWrapper.d.ts +1 -0
- package/dist/components/CarouselLinks/CarouselLinks.js +1 -1
- package/dist/components/CarouselLinks/CarouselLinks.js.map +1 -1
- package/dist/components/ContentPage/ContentPage.js +2 -1
- package/dist/components/ContentPage/ContentPage.js.map +1 -1
- package/dist/components/Header/InternetBankButton.js +1 -1
- package/dist/components/Header/InternetBankButton.js.map +1 -1
- package/dist/ui-kit/CookiePopup/CookiePopup.d.ts +8 -0
- package/dist/ui-kit/CookiePopup/CookiePopup.js +22 -0
- package/dist/ui-kit/CookiePopup/CookiePopup.js.map +1 -0
- package/dist/ui-kit/Dialog/CloseButton.js +1 -1
- package/dist/ui-kit/Dialog/CloseButton.js.map +1 -1
- package/dist/ui-kit/Dialog/Dialog.js +1 -1
- package/dist/ui-kit/Dialog/Dialog.js.map +1 -1
- package/dist/ui-kit/Dialog/useDialogProps.d.ts +1 -1
- package/dist/ui-kit/Dialog/useDialogProps.js +2 -2
- package/dist/ui-kit/Dialog/useDialogProps.js.map +1 -1
- package/dist/ui-kit/LinkWrapper/LinkWrapper.d.ts +1 -0
- package/dist/ui-kit/LinkWrapper/LinkWrapper.js +2 -2
- package/dist/ui-kit/LinkWrapper/LinkWrapper.js.map +1 -1
- package/dist/ui-kit/Sitemap/Sitemap.js +1 -1
- package/dist/ui-kit/Sitemap/Sitemap.js.map +1 -1
- package/lib/common.css +1 -1
- package/lib/components/CarouselLinks/CarouselLinks.js +1 -1
- package/lib/components/CarouselLinks/CarouselLinks.js.map +1 -1
- package/lib/components/ContentPage/ContentPage.js +2 -1
- package/lib/components/ContentPage/ContentPage.js.map +1 -1
- package/lib/components/Header/InternetBankButton.js +1 -1
- package/lib/components/Header/InternetBankButton.js.map +1 -1
- package/lib/ui-kit/CookiePopup/CookiePopup.d.ts +8 -0
- package/lib/ui-kit/CookiePopup/CookiePopup.js +20 -0
- package/lib/ui-kit/CookiePopup/CookiePopup.js.map +1 -0
- package/lib/ui-kit/Dialog/CloseButton.js +1 -1
- package/lib/ui-kit/Dialog/CloseButton.js.map +1 -1
- package/lib/ui-kit/Dialog/Dialog.js +1 -1
- package/lib/ui-kit/Dialog/Dialog.js.map +1 -1
- package/lib/ui-kit/Dialog/useDialogProps.d.ts +1 -1
- package/lib/ui-kit/Dialog/useDialogProps.js +2 -2
- package/lib/ui-kit/Dialog/useDialogProps.js.map +1 -1
- package/lib/ui-kit/LinkWrapper/LinkWrapper.d.ts +1 -0
- package/lib/ui-kit/LinkWrapper/LinkWrapper.js +2 -2
- package/lib/ui-kit/LinkWrapper/LinkWrapper.js.map +1 -1
- package/lib/ui-kit/Sitemap/Sitemap.js +1 -1
- package/lib/ui-kit/Sitemap/Sitemap.js.map +1 -1
- package/mobile/bundle/bundle.umd.js +26 -7
- package/mobile/bundle/bundle.umd.min.js +1 -1
- package/mobile/bundle/ui-kit/CookiePopup/CookiePopup.d.ts +8 -0
- package/mobile/bundle/ui-kit/Dialog/useDialogProps.d.ts +1 -1
- package/mobile/bundle/ui-kit/LinkWrapper/LinkWrapper.d.ts +1 -0
- package/mobile/dist/components/CarouselLinks/CarouselLinks.js +1 -1
- package/mobile/dist/components/CarouselLinks/CarouselLinks.js.map +1 -1
- package/mobile/dist/components/ContentPage/ContentPage.js +2 -1
- package/mobile/dist/components/ContentPage/ContentPage.js.map +1 -1
- package/mobile/dist/components/Header/InternetBankButton.js +1 -1
- package/mobile/dist/components/Header/InternetBankButton.js.map +1 -1
- package/mobile/dist/ui-kit/CookiePopup/CookiePopup.d.ts +8 -0
- package/mobile/dist/ui-kit/CookiePopup/CookiePopup.js +22 -0
- package/mobile/dist/ui-kit/CookiePopup/CookiePopup.js.map +1 -0
- package/mobile/dist/ui-kit/Dialog/CloseButton.js +1 -1
- package/mobile/dist/ui-kit/Dialog/CloseButton.js.map +1 -1
- package/mobile/dist/ui-kit/Dialog/Dialog.js +1 -1
- package/mobile/dist/ui-kit/Dialog/Dialog.js.map +1 -1
- package/mobile/dist/ui-kit/Dialog/useDialogProps.d.ts +1 -1
- package/mobile/dist/ui-kit/Dialog/useDialogProps.js +2 -2
- package/mobile/dist/ui-kit/Dialog/useDialogProps.js.map +1 -1
- package/mobile/dist/ui-kit/LinkWrapper/LinkWrapper.d.ts +1 -0
- package/mobile/dist/ui-kit/LinkWrapper/LinkWrapper.js +2 -2
- package/mobile/dist/ui-kit/LinkWrapper/LinkWrapper.js.map +1 -1
- package/mobile/dist/ui-kit/Sitemap/Sitemap.js +1 -1
- package/mobile/dist/ui-kit/Sitemap/Sitemap.js.map +1 -1
- package/mobile/lib/components/CarouselLinks/CarouselLinks.js +1 -1
- package/mobile/lib/components/CarouselLinks/CarouselLinks.js.map +1 -1
- package/mobile/lib/components/ContentPage/ContentPage.js +2 -1
- package/mobile/lib/components/ContentPage/ContentPage.js.map +1 -1
- package/mobile/lib/components/Header/InternetBankButton.js +1 -1
- package/mobile/lib/components/Header/InternetBankButton.js.map +1 -1
- package/mobile/lib/ui-kit/CookiePopup/CookiePopup.d.ts +8 -0
- package/mobile/lib/ui-kit/CookiePopup/CookiePopup.js +20 -0
- package/mobile/lib/ui-kit/CookiePopup/CookiePopup.js.map +1 -0
- package/mobile/lib/ui-kit/Dialog/CloseButton.js +1 -1
- package/mobile/lib/ui-kit/Dialog/CloseButton.js.map +1 -1
- package/mobile/lib/ui-kit/Dialog/Dialog.js +1 -1
- package/mobile/lib/ui-kit/Dialog/Dialog.js.map +1 -1
- package/mobile/lib/ui-kit/Dialog/useDialogProps.d.ts +1 -1
- package/mobile/lib/ui-kit/Dialog/useDialogProps.js +2 -2
- package/mobile/lib/ui-kit/Dialog/useDialogProps.js.map +1 -1
- package/mobile/lib/ui-kit/LinkWrapper/LinkWrapper.d.ts +1 -0
- package/mobile/lib/ui-kit/LinkWrapper/LinkWrapper.js +2 -2
- package/mobile/lib/ui-kit/LinkWrapper/LinkWrapper.js.map +1 -1
- package/mobile/lib/ui-kit/Sitemap/Sitemap.js +1 -1
- package/mobile/lib/ui-kit/Sitemap/Sitemap.js.map +1 -1
- package/mobile/src/components/CarouselLinks/CarouselLinks.tsx +1 -1
- package/mobile/src/components/ContentPage/ContentPage.tsx +5 -0
- package/mobile/src/components/Header/InternetBankButton.tsx +15 -13
- package/mobile/src/ui-kit/CookiePopup/CookiePopup.tsx +64 -0
- package/mobile/src/ui-kit/Dialog/CloseButton.tsx +1 -1
- package/mobile/src/ui-kit/Dialog/Dialog.tsx +1 -1
- package/mobile/src/ui-kit/Dialog/useDialogProps.ts +2 -1
- package/mobile/src/ui-kit/LinkWrapper/LinkWrapper.tsx +13 -10
- package/mobile/src/ui-kit/Sitemap/Sitemap.tsx +1 -1
- package/package.json +1 -1
- package/src/components/CarouselLinks/CarouselLinks.tsx +1 -1
- package/src/components/ContentPage/ContentPage.tsx +5 -0
- package/src/components/Header/InternetBankButton.tsx +15 -13
- package/src/ui-kit/CookiePopup/CookiePopup.tsx +64 -0
- package/src/ui-kit/Dialog/CloseButton.tsx +1 -1
- package/src/ui-kit/Dialog/Dialog.tsx +1 -1
- package/src/ui-kit/Dialog/useDialogProps.ts +2 -1
- package/src/ui-kit/LinkWrapper/LinkWrapper.tsx +13 -10
- package/src/ui-kit/Sitemap/Sitemap.tsx +1 -1
- package/tailwind.config.cjs +1 -0
|
@@ -7,16 +7,19 @@ interface LinkWrapperProps {
|
|
|
7
7
|
className?: string;
|
|
8
8
|
href?: string;
|
|
9
9
|
target?: Target;
|
|
10
|
+
isRemote?: boolean;
|
|
10
11
|
}
|
|
11
12
|
|
|
12
|
-
export const LinkWrapper = JSX<LinkWrapperProps>(
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
13
|
+
export const LinkWrapper = JSX<LinkWrapperProps>(
|
|
14
|
+
({ className = '', href, target, isRemote = false, children }) => {
|
|
15
|
+
const link = useLink({ isRemote });
|
|
16
|
+
const linkProps = link({ href, target });
|
|
17
|
+
const Tag = href ? 'a' : 'div';
|
|
16
18
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
}
|
|
19
|
+
return (
|
|
20
|
+
<Tag className={style('block', className)} {...(href ? linkProps : {})}>
|
|
21
|
+
{children}
|
|
22
|
+
</Tag>
|
|
23
|
+
);
|
|
24
|
+
},
|
|
25
|
+
);
|
|
@@ -49,7 +49,7 @@ const ColumnItem = JSX<ColumnItemProps>(({ text, index, basePath, ...rest }) =>
|
|
|
49
49
|
const isAnotherPortal =
|
|
50
50
|
projectSettings.BASE_PATH && basePath ? !projectSettings.BASE_PATH.startsWith(basePath) : false;
|
|
51
51
|
|
|
52
|
-
const link = useLink({ isRemote: isAnotherPortal });
|
|
52
|
+
const link = useLink({ isRemote: isAnotherPortal, basePath });
|
|
53
53
|
const { href, target, onClick } = link(rest);
|
|
54
54
|
|
|
55
55
|
return (
|
package/package.json
CHANGED
|
@@ -7,6 +7,7 @@ import type { BlocksRegistry } from '../../model/BlocksRegistry';
|
|
|
7
7
|
import type { ContentPageDef } from '../../model/ContentPageDef';
|
|
8
8
|
import type { JSXBlock, UniBlockProps } from '../../model/JSXBlock';
|
|
9
9
|
import { useBlockRouterProvider } from '../../services/BlockRouter/useBlockRouterProvider';
|
|
10
|
+
import { CookiePopup } from '../../ui-kit/CookiePopup/CookiePopup';
|
|
10
11
|
import { useDialogHandlers } from '../../ui-kit/Dialog/useDialogHandlers';
|
|
11
12
|
import { style } from '../../utils/style';
|
|
12
13
|
import { LikeControl } from '../LikeControl/LikeControl';
|
|
@@ -68,6 +69,10 @@ export const ContentPage: JSXBlock<ContentPageProps> = JSX<ContentPageProps>((pr
|
|
|
68
69
|
: null}
|
|
69
70
|
</div>
|
|
70
71
|
{likeControl ? renderLikeControl() : null}
|
|
72
|
+
<CookiePopup
|
|
73
|
+
termLink={{ href: '/pd-policy#cookie', target: '_blank' }}
|
|
74
|
+
personalDataPolicyLink={{ href: '/pd-policy', target: '_blank' }}
|
|
75
|
+
/>
|
|
71
76
|
</section>
|
|
72
77
|
);
|
|
73
78
|
});
|
|
@@ -13,16 +13,18 @@ const BUTTON_STYLE = {
|
|
|
13
13
|
transparent: 'text-white hover:text-primary-hover',
|
|
14
14
|
};
|
|
15
15
|
|
|
16
|
-
export const InternetBankButton = JSX<InternetBankButtonProps>(({ version, internetBankUrl }) =>
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
16
|
+
export const InternetBankButton = JSX<InternetBankButtonProps>(({ version, internetBankUrl }) =>
|
|
17
|
+
internetBankUrl ? (
|
|
18
|
+
<Button
|
|
19
|
+
href={internetBankUrl}
|
|
20
|
+
ariaLabel="Интернет-банк"
|
|
21
|
+
target="_blank"
|
|
22
|
+
className={style(
|
|
23
|
+
'py-3 ml-3 text-l font-light whitespace-nowrap hover:text-primary-main',
|
|
24
|
+
BUTTON_STYLE[version === 'transparent' ? 'transparent' : 'default'],
|
|
25
|
+
)}
|
|
26
|
+
>
|
|
27
|
+
Интернет-банк
|
|
28
|
+
</Button>
|
|
29
|
+
) : null,
|
|
30
|
+
);
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { JSX } from '@redneckz/uni-jsx';
|
|
2
|
+
import { useCallback } from '@redneckz/uni-jsx/lib/hooks';
|
|
3
|
+
import type { LinkCommonProps } from '../../model/LinkProps';
|
|
4
|
+
import { style } from '../../utils/style';
|
|
5
|
+
import { CloseButton } from '../Dialog/CloseButton';
|
|
6
|
+
import { useDialogProps } from '../Dialog/useDialogProps';
|
|
7
|
+
import { LinkWrapper } from '../LinkWrapper/LinkWrapper';
|
|
8
|
+
import { Paragraph } from '../Paragraph/Paragraph';
|
|
9
|
+
|
|
10
|
+
export interface CookiePopupProps {
|
|
11
|
+
termLink?: LinkCommonProps;
|
|
12
|
+
personalDataPolicyLink?: LinkCommonProps;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export const COOKIE_DIALOG_ID = 'cookie';
|
|
16
|
+
export const LOCAL_STORAGE_NAME = 'cookieClose';
|
|
17
|
+
|
|
18
|
+
export const CookiePopup = JSX<CookiePopupProps>(({ termLink, personalDataPolicyLink }) => {
|
|
19
|
+
const { isOpened, onClose } = useDialogProps(
|
|
20
|
+
COOKIE_DIALOG_ID,
|
|
21
|
+
!globalThis.localStorage?.getItem(LOCAL_STORAGE_NAME),
|
|
22
|
+
);
|
|
23
|
+
|
|
24
|
+
const handleClose = useCallback(() => {
|
|
25
|
+
globalThis.localStorage?.setItem(LOCAL_STORAGE_NAME, 'true');
|
|
26
|
+
|
|
27
|
+
onClose && onClose();
|
|
28
|
+
}, [onClose]);
|
|
29
|
+
|
|
30
|
+
return isOpened ? (
|
|
31
|
+
<div className="container z-40 fixed bottom-0 left-0 right-0 pointer-events-none">
|
|
32
|
+
<div className="bg-white m-6 p-6 rounded-md flex items-center pointer-events-auto shadow-[0_4px_25px_rgba(0,0,0,0.07)]">
|
|
33
|
+
<div className="flex-1">
|
|
34
|
+
<Paragraph size="text-s-light" color="text-primary-text">
|
|
35
|
+
АО «Россельхозбанк» использует
|
|
36
|
+
<LinkWrapper
|
|
37
|
+
isRemote
|
|
38
|
+
className={style(getStyleLinkWrapper(termLink?.href))}
|
|
39
|
+
{...termLink}
|
|
40
|
+
>
|
|
41
|
+
cookie
|
|
42
|
+
</LinkWrapper>
|
|
43
|
+
(файлы с данными о прошлых посещениях сайта) для персонализации сервисов и удобства
|
|
44
|
+
пользователей. Вы можете запретить сохранение cookie в настройках своего браузера.
|
|
45
|
+
<LinkWrapper
|
|
46
|
+
isRemote
|
|
47
|
+
className={style(getStyleLinkWrapper(personalDataPolicyLink?.href))}
|
|
48
|
+
{...personalDataPolicyLink}
|
|
49
|
+
>
|
|
50
|
+
Обработка Ваших персональных данных
|
|
51
|
+
</LinkWrapper>
|
|
52
|
+
производится в соответствии с требованиями Федерального закона от 27.07.2006 № 152-Ф3 «О
|
|
53
|
+
персональных данных».
|
|
54
|
+
</Paragraph>
|
|
55
|
+
</div>
|
|
56
|
+
<div className="w-24 flex justify-end">
|
|
57
|
+
<CloseButton className="bg-main-gray rounded-md" onClick={handleClose} />
|
|
58
|
+
</div>
|
|
59
|
+
</div>
|
|
60
|
+
</div>
|
|
61
|
+
) : null;
|
|
62
|
+
});
|
|
63
|
+
|
|
64
|
+
const getStyleLinkWrapper = (href?: string) => ['inline mx-1', href ? 'text-green-dark' : ''];
|
|
@@ -11,7 +11,7 @@ interface CloseButtonProps {
|
|
|
11
11
|
export const CloseButton = JSX<CloseButtonProps>(({ className, onClick }) => (
|
|
12
12
|
<button
|
|
13
13
|
className={style(
|
|
14
|
-
'
|
|
14
|
+
'flex justify-center items-center w-12 h-12 p-1 bg-transparent border-none',
|
|
15
15
|
className,
|
|
16
16
|
)}
|
|
17
17
|
onClick={onClick}
|
|
@@ -36,7 +36,7 @@ export const Dialog = JSX<DialogProps>(({ className, isOpened, head, children, o
|
|
|
36
36
|
>
|
|
37
37
|
<div className="relative container pb-12 min-h-full">
|
|
38
38
|
<div className="sticky bg-white pt-6 top-0">
|
|
39
|
-
<CloseButton className="absolute top-
|
|
39
|
+
<CloseButton className="absolute top-10 -right-12" onClick={onClose} />
|
|
40
40
|
{head}
|
|
41
41
|
</div>
|
|
42
42
|
{children}
|
|
@@ -7,8 +7,9 @@ import { useDialogHandlers } from './useDialogHandlers';
|
|
|
7
7
|
|
|
8
8
|
export function useDialogProps(
|
|
9
9
|
id: string,
|
|
10
|
+
initOpen = false,
|
|
10
11
|
): DialogProps & DialogInitialParams & { wasOpened: boolean } {
|
|
11
|
-
const [isOpened, { setTrue: open, setFalse: close }] = useBool();
|
|
12
|
+
const [isOpened, { setTrue: open, setFalse: close }] = useBool(initOpen);
|
|
12
13
|
const [params, setParams] = useState<DialogInitialParams>({ id });
|
|
13
14
|
|
|
14
15
|
const wasOpened = useRef(isOpened);
|
|
@@ -7,16 +7,19 @@ interface LinkWrapperProps {
|
|
|
7
7
|
className?: string;
|
|
8
8
|
href?: string;
|
|
9
9
|
target?: Target;
|
|
10
|
+
isRemote?: boolean;
|
|
10
11
|
}
|
|
11
12
|
|
|
12
|
-
export const LinkWrapper = JSX<LinkWrapperProps>(
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
13
|
+
export const LinkWrapper = JSX<LinkWrapperProps>(
|
|
14
|
+
({ className = '', href, target, isRemote = false, children }) => {
|
|
15
|
+
const link = useLink({ isRemote });
|
|
16
|
+
const linkProps = link({ href, target });
|
|
17
|
+
const Tag = href ? 'a' : 'div';
|
|
16
18
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
}
|
|
19
|
+
return (
|
|
20
|
+
<Tag className={style('block', className)} {...(href ? linkProps : {})}>
|
|
21
|
+
{children}
|
|
22
|
+
</Tag>
|
|
23
|
+
);
|
|
24
|
+
},
|
|
25
|
+
);
|
|
@@ -49,7 +49,7 @@ const ColumnItem = JSX<ColumnItemProps>(({ text, index, basePath, ...rest }) =>
|
|
|
49
49
|
const isAnotherPortal =
|
|
50
50
|
projectSettings.BASE_PATH && basePath ? !projectSettings.BASE_PATH.startsWith(basePath) : false;
|
|
51
51
|
|
|
52
|
-
const link = useLink({ isRemote: isAnotherPortal });
|
|
52
|
+
const link = useLink({ isRemote: isAnotherPortal, basePath });
|
|
53
53
|
const { href, target, onClick } = link(rest);
|
|
54
54
|
|
|
55
55
|
return (
|
package/tailwind.config.cjs
CHANGED
|
@@ -216,6 +216,7 @@ module.exports = {
|
|
|
216
216
|
end: 'rgba(var(--color-gradient-to), <alpha-value>)',
|
|
217
217
|
},
|
|
218
218
|
disabled: 'rgba(242, 242, 242, <alpha-value>)',
|
|
219
|
+
gray: 'rgba(235, 237, 240, <alpha-value>)',
|
|
219
220
|
},
|
|
220
221
|
primary: {
|
|
221
222
|
main: 'rgba(var(--color-primary-main), <alpha-value>)',
|