@redneckz/wildless-cms-uni-blocks 0.14.359 → 0.14.360

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 (221) hide show
  1. package/bundle/UniBlock/UniBlockProps.d.ts +1 -0
  2. package/bundle/bundle.umd.js +62 -55
  3. package/bundle/bundle.umd.min.js +1 -1
  4. package/bundle/components/Footer/renderLogoSearchBar.d.ts +4 -0
  5. package/bundle/components/Footer/renderLogoSearchBar.mobile.d.ts +3 -0
  6. package/bundle/data/SitemapData.d.ts +1 -0
  7. package/bundle/ui-kit/Heading/HeadingProps.d.ts +1 -3
  8. package/bundle/ui-kit/Sitemap/Sitemap.d.ts +1 -5
  9. package/bundle/ui-kit/Sitemap/Sitemap.mobile.d.ts +2 -0
  10. package/bundle/ui-kit/Sitemap/SitemapItem.d.ts +7 -0
  11. package/bundle/ui-kit/Sitemap/SitemapProps.d.ts +5 -0
  12. package/dist/UniBlock/UniBlockProps.d.ts +1 -0
  13. package/dist/components/AdTile/AdTile.js +1 -2
  14. package/dist/components/AdTile/AdTile.js.map +1 -1
  15. package/dist/components/Footer/Footer.js +4 -7
  16. package/dist/components/Footer/Footer.js.map +1 -1
  17. package/dist/components/Footer/HorizontalNavigation.js +2 -1
  18. package/dist/components/Footer/HorizontalNavigation.js.map +1 -1
  19. package/dist/components/Footer/HorizontalNavigationLink.js +1 -2
  20. package/dist/components/Footer/HorizontalNavigationLink.js.map +1 -1
  21. package/dist/components/Footer/LinkList.js +4 -3
  22. package/dist/components/Footer/LinkList.js.map +1 -1
  23. package/dist/components/Footer/renderLogoSearchBar.d.ts +4 -0
  24. package/dist/components/Footer/renderLogoSearchBar.js +12 -0
  25. package/dist/components/Footer/renderLogoSearchBar.js.map +1 -0
  26. package/dist/components/Footer/renderLogoSearchBar.mobile.d.ts +3 -0
  27. package/dist/components/Footer/renderLogoSearchBar.mobile.js +6 -0
  28. package/dist/components/Footer/renderLogoSearchBar.mobile.js.map +1 -0
  29. package/dist/components/OfficesAtmsMap/OfficesAtmsMapLayout.js +1 -1
  30. package/dist/components/OfficesAtmsMap/OfficesAtmsMapLayout.js.map +1 -1
  31. package/dist/data/SitemapData.d.ts +1 -0
  32. package/dist/ui-kit/Heading/HeadingProps.d.ts +1 -3
  33. package/dist/ui-kit/Sitemap/Sitemap.d.ts +1 -5
  34. package/dist/ui-kit/Sitemap/Sitemap.js +5 -10
  35. package/dist/ui-kit/Sitemap/Sitemap.js.map +1 -1
  36. package/dist/ui-kit/Sitemap/Sitemap.mobile.d.ts +2 -0
  37. package/dist/ui-kit/Sitemap/Sitemap.mobile.js +12 -0
  38. package/dist/ui-kit/Sitemap/Sitemap.mobile.js.map +1 -0
  39. package/dist/ui-kit/Sitemap/SitemapItem.d.ts +7 -0
  40. package/dist/ui-kit/Sitemap/SitemapItem.js +14 -0
  41. package/dist/ui-kit/Sitemap/SitemapItem.js.map +1 -0
  42. package/dist/ui-kit/Sitemap/SitemapProps.d.ts +5 -0
  43. package/dist/ui-kit/Sitemap/SitemapProps.js +2 -0
  44. package/dist/ui-kit/Sitemap/SitemapProps.js.map +1 -0
  45. package/dist/ui-kit/TopItem/TopItem.js +1 -1
  46. package/dist/ui-kit/TopItem/TopItem.js.map +1 -1
  47. package/lib/UniBlock/UniBlockProps.d.ts +1 -0
  48. package/lib/common.css +1 -1
  49. package/lib/components/AdTile/AdTile.js +1 -2
  50. package/lib/components/AdTile/AdTile.js.map +1 -1
  51. package/lib/components/Footer/Footer.js +4 -7
  52. package/lib/components/Footer/Footer.js.map +1 -1
  53. package/lib/components/Footer/HorizontalNavigation.js +3 -2
  54. package/lib/components/Footer/HorizontalNavigation.js.map +1 -1
  55. package/lib/components/Footer/HorizontalNavigationLink.js +1 -2
  56. package/lib/components/Footer/HorizontalNavigationLink.js.map +1 -1
  57. package/lib/components/Footer/LinkList.js +4 -3
  58. package/lib/components/Footer/LinkList.js.map +1 -1
  59. package/lib/components/Footer/renderLogoSearchBar.d.ts +4 -0
  60. package/lib/components/Footer/renderLogoSearchBar.js +9 -0
  61. package/lib/components/Footer/renderLogoSearchBar.js.map +1 -0
  62. package/lib/components/Footer/renderLogoSearchBar.mobile.d.ts +3 -0
  63. package/lib/components/Footer/renderLogoSearchBar.mobile.js +3 -0
  64. package/lib/components/Footer/renderLogoSearchBar.mobile.js.map +1 -0
  65. package/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.js +1 -1
  66. package/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.js.map +1 -1
  67. package/lib/data/SitemapData.d.ts +1 -0
  68. package/lib/ui-kit/Heading/HeadingProps.d.ts +1 -3
  69. package/lib/ui-kit/Sitemap/Sitemap.d.ts +1 -5
  70. package/lib/ui-kit/Sitemap/Sitemap.js +5 -10
  71. package/lib/ui-kit/Sitemap/Sitemap.js.map +1 -1
  72. package/lib/ui-kit/Sitemap/Sitemap.mobile.d.ts +2 -0
  73. package/lib/ui-kit/Sitemap/Sitemap.mobile.js +10 -0
  74. package/lib/ui-kit/Sitemap/Sitemap.mobile.js.map +1 -0
  75. package/lib/ui-kit/Sitemap/SitemapItem.d.ts +7 -0
  76. package/lib/ui-kit/Sitemap/SitemapItem.js +12 -0
  77. package/lib/ui-kit/Sitemap/SitemapItem.js.map +1 -0
  78. package/lib/ui-kit/Sitemap/SitemapProps.d.ts +5 -0
  79. package/lib/ui-kit/Sitemap/SitemapProps.js +2 -0
  80. package/lib/ui-kit/Sitemap/SitemapProps.js.map +1 -0
  81. package/lib/ui-kit/TopItem/TopItem.js +1 -1
  82. package/lib/ui-kit/TopItem/TopItem.js.map +1 -1
  83. package/mobile/bundle/UniBlock/UniBlockProps.d.ts +1 -0
  84. package/mobile/bundle/bundle.umd.js +33 -29
  85. package/mobile/bundle/bundle.umd.min.js +1 -1
  86. package/mobile/bundle/components/Footer/renderLogoSearchBar.d.ts +3 -0
  87. package/mobile/bundle/data/SitemapData.d.ts +1 -0
  88. package/mobile/bundle/ui-kit/Heading/HeadingProps.d.ts +1 -3
  89. package/mobile/bundle/ui-kit/Sitemap/Sitemap.d.ts +1 -5
  90. package/mobile/bundle/ui-kit/Sitemap/SitemapItem.d.ts +7 -0
  91. package/mobile/bundle/ui-kit/Sitemap/SitemapProps.d.ts +5 -0
  92. package/mobile/dist/UniBlock/UniBlockProps.d.ts +1 -0
  93. package/mobile/dist/components/AdTile/AdTile.js +1 -2
  94. package/mobile/dist/components/AdTile/AdTile.js.map +1 -1
  95. package/mobile/dist/components/Footer/Footer.js +7 -10
  96. package/mobile/dist/components/Footer/Footer.js.map +1 -1
  97. package/mobile/dist/components/Footer/HorizontalNavigation.js +1 -2
  98. package/mobile/dist/components/Footer/HorizontalNavigation.js.map +1 -1
  99. package/mobile/dist/components/Footer/HorizontalNavigationLink.js +1 -2
  100. package/mobile/dist/components/Footer/HorizontalNavigationLink.js.map +1 -1
  101. package/mobile/dist/components/Footer/LinkList.js +4 -3
  102. package/mobile/dist/components/Footer/LinkList.js.map +1 -1
  103. package/mobile/dist/components/Footer/renderLogoSearchBar.d.ts +3 -0
  104. package/mobile/dist/components/Footer/renderLogoSearchBar.js +6 -0
  105. package/mobile/dist/components/Footer/renderLogoSearchBar.js.map +1 -0
  106. package/mobile/dist/components/OfficesAtmsMap/OfficesAtmsMapLayout.js +1 -1
  107. package/mobile/dist/components/OfficesAtmsMap/OfficesAtmsMapLayout.js.map +1 -1
  108. package/mobile/dist/data/SitemapData.d.ts +1 -0
  109. package/mobile/dist/ui-kit/Heading/HeadingProps.d.ts +1 -3
  110. package/mobile/dist/ui-kit/Sitemap/Sitemap.d.ts +1 -5
  111. package/mobile/dist/ui-kit/Sitemap/Sitemap.js +6 -20
  112. package/mobile/dist/ui-kit/Sitemap/Sitemap.js.map +1 -1
  113. package/mobile/dist/ui-kit/Sitemap/SitemapItem.d.ts +7 -0
  114. package/mobile/dist/ui-kit/Sitemap/SitemapItem.js +14 -0
  115. package/mobile/dist/ui-kit/Sitemap/SitemapItem.js.map +1 -0
  116. package/mobile/dist/ui-kit/Sitemap/SitemapProps.d.ts +5 -0
  117. package/mobile/dist/ui-kit/Sitemap/SitemapProps.js +2 -0
  118. package/mobile/dist/ui-kit/Sitemap/SitemapProps.js.map +1 -0
  119. package/mobile/dist/ui-kit/TopItem/TopItem.js +1 -1
  120. package/mobile/dist/ui-kit/TopItem/TopItem.js.map +1 -1
  121. package/mobile/lib/UniBlock/UniBlockProps.d.ts +1 -0
  122. package/mobile/lib/common.css +1 -1
  123. package/mobile/lib/components/AdTile/AdTile.js +1 -2
  124. package/mobile/lib/components/AdTile/AdTile.js.map +1 -1
  125. package/mobile/lib/components/Footer/Footer.js +7 -10
  126. package/mobile/lib/components/Footer/Footer.js.map +1 -1
  127. package/mobile/lib/components/Footer/HorizontalNavigation.js +1 -2
  128. package/mobile/lib/components/Footer/HorizontalNavigation.js.map +1 -1
  129. package/mobile/lib/components/Footer/HorizontalNavigationLink.js +1 -2
  130. package/mobile/lib/components/Footer/HorizontalNavigationLink.js.map +1 -1
  131. package/mobile/lib/components/Footer/LinkList.js +4 -3
  132. package/mobile/lib/components/Footer/LinkList.js.map +1 -1
  133. package/mobile/lib/components/Footer/renderLogoSearchBar.d.ts +3 -0
  134. package/mobile/lib/components/Footer/renderLogoSearchBar.js +3 -0
  135. package/mobile/lib/components/Footer/renderLogoSearchBar.js.map +1 -0
  136. package/mobile/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.js +1 -1
  137. package/mobile/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.js.map +1 -1
  138. package/mobile/lib/data/SitemapData.d.ts +1 -0
  139. package/mobile/lib/ui-kit/Heading/HeadingProps.d.ts +1 -3
  140. package/mobile/lib/ui-kit/Sitemap/Sitemap.d.ts +1 -5
  141. package/mobile/lib/ui-kit/Sitemap/Sitemap.js +7 -21
  142. package/mobile/lib/ui-kit/Sitemap/Sitemap.js.map +1 -1
  143. package/mobile/lib/ui-kit/Sitemap/SitemapItem.d.ts +7 -0
  144. package/mobile/lib/ui-kit/Sitemap/SitemapItem.js +12 -0
  145. package/mobile/lib/ui-kit/Sitemap/SitemapItem.js.map +1 -0
  146. package/mobile/lib/ui-kit/Sitemap/SitemapProps.d.ts +5 -0
  147. package/mobile/lib/ui-kit/Sitemap/SitemapProps.js +2 -0
  148. package/mobile/lib/ui-kit/Sitemap/SitemapProps.js.map +1 -0
  149. package/mobile/lib/ui-kit/TopItem/TopItem.js +1 -1
  150. package/mobile/lib/ui-kit/TopItem/TopItem.js.map +1 -1
  151. package/mobile/src/UniBlock/UniBlockProps.ts +1 -0
  152. package/mobile/src/components/AdTile/AdTile.tsx +1 -4
  153. package/mobile/src/components/Footer/Footer.tsx +36 -38
  154. package/mobile/src/components/Footer/HorizontalNavigation.tsx +9 -8
  155. package/mobile/src/components/Footer/HorizontalNavigationLink.tsx +1 -2
  156. package/mobile/src/components/Footer/LinkList.tsx +25 -18
  157. package/mobile/src/components/Footer/renderLogoSearchBar.tsx +6 -0
  158. package/mobile/src/components/OfficesAtmsMap/OfficesAtmsMapLayout.tsx +8 -4
  159. package/mobile/src/data/SitemapData.ts +1 -0
  160. package/mobile/src/ui-kit/Heading/HeadingProps.ts +1 -3
  161. package/mobile/src/ui-kit/Sitemap/Sitemap.tsx +23 -72
  162. package/mobile/src/ui-kit/Sitemap/SitemapItem.tsx +30 -0
  163. package/mobile/src/ui-kit/Sitemap/SitemapProps.ts +6 -0
  164. package/mobile/src/ui-kit/TopItem/TopItem.tsx +3 -1
  165. package/package.json +1 -1
  166. package/src/UniBlock/UniBlockProps.ts +1 -0
  167. package/src/components/AdTile/AdTile.tsx +1 -4
  168. package/src/components/Footer/Footer.tsx +13 -13
  169. package/src/components/Footer/HorizontalNavigation.tsx +24 -16
  170. package/src/components/Footer/HorizontalNavigationLink.tsx +1 -2
  171. package/src/components/Footer/LinkList.tsx +25 -18
  172. package/src/components/Footer/renderLogoSearchBar.mobile.tsx +6 -0
  173. package/src/components/Footer/renderLogoSearchBar.tsx +16 -0
  174. package/src/components/OfficesAtmsMap/OfficesAtmsMapLayout.tsx +8 -4
  175. package/src/data/SitemapData.ts +1 -0
  176. package/src/ui-kit/Heading/HeadingProps.ts +1 -3
  177. package/src/ui-kit/Sitemap/Sitemap.mobile.tsx +27 -0
  178. package/src/ui-kit/Sitemap/Sitemap.tsx +17 -42
  179. package/src/ui-kit/Sitemap/SitemapItem.tsx +30 -0
  180. package/src/ui-kit/Sitemap/SitemapProps.ts +6 -0
  181. package/src/ui-kit/TopItem/TopItem.tsx +3 -1
  182. package/bundle/components/Footer/Footer.mobile.d.ts +0 -2
  183. package/bundle/components/Footer/HorizontalNavigation.mobile.d.ts +0 -5
  184. package/bundle/components/Footer/horizontalNavigationLinkStyles.d.ts +0 -1
  185. package/bundle/components/Footer/horizontalNavigationLinkStyles.mobile.d.ts +0 -1
  186. package/dist/components/Footer/Footer.mobile.d.ts +0 -2
  187. package/dist/components/Footer/Footer.mobile.js +0 -24
  188. package/dist/components/Footer/Footer.mobile.js.map +0 -1
  189. package/dist/components/Footer/HorizontalNavigation.mobile.d.ts +0 -5
  190. package/dist/components/Footer/HorizontalNavigation.mobile.js +0 -9
  191. package/dist/components/Footer/HorizontalNavigation.mobile.js.map +0 -1
  192. package/dist/components/Footer/horizontalNavigationLinkStyles.d.ts +0 -1
  193. package/dist/components/Footer/horizontalNavigationLinkStyles.js +0 -4
  194. package/dist/components/Footer/horizontalNavigationLinkStyles.js.map +0 -1
  195. package/dist/components/Footer/horizontalNavigationLinkStyles.mobile.d.ts +0 -1
  196. package/dist/components/Footer/horizontalNavigationLinkStyles.mobile.js +0 -4
  197. package/dist/components/Footer/horizontalNavigationLinkStyles.mobile.js.map +0 -1
  198. package/lib/components/Footer/Footer.mobile.d.ts +0 -2
  199. package/lib/components/Footer/Footer.mobile.js +0 -22
  200. package/lib/components/Footer/Footer.mobile.js.map +0 -1
  201. package/lib/components/Footer/HorizontalNavigation.mobile.d.ts +0 -5
  202. package/lib/components/Footer/HorizontalNavigation.mobile.js +0 -7
  203. package/lib/components/Footer/HorizontalNavigation.mobile.js.map +0 -1
  204. package/lib/components/Footer/horizontalNavigationLinkStyles.d.ts +0 -1
  205. package/lib/components/Footer/horizontalNavigationLinkStyles.js +0 -2
  206. package/lib/components/Footer/horizontalNavigationLinkStyles.js.map +0 -1
  207. package/lib/components/Footer/horizontalNavigationLinkStyles.mobile.d.ts +0 -1
  208. package/lib/components/Footer/horizontalNavigationLinkStyles.mobile.js +0 -2
  209. package/lib/components/Footer/horizontalNavigationLinkStyles.mobile.js.map +0 -1
  210. package/mobile/bundle/components/Footer/horizontalNavigationLinkStyles.d.ts +0 -1
  211. package/mobile/dist/components/Footer/horizontalNavigationLinkStyles.d.ts +0 -1
  212. package/mobile/dist/components/Footer/horizontalNavigationLinkStyles.js +0 -4
  213. package/mobile/dist/components/Footer/horizontalNavigationLinkStyles.js.map +0 -1
  214. package/mobile/lib/components/Footer/horizontalNavigationLinkStyles.d.ts +0 -1
  215. package/mobile/lib/components/Footer/horizontalNavigationLinkStyles.js +0 -2
  216. package/mobile/lib/components/Footer/horizontalNavigationLinkStyles.js.map +0 -1
  217. package/mobile/src/components/Footer/horizontalNavigationLinkStyles.ts +0 -1
  218. package/src/components/Footer/Footer.mobile.tsx +0 -68
  219. package/src/components/Footer/HorizontalNavigation.mobile.tsx +0 -30
  220. package/src/components/Footer/horizontalNavigationLinkStyles.mobile.ts +0 -1
  221. package/src/components/Footer/horizontalNavigationLinkStyles.ts +0 -1
