@sonordev/site-kit 5.3.2 → 5.4.0

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 (301) hide show
  1. package/README.md +17 -0
  2. package/agent-manifest.json +5 -4
  3. package/dist/AnalyticsProvider-2XIOMRCN.mjs +11 -0
  4. package/dist/{AnalyticsProvider-2XK54UZW.mjs.map → AnalyticsProvider-2XIOMRCN.mjs.map} +1 -1
  5. package/dist/AnalyticsProvider-Y2P2BPOI.js +32 -0
  6. package/dist/{AnalyticsProvider-PM7SOGOS.js.map → AnalyticsProvider-Y2P2BPOI.js.map} +1 -1
  7. package/dist/{BlogViewTracker-3BIUF5TI.js → BlogViewTracker-6EGEDPP3.js} +6 -6
  8. package/dist/{BlogViewTracker-3BIUF5TI.js.map → BlogViewTracker-6EGEDPP3.js.map} +1 -1
  9. package/dist/{BlogViewTracker-KFUDRDQK.mjs → BlogViewTracker-R4YQ76WP.mjs} +5 -5
  10. package/dist/{BlogViewTracker-KFUDRDQK.mjs.map → BlogViewTracker-R4YQ76WP.mjs.map} +1 -1
  11. package/dist/ChatWidget-2OFWPCWF.js +20 -0
  12. package/dist/{ChatWidget-7BYSGNO2.js.map → ChatWidget-2OFWPCWF.js.map} +1 -1
  13. package/dist/ChatWidget-4AOGHYXQ.mjs +11 -0
  14. package/dist/{ChatWidget-4PHZHGG5.mjs.map → ChatWidget-4AOGHYXQ.mjs.map} +1 -1
  15. package/dist/EngageWidget-SFO2XRNG.mjs +9 -0
  16. package/dist/{EngageWidget-D6M6QWEC.mjs.map → EngageWidget-SFO2XRNG.mjs.map} +1 -1
  17. package/dist/EngageWidget-T4KAAD3G.js +18 -0
  18. package/dist/{EngageWidget-Q4ITKTMJ.js.map → EngageWidget-T4KAAD3G.js.map} +1 -1
  19. package/dist/{FileField-PQQDX4IR.mjs → FileField-7DF2SLPF.mjs} +5 -5
  20. package/dist/{FileField-PQQDX4IR.mjs.map → FileField-7DF2SLPF.mjs.map} +1 -1
  21. package/dist/{FileField-YBBIJOCK.js → FileField-CE2XNBBG.js} +6 -6
  22. package/dist/{FileField-YBBIJOCK.js.map → FileField-CE2XNBBG.js.map} +1 -1
  23. package/dist/{FormSpotlight-7TIIWFTP.mjs → FormSpotlight-IRLKSZGV.mjs} +3 -3
  24. package/dist/{FormSpotlight-7TIIWFTP.mjs.map → FormSpotlight-IRLKSZGV.mjs.map} +1 -1
  25. package/dist/{FormSpotlight-WUN24F3P.js → FormSpotlight-ZD3WR5BC.js} +15 -15
  26. package/dist/{FormSpotlight-WUN24F3P.js.map → FormSpotlight-ZD3WR5BC.js.map} +1 -1
  27. package/dist/{FormStage-TFN2GIBO.mjs → FormStage-2OSRNQJL.mjs} +3 -3
  28. package/dist/{FormStage-TFN2GIBO.mjs.map → FormStage-2OSRNQJL.mjs.map} +1 -1
  29. package/dist/{FormStage-CM7OVLUT.js → FormStage-OSPXOUQE.js} +13 -13
  30. package/dist/{FormStage-CM7OVLUT.js.map → FormStage-OSPXOUQE.js.map} +1 -1
  31. package/dist/ManagedForm-5G37EDJT.mjs +14 -0
  32. package/dist/{ManagedForm-ZUXLHEQU.mjs.map → ManagedForm-5G37EDJT.mjs.map} +1 -1
  33. package/dist/ManagedForm-JCHGBBQW.js +23 -0
  34. package/dist/{ManagedForm-N63YGVNY.js.map → ManagedForm-JCHGBBQW.js.map} +1 -1
  35. package/dist/{ManagedNewsletterForm-PIVJTU5L.js → ManagedNewsletterForm-4LVJZROZ.js} +8 -8
  36. package/dist/{ManagedNewsletterForm-PIVJTU5L.js.map → ManagedNewsletterForm-4LVJZROZ.js.map} +1 -1
  37. package/dist/{ManagedNewsletterForm-4AVKTZ2A.mjs → ManagedNewsletterForm-QJSVH23S.mjs} +7 -7
  38. package/dist/{ManagedNewsletterForm-4AVKTZ2A.mjs.map → ManagedNewsletterForm-QJSVH23S.mjs.map} +1 -1
  39. package/dist/{SignalCore-LT4NCPOR.mjs → SignalCore-L6Z3YTCF.mjs} +5 -5
  40. package/dist/{SignalCore-LT4NCPOR.mjs.map → SignalCore-L6Z3YTCF.mjs.map} +1 -1
  41. package/dist/{SignalCore-2M5TISM7.js → SignalCore-NQ4YEOI7.js} +11 -11
  42. package/dist/{SignalCore-2M5TISM7.js.map → SignalCore-NQ4YEOI7.js.map} +1 -1
  43. package/dist/SitemapSync-3LUZWBTB.js +18 -0
  44. package/dist/{SitemapSync-7OBOJG2L.js.map → SitemapSync-3LUZWBTB.js.map} +1 -1
  45. package/dist/SitemapSync-MYSTLJOM.mjs +9 -0
  46. package/dist/{SitemapSync-G3OLECFI.mjs.map → SitemapSync-MYSTLJOM.mjs.map} +1 -1
  47. package/dist/analytics/index.js +9 -9
  48. package/dist/analytics/index.mjs +4 -4
  49. package/dist/blog/AuthorPage.d.ts +1 -1
  50. package/dist/blog/AuthorPage.d.ts.map +1 -1
  51. package/dist/blog/BlogLayout.d.ts +3 -1
  52. package/dist/blog/BlogLayout.d.ts.map +1 -1
  53. package/dist/blog/BlogList.d.ts +3 -1
  54. package/dist/blog/BlogList.d.ts.map +1 -1
  55. package/dist/blog/BlogPost.d.ts +3 -1
  56. package/dist/blog/BlogPost.d.ts.map +1 -1
  57. package/dist/blog/BlogSidebar.d.ts +3 -1
  58. package/dist/blog/BlogSidebar.d.ts.map +1 -1
  59. package/dist/blog/ClusterLandingPage.d.ts +3 -1
  60. package/dist/blog/ClusterLandingPage.d.ts.map +1 -1
  61. package/dist/blog/ClusterNavigation.d.ts +3 -1
  62. package/dist/blog/ClusterNavigation.d.ts.map +1 -1
  63. package/dist/blog/RelatedPosts.d.ts +4 -1
  64. package/dist/blog/RelatedPosts.d.ts.map +1 -1
  65. package/dist/blog/artwork-components.test.d.ts +2 -0
  66. package/dist/blog/artwork-components.test.d.ts.map +1 -0
  67. package/dist/blog/artwork.d.ts +14 -0
  68. package/dist/blog/artwork.d.ts.map +1 -0
  69. package/dist/blog/artwork.test.d.ts +2 -0
  70. package/dist/blog/artwork.test.d.ts.map +1 -0
  71. package/dist/blog/blog-styles.d.ts.map +1 -1
  72. package/dist/blog/blog-tables.d.ts +13 -0
  73. package/dist/blog/blog-tables.d.ts.map +1 -0
  74. package/dist/blog/blog-tables.test.d.ts +2 -0
  75. package/dist/blog/blog-tables.test.d.ts.map +1 -0
  76. package/dist/blog/index.d.ts +3 -0
  77. package/dist/blog/index.d.ts.map +1 -1
  78. package/dist/blog/index.js +52 -30
  79. package/dist/blog/index.js.map +1 -1
  80. package/dist/blog/index.mjs +15 -12
  81. package/dist/blog/index.mjs.map +1 -1
  82. package/dist/blog/publication-render.test.d.ts +2 -0
  83. package/dist/blog/publication-render.test.d.ts.map +1 -0
  84. package/dist/blog/publication-routes.test.d.ts +2 -0
  85. package/dist/blog/publication-routes.test.d.ts.map +1 -0
  86. package/dist/blog/routes.d.ts +40 -0
  87. package/dist/blog/routes.d.ts.map +1 -0
  88. package/dist/blog/server-core.d.ts +28 -21
  89. package/dist/blog/server-core.d.ts.map +1 -1
  90. package/dist/blog/server-ui.d.ts +4 -0
  91. package/dist/blog/server-ui.d.ts.map +1 -1
  92. package/dist/blog/server-ui.js +49 -28
  93. package/dist/blog/server-ui.js.map +1 -1
  94. package/dist/blog/server-ui.mjs +9 -15
  95. package/dist/blog/server-ui.mjs.map +1 -1
  96. package/dist/blog/server.d.ts +28 -21
  97. package/dist/blog/server.d.ts.map +1 -1
  98. package/dist/blog/server.js +71 -42
  99. package/dist/blog/server.mjs +3 -2
  100. package/dist/blog/types.d.ts +8 -1
  101. package/dist/blog/types.d.ts.map +1 -1
  102. package/dist/blog-styles-6EY3BS5Y.js +595 -0
  103. package/dist/blog-styles-6EY3BS5Y.js.map +1 -0
  104. package/dist/blog-styles-7AKRUMV7.mjs +592 -0
  105. package/dist/blog-styles-7AKRUMV7.mjs.map +1 -0
  106. package/dist/blog-tables-DWDEWA3S.js +17 -0
  107. package/dist/blog-tables-DWDEWA3S.js.map +1 -0
  108. package/dist/blog-tables-QGIHOESZ.mjs +4 -0
  109. package/dist/blog-tables-QGIHOESZ.mjs.map +1 -0
  110. package/dist/{chunk-M7FWXEXC.js → chunk-2KIGFOPM.js} +5 -5
  111. package/dist/{chunk-M7FWXEXC.js.map → chunk-2KIGFOPM.js.map} +1 -1
  112. package/dist/chunk-4B4S56WJ.mjs +110 -0
  113. package/dist/chunk-4B4S56WJ.mjs.map +1 -0
  114. package/dist/{chunk-PZXKFHPO.js → chunk-4WQB2ORG.js} +14 -14
  115. package/dist/{chunk-PZXKFHPO.js.map → chunk-4WQB2ORG.js.map} +1 -1
  116. package/dist/{chunk-XQZTOWS3.js → chunk-5737U6DI.js} +14 -14
  117. package/dist/{chunk-XQZTOWS3.js.map → chunk-5737U6DI.js.map} +1 -1
  118. package/dist/{chunk-ZOJ3TLO5.mjs → chunk-6CUBSQMD.mjs} +3 -3
  119. package/dist/{chunk-ZOJ3TLO5.mjs.map → chunk-6CUBSQMD.mjs.map} +1 -1
  120. package/dist/{chunk-JBGRXICL.js → chunk-746RKQHA.js} +75 -70
  121. package/dist/chunk-746RKQHA.js.map +1 -0
  122. package/dist/{chunk-E33HJMRP.js → chunk-7IPSQ5JR.js} +6 -6
  123. package/dist/{chunk-E33HJMRP.js.map → chunk-7IPSQ5JR.js.map} +1 -1
  124. package/dist/{chunk-FDVE56JS.js → chunk-7PLH3H3W.js} +3 -3
  125. package/dist/{chunk-FDVE56JS.js.map → chunk-7PLH3H3W.js.map} +1 -1
  126. package/dist/chunk-7U7C6XRI.mjs +6 -0
  127. package/dist/{chunk-OUERH2T4.mjs.map → chunk-7U7C6XRI.mjs.map} +1 -1
  128. package/dist/{chunk-DZDWBQKA.mjs → chunk-7Y2UPFSY.mjs} +3 -3
  129. package/dist/{chunk-DZDWBQKA.mjs.map → chunk-7Y2UPFSY.mjs.map} +1 -1
  130. package/dist/{chunk-JSLYNYTB.mjs → chunk-A2VLEORI.mjs} +3 -3
  131. package/dist/{chunk-JSLYNYTB.mjs.map → chunk-A2VLEORI.mjs.map} +1 -1
  132. package/dist/{chunk-6QABCGM6.mjs → chunk-ACTLQ2RH.mjs} +3 -3
  133. package/dist/{chunk-6QABCGM6.mjs.map → chunk-ACTLQ2RH.mjs.map} +1 -1
  134. package/dist/{chunk-PEEQMI7U.js → chunk-AWFZIXCT.js} +11 -11
  135. package/dist/{chunk-PEEQMI7U.js.map → chunk-AWFZIXCT.js.map} +1 -1
  136. package/dist/{chunk-HVFXFPUJ.mjs → chunk-B36PTS7B.mjs} +413 -94
  137. package/dist/chunk-B36PTS7B.mjs.map +1 -0
  138. package/dist/{chunk-KPFPSOYS.js → chunk-DPDV5Z4G.js} +12 -12
  139. package/dist/{chunk-KPFPSOYS.js.map → chunk-DPDV5Z4G.js.map} +1 -1
  140. package/dist/{chunk-JTO3K5B7.mjs → chunk-DQM5GR2P.mjs} +4 -4
  141. package/dist/{chunk-JTO3K5B7.mjs.map → chunk-DQM5GR2P.mjs.map} +1 -1
  142. package/dist/{chunk-HDQTZAGE.mjs → chunk-EBMPXFOP.mjs} +3 -3
  143. package/dist/{chunk-HDQTZAGE.mjs.map → chunk-EBMPXFOP.mjs.map} +1 -1
  144. package/dist/{chunk-DHXQBTXE.mjs → chunk-EEQYKMGH.mjs} +75 -70
  145. package/dist/chunk-EEQYKMGH.mjs.map +1 -0
  146. package/dist/{chunk-6VG65AIA.mjs → chunk-G5I3XEQS.mjs} +3 -3
  147. package/dist/{chunk-6VG65AIA.mjs.map → chunk-G5I3XEQS.mjs.map} +1 -1
  148. package/dist/chunk-GHECYDSZ.mjs +134 -0
  149. package/dist/chunk-GHECYDSZ.mjs.map +1 -0
  150. package/dist/{chunk-6AZTRTCG.js → chunk-GQ6CUOLA.js} +15 -15
  151. package/dist/{chunk-6AZTRTCG.js.map → chunk-GQ6CUOLA.js.map} +1 -1
  152. package/dist/{chunk-5BZDHZCN.js → chunk-HBMF3M5F.js} +4 -4
  153. package/dist/{chunk-5BZDHZCN.js.map → chunk-HBMF3M5F.js.map} +1 -1
  154. package/dist/{chunk-AVM4OZHR.mjs → chunk-HDDV63XJ.mjs} +3 -3
  155. package/dist/{chunk-AVM4OZHR.mjs.map → chunk-HDDV63XJ.mjs.map} +1 -1
  156. package/dist/{chunk-KOP3DPIR.mjs → chunk-HH5KGXTK.mjs} +4 -4
  157. package/dist/{chunk-KOP3DPIR.mjs.map → chunk-HH5KGXTK.mjs.map} +1 -1
  158. package/dist/{chunk-CQUA2AUA.mjs → chunk-I4PDSDVE.mjs} +3 -3
  159. package/dist/{chunk-CQUA2AUA.mjs.map → chunk-I4PDSDVE.mjs.map} +1 -1
  160. package/dist/{chunk-757HXAYX.js → chunk-ITFZZ6YT.js} +3 -3
  161. package/dist/{chunk-757HXAYX.js.map → chunk-ITFZZ6YT.js.map} +1 -1
  162. package/dist/{chunk-N3C323NY.mjs → chunk-JJ26JKBJ.mjs} +3 -3
  163. package/dist/{chunk-N3C323NY.mjs.map → chunk-JJ26JKBJ.mjs.map} +1 -1
  164. package/dist/{chunk-Z33JXJTJ.js → chunk-KMGGAL2X.js} +2 -2
  165. package/dist/{chunk-Z33JXJTJ.js.map → chunk-KMGGAL2X.js.map} +1 -1
  166. package/dist/{chunk-TS3N3LGZ.mjs → chunk-KQ3VAOAF.mjs} +4 -4
  167. package/dist/{chunk-TS3N3LGZ.mjs.map → chunk-KQ3VAOAF.mjs.map} +1 -1
  168. package/dist/{chunk-GPNBBUEN.js → chunk-LBS4PRC7.js} +3 -3
  169. package/dist/{chunk-GPNBBUEN.js.map → chunk-LBS4PRC7.js.map} +1 -1
  170. package/dist/chunk-LC7AM4J5.js +118 -0
  171. package/dist/chunk-LC7AM4J5.js.map +1 -0
  172. package/dist/{chunk-4DE2KJ7R.js → chunk-LF4L3ZP5.js} +8 -8
  173. package/dist/{chunk-4DE2KJ7R.js.map → chunk-LF4L3ZP5.js.map} +1 -1
  174. package/dist/{chunk-DYKFC7WY.js → chunk-LHYVFWHL.js} +8 -8
  175. package/dist/{chunk-DYKFC7WY.js.map → chunk-LHYVFWHL.js.map} +1 -1
  176. package/dist/{chunk-67CHHDBL.mjs → chunk-LIYSLNEK.mjs} +96 -644
  177. package/dist/chunk-LIYSLNEK.mjs.map +1 -0
  178. package/dist/{chunk-G3YUSRCL.js → chunk-LUYUFILE.js} +4 -4
  179. package/dist/{chunk-G3YUSRCL.js.map → chunk-LUYUFILE.js.map} +1 -1
  180. package/dist/{chunk-ZKR5AJV5.mjs → chunk-MIFP6QEQ.mjs} +4 -4
  181. package/dist/{chunk-ZKR5AJV5.mjs.map → chunk-MIFP6QEQ.mjs.map} +1 -1
  182. package/dist/{chunk-QZ54OCWD.mjs → chunk-MTANHZKJ.mjs} +7 -7
  183. package/dist/{chunk-QZ54OCWD.mjs.map → chunk-MTANHZKJ.mjs.map} +1 -1
  184. package/dist/{chunk-NSLYY62T.mjs → chunk-N6AVWMIB.mjs} +4 -4
  185. package/dist/{chunk-NSLYY62T.mjs.map → chunk-N6AVWMIB.mjs.map} +1 -1
  186. package/dist/{chunk-OC6PU7U2.mjs → chunk-N6X76QUF.mjs} +3 -3
  187. package/dist/{chunk-OC6PU7U2.mjs.map → chunk-N6X76QUF.mjs.map} +1 -1
  188. package/dist/{chunk-42F5EK24.mjs → chunk-NUH245XK.mjs} +4 -4
  189. package/dist/{chunk-42F5EK24.mjs.map → chunk-NUH245XK.mjs.map} +1 -1
  190. package/dist/{chunk-MANX6422.js → chunk-OXZYP32B.js} +7 -7
  191. package/dist/{chunk-MANX6422.js.map → chunk-OXZYP32B.js.map} +1 -1
  192. package/dist/{chunk-K37JPEQW.js → chunk-QWLL3B6U.js} +15 -15
  193. package/dist/{chunk-K37JPEQW.js.map → chunk-QWLL3B6U.js.map} +1 -1
  194. package/dist/{chunk-AXAIUCSF.mjs → chunk-SJXGIUHP.mjs} +8 -8
  195. package/dist/{chunk-AXAIUCSF.mjs.map → chunk-SJXGIUHP.mjs.map} +1 -1
  196. package/dist/{chunk-4TU246Q4.mjs → chunk-SZHKNGNR.mjs} +2 -2
  197. package/dist/{chunk-4TU246Q4.mjs.map → chunk-SZHKNGNR.mjs.map} +1 -1
  198. package/dist/{chunk-R3LYTIVN.js → chunk-U53KN4SA.js} +5 -5
  199. package/dist/{chunk-R3LYTIVN.js.map → chunk-U53KN4SA.js.map} +1 -1
  200. package/dist/{chunk-Y7SRO7MJ.mjs → chunk-UOLY4NXK.mjs} +3 -3
  201. package/dist/{chunk-Y7SRO7MJ.mjs.map → chunk-UOLY4NXK.mjs.map} +1 -1
  202. package/dist/{chunk-Z7K5AMCE.js → chunk-URVGBWCP.js} +4 -4
  203. package/dist/{chunk-Z7K5AMCE.js.map → chunk-URVGBWCP.js.map} +1 -1
  204. package/dist/chunk-UTOHMK52.js +8 -0
  205. package/dist/{chunk-D37M7MIH.js.map → chunk-UTOHMK52.js.map} +1 -1
  206. package/dist/{chunk-FFJVQWKO.js → chunk-VA36CJRV.js} +4 -4
  207. package/dist/{chunk-FFJVQWKO.js.map → chunk-VA36CJRV.js.map} +1 -1
  208. package/dist/{chunk-A3NNUKFA.js → chunk-VWDT7H6L.js} +96 -644
  209. package/dist/chunk-VWDT7H6L.js.map +1 -0
  210. package/dist/{chunk-OIJ435IZ.js → chunk-WSUQ76LN.js} +18 -18
  211. package/dist/{chunk-OIJ435IZ.js.map → chunk-WSUQ76LN.js.map} +1 -1
  212. package/dist/{chunk-XW5KNCWJ.mjs → chunk-XWF7QPIP.mjs} +3 -3
  213. package/dist/{chunk-XW5KNCWJ.mjs.map → chunk-XWF7QPIP.mjs.map} +1 -1
  214. package/dist/chunk-YQTE32QK.js +137 -0
  215. package/dist/chunk-YQTE32QK.js.map +1 -0
  216. package/dist/{chunk-DVH3JHZ3.mjs → chunk-ZDFVYSKK.mjs} +4 -4
  217. package/dist/{chunk-DVH3JHZ3.mjs.map → chunk-ZDFVYSKK.mjs.map} +1 -1
  218. package/dist/{chunk-GFNXWS3I.js → chunk-ZLPXFV5Y.js} +5 -5
  219. package/dist/{chunk-GFNXWS3I.js.map → chunk-ZLPXFV5Y.js.map} +1 -1
  220. package/dist/{chunk-W23TMUKB.js → chunk-ZY5AVC4P.js} +418 -98
  221. package/dist/chunk-ZY5AVC4P.js.map +1 -0
  222. package/dist/cli/index.js +3 -3
  223. package/dist/cli/index.mjs +1 -1
  224. package/dist/client/index.js +4 -4
  225. package/dist/client/index.mjs +3 -3
  226. package/dist/commerce/index.js +56 -56
  227. package/dist/commerce/index.mjs +5 -5
  228. package/dist/engage/index.js +10 -10
  229. package/dist/engage/index.mjs +7 -7
  230. package/dist/fleet/index.js +8 -8
  231. package/dist/fleet/index.mjs +4 -4
  232. package/dist/forms/index.js +16 -16
  233. package/dist/forms/index.mjs +9 -9
  234. package/dist/forms/server.js +10 -10
  235. package/dist/forms/server.mjs +8 -8
  236. package/dist/forms/static.js +7 -7
  237. package/dist/forms/static.mjs +6 -6
  238. package/dist/images/index.js +11 -11
  239. package/dist/images/index.mjs +4 -4
  240. package/dist/index.js +63 -63
  241. package/dist/index.mjs +9 -9
  242. package/dist/layout/client.js +8 -8
  243. package/dist/layout/client.mjs +7 -7
  244. package/dist/layout/index.js +10 -10
  245. package/dist/layout/index.mjs +8 -8
  246. package/dist/llms/index.js +12 -12
  247. package/dist/llms/index.mjs +2 -2
  248. package/dist/maps/index.js +5 -5
  249. package/dist/maps/index.mjs +3 -3
  250. package/dist/search/index.js +4 -4
  251. package/dist/search/index.mjs +3 -3
  252. package/dist/seo/client.js +5 -5
  253. package/dist/seo/client.mjs +4 -4
  254. package/dist/seo/index.js +5 -5
  255. package/dist/seo/index.mjs +4 -4
  256. package/dist/server/index.js +3 -3
  257. package/dist/server/index.mjs +2 -2
  258. package/dist/shared/version.d.ts +1 -1
  259. package/dist/signal/index.js +11 -11
  260. package/dist/signal/index.mjs +2 -2
  261. package/dist/sitemap/index.js +2 -2
  262. package/dist/sitemap/index.mjs +1 -1
  263. package/dist/sync/BookingWidget.d.ts +0 -23
  264. package/dist/sync/BookingWidget.d.ts.map +1 -1
  265. package/dist/sync/MeetingFormatStep.d.ts +13 -0
  266. package/dist/sync/MeetingFormatStep.d.ts.map +1 -0
  267. package/dist/sync/api.d.ts +9 -10
  268. package/dist/sync/api.d.ts.map +1 -1
  269. package/dist/sync/booking-flow.d.ts +7 -0
  270. package/dist/sync/booking-flow.d.ts.map +1 -0
  271. package/dist/sync/booking-flow.test.d.ts +2 -0
  272. package/dist/sync/booking-flow.test.d.ts.map +1 -0
  273. package/dist/sync/index.d.ts +2 -2
  274. package/dist/sync/index.d.ts.map +1 -1
  275. package/dist/sync/index.js +20 -16
  276. package/dist/sync/index.mjs +4 -4
  277. package/dist/sync/types.d.ts +34 -0
  278. package/dist/sync/types.d.ts.map +1 -1
  279. package/package.json +1 -1
  280. package/dist/AnalyticsProvider-2XK54UZW.mjs +0 -11
  281. package/dist/AnalyticsProvider-PM7SOGOS.js +0 -32
  282. package/dist/ChatWidget-4PHZHGG5.mjs +0 -11
  283. package/dist/ChatWidget-7BYSGNO2.js +0 -20
  284. package/dist/EngageWidget-D6M6QWEC.mjs +0 -9
  285. package/dist/EngageWidget-Q4ITKTMJ.js +0 -18
  286. package/dist/ManagedForm-N63YGVNY.js +0 -23
  287. package/dist/ManagedForm-ZUXLHEQU.mjs +0 -14
  288. package/dist/SitemapSync-7OBOJG2L.js +0 -18
  289. package/dist/SitemapSync-G3OLECFI.mjs +0 -9
  290. package/dist/chunk-67CHHDBL.mjs.map +0 -1
  291. package/dist/chunk-A3NNUKFA.js.map +0 -1
  292. package/dist/chunk-CGCYZJYX.mjs +0 -41
  293. package/dist/chunk-CGCYZJYX.mjs.map +0 -1
  294. package/dist/chunk-D37M7MIH.js +0 -8
  295. package/dist/chunk-DHXQBTXE.mjs.map +0 -1
  296. package/dist/chunk-HVFXFPUJ.mjs.map +0 -1
  297. package/dist/chunk-JBGRXICL.js.map +0 -1
  298. package/dist/chunk-OUERH2T4.mjs +0 -6
  299. package/dist/chunk-TPL2IHFI.js +0 -43
  300. package/dist/chunk-TPL2IHFI.js.map +0 -1
  301. package/dist/chunk-W23TMUKB.js.map +0 -1
