@redneckz/wildless-cms-uni-blocks 0.2.30 → 0.2.34

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 (142) hide show
  1. package/dist/Blocks.d.ts +2 -3
  2. package/dist/Blocks.js +4 -6
  3. package/dist/Blocks.js.map +1 -1
  4. package/dist/ContentPage.js +4 -4
  5. package/dist/ContentPage.js.map +1 -1
  6. package/dist/ContentPageContext.d.ts +4 -1
  7. package/dist/Header/Header.d.ts +7 -0
  8. package/dist/Header/Header.js +25 -0
  9. package/dist/Header/Header.js.map +1 -0
  10. package/dist/Header/HeaderContent.d.ts +9 -0
  11. package/dist/Header/HeaderContent.js +2 -0
  12. package/dist/Header/HeaderContent.js.map +1 -0
  13. package/dist/Header/HeaderSecondaryMenu.d.ts +6 -0
  14. package/dist/Header/HeaderSecondaryMenu.js +11 -0
  15. package/dist/Header/HeaderSecondaryMenu.js.map +1 -0
  16. package/dist/Header/HeaderSecondaryMenuButton.d.ts +5 -0
  17. package/dist/Header/HeaderSecondaryMenuButton.js +6 -0
  18. package/dist/Header/HeaderSecondaryMenuButton.js.map +1 -0
  19. package/dist/Header/index.d.ts +3 -0
  20. package/dist/Header/index.js +5 -0
  21. package/dist/Header/index.js.map +1 -0
  22. package/dist/Header/isSubItemActive.d.ts +3 -0
  23. package/dist/Header/isSubItemActive.js +10 -0
  24. package/dist/Header/isSubItemActive.js.map +1 -0
  25. package/dist/Header/isTopItemActive.d.ts +3 -0
  26. package/dist/Header/isTopItemActive.js +14 -0
  27. package/dist/Header/isTopItemActive.js.map +1 -0
  28. package/dist/Header/mergeTopItems.d.ts +2 -0
  29. package/dist/Header/mergeTopItems.js +10 -0
  30. package/dist/Header/mergeTopItems.js.map +1 -0
  31. package/dist/Icons.d.ts +9 -0
  32. package/dist/Icons.js +16 -4
  33. package/dist/Icons.js.map +1 -1
  34. package/{lib/ProductBlock.d.ts → dist/ProductTile.d.ts} +5 -4
  35. package/dist/ProductTile.js +29 -0
  36. package/dist/ProductTile.js.map +1 -0
  37. package/dist/index.d.ts +1 -0
  38. package/dist/index.js +25 -1
  39. package/dist/index.js.map +1 -1
  40. package/dist/types.d.ts +6 -3
  41. package/dist/ui-kit/BlockItem.d.ts +3 -0
  42. package/dist/ui-kit/BlockItem.js +10 -2
  43. package/dist/ui-kit/BlockItem.js.map +1 -1
  44. package/dist/ui-kit/Button.d.ts +3 -2
  45. package/dist/ui-kit/Button.js +13 -5
  46. package/dist/ui-kit/Button.js.map +1 -1
  47. package/dist/ui-kit/HeaderItem.js +2 -3
  48. package/dist/ui-kit/HeaderItem.js.map +1 -1
  49. package/dist/ui-kit/Logo.js +1 -1
  50. package/dist/ui-kit/Logo.js.map +1 -1
  51. package/dist/ui-kit/SVG.d.ts +10 -4
  52. package/dist/ui-kit/SVG.js +2 -2
  53. package/dist/ui-kit/SVG.js.map +1 -1
  54. package/dist/ui-kit/TopItem.d.ts +1 -0
  55. package/dist/ui-kit/TopItem.js +4 -4
  56. package/dist/ui-kit/TopItem.js.map +1 -1
  57. package/dist/useLink.d.ts +6 -3
  58. package/dist/useLink.js +6 -5
  59. package/dist/useLink.js.map +1 -1
  60. package/dist/utils/url.d.ts +4 -0
  61. package/dist/utils/url.js +26 -0
  62. package/dist/utils/url.js.map +1 -0
  63. package/lib/Blocks.d.ts +2 -3
  64. package/lib/Blocks.js +3 -5
  65. package/lib/Blocks.js.map +1 -1
  66. package/lib/ContentPage.js +4 -4
  67. package/lib/ContentPage.js.map +1 -1
  68. package/lib/ContentPageContext.d.ts +4 -1
  69. package/lib/Header/Header.d.ts +7 -0
  70. package/lib/Header/Header.js +23 -0
  71. package/lib/Header/Header.js.map +1 -0
  72. package/lib/Header/HeaderContent.d.ts +9 -0
  73. package/lib/Header/HeaderContent.js +2 -0
  74. package/lib/Header/HeaderContent.js.map +1 -0
  75. package/lib/Header/HeaderSecondaryMenu.d.ts +6 -0
  76. package/lib/Header/HeaderSecondaryMenu.js +9 -0
  77. package/lib/Header/HeaderSecondaryMenu.js.map +1 -0
  78. package/lib/Header/HeaderSecondaryMenuButton.d.ts +5 -0
  79. package/lib/Header/HeaderSecondaryMenuButton.js +4 -0
  80. package/lib/Header/HeaderSecondaryMenuButton.js.map +1 -0
  81. package/lib/Header/index.d.ts +3 -0
  82. package/lib/Header/index.js +2 -0
  83. package/lib/Header/index.js.map +1 -0
  84. package/lib/Header/isSubItemActive.d.ts +3 -0
  85. package/lib/Header/isSubItemActive.js +7 -0
  86. package/lib/Header/isSubItemActive.js.map +1 -0
  87. package/lib/Header/isTopItemActive.d.ts +3 -0
  88. package/lib/Header/isTopItemActive.js +11 -0
  89. package/lib/Header/isTopItemActive.js.map +1 -0
  90. package/lib/Header/mergeTopItems.d.ts +2 -0
  91. package/lib/Header/mergeTopItems.js +7 -0
  92. package/lib/Header/mergeTopItems.js.map +1 -0
  93. package/lib/Icons.d.ts +9 -0
  94. package/lib/Icons.js +9 -3
  95. package/lib/Icons.js.map +1 -1
  96. package/{dist/ProductBlock.d.ts → lib/ProductTile.d.ts} +5 -4
  97. package/lib/ProductTile.js +27 -0
  98. package/lib/ProductTile.js.map +1 -0
  99. package/lib/common.css +1 -1
  100. package/lib/index.d.ts +1 -0
  101. package/lib/index.js +1 -0
  102. package/lib/index.js.map +1 -1
  103. package/lib/types.d.ts +6 -3
  104. package/lib/ui-kit/BlockItem.d.ts +3 -0
  105. package/lib/ui-kit/BlockItem.js +10 -2
  106. package/lib/ui-kit/BlockItem.js.map +1 -1
  107. package/lib/ui-kit/Button.d.ts +3 -2
  108. package/lib/ui-kit/Button.js +13 -5
  109. package/lib/ui-kit/Button.js.map +1 -1
  110. package/lib/ui-kit/HeaderItem.js +3 -4
  111. package/lib/ui-kit/HeaderItem.js.map +1 -1
  112. package/lib/ui-kit/Logo.js +1 -1
  113. package/lib/ui-kit/Logo.js.map +1 -1
  114. package/lib/ui-kit/SVG.d.ts +10 -4
  115. package/lib/ui-kit/SVG.js +2 -2
  116. package/lib/ui-kit/SVG.js.map +1 -1
  117. package/lib/ui-kit/TopItem.d.ts +1 -0
  118. package/lib/ui-kit/TopItem.js +4 -4
  119. package/lib/ui-kit/TopItem.js.map +1 -1
  120. package/lib/useLink.d.ts +6 -3
  121. package/lib/useLink.js +6 -5
  122. package/lib/useLink.js.map +1 -1
  123. package/lib/utils/url.d.ts +4 -0
  124. package/lib/utils/url.js +20 -0
  125. package/lib/utils/url.js.map +1 -0
  126. package/package.json +24 -2
  127. package/dist/Header.d.ts +0 -15
  128. package/dist/Header.js +0 -33
  129. package/dist/Header.js.map +0 -1
  130. package/dist/ProductBlock.js +0 -27
  131. package/dist/ProductBlock.js.map +0 -1
  132. package/dist/ProductColumnBlock.d.ts +0 -13
  133. package/dist/ProductColumnBlock.js +0 -11
  134. package/dist/ProductColumnBlock.js.map +0 -1
  135. package/lib/Header.d.ts +0 -15
  136. package/lib/Header.js +0 -31
  137. package/lib/Header.js.map +0 -1
  138. package/lib/ProductBlock.js +0 -25
  139. package/lib/ProductBlock.js.map +0 -1
  140. package/lib/ProductColumnBlock.d.ts +0 -13
  141. package/lib/ProductColumnBlock.js +0 -9
  142. package/lib/ProductColumnBlock.js.map +0 -1