@@ -21,4 +21,5 @@ export interface UniBlockProps extends UniBlockContent {
21
21
  defaultPadding?: string;
22
22
  block?: BlockDef;
23
23
  options?: BlockRendererOptions;
24
+ suppressHydrationWarning?: boolean;
24
25
  }
@@ -152,11 +152,6 @@
152
152
  return (jsx(Tag, { className: style('@container font-sans', isGroup ? 'group' : '', blockStyles[version], isHidden ? 'hidden' : '', padding || defaultPadding, className), ...(isGroup ? { 'data-ver': version } : {}), ...(block?.anchor ? { id: block.anchor } : {}), role: role, style: inlineStyles, children: children }));
153
153
  });
154
154
 
155
- const isSSR = () => Boolean(typeof globalThis.process === 'object' && globalThis.process && globalThis.process.version);
156
-
157
- const isClient = !isSSR();
158
- const ClientOnly = JSX(({ children }) => (isClient ? children : null));
159
-
160
155
  const GOLDEN_RATIO = 1.618;
161
156
  const Shimmer = JSX(({ className, size }) => (jsx("figure", { className: style('m-0 mt-xl min-w-[80%]', className), children: renderShimmer(size) })));
162
157
  const renderShimmer = (size = 3) => goldenSequence(100, size)
