@redneckz/wildless-cms-uni-blocks 0.6.42 → 0.6.44

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 (292) hide show
  1. package/bin/migration-scripts/0.6.34.js +2 -0
  2. package/bin/migration-scripts/0.6.43.js +29 -0
  3. package/bundle/ProjectSettings.d.ts +2 -0
  4. package/bundle/blocks.schema.json +1 -1
  5. package/bundle/bundle.umd.js +122 -91
  6. package/bundle/bundle.umd.min.js +1 -1
  7. package/bundle/components/ProductTile/ProductTileContent.d.ts +24 -2
  8. package/bundle/components/ProductTile/renderAdditionalDescription.d.ts +4 -0
  9. package/bundle/components/ProductTile/renderBenefit.d.ts +4 -0
  10. package/bundle/components/ProductTile/renderImage.d.ts +3 -0
  11. package/bundle/content-page-repository/transformImg.d.ts +1 -1
  12. package/bundle/services/BlockRouter/BlockRouter.d.ts +1 -1
  13. package/bundle/services/sitemap/checkIsHrefSameOrigin.d.ts +2 -4
  14. package/bundle/ui-kit/MarkdownText/MarkdownText.d.ts +2 -0
  15. package/bundle/ui-kit/MarkdownText/MarkdownTextProps.d.ts +6 -0
  16. package/bundle/utils/normalizeURLPath.d.ts +1 -0
  17. package/bundle/utils/url.d.ts +1 -0
  18. package/dist/ProjectSettings.d.ts +2 -0
  19. package/dist/ProjectSettings.js +5 -0
  20. package/dist/ProjectSettings.js.map +1 -1
  21. package/dist/api/LikeAPI.js +2 -2
  22. package/dist/api/LikeAPI.js.map +1 -1
  23. package/dist/components/Header/Header.js +1 -6
  24. package/dist/components/Header/Header.js.map +1 -1
  25. package/dist/components/ProductTile/ProductTile.js +9 -22
  26. package/dist/components/ProductTile/ProductTile.js.map +1 -1
  27. package/dist/components/ProductTile/ProductTileContent.d.ts +24 -2
  28. package/dist/components/ProductTile/renderAdditionalDescription.d.ts +4 -0
  29. package/dist/components/ProductTile/renderAdditionalDescription.js +18 -0
  30. package/dist/components/ProductTile/renderAdditionalDescription.js.map +1 -0
  31. package/dist/components/ProductTile/renderBenefit.d.ts +4 -0
  32. package/dist/components/ProductTile/renderBenefit.js +32 -0
  33. package/dist/components/ProductTile/renderBenefit.js.map +1 -0
  34. package/dist/components/ProductTile/renderImage.d.ts +3 -0
  35. package/dist/components/ProductTile/renderImage.js +12 -0
  36. package/dist/components/ProductTile/renderImage.js.map +1 -0
  37. package/dist/components/TextBlock/TextBlock.js +13 -28
  38. package/dist/components/TextBlock/TextBlock.js.map +1 -1
  39. package/dist/content-page-repository/transformImg.d.ts +1 -1
  40. package/dist/content-page-repository/transformImg.js +4 -10
  41. package/dist/content-page-repository/transformImg.js.map +1 -1
  42. package/dist/content-page-repository/transformMarkdown.js +3 -3
  43. package/dist/content-page-repository/transformMarkdown.js.map +1 -1
  44. package/dist/hooks/useLink.js +3 -5
  45. package/dist/hooks/useLink.js.map +1 -1
  46. package/dist/hooks/useLocation.js +11 -5
  47. package/dist/hooks/useLocation.js.map +1 -1
  48. package/dist/services/BlockRouter/BlockRouter.d.ts +1 -1
  49. package/dist/services/BlockRouter/BlockRouter.js.map +1 -1
  50. package/dist/services/sitemap/checkIsHrefSameOrigin.d.ts +2 -4
  51. package/dist/services/sitemap/checkIsHrefSameOrigin.js +1 -1
  52. package/dist/services/sitemap/checkIsHrefSameOrigin.js.map +1 -1
  53. package/dist/services/sitemap/isHrefActive.js +2 -3
  54. package/dist/services/sitemap/isHrefActive.js.map +1 -1
  55. package/dist/setup-fixture.js +3 -3
  56. package/dist/setup-fixture.js.map +1 -1
  57. package/dist/ui-kit/MarkdownText/MarkdownText.d.ts +2 -0
  58. package/dist/ui-kit/MarkdownText/MarkdownText.js +9 -0
  59. package/dist/ui-kit/MarkdownText/MarkdownText.js.map +1 -0
  60. package/dist/ui-kit/MarkdownText/MarkdownTextProps.d.ts +6 -0
  61. package/dist/ui-kit/MarkdownText/MarkdownTextProps.js +2 -0
  62. package/dist/ui-kit/MarkdownText/MarkdownTextProps.js.map +1 -0
  63. package/dist/ui-kit/Text/Text.js +1 -5
  64. package/dist/ui-kit/Text/Text.js.map +1 -1
  65. package/dist/utils/normalizeURLPath.d.ts +1 -0
  66. package/dist/utils/normalizeURLPath.js +12 -0
  67. package/dist/utils/normalizeURLPath.js.map +1 -0
  68. package/dist/utils/url.d.ts +1 -0
  69. package/dist/utils/url.js +9 -1
  70. package/dist/utils/url.js.map +1 -1
  71. package/dist/wlc.json +3 -1
  72. package/lib/ProjectSettings.d.ts +2 -0
  73. package/lib/ProjectSettings.js +5 -0
  74. package/lib/ProjectSettings.js.map +1 -1
  75. package/lib/api/LikeAPI.js +2 -2
  76. package/lib/api/LikeAPI.js.map +1 -1
  77. package/lib/common.css +1 -1
  78. package/lib/components/Header/Header.js +1 -6
  79. package/lib/components/Header/Header.js.map +1 -1
  80. package/lib/components/ProductTile/ProductTile.js +10 -23
  81. package/lib/components/ProductTile/ProductTile.js.map +1 -1
  82. package/lib/components/ProductTile/ProductTileContent.d.ts +24 -2
  83. package/lib/components/ProductTile/renderAdditionalDescription.d.ts +4 -0
  84. package/lib/components/ProductTile/renderAdditionalDescription.js +15 -0
  85. package/lib/components/ProductTile/renderAdditionalDescription.js.map +1 -0
  86. package/lib/components/ProductTile/renderBenefit.d.ts +4 -0
  87. package/lib/components/ProductTile/renderBenefit.js +29 -0
  88. package/lib/components/ProductTile/renderBenefit.js.map +1 -0
  89. package/lib/components/ProductTile/renderImage.d.ts +3 -0
  90. package/lib/components/ProductTile/renderImage.js +9 -0
  91. package/lib/components/ProductTile/renderImage.js.map +1 -0
  92. package/lib/components/TextBlock/TextBlock.js +13 -28
  93. package/lib/components/TextBlock/TextBlock.js.map +1 -1
  94. package/lib/content-page-repository/transformImg.d.ts +1 -1
  95. package/lib/content-page-repository/transformImg.js +4 -10
  96. package/lib/content-page-repository/transformImg.js.map +1 -1
  97. package/lib/content-page-repository/transformMarkdown.js +3 -3
  98. package/lib/content-page-repository/transformMarkdown.js.map +1 -1
  99. package/lib/hooks/useLink.js +3 -5
  100. package/lib/hooks/useLink.js.map +1 -1
  101. package/lib/hooks/useLocation.js +11 -5
  102. package/lib/hooks/useLocation.js.map +1 -1
  103. package/lib/services/BlockRouter/BlockRouter.d.ts +1 -1
  104. package/lib/services/BlockRouter/BlockRouter.js.map +1 -1
  105. package/lib/services/sitemap/checkIsHrefSameOrigin.d.ts +2 -4
  106. package/lib/services/sitemap/checkIsHrefSameOrigin.js +1 -1
  107. package/lib/services/sitemap/checkIsHrefSameOrigin.js.map +1 -1
  108. package/lib/services/sitemap/isHrefActive.js +3 -4
  109. package/lib/services/sitemap/isHrefActive.js.map +1 -1
  110. package/lib/setup-fixture.js +3 -3
  111. package/lib/setup-fixture.js.map +1 -1
  112. package/lib/ui-kit/MarkdownText/MarkdownText.d.ts +2 -0
  113. package/lib/ui-kit/MarkdownText/MarkdownText.js +7 -0
  114. package/lib/ui-kit/MarkdownText/MarkdownText.js.map +1 -0
  115. package/lib/ui-kit/MarkdownText/MarkdownTextProps.d.ts +6 -0
  116. package/lib/ui-kit/MarkdownText/MarkdownTextProps.js +2 -0
  117. package/lib/ui-kit/MarkdownText/MarkdownTextProps.js.map +1 -0
  118. package/lib/ui-kit/Text/Text.js +1 -5
  119. package/lib/ui-kit/Text/Text.js.map +1 -1
  120. package/lib/utils/normalizeURLPath.d.ts +1 -0
  121. package/lib/utils/normalizeURLPath.js +9 -0
  122. package/lib/utils/normalizeURLPath.js.map +1 -0
  123. package/lib/utils/url.d.ts +1 -0
  124. package/lib/utils/url.js +7 -0
  125. package/lib/utils/url.js.map +1 -1
  126. package/lib/wlc.json +3 -1
  127. package/mobile/bundle/ProjectSettings.d.ts +2 -0
  128. package/mobile/bundle/bundle.umd.js +39 -21
  129. package/mobile/bundle/bundle.umd.min.js +1 -1
  130. package/mobile/bundle/components/ProductTile/ProductTileContent.d.ts +24 -2
  131. package/mobile/bundle/components/ProductTile/renderAdditionalDescription.d.ts +4 -0
  132. package/mobile/bundle/components/ProductTile/renderBenefit.d.ts +4 -0
  133. package/mobile/bundle/components/ProductTile/renderImage.d.ts +3 -0
  134. package/mobile/bundle/content-page-repository/transformImg.d.ts +1 -1
  135. package/mobile/bundle/services/BlockRouter/BlockRouter.d.ts +1 -1
  136. package/mobile/bundle/services/sitemap/checkIsHrefSameOrigin.d.ts +2 -4
  137. package/mobile/bundle/ui-kit/MarkdownText/MarkdownText.d.ts +2 -0
  138. package/mobile/bundle/ui-kit/MarkdownText/MarkdownTextProps.d.ts +6 -0
  139. package/mobile/bundle/utils/normalizeURLPath.d.ts +1 -0
  140. package/mobile/bundle/utils/url.d.ts +1 -0
  141. package/mobile/dist/ProjectSettings.d.ts +2 -0
  142. package/mobile/dist/ProjectSettings.js +5 -0
  143. package/mobile/dist/ProjectSettings.js.map +1 -1
  144. package/mobile/dist/api/LikeAPI.js +2 -2
  145. package/mobile/dist/api/LikeAPI.js.map +1 -1
  146. package/mobile/dist/components/ProductTile/ProductTile.js +9 -22
  147. package/mobile/dist/components/ProductTile/ProductTile.js.map +1 -1
  148. package/mobile/dist/components/ProductTile/ProductTileContent.d.ts +24 -2
  149. package/mobile/dist/components/ProductTile/renderAdditionalDescription.d.ts +4 -0
  150. package/mobile/dist/components/ProductTile/renderAdditionalDescription.js +18 -0
  151. package/mobile/dist/components/ProductTile/renderAdditionalDescription.js.map +1 -0
  152. package/mobile/dist/components/ProductTile/renderBenefit.d.ts +4 -0
  153. package/mobile/dist/components/ProductTile/renderBenefit.js +32 -0
  154. package/mobile/dist/components/ProductTile/renderBenefit.js.map +1 -0
  155. package/mobile/dist/components/ProductTile/renderImage.d.ts +3 -0
  156. package/mobile/dist/components/ProductTile/renderImage.js +12 -0
  157. package/mobile/dist/components/ProductTile/renderImage.js.map +1 -0
  158. package/mobile/dist/content-page-repository/transformImg.d.ts +1 -1
  159. package/mobile/dist/content-page-repository/transformImg.js +4 -10
  160. package/mobile/dist/content-page-repository/transformImg.js.map +1 -1
  161. package/mobile/dist/content-page-repository/transformMarkdown.js +3 -3
  162. package/mobile/dist/content-page-repository/transformMarkdown.js.map +1 -1
  163. package/mobile/dist/hooks/useLink.js +3 -5
  164. package/mobile/dist/hooks/useLink.js.map +1 -1
  165. package/mobile/dist/hooks/useLocation.js +11 -5
  166. package/mobile/dist/hooks/useLocation.js.map +1 -1
  167. package/mobile/dist/services/BlockRouter/BlockRouter.d.ts +1 -1
  168. package/mobile/dist/services/BlockRouter/BlockRouter.js.map +1 -1
  169. package/mobile/dist/services/sitemap/checkIsHrefSameOrigin.d.ts +2 -4
  170. package/mobile/dist/services/sitemap/checkIsHrefSameOrigin.js +1 -1
  171. package/mobile/dist/services/sitemap/checkIsHrefSameOrigin.js.map +1 -1
  172. package/mobile/dist/services/sitemap/isHrefActive.js +2 -3
  173. package/mobile/dist/services/sitemap/isHrefActive.js.map +1 -1
  174. package/mobile/dist/setup-fixture.js +3 -3
  175. package/mobile/dist/setup-fixture.js.map +1 -1
  176. package/mobile/dist/ui-kit/MarkdownText/MarkdownText.d.ts +2 -0
  177. package/mobile/dist/ui-kit/MarkdownText/MarkdownText.js +9 -0
  178. package/mobile/dist/ui-kit/MarkdownText/MarkdownText.js.map +1 -0
  179. package/mobile/dist/ui-kit/MarkdownText/MarkdownTextProps.d.ts +6 -0
  180. package/mobile/dist/ui-kit/MarkdownText/MarkdownTextProps.js +2 -0
  181. package/mobile/dist/ui-kit/MarkdownText/MarkdownTextProps.js.map +1 -0
  182. package/mobile/dist/ui-kit/Text/Text.js +1 -5
  183. package/mobile/dist/ui-kit/Text/Text.js.map +1 -1
  184. package/mobile/dist/utils/normalizeURLPath.d.ts +1 -0
  185. package/mobile/dist/utils/normalizeURLPath.js +12 -0
  186. package/mobile/dist/utils/normalizeURLPath.js.map +1 -0
  187. package/mobile/dist/utils/url.d.ts +1 -0
  188. package/mobile/dist/utils/url.js +9 -1
  189. package/mobile/dist/utils/url.js.map +1 -1
  190. package/mobile/dist/wlc.json +3 -1
  191. package/mobile/lib/ProjectSettings.d.ts +2 -0
  192. package/mobile/lib/ProjectSettings.js +5 -0
  193. package/mobile/lib/ProjectSettings.js.map +1 -1
  194. package/mobile/lib/api/LikeAPI.js +2 -2
  195. package/mobile/lib/api/LikeAPI.js.map +1 -1
  196. package/mobile/lib/components/ProductTile/ProductTile.js +10 -23
  197. package/mobile/lib/components/ProductTile/ProductTile.js.map +1 -1
  198. package/mobile/lib/components/ProductTile/ProductTileContent.d.ts +24 -2
  199. package/mobile/lib/components/ProductTile/renderAdditionalDescription.d.ts +4 -0
  200. package/mobile/lib/components/ProductTile/renderAdditionalDescription.js +15 -0
  201. package/mobile/lib/components/ProductTile/renderAdditionalDescription.js.map +1 -0
  202. package/mobile/lib/components/ProductTile/renderBenefit.d.ts +4 -0
  203. package/mobile/lib/components/ProductTile/renderBenefit.js +29 -0
  204. package/mobile/lib/components/ProductTile/renderBenefit.js.map +1 -0
  205. package/mobile/lib/components/ProductTile/renderImage.d.ts +3 -0
  206. package/mobile/lib/components/ProductTile/renderImage.js +9 -0
  207. package/mobile/lib/components/ProductTile/renderImage.js.map +1 -0
  208. package/mobile/lib/content-page-repository/transformImg.d.ts +1 -1
  209. package/mobile/lib/content-page-repository/transformImg.js +4 -10
  210. package/mobile/lib/content-page-repository/transformImg.js.map +1 -1
  211. package/mobile/lib/content-page-repository/transformMarkdown.js +3 -3
  212. package/mobile/lib/content-page-repository/transformMarkdown.js.map +1 -1
  213. package/mobile/lib/hooks/useLink.js +3 -5
  214. package/mobile/lib/hooks/useLink.js.map +1 -1
  215. package/mobile/lib/hooks/useLocation.js +11 -5
  216. package/mobile/lib/hooks/useLocation.js.map +1 -1
  217. package/mobile/lib/services/BlockRouter/BlockRouter.d.ts +1 -1
  218. package/mobile/lib/services/BlockRouter/BlockRouter.js.map +1 -1
  219. package/mobile/lib/services/sitemap/checkIsHrefSameOrigin.d.ts +2 -4
  220. package/mobile/lib/services/sitemap/checkIsHrefSameOrigin.js +1 -1
  221. package/mobile/lib/services/sitemap/checkIsHrefSameOrigin.js.map +1 -1
  222. package/mobile/lib/services/sitemap/isHrefActive.js +3 -4
  223. package/mobile/lib/services/sitemap/isHrefActive.js.map +1 -1
  224. package/mobile/lib/setup-fixture.js +3 -3
  225. package/mobile/lib/setup-fixture.js.map +1 -1
  226. package/mobile/lib/ui-kit/MarkdownText/MarkdownText.d.ts +2 -0
  227. package/mobile/lib/ui-kit/MarkdownText/MarkdownText.js +7 -0
  228. package/mobile/lib/ui-kit/MarkdownText/MarkdownText.js.map +1 -0
  229. package/mobile/lib/ui-kit/MarkdownText/MarkdownTextProps.d.ts +6 -0
  230. package/mobile/lib/ui-kit/MarkdownText/MarkdownTextProps.js +2 -0
  231. package/mobile/lib/ui-kit/MarkdownText/MarkdownTextProps.js.map +1 -0
  232. package/mobile/lib/ui-kit/Text/Text.js +1 -5
  233. package/mobile/lib/ui-kit/Text/Text.js.map +1 -1
  234. package/mobile/lib/utils/normalizeURLPath.d.ts +1 -0
  235. package/mobile/lib/utils/normalizeURLPath.js +9 -0
  236. package/mobile/lib/utils/normalizeURLPath.js.map +1 -0
  237. package/mobile/lib/utils/url.d.ts +1 -0
  238. package/mobile/lib/utils/url.js +7 -0
  239. package/mobile/lib/utils/url.js.map +1 -1
  240. package/mobile/lib/wlc.json +3 -1
  241. package/mobile/src/ProjectSettings.ts +6 -0
  242. package/mobile/src/api/LikeAPI.ts +2 -2
  243. package/mobile/src/common.css +50 -0
  244. package/mobile/src/components/ProductTile/ProductTile.example.json +3 -0
  245. package/mobile/src/components/ProductTile/ProductTile.tsx +13 -44
  246. package/mobile/src/components/ProductTile/ProductTile.ui.json +14 -1
  247. package/mobile/src/components/ProductTile/ProductTileContent.ts +26 -2
  248. package/mobile/src/components/ProductTile/renderAdditionalDescription.tsx +30 -0
  249. package/mobile/src/components/ProductTile/renderBenefit.tsx +39 -0
  250. package/mobile/src/components/ProductTile/renderImage.tsx +15 -0
  251. package/mobile/src/content-page-repository/transformImg.ts +6 -14
  252. package/mobile/src/content-page-repository/transformMarkdown.ts +3 -3
  253. package/mobile/src/hooks/useLink.ts +6 -7
  254. package/mobile/src/hooks/useLocation.ts +12 -6
  255. package/mobile/src/services/BlockRouter/BlockRouter.ts +1 -1
  256. package/mobile/src/services/sitemap/checkIsHrefSameOrigin.ts +5 -4
  257. package/mobile/src/services/sitemap/isHrefActive.ts +7 -4
  258. package/mobile/src/setup-fixture.ts +3 -3
  259. package/mobile/src/ui-kit/MarkdownText/MarkdownText.tsx +8 -0
  260. package/mobile/src/ui-kit/MarkdownText/MarkdownTextProps.ts +6 -0
  261. package/mobile/src/ui-kit/Text/Text.tsx +5 -7
  262. package/mobile/src/utils/normalizeURLPath.ts +10 -0
  263. package/mobile/src/utils/url.ts +10 -0
  264. package/mobile/src/wlc.json +3 -1
  265. package/package.json +1 -1
  266. package/src/ProjectSettings.ts +6 -0
  267. package/src/api/LikeAPI.ts +2 -2
  268. package/src/common.css +50 -0
  269. package/src/components/Header/Header.tsx +2 -10
  270. package/src/components/ProductTile/ProductTile.example.json +3 -0
  271. package/src/components/ProductTile/ProductTile.fixture.tsx +11 -4
  272. package/src/components/ProductTile/ProductTile.tsx +13 -44
  273. package/src/components/ProductTile/ProductTile.ui.json +14 -1
  274. package/src/components/ProductTile/ProductTileContent.ts +26 -2
  275. package/src/components/ProductTile/renderAdditionalDescription.tsx +30 -0
  276. package/src/components/ProductTile/renderBenefit.tsx +39 -0
  277. package/src/components/ProductTile/renderImage.tsx +15 -0
  278. package/src/components/TextBlock/TextBlock.tsx +49 -41
  279. package/src/content-page-repository/transformImg.ts +6 -14
  280. package/src/content-page-repository/transformMarkdown.ts +3 -3
  281. package/src/hooks/useLink.ts +6 -7
  282. package/src/hooks/useLocation.ts +12 -6
  283. package/src/services/BlockRouter/BlockRouter.ts +1 -1
  284. package/src/services/sitemap/checkIsHrefSameOrigin.ts +5 -4
  285. package/src/services/sitemap/isHrefActive.ts +7 -4
  286. package/src/setup-fixture.ts +3 -3
  287. package/src/ui-kit/MarkdownText/MarkdownText.tsx +8 -0
  288. package/src/ui-kit/MarkdownText/MarkdownTextProps.ts +6 -0
  289. package/src/ui-kit/Text/Text.tsx +5 -7
  290. package/src/utils/normalizeURLPath.ts +10 -0
  291. package/src/utils/url.ts +10 -0
  292. package/src/wlc.json +3 -1
