@redneckz/wildless-cms-uni-blocks 0.2.52 → 0.2.55

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.
Files changed (114) hide show
  1. package/dist/BaseTile.d.ts +13 -0
  2. package/dist/BaseTile.js +35 -0
  3. package/dist/BaseTile.js.map +1 -0
  4. package/dist/Blocks.d.ts +2 -2
  5. package/dist/Blocks.js.map +1 -1
  6. package/dist/ContentPageContext.d.ts +2 -0
  7. package/dist/ExchangeRateTile.js +7 -5
  8. package/dist/ExchangeRateTile.js.map +1 -1
  9. package/dist/Header/Header.js +2 -2
  10. package/dist/Header/Header.js.map +1 -1
  11. package/dist/Header/HeaderContent.d.ts +1 -1
  12. package/dist/Header/HeaderSecondaryMenu.d.ts +5 -2
  13. package/dist/Header/HeaderSecondaryMenu.js +3 -2
  14. package/dist/Header/HeaderSecondaryMenu.js.map +1 -1
  15. package/dist/MobileAppTile.js +1 -1
  16. package/dist/MobileAppTile.js.map +1 -1
  17. package/dist/ProductBlock.d.ts +2 -0
  18. package/dist/ProductBlock.js +7 -2
  19. package/dist/ProductBlock.js.map +1 -1
  20. package/dist/ProductBlockInner.d.ts +3 -10
  21. package/dist/ProductBlockInner.js +3 -15
  22. package/dist/ProductBlockInner.js.map +1 -1
  23. package/dist/ProductTile.d.ts +4 -13
  24. package/dist/ProductTile.js +4 -11
  25. package/dist/ProductTile.js.map +1 -1
  26. package/dist/Tile.d.ts +3 -11
  27. package/dist/Tile.js +4 -26
  28. package/dist/Tile.js.map +1 -1
  29. package/dist/api/DaDataAPI.d.ts +3 -0
  30. package/dist/api/DaDataAPI.js +33 -0
  31. package/dist/api/DaDataAPI.js.map +1 -0
  32. package/dist/api/LikeAPI.d.ts +1 -1
  33. package/dist/api/LikeAPI.js +2 -2
  34. package/dist/api/LikeAPI.js.map +1 -1
  35. package/dist/content-page-repository/ContentPageRepository.d.ts +1 -0
  36. package/dist/content-page-repository/ContentPageRepository.js +6 -0
  37. package/dist/content-page-repository/ContentPageRepository.js.map +1 -1
  38. package/dist/content-page-repository/toMobilePage.d.ts +2 -0
  39. package/dist/content-page-repository/toMobilePage.js +23 -0
  40. package/dist/content-page-repository/toMobilePage.js.map +1 -0
  41. package/dist/types.d.ts +14 -0
  42. package/dist/utils/getCurrentPosition.d.ts +1 -0
  43. package/dist/utils/getCurrentPosition.js +5 -0
  44. package/dist/utils/getCurrentPosition.js.map +1 -0
  45. package/lib/BaseTile.d.ts +13 -0
  46. package/lib/BaseTile.js +33 -0
  47. package/lib/BaseTile.js.map +1 -0
  48. package/lib/Blocks.d.ts +2 -2
  49. package/lib/Blocks.js.map +1 -1
  50. package/lib/ContentPageContext.d.ts +2 -0
  51. package/lib/ExchangeRateTile.js +7 -5
  52. package/lib/ExchangeRateTile.js.map +1 -1
  53. package/lib/Header/Header.js +2 -2
  54. package/lib/Header/Header.js.map +1 -1
  55. package/lib/Header/HeaderContent.d.ts +1 -1
  56. package/lib/Header/HeaderSecondaryMenu.d.ts +5 -2
  57. package/lib/Header/HeaderSecondaryMenu.js +3 -2
  58. package/lib/Header/HeaderSecondaryMenu.js.map +1 -1
  59. package/lib/MobileAppTile.js +1 -1
  60. package/lib/MobileAppTile.js.map +1 -1
  61. package/lib/ProductBlock.d.ts +2 -0
  62. package/lib/ProductBlock.js +8 -3
  63. package/lib/ProductBlock.js.map +1 -1
  64. package/lib/ProductBlockInner.d.ts +3 -10
  65. package/lib/ProductBlockInner.js +3 -15
  66. package/lib/ProductBlockInner.js.map +1 -1
  67. package/lib/ProductTile.d.ts +4 -13
  68. package/lib/ProductTile.js +4 -11
  69. package/lib/ProductTile.js.map +1 -1
  70. package/lib/Tile.d.ts +3 -11
  71. package/lib/Tile.js +5 -27
  72. package/lib/Tile.js.map +1 -1
  73. package/lib/api/DaDataAPI.d.ts +3 -0
  74. package/lib/api/DaDataAPI.js +30 -0
  75. package/lib/api/DaDataAPI.js.map +1 -0
  76. package/lib/api/LikeAPI.d.ts +1 -1
  77. package/lib/api/LikeAPI.js +2 -2
  78. package/lib/api/LikeAPI.js.map +1 -1
  79. package/lib/common.css +1 -1
  80. package/lib/content-page-repository/ContentPageRepository.d.ts +1 -0
  81. package/lib/content-page-repository/ContentPageRepository.js +6 -0
  82. package/lib/content-page-repository/ContentPageRepository.js.map +1 -1
  83. package/lib/content-page-repository/toMobilePage.d.ts +2 -0
  84. package/lib/content-page-repository/toMobilePage.js +20 -0
  85. package/lib/content-page-repository/toMobilePage.js.map +1 -0
  86. package/lib/types.d.ts +14 -0
  87. package/lib/utils/getCurrentPosition.d.ts +1 -0
  88. package/lib/utils/getCurrentPosition.js +2 -0
  89. package/lib/utils/getCurrentPosition.js.map +1 -0
  90. package/package.json +9 -3
  91. package/src/BaseTile.tsx +87 -0
  92. package/src/Blocks.ts +3 -2
  93. package/src/ContentPage.page.json +212 -76
  94. package/src/ContentPageContext.tsx +3 -0
  95. package/src/ExchangeRateTile.tsx +7 -5
  96. package/src/Header/Header.fixture.tsx +1 -1
  97. package/src/Header/Header.tsx +6 -2
  98. package/src/Header/HeaderContent.ts +1 -1
  99. package/src/Header/HeaderSecondaryMenu.tsx +48 -34
  100. package/src/MobileAppTile.tsx +1 -1
  101. package/src/ProductBlock.fixture.tsx +3 -2
  102. package/src/ProductBlock.tsx +25 -3
  103. package/src/ProductBlockInner.tsx +13 -70
  104. package/src/ProductTile.fixture.tsx +31 -23
  105. package/src/ProductTile.tsx +21 -70
  106. package/src/Tile.fixture.tsx +39 -29
  107. package/src/Tile.tsx +10 -79
  108. package/src/api/DaDataAPI.ts +34 -0
  109. package/src/api/LikeAPI.ts +12 -9
  110. package/src/content-page-repository/ContentPageRepository.ts +7 -0
  111. package/src/content-page-repository/toMobilePage.ts +21 -0
  112. package/src/setup-fixture.ts +15 -0
  113. package/src/types.ts +17 -0
  114. package/src/utils/getCurrentPosition.ts +4 -0