@@ -1,3 +1,4 @@
1
+ import { resolveBlogPostUrl, createBlogRoutes, resolveBlogUrl, blogCategorySlug, resolveBlogArtwork } from './chunk-4B4S56WJ.mjs';
1
2
  import { resolveServerApiConfig } from './chunk-6XNEGG5B.mjs';
2
3
 
3
4
  // src/blog/excerpt.ts
@@ -179,15 +180,9 @@ async function getBlogCategories() {
179
180
  return [];
180
181
  }
181
182
  }
182
- function blogPathPrefix(options) {
183
- const raw = (options.blogBasePath ?? "/blog").trim() || "/blog";
184
- const withSlash = raw.startsWith("/") ? raw : `/${raw}`;
185
- return withSlash.replace(/\/$/, "") || "/blog";
186
- }
187
183
  async function generateBlogPostMetadata(slug, options = {}) {
188
184
  const post = await getBlogPost(slug);
189
185
  const { siteName, siteUrl = "", defaultImage, twitterHandle } = options;
190
- const base = blogPathPrefix(options);
191
186
  if (!post) {
192
187
  return {
193
188
  title: "Post Not Found",
@@ -197,7 +192,7 @@ async function generateBlogPostMetadata(slug, options = {}) {
197
192
  const title = post.meta_title || post.title;
198
193
  const description = sanitizeExcerpt(post.meta_description || post.excerpt);
199
194
  const image = post.featured_image || defaultImage;
200
- const url = `${siteUrl}${base}/${post.slug}`;
195
+ const url = resolveBlogPostUrl(post, options);
201
196
  return {
202
197
  title,
203
198
  description,
@@ -226,7 +221,7 @@ async function generateBlogPostMetadata(slug, options = {}) {
226
221
  creator: twitterHandle
227
222
  },
228
223
  alternates: {
229
- canonical: post.canonical_url || url
224
+ canonical: url
230
225
  },
231
226
  other: {
232
227
  "article:published_time": post.published_at || "",
@@ -243,14 +238,14 @@ function generateBlogIndexMetadata(options) {
243
238
  defaultImage,
244
239
  twitterHandle
245
240
  } = options;
246
- const base = blogPathPrefix(options);
241
+ const base = createBlogRoutes(options).index;
247
242
  return {
248
243
  title,
249
244
  description,
250
245
  openGraph: {
251
246
  title,
252
247
  description,
253
- url: `${siteUrl}${base}`,
248
+ url: resolveBlogUrl(base, siteUrl),
254
249
  siteName,
255
250
  type: "website",
256
251
  images: defaultImage ? [{ url: defaultImage }] : void 0
@@ -265,7 +260,7 @@ function generateBlogIndexMetadata(options) {
265
260
  };
266
261
  }
267
262
  function generateBlogCategoryMetadata(categoryName, options = {}) {
268
- const { siteName, siteUrl = "", defaultImage, blogBasePath = "/blog" } = options;
263
+ const { siteName, siteUrl = "", defaultImage } = options;
269
264
  const title = `${categoryName} - Blog`;
270
265
  const description = `Browse all posts in ${categoryName}.`;
271
266
  const slug = options.categorySlug ?? categoryName.toLowerCase().trim().replace(/[^a-z0-9]+/g, "-").replace(/^-+|-+$/g, "");
@@ -275,43 +270,52 @@ function generateBlogCategoryMetadata(categoryName, options = {}) {
275
270
  openGraph: {
276
271
  title,
277
272
  description,
278
- url: `${siteUrl}${blogBasePath}/category/${slug}`,
273
+ url: resolveBlogUrl(createBlogRoutes(options).category(slug), siteUrl),
279
274
  siteName,
280
275
  type: "website",
281
276
  images: defaultImage ? [{ url: defaultImage }] : void 0
282
277
  }
283
278
  };
284
279
  }
285
- async function generateBlogStaticParams() {
286
- const slugs = await getAllBlogSlugs();
287
- return slugs.map((s) => ({ slug: s.slug }));
280
+ async function generateBlogStaticParams(options = {}) {
281
+ const posts = await getBlogRouteEntries(options);
282
+ return posts.map((post) => {
283
+ const category = blogCategorySlug(post.category || options.category);
284
+ return { slug: post.slug, ...options.includeCategoryInPath && category ? { category } : {} };
285
+ });
288
286
  }
289
287
  async function generateCategoryStaticParams() {
290
288
  const categories = await getBlogCategories();
291
289
  return categories.map((c) => ({ category: c.slug }));
292
290
  }
293
- async function generateBlogSitemap(siteUrl) {
294
- const slugs = await getAllBlogSlugs();
295
- const categories = await getBlogCategories();
296
- const clusters = await getTopicClusters();
291
+ async function getBlogRouteEntries(options, withCanonicals = false) {
292
+ if (withCanonicals || options.includeCategoryInPath || options.postPath) {
293
+ return (await getAllBlogPosts({ maxPosts: Infinity })).map((post) => ({ ...post, last_modified: post.updated_at }));
294
+ }
295
+ return getAllBlogSlugs();
296
+ }
297
+ async function generateBlogSitemap(siteUrl, options = {}) {
298
+ const slugs = await getBlogRouteEntries(options, true);
299
+ const categories = options.includeCategories === false ? [] : await getBlogCategories();
300
+ const clusters = options.includeClusters === false ? [] : await getTopicClusters();
297
301
  const entries = [
298
302
  // Blog index
299
303
  {
300
- url: `${siteUrl}/blog`,
304
+ url: resolveBlogUrl(createBlogRoutes(options).index, siteUrl),
301
305
  changeFrequency: "daily",
302
306
  priority: 0.8
303
307
  }
304
308
  ];
305
309
  clusters.forEach((cluster) => {
306
310
  entries.push({
307
- url: `${siteUrl}/blog/cluster/${cluster.cluster_slug}`,
311
+ url: resolveBlogUrl(createBlogRoutes(options).cluster(cluster.cluster_slug), siteUrl),
308
312
  changeFrequency: "weekly",
309
313
  priority: 0.8
310
314
  });
311
315
  });
312
316
  categories.forEach((cat) => {
313
317
  entries.push({
314
- url: `${siteUrl}/blog/category/${cat.slug}`,
318
+ url: resolveBlogUrl(createBlogRoutes(options).category(cat.slug), siteUrl),
315
319
  changeFrequency: "weekly",
316
320
  priority: 0.6
317
321
  });
@@ -319,7 +323,7 @@ async function generateBlogSitemap(siteUrl) {
319
323
  slugs.forEach((post) => {
320
324
  const isPillar = post.article_type === "pillar";
321
325
  entries.push({
322
- url: `${siteUrl}/blog/${post.slug}`,
326
+ url: resolveBlogPostUrl(post, { ...options, siteUrl }),
323
327
  lastModified: post.last_modified ? new Date(post.last_modified) : void 0,
324
328
  changeFrequency: isPillar ? "weekly" : "monthly",
325
329
  priority: isPillar ? 0.9 : 0.7
@@ -334,7 +338,7 @@ function generateBlogPostSchema(post, options = {}) {
334
338
  "@type": "BlogPosting",
335
339
  headline: post.title,
336
340
  description: sanitizeExcerpt(post.excerpt || post.meta_description),
337
- url: `${siteUrl}/blog/${post.slug}`,
341
+ url: resolveBlogPostUrl(post, { ...options, siteUrl }),
338
342
  datePublished: post.published_at,
339
343
  dateModified: post.updated_at,
340
344
  author: {
@@ -342,9 +346,8 @@ function generateBlogPostSchema(post, options = {}) {
342
346
  name: typeof post.author === "string" ? post.author : post.author?.name
343
347
  }
344
348
  };
345
- if (post.featured_image) {
346
- schema.image = post.featured_image;
347
- }
349
+ const articleImage = resolveBlogArtwork(post, "article").src;
350
+ if (articleImage) schema.image = articleImage;
348
351
  if (siteName || logoUrl) {
349
352
  schema.publisher = {
350
353
  "@type": "Organization",
@@ -377,7 +380,7 @@ function generateBlogListSchema(options = {}) {
377
380
  "@type": "Blog",
378
381
  name: siteName ? `${siteName} Blog` : "Blog",
379
382
  description: description || "Our latest articles and insights.",
380
- url: `${siteUrl}/blog`
383
+ url: resolveBlogUrl(createBlogRoutes(options).index, siteUrl)
381
384
  };
382
385
  }
383
386
  function generateFaqSchema(faqItems) {
@@ -402,7 +405,7 @@ function generateHowToSchema(post, steps, options = {}) {
402
405
  "@type": "HowTo",
403
406
  name: post.title,
404
407
  description: sanitizeExcerpt(post.excerpt || post.meta_description),
405
- image: post.featured_image,
408
+ image: resolveBlogArtwork(post, "article").src,
406
409
  totalTime: post.reading_time ? `PT${post.reading_time}M` : void 0,
407
410
  step: steps.map((step, index) => ({
408
411
  "@type": "HowToStep",
@@ -410,12 +413,14 @@ function generateHowToSchema(post, steps, options = {}) {
410
413
  name: step.name,
411
414
  text: step.text,
412
415
  image: step.image,
413
- url: step.url || `${siteUrl}/blog/${post.slug}#step-${index + 1}`
416
+ url: step.url || `${resolveBlogPostUrl(post, { ...options, siteUrl }).split("#")[0]}#step-${index + 1}`
414
417
  }))
415
418
  };
416
419
  }
417
420
  var FEED_MAX_POSTS = 100;
418
- async function getAllBlogPosts() {
421
+ async function getAllBlogPosts(options = {}) {
422
+ const maxPosts = options.maxPosts ?? FEED_MAX_POSTS;
423
+ if (!(maxPosts > 0)) return [];
419
424
  const config = resolveServerApiConfig();
420
425
  if (!config) {
421
426
  console.warn("[Blog] No API key configured");
@@ -425,7 +430,7 @@ async function getAllBlogPosts() {
425
430
  const posts = [];
426
431
  let page = 1;
427
432
  try {
428
- while (posts.length < FEED_MAX_POSTS) {
433
+ while (posts.length < maxPosts) {
429
434
  const response = await fetch(
430
435
  `${apiUrl}/public/blog/posts?per_page=50&page=${page}`,
431
436
  {
@@ -435,14 +440,15 @@ async function getAllBlogPosts() {
435
440
  );
436
441
  if (!response.ok) break;
437
442
  const data = await response.json();
438
- posts.push(...data.posts || []);
439
- if (!data.pagination?.has_next) break;
443
+ const batch = data.posts || [];
444
+ posts.push(...batch);
445
+ if (!batch.length || !data.pagination?.has_next) break;
440
446
  page += 1;
441
447
  }
442
448
  } catch (error) {
443
449
  console.error("[Blog] Error fetching posts for RSS:", error);
444
450
  }
445
- return posts.slice(0, FEED_MAX_POSTS);
451
+ return posts.slice(0, maxPosts);
446
452
  }
447
453
  function escapeXml(text) {
448
454
  return text.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&apos;");
@@ -474,7 +480,7 @@ async function generateRssFeed(options) {
474
480
  <lastBuildDate>${now}</lastBuildDate>
475
481
  <pubDate>${now}</pubDate>
476
482
  <ttl>${ttl}</ttl>
477
- <atom:link href="${siteUrl}/blog/rss.xml" rel="self" type="application/rss+xml"/>
483
+ <atom:link href="${escapeXml(resolveBlogUrl(createBlogRoutes(options).rss, siteUrl))}" rel="self" type="application/rss+xml"/>
478
484
  `;
479
485
  if (copyright) {
480
486
  rss += ` <copyright>${escapeXml(copyright)}</copyright>
@@ -497,15 +503,15 @@ async function generateRssFeed(options) {
497
503
  `;
498
504
  }
499
505
  for (const post of posts) {
500
- const postUrl = `${siteUrl}/blog/${post.slug}`;
506
+ const postUrl = resolveBlogPostUrl(post, { ...options, siteUrl });
501
507
  const pubDate = post.published_at ? new Date(post.published_at).toUTCString() : now;
502
508
  const author = typeof post.author === "string" ? post.author : post.author?.name || "Unknown";
503
509
  const fullContent = post.content_html || post.content || "";
504
510
  const description2 = sanitizeExcerpt(post.excerpt, 300) || stripHtml(fullContent).substring(0, 300) + "...";
505
511
  rss += ` <item>
506
512
  <title>${escapeXml(post.title)}</title>
507
- <link>${postUrl}</link>
508
- <guid isPermaLink="true">${postUrl}</guid>
513
+ <link>${escapeXml(postUrl)}</link>
514
+ <guid isPermaLink="true">${escapeXml(postUrl)}</guid>
509
515
  <description>${escapeXml(description2)}</description>
510
516
  <content:encoded><![CDATA[${fullContent}]]></content:encoded>
511
517
  <pubDate>${pubDate}</pubDate>
@@ -547,9 +553,9 @@ async function generateAtomFeed(options) {
547
553
  <feed xmlns="http://www.w3.org/2005/Atom">
548
554
  <title>${escapeXml(siteName)}</title>
549
555
  <subtitle>${escapeXml(description)}</subtitle>
550
- <link href="${siteUrl}/blog/feed.xml" rel="self"/>
556
+ <link href="${escapeXml(resolveBlogUrl(createBlogRoutes(options).atom, siteUrl))}" rel="self"/>
551
557
  <link href="${siteUrl}"/>
552
- <id>${siteUrl}/blog</id>
558
+ <id>${escapeXml(resolveBlogUrl(createBlogRoutes(options).index, siteUrl))}</id>
553
559
  <updated>${now}</updated>
554
560
  `;
555
561
  if (managingEditor) {
@@ -559,15 +565,15 @@ async function generateAtomFeed(options) {
559
565
  `;
560
566
  }
561
567
  for (const post of posts) {
562
- const postUrl = `${siteUrl}/blog/${post.slug}`;
568
+ const postUrl = resolveBlogPostUrl(post, { ...options, siteUrl });
563
569
  const updated = post.updated_at || post.published_at || now;
564
570
  const published = post.published_at || now;
565
571
  const author = typeof post.author === "string" ? post.author : post.author?.name || "Unknown";
566
572
  const fullContent = post.content_html || post.content || "";
567
573
  atom += ` <entry>
568
574
  <title>${escapeXml(post.title)}</title>
569
- <link href="${postUrl}"/>
570
- <id>${postUrl}</id>
575
+ <link href="${escapeXml(postUrl)}"/>
576
+ <id>${escapeXml(postUrl)}</id>
571
577
  <updated>${new Date(updated).toISOString()}</updated>
572
578
  <published>${new Date(published).toISOString()}</published>
573
579
  <author>
@@ -698,7 +704,7 @@ async function getPostsByCategory(categorySlug) {
698
704
  }
699
705
  }
700
706
  function generateClusterItemListSchema(cluster, options = {}) {
701
- const { siteUrl = "", basePath = "/blog" } = options;
707
+ const { siteUrl = "" } = options;
702
708
  return {
703
709
  "@context": "https://schema.org",
704
710
  "@type": "ItemList",
@@ -709,19 +715,19 @@ function generateClusterItemListSchema(cluster, options = {}) {
709
715
  "@type": "ListItem",
710
716
  position: i + 1,
711
717
  name: post.title,
712
- url: `${siteUrl}${basePath}/${post.slug}`
718
+ url: resolveBlogPostUrl(post, { ...options, siteUrl })
713
719
  }))
714
720
  };
715
721
  }
716
722
  function generateClusterArticleSchema(post, cluster, options = {}) {
717
- const { siteUrl = "", basePath = "/blog", siteName, logoUrl } = options;
723
+ const { siteUrl = "", siteName, logoUrl } = options;
718
724
  const isPillar = post.article_type === "pillar";
719
725
  const schema = {
720
726
  "@context": "https://schema.org",
721
727
  "@type": "Article",
722
728
  headline: post.title,
723
729
  description: sanitizeExcerpt(post.excerpt || post.meta_description),
724
- url: `${siteUrl}${basePath}/${post.slug}`,
730
+ url: resolveBlogPostUrl(post, { ...options, siteUrl }),
725
731
  datePublished: post.published_at,
726
732
  dateModified: post.updated_at,
727
733
  author: {
@@ -730,9 +736,8 @@ function generateClusterArticleSchema(post, cluster, options = {}) {
730
736
  },
731
737
  keywords: post.focus_keyphrase || post.keywords
732
738
  };
733
- if (post.featured_image) {
734
- schema.image = post.featured_image;
735
- }
739
+ const articleImage = resolveBlogArtwork(post, "article").src;
740
+ if (articleImage) schema.image = articleImage;
736
741
  if (siteName || logoUrl) {
737
742
  schema.publisher = {
738
743
  "@type": "Organization",
@@ -744,13 +749,13 @@ function generateClusterArticleSchema(post, cluster, options = {}) {
744
749
  schema.hasPart = cluster.supports.map((s) => ({
745
750
  "@type": "Article",
746
751
  headline: s.title,
747
- url: `${siteUrl}${basePath}/${s.slug}`
752
+ url: resolveBlogPostUrl(s, { ...options, siteUrl })
748
753
  }));
749
754
  } else if (!isPillar && cluster.pillar) {
750
755
  schema.isPartOf = {
751
756
  "@type": "Article",
752
757
  headline: cluster.pillar.title,
753
- url: `${siteUrl}${basePath}/${cluster.pillar.slug}`
758
+ url: resolveBlogPostUrl(cluster.pillar, { ...options, siteUrl })
754
759
  };
755
760
  }
756
761
  if (cluster.geo_target) {
@@ -762,21 +767,21 @@ function generateClusterArticleSchema(post, cluster, options = {}) {
762
767
  return schema;
763
768
  }
764
769
  function generateClusterBreadcrumbSchema(post, cluster, options = {}) {
765
- const { siteUrl = "", siteName = "Home", basePath = "/blog" } = options;
770
+ const { siteUrl = "", siteName = "Home" } = options;
766
771
  const items = [
767
772
  { "@type": "ListItem", position: 1, name: siteName, item: siteUrl },
768
- { "@type": "ListItem", position: 2, name: "Blog", item: `${siteUrl}${basePath}` },
773
+ { "@type": "ListItem", position: 2, name: "Blog", item: resolveBlogUrl(createBlogRoutes(options).index, siteUrl) },
769
774
  {
770
775
  "@type": "ListItem",
771
776
  position: 3,
772
777
  name: cluster.cluster_name,
773
- item: `${siteUrl}${basePath}/cluster/${cluster.cluster_slug}`
778
+ item: resolveBlogUrl(createBlogRoutes(options).cluster(cluster.cluster_slug), siteUrl)
774
779
  },
775
780
  {
776
781
  "@type": "ListItem",
777
782
  position: 4,
778
783
  name: post.title,
779
- item: `${siteUrl}${basePath}/${post.slug}`
784
+ item: resolveBlogPostUrl(post, { ...options, siteUrl })
780
785
  }
781
786
  ];
782
787
  return {
@@ -786,32 +791,32 @@ function generateClusterBreadcrumbSchema(post, cluster, options = {}) {
786
791
  };
787
792
  }
788
793
  function generateClusterLandingSchema(cluster, options = {}) {
789
- const { siteUrl = "", basePath = "/blog", siteName } = options;
794
+ const { siteUrl = "", siteName } = options;
790
795
  return {
791
796
  "@context": "https://schema.org",
792
797
  "@type": "CollectionPage",
793
798
  name: cluster.cluster_name,
794
799
  description: `Comprehensive guide to ${cluster.core_topic}`,
795
- url: `${siteUrl}${basePath}/cluster/${cluster.cluster_slug}`,
800
+ url: resolveBlogUrl(createBlogRoutes(options).cluster(cluster.cluster_slug), siteUrl),
796
801
  ...siteName && {
797
802
  isPartOf: { "@type": "WebSite", name: siteName, url: siteUrl }
798
803
  },
799
804
  mainEntity: cluster.pillar ? {
800
805
  "@type": "Article",
801
806
  headline: cluster.pillar.title,
802
- url: `${siteUrl}${basePath}/${cluster.pillar.slug}`
807
+ url: resolveBlogPostUrl(cluster.pillar, { ...options, siteUrl })
803
808
  } : void 0,
804
809
  hasPart: cluster.supports.map((s) => ({
805
810
  "@type": "Article",
806
811
  headline: s.title,
807
- url: `${siteUrl}${basePath}/${s.slug}`
812
+ url: resolveBlogPostUrl(s, { ...options, siteUrl })
808
813
  }))
809
814
  };
810
815
  }
811
816
  async function generateClusterPageMetadata(clusterSlug, options = {}) {
812
817
  const cluster = await getTopicCluster(clusterSlug);
813
818
  if (!cluster) return {};
814
- const { siteName = "", siteUrl = "", basePath = "/blog" } = options;
819
+ const { siteName = "", siteUrl = "" } = options;
815
820
  const title = `${cluster.cluster_name}${siteName ? ` | ${siteName}` : ""}`;
816
821
  const description = `Comprehensive guide to ${cluster.core_topic}. ${cluster.article_count} articles covering everything you need to know.`;
817
822
  return {
@@ -820,7 +825,7 @@ async function generateClusterPageMetadata(clusterSlug, options = {}) {
820
825
  openGraph: {
821
826
  title,
822
827
  description,
823
- url: `${siteUrl}${basePath}/cluster/${cluster.cluster_slug}`,
828
+ url: resolveBlogUrl(createBlogRoutes(options).cluster(cluster.cluster_slug), siteUrl),
824
829
  type: "website"
825
830
  }
826
831
  };
@@ -866,7 +871,7 @@ function generateBreadcrumbSchema(post, options = {}) {
866
871
  "@type": "ListItem",
867
872
  position: 2,
868
873
  name: "Blog",
869
- item: `${siteUrl}/blog`
874
+ item: resolveBlogUrl(createBlogRoutes(options).index, siteUrl)
870
875
  }
871
876
  ];
872
877
  if (post.category) {
@@ -876,20 +881,20 @@ function generateBreadcrumbSchema(post, options = {}) {
876
881
  "@type": "ListItem",
877
882
  position: 3,
878
883
  name: categoryName,
879
- item: `${siteUrl}/blog/category/${categorySlug}`
884
+ item: resolveBlogUrl(createBlogRoutes(options).category(categorySlug), siteUrl)
880
885
  });
881
886
  items.push({
882
887
  "@type": "ListItem",
883
888
  position: 4,
884
889
  name: post.title,
885
- item: `${siteUrl}/blog/${post.slug}`
890
+ item: resolveBlogPostUrl(post, { ...options, siteUrl })
886
891
  });
887
892
  } else {
888
893
  items.push({
889
894
  "@type": "ListItem",
890
895
  position: 3,
891
896
  name: post.title,
892
- item: `${siteUrl}/blog/${post.slug}`
897
+ item: resolveBlogPostUrl(post, { ...options, siteUrl })
893
898
  });
894
899
  }
895
900
  return {
@@ -998,7 +1003,7 @@ function generateAuthorPageMetadata(author, options = {}) {
998
1003
  const { siteUrl = "", siteName } = options;
999
1004
  const title = `${author.name}${author.title ? ` - ${author.title}` : ""}`;
1000
1005
  const description = author.short_bio || author.bio || `Articles by ${author.name}`;
1001
- const url = `${siteUrl}/blog/author/${author.slug}`;
1006
+ const url = resolveBlogUrl(createBlogRoutes(options).author(author.slug), siteUrl);
1002
1007
  return {
1003
1008
  title,
1004
1009
  description,
@@ -1023,5 +1028,5 @@ function generateAuthorPageMetadata(author, options = {}) {
1023
1028
  }
1024
1029
 
1025
1030
  export { SEO_LIMITS, generateAllBlogSchemas, generateAtomFeed, generateAuthorPageMetadata, generateAuthorStaticParams, generateBlogCategoryMetadata, generateBlogIndexMetadata, generateBlogListSchema, generateBlogPostMetadata, generateBlogPostSchema, generateBlogSitemap, generateBlogStaticParams, generateBreadcrumbSchema, generateCategoryStaticParams, generateClusterArticleSchema, generateClusterBreadcrumbSchema, generateClusterItemListSchema, generateClusterLandingSchema, generateClusterPageMetadata, generateFaqSchema, generateHowToSchema, generateRssFeed, getAllAuthorSlugs, getAllBlogPosts, getAllBlogSlugs, getAuthorBySlug, getAuthorPosts, getBlogCategories, getBlogPost, getClusterNavigation, getPostsByCategory, getRelatedInsights, getTopicCluster, getTopicClusters, identifyTopicClusters, sanitizeExcerpt, validateBlogPostSeo, validateMetaDescription, validateSeoTitle };
1026
- //# sourceMappingURL=chunk-DHXQBTXE.mjs.map
1027
- //# sourceMappingURL=chunk-DHXQBTXE.mjs.map
1031
+ //# sourceMappingURL=chunk-EEQYKMGH.mjs.map
1032
+ //# sourceMappingURL=chunk-EEQYKMGH.mjs.map