@@ -1,4 +1,4 @@
1
- import type { LinkProps } from '../model/LinkProps';
1
+ import type { LinkProps, Target } from '../model/LinkProps';
2
2
  import { useBlockRouter } from '../services/BlockRouter/useBlockRouter';
3
3
  import { adjustHref } from '../utils/adjustHref';
4
4
  import { isHash, isURL } from '../utils/url';
@@ -25,11 +25,7 @@ export function useLink(): <L extends Partial<LinkProps & ClickHandler>>(
25
25
  onClick: handlerDecorator((ev?: { preventDefault: () => void }) => {
26
26
  props.onClick && props.onClick(ev);
27
27
 
28
- const isLocalHref = href && !isURL(href);
29
- const isLocalTarget = !props.target || props.target === '_self';
30
-
31
- if (!isLocalHref || !isLocalTarget) {
32
- // Default handle
28
+ if (isRemoteHref(href, props.target)) {
33
29
  return;
34
30
  }
35
31
 
@@ -37,9 +33,12 @@ export function useLink(): <L extends Partial<LinkProps & ClickHandler>>(
37
33
  if (isHash(href)) {
38
34
  blockRouter.goto(href);
39
35
  } else {
40
- router.push(href);
36
+ href && router.push(href);
41
37
  }
42
38
  }, props),
43
39
  };
44
40
  };
45
41
  }