@@ -0,0 +1,13 @@
1
+ import type { BlockVersion, Picture, UniBlockProps } from './types';
2
+ import type { ButtonProps } from './ui-kit/Button';
3
+ export interface BaseTileContent {
4
+ title?: string;
5
+ description?: string;
6
+ image?: Picture;
7
+ items?: string[];
8
+ buttons?: ButtonProps[];
9
+ version?: BlockVersion;
10
+ }
11
+ export interface BaseTileProps extends BaseTileContent, UniBlockProps {
12
+ }
13
+ export declare const BaseTile: (props: import("@redneckz/uni-jsx").PropsWithChildren<BaseTileProps, any>, context?: any) => any;
@@ -0,0 +1,35 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.BaseTile = void 0;
3
+ const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
4
+ const uni_jsx_1 = require("@redneckz/uni-jsx");
5
+ const Img_1 = require("./Img");
6
+ const BlockItem_1 = require("./ui-kit/BlockItem");
7
+ const Button_1 = require("./ui-kit/Button");
8
+ const useLink_1 = require("./useLink");
9
+ const TITLE_CLASSES = 'font-medium m-0 mb-4 whitespace-pre-wrap max-w-[600px]';
10
+ exports.BaseTile = (0, uni_jsx_1.JSX)(({ className, context, title, description, children, buttons, image, items, version = 'primary', }) => {
11
+ const router = context.useRouter();
12
+ const { handlerDecorator } = context;
13
+ return ((0, jsx_runtime_1.jsxs)("div", { className: `font-sans flex flex-col grow h-full`, children: [title && renderTitle(title, className), (0, jsx_runtime_1.jsxs)("div", { className: "flex grow justify-between mt-4", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex flex-col justify-between items-start", children: [(0, jsx_runtime_1.jsxs)("div", { children: [description ? ((0, jsx_runtime_1.jsx)("div", { className: "font-normal text-base max-w-[600px] mb-6", children: description })) : null, children, items?.length ? renderItems(items, version) : null] }), buttons?.length ? ((0, jsx_runtime_1.jsx)("div", { className: "flex mt-6 gap-4", children: buttons.map((button, index) => renderButton((0, useLink_1.useLink)({ router, handlerDecorator }, button), index)) })) : null] }), image?.src && (0, jsx_runtime_1.jsx)(Img_1.Img, { className: "mt-auto", image: image })] })] }));
14
+ });
15
+ function renderTitle(title, className = '') {
16
+ const colSpanPrefix = 'col-span-';
17
+ const colSpanStr = className.split(/\s+/).find((_) => _.startsWith(colSpanPrefix));
18
+ const colSpan = colSpanStr ? parseInt(colSpanStr.substring(colSpanPrefix.length), 10) : 12;
19
+ if (colSpan <= 4) {
20
+ return (0, jsx_runtime_1.jsx)("h3", { className: `${TITLE_CLASSES} text-title-xs`, children: title });
21
+ }
22
+ else if (colSpan <= 8) {
23
+ return (0, jsx_runtime_1.jsx)("h3", { className: `${TITLE_CLASSES} text-title-sm`, children: title });
24
+ }
25
+ else {
26
+ return (0, jsx_runtime_1.jsx)("h2", { className: `${TITLE_CLASSES} text-title`, children: title });
27
+ }
28
+ }
29
+ function renderItems(items = [], version) {
30
+ return ((0, jsx_runtime_1.jsx)("section", { className: "max-w-[600px]", role: "list", children: items.map((_, i) => ((0, jsx_runtime_1.jsx)(BlockItem_1.BlockItem, { className: i ? 'mt-2.5' : '', text: _, version: version }, String(i)))) }));
31
+ }
32
+ function renderButton(button, i) {
33
+ return button?.text ? (0, jsx_runtime_1.jsx)(Button_1.Button, { ...button, version: button.version }, String(i)) : null;
34
+ }
35
+ //# sourceMappingURL=BaseTile.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseTile.js","sourceRoot":"","sources":["../src/BaseTile.tsx"],"names":[],"mappings":"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"}
package/dist/Blocks.d.ts CHANGED
@@ -8,7 +8,7 @@ import { ProductBlockInnerContent } from './ProductBlockInner';
8
8
  import { ProductGalleryContent } from './ProductGallery';
9
9
  import { StepsBlockContent } from './StepsBlock';
10
10
  import { ProductTileContent } from './ProductTile';
11
- import { TileContent } from './Tile';
11
+ import { BaseTileContent } from './BaseTile';
12
12
  export declare const Blocks: {
13
13
  Header: (props: import("@redneckz/uni-jsx").PropsWithChildren<import("./Header/Header").HeaderProps, any>, context?: any) => any;
14
14
  Footer: (props: import("@redneckz/uni-jsx").PropsWithChildren<import("./Footer/Footer").FooterProps, any>, context?: any) => any;
@@ -22,4 +22,4 @@ export declare const Blocks: {
22
22
  ExchangeRateTile: (props: import("@redneckz/uni-jsx").PropsWithChildren<import("./ExchangeRateTile").ExchangeRateTileProps, any>, context?: any) => any;
23
23
  MobileAppTile: (props: import("@redneckz/uni-jsx").PropsWithChildren<import("./MobileAppTile").MobileAppTileProps, any>, context?: any) => any;
24
24
  };
25
- export declare type BlockContent = HeaderContent | FooterContent | PlaceholderContent | TileContent | ProductTileContent | ProductBlockInnerContent | StepsBlockContent | BenefitsBlockContent | ProductGalleryContent | ExchangeRateTileContent | MobileAppTileContent;
25
+ export declare type BlockContent = HeaderContent | FooterContent | PlaceholderContent | BaseTileContent | ProductTileContent | ProductBlockInnerContent | StepsBlockContent | BenefitsBlockContent | ProductGalleryContent | ExchangeRateTileContent | MobileAppTileContent;
@@ -1 +1 @@
1
- {"version":3,"file":"Blocks.js","sourceRoot":"","sources":["../src/Blocks.ts"],"names":[],"mappings":";;AAAA,mDAAsE;AACtE,yDAA+E;AAC/E,0CAAuD;AACvD,0CAAuD;AACvD,mDAAsE;AACtE,+CAAgE;AAChE,iDAA8C;AAE9C,qDAAyE;AACzE,6CAA6D;AAC7D,+CAAgE;AAChE,iCAA2C;AAE9B,QAAA,MAAM,GAAG;IACpB,MAAM,EAAN,cAAM;IACN,MAAM,EAAN,cAAM;IACN,WAAW,EAAX,yBAAW;IACX,IAAI,EAAJ,WAAI;IACJ,WAAW,EAAX,yBAAW;IACX,YAAY,EAAZ,2BAAY;IACZ,UAAU,EAAV,uBAAU;IACV,aAAa,EAAb,6BAAa;IACb,cAAc,EAAd,+BAAc;IACd,gBAAgB,EAAhB,mCAAgB;IAChB,aAAa,EAAb,6BAAa;CACd,CAAC"}
1
+ {"version":3,"file":"Blocks.js","sourceRoot":"","sources":["../src/Blocks.ts"],"names":[],"mappings":";;AAAA,mDAAsE;AACtE,yDAA+E;AAC/E,0CAAuD;AACvD,0CAAuD;AACvD,mDAAsE;AACtE,+CAAgE;AAChE,iDAA8C;AAE9C,qDAAyE;AACzE,6CAA6D;AAC7D,+CAAgE;AAEhE,iCAA8B;AAEjB,QAAA,MAAM,GAAG;IACpB,MAAM,EAAN,cAAM;IACN,MAAM,EAAN,cAAM;IACN,WAAW,EAAX,yBAAW;IACX,IAAI,EAAJ,WAAI;IACJ,WAAW,EAAX,yBAAW;IACX,YAAY,EAAZ,2BAAY;IACZ,UAAU,EAAV,uBAAU;IACV,aAAa,EAAb,6BAAa;IACb,cAAc,EAAd,+BAAc;IACd,gBAAgB,EAAhB,mCAAgB;IAChB,aAAa,EAAb,6BAAa;CACd,CAAC"}
@@ -19,10 +19,12 @@ export declare type AsyncDataHook = <Data, Error = any>(key: string, fetcher: ()
19
19
  data?: Data;
20
20
  error?: Error;
21
21
  };
22
+ export declare type GeolocationHook = (defaultLocation: string) => [string, () => void];
22
23
  export interface ContentPageContext {
23
24
  useRouter: () => Router;
24
25
  useState: <State>(initialState: State) => [State, (_: State) => void];
25
26
  useAsyncData: AsyncDataHook;
27
+ useGeolocation: GeolocationHook;
26
28
  useLikeService: () => LikeService;
27
29
  useSearch: () => Search;
28
30
  handlerDecorator?: HandlerDecorator;
@@ -10,13 +10,15 @@ const CURRENCY_ICONS_MAP = {
10
10
  USD: index_1.DollarIcon,
11
11
  EUR: index_1.EuroIcon,
12
12
  };
13
- const button = {
14
- text: 'Все показатели',
15
- href: 'https://cbr.ru/currency_base/daily/',
16
- };
13
+ const buttons = [
14
+ {
15
+ text: 'Все показатели',
16
+ href: 'https://cbr.ru/currency_base/daily/',
17
+ },
18
+ ];
17
19
  exports.ExchangeRateTile = (0, uni_jsx_1.JSX)(({ className, context, title }) => {
18
20
  const { data } = context.useAsyncData(CBR_EXCHANGE_RATE_URL, fetchExchangeRate);
19
- return ((0, jsx_runtime_1.jsx)(Tile_1.Tile, { className: className, context: context, title: title || 'Курсы обмена валют', button: button, children: (0, jsx_runtime_1.jsxs)("table", { children: [(0, jsx_runtime_1.jsx)("thead", { children: (0, jsx_runtime_1.jsxs)("tr", { children: [(0, jsx_runtime_1.jsx)(CurrencyTH, { children: "\u0412\u0430\u043B\u044E\u0442\u0430" }), (0, jsx_runtime_1.jsx)(CurrencyTH, { className: "pl-11", children: "\u041A\u0443\u0440\u0441" })] }) }), (0, jsx_runtime_1.jsx)("tbody", { children: CURRENCY_CODES.map((code) => {
21
+ return ((0, jsx_runtime_1.jsx)(Tile_1.Tile, { className: className, context: context, title: title || 'Курсы обмена валют', buttons: buttons, children: (0, jsx_runtime_1.jsxs)("table", { children: [(0, jsx_runtime_1.jsx)("thead", { children: (0, jsx_runtime_1.jsxs)("tr", { children: [(0, jsx_runtime_1.jsx)(CurrencyTH, { children: "\u0412\u0430\u043B\u044E\u0442\u0430" }), (0, jsx_runtime_1.jsx)(CurrencyTH, { className: "pl-11", children: "\u041A\u0443\u0440\u0441" })] }) }), (0, jsx_runtime_1.jsx)("tbody", { children: CURRENCY_CODES.map((code) => {
20
22
  const value = (data?.Valute || {})[code]?.Value;
21
23
  return ((0, jsx_runtime_1.jsxs)("tr", { children: [(0, jsx_runtime_1.jsx)(CurrencyTD, { className: "pt-4", children: (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center", children: [CURRENCY_ICONS_MAP[code] ? CURRENCY_ICONS_MAP[code]() : null, (0, jsx_runtime_1.jsx)("span", { className: "ml-2", children: code })] }) }), (0, jsx_runtime_1.jsx)(CurrencyTD, { className: "pt-4 pl-11", children: formatCurrency(value) })] }, code));
22
24
  }) })] }) }));
@@ -1 +1 @@
1
- {"version":3,"file":"ExchangeRateTile.js","sourceRoot":"","sources":["../src/ExchangeRateTile.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,yCAAqD;AACrD,iCAA8B;AAU9B,MAAM,qBAAqB,GAAG,4CAA4C,CAAC;AAE3E,MAAM,cAAc,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AACtC,MAAM,kBAAkB,GAAG;IACzB,GAAG,EAAE,kBAAU;IACf,GAAG,EAAE,gBAAQ;CACd,CAAC;AAEF,MAAM,MAAM,GAAgB;IAC1B,IAAI,EAAE,gBAAgB;IACtB,IAAI,EAAE,qCAAqC;CAC5C,CAAC;AAEW,QAAA,gBAAgB,GAAG,IAAA,aAAG,EAAwB,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE;IAC3F,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC,qBAAqB,EAAE,iBAAiB,CAAC,CAAC;IAChF,OAAO,CACL,uBAAC,WAAI,IACH,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,IAAI,oBAAoB,EACpC,MAAM,EAAE,MAAM,YAEd,8CACE,4CACE,2CACE,uBAAC,UAAU,uDAAoB,EAC/B,uBAAC,UAAU,IAAC,SAAS,EAAC,OAAO,yCAAkB,IAC5C,GACC,EACR,4CACG,cAAc,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;wBAC3B,MAAM,KAAK,GAAG,CAAC,IAAI,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC;wBAChD,OAAO,CACL,2CACE,uBAAC,UAAU,IAAC,SAAS,EAAC,MAAM,YAC1B,iCAAK,SAAS,EAAC,mBAAmB,aAC/B,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAC7D,iCAAM,SAAS,EAAC,MAAM,YAAE,IAAI,GAAQ,IAChC,GACK,EACb,uBAAC,UAAU,IAAC,SAAS,EAAC,YAAY,YAAE,cAAc,CAAC,KAAK,CAAC,GAAc,KAPhE,IAAI,CAQR,CACN,CAAC;oBACJ,CAAC,CAAC,GACI,IACF,GACH,CACR,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,MAAM,UAAU,GAAG,IAAA,aAAG,EAAyB,CAAC,EAAE,SAAS,GAAG,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAC/E,+BAAI,SAAS,EAAE,qDAAqD,SAAS,EAAE,YAAG,QAAQ,GAAM,CACjG,CAAC,CAAC;AAEH,MAAM,UAAU,GAAG,IAAA,aAAG,EAAyB,CAAC,EAAE,SAAS,GAAG,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAC/E,+BAAI,SAAS,EAAE,qDAAqD,SAAS,EAAE,YAAG,QAAQ,GAAM,CACjG,CAAC,CAAC;AAEH,KAAK,UAAU,iBAAiB;IAG9B,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,qBAAqB,CAAC,CAAC;IACpD,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;AAC/B,CAAC;AAED,MAAM,oBAAoB,GAAG,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;AAEjG,MAAM,cAAc,GAAG,CAAC,KAAc,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,oBAAoB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"ExchangeRateTile.js","sourceRoot":"","sources":["../src/ExchangeRateTile.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,yCAAqD;AACrD,iCAA8B;AAU9B,MAAM,qBAAqB,GAAG,4CAA4C,CAAC;AAE3E,MAAM,cAAc,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AACtC,MAAM,kBAAkB,GAAG;IACzB,GAAG,EAAE,kBAAU;IACf,GAAG,EAAE,gBAAQ;CACd,CAAC;AAEF,MAAM,OAAO,GAAkB;IAC7B;QACE,IAAI,EAAE,gBAAgB;QACtB,IAAI,EAAE,qCAAqC;KAC5C;CACF,CAAC;AAEW,QAAA,gBAAgB,GAAG,IAAA,aAAG,EAAwB,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE;IAC3F,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC,qBAAqB,EAAE,iBAAiB,CAAC,CAAC;IAChF,OAAO,CACL,uBAAC,WAAI,IACH,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,IAAI,oBAAoB,EACpC,OAAO,EAAE,OAAO,YAEhB,8CACE,4CACE,2CACE,uBAAC,UAAU,uDAAoB,EAC/B,uBAAC,UAAU,IAAC,SAAS,EAAC,OAAO,yCAAkB,IAC5C,GACC,EACR,4CACG,cAAc,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;wBAC3B,MAAM,KAAK,GAAG,CAAC,IAAI,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC;wBAChD,OAAO,CACL,2CACE,uBAAC,UAAU,IAAC,SAAS,EAAC,MAAM,YAC1B,iCAAK,SAAS,EAAC,mBAAmB,aAC/B,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAC7D,iCAAM,SAAS,EAAC,MAAM,YAAE,IAAI,GAAQ,IAChC,GACK,EACb,uBAAC,UAAU,IAAC,SAAS,EAAC,YAAY,YAAE,cAAc,CAAC,KAAK,CAAC,GAAc,KAPhE,IAAI,CAQR,CACN,CAAC;oBACJ,CAAC,CAAC,GACI,IACF,GACH,CACR,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,MAAM,UAAU,GAAG,IAAA,aAAG,EAAyB,CAAC,EAAE,SAAS,GAAG,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAC/E,+BAAI,SAAS,EAAE,qDAAqD,SAAS,EAAE,YAAG,QAAQ,GAAM,CACjG,CAAC,CAAC;AAEH,MAAM,UAAU,GAAG,IAAA,aAAG,EAAyB,CAAC,EAAE,SAAS,GAAG,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAC/E,+BAAI,SAAS,EAAE,qDAAqD,SAAS,EAAE,YAAG,QAAQ,GAAM,CACjG,CAAC,CAAC;AAEH,KAAK,UAAU,iBAAiB;IAG9B,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,qBAAqB,CAAC,CAAC;IACpD,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;AAC/B,CAAC;AAED,MAAM,oBAAoB,GAAG,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;AAEjG,MAAM,cAAc,GAAG,CAAC,KAAc,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,oBAAoB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC"}
@@ -11,7 +11,7 @@ const useSitemap_1 = require("../useSitemap");
11
11
  const HeaderSecondaryMenu_1 = require("./HeaderSecondaryMenu");
12
12
  const isSubItemActive_1 = require("./isSubItemActive");
13
13
  const isTopItemActive_1 = require("./isTopItemActive");
14
- exports.Header = (0, uni_jsx_1.JSX)(({ className, location, context, topItems }) => {
14
+ exports.Header = (0, uni_jsx_1.JSX)(({ className, defaultLocation, context, topItems }) => {
15
15
  const router = context.useRouter();
16
16
  const sitemap = (0, useSitemap_1.useSitemap)(context.useAsyncData);
17
17
  const { handlerDecorator } = context;
@@ -21,6 +21,6 @@ exports.Header = (0, uni_jsx_1.JSX)(({ className, location, context, topItems })
21
21
  const activeSubItem = subItems?.find((0, isSubItemActive_1.isSubItemActive)(router));
22
22
  const topMenu = mergedItems.map((_, i) => ((0, jsx_runtime_1.jsx)(TopItem_1.TopItem, { active: _ === activeTopItem, ...(0, useLink_1.useLink)({ router, handlerDecorator }, _), ariaLabel: _.text }, String(i))));
23
23
  const subMenu = subItems?.map((_) => ((0, jsx_runtime_1.jsx)(HeaderItem_1.HeaderItem, { className: "mr-8", active: _ === activeSubItem, ...(0, useLink_1.useLink)({ router, handlerDecorator }, _) }, _.href)));
24
- return ((0, jsx_runtime_1.jsxs)("header", { className: `pt-5 pb-8 px-20 bg-white ${className || ''}`, children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex items-center", children: [(0, jsx_runtime_1.jsx)(Logo_1.Logo, { className: "mr-8" }), topMenu, (0, jsx_runtime_1.jsx)(HeaderSecondaryMenu_1.HeaderSecondaryMenu, { location: location, className: "ml-auto" })] }), (0, jsx_runtime_1.jsx)("div", { className: "mt-5 h-[1px] bg-main-divider" }), (0, jsx_runtime_1.jsx)("nav", { className: "mt-5", children: subMenu })] }));
24
+ return ((0, jsx_runtime_1.jsxs)("header", { className: `pt-5 pb-8 px-20 bg-white ${className || ''}`, children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex items-center", children: [(0, jsx_runtime_1.jsx)(Logo_1.Logo, { className: "mr-8" }), topMenu, (0, jsx_runtime_1.jsx)(HeaderSecondaryMenu_1.HeaderSecondaryMenu, { context: context, className: "ml-auto", defaultLocation: defaultLocation })] }), (0, jsx_runtime_1.jsx)("div", { className: "mt-5 h-[1px] bg-main-divider" }), (0, jsx_runtime_1.jsx)("nav", { className: "mt-5", children: subMenu })] }));
25
25
  });
26
26
  //# sourceMappingURL=Header.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Header.js","sourceRoot":"","sources":["../../src/Header/Header.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,oDAAiD;AAEjD,qDAAkD;AAClD,yCAAsC;AACtC,+CAA4C;AAC5C,wCAAqC;AACrC,8CAA2C;AAE3C,+DAA4D;AAC5D,uDAAoD;AACpD,uDAAoD;AAIvC,QAAA,MAAM,GAAG,IAAA,aAAG,EAAc,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE;IACpF,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IACnC,MAAM,OAAO,GAAG,IAAA,uBAAU,EAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IACjD,MAAM,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC;IAErC,MAAM,WAAW,GAAG,IAAA,6BAAa,EAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC9D,MAAM,aAAa,GAAG,WAAW,CAAC,IAAI,CAAC,IAAA,iCAAe,EAAC,MAAM,CAAC,CAAC,CAAC;IAChE,MAAM,QAAQ,GAAG,aAAa,EAAE,KAAK,CAAC;IACtC,MAAM,aAAa,GAAG,QAAQ,EAAE,IAAI,CAAC,IAAA,iCAAe,EAAC,MAAM,CAAC,CAAC,CAAC;IAE9D,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CACxC,uBAAC,iBAAO,IAEN,MAAM,EAAE,CAAC,KAAK,aAAa,KACvB,IAAA,iBAAO,EAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,EAAE,CAAC,CAAC,EAC5C,SAAS,EAAE,CAAC,CAAC,IAAI,IAHZ,MAAM,CAAC,CAAC,CAAC,CAId,CACH,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACnC,uBAAC,uBAAU,IAET,SAAS,EAAC,MAAM,EAChB,MAAM,EAAE,CAAC,KAAK,aAAa,KACvB,IAAA,iBAAO,EAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,EAAE,CAAC,CAAC,IAHvC,CAAC,CAAC,IAAI,CAIX,CACH,CAAC,CAAC;IAEH,OAAO,CACL,oCAAQ,SAAS,EAAE,4BAA4B,SAAS,IAAI,EAAE,EAAE,aAC9D,iCAAK,SAAS,EAAC,mBAAmB,aAChC,uBAAC,WAAI,IAAC,SAAS,EAAC,MAAM,GAAG,EACxB,OAAO,EACR,uBAAC,yCAAmB,IAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAC,SAAS,GAAG,IAC3D,EACN,gCAAK,SAAS,EAAC,8BAA8B,GAAG,EAChD,gCAAK,SAAS,EAAC,MAAM,YAAE,OAAO,GAAO,IAC9B,CACV,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"Header.js","sourceRoot":"","sources":["../../src/Header/Header.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,oDAAiD;AAEjD,qDAAkD;AAClD,yCAAsC;AACtC,+CAA4C;AAC5C,wCAAqC;AACrC,8CAA2C;AAE3C,+DAA4D;AAC5D,uDAAoD;AACpD,uDAAoD;AAIvC,QAAA,MAAM,GAAG,IAAA,aAAG,EAAc,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC3F,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IACnC,MAAM,OAAO,GAAG,IAAA,uBAAU,EAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IACjD,MAAM,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC;IAErC,MAAM,WAAW,GAAG,IAAA,6BAAa,EAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC9D,MAAM,aAAa,GAAG,WAAW,CAAC,IAAI,CAAC,IAAA,iCAAe,EAAC,MAAM,CAAC,CAAC,CAAC;IAChE,MAAM,QAAQ,GAAG,aAAa,EAAE,KAAK,CAAC;IACtC,MAAM,aAAa,GAAG,QAAQ,EAAE,IAAI,CAAC,IAAA,iCAAe,EAAC,MAAM,CAAC,CAAC,CAAC;IAE9D,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CACxC,uBAAC,iBAAO,IAEN,MAAM,EAAE,CAAC,KAAK,aAAa,KACvB,IAAA,iBAAO,EAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,EAAE,CAAC,CAAC,EAC5C,SAAS,EAAE,CAAC,CAAC,IAAI,IAHZ,MAAM,CAAC,CAAC,CAAC,CAId,CACH,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACnC,uBAAC,uBAAU,IAET,SAAS,EAAC,MAAM,EAChB,MAAM,EAAE,CAAC,KAAK,aAAa,KACvB,IAAA,iBAAO,EAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,EAAE,CAAC,CAAC,IAHvC,CAAC,CAAC,IAAI,CAIX,CACH,CAAC,CAAC;IAEH,OAAO,CACL,oCAAQ,SAAS,EAAE,4BAA4B,SAAS,IAAI,EAAE,EAAE,aAC9D,iCAAK,SAAS,EAAC,mBAAmB,aAChC,uBAAC,WAAI,IAAC,SAAS,EAAC,MAAM,GAAG,EACxB,OAAO,EACR,uBAAC,yCAAmB,IAClB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAC,SAAS,EACnB,eAAe,EAAE,eAAe,GAChC,IACE,EACN,gCAAK,SAAS,EAAC,8BAA8B,GAAG,EAChD,gCAAK,SAAS,EAAC,MAAM,YAAE,OAAO,GAAO,IAC9B,CACV,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { TopMenuItem } from '../types';
2
2
  export interface HeaderContent {
3
- location?: string;
3
+ defaultLocation?: string;
4
4
  topItems?: TopMenuItem[];
5
5
  }
@@ -1,6 +1,9 @@
1
- interface HeaderSecondaryMenuProps {
2
- location?: string;
1
+ import type { UniBlockProps } from '../types';
2
+ interface HeaderSecondaryMenuContent {
3
+ defaultLocation?: string;
3
4
  className?: string;
4
5
  }
6
+ export interface HeaderSecondaryMenuProps extends HeaderSecondaryMenuContent, UniBlockProps {
7
+ }
5
8
  export declare const HeaderSecondaryMenu: (props: import("@redneckz/uni-jsx").PropsWithChildren<HeaderSecondaryMenuProps, any>, context?: any) => any;
6
9
  export {};
@@ -5,7 +5,8 @@ const uni_jsx_1 = require("@redneckz/uni-jsx");
5
5
  const index_1 = require("../Icons/index");
6
6
  const TopItem_1 = require("../ui-kit/TopItem");
7
7
  const HeaderSecondaryMenuButton_1 = require("./HeaderSecondaryMenuButton");
8
- exports.HeaderSecondaryMenu = (0, uni_jsx_1.JSX)(({ location, className }) => {
9
- return ((0, jsx_runtime_1.jsxs)("div", { className: `flex items-center ${className || ''}`, children: [(0, jsx_runtime_1.jsx)(TopItem_1.TopItem, { className: "mr-5", flat: true, href: "#", text: location, ariaLabel: "\u041C\u0435\u0441\u0442\u043E\u043F\u043E\u043B\u043E\u0436\u0435\u043D\u0438\u0435" }), (0, jsx_runtime_1.jsx)(TopItem_1.TopItem, { className: "mr-7", flat: true, href: "#", text: "\u041E\u0444\u0438\u0441\u044B \u0438 \u0431\u0430\u043D\u043A\u043E\u043C\u0430\u0442\u044B", ariaLabel: "\u0421\u043F\u0438\u0441\u043E\u043A \u0432\u0441\u0435\u0445 \u0434\u043E\u0441\u0442\u0443\u043F\u043D\u044B\u0445 \u043E\u0444\u0438\u0441\u043E\u0432 \u0438 \u0431\u0430\u043D\u043A\u043E\u043C\u0430\u0442\u043E\u0432" }), (0, jsx_runtime_1.jsx)(HeaderSecondaryMenuButton_1.HeaderSecondaryMenuButton, { className: "mr-5 text-primary-text hover:text-primary-main", ariaLabel: "\u041F\u043E\u0438\u0441\u043A \u043F\u043E \u0441\u0430\u0439\u0442\u0443", children: (0, index_1.LoupeIcon)({ 'aria-hidden': true }) }), (0, jsx_runtime_1.jsx)(HeaderSecondaryMenuButton_1.HeaderSecondaryMenuButton, { className: "mr-5 text-primary-text hover:text-primary-main", ariaLabel: "\u041F\u0440\u043E\u0444\u0438\u043B\u044C", children: (0, index_1.ProfileIcon)({ 'aria-hidden': true }) }), (0, jsx_runtime_1.jsx)(HeaderSecondaryMenuButton_1.HeaderSecondaryMenuButton, { className: "mr-5 text-secondary-light hover:text-secondary-active min-w-[32px] min-h-[32px]", ariaLabel: "\u0414\u043E\u043F\u043E\u043B\u043D\u0438\u0442\u0435\u043B\u044C\u043D\u044B\u0435 \u0441\u0441\u044B\u043B\u043A\u0438", children: (0, index_1.GridIcon)({ 'aria-hidden': true }) })] }));
8
+ exports.HeaderSecondaryMenu = (0, uni_jsx_1.JSX)(({ context, className, defaultLocation = '' }) => {
9
+ const [city, getCity] = context.useGeolocation(defaultLocation);
10
+ return ((0, jsx_runtime_1.jsxs)("div", { className: `flex items-center ${className || ''}`, children: [(0, jsx_runtime_1.jsx)(TopItem_1.TopItem, { className: "mr-5", flat: true, href: "#", text: city, ariaLabel: "\u041C\u0435\u0441\u0442\u043E\u043F\u043E\u043B\u043E\u0436\u0435\u043D\u0438\u0435", onClick: getCity }), (0, jsx_runtime_1.jsx)(TopItem_1.TopItem, { className: "mr-7", flat: true, href: "#", text: "\u041E\u0444\u0438\u0441\u044B \u0438 \u0431\u0430\u043D\u043A\u043E\u043C\u0430\u0442\u044B", ariaLabel: "\u0421\u043F\u0438\u0441\u043E\u043A \u0432\u0441\u0435\u0445 \u0434\u043E\u0441\u0442\u0443\u043F\u043D\u044B\u0445 \u043E\u0444\u0438\u0441\u043E\u0432 \u0438 \u0431\u0430\u043D\u043A\u043E\u043C\u0430\u0442\u043E\u0432" }), (0, jsx_runtime_1.jsx)(HeaderSecondaryMenuButton_1.HeaderSecondaryMenuButton, { className: "mr-5 text-primary-text hover:text-primary-main", ariaLabel: "\u041F\u043E\u0438\u0441\u043A \u043F\u043E \u0441\u0430\u0439\u0442\u0443", children: (0, index_1.LoupeIcon)({ 'aria-hidden': true }) }), (0, jsx_runtime_1.jsx)(HeaderSecondaryMenuButton_1.HeaderSecondaryMenuButton, { className: "mr-5 text-primary-text hover:text-primary-main", ariaLabel: "\u041F\u0440\u043E\u0444\u0438\u043B\u044C", children: (0, index_1.ProfileIcon)({ 'aria-hidden': true }) }), (0, jsx_runtime_1.jsx)(HeaderSecondaryMenuButton_1.HeaderSecondaryMenuButton, { className: "mr-5 text-secondary-light hover:text-secondary-active min-w-[32px] min-h-[32px]", ariaLabel: "\u0414\u043E\u043F\u043E\u043B\u043D\u0438\u0442\u0435\u043B\u044C\u043D\u044B\u0435 \u0441\u0441\u044B\u043B\u043A\u0438", children: (0, index_1.GridIcon)({ 'aria-hidden': true }) })] }));
10
11
  });
11
12
  //# sourceMappingURL=HeaderSecondaryMenu.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"HeaderSecondaryMenu.js","sourceRoot":"","sources":["../../src/Header/HeaderSecondaryMenu.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,0CAAkE;AAClE,+CAA4C;AAC5C,2EAAwE;AAO3D,QAAA,mBAAmB,GAAG,IAAA,aAAG,EAA2B,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE;IAC3F,OAAO,CACL,iCAAK,SAAS,EAAE,qBAAqB,SAAS,IAAI,EAAE,EAAE,aACpD,uBAAC,iBAAO,IAAC,SAAS,EAAC,MAAM,EAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAC,GAAG,EAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAC,sFAAgB,GAAG,EAC5F,uBAAC,iBAAO,IACN,SAAS,EAAC,MAAM,EAChB,IAAI,EAAE,IAAI,EACV,IAAI,EAAC,GAAG,EACR,IAAI,EAAC,8FAAmB,EACxB,SAAS,EAAC,+NAA2C,GACrD,EACF,uBAAC,qDAAyB,IACxB,SAAS,EAAC,gDAAgD,EAC1D,SAAS,EAAC,4EAAgB,YAEzB,IAAA,iBAAS,EAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,GACT,EAC5B,uBAAC,qDAAyB,IACxB,SAAS,EAAC,gDAAgD,EAC1D,SAAS,EAAC,4CAAS,YAElB,IAAA,mBAAW,EAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,GACX,EAC5B,uBAAC,qDAAyB,IACxB,SAAS,EAAC,iFAAiF,EAC3F,SAAS,EAAC,2HAAuB,YAEhC,IAAA,gBAAQ,EAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,GACR,IACxB,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"HeaderSecondaryMenu.js","sourceRoot":"","sources":["../../src/Header/HeaderSecondaryMenu.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,0CAAkE;AAClE,+CAA4C;AAC5C,2EAAwE;AAU3D,QAAA,mBAAmB,GAAG,IAAA,aAAG,EACpC,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,eAAe,GAAG,EAAE,EAAE,EAAE,EAAE;IAC/C,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;IAEhE,OAAO,CACL,iCAAK,SAAS,EAAE,qBAAqB,SAAS,IAAI,EAAE,EAAE,aACpD,uBAAC,iBAAO,IACN,SAAS,EAAC,MAAM,EAChB,IAAI,EAAE,IAAI,EACV,IAAI,EAAC,GAAG,EACR,IAAI,EAAE,IAAI,EACV,SAAS,EAAC,sFAAgB,EAC1B,OAAO,EAAE,OAAO,GAChB,EACF,uBAAC,iBAAO,IACN,SAAS,EAAC,MAAM,EAChB,IAAI,EAAE,IAAI,EACV,IAAI,EAAC,GAAG,EACR,IAAI,EAAC,8FAAmB,EACxB,SAAS,EAAC,+NAA2C,GACrD,EACF,uBAAC,qDAAyB,IACxB,SAAS,EAAC,gDAAgD,EAC1D,SAAS,EAAC,4EAAgB,YAEzB,IAAA,iBAAS,EAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,GACT,EAC5B,uBAAC,qDAAyB,IACxB,SAAS,EAAC,gDAAgD,EAC1D,SAAS,EAAC,4CAAS,YAElB,IAAA,mBAAW,EAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,GACX,EAC5B,uBAAC,qDAAyB,IACxB,SAAS,EAAC,iFAAiF,EAC3F,SAAS,EAAC,2HAAuB,YAEhC,IAAA,gBAAQ,EAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,GACR,IACxB,CACP,CAAC;AACJ,CAAC,CACF,CAAC"}
@@ -4,6 +4,6 @@ const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
4
4
  const uni_jsx_1 = require("@redneckz/uni-jsx");
5
5
  const Tile_1 = require("./Tile");
6
6
  exports.MobileAppTile = (0, uni_jsx_1.JSX)(({ className, context, title = 'Мобильное приложение', qr }) => {
7
- return ((0, jsx_runtime_1.jsx)(Tile_1.Tile, { className: className, context: context, title: title, children: (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center", children: [qr?.src && qr?.href && ((0, jsx_runtime_1.jsx)("a", { href: qr.href, target: "_blank", children: (0, jsx_runtime_1.jsx)("img", { src: qr.src, alt: title, title: title, width: "164", height: "164", className: "w-[90px] h-[90px] bg-secondary-light" }) })), (0, jsx_runtime_1.jsx)("span", { className: "font-normal text-sm text-secondary-text ml-4", children: "\u041D\u0430\u0432\u0435\u0434\u0438\u0442\u0435 \u043A\u0430\u043C\u0435\u0440\u0443 \u0442\u0435\u043B\u0435\u0444\u043E\u043D\u0430 \u043D\u0430 QR-\u043A\u043E\u0434 \u0438 \u0441\u043A\u0430\u0447\u0430\u0439\u0442\u0435 \u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u0435" })] }) }));
7
+ return ((0, jsx_runtime_1.jsx)(Tile_1.Tile, { className: className, context: context, title: title, children: (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center", children: [qr?.src && qr?.href && ((0, jsx_runtime_1.jsx)("a", { href: qr.href, target: "_blank", children: (0, jsx_runtime_1.jsx)("img", { src: qr.src, alt: title, title: title, width: "164", height: "164", className: "w-[90px] h-[90px] min-w-[90px] min-h-[90px] bg-secondary-light" }) })), (0, jsx_runtime_1.jsx)("span", { className: "font-normal text-sm text-secondary-text ml-4", children: "\u041D\u0430\u0432\u0435\u0434\u0438\u0442\u0435 \u043A\u0430\u043C\u0435\u0440\u0443 \u0442\u0435\u043B\u0435\u0444\u043E\u043D\u0430 \u043D\u0430 QR-\u043A\u043E\u0434 \u0438 \u0441\u043A\u0430\u0447\u0430\u0439\u0442\u0435 \u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u0435" })] }) }));
8
8
  });
9
9
  //# sourceMappingURL=MobileAppTile.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MobileAppTile.js","sourceRoot":"","sources":["../src/MobileAppTile.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,iCAA8B;AAejB,QAAA,aAAa,GAAG,IAAA,aAAG,EAC9B,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,GAAG,sBAAsB,EAAE,EAAE,EAAE,EAAE,EAAE;IAC7D,OAAO,CACL,uBAAC,WAAI,IAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,YACxD,iCAAK,SAAS,EAAC,mBAAmB,aAC/B,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,IAAI,IAAI,CACtB,8BAAG,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,EAAC,QAAQ,YAC/B,gCACE,GAAG,EAAE,EAAE,CAAC,GAAG,EACX,GAAG,EAAE,KAAK,EACV,KAAK,EAAE,KAAK,EACZ,KAAK,EAAC,KAAK,EACX,MAAM,EAAC,KAAK,EACZ,SAAS,EAAC,sCAAsC,GAChD,GACA,CACL,EACD,iCAAM,SAAS,EAAC,8CAA8C,+SAEvD,IACH,GACD,CACR,CAAC;AACJ,CAAC,CACF,CAAC"}
1
+ {"version":3,"file":"MobileAppTile.js","sourceRoot":"","sources":["../src/MobileAppTile.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,iCAA8B;AAejB,QAAA,aAAa,GAAG,IAAA,aAAG,EAC9B,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,GAAG,sBAAsB,EAAE,EAAE,EAAE,EAAE,EAAE;IAC7D,OAAO,CACL,uBAAC,WAAI,IAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,YACxD,iCAAK,SAAS,EAAC,mBAAmB,aAC/B,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,IAAI,IAAI,CACtB,8BAAG,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,EAAC,QAAQ,YAC/B,gCACE,GAAG,EAAE,EAAE,CAAC,GAAG,EACX,GAAG,EAAE,KAAK,EACV,KAAK,EAAE,KAAK,EACZ,KAAK,EAAC,KAAK,EACX,MAAM,EAAC,KAAK,EACZ,SAAS,EAAC,gEAAgE,GAC1E,GACA,CACL,EACD,iCAAM,SAAS,EAAC,8CAA8C,+SAEvD,IACH,GACD,CACR,CAAC;AACJ,CAAC,CACF,CAAC"}
@@ -1,5 +1,7 @@
1
1
  import type { ProductBlockInnerContent } from './ProductBlockInner';
2
2
  import type { UniBlockProps } from './types';
3
+ import { BreadcrumbProps } from './ui-kit/Breadcrumb';
3
4
  export interface ProductBlockProps extends ProductBlockInnerContent, UniBlockProps {
5
+ breadcrumbs?: BreadcrumbProps[];
4
6
  }
5
7
  export declare const ProductBlock: (props: import("@redneckz/uni-jsx").PropsWithChildren<ProductBlockProps, any>, context?: any) => any;
@@ -3,8 +3,13 @@ exports.ProductBlock = void 0;
3
3
  const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
4
4
  const uni_jsx_1 = require("@redneckz/uni-jsx");
5
5
  const ProductBlockInner_1 = require("./ProductBlockInner");
6
+ const Breadcrumb_1 = require("./ui-kit/Breadcrumb");
7
+ const useLink_1 = require("./useLink");
8
+ const joinList_1 = require("./utils/joinList");
6
9
  exports.ProductBlock = (0, uni_jsx_1.JSX)((props) => {
7
- const className = props.className;
8
- return ((0, jsx_runtime_1.jsx)("section", { className: `bg-white p-11 pr-[7.5rem] ${className || ''}`, children: (0, jsx_runtime_1.jsx)(ProductBlockInner_1.ProductBlockInner, { ...props }) }));
10
+ const { context, className, breadcrumbs } = props;
11
+ const router = context.useRouter();
12
+ const { handlerDecorator } = context;
13
+ return ((0, jsx_runtime_1.jsxs)("section", { className: `font-sans bg-white pl-12 pr-[7.5rem] py-10 ${className || ''}`, children: [breadcrumbs?.length ? ((0, jsx_runtime_1.jsx)("div", { className: "text-xs mb-6", children: (0, joinList_1.joinList)((0, jsx_runtime_1.jsx)("span", { className: "text-secondary-text mx-2", children: "/" }))(breadcrumbs.map((breadcrumb, i) => ((0, jsx_runtime_1.jsx)(Breadcrumb_1.Breadcrumb, { ...(0, useLink_1.useLink)({ router, handlerDecorator }, { className: 'text-secondary-text', ...breadcrumb }) }, String(i))))) })) : null, (0, jsx_runtime_1.jsx)(ProductBlockInner_1.ProductBlockInner, { ...props })] }));
9
14
  });
10
15
  //# sourceMappingURL=ProductBlock.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProductBlock.js","sourceRoot":"","sources":["../src/ProductBlock.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,2DAAwD;AAM3C,QAAA,YAAY,GAAG,IAAA,aAAG,EAAoB,CAAC,KAAK,EAAE,EAAE;IAC3D,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;IAClC,OAAO,CACL,oCAAS,SAAS,EAAE,6BAA6B,SAAS,IAAI,EAAE,EAAE,YAChE,uBAAC,qCAAiB,OAAK,KAAK,GAAI,GACxB,CACX,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"ProductBlock.js","sourceRoot":"","sources":["../src/ProductBlock.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,2DAAwD;AAGxD,oDAAkE;AAClE,uCAAoC;AACpC,+CAA4C;AAM/B,QAAA,YAAY,GAAG,IAAA,aAAG,EAAoB,CAAC,KAAK,EAAE,EAAE;IAC3D,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC;IAClD,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IACnC,MAAM,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC;IACrC,OAAO,CACL,qCAAS,SAAS,EAAE,8CAA8C,SAAS,IAAI,EAAE,EAAE,aAChF,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,CACrB,gCAAK,SAAS,EAAC,cAAc,YAC1B,IAAA,mBAAQ,EAAC,iCAAM,SAAS,EAAC,0BAA0B,kBAAS,CAAC,CAC5D,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC,CACjC,uBAAC,uBAAU,OAEL,IAAA,iBAAO,EACT,EAAE,MAAM,EAAE,gBAAgB,EAAE,EAC5B,EAAE,SAAS,EAAE,qBAAqB,EAAE,GAAG,UAAU,EAAE,CACpD,IAJI,MAAM,CAAC,CAAC,CAAC,CAKd,CACH,CAAC,CACH,GACG,CACP,CAAC,CAAC,CAAC,IAAI,EACR,uBAAC,qCAAiB,OAAK,KAAK,GAAI,IACxB,CACX,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -1,14 +1,7 @@
1
- import type { Picture, UniBlockProps, Benefit } from './types';
2
- import type { ButtonProps } from './ui-kit/Button';
3
- import { BreadcrumbProps } from './ui-kit/Breadcrumb';
4
- export interface ProductBlockInnerContent {
5
- title?: string;
6
- description?: string;
7
- breadcrumbs?: BreadcrumbProps[];
8
- image?: Picture;
1
+ import type { UniBlockProps, Benefit } from './types';
2
+ import type { BaseTileContent } from './BaseTile';
3
+ export interface ProductBlockInnerContent extends BaseTileContent {
9
4
  benefits?: Benefit[];
10
- items?: string[];
11
- buttons?: ButtonProps[];
12
5
  }
13
6
  export interface ProductBlockInnerProps extends ProductBlockInnerContent, UniBlockProps {
14
7
  }
@@ -3,25 +3,13 @@ exports.ProductBlockInner = void 0;
3
3
  const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
4
4
  const uni_jsx_1 = require("@redneckz/uni-jsx");
5
5
  const index_1 = require("./Icons/index");
6
+ const BaseTile_1 = require("./BaseTile");
6
7
  const Img_1 = require("./Img");
7
- const BlockItem_1 = require("./ui-kit/BlockItem");
8
- const Button_1 = require("./ui-kit/Button");
9
- const Breadcrumb_1 = require("./ui-kit/Breadcrumb");
10
- const useLink_1 = require("./useLink");
11
- const joinList_1 = require("./utils/joinList");
12
8
  const ICONS = { EmptyWalletIcon: index_1.EmptyWalletIcon, PercentageSquareIcon: index_1.PercentageSquareIcon, CalendarIcon: index_1.CalendarIcon };
13
- exports.ProductBlockInner = (0, uni_jsx_1.JSX)(({ className, context, title, description, breadcrumbs, benefits, buttons, image, items }) => {
14
- const router = context.useRouter();
15
- const { handlerDecorator } = context;
16
- return ((0, jsx_runtime_1.jsxs)("div", { className: `font-sans flex justify-between items-stretch ${className || ''}`, children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex flex-col", children: [breadcrumbs?.length ? ((0, jsx_runtime_1.jsx)("div", { className: "text-xs mb-6", children: (0, joinList_1.joinList)((0, jsx_runtime_1.jsx)("span", { className: "text-secondary-text mx-2", children: "/" }))(breadcrumbs.map((breadcrumb, i) => ((0, jsx_runtime_1.jsx)(Breadcrumb_1.Breadcrumb, { ...(0, useLink_1.useLink)({ router, handlerDecorator }, { className: 'text-secondary-text', ...breadcrumb }) }, String(i))))) })) : null, title && ((0, jsx_runtime_1.jsx)("h1", { className: "font-medium text-title-lg m-0 whitespace-pre-wrap max-w-[600px]", children: title })), description && ((0, jsx_runtime_1.jsx)("div", { className: "font-normal text-base max-w-[600px] mt-4", children: description })), benefits?.length ? ((0, jsx_runtime_1.jsx)("div", { className: "flex gap-6 mt-7", children: benefits.map(renderBenefit) })) : null, items?.length ? ((0, jsx_runtime_1.jsx)("section", { className: "mt-5", role: "list", children: items.map((_, i) => ((0, jsx_runtime_1.jsx)(BlockItem_1.BlockItem, { className: "mb-2", text: _ }, String(i)))) })) : null, buttons?.length ? ((0, jsx_runtime_1.jsx)("div", { className: "flex mt-auto gap-4", children: buttons.map((button, index) => renderButton((0, useLink_1.useLink)({ router, handlerDecorator }, button), index)) })) : null] }), image?.src && (0, jsx_runtime_1.jsx)(Img_1.Img, { image: image, className: "mt-auto" })] }));
9
+ exports.ProductBlockInner = (0, uni_jsx_1.JSX)(({ className, context, title, description, benefits, buttons, image, items }) => {
10
+ return ((0, jsx_runtime_1.jsxs)("div", { className: `flex justify-between items-stretch ${className || ''}`, children: [(0, jsx_runtime_1.jsxs)("div", { className: 'flex flex-col', children: [title && ((0, jsx_runtime_1.jsx)("h1", { className: "font-medium text-title-lg m-0 whitespace-pre-wrap max-w-[600px]", children: title })), (0, jsx_runtime_1.jsx)(BaseTile_1.BaseTile, { context: context, description: description, items: items, buttons: buttons, children: benefits?.length ? ((0, jsx_runtime_1.jsx)("div", { className: "flex gap-6 mt-6 mb-12", children: benefits.map(renderBenefit) })) : null })] }), image?.src && (0, jsx_runtime_1.jsx)(Img_1.Img, { className: "mt-auto", image: image })] }));
17
11
  });
18
12
  function renderBenefit(benefit, i) {
19
13
  return ((0, jsx_runtime_1.jsxs)("div", { className: "flex gap-4 items-center", children: [benefit.icon && ((0, jsx_runtime_1.jsx)("div", { className: "w-[50px] h-[50px] min-w-[50px] min-h-[50px] bg-main rounded-full p-[10px] box-border", children: ICONS[benefit.icon]?.() })), (0, jsx_runtime_1.jsxs)("div", { className: "flex gap-1 flex-col h-full", children: [(0, jsx_runtime_1.jsx)("h4", { className: "font-medium text-xl m-0", children: benefit.label }), benefit.description && ((0, jsx_runtime_1.jsx)("div", { className: "font-normal text-sm text-secondary-text", children: benefit.description }))] })] }, String(i)));
20
14
  }
21
- function renderButton(button, i) {
22
- return button?.text ? ((0, jsx_runtime_1.jsx)(Button_1.Button, { ...button, className: "mt-8", version: button.version }, String(i))) : null;
23
- }
24
- function join(sep) {
25
- return (list) => list.reduce((acc, el, i) => (acc.length ? acc.concat({ ...sep, key: i }, el) : [el]), []);
26
- }
27
15
  //# sourceMappingURL=ProductBlockInner.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProductBlockInner.js","sourceRoot":"","sources":["../src/ProductBlockInner.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ProductBlockInner.js","sourceRoot":"","sources":["../src/ProductBlockInner.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,yCAAoF;AAEpF,yCAAsC;AAEtC,+BAA4B;AAE5B,MAAM,KAAK,GAAG,EAAE,eAAe,EAAf,uBAAe,EAAE,oBAAoB,EAApB,4BAAoB,EAAE,YAAY,EAAZ,oBAAY,EAAE,CAAC;AAQzD,QAAA,iBAAiB,GAAG,IAAA,aAAG,EAClC,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE;IAC9E,OAAO,CACL,iCAAK,SAAS,EAAE,sCAAsC,SAAS,IAAI,EAAE,EAAE,aACrE,iCAAK,SAAS,EAAE,eAAe,aAC5B,KAAK,IAAI,CACR,+BAAI,SAAS,EAAC,iEAAiE,YAC5E,KAAK,GACH,CACN,EACD,uBAAC,mBAAQ,IAAC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,YACjF,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,CAClB,gCAAK,SAAS,EAAC,uBAAuB,YAAE,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,GAAO,CAC3E,CAAC,CAAC,CAAC,IAAI,GACC,IACP,EACL,KAAK,EAAE,GAAG,IAAI,uBAAC,SAAG,IAAC,SAAS,EAAC,SAAS,EAAC,KAAK,EAAE,KAAK,GAAI,IACpD,CACP,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,SAAS,aAAa,CAAC,OAAgB,EAAE,CAAS;IAChD,OAAO,CACL,iCAAqB,SAAS,EAAC,yBAAyB,aACrD,OAAO,CAAC,IAAI,IAAI,CACf,gCAAK,SAAS,EAAC,sFAAsF,YAClG,KAAK,CAAC,OAAO,CAAC,IAA0B,CAAC,EAAE,EAAE,GAC1C,CACP,EACD,iCAAK,SAAS,EAAC,4BAA4B,aACzC,+BAAI,SAAS,EAAC,yBAAyB,YAAE,OAAO,CAAC,KAAK,GAAM,EAC3D,OAAO,CAAC,WAAW,IAAI,CACtB,gCAAK,SAAS,EAAC,yCAAyC,YAAE,OAAO,CAAC,WAAW,GAAO,CACrF,IACG,KAXE,MAAM,CAAC,CAAC,CAAC,CAYb,CACP,CAAC;AACJ,CAAC"}
@@ -1,17 +1,8 @@
1
- import type { ContentPageContext } from './ContentPageContext';
2
- import { BlockVersion, Picture } from './types';
3
- import type { ButtonProps } from './ui-kit/Button';
4
- import type { Benefit } from './types';
5
- export interface ProductTileContent {
6
- title?: string;
7
- description?: string;
1
+ import type { UniBlockProps, Benefit } from './types';
2
+ import type { BaseTileContent } from './BaseTile';
3
+ export interface ProductTileContent extends BaseTileContent {
8
4
  benefits?: Benefit[];
9
- image?: Picture;
10
- button?: ButtonProps;
11
- version?: BlockVersion;
12
5
  }
13
- export interface ProductTileProps extends ProductTileContent {
14
- className?: string;
15
- context: ContentPageContext;
6
+ export interface ProductTileProps extends ProductTileContent, UniBlockProps {
16
7
  }
17
8
  export declare const ProductTile: (props: import("@redneckz/uni-jsx").PropsWithChildren<ProductTileProps, any>, context?: any) => any;
@@ -2,17 +2,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
2
2
  exports.ProductTile = void 0;
3
3
  const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
4
4
  const uni_jsx_1 = require("@redneckz/uni-jsx");
5
- const Img_1 = require("./Img");
6
- const Button_1 = require("./ui-kit/Button");
7
- const useLink_1 = require("./useLink");
8
- const productTileStyleMap = {
9
- primary: 'bg-white text-primary-text',
10
- secondary: 'bg-primary-main text-white',
11
- };
12
- exports.ProductTile = (0, uni_jsx_1.JSX)(({ className, context, title, description, button, image, benefits, version = 'primary' }) => {
13
- const router = context.useRouter();
14
- const { handlerDecorator } = context;
15
- return ((0, jsx_runtime_1.jsx)("section", { className: `font-sans p-9 ${className || ''} ${productTileStyleMap[version]}`, children: (0, jsx_runtime_1.jsxs)("div", { className: "flex flex-col w-full", children: [title && ((0, jsx_runtime_1.jsx)("h3", { className: "font-medium text-title-sm m-0 whitespace-pre-wrap max-w-[600px]", children: title })), description && ((0, jsx_runtime_1.jsx)("div", { className: "font-normal text-base max-w-[600px] mt-4", children: description })), (0, jsx_runtime_1.jsxs)("div", { className: "flex mt-5", children: [(0, jsx_runtime_1.jsxs)("div", { className: "grow flex flex-col", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex", children: [benefits?.length ? ((0, jsx_runtime_1.jsx)("div", { className: "mr-8", children: benefits.map(renderBenefitDescription) })) : null, benefits?.length ? ((0, jsx_runtime_1.jsx)("div", { className: "pt-1", children: benefits.map((_, i) => renderBenefitLabel(_, i, version)) })) : null] }), button?.text && ((0, jsx_runtime_1.jsx)("div", { className: "mt-auto", children: (0, jsx_runtime_1.jsx)(Button_1.Button, { className: "mt-8", ...(0, useLink_1.useLink)({ router, handlerDecorator }, button), version: "secondary" }) }))] }), image && ((0, jsx_runtime_1.jsx)("div", { className: "mt-auto flex-none h-[220px] w-[220px]", children: (0, jsx_runtime_1.jsx)(Img_1.Img, { image: image }) }))] })] }) }));
5
+ const Tile_1 = require("./Tile");
6
+ exports.ProductTile = (0, uni_jsx_1.JSX)((props) => {
7
+ const { benefits, version } = props;
8
+ return ((0, jsx_runtime_1.jsx)(Tile_1.Tile, { ...props, children: (0, jsx_runtime_1.jsxs)("div", { className: "flex mt-5 mb-10", children: [benefits?.length ? ((0, jsx_runtime_1.jsx)("div", { className: "mr-8", children: benefits.map(renderBenefitDescription) })) : null, benefits?.length ? ((0, jsx_runtime_1.jsx)("div", { className: "pt-1", children: benefits.map((_, i) => renderBenefitLabel(_, i, version)) })) : null] }) }));
16
9
  });
17
10
  function renderBenefitLabel(benefit, i, version = 'primary') {
18
11
  const labelStyleMap = {
@@ -1 +1 @@
1
- {"version":3,"file":"ProductTile.js","sourceRoot":"","sources":["../src/ProductTile.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AAExC,+BAA4B;AAG5B,4CAAyC;AACzC,uCAAoC;AAiBpC,MAAM,mBAAmB,GAAiC;IACxD,OAAO,EAAE,4BAA4B;IACrC,SAAS,EAAE,4BAA4B;CACxC,CAAC;AAEW,QAAA,WAAW,GAAG,IAAA,aAAG,EAC5B,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,GAAG,SAAS,EAAE,EAAE,EAAE;IAC3F,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IACnC,MAAM,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC;IACrC,OAAO,CACL,oCAAS,SAAS,EAAE,iBAAiB,SAAS,IAAI,EAAE,IAAI,mBAAmB,CAAC,OAAO,CAAC,EAAE,YACpF,iCAAK,SAAS,EAAC,sBAAsB,aAClC,KAAK,IAAI,CACR,+BAAI,SAAS,EAAC,iEAAiE,YAC5E,KAAK,GACH,CACN,EACA,WAAW,IAAI,CACd,gCAAK,SAAS,EAAC,0CAA0C,YAAE,WAAW,GAAO,CAC9E,EACD,iCAAK,SAAS,EAAC,WAAW,aACxB,iCAAK,SAAS,EAAC,oBAAoB,aACjC,iCAAK,SAAS,EAAC,MAAM,aAClB,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,CAClB,gCAAK,SAAS,EAAC,MAAM,YAAE,QAAQ,CAAC,GAAG,CAAC,wBAAwB,CAAC,GAAO,CACrE,CAAC,CAAC,CAAC,IAAI,EACP,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,CAClB,gCAAK,SAAS,EAAC,MAAM,YAClB,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,GACtD,CACP,CAAC,CAAC,CAAC,IAAI,IACJ,EACL,MAAM,EAAE,IAAI,IAAI,CACf,gCAAK,SAAS,EAAC,SAAS,YACtB,uBAAC,eAAM,IACL,SAAS,EAAC,MAAM,KACZ,IAAA,iBAAO,EAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,EAAE,MAAM,CAAC,EACjD,OAAO,EAAC,WAAW,GACnB,GACE,CACP,IACG,EACL,KAAK,IAAI,CACR,gCAAK,SAAS,EAAC,uCAAuC,YACpD,uBAAC,SAAG,IAAC,KAAK,EAAE,KAAK,GAAI,GACjB,CACP,IACG,IACF,GACE,CACX,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,SAAS,kBAAkB,CAAC,OAAgB,EAAE,CAAS,EAAE,OAAO,GAAG,SAAS;IAC1E,MAAM,aAAa,GAAiC;QAClD,OAAO,EAAE,qBAAqB;QAC9B,SAAS,EAAE,YAAY;KACxB,CAAC;IACF,OAAO,CACL,gCAAqB,SAAS,EAAE,gBAAgB,aAAa,CAAC,OAAO,CAAC,EAAE,YACrE,OAAO,CAAC,KAAK,IADN,MAAM,CAAC,CAAC,CAAC,CAEb,CACP,CAAC;AACJ,CAAC;AACD,SAAS,wBAAwB,CAAC,OAAgB,EAAE,CAAS;IAC3D,OAAO,CACL,gCAAqB,SAAS,EAAC,4BAA4B,YACxD,OAAO,CAAC,WAAW,IADZ,MAAM,CAAC,CAAC,CAAC,CAEb,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"ProductTile.js","sourceRoot":"","sources":["../src/ProductTile.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AAGxC,iCAA8B;AASjB,QAAA,WAAW,GAAG,IAAA,aAAG,EAAmB,CAAC,KAAK,EAAE,EAAE;IACzD,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IACpC,OAAO,CACL,uBAAC,WAAI,OAAK,KAAK,YACb,iCAAK,SAAS,EAAC,iBAAiB,aAC7B,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,CAClB,gCAAK,SAAS,EAAC,MAAM,YAAE,QAAQ,CAAC,GAAG,CAAC,wBAAwB,CAAC,GAAO,CACrE,CAAC,CAAC,CAAC,IAAI,EACP,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,CAClB,gCAAK,SAAS,EAAC,MAAM,YAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,GAAO,CACxF,CAAC,CAAC,CAAC,IAAI,IACJ,GACD,CACR,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,SAAS,kBAAkB,CAAC,OAAgB,EAAE,CAAS,EAAE,OAAO,GAAG,SAAS;IAC1E,MAAM,aAAa,GAAiC;QAClD,OAAO,EAAE,qBAAqB;QAC9B,SAAS,EAAE,YAAY;KACxB,CAAC;IACF,OAAO,CACL,gCAAqB,SAAS,EAAE,gBAAgB,aAAa,CAAC,OAAO,CAAC,EAAE,YACrE,OAAO,CAAC,KAAK,IADN,MAAM,CAAC,CAAC,CAAC,CAEb,CACP,CAAC;AACJ,CAAC;AACD,SAAS,wBAAwB,CAAC,OAAgB,EAAE,CAAS;IAC3D,OAAO,CACL,gCAAqB,SAAS,EAAC,4BAA4B,YACxD,OAAO,CAAC,WAAW,IADZ,MAAM,CAAC,CAAC,CAAC,CAEb,CACP,CAAC;AACJ,CAAC"}
package/dist/Tile.d.ts CHANGED
@@ -1,13 +1,5 @@
1
- import type { BlockVersion, Picture, UniBlockProps } from './types';
2
- import type { ButtonProps } from './ui-kit/Button';
3
- export interface TileContent {
4
- title?: string;
5
- description?: string;
6
- image?: Picture;
7
- items?: string[];
8
- button?: ButtonProps;
9
- version?: BlockVersion;
10
- }
11
- export interface TileProps extends TileContent, UniBlockProps {
1
+ import type { UniBlockProps } from './types';
2
+ import type { BaseTileContent } from './BaseTile';
3
+ export interface TileProps extends BaseTileContent, UniBlockProps {
12
4
  }
13
5
  export declare const Tile: (props: import("@redneckz/uni-jsx").PropsWithChildren<TileProps, any>, context?: any) => any;
package/dist/Tile.js CHANGED
@@ -2,35 +2,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
2
2
  exports.Tile = void 0;
3
3
  const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
4
4
  const uni_jsx_1 = require("@redneckz/uni-jsx");
5
- const Img_1 = require("./Img");
6
- const BlockItem_1 = require("./ui-kit/BlockItem");
7
- const Button_1 = require("./ui-kit/Button");
8
- const useLink_1 = require("./useLink");
5
+ const BaseTile_1 = require("./BaseTile");
9
6
  const tileStyleMap = {
10
7
  primary: 'bg-white text-primary-text',
11
8
  secondary: 'bg-primary-main text-white',
12
9
  };
13
- const TITLE_CLASSES = 'font-medium m-0 whitespace-pre-wrap max-w-[600px]';
14
- exports.Tile = (0, uni_jsx_1.JSX)(({ className, context, title, description, children, button, image, items, version = 'primary', }) => {
15
- const router = context.useRouter();
16
- const { handlerDecorator } = context;
17
- return ((0, jsx_runtime_1.jsxs)("section", { className: `flex flex-col font-sans p-9 ${className || ''} ${tileStyleMap[version]}`, children: [title && renderTitle(title, className), (0, jsx_runtime_1.jsxs)("div", { className: "grow flex justify-between mt-6", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex flex-col justify-between items-start", children: [description || children ? ((0, jsx_runtime_1.jsx)("div", { className: "font-normal text-base max-w-[600px]", children: description || children })) : (renderItems(items, version)), button?.text && ((0, jsx_runtime_1.jsx)(Button_1.Button, { className: "mt-6", ...(0, useLink_1.useLink)({ router, handlerDecorator }, button), version: "secondary" }))] }), image?.src && (0, jsx_runtime_1.jsx)(Img_1.Img, { className: "mt-auto h-[220px] w-[220px]", image: image })] })] }));
10
+ exports.Tile = (0, uni_jsx_1.JSX)((props) => {
11
+ const { children, className, version = 'primary' } = props;
12
+ return ((0, jsx_runtime_1.jsx)("section", { className: `font-sans p-9 ${className || ''} ${tileStyleMap[version]}`, children: (0, jsx_runtime_1.jsx)(BaseTile_1.BaseTile, { ...props, children: children }) }));
18
13
  });
19
- function renderTitle(title, className = '') {
20
- const colSpanPrefix = 'col-span-';
21
- const colSpanStr = className.split(/\s+/).find((_) => _.startsWith(colSpanPrefix));
22
- const colSpan = colSpanStr ? parseInt(colSpanStr.substring(colSpanPrefix.length), 10) : 12;
23
- if (colSpan <= 4) {
24
- return (0, jsx_runtime_1.jsx)("h3", { className: `${TITLE_CLASSES} text-title-xs`, children: title });
25
- }
26
- else if (colSpan <= 8) {
27
- return (0, jsx_runtime_1.jsx)("h3", { className: `${TITLE_CLASSES} text-title-sm`, children: title });
28
- }
29
- else {
30
- return (0, jsx_runtime_1.jsx)("h2", { className: `${TITLE_CLASSES} text-title`, children: title });
31
- }
32
- }
33
- function renderItems(items, version) {
34
- return items?.length ? ((0, jsx_runtime_1.jsx)("section", { className: "max-w-[600px]", role: "list", children: items.map((_, i) => ((0, jsx_runtime_1.jsx)(BlockItem_1.BlockItem, { className: i ? 'mt-2.5' : '', text: _, version: version }, String(i)))) })) : null;
35
- }
36
14
  //# sourceMappingURL=Tile.js.map
package/dist/Tile.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Tile.js","sourceRoot":"","sources":["../src/Tile.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Tile.js","sourceRoot":"","sources":["../src/Tile.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AAExC,yCAAsC;AAKtC,MAAM,YAAY,GAAiC;IACjD,OAAO,EAAE,4BAA4B;IACrC,SAAS,EAAE,4BAA4B;CACxC,CAAC;AAEW,QAAA,IAAI,GAAG,IAAA,aAAG,EAAY,CAAC,KAAK,EAAE,EAAE;IAC3C,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,GAAG,SAAS,EAAE,GAAG,KAAK,CAAC;IAC3D,OAAO,CACL,oCAAS,SAAS,EAAE,iBAAiB,SAAS,IAAI,EAAE,IAAI,YAAY,CAAC,OAAO,CAAC,EAAE,YAC7E,uBAAC,mBAAQ,OAAK,KAAK,YAAG,QAAQ,GAAY,GAClC,CACX,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ export declare function DaDataAPI(baseURL?: string): {
2
+ getFetcherAddress: () => Promise<string | null | undefined>;
3
+ };
@@ -0,0 +1,33 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.DaDataAPI = void 0;
3
+ const getCurrentPosition_1 = require("../utils/getCurrentPosition");
4
+ function DaDataAPI(baseURL = '') {
5
+ async function getFetcherAddress() {
6
+ if (!('geolocation' in navigator)) {
7
+ return null;
8
+ }
9
+ try {
10
+ const coords = await (0, getCurrentPosition_1.getCurrentPosition)();
11
+ const response = await fetch(`${baseURL}/geolocate`, {
12
+ method: 'POST',
13
+ mode: 'cors',
14
+ body: JSON.stringify({
15
+ lat: coords.latitude,
16
+ lon: coords.longitude,
17
+ count: 1,
18
+ }),
19
+ });
20
+ const data = (await response.json());
21
+ return data?.suggestions?.[0]?.data?.city;
22
+ }
23
+ catch (e) {
24
+ console.error(e);
25
+ return null;
26
+ }
27
+ }
28
+ return {
29
+ getFetcherAddress,
30
+ };
31
+ }
32
+ exports.DaDataAPI = DaDataAPI;
33
+ //# sourceMappingURL=DaDataAPI.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DaDataAPI.js","sourceRoot":"","sources":["../../src/api/DaDataAPI.ts"],"names":[],"mappings":";;AAAA,oEAAiE;AAIjE,SAAgB,SAAS,CAAC,OAAO,GAAG,EAAE;IACpC,KAAK,UAAU,iBAAiB;QAC9B,IAAI,CAAC,CAAC,aAAa,IAAI,SAAS,CAAC,EAAE;YACjC,OAAO,IAAI,CAAC;SACb;QAED,IAAI;YACF,MAAM,MAAM,GAAG,MAAM,IAAA,uCAAkB,GAAE,CAAC;YAC1C,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,YAAY,EAAE;gBACnD,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,GAAG,EAAE,MAAM,CAAC,QAAQ;oBACpB,GAAG,EAAE,MAAM,CAAC,SAAS;oBACrB,KAAK,EAAE,CAAC;iBACT,CAAC;aACH,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAiB,CAAC;YACrD,OAAO,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC;SAC3C;QAAC,OAAO,CAAC,EAAE;YACV,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACjB,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IAED,OAAO;QACL,iBAAiB;KAClB,CAAC;AACJ,CAAC;AA7BD,8BA6BC"}
@@ -2,7 +2,7 @@ export interface LikeData {
2
2
  node_id: string;
3
3
  value: number;
4
4
  }
5
- export declare function LikeAPI(projectId: string, baseURL: string): {
5
+ export declare function LikeAPI(projectId: string, baseURL?: string): {
6
6
  getLikeCount: (...nodeIds: string[]) => Promise<LikeData[]>;
7
7
  like: (nodeId: string) => Promise<number>;
8
8
  dislike: (nodeId: string) => Promise<number>;
@@ -2,14 +2,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
2
2
  exports.LikeAPI = void 0;
3
3
  const AUTH_PREFIX = 'guest';
4
4
  const STORAGE_KEY = 'likesToken';
5
- function LikeAPI(projectId, baseURL) {
5
+ function LikeAPI(projectId, baseURL = '') {
6
6
  async function getLikeCount(...nodeIds) {
7
7
  if (!nodeIds.length) {
8
8
  return [];
9
9
  }
10
10
  const { token: Authorization } = await auth();
11
11
  try {
12
- const response = await fetch(`/assist/v1/public/projects/${projectId}/nodes/likes`, {
12
+ const response = await fetch(`${baseURL}/assist/v1/public/projects/${projectId}/nodes/likes`, {
13
13
  method: 'POST',
14
14
  mode: 'cors',
15
15
  headers: { 'Content-Type': 'application/json', Authorization },
@@ -1 +1 @@
1
- {"version":3,"file":"LikeAPI.js","sourceRoot":"","sources":["../../src/api/LikeAPI.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LikeAPI.js","sourceRoot":"","sources":["../../src/api/LikeAPI.ts"],"names":[],"mappings":"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"}
@@ -3,4 +3,5 @@ import type { TransformationOptions } from './TransformationOptions';
3
3
  export declare function ContentPageRepository({ contentDir, publicDir, }?: Partial<TransformationOptions>): {
4
4
  getAllContentPages: () => Promise<ContentPageDef[]>;
5
5
  getContentPageBySlug: (slug: string) => Promise<ContentPageDef | undefined>;
6
+ getMobilePageBySlug: (slug: string) => Promise<ContentPageDef | undefined>;
6
7
  };
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
5
5
  exports.ContentPageRepository = void 0;
6
6
  const glob_1 = __importDefault(require("glob"));
7
7
  const util_1 = __importDefault(require("util"));
8
+ const toMobilePage_1 = require("./toMobilePage");
8
9
  const transformContentPage_1 = require("./transformContentPage");
9
10
  const find = util_1.default.promisify(glob_1.default);
10
11
  function ContentPageRepository({ contentDir = 'content', publicDir = 'public', } = {}) {
@@ -16,6 +17,10 @@ function ContentPageRepository({ contentDir = 'content', publicDir = 'public', }
16
17
  const pages = await getAllContentPages();
17
18
  return pages.find((content) => content.slug === slug);
18
19
  }
20
+ async function getMobilePageBySlug(slug) {
21
+ const page = await getContentPageBySlug(slug);
22
+ return page && (0, toMobilePage_1.toMobilePage)(page);
23
+ }
19
24
  const cache = {};
20
25
  async function readPage(filePath) {
21
26
  if (!(filePath in cache)) {
@@ -29,6 +34,7 @@ function ContentPageRepository({ contentDir = 'content', publicDir = 'public', }
29
34
  return {
30
35
  getAllContentPages,
31
36
  getContentPageBySlug,
37
+ getMobilePageBySlug,
32
38
  };
33
39
  }
34
40
  exports.ContentPageRepository = ContentPageRepository;