@@ -827,7 +822,7 @@
827
822
  const { items } = (props.options?.page?.adSourceBook ?? {});
828
823
  const tileIndex = useMemo(() => randomNumber(0, items?.length), [items]);
829
824
  const content = items?.[tileIndex];
830
- return content ? (jsx(ClientOnly, { children: jsx(ProductBlock, { ...content, ...props }) })) : (jsx(BlockWrapper, { ...props, children: jsx(Shimmer, {}) }));
825
+ return content ? (jsx(ProductBlock, { suppressHydrationWarning: true, ...content, ...props })) : (jsx(BlockWrapper, { ...props, children: jsx(Shimmer, {}) }));
831
826
  });
832
827
  const randomNumber = (min = 0, max = 0) => Math.floor(Math.random() * (max - min) + min);
833
828
 
@@ -3875,6 +3870,52 @@
3875
3870
  return currencies?.filter((_) => [1, 2, 3].includes(_?.currency?.id)) || [];
3876
3871
  };
3877
3872
 
3873
+ const LinkList = JSX(({ className = '', items, basePath }) => {
3874
+ const isAnotherPortal = projectSettings.BASE_PATH && basePath ? !projectSettings.BASE_PATH.startsWith(basePath) : false;
3875
+ const link = useLink({ isRemote: isAnotherPortal, basePath });
3876
+ return (jsx("ul", { className: style('flex flex-col gap-s w-full', className), children: items?.map(renderLinkListItem(link)) }));
3877
+ });
3878
+ const renderLinkListItem = (link) => (item, i) => {
3879
+ const { text, dataFooter, ...linkProps } = item;
3880
+ const { href, target, onClick } = link(linkProps);
3881
+ return (jsx("li", { className: "list-none", children: jsx("a", { className: "hover:text-primary-main font-light", role: "link", href: href, target: target || '_self', onClick: onClick, ...getAspectsAttributes(dataFooter), children: text ? text : null }) }, `list_item_${String(i)}`));
3882
+ };
3883
+
3884
+ const FOOTER_AREA_KEYS = ['all', 'footer'];
3885
+ const Sitemap = JSX(({ className, topItems }) => {
3886
+ const link = useLink({ isRemote: true });
3887
+ return (jsx("div", { role: "menu", className: style('w-full flex items-start justify-between flex-col md:flex-row gap-y-m lg:order-2', className), children: topItems?.filter(isVisibleItem$1).map(link).map(renderColumn) }));
3888
+ });
3889
+ const renderColumn = (menuItem, index) => {
3890
+ const { text, items = [], href, target = '_self', onClick, dataFooter } = menuItem;
3891
+ const visibleSubItems = items.filter(isVisibleItem$1);
3892
+ return (jsxs("div", { role: "menuitem", className: "flex flex-col gap-s w-full @md:w-1/4", children: [jsx("a", { className: "leading-5 text-l text-primary-text hover:text-primary-main no-underline", href: href, target: target, onClick: onClick, ...getAspectsAttributes(dataFooter), children: text }), visibleSubItems ? jsx(LinkList, { items: visibleSubItems, basePath: appendSlash(href) }) : null] }, String(index)));
3893
+ };
3894
+ const isVisibleItem$1 = (_) => !_.displayArea || FOOTER_AREA_KEYS.includes(_.displayArea.toLowerCase());
3895
+
3896
+ const Contacts = JSX(({ className = '', items = [] }) => items?.length ? (jsx("div", { className: style('space-y-m', className), children: items.map(renderContactsGroup) })) : null);
3897
+ const renderContactsGroup = (item, i) => (jsxs("div", { className: "space-y-m", children: [jsx("div", { children: jsx(Text, { size: "text-l", font: "font-medium", children: item?.title }) }), jsx("div", { className: "space-y-m", children: item.items?.map(renderContact) })] }, String(i)));
3898
+ const renderContact = (item, index) => (jsxs("div", { className: "space-y-2xs", children: [jsx("div", { children: renderText(item.type, item.text) }), jsx(Paragraph, { size: "text-s", font: "font-light", color: "text-secondary-text", children: item.description })] }, String(index)));
3899
+ const renderText = (type, text = '') => {
3900
+ switch (type) {
3901
+ case 'tel':
3902
+ return (jsx("a", { className: "text-primary-text hover:text-primary-main no-underline", href: `tel:${formatTel(text)}`, children: jsx(Text, { size: "text-h6", children: text }) }));
3903
+ case 'email':
3904
+ return (jsx("a", { className: "no-underline", href: `mailto:${text}`, children: jsx(Paragraph, { size: "text-xl", font: "font-light", color: "text-primary-text", children: text }) }));
3905
+ default:
3906
+ return jsx("span", { children: text });
3907
+ }
3908
+ };
3909
+ const formatTel = (s) => s.replaceAll(/\D/g, '');
3910
+
3911
+ const HorizontalNavigationLink = JSX(({ className = '', index, text, ...rest }) => {
3912
+ const link = useLink();
3913
+ const { href, target, onClick } = link(rest);
3914
+ return (jsx("a", { className: style('text-secondary-text', className), href: href, target: target, onClick: onClick, children: text || `Документ ${index}` }));
3915
+ });
3916
+
3917
+ const HorizontalNavigation = JSX(({ className = '', title, links }) => (jsx("div", { className: className, children: links?.length ? (jsxs("div", { className: "flex justify-between lg:items-center flex-col lg:flex-row gap-lg py-lg border-y border-y-main-divider", children: [jsx("div", { className: "lg:hidden", children: jsx(Text, { size: "text-l", font: "font-normal", children: title }) }), links.map((_, i) => (jsx(HorizontalNavigationLink, { index: i, className: "text-l font-light lg:max-w-[292px]", ..._ }, String(i))))] })) : null })));
3918
+
3878
3919
  const ICON_SIZE = { width: '40', height: '45' };