package/dist/Blocks.d.ts CHANGED
@@ -1,9 +1,8 @@
1
1
  export declare const Blocks: {
2
- Header: (props: import("@redneckz/uni-jsx").PropsWithChildren<import("./Header").HeaderProps, any>, context?: any) => any;
3
- ProductColumnBlock: (props: import("@redneckz/uni-jsx").PropsWithChildren<import("./ProductColumnBlock").ProductColumnBlockProps, any>, context?: any) => any;
2
+ Header: (props: import("@redneckz/uni-jsx").PropsWithChildren<import("./Header/Header").HeaderProps, any>, context?: any) => any;
4
3
  Text: (props: import("@redneckz/uni-jsx").PropsWithChildren<import("./Text").TextProps, any>, context?: any) => any;
5
4
  TextWithImage: (props: import("@redneckz/uni-jsx").PropsWithChildren<import("./TextWithImage").TextWithImageProps, any>, context?: any) => any;
6
5
  RichText: (props: import("@redneckz/uni-jsx").PropsWithChildren<import("./RichText").RichTextProps, any>, context?: any) => any;
7
6
  Placeholder: (props: import("@redneckz/uni-jsx").PropsWithChildren<import("./Placeholder").PlaceholderProps, any>, context?: any) => any;
8
- ProductBlock: (props: import("@redneckz/uni-jsx").PropsWithChildren<import("./ProductBlock").ProductBlockProps, any>, context?: any) => any;
7
+ ProductTile: (props: import("@redneckz/uni-jsx").PropsWithChildren<import("./ProductTile").ProductTileProps, any>, context?: any) => any;
9
8
  };
