@redneckz/wildless-cms-uni-blocks 0.2.29 → 0.2.33

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 (248) hide show
  1. package/dist/Blocks.d.ts +8 -0
  2. package/dist/Blocks.js +17 -0
  3. package/dist/Blocks.js.map +1 -0
  4. package/dist/ContentPage.d.ts +19 -0
  5. package/dist/ContentPage.js +30 -0
  6. package/dist/ContentPage.js.map +1 -0
  7. package/dist/ContentPageContext.d.ts +20 -0
  8. package/dist/ContentPageContext.js +2 -0
  9. package/dist/ContentPageContext.js.map +1 -0
  10. package/dist/ContentPageHead.d.ts +6 -0
  11. package/dist/ContentPageHead.js +11 -0
  12. package/dist/ContentPageHead.js.map +1 -0
  13. package/dist/Header/Header.d.ts +7 -0
  14. package/dist/Header/Header.js +25 -0
  15. package/dist/Header/Header.js.map +1 -0
  16. package/dist/Header/HeaderContent.d.ts +9 -0
  17. package/dist/Header/HeaderContent.js +2 -0
  18. package/dist/Header/HeaderContent.js.map +1 -0
  19. package/dist/Header/HeaderSecondaryMenu.d.ts +6 -0
  20. package/dist/Header/HeaderSecondaryMenu.js +11 -0
  21. package/dist/Header/HeaderSecondaryMenu.js.map +1 -0
  22. package/dist/Header/HeaderSecondaryMenuButton.d.ts +5 -0
  23. package/dist/Header/HeaderSecondaryMenuButton.js +6 -0
  24. package/dist/Header/HeaderSecondaryMenuButton.js.map +1 -0
  25. package/dist/Header/index.d.ts +3 -0
  26. package/dist/Header/index.js +5 -0
  27. package/dist/Header/index.js.map +1 -0
  28. package/dist/Header/isSubItemActive.d.ts +3 -0
  29. package/dist/Header/isSubItemActive.js +10 -0
  30. package/dist/Header/isSubItemActive.js.map +1 -0
  31. package/dist/Header/isTopItemActive.d.ts +3 -0
  32. package/dist/Header/isTopItemActive.js +14 -0
  33. package/dist/Header/isTopItemActive.js.map +1 -0
  34. package/dist/Header/mergeTopItems.d.ts +2 -0
  35. package/dist/Header/mergeTopItems.js +10 -0
  36. package/dist/Header/mergeTopItems.js.map +1 -0
  37. package/dist/Icons.d.ts +14 -0
  38. package/dist/Icons.js +24 -0
  39. package/dist/Icons.js.map +1 -0
  40. package/dist/Img.d.ts +7 -0
  41. package/dist/Img.js +12 -0
  42. package/dist/Img.js.map +1 -0
  43. package/dist/LikeControl.d.ts +6 -0
  44. package/dist/LikeControl.js +10 -0
  45. package/dist/LikeControl.js.map +1 -0
  46. package/dist/Placeholder.d.ts +6 -0
  47. package/dist/Placeholder.js +8 -0
  48. package/dist/Placeholder.js.map +1 -0
  49. package/dist/ProductTile.d.ts +25 -0
  50. package/dist/ProductTile.js +29 -0
  51. package/dist/ProductTile.js.map +1 -0
  52. package/dist/RichText.d.ts +8 -0
  53. package/dist/RichText.js +10 -0
  54. package/dist/RichText.js.map +1 -0
  55. package/dist/Text.d.ts +8 -0
  56. package/dist/Text.js +8 -0
  57. package/dist/Text.js.map +1 -0
  58. package/dist/TextWithImage.d.ts +9 -0
  59. package/dist/TextWithImage.js +9 -0
  60. package/dist/TextWithImage.js.map +1 -0
  61. package/dist/api/LikeAPI.d.ts +9 -0
  62. package/dist/api/LikeAPI.js +119 -0
  63. package/dist/api/LikeAPI.js.map +1 -0
  64. package/dist/content-page-repository/ContentPageRepository.d.ts +6 -0
  65. package/dist/content-page-repository/ContentPageRepository.js +35 -0
  66. package/dist/content-page-repository/ContentPageRepository.js.map +1 -0
  67. package/dist/content-page-repository/TransformationOptions.d.ts +4 -0
  68. package/dist/content-page-repository/TransformationOptions.js +2 -0
  69. package/dist/content-page-repository/TransformationOptions.js.map +1 -0
  70. package/dist/content-page-repository/index.d.ts +1 -0
  71. package/dist/content-page-repository/index.js +5 -0
  72. package/dist/content-page-repository/index.js.map +1 -0
  73. package/dist/content-page-repository/mapJSON.d.ts +1 -0
  74. package/dist/content-page-repository/mapJSON.js +24 -0
  75. package/dist/content-page-repository/mapJSON.js.map +1 -0
  76. package/dist/content-page-repository/transformContentPage.d.ts +3 -0
  77. package/dist/content-page-repository/transformContentPage.js +27 -0
  78. package/dist/content-page-repository/transformContentPage.js.map +1 -0
  79. package/dist/content-page-repository/transformMarkdown.d.ts +1 -0
  80. package/dist/content-page-repository/transformMarkdown.js +16 -0
  81. package/dist/content-page-repository/transformMarkdown.js.map +1 -0
  82. package/dist/content-page-repository/transformPicture.d.ts +3 -0
  83. package/dist/content-page-repository/transformPicture.js +45 -0
  84. package/dist/content-page-repository/transformPicture.js.map +1 -0
  85. package/dist/index.d.ts +6 -0
  86. package/dist/index.js +11 -0
  87. package/dist/index.js.map +1 -0
  88. package/dist/types.d.ts +45 -0
  89. package/dist/types.js +2 -0
  90. package/dist/types.js.map +1 -0
  91. package/dist/ui-kit/BlockItem.d.ts +10 -0
  92. package/dist/ui-kit/BlockItem.js +16 -0
  93. package/dist/ui-kit/BlockItem.js.map +1 -0
  94. package/dist/ui-kit/Breadcrumb.d.ts +6 -0
  95. package/dist/ui-kit/Breadcrumb.js +13 -0
  96. package/dist/ui-kit/Breadcrumb.js.map +1 -0
  97. package/dist/ui-kit/Button.d.ts +10 -0
  98. package/dist/ui-kit/Button.js +20 -0
  99. package/dist/ui-kit/Button.js.map +1 -0
  100. package/dist/ui-kit/HeaderItem.d.ts +3 -0
  101. package/dist/ui-kit/HeaderItem.js +9 -0
  102. package/dist/ui-kit/HeaderItem.js.map +1 -0
  103. package/dist/ui-kit/LikeButton.d.ts +5 -0
  104. package/dist/ui-kit/LikeButton.js +15 -0
  105. package/dist/ui-kit/LikeButton.js.map +1 -0
  106. package/dist/ui-kit/Link.d.ts +5 -0
  107. package/dist/ui-kit/Link.js +2 -0
  108. package/dist/ui-kit/Link.js.map +1 -0
  109. package/dist/ui-kit/Logo.d.ts +5 -0
  110. package/dist/ui-kit/Logo.js +16 -0
  111. package/dist/ui-kit/Logo.js.map +1 -0
  112. package/dist/ui-kit/SVG.d.ts +18 -0
  113. package/dist/ui-kit/SVG.js +8 -0
  114. package/dist/ui-kit/SVG.js.map +1 -0
  115. package/dist/ui-kit/TopItem.d.ts +10 -0
  116. package/dist/ui-kit/TopItem.js +10 -0
  117. package/dist/ui-kit/TopItem.js.map +1 -0
  118. package/dist/useLink.d.ts +11 -0
  119. package/dist/useLink.js +21 -0
  120. package/dist/useLink.js.map +1 -0
  121. package/dist/utils/url.d.ts +4 -0
  122. package/dist/utils/url.js +26 -0
  123. package/dist/utils/url.js.map +1 -0
  124. package/lib/Blocks.d.ts +8 -0
  125. package/lib/Blocks.js +15 -0
  126. package/lib/Blocks.js.map +1 -0
  127. package/lib/ContentPage.d.ts +19 -0
  128. package/lib/ContentPage.js +28 -0
  129. package/lib/ContentPage.js.map +1 -0
  130. package/lib/ContentPageContext.d.ts +20 -0
  131. package/lib/ContentPageContext.js +2 -0
  132. package/lib/ContentPageContext.js.map +1 -0
  133. package/lib/ContentPageHead.d.ts +6 -0
  134. package/lib/ContentPageHead.js +9 -0
  135. package/lib/ContentPageHead.js.map +1 -0
  136. package/lib/Header/Header.d.ts +7 -0
  137. package/lib/Header/Header.js +23 -0
  138. package/lib/Header/Header.js.map +1 -0
  139. package/lib/Header/HeaderContent.d.ts +9 -0
  140. package/lib/Header/HeaderContent.js +2 -0
  141. package/lib/Header/HeaderContent.js.map +1 -0
  142. package/lib/Header/HeaderSecondaryMenu.d.ts +6 -0
  143. package/lib/Header/HeaderSecondaryMenu.js +9 -0
  144. package/lib/Header/HeaderSecondaryMenu.js.map +1 -0
  145. package/lib/Header/HeaderSecondaryMenuButton.d.ts +5 -0
  146. package/lib/Header/HeaderSecondaryMenuButton.js +4 -0
  147. package/lib/Header/HeaderSecondaryMenuButton.js.map +1 -0
  148. package/lib/Header/index.d.ts +3 -0
  149. package/lib/Header/index.js +2 -0
  150. package/lib/Header/index.js.map +1 -0
  151. package/lib/Header/isSubItemActive.d.ts +3 -0
  152. package/lib/Header/isSubItemActive.js +7 -0
  153. package/lib/Header/isSubItemActive.js.map +1 -0
  154. package/lib/Header/isTopItemActive.d.ts +3 -0
  155. package/lib/Header/isTopItemActive.js +11 -0
  156. package/lib/Header/isTopItemActive.js.map +1 -0
  157. package/lib/Header/mergeTopItems.d.ts +2 -0
  158. package/lib/Header/mergeTopItems.js +7 -0
  159. package/lib/Header/mergeTopItems.js.map +1 -0
  160. package/lib/Icons.d.ts +14 -0
  161. package/lib/Icons.js +16 -0
  162. package/lib/Icons.js.map +1 -0
  163. package/lib/Img.d.ts +7 -0
  164. package/lib/Img.js +9 -0
  165. package/lib/Img.js.map +1 -0
  166. package/lib/LikeControl.d.ts +6 -0
  167. package/lib/LikeControl.js +8 -0
  168. package/lib/LikeControl.js.map +1 -0
  169. package/lib/Placeholder.d.ts +6 -0
  170. package/lib/Placeholder.js +6 -0
  171. package/lib/Placeholder.js.map +1 -0
  172. package/lib/ProductTile.d.ts +25 -0
  173. package/lib/ProductTile.js +27 -0
  174. package/lib/ProductTile.js.map +1 -0
  175. package/lib/RichText.d.ts +8 -0
  176. package/lib/RichText.js +8 -0
  177. package/lib/RichText.js.map +1 -0
  178. package/lib/Text.d.ts +8 -0
  179. package/lib/Text.js +6 -0
  180. package/lib/Text.js.map +1 -0
  181. package/lib/TextWithImage.d.ts +9 -0
  182. package/lib/TextWithImage.js +7 -0
  183. package/lib/TextWithImage.js.map +1 -0
  184. package/lib/api/LikeAPI.d.ts +9 -0
  185. package/lib/api/LikeAPI.js +116 -0
  186. package/lib/api/LikeAPI.js.map +1 -0
  187. package/lib/common.css +1 -0
  188. package/lib/content-page-repository/ContentPageRepository.d.ts +6 -0
  189. package/lib/content-page-repository/ContentPageRepository.js +29 -0
  190. package/lib/content-page-repository/ContentPageRepository.js.map +1 -0
  191. package/lib/content-page-repository/TransformationOptions.d.ts +4 -0
  192. package/lib/content-page-repository/TransformationOptions.js +2 -0
  193. package/lib/content-page-repository/TransformationOptions.js.map +1 -0
  194. package/lib/content-page-repository/index.d.ts +1 -0
  195. package/lib/content-page-repository/index.js +2 -0
  196. package/lib/content-page-repository/index.js.map +1 -0
  197. package/lib/content-page-repository/mapJSON.d.ts +1 -0
  198. package/lib/content-page-repository/mapJSON.js +21 -0
  199. package/lib/content-page-repository/mapJSON.js.map +1 -0
  200. package/lib/content-page-repository/transformContentPage.d.ts +3 -0
  201. package/lib/content-page-repository/transformContentPage.js +21 -0
  202. package/lib/content-page-repository/transformContentPage.js.map +1 -0
  203. package/lib/content-page-repository/transformMarkdown.d.ts +1 -0
  204. package/lib/content-page-repository/transformMarkdown.js +10 -0
  205. package/lib/content-page-repository/transformMarkdown.js.map +1 -0
  206. package/lib/content-page-repository/transformPicture.d.ts +3 -0
  207. package/lib/content-page-repository/transformPicture.js +39 -0
  208. package/lib/content-page-repository/transformPicture.js.map +1 -0
  209. package/lib/index.d.ts +6 -0
  210. package/lib/index.js +5 -0
  211. package/lib/index.js.map +1 -0
  212. package/lib/types.d.ts +45 -0
  213. package/lib/types.js +2 -0
  214. package/lib/types.js.map +1 -0
  215. package/lib/ui-kit/BlockItem.d.ts +10 -0
  216. package/lib/ui-kit/BlockItem.js +14 -0
  217. package/lib/ui-kit/BlockItem.js.map +1 -0
  218. package/lib/ui-kit/Breadcrumb.d.ts +6 -0
  219. package/lib/ui-kit/Breadcrumb.js +11 -0
  220. package/lib/ui-kit/Breadcrumb.js.map +1 -0
  221. package/lib/ui-kit/Button.d.ts +10 -0
  222. package/lib/ui-kit/Button.js +18 -0
  223. package/lib/ui-kit/Button.js.map +1 -0
  224. package/lib/ui-kit/HeaderItem.d.ts +3 -0
  225. package/lib/ui-kit/HeaderItem.js +7 -0
  226. package/lib/ui-kit/HeaderItem.js.map +1 -0
  227. package/lib/ui-kit/LikeButton.d.ts +5 -0
  228. package/lib/ui-kit/LikeButton.js +13 -0
  229. package/lib/ui-kit/LikeButton.js.map +1 -0
  230. package/lib/ui-kit/Link.d.ts +5 -0
  231. package/lib/ui-kit/Link.js +2 -0
  232. package/lib/ui-kit/Link.js.map +1 -0
  233. package/lib/ui-kit/Logo.d.ts +5 -0
  234. package/lib/ui-kit/Logo.js +14 -0
  235. package/lib/ui-kit/Logo.js.map +1 -0
  236. package/lib/ui-kit/SVG.d.ts +18 -0
  237. package/lib/ui-kit/SVG.js +6 -0
  238. package/lib/ui-kit/SVG.js.map +1 -0
  239. package/lib/ui-kit/TopItem.d.ts +10 -0
  240. package/lib/ui-kit/TopItem.js +8 -0
  241. package/lib/ui-kit/TopItem.js.map +1 -0
  242. package/lib/useLink.d.ts +11 -0
  243. package/lib/useLink.js +18 -0
  244. package/lib/useLink.js.map +1 -0
  245. package/lib/utils/url.d.ts +4 -0
  246. package/lib/utils/url.js +20 -0
  247. package/lib/utils/url.js.map +1 -0
  248. package/package.json +10 -3