3879
3920
 
3880
3921
  const logoTitleSizeStyle = '';
@@ -4058,24 +4099,6 @@
4058
4099
  return (jsxs("div", { onClick: onClick, className: style('relative min-h-full bg-white pt-0 p-lg', className), role: "dialog", children: [jsxs("div", { className: "sticky py-xl top-0 bg-white z-10", children: [jsx(CloseButton, { className: "absolute top-0 right-0", onClose: handleClose }), jsx("div", { className: "container", children: head })] }), jsx("div", { className: "container pb-6xl", children: children })] }));
4059
4100
  });
4060
4101
 
4061
- const FOOTER_AREA_KEYS = ['all', 'footer'];
4062
- const Sitemap = JSX(({ className, topItems }) => {
4063
- const link = useLink({ isRemote: true });
4064
- return (jsx("div", { role: "menu", className: style('flex items-start justify-between', className), children: topItems?.filter(isVisibleItem$1).map(link).map(renderColumn) }));
4065
- });
4066
- const renderColumn = (menuItem, index) => {
4067
- const { text, items = [], href, target, onClick } = menuItem;
4068
- const visibleSubItems = items.filter(isVisibleItem$1);
4069
- return (jsxs("div", { role: "menuitem", className: "flex flex-col gap-s @sm:w-full @md:w-1/4", children: [jsx("a", { className: "leading-5 text-l text-primary-text hover:text-primary-main no-underline", href: href, target: target || '_self', onClick: onClick, children: text || `Раздел ${index}` }), visibleSubItems.map((_, i) => (jsx(ColumnItem, { ..._, basePath: appendSlash(href), index: i }, String(i))))] }, String(index)));
4070
- };
4071
- const ColumnItem = JSX(({ text, index, basePath, ...rest }) => {
4072
- const isAnotherPortal = projectSettings.BASE_PATH && basePath ? !projectSettings.BASE_PATH.startsWith(basePath) : false;
4073
- const link = useLink({ isRemote: isAnotherPortal, basePath });
4074
- const { href, target, onClick } = link(rest);
4075
- return (jsx("a", { className: style('text-l font-light text-secondary-text hover:text-primary-main no-underline', 'whitespace-wrap'), href: href, target: target || '_self', onClick: onClick, children: text || `Раздел ${index}` }));
4076
- });
4077
- const isVisibleItem$1 = (_) => !_.displayArea || FOOTER_AREA_KEYS.includes(_.displayArea.toLowerCase());
4078
-
4079
4102
  const SearchDialog = JSX(({ initialQuery, topItems }) => {
4080
4103
  const basePathList = useMemo(() => topItems?.map((_) => _.href || '/'), [topItems]);
4081
4104
  const [searchResult, searchInputProps] = useSearch({
@@ -4115,30 +4138,11 @@
4115
4138
  });
4116
4139
  const isQueryLongEnough = (_) => _ && _.length >= MIN_QUERY_LEN;
4117
4140
 
4118
- const Contacts = JSX(({ className = '', items = [] }) => items?.length ? (jsx("div", { className: style('space-y-m', className), children: items.map(renderContactsGroup) })) : null);
4119
- const renderContactsGroup = (item, i) => (jsxs("div", { className: "space-y-m", children: [jsx("div", { children: jsx(Text, { size: "text-l", font: "font-medium", children: item?.title }) }), jsx("div", { className: "space-y-m", children: item.items?.map(renderContact) })] }, String(i)));
4120
- const renderContact = (item, index) => (jsxs("div", { className: "space-y-2xs", children: [jsx("div", { children: renderText(item.type, item.text) }), jsx(Paragraph, { size: "text-s", font: "font-light", color: "text-secondary-text", children: item.description })] }, String(index)));
4121
- const renderText = (type, text = '') => {
4122
- switch (type) {
4123
- case 'tel':
4124
- return (jsx("a", { className: "text-primary-text hover:text-primary-main no-underline", href: `tel:${formatTel(text)}`, children: jsx(Text, { size: "text-h6", children: text }) }));
4125
- case 'email':
4126
- return (jsx("a", { className: "no-underline", href: `mailto:${text}`, children: jsx(Paragraph, { size: "text-xl", font: "font-light", color: "text-primary-text", children: text }) }));
4127
- default:
4128
- return jsx("span", { children: text });
4129
- }
4141
+ const renderLogoSearchBar = (sitemap, LEFT_COL_WIDTH = '') => {
4142
+ const { logo } = sitemap ?? {};
4143
+ const { dataFooter, ...logoProps } = logo ?? {};
4144
+ return (jsxs("div", { className: "flex items-stretch gap-3xl", children: [jsx(Logo, { className: LEFT_COL_WIDTH, logo: logoProps, data: dataFooter }), jsx(SearchBar$1, { className: "grow", ...sitemap })] }));
4130
4145
  };
4131
- const formatTel = (s) => s.replaceAll(/\D/g, '');
4132
-
4133
- const horizontalNavigationLinkStyles = 'text-secondary-text';
4134
-
4135
- const HorizontalNavigationLink = JSX(({ className = '', index, text, ...rest }) => {
4136
- const link = useLink();
4137
- const { href, target, onClick } = link(rest);
4138
- return (jsx("a", { className: style(horizontalNavigationLinkStyles, className), href: href, target: target, onClick: onClick, children: text || `Документ ${index}` }));
4139
- });
4140
-
4141
- const HorizontalNavigation = JSX(({ className = '', links }) => (jsx("div", { className: className, children: links?.length ? (jsx("div", { className: "flex justify-between items-center gap-lg py-lg border-solid border-x-0 border-y border-y-main-divider flex-col @sm:flex-row", children: links.map((_, i) => (jsx(HorizontalNavigationLink, { index: i, className: "text-l font-light max-w-[292px]", ..._ }, String(i)))) })) : null })));
4142
4146
 
4143
4147
  const TextInformationLink = JSX(({ className = '', index, ...rest }) => {
4144
4148
  const link = useLink({ isRemote: true });
@@ -4148,14 +4152,12 @@
4148
4152
 
4149
4153
  const TextInformation = JSX(({ className = '', links, license }) => (jsxs("div", { className: style('@container space-y-lg', className), children: [license ? (jsx("div", { children: jsx(Text, { size: "text-xs", font: "font-light", color: "text-secondary-text", children: `\u00a9\u00A02000-${new Date().getFullYear()}\u00A0${license}` }) })) : null, links?.length ? (jsx("div", { className: "flex flex-col @5xl:flex-row justify-start items-start gap-x-lg gap-y-xs", children: links.map((_, i) => (jsx(TextInformationLink, { index: i, ..._ }, String(i)))) })) : null] })));
4150
4154
 
4151
- const LEFT_COL_WIDTH = 'w-52';
4155
+ const LEFT_COL_WIDTH = 'w-full lg:w-52';
4152
4156
  const Footer = UniBlock(({ className, footer, ...rest }) => {
4153
4157
  const sitemap = rest.options?.page?.sitemap ?? {};
4154
- const { logo } = sitemap;
4155
- const { dataFooter, ...logoProps } = logo ?? {};
4156
- const { documents, relatedEnterprises, contacts, mediaLinks = [], feedbackButton, license, otherLinks = [], } = footer ?? {};
4158
+ const { documents, relatedEnterprises, contacts, mediaLinks = [], horizontalNavigationTitle, feedbackButton, license, otherLinks = [], } = footer ?? {};
4157
4159
  const linkStyle = '!text-left text-s font-light';
4158
- return (jsxs(BlockWrapper, { tag: "footer", className: style('space-y-xl', className), ...rest, children: [jsxs("div", { className: "flex items-stretch gap-3xl", children: [jsx(Logo, { className: LEFT_COL_WIDTH, logo: logoProps, data: dataFooter }), jsx(SearchBar$1, { className: "grow", ...sitemap })] }), jsxs("div", { className: "flex items-center @lg:items-stretch gap-6xl flex-col @lg:flex-row", children: [jsxs("div", { className: style(LEFT_COL_WIDTH, 'flex flex-col shrink-0 overflow-hidden space-y-xl'), children: [jsx(Contacts, { items: contacts }), feedbackButton ? (jsx(LinkButton, { className: "w-full", version: "primary", ...feedbackButton })) : null, mediaLinks.map((_, i) => (jsx(SocialMedia, { media: _?.links ?? [], showButtonText: false, stretched: true, children: _?.title }, String(i)))), otherLinks.map((_, i) => (jsx(LinkButton, { className: linkStyle, version: "link", ..._, children: _?.text }, String(i))))] }), jsx(Sitemap, { className: "flex-grow flex-wrap", ...sitemap })] }), jsx(HorizontalNavigation, { links: relatedEnterprises }), jsx(TextInformation, { links: documents, license: license })] }));
4160
+ return (jsxs(BlockWrapper, { tag: "footer", className: style('grid gap-y-xl p-4xl pb-24 lg:p-xl', className), ...rest, children: [renderLogoSearchBar(sitemap, LEFT_COL_WIDTH), jsxs("div", { className: "flex flex-col lg:flex-row items-center @lg:items-stretch gap-lg lg:gap-6xl ", children: [jsx(Sitemap, { ...sitemap }), jsx("div", { className: "border-t border-main-divider lg:hidden w-full" }), jsxs("div", { className: style(LEFT_COL_WIDTH, 'flex flex-col shrink-0 overflow-hidden space-y-xl'), children: [jsx(Contacts, { items: contacts }), feedbackButton ? (jsx(LinkButton, { className: "w-full", version: "primary", ...feedbackButton })) : null, mediaLinks.map((_, i) => (jsx(SocialMedia, { media: _?.links ?? [], showButtonText: false, stretched: true, children: _?.title }, String(i)))), otherLinks.map((_, i) => (jsx(LinkButton, { className: linkStyle, version: "link", ..._, children: _?.text }, String(i))))] })] }), jsx(HorizontalNavigation, { title: horizontalNavigationTitle, links: relatedEnterprises }), jsx(TextInformation, { links: documents, license: license })] }));
4159
4161
  });
4160
4162
 
4161
4163
  const GracePeriod = JSX(({ className = '', title, description, calendar, ...rest }) => (jsxs(BlockWrapper, { className: style('space-y-m', className), defaultPadding: "p-6xl", ...rest, children: [jsx(Headline, { title: title, description: description, headlineVersion: "M", isEmbedded: true }), calendar ? renderCalendar(calendar) : null] })));
@@ -4205,7 +4207,7 @@
4205
4207
  const TopItem = JSX(({ className = '', active, flat, children, data, ...rest }) => {
4206
4208
  const link = useLink({ isRemote: true });
4207
4209
  const { href, target, text, onClick } = link(rest);
4208
- return (jsx("a", { className: style(getLinkStyle(active, flat), className), href: href, target: target, onClick: onClick, rel: "noopener noreferrer", "aria-label": text, ...getAspectsAttributes(data), children: jsx("span", { className: getTextStyle$1(active, flat), children: text || children }) }));
4210
+ return (jsx("a", { className: style(getLinkStyle(active, flat), className), href: href, target: target, onClick: onClick, rel: "noopener noreferrer", "aria-label": text, ...getAspectsAttributes(data), children: jsx("span", { suppressHydrationWarning: true, className: getTextStyle$1(active, flat), children: text || children }) }));
4209
4211
  });
4210
4212
  const getLinkStyle = (active = false, flat = false) => style('inline-block border border-solid bg-transparent text-center no-underline', active
4211
4213
  ? 'rounded-md border-primary-main group-data-transparent:border-white'
@@ -4810,6 +4812,11 @@
4810
4812
  childSchema: (content) => content?.filtrationSchema || {},
4811
4813
  });
4812
4814
 
4815
+ const isSSR = () => Boolean(typeof globalThis.process === 'object' && globalThis.process && globalThis.process.version);
4816
+
4817
+ const isClient = !isSSR();
4818
+ const ClientOnly = JSX(({ children }) => (isClient ? children : null));
4819
+
4813
4820
  const MapMarkerClusterIcon = '/icons/MapMarkerClusterIcon.svg';
4814
4821
  const MapMarkerClusterYellowIcon = '/icons/MapMarkerClusterYellowIcon.svg';
4815
4822
  function renderClusterer({ yandexMaps, map, points, }) {
@@ -5022,7 +5029,7 @@
5022
5029
  return [_filteredItems, _points, _filteredRemoteWorkplaces, itemsLength];
5023
5030
  }, [data, remoteWorkplaces, filtrationState]);
5024
5031
  const [activeButton, setActiveButton] = useState('all');
5025
- return (jsxs("div", { className: style('space-y-1', className), children: [jsxs("div", { className: "bg-white", children: [jsxs("div", { className: "p-6xl pb-0", children: [jsx("div", { className: "flex flex-col sm:flex-row gap-xs mb-2xl", children: jsxs(Heading, { headingType: "h2", children: [title, lengthItems ? (jsx(Text, { size: "text-h2", color: "text-secondary-text", children: ` (${lengthItems})` })) : null] }) }), descriptionData ? renderDescriptionBlock$1(descriptionData) : null, onlyOffice && renderButtonsGroup(data, activeButton, setActiveButton), jsx("div", { className: style('pb-2xl', filtersVisibleStyles(activeButton)), children: renderFiltrationForm(Object.keys(initFilterState), { field, reset }, onlyOffice) })] }), jsx("div", { className: "h-[600px]", children: jsx(ClientOnly, { children: jsx(YandexMap, { points: points, className: "h-full" }) }) })] }), filteredItems.map(renderCard), filteredRemoteWorkplaces.map(renderRemoteWorkplaceCard)] }));
5032
+ return (jsxs("div", { className: style('space-y-1', className), children: [jsxs("div", { className: "bg-white", children: [jsxs("div", { className: "p-6xl pb-0", children: [jsx("div", { className: "flex flex-col sm:flex-row gap-xs mb-2xl", children: jsxs(Heading, { headingType: "h2", children: [jsx("span", { suppressHydrationWarning: true, children: title }), lengthItems ? (jsx(Text, { size: "text-h2", color: "text-secondary-text", children: jsx("span", { suppressHydrationWarning: true, children: ` (${lengthItems})` }) })) : null] }) }), descriptionData ? renderDescriptionBlock$1(descriptionData) : null, onlyOffice && renderButtonsGroup(data, activeButton, setActiveButton), jsx("div", { className: style('pb-2xl', filtersVisibleStyles(activeButton)), children: renderFiltrationForm(Object.keys(initFilterState), { field, reset }, onlyOffice) })] }), jsx("div", { className: "h-[600px]", children: jsx(ClientOnly, { children: jsx(YandexMap, { points: points, className: "h-full" }) }) })] }), jsxs(ClientOnly, { children: [filteredItems.map(renderCard), filteredRemoteWorkplaces.map(renderRemoteWorkplaceCard)] })] }));
5026
5033
  });
5027
5034
  const renderButtonsGroup = (data, activeButton, onButtonClick) => {
5028
5035
  const allButtonVersion = getVersion(activeButton === 'all');
@@ -6258,7 +6265,7 @@
6258
6265
  slots: () => [HEADER_SLOT, FOOTER_SLOT, STICKY_FOOTER_SLOT],
6259
6266
  });
6260
6267
 
6261
- const packageVersion = "0.14.358";
6268
+ const packageVersion = "0.14.359";
6262
6269
 
6263
6270
  exports.Blocks = Blocks;
6264
6271
  exports.ContentPage = ContentPage;