package/dist/Blocks.js CHANGED
@@ -1,19 +1,17 @@
1
1
  Object.defineProperty(exports, "__esModule", { value: true });
2
2
  exports.Blocks = void 0;
3
- const Header_1 = require("./Header");
3
+ const index_1 = require("./Header/index");
4
4
  const Placeholder_1 = require("./Placeholder");
5
- const ProductColumnBlock_1 = require("./ProductColumnBlock");
6
5
  const RichText_1 = require("./RichText");
7
6
  const Text_1 = require("./Text");
8
7
  const TextWithImage_1 = require("./TextWithImage");
9
- const ProductBlock_1 = require("./ProductBlock");
8
+ const ProductTile_1 = require("./ProductTile");
10
9
  exports.Blocks = {
11
- Header: Header_1.Header,
12
- ProductColumnBlock: ProductColumnBlock_1.ProductColumnBlock,
10
+ Header: index_1.Header,
13
11
  Text: Text_1.Text,
14
12
  TextWithImage: TextWithImage_1.TextWithImage,
15
13
  RichText: RichText_1.RichText,
16
14
  Placeholder: Placeholder_1.Placeholder,
17
- ProductBlock: ProductBlock_1.ProductBlock,
15
+ ProductTile: ProductTile_1.ProductTile,
18
16
  };
19
17
  //# sourceMappingURL=Blocks.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Blocks.js","sourceRoot":"","sources":["../src/Blocks.ts"],"names":[],"mappings":";;AAAA,qCAAkC;AAClC,+CAA4C;AAC5C,6DAA0D;AAC1D,yCAAsC;AACtC,iCAA8B;AAC9B,mDAAgD;AAChD,iDAA8C;AAEjC,QAAA,MAAM,GAAG;IACpB,MAAM,EAAN,eAAM;IACN,kBAAkB,EAAlB,uCAAkB;IAClB,IAAI,EAAJ,WAAI;IACJ,aAAa,EAAb,6BAAa;IACb,QAAQ,EAAR,mBAAQ;IACR,WAAW,EAAX,yBAAW;IACX,YAAY,EAAZ,2BAAY;CACb,CAAC"}
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"}
@@ -5,8 +5,8 @@ const uni_jsx_1 = require("@redneckz/uni-jsx");
5
5
  const Blocks_1 = require("./Blocks");