@@ -0,0 +1,8 @@
1
+ export declare const Blocks: {
2
+ Header: (props: import("@redneckz/uni-jsx").PropsWithChildren<import("./Header/Header").HeaderProps, any>, context?: any) => any;
3
+ Text: (props: import("@redneckz/uni-jsx").PropsWithChildren<import("./Text").TextProps, any>, context?: any) => any;
4
+ TextWithImage: (props: import("@redneckz/uni-jsx").PropsWithChildren<import("./TextWithImage").TextWithImageProps, any>, context?: any) => any;
5
+ RichText: (props: import("@redneckz/uni-jsx").PropsWithChildren<import("./RichText").RichTextProps, any>, context?: any) => any;
6
+ Placeholder: (props: import("@redneckz/uni-jsx").PropsWithChildren<import("./Placeholder").PlaceholderProps, any>, context?: any) => any;
7
+ ProductTile: (props: import("@redneckz/uni-jsx").PropsWithChildren<import("./ProductTile").ProductTileProps, any>, context?: any) => any;
8
+ };
package/dist/Blocks.js ADDED
@@ -0,0 +1,17 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.Blocks = void 0;
3
+ const index_1 = require("./Header/index");
4
+ const Placeholder_1 = require("./Placeholder");
5
+ const RichText_1 = require("./RichText");
6
+ const Text_1 = require("./Text");
7
+ const TextWithImage_1 = require("./TextWithImage");
8
+ const ProductTile_1 = require("./ProductTile");
9
+ exports.Blocks = {
10
+ Header: index_1.Header,
11
+ Text: Text_1.Text,
12
+ TextWithImage: TextWithImage_1.TextWithImage,
13
+ RichText: RichText_1.RichText,
14
+ Placeholder: Placeholder_1.Placeholder,
15
+ ProductTile: ProductTile_1.ProductTile,
16
+ };
17
+ //# sourceMappingURL=Blocks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Blocks.js","sourceRoot":"","sources":["../src/Blocks.ts"],"names":[],"mappings":";;AAAA,0CAAwC;AACxC,+CAA4C;AAC5C,yCAAsC;AACtC,iCAA8B;AAC9B,mDAAgD;AAChD,+CAA4C;AAE/B,QAAA,MAAM,GAAG;IACpB,MAAM,EAAN,cAAM;IACN,IAAI,EAAJ,WAAI;IACJ,aAAa,EAAb,6BAAa;IACb,QAAQ,EAAR,mBAAQ;IACR,WAAW,EAAX,yBAAW;IACX,WAAW,EAAX,yBAAW;CACZ,CAAC"}
@@ -0,0 +1,19 @@
1
+ import type { ContentPageContext } from './ContentPageContext';
2
+ import type { BlockDef, ContentPageDef } from './types';
3
+ interface BlockDecoratorProps<VNode> {
4
+ blockClassName: string;
5
+ block: BlockDef;
6
+ render: (props: {
7
+ blockClassName: string;
8
+ block: BlockDef;
9
+ }) => VNode;
10
+ }
11
+ export declare type BlockDecorator<VNode = any> = (props: BlockDecoratorProps<VNode>) => any;
12
+ export interface ContentPageProps {
13
+ className?: string;
14
+ data: ContentPageDef;
15
+ context: ContentPageContext;
16
+ blockDecorator?: BlockDecorator;
17
+ }
18
+ export declare const ContentPage: (props: import("@redneckz/uni-jsx").PropsWithChildren<ContentPageProps, any>, context?: any) => any;
19
+ export {};
@@ -0,0 +1,30 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.ContentPage = void 0;
3
+ const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
4
+ const uni_jsx_1 = require("@redneckz/uni-jsx");
5
+ const Blocks_1 = require("./Blocks");
6
+ const LikeControl_1 = require("./LikeControl");
7
+ const defaultBlockDecorator = ({ blockClassName, block, render }) => render({ blockClassName, block });
8
+ exports.ContentPage = (0, uni_jsx_1.JSX)(({ className, data: { style: pageStyle, blocks, likeControl, colorPalette = 'pc' }, context, blockDecorator = defaultBlockDecorator, }) => {
9
+ return ((0, jsx_runtime_1.jsxs)("section", { className: "relative", "data-theme": colorPalette, children: [(0, jsx_runtime_1.jsx)("div", { className: `grid grid-cols-12 ${style2className(pageStyle)} ${className}`, children: blocks?.length ? blocks.map(renderBlock) : null }), likeControl && ((0, jsx_runtime_1.jsx)("div", { className: "flex items-end absolute bottom-0 right-0 h-full pointer-events-none", children: (0, jsx_runtime_1.jsx)(LikeControl_1.LikeControl, { className: "rounded-tl-lg sticky bottom-0 pointer-events-auto", context: context }) }))] }));
10
+ function renderBlock(block, i) {
11
+ const { type } = block;
12
+ if (!(type in Blocks_1.Blocks)) {
13
+ console.warn(`No block with "${type}" is registered`);
14
+ return null;
15
+ }
16
+ const BlockComponent = Blocks_1.Blocks[type];
17
+ return blockDecorator({
18
+ blockClassName: style2className(block.style),
19
+ block,
20
+ render: (props) => {
21
+ const { version, content, blocks } = props.block;
22
+ return ((0, jsx_runtime_1.jsx)(BlockComponent, { className: props.blockClassName, version: version, context: context, ...content, children: blocks?.length ? blocks.map(renderBlock) : null }, `${type}-${i}`));
23
+ },
24
+ });
25
+ }
26
+ });
27
+ function style2className(style) {
28
+ return style ? style.join(' ') : '';
29
+ }
30
+ //# sourceMappingURL=ContentPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContentPage.js","sourceRoot":"","sources":["../src/ContentPage.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,qCAAkC;AAClC,+CAA4C;AAmB5C,MAAM,qBAAqB,GAAmB,CAAC,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CAClF,MAAM,CAAC,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,CAAC;AAEvB,QAAA,WAAW,GAAG,IAAA,aAAG,EAC5B,CAAC,EACC,SAAS,EACT,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,YAAY,GAAG,IAAI,EAAE,EACpE,OAAO,EACP,cAAc,GAAG,qBAAqB,GACvC,EAAE,EAAE;IACH,OAAO,CACL,qCAAS,SAAS,EAAC,UAAU,gBAAa,YAAY,aACpD,gCAAK,SAAS,EAAE,qBAAqB,eAAe,CAAC,SAAS,CAAC,IAAI,SAAS,EAAE,YAC3E,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,GAC5C,EACL,WAAW,IAAI,CACd,gCAAK,SAAS,EAAC,qEAAqE,YAClF,uBAAC,yBAAW,IACV,SAAS,EAAC,mDAAmD,EAC7D,OAAO,EAAE,OAAO,GAChB,GACE,CACP,IACO,CACX,CAAC;IAEF,SAAS,WAAW,CAAC,KAAe,EAAE,CAAS;QAC7C,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,CAAC,IAAI,IAAI,eAAM,CAAC,EAAE;YACrB,OAAO,CAAC,IAAI,CAAC,kBAAkB,IAAI,iBAAiB,CAAC,CAAC;YACtD,OAAO,IAAI,CAAC;SACb;QAED,MAAM,cAAc,GAAG,eAAM,CAAC,IAA2B,CAAC,CAAC;QAC3D,OAAO,cAAc,CAAC;YACpB,cAAc,EAAE,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC;YAC5C,KAAK;YACL,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;gBAChB,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC;gBACjD,OAAO,CACL,uBAAC,cAAc,IAEb,SAAS,EAAE,KAAK,CAAC,cAAc,EAC/B,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,KACZ,OAAO,YAEV,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,IAN3C,GAAG,IAAI,IAAI,CAAC,EAAE,CAOJ,CAClB,CAAC;YACJ,CAAC;SACF,CAAC,CAAC;IACL,CAAC;AACH,CAAC,CACF,CAAC;AAEF,SAAS,eAAe,CAAC,KAAkC;IACzD,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACtC,CAAC"}
@@ -0,0 +1,20 @@
1
+ import type { HeaderContent } from './Header';
2
+ export interface Router {
3
+ pathname: string;
4
+ query: Record<string, string | string[] | undefined>;
5
+ href?: string;
6
+ basePath?: string;
7
+ push: (url: string) => void;
8
+ }
9
+ export interface LikeService {
10
+ likeCount: number;
11
+ like: () => void;
12
+ dislike: () => void;
13
+ }
14
+ export declare type HandlerDecorator = <F extends Function>(handler: F) => F;
15
+ export interface ContentPageContext {
16
+ useRouter: () => Router;
17
+ useSitemap: () => HeaderContent;
18
+ useLikeService: () => LikeService;
19
+ handlerDecorator?: HandlerDecorator;
20
+ }
@@ -0,0 +1,2 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ //# sourceMappingURL=ContentPageContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContentPageContext.js","sourceRoot":"","sources":["../src/ContentPageContext.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ import type { ContentPageMeta } from './types';
2
+ export interface ContentPageHeadProps {
3
+ HeadComponent: Function;
4
+ data: ContentPageMeta;
5
+ }
6
+ export declare const ContentPageHead: (props: import("@redneckz/uni-jsx").PropsWithChildren<ContentPageHeadProps, any>, context?: any) => any;
@@ -0,0 +1,11 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.ContentPageHead = void 0;
3
+ const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
4
+ const uni_jsx_1 = require("@redneckz/uni-jsx");
5
+ exports.ContentPageHead = (0, uni_jsx_1.JSX)(({ HeadComponent, data, children }) => {
6
+ const { title, description, keywords, robots, og } = data;
7
+ return ((0, jsx_runtime_1.jsxs)(HeadComponent, { children: [(0, jsx_runtime_1.jsx)("title", { children: title }), (0, jsx_runtime_1.jsx)("meta", { name: "viewport", content: "width=device-width, initial-scale=1" }), description && (0, jsx_runtime_1.jsx)("meta", { name: "description", content: description }), keywords && (0, jsx_runtime_1.jsx)("meta", { name: "keywords", content: keywords.join(',') }), robots && (0, jsx_runtime_1.jsx)("meta", { name: "robots", content: robots.join(',') }), og
8
+ ? Object.entries(og).map(([key, value]) => ((0, jsx_runtime_1.jsx)("meta", { name: `og:${key}`, content: value }, key)))
9
+ : null, children] }));
10
+ });
11
+ //# sourceMappingURL=ContentPageHead.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContentPageHead.js","sourceRoot":"","sources":["../src/ContentPageHead.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AAQ3B,QAAA,eAAe,GAAG,IAAA,aAAG,EAAuB,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC7F,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC;IAC1D,OAAO,CACL,wBAAC,aAAa,eACZ,4CAAQ,KAAK,GAAS,EACtB,iCAAM,IAAI,EAAC,UAAU,EAAC,OAAO,EAAC,qCAAqC,GAAG,EACrE,WAAW,IAAI,iCAAM,IAAI,EAAC,aAAa,EAAC,OAAO,EAAE,WAAW,GAAI,EAChE,QAAQ,IAAI,iCAAM,IAAI,EAAC,UAAU,EAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,GAAI,EACjE,MAAM,IAAI,iCAAM,IAAI,EAAC,QAAQ,EAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAI,EAC3D,EAAE;gBACD,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CACvC,iCAAgB,IAAI,EAAE,MAAM,GAAG,EAAE,EAAE,OAAO,EAAE,KAAK,IAAtC,GAAG,CAAuC,CACtD,CAAC;gBACJ,CAAC,CAAC,IAAI,EACP,QAAQ,IACK,CACjB,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { ContentPageContext } from '../ContentPageContext';
2
+ import type { HeaderContent } from './HeaderContent';
3
+ export interface HeaderProps extends HeaderContent {
4
+ className?: string;
5
+ context: ContentPageContext;
6
+ }
7
+ export declare const Header: (props: import("@redneckz/uni-jsx").PropsWithChildren<HeaderProps, any>, context?: any) => any;
@@ -0,0 +1,25 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.Header = void 0;
3
+ const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
4
+ const uni_jsx_1 = require("@redneckz/uni-jsx");
5
+ const HeaderItem_1 = require("../ui-kit/HeaderItem");
6
+ const Logo_1 = require("../ui-kit/Logo");
7
+ const TopItem_1 = require("../ui-kit/TopItem");
8
+ const useLink_1 = require("../useLink");
9
+ const HeaderSecondaryMenu_1 = require("./HeaderSecondaryMenu");
10
+ const isSubItemActive_1 = require("./isSubItemActive");
11
+ const isTopItemActive_1 = require("./isTopItemActive");
12
+ const mergeTopItems_1 = require("./mergeTopItems");
13
+ exports.Header = (0, uni_jsx_1.JSX)(({ className, location, context, topItems }) => {
14
+ const router = context.useRouter();
15
+ const sitemap = context.useSitemap();
16
+ const { handlerDecorator } = context;
17
+ const mergedItems = (0, mergeTopItems_1.mergeTopItems)(sitemap.topItems, topItems);
18
+ const activeTopItem = mergedItems.find((0, isTopItemActive_1.isTopItemActive)(router));
19
+ const subItems = activeTopItem?.items;
20
+ const activeSubItem = subItems?.find((0, isSubItemActive_1.isSubItemActive)(router));
21
+ const topMenu = mergedItems.map((_, i) => ((0, jsx_runtime_1.jsx)(TopItem_1.TopItem, { active: _ === activeTopItem, ...(0, useLink_1.useLink)({ router, handlerDecorator }, _) }, String(i))));
22
+ const subMenu = subItems?.map((_) => ((0, jsx_runtime_1.jsx)(HeaderItem_1.HeaderItem, { className: "mr-8", active: _ === activeSubItem, ...(0, useLink_1.useLink)({ router, handlerDecorator }, _) }, _.href)));
23
+ return ((0, jsx_runtime_1.jsxs)("div", { className: `pt-5 pb-8 px-20 bg-white rounded-bl-3xl rounded-br-3xl ${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)("div", { className: "mt-5", children: subMenu })] }));
24
+ });
25
+ //# sourceMappingURL=Header.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Header.js","sourceRoot":"","sources":["../../src/Header/Header.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AAExC,qDAAkD;AAClD,yCAAsC;AACtC,+CAA4C;AAC5C,wCAAqC;AAErC,+DAA4D;AAC5D,uDAAoD;AACpD,uDAAoD;AACpD,mDAAgD;AAOnC,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,OAAO,CAAC,UAAU,EAAE,CAAC;IACrC,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,IAFvC,MAAM,CAAC,CAAC,CAAC,CAGd,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,iCAAK,SAAS,EAAE,0DAA0D,SAAS,IAAI,EAAE,EAAE,aACzF,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,IACjC,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { LinkContent } from '../ui-kit/Link';
2
+ export declare type HeaderMenuItem = LinkContent;
3
+ export interface TopMenuItem extends HeaderMenuItem {
4
+ items?: HeaderMenuItem[];
5
+ }
6
+ export interface HeaderContent {
7
+ location?: string;
8
+ topItems?: TopMenuItem[];
9
+ }
@@ -0,0 +1,2 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ //# sourceMappingURL=HeaderContent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HeaderContent.js","sourceRoot":"","sources":["../../src/Header/HeaderContent.ts"],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ interface HeaderSecondaryMenuProps {
2
+ location?: string;
3
+ className?: string;
4
+ }
5
+ export declare const HeaderSecondaryMenu: (props: import("@redneckz/uni-jsx").PropsWithChildren<HeaderSecondaryMenuProps, any>, context?: any) => any;
6
+ export {};
@@ -0,0 +1,11 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.HeaderSecondaryMenu = void 0;
3
+ const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
4
+ const uni_jsx_1 = require("@redneckz/uni-jsx");
5
+ const Icons_1 = require("../Icons");
6
+ const TopItem_1 = require("../ui-kit/TopItem");
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 }), (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" }), (0, jsx_runtime_1.jsx)(HeaderSecondaryMenuButton_1.HeaderSecondaryMenuButton, { className: "mr-5 text-primary-text hover:text-primary-main", children: (0, Icons_1.LoupeIcon)() }), (0, jsx_runtime_1.jsx)(HeaderSecondaryMenuButton_1.HeaderSecondaryMenuButton, { className: "mr-5 text-primary-text hover:text-primary-main", children: (0, Icons_1.ProfileIcon)() }), (0, jsx_runtime_1.jsx)(HeaderSecondaryMenuButton_1.HeaderSecondaryMenuButton, { className: "mr-5 text-main hover:text-secondary-hover w-[32px]", children: (0, Icons_1.GridIcon)() })] }));
10
+ });
11
+ //# sourceMappingURL=HeaderSecondaryMenu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HeaderSecondaryMenu.js","sourceRoot":"","sources":["../../src/Header/HeaderSecondaryMenu.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,oCAA4D;AAC5D,+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,GAAI,EACjE,uBAAC,iBAAO,IAAC,SAAS,EAAC,MAAM,EAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAC,GAAG,EAAC,IAAI,EAAC,8FAAmB,GAAG,EAC1E,uBAAC,qDAAyB,IAAC,SAAS,EAAC,gDAAgD,YAClF,IAAA,iBAAS,GAAE,GACc,EAC5B,uBAAC,qDAAyB,IAAC,SAAS,EAAC,gDAAgD,YAClF,IAAA,mBAAW,GAAE,GACY,EAC5B,uBAAC,qDAAyB,IAAC,SAAS,EAAC,oDAAoD,YACtF,IAAA,gBAAQ,GAAE,GACe,IACxB,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,5 @@
1
+ interface HeaderSecondaryMenuButtonProps {
2
+ className?: string;
3
+ }
4
+ export declare const HeaderSecondaryMenuButton: (props: import("@redneckz/uni-jsx").PropsWithChildren<HeaderSecondaryMenuButtonProps, any>, context?: any) => any;
5
+ export {};
@@ -0,0 +1,6 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.HeaderSecondaryMenuButton = void 0;
3
+ const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
4
+ const uni_jsx_1 = require("@redneckz/uni-jsx");
5
+ exports.HeaderSecondaryMenuButton = (0, uni_jsx_1.JSX)(({ className, children }) => ((0, jsx_runtime_1.jsx)("button", { type: "button", className: `border-0 p-0 w-[24px] flex items-center bg-inherit cursor-pointer ${className || ''}`, disabled: true, children: children })));
6
+ //# sourceMappingURL=HeaderSecondaryMenuButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HeaderSecondaryMenuButton.js","sourceRoot":"","sources":["../../src/Header/HeaderSecondaryMenuButton.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AAM3B,QAAA,yBAAyB,GAAG,IAAA,aAAG,EAC1C,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAC3B,mCACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,qEACT,SAAS,IAAI,EACf,EAAE,EACF,QAAQ,EAAE,IAAI,YAEb,QAAQ,GACF,CACV,CACF,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { Header } from './Header';
2
+ export type { HeaderProps } from './Header';
3
+ export type { HeaderContent } from './HeaderContent';
@@ -0,0 +1,5 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.Header = void 0;
3
+ var Header_1 = require("./Header");
4
+ Object.defineProperty(exports, "Header", { enumerable: true, get: function () { return Header_1.Header; } });
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Header/index.ts"],"names":[],"mappings":";;AAAA,mCAAkC;AAAzB,gGAAA,MAAM,OAAA"}
@@ -0,0 +1,3 @@
1
+ import type { Router } from '../ContentPageContext';
2
+ import type { LinkContent } from '../ui-kit/Link';
3
+ export declare function isSubItemActive({ href, pathname }: Router): (item: LinkContent) => boolean;
@@ -0,0 +1,10 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.isSubItemActive = void 0;
3
+ const url_1 = require("../utils/url");
4
+ function isSubItemActive({ href, pathname }) {
5
+ return (item) => {
6
+ return (0, url_1.withoutQuery)(item.href) === ((0, url_1.isURL)(item.href) ? (0, url_1.withoutQuery)(href) : pathname);
7
+ };
8
+ }
9
+ exports.isSubItemActive = isSubItemActive;
10
+ //# sourceMappingURL=isSubItemActive.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isSubItemActive.js","sourceRoot":"","sources":["../../src/Header/isSubItemActive.ts"],"names":[],"mappings":";;AAEA,sCAAmD;AAEnD,SAAgB,eAAe,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAU;IACxD,OAAO,CAAC,IAAiB,EAAW,EAAE;QACpC,OAAO,IAAA,kBAAY,EAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAA,WAAK,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAA,kBAAY,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IACxF,CAAC,CAAC;AACJ,CAAC;AAJD,0CAIC"}
@@ -0,0 +1,3 @@
1
+ import type { Router } from '../ContentPageContext';
2
+ import type { LinkContent } from '../ui-kit/Link';
3
+ export declare function isTopItemActive({ href, pathname }: Router): (item: LinkContent) => boolean;
@@ -0,0 +1,14 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.isTopItemActive = void 0;
3
+ const url_1 = require("../utils/url");
4
+ function isTopItemActive({ href, pathname }) {
5
+ return (item) => {
6
+ const itemHref = (0, url_1.withoutQuery)(item.href);
7
+ if ((0, url_1.isURL)(itemHref)) {
8
+ return Boolean(href && href.startsWith(itemHref));
9
+ }
10
+ return Boolean(itemHref && pathname.startsWith(itemHref));
11
+ };
12
+ }
13
+ exports.isTopItemActive = isTopItemActive;
14
+ //# sourceMappingURL=isTopItemActive.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isTopItemActive.js","sourceRoot":"","sources":["../../src/Header/isTopItemActive.ts"],"names":[],"mappings":";;AAEA,sCAAmD;AAEnD,SAAgB,eAAe,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAU;IACxD,OAAO,CAAC,IAAiB,EAAW,EAAE;QACpC,MAAM,QAAQ,GAAG,IAAA,kBAAY,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,IAAA,WAAK,EAAC,QAAQ,CAAC,EAAE;YACnB,OAAO,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;SACnD;QACD,OAAO,OAAO,CAAC,QAAQ,IAAI,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC5D,CAAC,CAAC;AACJ,CAAC;AARD,0CAQC"}
@@ -0,0 +1,2 @@
1
+ import type { TopMenuItem } from './HeaderContent';
2
+ export declare function mergeTopItems(left?: TopMenuItem[], right?: TopMenuItem[]): TopMenuItem[];
@@ -0,0 +1,10 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.mergeTopItems = void 0;
3
+ const cmp = (a) => (b) => a?.href === b?.href;
4
+ const substitute = (items, substitution) => (items || []).map((_) => substitution?.find(cmp(_)) || _);
5
+ const subtract = (minuend, subtrahend) => (minuend || []).filter((_) => !subtrahend?.find(cmp(_)));
6
+ function mergeTopItems(left, right) {
7
+ return substitute(left, right).concat(subtract(right, left));
8
+ }
9
+ exports.mergeTopItems = mergeTopItems;
10
+ //# sourceMappingURL=mergeTopItems.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mergeTopItems.js","sourceRoot":"","sources":["../../src/Header/mergeTopItems.ts"],"names":[],"mappings":";;AAEA,MAAM,GAAG,GAAG,CAAC,CAAe,EAAE,EAAE,CAAC,CAAC,CAAe,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,KAAK,CAAC,EAAE,IAAI,CAAC;AAE1E,MAAM,UAAU,GAAG,CAAC,KAAqB,EAAE,YAA4B,EAAE,EAAE,CACzE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAE5D,MAAM,QAAQ,GAAG,CAAC,OAAuB,EAAE,UAA0B,EAAE,EAAE,CACvE,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAE3D,SAAgB,aAAa,CAAC,IAAoB,EAAE,KAAqB;IACvE,OAAO,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;AAC/D,CAAC;AAFD,sCAEC"}
@@ -0,0 +1,14 @@
1
+ export declare const CalendarIcon: () => any;
2
+ export declare const EmptyWalletIcon: () => any;
3
+ export declare const PercentageSquareIcon: () => any;
4
+ export declare const LoupeIcon: () => any;
5
+ export declare const ProfileIcon: () => any;
6
+ export declare const GridIcon: () => any;
7
+ export declare const Icons: {
8
+ EmptyWalletIcon: () => any;
9
+ PercentageSquareIcon: () => any;
10
+ CalendarIcon: () => any;
11
+ LoupeIcon: () => any;
12
+ ProfileIcon: () => any;
13
+ GridIcon: () => any;
14
+ };
package/dist/Icons.js ADDED
@@ -0,0 +1,24 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.Icons = exports.GridIcon = exports.ProfileIcon = exports.LoupeIcon = exports.PercentageSquareIcon = exports.EmptyWalletIcon = exports.CalendarIcon = void 0;
3
+ const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
4
+ const CalendarIcon = () => ((0, jsx_runtime_1.jsxs)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", children: [(0, jsx_runtime_1.jsx)("path", { stroke: "#1C1C1C", strokeLinecap: "round", strokeLinejoin: "round", strokeMiterlimit: "10", strokeWidth: "2", d: "M8 2v3M16 2v3M3.5 9.09h17M3 13.01V8.5c0-3 1.5-5 5-5h8c3.5 0 5 2 5 5V17c0 3-1.5 5-5 5H8c-3.5 0-5-2-5-5" }), (0, jsx_runtime_1.jsx)("path", { stroke: "#42AB44", strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "3", d: "M15.991 13h.018M15.991 17.006h.018M11.991 13h.018M11.991 17.006h.018M7.991 13h.018M7.991 17.006h.018" })] }));
5
+ exports.CalendarIcon = CalendarIcon;
6
+ const EmptyWalletIcon = () => ((0, jsx_runtime_1.jsxs)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", children: [(0, jsx_runtime_1.jsx)("path", { stroke: "#292D32", strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "2", d: "M2.5 14.07v-2.56c0-2.07 1.69-3.76 3.76-3.76h11.48c2.07 0 3.76 1.69 3.76 3.76v1.44h-2.02c-.56 0-1.07.22-1.44.6-.42.41-.66 1-.6 1.63.09 1.08 1.08 1.87 2.16 1.87h1.9v1.19c0 2.07-1.69 3.76-3.76 3.76H6.26c-2.07 0-3.76-1.69-3.76-3.76M12.28 2.17a1.9 1.9 0 0 1 2.57 1.78v3.8" }), (0, jsx_runtime_1.jsx)("path", { stroke: "#292D32", strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "2", d: "M2.5 12.41V7.84c0-1.19.73-2.25 1.84-2.67l3.97-1.5M22.56 13.97v2.06c0 .55-.44 1-1 1.02H19.6c-1.08 0-2.07-.79-2.16-1.87-.06-.63.18-1.22.6-1.63.37-.38.88-.6 1.44-.6h2.08c.56.02 1 .47 1 1.02Z" }), (0, jsx_runtime_1.jsx)("path", { stroke: "#42AB44", strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "2", d: "M7 12h7" })] }));
7
+ exports.EmptyWalletIcon = EmptyWalletIcon;
8
+ const PercentageSquareIcon = () => ((0, jsx_runtime_1.jsxs)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", children: [(0, jsx_runtime_1.jsx)("path", { stroke: "#1C1C1C", strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "2", d: "M2 13.05V15c0 5 2 7 7 7h6c5 0 7-2 7-7V9c0-5-2-7-7-7H9C4 2 2 4 2 9" }), (0, jsx_runtime_1.jsx)("path", { stroke: "#42AB44", strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "2", d: "m8.32 15.27 6.54-6.54M8.73 10.37a1.23 1.23 0 1 0 0-2.46 1.23 1.23 0 0 0 0 2.46ZM15.27 16.09a1.23 1.23 0 1 0 0-2.46 1.23 1.23 0 0 0 0 2.46Z" })] }));
9
+ exports.PercentageSquareIcon = PercentageSquareIcon;
10
+ const LoupeIcon = () => ((0, jsx_runtime_1.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", children: (0, jsx_runtime_1.jsx)("path", { stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "2", d: "M19.5 20.5 16 17a7.5 7.5 0 1 1 2.376-3" }) }));
11
+ exports.LoupeIcon = LoupeIcon;
12
+ const ProfileIcon = () => ((0, jsx_runtime_1.jsxs)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", children: [(0, jsx_runtime_1.jsx)("path", { stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "2", d: "M14.94 8.54c.22.44.35.94.35 1.47-.01 1.77-1.4 3.22-3.16 3.27a.963.963 0 0 0-.24 0 3.269 3.269 0 0 1-3.16-3.27c0-1.81 1.46-3.28 3.28-3.28M18.74 19.88A9.934 9.934 0 0 1 12 22.5c-2.6 0-4.96-.99-6.74-2.62.1-.94.7-1.86 1.77-2.58 2.74-1.82 7.22-1.82 9.94 0 1.07.72 1.67 1.64 1.77 2.58Z" }), (0, jsx_runtime_1.jsx)("path", { stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "2", d: "M4 6.5c-1.25 1.67-2 3.75-2 6 0 5.52 4.48 10 10 10s10-4.48 10-10-4.48-10-10-10c-1.43 0-2.8.3-4.03.85" })] }));
13
+ exports.ProfileIcon = ProfileIcon;
14
+ const GridIcon = () => ((0, jsx_runtime_1.jsxs)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 32 32", children: [(0, jsx_runtime_1.jsx)("rect", { y: ".5", width: "32", height: "32", rx: "16", fill: "currentColor" }), (0, jsx_runtime_1.jsx)("path", { fill: "#1c1c1c", d: "M13 11.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0ZM13 16.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0ZM11.5 23a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM18 11.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0ZM16.5 18a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM18 21.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0ZM21.5 13a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM23 16.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0ZM21.5 23a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z" })] }));
15
+ exports.GridIcon = GridIcon;
16
+ exports.Icons = {
17
+ EmptyWalletIcon: exports.EmptyWalletIcon,
18
+ PercentageSquareIcon: exports.PercentageSquareIcon,
19
+ CalendarIcon: exports.CalendarIcon,
20
+ LoupeIcon: exports.LoupeIcon,
21
+ ProfileIcon: exports.ProfileIcon,
22
+ GridIcon: exports.GridIcon,
23
+ };
24
+ //# sourceMappingURL=Icons.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Icons.js","sourceRoot":"","sources":["../src/Icons.tsx"],"names":[],"mappings":";;;AAAO,MAAM,YAAY,GAAG,GAAG,EAAE,CAAC,CAChC,iCAAK,KAAK,EAAC,4BAA4B,EAAC,IAAI,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,aACrE,iCACE,MAAM,EAAC,SAAS,EAChB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,EACtB,gBAAgB,EAAC,IAAI,EACrB,WAAW,EAAC,GAAG,EACf,CAAC,EAAC,uGAAuG,GACzG,EACF,iCACE,MAAM,EAAC,SAAS,EAChB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,EACtB,WAAW,EAAC,GAAG,EACf,CAAC,EAAC,sGAAsG,GACxG,IACE,CACP,CAAC;AAlBW,QAAA,YAAY,gBAkBvB;AAEK,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,CACnC,iCAAK,KAAK,EAAC,4BAA4B,EAAC,IAAI,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,aACrE,iCACE,MAAM,EAAC,SAAS,EAChB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,EACtB,WAAW,EAAC,GAAG,EACf,CAAC,EAAC,4QAA4Q,GAC9Q,EACF,iCACE,MAAM,EAAC,SAAS,EAChB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,EACtB,WAAW,EAAC,GAAG,EACf,CAAC,EAAC,6LAA6L,GAC/L,EACF,iCACE,MAAM,EAAC,SAAS,EAChB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,EACtB,WAAW,EAAC,GAAG,EACf,CAAC,EAAC,SAAS,GACX,IACE,CACP,CAAC;AAxBW,QAAA,eAAe,mBAwB1B;AAEK,MAAM,oBAAoB,GAAG,GAAG,EAAE,CAAC,CACxC,iCAAK,KAAK,EAAC,4BAA4B,EAAC,IAAI,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,aACrE,iCACE,MAAM,EAAC,SAAS,EAChB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,EACtB,WAAW,EAAC,GAAG,EACf,CAAC,EAAC,mEAAmE,GACrE,EACF,iCACE,MAAM,EAAC,SAAS,EAChB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,EACtB,WAAW,EAAC,GAAG,EACf,CAAC,EAAC,4IAA4I,GAC9I,IACE,CACP,CAAC;AAjBW,QAAA,oBAAoB,wBAiB/B;AAEK,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,CAC7B,gCAAK,KAAK,EAAC,4BAA4B,EAAC,IAAI,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,YACrE,iCACE,MAAM,EAAC,cAAc,EACrB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,EACtB,WAAW,EAAC,GAAG,EACf,CAAC,EAAC,wCAAwC,GAC1C,GACE,CACP,CAAC;AAVW,QAAA,SAAS,aAUpB;AAEK,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC,CAC/B,iCAAK,KAAK,EAAC,4BAA4B,EAAC,IAAI,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,aACrE,iCACE,MAAM,EAAC,cAAc,EACrB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,EACtB,WAAW,EAAC,GAAG,EACf,CAAC,EAAC,yRAAyR,GAC3R,EACF,iCACE,MAAM,EAAC,cAAc,EACrB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,EACtB,WAAW,EAAC,GAAG,EACf,CAAC,EAAC,qGAAqG,GACvG,IACE,CACP,CAAC;AAjBW,QAAA,WAAW,eAiBtB;AAEK,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,CAC5B,iCAAK,KAAK,EAAC,4BAA4B,EAAC,IAAI,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,aACrE,iCAAM,CAAC,EAAC,IAAI,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,EAAE,EAAC,IAAI,EAAC,IAAI,EAAC,cAAc,GAAG,EAClE,iCACE,IAAI,EAAC,SAAS,EACd,CAAC,EAAC,uZAAuZ,GACzZ,IACE,CACP,CAAC;AARW,QAAA,QAAQ,YAQnB;AAEW,QAAA,KAAK,GAAG;IACnB,eAAe,EAAf,uBAAe;IACf,oBAAoB,EAApB,4BAAoB;IACpB,YAAY,EAAZ,oBAAY;IACZ,SAAS,EAAT,iBAAS;IACT,WAAW,EAAX,mBAAW;IACX,QAAQ,EAAR,gBAAQ;CACT,CAAC"}
package/dist/Img.d.ts ADDED
@@ -0,0 +1,7 @@
1
+ import type { Picture, ImgSource } from './types';
2
+ export interface TextWithImageProps {
3
+ className?: string;
4
+ image: Picture;
5
+ }
6
+ export declare const Img: (props: import("@redneckz/uni-jsx").PropsWithChildren<TextWithImageProps, any>, context?: any) => any;
7
+ export declare function formatToMimeType(format: ImgSource['format']): string | undefined;
package/dist/Img.js ADDED
@@ -0,0 +1,12 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.formatToMimeType = exports.Img = void 0;
3
+ const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
4
+ const uni_jsx_1 = require("@redneckz/uni-jsx");
5
+ exports.Img = (0, uni_jsx_1.JSX)(({ className, image }) => ((0, jsx_runtime_1.jsxs)("picture", { className: className || '', children: [image.sources?.length
6
+ ? image.sources.map(({ src, format }, index) => ((0, jsx_runtime_1.jsx)("source", { srcSet: src, type: formatToMimeType(format) }, `${index}_${src}`)))
7
+ : null, (0, jsx_runtime_1.jsx)("img", { src: image.src, alt: image.alt, title: image.title, ...image?.size })] })));
8
+ function formatToMimeType(format) {
9
+ return format ? `image/${String(format)}` : undefined;
10
+ }
11
+ exports.formatToMimeType = formatToMimeType;
12
+ //# sourceMappingURL=Img.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Img.js","sourceRoot":"","sources":["../src/Img.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AAQ3B,QAAA,GAAG,GAAG,IAAA,aAAG,EAAqB,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CACnE,qCAAS,SAAS,EAAE,SAAS,IAAI,EAAE,aAChC,KAAK,CAAC,OAAO,EAAE,MAAM;YACpB,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAC5C,mCAAgC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,gBAAgB,CAAC,MAAM,CAAC,IAA9D,GAAG,KAAK,IAAI,GAAG,EAAE,CAAiD,CAChF,CAAC;YACJ,CAAC,CAAC,IAAI,EACR,gCAAK,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,KAAM,KAAK,EAAE,IAAI,GAAI,IACpE,CACX,CAAC,CAAC;AAEH,SAAgB,gBAAgB,CAAC,MAA2B;IAC1D,OAAO,MAAM,CAAC,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AACxD,CAAC;AAFD,4CAEC"}
@@ -0,0 +1,6 @@
1
+ import { ContentPageContext } from './ContentPageContext';
2
+ export interface LikeControlProps {
3
+ className?: string;
4
+ context: ContentPageContext;
5
+ }
6
+ export declare const LikeControl: (props: import("@redneckz/uni-jsx").PropsWithChildren<LikeControlProps, any>, context?: any) => any;
@@ -0,0 +1,10 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.LikeControl = void 0;
3
+ const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
4
+ const uni_jsx_1 = require("@redneckz/uni-jsx");
5
+ const LikeButton_1 = require("./ui-kit/LikeButton");
6
+ exports.LikeControl = (0, uni_jsx_1.JSX)(({ className, context }) => {
7
+ const likeService = context.useLikeService();
8
+ return ((0, jsx_runtime_1.jsxs)("div", { className: `border-main border-2 border-solid bg-white flex w-[125px] items-center justify-center gap-3 p-2 font-sans ${className || ''}`, children: [(0, jsx_runtime_1.jsx)(LikeButton_1.LikeButton, { onClick: likeService.like }), (0, jsx_runtime_1.jsx)(LikeButton_1.LikeButton, { onClick: likeService.dislike, className: "rotate-180" }), (0, jsx_runtime_1.jsx)("span", { className: "select-none", children: likeService.likeCount })] }));
9
+ });
10
+ //# sourceMappingURL=LikeControl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LikeControl.js","sourceRoot":"","sources":["../src/LikeControl.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AAExC,oDAAiD;AAOpC,QAAA,WAAW,GAAG,IAAA,aAAG,EAAmB,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE;IAC1E,MAAM,WAAW,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAE7C,OAAO,CACL,iCACE,SAAS,EAAE,6GACT,SAAS,IAAI,EACf,EAAE,aAEF,uBAAC,uBAAU,IAAC,OAAO,EAAE,WAAW,CAAC,IAAI,GAAI,EACzC,uBAAC,uBAAU,IAAC,OAAO,EAAE,WAAW,CAAC,OAAO,EAAE,SAAS,EAAC,YAAY,GAAG,EACnE,iCAAM,SAAS,EAAC,aAAa,YAAE,WAAW,CAAC,SAAS,GAAQ,IACxD,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,6 @@
1
+ export interface PlaceholderContent {
2
+ }
3
+ export interface PlaceholderProps extends PlaceholderContent {
4
+ className?: string;
5
+ }
6
+ export declare const Placeholder: (props: import("@redneckz/uni-jsx").PropsWithChildren<PlaceholderProps, any>, context?: any) => any;
@@ -0,0 +1,8 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.Placeholder = void 0;
3
+ const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
4
+ const uni_jsx_1 = require("@redneckz/uni-jsx");
5
+ exports.Placeholder = (0, uni_jsx_1.JSX)(({ className, children }) => {
6
+ return (0, jsx_runtime_1.jsx)("div", { className: className || '', children: children });
7
+ });
8
+ //# sourceMappingURL=Placeholder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Placeholder.js","sourceRoot":"","sources":["../src/Placeholder.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AAQ3B,QAAA,WAAW,GAAG,IAAA,aAAG,EAAmB,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC3E,OAAO,gCAAK,SAAS,EAAE,SAAS,IAAI,EAAE,YAAG,QAAQ,GAAO,CAAC;AAC3D,CAAC,CAAC,CAAC"}
@@ -0,0 +1,25 @@
1
+ import type { ContentPageContext } from './ContentPageContext';
2
+ import { Icons } from './Icons';
3
+ import { BlockVersion, Picture } from './types';
4
+ import type { ButtonProps } from './ui-kit/Button';
5
+ import { BreadcrumbProps } from './ui-kit/Breadcrumb';
6
+ export interface Benefit {
7
+ label: string;
8
+ description?: string;
9
+ icon?: keyof typeof Icons;
10
+ }
11
+ export interface ProductTileContent {
12
+ title?: string;
13
+ description?: string;
14
+ breadcrumbs?: BreadcrumbProps[];
15
+ image?: Picture;
16
+ benefits?: Benefit[];
17
+ items?: string[];
18
+ buttons?: ButtonProps[];
19
+ }
20
+ export interface ProductTileProps extends ProductTileContent {
21
+ className?: string;
22
+ version?: BlockVersion;
23
+ context: ContentPageContext;
24
+ }
25
+ export declare const ProductTile: (props: import("@redneckz/uni-jsx").PropsWithChildren<ProductTileProps, any>, context?: any) => any;
@@ -0,0 +1,29 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.ProductTile = void 0;
3
+ const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
4
+ const uni_jsx_1 = require("@redneckz/uni-jsx");
5
+ const Icons_1 = require("./Icons");
6
+ 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 productBlockStyleMap = {
12
+ primary: 'bg-white text-primary-text',
13
+ secondary: 'bg-brand text-white',
14
+ };
15
+ exports.ProductTile = (0, uni_jsx_1.JSX)(({ className, context, title, description, breadcrumbs, benefits, buttons, image, items, version = 'primary', }) => {
16
+ const router = context.useRouter();
17
+ const { handlerDecorator } = context;
18
+ return ((0, jsx_runtime_1.jsxs)("section", { className: `font-sans p-9 rounded-[40px] flex justify-between items-stretch relative ${className || ''} ${productBlockStyleMap[version]}`, 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: join((0, jsx_runtime_1.jsx)("span", { className: "text-secondary mx-2", children: "/" }))(breadcrumbs.map((breadcrumb, i) => ((0, jsx_runtime_1.jsx)(Breadcrumb_1.Breadcrumb, { ...(0, useLink_1.useLink)({ router, handlerDecorator }, { className: 'text-secondary', ...breadcrumb }) }, String(i))))) })) : null, title && (0, jsx_runtime_1.jsx)("h1", { className: "font-medium text-title m-0 whitespace-pre-wrap", 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: "space-y-2.5 mt-5", role: "list", children: items.map((_, i) => ((0, jsx_runtime_1.jsx)(BlockItem_1.BlockItem, { text: _, version: version }, 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 && (0, jsx_runtime_1.jsx)(Img_1.Img, { image: image, className: "absolute bottom-9 right-9" })] }));
19
+ });
20
+ function renderBenefit(benefit, i) {
21
+ return ((0, jsx_runtime_1.jsxs)("div", { className: "flex gap-4 items-center", children: [benefit.icon && ((0, jsx_runtime_1.jsx)("div", { className: "h-11 w-11 min-w-11 min-h-11 bg-main rounded-full p-[10px] box-border", children: Icons_1.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", children: benefit.description }))] })] }, String(i)));
22
+ }
23
+ function renderButton(button, i) {
24
+ return button?.text ? ((0, jsx_runtime_1.jsx)(Button_1.Button, { ...button, className: "mt-8", version: button.version }, String(i))) : null;
25
+ }
26
+ function join(sep) {
27
+ return (list) => list.reduce((acc, el) => (acc.length ? acc.concat(sep, el) : [el]), []);
28
+ }
29
+ //# sourceMappingURL=ProductTile.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProductTile.js","sourceRoot":"","sources":["../src/ProductTile.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ export interface RichTextContent {
2
+ __html?: string;
3
+ __md?: string;
4
+ }
5
+ export interface RichTextProps extends RichTextContent {
6
+ className?: string;
7
+ }
8
+ export declare const RichText: (props: import("@redneckz/uni-jsx").PropsWithChildren<RichTextProps, any>, context?: any) => any;
@@ -0,0 +1,10 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.RichText = void 0;
3
+ const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
4
+ const uni_jsx_1 = require("@redneckz/uni-jsx");
5
+ exports.RichText = (0, uni_jsx_1.JSX)(({ className, __html, __md }) => {
6
+ const html = __html || __md;
7
+ const props = Object.assign({ className: className || '' }, html ? { dangerouslySetInnerHTML: { __html: html } } : {});
8
+ return (0, jsx_runtime_1.jsx)("div", { ...props });
9
+ });
10
+ //# sourceMappingURL=RichText.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RichText.js","sourceRoot":"","sources":["../src/RichText.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AAW3B,QAAA,QAAQ,GAAG,IAAA,aAAG,EAAgB,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE;IACzE,MAAM,IAAI,GAAG,MAAM,IAAI,IAAI,CAAC;IAC5B,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CACzB,EAAE,SAAS,EAAE,SAAS,IAAI,EAAE,EAAE,EAC9B,IAAI,CAAC,CAAC,CAAC,EAAE,uBAAuB,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAC1D,CAAC;IACF,OAAO,mCAAS,KAAK,GAAI,CAAC;AAC5B,CAAC,CAAC,CAAC"}
package/dist/Text.d.ts ADDED
@@ -0,0 +1,8 @@
1
+ export interface TextContent {
2
+ primary?: string;
3
+ secondary?: string;
4
+ }
5
+ export interface TextProps extends TextContent {
6
+ className?: string;
7
+ }
8
+ export declare const Text: (props: import("@redneckz/uni-jsx").PropsWithChildren<TextProps, any>, context?: any) => any;
package/dist/Text.js ADDED
@@ -0,0 +1,8 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.Text = void 0;
3
+ const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
4
+ const uni_jsx_1 = require("@redneckz/uni-jsx");
5
+ exports.Text = (0, uni_jsx_1.JSX)(({ className, primary, secondary, children }) => {
6
+ return ((0, jsx_runtime_1.jsxs)("div", { className: className || '', children: [primary && (0, jsx_runtime_1.jsx)("p", { className: "font-bold text-slate-700 leading-snug", children: primary }), secondary && (0, jsx_runtime_1.jsx)("p", { className: "mt-2 text-sm text-slate-600", children: secondary }), children] }));
7
+ });
8
+ //# sourceMappingURL=Text.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Text.js","sourceRoot":"","sources":["../src/Text.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AAW3B,QAAA,IAAI,GAAG,IAAA,aAAG,EAAY,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE;IACjF,OAAO,CACL,iCAAK,SAAS,EAAE,SAAS,IAAI,EAAE,aAC5B,OAAO,IAAI,8BAAG,SAAS,EAAC,uCAAuC,YAAE,OAAO,GAAK,EAC7E,SAAS,IAAI,8BAAG,SAAS,EAAC,6BAA6B,YAAE,SAAS,GAAK,EACvE,QAAQ,IACL,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { Picture } from './types';
2
+ export interface TextWithImageContent {
3
+ primary?: string;
4
+ image?: Picture;
5
+ }
6
+ export interface TextWithImageProps extends TextWithImageContent {
7
+ className?: string;
8
+ }
9
+ export declare const TextWithImage: (props: import("@redneckz/uni-jsx").PropsWithChildren<TextWithImageProps, any>, context?: any) => any;