@redneckz/wildless-cms-uni-blocks 0.2.60 → 0.2.63
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/dist/BaseTile.d.ts +2 -1
- package/dist/BaseTile.js +2 -15
- package/dist/BaseTile.js.map +1 -1
- package/dist/BenefitsBlock.d.ts +7 -1
- package/dist/BenefitsBlock.js +2 -3
- package/dist/BenefitsBlock.js.map +1 -1
- package/dist/Blocks.d.ts +5 -1
- package/dist/Blocks.js +4 -0
- package/dist/Blocks.js.map +1 -1
- package/dist/ContentPage.js +1 -1
- package/dist/ContentPage.js.map +1 -1
- package/dist/ExchangeRateTile.js +4 -4
- package/dist/ExchangeRateTile.js.map +1 -1
- package/dist/Footer/Footer.js +1 -1
- package/dist/Footer/Footer.js.map +1 -1
- package/dist/Footer/HorizontalNavigation.js +1 -1
- package/dist/Footer/HorizontalNavigation.js.map +1 -1
- package/dist/Footer/Sitemap.js +1 -1
- package/dist/Footer/SocialMedia.js +7 -7
- package/dist/Footer/SocialMedia.js.map +1 -1
- package/dist/Footer/TextInformation.js +1 -1
- package/dist/Footer/TextInformation.js.map +1 -1
- package/dist/Gallery.d.ts +16 -0
- package/dist/Gallery.js +37 -0
- package/dist/Gallery.js.map +1 -0
- package/dist/Header/HeaderSecondaryMenu.js +2 -2
- package/dist/Header/HeaderSecondaryMenu.js.map +1 -1
- package/dist/MobileBlocks.d.ts +1 -0
- package/dist/MobileBlocks.js +2 -0
- package/dist/MobileBlocks.js.map +1 -1
- package/dist/ProductBlockInner.d.ts +2 -1
- package/dist/ProductBlockInner.js +4 -4
- package/dist/ProductBlockInner.js.map +1 -1
- package/dist/ProductTile.d.ts +2 -1
- package/dist/ProductTile.js.map +1 -1
- package/dist/ProjectSettings.d.ts +2 -0
- package/dist/ProjectSettings.js +3 -0
- package/dist/ProjectSettings.js.map +1 -1
- package/dist/StepsBlock.d.ts +2 -7
- package/dist/StepsBlock.js +4 -4
- package/dist/StepsBlock.js.map +1 -1
- package/dist/TextBlock.d.ts +14 -0
- package/dist/TextBlock.js +36 -0
- package/dist/TextBlock.js.map +1 -0
- package/dist/types.d.ts +0 -6
- package/dist/ui-kit/ArrowButton.d.ts +6 -0
- package/dist/ui-kit/ArrowButton.js +8 -0
- package/dist/ui-kit/ArrowButton.js.map +1 -0
- package/dist/ui-kit/Button.js +1 -1
- package/dist/ui-kit/Icon.d.ts +11 -0
- package/dist/ui-kit/Icon.js +7 -0
- package/dist/ui-kit/Icon.js.map +1 -0
- package/dist/ui-kit/IconButton.d.ts +2 -1
- package/dist/ui-kit/IconButton.js +2 -3
- package/dist/ui-kit/IconButton.js.map +1 -1
- package/dist/ui-kit/SearchBar.js +4 -4
- package/dist/ui-kit/SearchBar.js.map +1 -1
- package/dist/ui-kit/Title.d.ts +11 -0
- package/dist/ui-kit/Title.js +17 -0
- package/dist/ui-kit/Title.js.map +1 -0
- package/lib/BaseTile.d.ts +2 -1
- package/lib/BaseTile.js +2 -15
- package/lib/BaseTile.js.map +1 -1
- package/lib/BenefitsBlock.d.ts +7 -1
- package/lib/BenefitsBlock.js +2 -3
- package/lib/BenefitsBlock.js.map +1 -1
- package/lib/Blocks.d.ts +5 -1
- package/lib/Blocks.js +4 -0
- package/lib/Blocks.js.map +1 -1
- package/lib/ContentPage.js +1 -1
- package/lib/ContentPage.js.map +1 -1
- package/lib/ExchangeRateTile.js +4 -4
- package/lib/ExchangeRateTile.js.map +1 -1
- package/lib/Footer/Footer.js +1 -1
- package/lib/Footer/Footer.js.map +1 -1
- package/lib/Footer/HorizontalNavigation.js +1 -1
- package/lib/Footer/HorizontalNavigation.js.map +1 -1
- package/lib/Footer/Sitemap.js +1 -1
- package/lib/Footer/SocialMedia.js +7 -7
- package/lib/Footer/SocialMedia.js.map +1 -1
- package/lib/Footer/TextInformation.js +1 -1
- package/lib/Footer/TextInformation.js.map +1 -1
- package/lib/Gallery.d.ts +16 -0
- package/lib/Gallery.js +35 -0
- package/lib/Gallery.js.map +1 -0
- package/lib/Header/HeaderSecondaryMenu.js +2 -2
- package/lib/Header/HeaderSecondaryMenu.js.map +1 -1
- package/lib/MobileBlocks.d.ts +1 -0
- package/lib/MobileBlocks.js +2 -0
- package/lib/MobileBlocks.js.map +1 -1
- package/lib/ProductBlockInner.d.ts +2 -1
- package/lib/ProductBlockInner.js +4 -4
- package/lib/ProductBlockInner.js.map +1 -1
- package/lib/ProductTile.d.ts +2 -1
- package/lib/ProductTile.js.map +1 -1
- package/lib/ProjectSettings.d.ts +2 -0
- package/lib/ProjectSettings.js +3 -0
- package/lib/ProjectSettings.js.map +1 -1
- package/lib/StepsBlock.d.ts +2 -7
- package/lib/StepsBlock.js +4 -4
- package/lib/StepsBlock.js.map +1 -1
- package/lib/TextBlock.d.ts +14 -0
- package/lib/TextBlock.js +34 -0
- package/lib/TextBlock.js.map +1 -0
- package/lib/common.css +1 -1
- package/lib/types.d.ts +0 -6
- package/lib/ui-kit/ArrowButton.d.ts +6 -0
- package/lib/ui-kit/ArrowButton.js +6 -0
- package/lib/ui-kit/ArrowButton.js.map +1 -0
- package/lib/ui-kit/Button.js +1 -1
- package/lib/ui-kit/Icon.d.ts +11 -0
- package/lib/ui-kit/Icon.js +5 -0
- package/lib/ui-kit/Icon.js.map +1 -0
- package/lib/ui-kit/IconButton.d.ts +2 -1
- package/lib/ui-kit/IconButton.js +2 -3
- package/lib/ui-kit/IconButton.js.map +1 -1
- package/lib/ui-kit/SearchBar.js +4 -4
- package/lib/ui-kit/SearchBar.js.map +1 -1
- package/lib/ui-kit/Title.d.ts +11 -0
- package/lib/ui-kit/Title.js +15 -0
- package/lib/ui-kit/Title.js.map +1 -0
- package/package.json +9 -4
- package/src/BaseTile.tsx +8 -17
- package/src/BenefitsBlock.tsx +13 -6
- package/src/Blocks.ts +7 -1
- package/src/ContentPage.page.json +29 -1
- package/src/ContentPage.tsx +1 -1
- package/src/ExchangeRateTile.tsx +4 -4
- package/src/Footer/Footer.tsx +2 -2
- package/src/Footer/HorizontalNavigation.tsx +1 -1
- package/src/Footer/Sitemap.tsx +1 -1
- package/src/Footer/SocialMedia.tsx +9 -9
- package/src/Footer/TextInformation.tsx +2 -2
- package/src/Gallery.fixture.tsx +213 -0
- package/src/Gallery.tsx +132 -0
- package/src/Header/HeaderSecondaryMenu.tsx +5 -5
- package/src/MobileAppTile.fixture.tsx +16 -0
- package/src/MobileBlocks.ts +2 -0
- package/src/ProductBlockInner.tsx +13 -10
- package/src/ProductTile.tsx +4 -3
- package/src/ProjectSettings.ts +4 -0
- package/src/StepsBlock.tsx +5 -5
- package/src/TextBlock.fixture.tsx +116 -0
- package/src/TextBlock.tsx +72 -0
- package/src/Tile.tsx +1 -1
- package/src/common.css +15 -15
- package/src/icons/ActualBalanceIcon.svg +186 -0
- package/src/icons/AppleIcon.svg +13 -0
- package/src/icons/CalendarIcon.svg +17 -0
- package/src/icons/ClockIcon.svg +208 -0
- package/src/icons/ComfortableCompIcon.svg +373 -0
- package/src/icons/DollarIcon.svg +10 -0
- package/src/icons/EmptyWalletIcon.svg +17 -0
- package/src/icons/EuroIcon.svg +10 -0
- package/src/icons/GridIcon.svg +7 -0
- package/src/icons/LoupeIcon.svg +9 -0
- package/src/icons/NewDocIcon.svg +250 -0
- package/src/icons/OkIcon.svg +6 -0
- package/src/icons/PassSendIcon.svg +237 -0
- package/src/icons/PercentageSquareIcon.svg +16 -0
- package/src/icons/PlayMarketIcon.svg +6 -0
- package/src/icons/ProfileIcon.svg +16 -0
- package/src/icons/SignDocsIcon.svg +287 -0
- package/src/icons/TelegramIcon.svg +6 -0
- package/{dist/Icons/VKIcon.js → src/icons/VKIcon.svg} +8 -6
- package/src/setup-fixture.ts +15 -7
- package/src/types.ts +0 -8
- package/src/ui-kit/ArrowButton.tsx +34 -0
- package/src/ui-kit/Button.fixture.tsx +1 -1
- package/src/ui-kit/Button.tsx +1 -1
- package/src/ui-kit/Icon.tsx +46 -0
- package/src/ui-kit/IconButton.tsx +5 -5
- package/src/ui-kit/SearchBar.tsx +26 -19
- package/src/ui-kit/Title.tsx +25 -0
- package/dist/Icons/ActualBalanceIcon.d.ts +0 -1
- package/dist/Icons/ActualBalanceIcon.js +0 -12
- package/dist/Icons/ActualBalanceIcon.js.map +0 -1
- package/dist/Icons/AppleIcon.d.ts +0 -1
- package/dist/Icons/AppleIcon.js +0 -6
- package/dist/Icons/AppleIcon.js.map +0 -1
- package/dist/Icons/CalendarIcon.d.ts +0 -1
- package/dist/Icons/CalendarIcon.js +0 -6
- package/dist/Icons/CalendarIcon.js.map +0 -1
- package/dist/Icons/ClockIcon.d.ts +0 -1
- package/dist/Icons/ClockIcon.js +0 -6
- package/dist/Icons/ClockIcon.js.map +0 -1
- package/dist/Icons/ComfortableCompIcon.d.ts +0 -1
- package/dist/Icons/ComfortableCompIcon.js +0 -8
- package/dist/Icons/ComfortableCompIcon.js.map +0 -1
- package/dist/Icons/DollarIcon.d.ts +0 -1
- package/dist/Icons/DollarIcon.js +0 -6
- package/dist/Icons/DollarIcon.js.map +0 -1
- package/dist/Icons/EmptyWalletIcon.d.ts +0 -1
- package/dist/Icons/EmptyWalletIcon.js +0 -6
- package/dist/Icons/EmptyWalletIcon.js.map +0 -1
- package/dist/Icons/EuroIcon.d.ts +0 -1
- package/dist/Icons/EuroIcon.js +0 -6
- package/dist/Icons/EuroIcon.js.map +0 -1
- package/dist/Icons/GridIcon.d.ts +0 -1
- package/dist/Icons/GridIcon.js +0 -6
- package/dist/Icons/GridIcon.js.map +0 -1
- package/dist/Icons/LoupeIcon.d.ts +0 -1
- package/dist/Icons/LoupeIcon.js +0 -6
- package/dist/Icons/LoupeIcon.js.map +0 -1
- package/dist/Icons/NewDocIcon.d.ts +0 -1
- package/dist/Icons/NewDocIcon.js +0 -8
- package/dist/Icons/NewDocIcon.js.map +0 -1
- package/dist/Icons/OkIcon.d.ts +0 -1
- package/dist/Icons/OkIcon.js +0 -6
- package/dist/Icons/OkIcon.js.map +0 -1
- package/dist/Icons/PassSendIcon.d.ts +0 -1
- package/dist/Icons/PassSendIcon.js +0 -12
- package/dist/Icons/PassSendIcon.js.map +0 -1
- package/dist/Icons/PercentageSquareIcon.d.ts +0 -1
- package/dist/Icons/PercentageSquareIcon.js +0 -6
- package/dist/Icons/PercentageSquareIcon.js.map +0 -1
- package/dist/Icons/PlayMarket.d.ts +0 -1
- package/dist/Icons/PlayMarket.js +0 -6
- package/dist/Icons/PlayMarket.js.map +0 -1
- package/dist/Icons/ProfileIcon.d.ts +0 -1
- package/dist/Icons/ProfileIcon.js +0 -6
- package/dist/Icons/ProfileIcon.js.map +0 -1
- package/dist/Icons/SignDocsIcon.d.ts +0 -1
- package/dist/Icons/SignDocsIcon.js +0 -10
- package/dist/Icons/SignDocsIcon.js.map +0 -1
- package/dist/Icons/TelegramIcon.d.ts +0 -1
- package/dist/Icons/TelegramIcon.js +0 -6
- package/dist/Icons/TelegramIcon.js.map +0 -1
- package/dist/Icons/VKIcon.d.ts +0 -1
- package/dist/Icons/VKIcon.js.map +0 -1
- package/dist/Icons/index.d.ts +0 -19
- package/dist/Icons/index.js +0 -41
- package/dist/Icons/index.js.map +0 -1
- package/lib/Icons/ActualBalanceIcon.d.ts +0 -1
- package/lib/Icons/ActualBalanceIcon.js +0 -9
- package/lib/Icons/ActualBalanceIcon.js.map +0 -1
- package/lib/Icons/AppleIcon.d.ts +0 -1
- package/lib/Icons/AppleIcon.js +0 -3
- package/lib/Icons/AppleIcon.js.map +0 -1
- package/lib/Icons/CalendarIcon.d.ts +0 -1
- package/lib/Icons/CalendarIcon.js +0 -3
- package/lib/Icons/CalendarIcon.js.map +0 -1
- package/lib/Icons/ClockIcon.d.ts +0 -1
- package/lib/Icons/ClockIcon.js +0 -3
- package/lib/Icons/ClockIcon.js.map +0 -1
- package/lib/Icons/ComfortableCompIcon.d.ts +0 -1
- package/lib/Icons/ComfortableCompIcon.js +0 -5
- package/lib/Icons/ComfortableCompIcon.js.map +0 -1
- package/lib/Icons/DollarIcon.d.ts +0 -1
- package/lib/Icons/DollarIcon.js +0 -3
- package/lib/Icons/DollarIcon.js.map +0 -1
- package/lib/Icons/EmptyWalletIcon.d.ts +0 -1
- package/lib/Icons/EmptyWalletIcon.js +0 -3
- package/lib/Icons/EmptyWalletIcon.js.map +0 -1
- package/lib/Icons/EuroIcon.d.ts +0 -1
- package/lib/Icons/EuroIcon.js +0 -3
- package/lib/Icons/EuroIcon.js.map +0 -1
- package/lib/Icons/GridIcon.d.ts +0 -1
- package/lib/Icons/GridIcon.js +0 -3
- package/lib/Icons/GridIcon.js.map +0 -1
- package/lib/Icons/LoupeIcon.d.ts +0 -1
- package/lib/Icons/LoupeIcon.js +0 -3
- package/lib/Icons/LoupeIcon.js.map +0 -1
- package/lib/Icons/NewDocIcon.d.ts +0 -1
- package/lib/Icons/NewDocIcon.js +0 -5
- package/lib/Icons/NewDocIcon.js.map +0 -1
- package/lib/Icons/OkIcon.d.ts +0 -1
- package/lib/Icons/OkIcon.js +0 -3
- package/lib/Icons/OkIcon.js.map +0 -1
- package/lib/Icons/PassSendIcon.d.ts +0 -1
- package/lib/Icons/PassSendIcon.js +0 -9
- package/lib/Icons/PassSendIcon.js.map +0 -1
- package/lib/Icons/PercentageSquareIcon.d.ts +0 -1
- package/lib/Icons/PercentageSquareIcon.js +0 -3
- package/lib/Icons/PercentageSquareIcon.js.map +0 -1
- package/lib/Icons/PlayMarket.d.ts +0 -1
- package/lib/Icons/PlayMarket.js +0 -3
- package/lib/Icons/PlayMarket.js.map +0 -1
- package/lib/Icons/ProfileIcon.d.ts +0 -1
- package/lib/Icons/ProfileIcon.js +0 -3
- package/lib/Icons/ProfileIcon.js.map +0 -1
- package/lib/Icons/SignDocsIcon.d.ts +0 -1
- package/lib/Icons/SignDocsIcon.js +0 -7
- package/lib/Icons/SignDocsIcon.js.map +0 -1
- package/lib/Icons/TelegramIcon.d.ts +0 -1
- package/lib/Icons/TelegramIcon.js +0 -3
- package/lib/Icons/TelegramIcon.js.map +0 -1
- package/lib/Icons/VKIcon.d.ts +0 -1
- package/lib/Icons/VKIcon.js +0 -3
- package/lib/Icons/VKIcon.js.map +0 -1
- package/lib/Icons/index.d.ts +0 -19
- package/lib/Icons/index.js +0 -20
- package/lib/Icons/index.js.map +0 -1
- package/src/Icons/ActualBalanceIcon.tsx +0 -202
- package/src/Icons/AppleIcon.tsx +0 -15
- package/src/Icons/CalendarIcon.tsx +0 -19
- package/src/Icons/ClockIcon.tsx +0 -212
- package/src/Icons/ComfortableCompIcon.tsx +0 -379
- package/src/Icons/DollarIcon.tsx +0 -12
- package/src/Icons/EmptyWalletIcon.tsx +0 -25
- package/src/Icons/EuroIcon.tsx +0 -12
- package/src/Icons/GridIcon.tsx +0 -9
- package/src/Icons/LoupeIcon.tsx +0 -11
- package/src/Icons/NewDocIcon.tsx +0 -262
- package/src/Icons/OkIcon.tsx +0 -8
- package/src/Icons/PassSendIcon.tsx +0 -250
- package/src/Icons/PercentageSquareIcon.tsx +0 -18
- package/src/Icons/PlayMarket.tsx +0 -8
- package/src/Icons/ProfileIcon.tsx +0 -18
- package/src/Icons/SignDocsIcon.tsx +0 -295
- package/src/Icons/TelegramIcon.tsx +0 -8
- package/src/Icons/VKIcon.tsx +0 -10
- package/src/Icons/index.ts +0 -19
package/lib/ui-kit/SearchBar.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "@redneckz/uni-jsx/jsx-runtime";
|
|
2
2
|
import { JSX } from '@redneckz/uni-jsx';
|
|
3
|
-
import {
|
|
3
|
+
import { Icon } from './Icon.js';
|
|
4
4
|
export const SearchBar = JSX(({ className, context }) => {
|
|
5
|
-
const
|
|
6
|
-
return (_jsxs("form", { className: `relative ${className || ''}`, children: [_jsxs("div", { className: "absolute rounded
|
|
5
|
+
const { term, setTerm } = context.useSearch();
|
|
6
|
+
return (_jsxs("form", { className: `relative ${className || ''}`, children: [_jsxs("div", { className: "absolute rounded h-full flex items-center justify-center pl-4 max-w-[170px] gap-3.5 pointer-events-none", children: [_jsx("div", { className: "w-[24px] h-[24px]", children: _jsx(Icon, { name: "LoupeIcon", width: "24", height: "24" }) }), !term && (_jsx("span", { className: "font-sans font-normal text-base text-secondary-text", children: "\u041F\u043E\u0438\u0441\u043A \u043F\u043E \u0441\u0430\u0439\u0442\u0443" }))] }), _jsx("input", { className: "pl-12 w-full font-sans font-normal text-base text-black border border-solid border-main-divider rounded h-full box-border outline-none pr-[6%]", value: term, onChange: (e) => setTerm(e.target.value), type: "text", name: "s" }), term && (_jsx("button", { type: "submit", className: "absolute font-sans font-normal text-sm cursor-pointer bg-transparent hover:bg-primary-hover active:bg-primary-active text-primary-main hover:text-white border-none px-5 py-2 rounded top-1 right-1 outline-none", onClick: (e) => {
|
|
7
7
|
e.preventDefault();
|
|
8
8
|
console.log('click');
|
|
9
|
-
}, children: "\u041D\u0430\u0439\u0442\u0438" })] }));
|
|
9
|
+
}, children: "\u041D\u0430\u0439\u0442\u0438" }))] }));
|
|
10
10
|
});
|
|
11
11
|
//# sourceMappingURL=SearchBar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchBar.js","sourceRoot":"","sources":["../../src/ui-kit/SearchBar.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAExC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"SearchBar.js","sourceRoot":"","sources":["../../src/ui-kit/SearchBar.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAExC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,CAAgB,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE;IACrE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAC9C,OAAO,CACL,gBAAM,SAAS,EAAE,YAAY,SAAS,IAAI,EAAE,EAAE,aAC5C,eAAK,SAAS,EAAC,yGAAyG,aACtH,cAAK,SAAS,EAAC,mBAAmB,YAChC,KAAC,IAAI,IAAC,IAAI,EAAC,WAAW,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,GAAG,GAC5C,EACL,CAAC,IAAI,IAAI,CACR,eAAM,SAAS,EAAC,qDAAqD,2FAE9D,CACR,IACG,EACN,gBACE,SAAS,EAAC,gJAAgJ,EAC1J,KAAK,EAAE,IAAI,EACX,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EACxC,IAAI,EAAC,MAAM,EACX,IAAI,EAAC,GAAG,GACR,EACD,IAAI,IAAI,CACP,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,kNAAkN,EAC5N,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;oBACb,CAAC,CAAC,cAAc,EAAE,CAAC;oBACnB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACvB,CAAC,+CAGM,CACV,IACI,CACR,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export declare enum SizeTableClass {
|
|
2
|
+
'XL' = "text-title-lg",
|
|
3
|
+
'L' = "text-title",
|
|
4
|
+
'M' = "text-title-sm",
|
|
5
|
+
'S' = "text-title-xs"
|
|
6
|
+
}
|
|
7
|
+
export declare type TitleSize = keyof typeof SizeTableClass;
|
|
8
|
+
export interface TitleProps extends Partial<HTMLHeadingElement> {
|
|
9
|
+
size?: TitleSize;
|
|
10
|
+
}
|
|
11
|
+
export declare const Title: (props: import("@redneckz/uni-jsx").PropsWithChildren<TitleProps, any>, context?: any) => any;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { jsx as _jsx } from "@redneckz/uni-jsx/jsx-runtime";
|
|
2
|
+
import { JSX } from '@redneckz/uni-jsx';
|
|
3
|
+
export var SizeTableClass;
|
|
4
|
+
(function (SizeTableClass) {
|
|
5
|
+
SizeTableClass["XL"] = "text-title-lg";
|
|
6
|
+
SizeTableClass["L"] = "text-title";
|
|
7
|
+
SizeTableClass["M"] = "text-title-sm";
|
|
8
|
+
SizeTableClass["S"] = "text-title-xs";
|
|
9
|
+
})(SizeTableClass || (SizeTableClass = {}));
|
|
10
|
+
export const Title = JSX(({ size = 'L', className, children, ...rest }) => {
|
|
11
|
+
const Tag = size === 'XL' ? 'h1' : 'h2';
|
|
12
|
+
return (_jsx(Tag, { className: getClasses(SizeTableClass[size], className), ...rest, children: children }));
|
|
13
|
+
});
|
|
14
|
+
const getClasses = (...classes) => classes.filter(Boolean).join(' ');
|
|
15
|
+
//# sourceMappingURL=Title.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Title.js","sourceRoot":"","sources":["../../src/ui-kit/Title.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAExC,MAAM,CAAN,IAAY,cAKX;AALD,WAAY,cAAc;IACxB,sCAAsB,CAAA;IACtB,kCAAkB,CAAA;IAClB,qCAAqB,CAAA;IACrB,qCAAqB,CAAA;AACvB,CAAC,EALW,cAAc,KAAd,cAAc,QAKzB;AAQD,MAAM,CAAC,MAAM,KAAK,GAAG,GAAG,CAAa,CAAC,EAAE,IAAI,GAAG,GAAG,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE;IACpF,MAAM,GAAG,GAAG,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IACxC,OAAO,CACL,KAAC,GAAG,IAAC,SAAS,EAAE,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,KAAM,IAAI,YAClE,QAAQ,GACL,CACP,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,MAAM,UAAU,GAAG,CAAC,GAAG,OAA+B,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@redneckz/wildless-cms-uni-blocks",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.63",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -74,16 +74,20 @@
|
|
|
74
74
|
"url": "https://github.com/redneckz/wildless-cms-uni-blocks/issues"
|
|
75
75
|
},
|
|
76
76
|
"scripts": {
|
|
77
|
-
"
|
|
77
|
+
"start": "npm run cosmos",
|
|
78
|
+
"build": "npm run build:lib && npm run build:commonjs && npm run build:style && npm run build:icons",
|
|
78
79
|
"build:lib": "rimraf ./lib && tsc --build --verbose",
|
|
79
80
|
"postbuild:lib": "replace-in-file --configFile=replace-config.lib.cjs --verbose",
|
|
80
81
|
"build:commonjs": "rimraf ./dist && tsc --module commonjs --noImplicitUseStrict --outDir dist",
|
|
81
82
|
"bundle": "rimraf ./bundle && rollup -c",
|
|
82
83
|
"build:style": "postcss './src/**/*.css' --env production --dir ./lib",
|
|
83
84
|
"postbuild:style": "npm run size",
|
|
85
|
+
"build:icons": "svgo -f ./src/icons -o ./cosmos-static/icons",
|
|
84
86
|
"size": "size-limit",
|
|
85
87
|
"test": "jest --coverage",
|
|
88
|
+
"precosmos": "npm run build:icons",
|
|
86
89
|
"cosmos": "cosmos",
|
|
90
|
+
"precosmos:export": "npm run build:icons",
|
|
87
91
|
"cosmos:export": "cosmos-export",
|
|
88
92
|
"prepare": "husky install || exit 0"
|
|
89
93
|
},
|
|
@@ -130,6 +134,7 @@
|
|
|
130
134
|
"rollup-plugin-terser": "^7.0.2",
|
|
131
135
|
"size-limit": "^7.0.8",
|
|
132
136
|
"style-loader": "^3.3.1",
|
|
137
|
+
"svgo": "^2.8.0",
|
|
133
138
|
"tailwindcss": "^3.1.1",
|
|
134
139
|
"ts-jest": "^28.0.4",
|
|
135
140
|
"ts-loader": "^9.3.0",
|
|
@@ -145,8 +150,8 @@
|
|
|
145
150
|
],
|
|
146
151
|
"lint-staged": {
|
|
147
152
|
"src/**/*.{js,jsx,ts,tsx,css}": "prettier --write",
|
|
148
|
-
"
|
|
149
|
-
"cosmos
|
|
153
|
+
"*.{js,jsx,ts,tsx,css,json}": [
|
|
154
|
+
"npm run cosmos:export",
|
|
150
155
|
"git add ./docs"
|
|
151
156
|
]
|
|
152
157
|
}
|
package/src/BaseTile.tsx
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { JSX } from '@redneckz/uni-jsx';
|
|
2
2
|
import { Img } from './Img';
|
|
3
|
-
import type { BlockVersion, Picture, UniBlockProps
|
|
3
|
+
import type { BlockVersion, Picture, UniBlockProps } from './types';
|
|
4
4
|
import { BlockItem } from './ui-kit/BlockItem';
|
|
5
5
|
import type { IconButtonProps } from './ui-kit/IconButton';
|
|
6
6
|
import { IconButton } from './ui-kit/IconButton';
|
|
7
|
+
import { Title } from './ui-kit/Title';
|
|
8
|
+
import type { TitleSize } from './ui-kit/Title';
|
|
7
9
|
import { useLink } from './useLink';
|
|
8
10
|
import { getColSpan } from './utils/getColSpan';
|
|
9
11
|
|
|
@@ -37,7 +39,11 @@ export const BaseTile = JSX<BaseTileProps>(
|
|
|
37
39
|
const { handlerDecorator } = context;
|
|
38
40
|
return (
|
|
39
41
|
<div className={`font-sans flex flex-col grow h-full`}>
|
|
40
|
-
{title &&
|
|
42
|
+
{title && (
|
|
43
|
+
<Title size={titleSize || getTitleSizeByClassName(className)} className={TITLE_CLASSES}>
|
|
44
|
+
{title}
|
|
45
|
+
</Title>
|
|
46
|
+
)}
|
|
41
47
|
<div className="flex grow justify-between">
|
|
42
48
|
<div className="flex flex-col justify-between items-start">
|
|
43
49
|
<div>
|
|
@@ -62,21 +68,6 @@ export const BaseTile = JSX<BaseTileProps>(
|
|
|
62
68
|
},
|
|
63
69
|
);
|
|
64
70
|
|
|
65
|
-
function renderTitle(title: string, titleSize: TitleSize) {
|
|
66
|
-
switch (titleSize) {
|
|
67
|
-
case 'XL':
|
|
68
|
-
return <h1 className={`${TITLE_CLASSES} text-title-lg`}>{title}</h1>;
|
|
69
|
-
case 'L':
|
|
70
|
-
return <h2 className={`${TITLE_CLASSES} text-title`}>{title}</h2>;
|
|
71
|
-
case 'M':
|
|
72
|
-
return <h2 className={`${TITLE_CLASSES} text-title-sm`}>{title}</h2>;
|
|
73
|
-
case 'S':
|
|
74
|
-
return <h2 className={`${TITLE_CLASSES} text-title-xs`}>{title}</h2>;
|
|
75
|
-
default:
|
|
76
|
-
return <h2 className={`${TITLE_CLASSES} text-title`}>{title}</h2>;
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
|
|
80
71
|
function getTitleSizeByClassName(className: string = '') {
|
|
81
72
|
const colSpan = getColSpan(className);
|
|
82
73
|
if (colSpan <= 4) {
|
package/src/BenefitsBlock.tsx
CHANGED
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
import { JSX } from '@redneckz/uni-jsx';
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
2
|
+
import type { UniBlockProps } from './types';
|
|
3
|
+
import { Icon, IconName } from './ui-kit/Icon';
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
export interface Benefit {
|
|
6
|
+
label: string;
|
|
7
|
+
description?: string;
|
|
8
|
+
icon?: IconName;
|
|
9
|
+
}
|
|
6
10
|
|
|
7
11
|
export interface BenefitsBlockContent {
|
|
8
12
|
title?: string;
|
|
@@ -30,9 +34,12 @@ const renderStep = (benefit: Benefit, i: number) => {
|
|
|
30
34
|
return (
|
|
31
35
|
<div key={String(i)} className="flex items-center p-10 gap-5 max-w-[580px]">
|
|
32
36
|
{benefit.icon && (
|
|
33
|
-
<
|
|
34
|
-
|
|
35
|
-
|
|
37
|
+
<Icon
|
|
38
|
+
className="h-[70px] w-[70px] min-w-[70px] min-h-[70px]"
|
|
39
|
+
name={benefit.icon}
|
|
40
|
+
width="70"
|
|
41
|
+
height="70"
|
|
42
|
+
/>
|
|
36
43
|
)}
|
|
37
44
|
<div>
|
|
38
45
|
<h3 className="font-medium text-xl m-0">{benefit.label}</h3>
|
package/src/Blocks.ts
CHANGED
|
@@ -12,6 +12,8 @@ import { ProductTile, ProductTileContent } from './ProductTile';
|
|
|
12
12
|
import { BaseTileContent } from './BaseTile';
|
|
13
13
|
import { PromoTile, PromoTileContent } from './PromoTile';
|
|
14
14
|
import { Tile } from './Tile';
|
|
15
|
+
import { TextBlock, TextBlockContent } from './TextBlock';
|
|
16
|
+
import { Gallery, GalleryContent } from './Gallery';
|
|
15
17
|
|
|
16
18
|
export const Blocks = {
|
|
17
19
|
Header,
|
|
@@ -19,6 +21,7 @@ export const Blocks = {
|
|
|
19
21
|
Placeholder,
|
|
20
22
|
Tile,
|
|
21
23
|
PromoTile,
|
|
24
|
+
TextBlock,
|
|
22
25
|
ProductTile,
|
|
23
26
|
ProductBlock,
|
|
24
27
|
StepsBlock,
|
|
@@ -26,6 +29,7 @@ export const Blocks = {
|
|
|
26
29
|
ProductGallery,
|
|
27
30
|
ExchangeRateTile,
|
|
28
31
|
MobileAppTile,
|
|
32
|
+
Gallery,
|
|
29
33
|
};
|
|
30
34
|
|
|
31
35
|
export type BlockContent =
|
|
@@ -33,6 +37,7 @@ export type BlockContent =
|
|
|
33
37
|
| FooterContent
|
|
34
38
|
| PlaceholderContent
|
|
35
39
|
| BaseTileContent
|
|
40
|
+
| TextBlockContent
|
|
36
41
|
| ProductTileContent
|
|
37
42
|
| PromoTileContent
|
|
38
43
|
| ProductBlockInnerContent
|
|
@@ -40,4 +45,5 @@ export type BlockContent =
|
|
|
40
45
|
| BenefitsBlockContent
|
|
41
46
|
| ProductGalleryContent
|
|
42
47
|
| ExchangeRateTileContent
|
|
43
|
-
| MobileAppTileContent
|
|
48
|
+
| MobileAppTileContent
|
|
49
|
+
| GalleryContent;
|
|
@@ -16,6 +16,7 @@
|
|
|
16
16
|
"type": "Header",
|
|
17
17
|
"style": ["col-span-12", "-mx-20", "mb-5", "shadow-[0_8px_32px_0px_#00000014]"],
|
|
18
18
|
"content": {
|
|
19
|
+
"defaultLocation": "Москва",
|
|
19
20
|
"topItems": [
|
|
20
21
|
{
|
|
21
22
|
"href": "https://rshb.ru/",
|
|
@@ -387,7 +388,23 @@
|
|
|
387
388
|
"qr": {
|
|
388
389
|
"href": "https://rshbnaturaldbo.onelink.me/qhkF/f182074f?af_qr=true",
|
|
389
390
|
"src": "data:image/png;base64,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"
|
|
390
|
-
}
|
|
391
|
+
},
|
|
392
|
+
"buttons": [
|
|
393
|
+
{
|
|
394
|
+
"aboveText": "Загрузите в",
|
|
395
|
+
"text": "App Store",
|
|
396
|
+
"icon": "AppleIcon",
|
|
397
|
+
"href": "#",
|
|
398
|
+
"version": "secondary"
|
|
399
|
+
},
|
|
400
|
+
{
|
|
401
|
+
"aboveText": "Доступно в",
|
|
402
|
+
"text": "Google Play",
|
|
403
|
+
"icon": "PlayMarketIcon",
|
|
404
|
+
"href": "#",
|
|
405
|
+
"version": "secondary"
|
|
406
|
+
}
|
|
407
|
+
]
|
|
391
408
|
},
|
|
392
409
|
"mobile": {
|
|
393
410
|
"style": ["col-span-12"]
|
|
@@ -687,6 +704,17 @@
|
|
|
687
704
|
]
|
|
688
705
|
}
|
|
689
706
|
},
|
|
707
|
+
{
|
|
708
|
+
"type": "TextBlock",
|
|
709
|
+
"style": ["col-span-12"],
|
|
710
|
+
"content": {
|
|
711
|
+
"title": "Все карты Россельхозбанка работают",
|
|
712
|
+
"description": "Если не планируете поездку за границу, продолжайте пользоваться картой Своя. Для поездок за границу можно заказать карту 'Кредитная карта Своя Union Pay' на сайте и в приложении Россельхозбанка",
|
|
713
|
+
"blockVersion": "primary",
|
|
714
|
+
"iconVersion": "small"
|
|
715
|
+
}
|
|
716
|
+
},
|
|
717
|
+
|
|
690
718
|
{
|
|
691
719
|
"type": "Footer",
|
|
692
720
|
"style": ["col-span-12"],
|
package/src/ContentPage.tsx
CHANGED
|
@@ -37,7 +37,7 @@ export const ContentPage = JSX<ContentPageProps>(
|
|
|
37
37
|
}) => {
|
|
38
38
|
return (
|
|
39
39
|
<section className="relative" data-theme={colorPalette}>
|
|
40
|
-
<div className={`grid grid-cols-12 gap-1 ${style2className(pageStyle)} ${className}`}>
|
|
40
|
+
<div className={`grid grid-cols-12 gap-1 ${style2className(pageStyle)} ${className || ''}`}>
|
|
41
41
|
{blocks?.length ? blocks.map(renderBlock) : null}
|
|
42
42
|
</div>
|
|
43
43
|
{likeControl && (
|
package/src/ExchangeRateTile.tsx
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { JSX } from '@redneckz/uni-jsx';
|
|
2
|
-
import { DollarIcon, EuroIcon } from './Icons/index';
|
|
3
2
|
import { Tile } from './Tile';
|
|
4
3
|
import type { UniBlockProps } from './types';
|
|
5
4
|
import { ButtonProps } from './ui-kit/Button';
|
|
5
|
+
import { Icon } from './ui-kit/Icon';
|
|
6
6
|
|
|
7
7
|
export interface ExchangeRateTileContent {
|
|
8
8
|
title?: string;
|
|
@@ -14,8 +14,8 @@ const CBR_EXCHANGE_RATE_URL = 'https://www.cbr-xml-daily.ru/daily_json.js';
|
|
|
14
14
|
|
|
15
15
|
const CURRENCY_CODES = ['USD', 'EUR'];
|
|
16
16
|
const CURRENCY_ICONS_MAP = {
|
|
17
|
-
USD: DollarIcon,
|
|
18
|
-
EUR: EuroIcon,
|
|
17
|
+
USD: 'DollarIcon',
|
|
18
|
+
EUR: 'EuroIcon',
|
|
19
19
|
};
|
|
20
20
|
|
|
21
21
|
const buttons: ButtonProps[] = [
|
|
@@ -48,7 +48,7 @@ export const ExchangeRateTile = JSX<ExchangeRateTileProps>(({ className, context
|
|
|
48
48
|
<tr key={code}>
|
|
49
49
|
<CurrencyTD className="pt-4">
|
|
50
50
|
<div className="flex items-center">
|
|
51
|
-
{CURRENCY_ICONS_MAP[code]
|
|
51
|
+
<Icon name={CURRENCY_ICONS_MAP[code]} width="24" height="24" />
|
|
52
52
|
<span className="ml-2">{code}</span>
|
|
53
53
|
</div>
|
|
54
54
|
</CurrencyTD>
|
package/src/Footer/Footer.tsx
CHANGED
|
@@ -24,8 +24,8 @@ export interface FooterProps extends FooterContent, UniBlockProps {}
|
|
|
24
24
|
export const Footer = JSX<FooterProps>(
|
|
25
25
|
({ className, documents, relatedEnterprises, contacts, socialMedia, topItems, context }) => {
|
|
26
26
|
return (
|
|
27
|
-
<footer className={`${className} px-9 py-
|
|
28
|
-
<div className="flex items-stretch gap-32
|
|
27
|
+
<footer className={`${className} px-9 py-10 bg-white`}>
|
|
28
|
+
<div className="flex items-stretch gap-32 pb-8 xl:gap-8">
|
|
29
29
|
<Logo className={`${LEFT_COL_WIDTH_FULL_HD} ${LEFT_COL_WIDTH_SMALL_DESKTOP}`} />
|
|
30
30
|
<SearchBar context={context} className="grow" />
|
|
31
31
|
</div>
|
|
@@ -10,7 +10,7 @@ export const HorizontalNavigation = JSX<FooterLink>(({ className, links, context
|
|
|
10
10
|
return (
|
|
11
11
|
<div className={`${className || ''}`}>
|
|
12
12
|
{links?.length ? (
|
|
13
|
-
<div className="flex justify-between items-center gap-5 py-5 border-solid border-x-0 border-y
|
|
13
|
+
<div className="flex justify-between items-center gap-5 py-5 border-solid border-x-0 border-y border-y-main-divider">
|
|
14
14
|
{links.map((_, i) => (
|
|
15
15
|
<HorizontalNavigationLink
|
|
16
16
|
key={String(i)}
|
package/src/Footer/Sitemap.tsx
CHANGED
|
@@ -48,7 +48,7 @@ interface ColumnItemProps extends LinkContent {
|
|
|
48
48
|
|
|
49
49
|
const ColumnItem = JSX<ColumnItemProps>(({ text, href, target, index }) => (
|
|
50
50
|
<a
|
|
51
|
-
className="block font-sans font-normal text-base text-secondary-text hover:text-primary-
|
|
51
|
+
className="block font-sans font-normal text-base text-secondary-text hover:text-primary-main no-underline"
|
|
52
52
|
href={href}
|
|
53
53
|
target={target || '_self'}
|
|
54
54
|
>
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { JSX } from '@redneckz/uni-jsx';
|
|
2
2
|
import type { LinkContent, UniBlockProps } from '../types';
|
|
3
|
-
import {
|
|
3
|
+
import { Icon, IconName } from '../ui-kit/Icon';
|
|
4
4
|
import { useLink } from '../useLink';
|
|
5
5
|
|
|
6
|
-
const ICONS_MAP = [
|
|
7
|
-
{ origins: ['t.me', 'telegram.org'], icon: TelegramIcon, label: 'Телеграм' },
|
|
8
|
-
{ origins: ['vk.com'], icon: VKIcon, label: 'ВКонтакте' },
|
|
9
|
-
{ origins: ['ok.ru'], icon: OkIcon, label: 'Одноклассники' },
|
|
6
|
+
const ICONS_MAP: Array<{ origins: string[]; icon: IconName; label: string }> = [
|
|
7
|
+
{ origins: ['t.me', 'telegram.org'], icon: 'TelegramIcon', label: 'Телеграм' },
|
|
8
|
+
{ origins: ['vk.com'], icon: 'VKIcon', label: 'ВКонтакте' },
|
|
9
|
+
{ origins: ['ok.ru'], icon: 'OkIcon', label: 'Одноклассники' },
|
|
10
10
|
];
|
|
11
11
|
|
|
12
12
|
export interface SocialMediaProps extends UniBlockProps {
|
|
@@ -17,7 +17,7 @@ export const SocialMedia = JSX<SocialMediaProps>(({ className, media, context })
|
|
|
17
17
|
const router = context.useRouter();
|
|
18
18
|
const { handlerDecorator } = context;
|
|
19
19
|
return (
|
|
20
|
-
<div className={`flex items-end justify-end gap-2
|
|
20
|
+
<div className={`flex items-end justify-end gap-2 pt-[30px] pb-7 ${className || ''}`}>
|
|
21
21
|
{media?.map((_, index) => (
|
|
22
22
|
<MediaButton key={String(index)} {...useLink({ router, handlerDecorator }, _)} />
|
|
23
23
|
))}
|
|
@@ -30,17 +30,17 @@ interface MediaButtonProps {
|
|
|
30
30
|
}
|
|
31
31
|
|
|
32
32
|
const MediaButton = JSX<MediaButtonProps>(({ href }) => {
|
|
33
|
-
const { icon
|
|
33
|
+
const { icon, label } =
|
|
34
34
|
ICONS_MAP.find(({ origins }) => origins.some((_) => href?.includes(_))) || {};
|
|
35
35
|
return (
|
|
36
36
|
<a
|
|
37
|
-
className="flex items-center justify-center border-solid border
|
|
37
|
+
className="flex items-center justify-center border-solid border border-main-divider rounded-full no-underline outline-none w-9 h-9"
|
|
38
38
|
href={href}
|
|
39
39
|
target="_blank"
|
|
40
40
|
rel="noopener noreferrer"
|
|
41
41
|
aria-label={label}
|
|
42
42
|
>
|
|
43
|
-
{
|
|
43
|
+
{icon && <Icon className="block" name={icon} /> /* TODO width & height */}
|
|
44
44
|
</a>
|
|
45
45
|
);
|
|
46
46
|
});
|
|
@@ -8,9 +8,9 @@ export const TextInformation = JSX<FooterLink>(({ className, links, context }) =
|
|
|
8
8
|
const { handlerDecorator } = context;
|
|
9
9
|
return (
|
|
10
10
|
<div className={`${className || ''}`}>
|
|
11
|
-
<div className="
|
|
11
|
+
<div className="pt-5 pb-[5px]">
|
|
12
12
|
<span className="font-sans font-normal text-xs text-secondary-text">
|
|
13
|
-
{`\u00a9\u00A02000-${new Date().getFullYear()}\u00A0АО \u00AB
|
|
13
|
+
{`\u00a9\u00A02000-${new Date().getFullYear()}\u00A0АО \u00ABРоссельхозбанк\u00BB Генеральная лицензия Банка России \u2116\u00A03349 от\u00A012.08.2015\u00A0г.`}
|
|
14
14
|
</span>
|
|
15
15
|
</div>
|
|
16
16
|
{links?.length ? (
|
|
@@ -0,0 +1,213 @@
|
|
|
1
|
+
import { context } from './setup-fixture';
|
|
2
|
+
|
|
3
|
+
import { Gallery, GalleryProps } from './Gallery';
|
|
4
|
+
import { Picture } from './types';
|
|
5
|
+
|
|
6
|
+
const image: Picture = {
|
|
7
|
+
src: 'money-1.png',
|
|
8
|
+
format: 'webp',
|
|
9
|
+
size: {
|
|
10
|
+
width: 140,
|
|
11
|
+
height: 140,
|
|
12
|
+
},
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
const defaultItems = [
|
|
16
|
+
'Качественные фермерские продукты напрямую от производителей',
|
|
17
|
+
'Самая большая база сельских туров по России',
|
|
18
|
+
'Площадки для создания комфортной жизни за городом',
|
|
19
|
+
];
|
|
20
|
+
|
|
21
|
+
const defaultProps: GalleryProps = {
|
|
22
|
+
title: 'Вы можете оплатить бонусными баллами',
|
|
23
|
+
description: 'Удобный каталог с большим ассортиментом товаров и сервисов',
|
|
24
|
+
context,
|
|
25
|
+
cards: [
|
|
26
|
+
{
|
|
27
|
+
title: 'Более 5000 товаров',
|
|
28
|
+
description:
|
|
29
|
+
'Время копить: ставка растет в зависимости от срока нахождения средств на Счете!',
|
|
30
|
+
image,
|
|
31
|
+
href: '/credit-cards',
|
|
32
|
+
items: defaultItems,
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
title: 'Более 1000 развлечений',
|
|
36
|
+
description: 'Порядок и условия предоставления в соответствии с 106 ФЗ',
|
|
37
|
+
image,
|
|
38
|
+
href: '/credit-cards',
|
|
39
|
+
items: defaultItems,
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
title: 'Фермерские продукты',
|
|
43
|
+
description: 'Высокий процент даже при небольшой сумме денежных средств',
|
|
44
|
+
image,
|
|
45
|
+
href: '/credit-cards',
|
|
46
|
+
items: defaultItems,
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
title: '«Моя выгода»',
|
|
50
|
+
description:
|
|
51
|
+
'Время копить: ставка растет в зависимости от срока нахождения средств на Счете!',
|
|
52
|
+
image,
|
|
53
|
+
href: '/credit-cards',
|
|
54
|
+
items: defaultItems,
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
title: 'Фермерские продукты',
|
|
58
|
+
description: 'Высокий процент даже при небольшой сумме денежных средств',
|
|
59
|
+
image,
|
|
60
|
+
href: '/credit-cards',
|
|
61
|
+
items: defaultItems,
|
|
62
|
+
},
|
|
63
|
+
],
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
const textAndButtonProps: GalleryProps = {
|
|
67
|
+
title: 'Вы можете оплатить бонусными баллами',
|
|
68
|
+
description: 'Удобный каталог с большим ассортиментом товаров и сервисов',
|
|
69
|
+
context,
|
|
70
|
+
cards: [
|
|
71
|
+
{
|
|
72
|
+
title: 'Более 5000 товаров',
|
|
73
|
+
description:
|
|
74
|
+
'Время копить: ставка растет в зависимости от срока нахождения средств на Счете!',
|
|
75
|
+
image,
|
|
76
|
+
href: '/credit-cards',
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
title: 'Более 1000 развлечений',
|
|
80
|
+
description: 'Порядок и условия предоставления в соответствии с 106 ФЗ',
|
|
81
|
+
image,
|
|
82
|
+
href: '/credit-cards',
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
title: 'Фермерские продукты',
|
|
86
|
+
description: 'Высокий процент даже при небольшой сумме денежных средств',
|
|
87
|
+
image,
|
|
88
|
+
href: '/credit-cards',
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
title: '«Моя выгода»',
|
|
92
|
+
description:
|
|
93
|
+
'Время копить: ставка растет в зависимости от срока нахождения средств на Счете!',
|
|
94
|
+
image,
|
|
95
|
+
href: '/credit-cards',
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
title: 'Фермерские продукты',
|
|
99
|
+
description: 'Высокий процент даже при небольшой сумме денежных средств',
|
|
100
|
+
image,
|
|
101
|
+
href: '/credit-cards',
|
|
102
|
+
},
|
|
103
|
+
],
|
|
104
|
+
};
|
|
105
|
+
|
|
106
|
+
const listAndButtonProps: GalleryProps = {
|
|
107
|
+
title: 'Вы можете оплатить бонусными баллами',
|
|
108
|
+
description: 'Удобный каталог с большим ассортиментом товаров и сервисов',
|
|
109
|
+
context,
|
|
110
|
+
cards: [
|
|
111
|
+
{
|
|
112
|
+
title: 'Более 5000 товаров',
|
|
113
|
+
image,
|
|
114
|
+
href: '/credit-cards',
|
|
115
|
+
items: defaultItems,
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
title: 'Более 1000 развлечений',
|
|
119
|
+
image,
|
|
120
|
+
href: '/credit-cards',
|
|
121
|
+
items: defaultItems,
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
title: 'Фермерские продукты',
|
|
125
|
+
image,
|
|
126
|
+
href: '/credit-cards',
|
|
127
|
+
items: defaultItems,
|
|
128
|
+
},
|
|
129
|
+
{
|
|
130
|
+
title: '«Моя выгода»',
|
|
131
|
+
image,
|
|
132
|
+
href: '/credit-cards',
|
|
133
|
+
items: defaultItems,
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
title: 'Фермерские продукты',
|
|
137
|
+
image,
|
|
138
|
+
href: '/credit-cards',
|
|
139
|
+
items: defaultItems,
|
|
140
|
+
},
|
|
141
|
+
],
|
|
142
|
+
};
|
|
143
|
+
|
|
144
|
+
const textAndNoButtonProps: GalleryProps = {
|
|
145
|
+
title: 'Вы можете оплатить бонусными баллами',
|
|
146
|
+
description: 'Удобный каталог с большим ассортиментом товаров и сервисов',
|
|
147
|
+
context,
|
|
148
|
+
cards: [
|
|
149
|
+
{
|
|
150
|
+
title: 'Более 5000 товаров',
|
|
151
|
+
description:
|
|
152
|
+
'Время копить: ставка растет в зависимости от срока нахождения средств на Счете!',
|
|
153
|
+
image,
|
|
154
|
+
},
|
|
155
|
+
{
|
|
156
|
+
title: 'Более 1000 развлечений',
|
|
157
|
+
description: 'Порядок и условия предоставления в соответствии с 106 ФЗ',
|
|
158
|
+
image,
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
title: 'Фермерские продукты',
|
|
162
|
+
description: 'Высокий процент даже при небольшой сумме денежных средств',
|
|
163
|
+
image,
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
title: '«Моя выгода»',
|
|
167
|
+
description:
|
|
168
|
+
'Время копить: ставка растет в зависимости от срока нахождения средств на Счете!',
|
|
169
|
+
image,
|
|
170
|
+
},
|
|
171
|
+
{
|
|
172
|
+
title: 'Фермерские продукты',
|
|
173
|
+
description: 'Высокий процент даже при небольшой сумме денежных средств',
|
|
174
|
+
image,
|
|
175
|
+
},
|
|
176
|
+
],
|
|
177
|
+
};
|
|
178
|
+
|
|
179
|
+
const onlyTitleProps: GalleryProps = {
|
|
180
|
+
title: 'Вы можете оплатить бонусными баллами',
|
|
181
|
+
description: 'Удобный каталог с большим ассортиментом товаров и сервисов',
|
|
182
|
+
context,
|
|
183
|
+
cards: [
|
|
184
|
+
{
|
|
185
|
+
title: 'Более 5000 товаров',
|
|
186
|
+
image,
|
|
187
|
+
},
|
|
188
|
+
{
|
|
189
|
+
title: 'Более 1000 развлечений',
|
|
190
|
+
image,
|
|
191
|
+
},
|
|
192
|
+
{
|
|
193
|
+
title: 'Фермерские продукты',
|
|
194
|
+
image,
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
title: '«Моя выгода»',
|
|
198
|
+
image,
|
|
199
|
+
},
|
|
200
|
+
{
|
|
201
|
+
title: 'Фермерские продукты',
|
|
202
|
+
image,
|
|
203
|
+
},
|
|
204
|
+
],
|
|
205
|
+
};
|
|
206
|
+
|
|
207
|
+
export default {
|
|
208
|
+
default: <Gallery {...defaultProps} />,
|
|
209
|
+
'text and button': <Gallery {...textAndButtonProps} />,
|
|
210
|
+
'list and button': <Gallery {...listAndButtonProps} />,
|
|
211
|
+
'text and no button': <Gallery {...textAndNoButtonProps} />,
|
|
212
|
+
'only title': <Gallery {...onlyTitleProps} />,
|
|
213
|
+
};
|