42
+
43
+ const isRemoteHref = (href?: string, target?: Target) =>
44
+ isURL(href) || (target && target !== '_self') || href?.startsWith('/');
@@ -15,14 +15,10 @@ interface LocationStorageData {
15
15
  region: RegionData;
16
16
  }
17
17
 
18
- const localStorageLocation = globalThis?.localStorage.getItem('location');
19
- const currentLocation: LocationStorageData | null = localStorageLocation
20
- ? JSON.parse(localStorageLocation)
21
- : null;
22
-
23
18
  export function useLocation(
24
19
  defaultLocation: string,
25
20
  ): [RegionData, (newLocation: RegionData) => void] {
21
+ const currentLocation = getLocalStorageLocation();
26
22
  const [location, setLocation] = useState<RegionData>(
27
23
  currentLocation?.region ?? { name: defaultLocation },
28
24
  );
@@ -38,7 +34,7 @@ export function useLocation(
38
34
 
39
35
  const onChangeLocation = useCallback(
40
36
  (region: RegionData) => {
41
- globalThis?.localStorage.setItem('location', JSON.stringify({ manual: true, region }));
37
+ globalThis.localStorage?.setItem('location', JSON.stringify({ manual: true, region }));
42
38
  setLocation(region);
43
39
  },
44
40
  [setLocation],
@@ -46,3 +42,13 @@ export function useLocation(
46
42
 
47
43
  return [location, onChangeLocation];
48
44
  }
45
+
46
+ const getLocalStorageLocation = (): LocationStorageData | null => {
47
+ const localStorageLocation = globalThis.localStorage?.getItem('location');
48
+
49
+ try {
50
+ return localStorageLocation ? JSON.parse(localStorageLocation) : null;
51
+ } catch (_) {
52
+ return null;
53
+ }
54
+ };
@@ -29,7 +29,7 @@ export class BlockRouter {
29
29
  }
30
30
  }
31
31
 
32
- goto(rawAnchor: string) {
32
+ goto(rawAnchor?: string) {
33
33
  const anchor = normalizeAnchor(rawAnchor);
34
34
  if (anchor) {
35
35
  this.push(anchor);
@@ -1,6 +1,7 @@
1
+ import type { Router } from '../../hooks/useRouter';
1
2
  import { getOrigin } from '../../utils/url';
2
3
 
3
- export const checkIsHrefSameOrigin = (
4
- href: string | undefined,
5
- router: { pathname?: string; href?: string },
6
- ) => getOrigin(href) === getOrigin(router.href);
4
+ export const checkIsHrefSameOrigin = (href: string | undefined, router: Router) =>
5
+ [getOrigin(href), getOrigin(router.href)].every(
6
+ (link, _, arr) => Boolean(link) && link === arr[0],
7
+ );
@@ -1,10 +1,13 @@
1
- import { isURL, withoutQuery } from '../../utils/url';
1
+ import { normalizeURLPath } from '../../utils/normalizeURLPath';
2
+ import { getPathname, isURL, withoutQuery } from '../../utils/url';
2
3
 
3
4
  export const isHrefActive = (
4
5
  href: string | undefined,
5
6
  router: { pathname?: string; href?: string },
6
7
  cmp: (targetHref: string, baseHref: string) => boolean = (targetHref, baseHref) =>
7
8
  baseHref.startsWith(targetHref),
8
- ) => {
9
- return cmp(withoutQuery(href), withoutQuery(isURL(href) ? router.href : router.pathname));
10
- };
9
+ ) =>
10
+ cmp(
11
+ withoutQuery(normalizeURLPath(href)),
12
+ withoutQuery(isURL(href) ? router.href : getPathname(router.href)),
13
+ );
@@ -8,11 +8,11 @@ import wlc from './wlc.json';
8
8
  projectSettings.setup(wlc);
9
9
 
10
10
  useRouter.setup(() => {
11
- const [href, setHref] = useState<string>(globalThis.location.href);
11
+ const [, setHref] = useState<string>(globalThis.location.href);
12
12
 
13
13
  return {
14
- href: href,
15
- pathname: '/credits',
14
+ href: `${globalThis.location.origin}${projectSettings.BASE_PATH}cards-credit`, //for header active links
15
+ pathname: '/cards-credit',
16
16
  query: {},
17
17
  push: (url: string) => {
18
18
  globalThis.history.pushState(null, '', url);
@@ -0,0 +1,8 @@
1
+ import { JSX } from '@redneckz/uni-jsx';
2
+ import type { MarkdownTextProps } from './MarkdownTextProps';
3
+
4
+ export const MarkdownText = JSX<MarkdownTextProps>((props) => {
5
+ const { md = '' } = props;
6
+
7
+ return <div className="md-container" dangerouslySetInnerHTML={{ __html: md }} />;
8
+ });
@@ -0,0 +1,6 @@
1
+ type Markdown = string;
2
+
3
+ export interface MarkdownTextProps {
4
+ /** @title Текст */
5
+ md?: Markdown;
6
+ }
@@ -8,10 +8,8 @@ interface TextProps {
8
8
  font?: FontWeight;
9
9
  }
10
10
 
11
- export const Text = JSX<TextProps>((props) => {
12
- const { size = '', color = '', align = '', font = '', children } = props;
13
-
14
- const textClasses = `font-sans ${size} ${color} ${align} ${font}`;
15
-
16
- return <span className={textClasses}>{children}</span>;
17
- });
11
+ export const Text = JSX<TextProps>(({ size, color, align, font, children }) => (
12
+ <span className={['font-sans', size, color, align, font].filter(Boolean).join(' ')}>
13
+ {children}
14
+ </span>
15
+ ));
@@ -0,0 +1,10 @@
1
+ import { projectSettings } from '../ProjectSettings';
2
+ import { isURL } from './url';
3
+
4
+ export const normalizeURLPath = (href?: string) => {
5
+ if (isURL(href) || href?.startsWith('/')) {
6
+ return href;
7
+ }
8
+
9
+ return `${projectSettings.BASE_PATH || ''}${href}`;
10
+ };
package/src/utils/url.ts CHANGED
@@ -15,6 +15,16 @@ export const getOrigin = (href?: string) => {
15
15
  return endOfOrigin !== -1 ? url.substring(0, endOfOrigin) : url;
16
16
  };
17
17
 
18
+ export const getPathname = (href?: string) => {
19
+ if (!href || !isURL(href)) {
20
+ return undefined;
21
+ }
22
+
23
+ const url = new URL(href);
24
+
25
+ return url.pathname;
26
+ };
27
+
18
28
  export const getHash = (href?: string) => {
19
29
  if (!href || !isURL(href)) {
20
30
  return undefined;
package/src/wlc.json CHANGED
@@ -1,5 +1,7 @@
1
1
  {
2
2
  "PROD_BRANCH": "master",
3
3
  "FORCED_DRAFT_FLOW": false,
4
- "YANDEX_MAP_API_KEY": "f4b40c1e-1891-45f2-b307-90c481af210b"
4
+ "YANDEX_MAP_API_KEY": "f4b40c1e-1891-45f2-b307-90c481af210b",
5
+ "BASE_PATH": "/natural/",
6
+ "SITEMAP": "sayt-rshb"
5
7
  }