6
6
  const LikeControl_1 = require("./LikeControl");
7
7
  const defaultBlockDecorator = ({ blockClassName, block, render }) => render({ blockClassName, block });
8
- exports.ContentPage = (0, uni_jsx_1.JSX)(({ className, data: { style: pageStyle, blocks, likeControl }, context, blockDecorator = defaultBlockDecorator, }) => {
9
- return ((0, jsx_runtime_1.jsxs)("section", { className: "relative", 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 }) }))] }));
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
10
  function renderBlock(block, i) {
11
11
  const { type } = block;
12
12
  if (!(type in Blocks_1.Blocks)) {
@@ -18,8 +18,8 @@ exports.ContentPage = (0, uni_jsx_1.JSX)(({ className, data: { style: pageStyle,
18
18
  blockClassName: style2className(block.style),
19
19
  block,
20
20
  render: (props) => {
21
- const { content, blocks } = props.block;
22
- return ((0, jsx_runtime_1.jsx)(BlockComponent, { className: props.blockClassName, context: context, ...content, children: blocks?.length ? blocks.map(renderBlock) : null }, `${type}-${i}`));
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
23
  },
24
24
  });
25
25
  }
@@ -1 +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,EAC/C,OAAO,EACP,cAAc,GAAG,qBAAqB,GACvC,EAAE,EAAE;IACH,OAAO,CACL,qCAAS,SAAS,EAAC,UAAU,aAC3B,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,MAAM,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC;gBACxC,OAAO,CACL,uBAAC,cAAc,IAEb,SAAS,EAAE,KAAK,CAAC,cAAc,EAC/B,OAAO,EAAE,OAAO,KACZ,OAAO,YAEV,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,IAL3C,GAAG,IAAI,IAAI,CAAC,EAAE,CAMJ,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"}
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"}
@@ -1,3 +1,4 @@
1
+ import type { HeaderContent } from './Header';
1
2
  export interface Router {
2
3
  pathname: string;
3
4
  query: Record<string, string | string[] | undefined>;
@@ -10,8 +11,10 @@ export interface LikeService {
10
11
  like: () => void;
11
12
  dislike: () => void;
12
13
  }
14
+ export declare type HandlerDecorator = <F extends Function>(handler: F) => F;
13
15
  export interface ContentPageContext {
14
16
  useRouter: () => Router;
17
+ useSitemap: () => HeaderContent;
15
18
  useLikeService: () => LikeService;
16
- handlerDecorator?: <F extends Function>(handler: F) => F;
19
+ handlerDecorator?: HandlerDecorator;
17
20
  }
@@ -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"}
package/dist/Icons.d.ts CHANGED
@@ -1,5 +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;
1
7
  export declare const Icons: {
2
8
  EmptyWalletIcon: () => any;
3
9
  PercentageSquareIcon: () => any;
4
10
  CalendarIcon: () => any;
11
+ LoupeIcon: () => any;
12
+ ProfileIcon: () => any;
13
+ GridIcon: () => any;
5
14
  };
package/dist/Icons.js CHANGED
@@ -1,12 +1,24 @@
1
1
  Object.defineProperty(exports, "__esModule", { value: true });
2
- exports.Icons = void 0;
2
+ exports.Icons = exports.GridIcon = exports.ProfileIcon = exports.LoupeIcon = exports.PercentageSquareIcon = exports.EmptyWalletIcon = exports.CalendarIcon = void 0;
3
3
  const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
4
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;
5
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;
6
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;
7
16
  exports.Icons = {
8
- EmptyWalletIcon,
9
- PercentageSquareIcon,
10
- CalendarIcon,
17
+ EmptyWalletIcon: exports.EmptyWalletIcon,
18
+ PercentageSquareIcon: exports.PercentageSquareIcon,
19
+ CalendarIcon: exports.CalendarIcon,
20
+ LoupeIcon: exports.LoupeIcon,
21
+ ProfileIcon: exports.ProfileIcon,
22
+ GridIcon: exports.GridIcon,
11
23
  };
12
24
  //# sourceMappingURL=Icons.js.map
package/dist/Icons.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Icons.js","sourceRoot":"","sources":["../src/Icons.tsx"],"names":[],"mappings":";;;AAAA,MAAM,YAAY,GAAG,GAAG,EAAE,CAAC,CACzB,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;AACF,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,CAC5B,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;AACF,MAAM,oBAAoB,GAAG,GAAG,EAAE,CAAC,CACjC,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;AAEW,QAAA,KAAK,GAAG;IACnB,eAAe;IACf,oBAAoB;IACpB,YAAY;CACb,CAAC"}
1
+ {"version":3,"file":"Icons.js","sourceRoot":"","sources":["../src/Icons.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import type { ContentPageContext } from './ContentPageContext';
2
2
  import { Icons } from './Icons';
3
- import { Picture } from './types';
3
+ import { BlockVersion, Picture } from './types';
4
4
  import type { ButtonProps } from './ui-kit/Button';
5
5
  import { BreadcrumbProps } from './ui-kit/Breadcrumb';
6
6
  export interface Benefit {
@@ -8,7 +8,7 @@ export interface Benefit {
8
8
  description?: string;
9
9
  icon?: keyof typeof Icons;
10
10
  }
11
- export interface ProductBlockContent {
11
+ export interface ProductTileContent {
12
12
  title?: string;
13
13
  description?: string;
14
14
  breadcrumbs?: BreadcrumbProps[];
@@ -17,8 +17,9 @@ export interface ProductBlockContent {
17
17
  items?: string[];
18
18
  buttons?: ButtonProps[];
19
19
  }
20
- export interface ProductBlockProps extends ProductBlockContent {
20
+ export interface ProductTileProps extends ProductTileContent {
21
21
  className?: string;
22
+ version?: BlockVersion;
22
23
  context: ContentPageContext;
23
24
  }
24
- export declare const ProductBlock: (props: import("@redneckz/uni-jsx").PropsWithChildren<ProductBlockProps, any>, context?: any) => any;
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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"}
package/dist/index.d.ts CHANGED
@@ -4,3 +4,4 @@ export { Blocks } from './Blocks';
4
4
  export { LikeAPI } from './api/LikeAPI';
5
5
  export { ContentPageHead } from './ContentPageHead';
6
6
  export { ContentPage } from './ContentPage';
7
+ export * as url from './utils/url';
package/dist/index.js CHANGED
@@ -1,5 +1,28 @@
1
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
2
+ if (k2 === undefined) k2 = k;
3
+ var desc = Object.getOwnPropertyDescriptor(m, k);
4
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
5
+ desc = { enumerable: true, get: function() { return m[k]; } };
6
+ }
7
+ Object.defineProperty(o, k2, desc);
8
+ }) : (function(o, m, k, k2) {
9
+ if (k2 === undefined) k2 = k;
10
+ o[k2] = m[k];
11
+ }));
12
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
13
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
14
+ }) : function(o, v) {
15
+ o["default"] = v;
16
+ });
17
+ var __importStar = (this && this.__importStar) || function (mod) {
18
+ if (mod && mod.__esModule) return mod;
19
+ var result = {};
20
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
21
+ __setModuleDefault(result, mod);
22
+ return result;
23
+ };
1
24
  Object.defineProperty(exports, "__esModule", { value: true });
2
- exports.ContentPage = exports.ContentPageHead = exports.LikeAPI = exports.Blocks = void 0;
25
+ exports.url = exports.ContentPage = exports.ContentPageHead = exports.LikeAPI = exports.Blocks = void 0;
3
26
  var Blocks_1 = require("./Blocks");
4
27
  Object.defineProperty(exports, "Blocks", { enumerable: true, get: function () { return Blocks_1.Blocks; } });
5
28
  var LikeAPI_1 = require("./api/LikeAPI");
@@ -8,4 +31,5 @@ var ContentPageHead_1 = require("./ContentPageHead");
8
31
  Object.defineProperty(exports, "ContentPageHead", { enumerable: true, get: function () { return ContentPageHead_1.ContentPageHead; } });
9
32
  var ContentPage_1 = require("./ContentPage");
10
33
  Object.defineProperty(exports, "ContentPage", { enumerable: true, get: function () { return ContentPage_1.ContentPage; } });
34
+ exports.url = __importStar(require("./utils/url"));
11
35
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;AAGA,mCAAkC;AAAzB,gGAAA,MAAM,OAAA;AACf,yCAAwC;AAA/B,kGAAA,OAAO,OAAA;AAEhB,qDAAoD;AAA3C,kHAAA,eAAe,OAAA;AACxB,6CAA4C;AAAnC,0GAAA,WAAW,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAGA,mCAAkC;AAAzB,gGAAA,MAAM,OAAA;AACf,yCAAwC;AAA/B,kGAAA,OAAO,OAAA;AAEhB,qDAAoD;AAA3C,kHAAA,eAAe,OAAA;AACxB,6CAA4C;AAAnC,0GAAA,WAAW,OAAA;AAEpB,mDAAmC"}
package/dist/types.d.ts CHANGED
@@ -1,15 +1,17 @@
1
1
  import type { AvifOptions, FormatEnum, GifOptions, HeifOptions, JpegOptions, PngOptions, ResizeOptions, TiffOptions, WebpOptions } from 'sharp';
2
2
  import type { HeaderContent } from './Header';
3
3
  import type { PlaceholderContent } from './Placeholder';
4
- import type { ProductColumnBlockContent } from './ProductColumnBlock';
4
+ import type { ProductTileContent } from './ProductTile';
5
5
  import type { RichTextContent } from './RichText';
6
6
  import type { TextContent } from './Text';
7
7
  import type { TextWithImageContent } from './TextWithImage';
8
- import type { ProductBlockContent } from './ProductBlock';
9
- export declare type BlockContent = ProductColumnBlockContent | HeaderContent | TextContent | TextWithImageContent | RichTextContent | PlaceholderContent | ProductBlockContent;
8
+ export declare type BlockVersion = 'primary' | 'secondary';
9
+ export declare type ColorPalette = 'pc' | 'bc' | 'eo';
10
+ export declare type BlockContent = HeaderContent | TextContent | TextWithImageContent | RichTextContent | PlaceholderContent | ProductTileContent;
10
11
  export interface BlockDef {
11
12
  type: string;
12
13
  style?: string[];
14
+ version?: BlockVersion;
13
15
  content?: BlockContent;
14
16
  blocks?: BlockDef[];
15
17
  }
@@ -25,6 +27,7 @@ export interface ContentPageDef extends ContentPageMeta {
25
27
  style?: string[];
26
28
  blocks?: BlockDef[];
27
29
  likeControl?: boolean;
30
+ colorPalette?: ColorPalette;
28
31
  }
29
32
  export interface Img {
30
33
  src: string;
@@ -1,7 +1,10 @@
1
+ declare type BlockItemVersion = 'primary' | 'secondary';
1
2
  export interface BlockItemContent {
2
3
  text?: string;
3
4
  }
4
5
  export interface BlockItemProps extends BlockItemContent {
5
6
  className?: string;
7
+ version?: BlockItemVersion;
6
8
  }
7
9
  export declare const BlockItem: (props: import("@redneckz/uni-jsx").PropsWithChildren<BlockItemProps, any>, context?: any) => any;
10
+ export {};
@@ -2,7 +2,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
2
2
  exports.BlockItem = 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
- exports.BlockItem = (0, uni_jsx_1.JSX)(({ className, text, children }) => {
6
- return ((0, jsx_runtime_1.jsxs)("div", { className: `inline-block flex items-center ${className || ''}`, role: "listitem", children: [(0, jsx_runtime_1.jsx)("div", { className: "inline-block min-w-[7px] h-[2px] bg-brand" }), (0, jsx_runtime_1.jsx)("span", { className: "text-base text-secondary font-normal font-sans mx-3", children: text || children })] }));
5
+ const listStyleMap = {
6
+ primary: 'bg-primary-main',
7
+ secondary: 'bg-white',
8
+ };
9
+ const textStyleMap = {
10
+ primary: 'text-primary-text',
11
+ secondary: 'text-white',
12
+ };
13
+ exports.BlockItem = (0, uni_jsx_1.JSX)(({ className, text, children, version = 'primary' }) => {
14
+ return ((0, jsx_runtime_1.jsxs)("div", { className: `inline-block flex items-center ${className || ''}`, role: "listitem", children: [(0, jsx_runtime_1.jsx)("div", { className: `inline-block w-[8px] h-[8px] rounded-full ${listStyleMap[version]}` }), (0, jsx_runtime_1.jsx)("span", { className: `text-base font-normal font-sans mx-3 ${textStyleMap[version]}`, children: text || children })] }));
7
15
  });
8
16
  //# sourceMappingURL=BlockItem.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BlockItem.js","sourceRoot":"","sources":["../../src/ui-kit/BlockItem.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AAU3B,QAAA,SAAS,GAAG,IAAA,aAAG,EAAiB,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC7E,OAAO,CACL,iCAAK,SAAS,EAAE,kCAAkC,SAAS,IAAI,EAAE,EAAE,EAAE,IAAI,EAAC,UAAU,aAClF,gCAAK,SAAS,EAAC,2CAA2C,GAAO,EACjE,iCAAM,SAAS,EAAC,qDAAqD,YAClE,IAAI,IAAI,QAAQ,GACZ,IACH,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"BlockItem.js","sourceRoot":"","sources":["../../src/ui-kit/BlockItem.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AAYxC,MAAM,YAAY,GAAqC;IACrD,OAAO,EAAE,iBAAiB;IAC1B,SAAS,EAAE,UAAU;CACtB,CAAC;AAEF,MAAM,YAAY,GAAqC;IACrD,OAAO,EAAE,mBAAmB;IAC5B,SAAS,EAAE,YAAY;CACxB,CAAC;AAEW,QAAA,SAAS,GAAG,IAAA,aAAG,EAC1B,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,GAAG,SAAS,EAAE,EAAE,EAAE;IACrD,OAAO,CACL,iCAAK,SAAS,EAAE,kCAAkC,SAAS,IAAI,EAAE,EAAE,EAAE,IAAI,EAAC,UAAU,aAClF,gCAAK,SAAS,EAAE,6CAA6C,YAAY,CAAC,OAAO,CAAC,EAAE,GAAQ,EAC5F,iCAAM,SAAS,EAAE,wCAAwC,YAAY,CAAC,OAAO,CAAC,EAAE,YAC7E,IAAI,IAAI,QAAQ,GACZ,IACH,CACP,CAAC;AACJ,CAAC,CACF,CAAC"}
@@ -1,9 +1,10 @@
1
1
  import type { LinkContent } from './Link';
2
- declare type ButtonVariant = 'primary' | 'secondary';
2
+ declare type ButtonVersion = 'primary' | 'secondary';
3
3
  export interface ButtonProps extends LinkContent {
4
4
  className?: string;
5
5
  onClick?: (ev: MouseEvent) => any;
6
- variant?: ButtonVariant;
6
+ version?: ButtonVersion;
7
+ disabled?: Boolean;
7
8
  }
8
9
  export declare const Button: (props: import("@redneckz/uni-jsx").PropsWithChildren<ButtonProps, any>, context?: any) => any;
9
10
  export {};
@@ -2,11 +2,19 @@ Object.defineProperty(exports, "__esModule", { value: true });
2
2
  exports.Button = 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 variantStyleMap = {
6
- primary: 'text-white bg-brand',
7
- secondary: 'text-brand bg-main',
5
+ const buttonStyleMap = {
6
+ primary: 'text-white bg-primary-main hover:bg-primary-hover active:bg-primary-active',
7
+ secondary: 'text-primary-main bg-secondary-light hover:bg-secondary-hover active:bg-secondary-active',
8
8
  };
9
- exports.Button = (0, uni_jsx_1.JSX)(({ className, text, href, target, onClick, children, variant = 'primary' }) => {
10
- return ((0, jsx_runtime_1.jsx)("a", { className: `inline-block rounded-3xl px-9 py-3.5 text-center font-sans no-underline ${variantStyleMap[variant]} ${className || ''}`, href: href, target: target, onClick: onClick, children: (0, jsx_runtime_1.jsx)("span", { className: "text-sm font-medium", children: text || children }) }));
9
+ const buttonDisabledStyleMap = {
10
+ primary: 'bg-secondary-dark text-secondary-text',
11
+ secondary: 'bg-secondary-light text-secondary-text',
12
+ };
13
+ const styleButton = 'inline-block rounded-3xl px-9 py-3.5 text-center font-sans';
14
+ exports.Button = (0, uni_jsx_1.JSX)(({ className, text, href, target, onClick, children, disabled, version = 'primary' }) => {
15
+ if (disabled) {
16
+ return ((0, jsx_runtime_1.jsx)("div", { role: "button", "area-disabled": "true", className: `${styleButton} select-none ${buttonDisabledStyleMap[version]} ${className || ''}`, children: (0, jsx_runtime_1.jsx)("span", { className: "text-sm font-medium", children: text || children }) }));
17
+ }
18
+ return ((0, jsx_runtime_1.jsx)("a", { className: `${styleButton} no-underline ${buttonStyleMap[version]} ${className || ''}`, href: href, target: target, onClick: onClick, children: (0, jsx_runtime_1.jsx)("span", { className: "text-sm font-medium", children: text || children }) }));
11
19
  });
12
20
  //# sourceMappingURL=Button.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Button.js","sourceRoot":"","sources":["../../src/ui-kit/Button.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AAUxC,MAAM,eAAe,GAAkC;IACrD,OAAO,EAAE,qBAAqB;IAC9B,SAAS,EAAE,oBAAoB;CAChC,CAAC;AAEW,QAAA,MAAM,GAAG,IAAA,aAAG,EACvB,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,GAAG,SAAS,EAAE,EAAE,EAAE;IAC5E,OAAO,CACL,8BACE,SAAS,EAAE,2EACT,eAAe,CAAC,OAAO,CACzB,IAAI,SAAS,IAAI,EAAE,EAAE,EACrB,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,YAEhB,iCAAM,SAAS,EAAC,qBAAqB,YAAE,IAAI,IAAI,QAAQ,GAAQ,GAC7D,CACL,CAAC;AACJ,CAAC,CACF,CAAC"}
1
+ {"version":3,"file":"Button.js","sourceRoot":"","sources":["../../src/ui-kit/Button.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AAWxC,MAAM,cAAc,GAAkC;IACpD,OAAO,EAAE,4EAA4E;IACrF,SAAS,EACP,0FAA0F;CAC7F,CAAC;AAEF,MAAM,sBAAsB,GAAkC;IAC5D,OAAO,EAAE,uCAAuC;IAChD,SAAS,EAAE,wCAAwC;CACpD,CAAC;AAEF,MAAM,WAAW,GAAG,4DAA4D,CAAC;AAEpE,QAAA,MAAM,GAAG,IAAA,aAAG,EACvB,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,GAAG,SAAS,EAAE,EAAE,EAAE;IACtF,IAAI,QAAQ,EAAE;QACZ,OAAO,CACL,gCACE,IAAI,EAAC,QAAQ,mBACC,MAAM,EACpB,SAAS,EAAE,GAAG,WAAW,gBAAgB,sBAAsB,CAAC,OAAO,CAAC,IACtE,SAAS,IAAI,EACf,EAAE,YAEF,iCAAM,SAAS,EAAC,qBAAqB,YAAE,IAAI,IAAI,QAAQ,GAAQ,GAC3D,CACP,CAAC;KACH;IAED,OAAO,CACL,8BACE,SAAS,EAAE,GAAG,WAAW,iBAAiB,cAAc,CAAC,OAAO,CAAC,IAAI,SAAS,IAAI,EAAE,EAAE,EACtF,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,YAEhB,iCAAM,SAAS,EAAC,qBAAqB,YAAE,IAAI,IAAI,QAAQ,GAAQ,GAC7D,CACL,CAAC;AACJ,CAAC,CACF,CAAC"}