@sonordev/site-kit 5.6.0 → 5.7.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 (316) hide show
  1. package/agent-manifest.json +11 -3
  2. package/dist/AnalyticsProvider-EWF7JN2X.mjs +11 -0
  3. package/dist/{AnalyticsProvider-FVQIYSLY.mjs.map → AnalyticsProvider-EWF7JN2X.mjs.map} +1 -1
  4. package/dist/AnalyticsProvider-GJFG7YXA.js +32 -0
  5. package/dist/{AnalyticsProvider-6PXC7UDP.js.map → AnalyticsProvider-GJFG7YXA.js.map} +1 -1
  6. package/dist/{BlogViewTracker-S4HSRCW7.js → BlogViewTracker-2D3IJPJK.js} +6 -6
  7. package/dist/{BlogViewTracker-S4HSRCW7.js.map → BlogViewTracker-2D3IJPJK.js.map} +1 -1
  8. package/dist/{BlogViewTracker-ZUGLBOVI.mjs → BlogViewTracker-CKYG6MYU.mjs} +5 -5
  9. package/dist/{BlogViewTracker-ZUGLBOVI.mjs.map → BlogViewTracker-CKYG6MYU.mjs.map} +1 -1
  10. package/dist/ChatWidget-AWP6GBVW.js +22 -0
  11. package/dist/{ChatWidget-2TQWCXWP.js.map → ChatWidget-AWP6GBVW.js.map} +1 -1
  12. package/dist/ChatWidget-Z5QXDZP3.mjs +13 -0
  13. package/dist/{ChatWidget-DG52ZIE6.mjs.map → ChatWidget-Z5QXDZP3.mjs.map} +1 -1
  14. package/dist/EngageWidget-BKEY5TPO.mjs +12 -0
  15. package/dist/{EngageWidget-2VUJADIU.mjs.map → EngageWidget-BKEY5TPO.mjs.map} +1 -1
  16. package/dist/EngageWidget-VT4DYXVO.js +21 -0
  17. package/dist/{EngageWidget-Z7RC2INM.js.map → EngageWidget-VT4DYXVO.js.map} +1 -1
  18. package/dist/{FileField-UOQHL25J.js → FileField-62ZWZMQK.js} +6 -6
  19. package/dist/{FileField-UOQHL25J.js.map → FileField-62ZWZMQK.js.map} +1 -1
  20. package/dist/{FileField-FSQ7W3A5.mjs → FileField-JJN5QKDL.mjs} +5 -5
  21. package/dist/{FileField-FSQ7W3A5.mjs.map → FileField-JJN5QKDL.mjs.map} +1 -1
  22. package/dist/{FormSpotlight-RHL5FWM2.mjs → FormSpotlight-OTFB6QM5.mjs} +3 -3
  23. package/dist/{FormSpotlight-RHL5FWM2.mjs.map → FormSpotlight-OTFB6QM5.mjs.map} +1 -1
  24. package/dist/{FormSpotlight-TED32NHP.js → FormSpotlight-URS4XRS7.js} +15 -15
  25. package/dist/{FormSpotlight-TED32NHP.js.map → FormSpotlight-URS4XRS7.js.map} +1 -1
  26. package/dist/{FormStage-PFEBKHGY.js → FormStage-FVKMIV73.js} +13 -13
  27. package/dist/{FormStage-PFEBKHGY.js.map → FormStage-FVKMIV73.js.map} +1 -1
  28. package/dist/{FormStage-DINIRFOX.mjs → FormStage-VPGOCMAV.mjs} +3 -3
  29. package/dist/{FormStage-DINIRFOX.mjs.map → FormStage-VPGOCMAV.mjs.map} +1 -1
  30. package/dist/ManagedForm-CXVDJMHN.mjs +14 -0
  31. package/dist/{ManagedForm-545YAUFC.mjs.map → ManagedForm-CXVDJMHN.mjs.map} +1 -1
  32. package/dist/ManagedForm-FGNTDGED.js +23 -0
  33. package/dist/{ManagedForm-43WLCUAK.js.map → ManagedForm-FGNTDGED.js.map} +1 -1
  34. package/dist/{ManagedNewsletterForm-I3QN57HB.js → ManagedNewsletterForm-3O5L44AZ.js} +8 -8
  35. package/dist/{ManagedNewsletterForm-I3QN57HB.js.map → ManagedNewsletterForm-3O5L44AZ.js.map} +1 -1
  36. package/dist/{ManagedNewsletterForm-ZPY5RRKX.mjs → ManagedNewsletterForm-SQYB4BZU.mjs} +7 -7
  37. package/dist/{ManagedNewsletterForm-ZPY5RRKX.mjs.map → ManagedNewsletterForm-SQYB4BZU.mjs.map} +1 -1
  38. package/dist/{SignalCore-EEH5IM4U.mjs → SignalCore-M2PKKIGH.mjs} +5 -5
  39. package/dist/{SignalCore-EEH5IM4U.mjs.map → SignalCore-M2PKKIGH.mjs.map} +1 -1
  40. package/dist/{SignalCore-M4AXIMV4.js → SignalCore-RFBOBNLQ.js} +11 -11
  41. package/dist/{SignalCore-M4AXIMV4.js.map → SignalCore-RFBOBNLQ.js.map} +1 -1
  42. package/dist/SitemapSync-4OVMIIGC.mjs +9 -0
  43. package/dist/{SitemapSync-46G7LVZS.mjs.map → SitemapSync-4OVMIIGC.mjs.map} +1 -1
  44. package/dist/SitemapSync-RK3SQ4M2.js +18 -0
  45. package/dist/{SitemapSync-XK4JKCS7.js.map → SitemapSync-RK3SQ4M2.js.map} +1 -1
  46. package/dist/analytics/index.js +9 -9
  47. package/dist/analytics/index.mjs +4 -4
  48. package/dist/blog/index.js +20 -20
  49. package/dist/blog/index.mjs +3 -3
  50. package/dist/blog/metadata-images.test.d.ts +2 -0
  51. package/dist/blog/metadata-images.test.d.ts.map +1 -0
  52. package/dist/blog/server-core.d.ts +31 -6
  53. package/dist/blog/server-core.d.ts.map +1 -1
  54. package/dist/blog/server-ui.js +16 -16
  55. package/dist/blog/server-ui.mjs +3 -3
  56. package/dist/blog/server.d.ts +31 -6
  57. package/dist/blog/server.d.ts.map +1 -1
  58. package/dist/blog/server.js +40 -40
  59. package/dist/blog/server.mjs +1 -1
  60. package/dist/blog/static-params.test.d.ts +2 -0
  61. package/dist/blog/static-params.test.d.ts.map +1 -0
  62. package/dist/{chunk-XR32C47O.js → chunk-2N27LCZH.js} +5 -5
  63. package/dist/{chunk-XR32C47O.js.map → chunk-2N27LCZH.js.map} +1 -1
  64. package/dist/{chunk-GPLCPMVD.mjs → chunk-3CLP35TT.mjs} +7 -7
  65. package/dist/{chunk-GPLCPMVD.mjs.map → chunk-3CLP35TT.mjs.map} +1 -1
  66. package/dist/{chunk-S4RC6VAQ.js → chunk-3S5JN6KL.js} +6 -6
  67. package/dist/{chunk-S4RC6VAQ.js.map → chunk-3S5JN6KL.js.map} +1 -1
  68. package/dist/chunk-3UC6JETG.js +32 -0
  69. package/dist/chunk-3UC6JETG.js.map +1 -0
  70. package/dist/{chunk-B64AZC6P.js → chunk-3YQILJKJ.js} +14 -14
  71. package/dist/{chunk-B64AZC6P.js.map → chunk-3YQILJKJ.js.map} +1 -1
  72. package/dist/{chunk-7C7XO5HX.mjs → chunk-47XQWV4S.mjs} +3 -3
  73. package/dist/{chunk-7C7XO5HX.mjs.map → chunk-47XQWV4S.mjs.map} +1 -1
  74. package/dist/{chunk-CQS5ZYI6.mjs → chunk-4A5V73SR.mjs} +8 -8
  75. package/dist/{chunk-CQS5ZYI6.mjs.map → chunk-4A5V73SR.mjs.map} +1 -1
  76. package/dist/{chunk-53KMRZT7.js → chunk-4UVM7E2W.js} +3 -3
  77. package/dist/{chunk-53KMRZT7.js.map → chunk-4UVM7E2W.js.map} +1 -1
  78. package/dist/{chunk-YYN4YZYZ.js → chunk-4WBTM6YE.js} +4 -4
  79. package/dist/{chunk-YYN4YZYZ.js.map → chunk-4WBTM6YE.js.map} +1 -1
  80. package/dist/{chunk-VHZ4LHQT.mjs → chunk-57AFHENV.mjs} +3 -3
  81. package/dist/{chunk-VHZ4LHQT.mjs.map → chunk-57AFHENV.mjs.map} +1 -1
  82. package/dist/chunk-5TXXTYXL.js +8 -0
  83. package/dist/{chunk-KSL3WA2I.js.map → chunk-5TXXTYXL.js.map} +1 -1
  84. package/dist/{chunk-RU54J2PY.mjs → chunk-6FC5Q4KU.mjs} +3 -3
  85. package/dist/{chunk-RU54J2PY.mjs.map → chunk-6FC5Q4KU.mjs.map} +1 -1
  86. package/dist/{chunk-AHZR4VGY.mjs → chunk-7ZX6TO6C.mjs} +4 -4
  87. package/dist/{chunk-AHZR4VGY.mjs.map → chunk-7ZX6TO6C.mjs.map} +1 -1
  88. package/dist/{chunk-K2V3ZW36.mjs → chunk-ABZGEHTC.mjs} +3 -3
  89. package/dist/{chunk-K2V3ZW36.mjs.map → chunk-ABZGEHTC.mjs.map} +1 -1
  90. package/dist/chunk-AWK57R5S.mjs +29 -0
  91. package/dist/chunk-AWK57R5S.mjs.map +1 -0
  92. package/dist/{chunk-EEQYKMGH.mjs → chunk-BFJOZ3MU.mjs} +23 -17
  93. package/dist/chunk-BFJOZ3MU.mjs.map +1 -0
  94. package/dist/{chunk-KY6M76JW.js → chunk-BFM5PEFV.js} +3 -3
  95. package/dist/{chunk-KY6M76JW.js.map → chunk-BFM5PEFV.js.map} +1 -1
  96. package/dist/{chunk-JNABXCLY.mjs → chunk-BQGEVMIR.mjs} +4 -4
  97. package/dist/{chunk-JNABXCLY.mjs.map → chunk-BQGEVMIR.mjs.map} +1 -1
  98. package/dist/{chunk-5KIEZHVK.mjs → chunk-BUJWXSYZ.mjs} +4 -4
  99. package/dist/{chunk-5KIEZHVK.mjs.map → chunk-BUJWXSYZ.mjs.map} +1 -1
  100. package/dist/{chunk-B6O7D5U4.js → chunk-C4PZ2R3B.js} +10 -10
  101. package/dist/{chunk-B6O7D5U4.js.map → chunk-C4PZ2R3B.js.map} +1 -1
  102. package/dist/{chunk-5UFDHGFE.mjs → chunk-C563AHZZ.mjs} +3 -3
  103. package/dist/{chunk-5UFDHGFE.mjs.map → chunk-C563AHZZ.mjs.map} +1 -1
  104. package/dist/{chunk-746RKQHA.js → chunk-CPY74A4F.js} +23 -17
  105. package/dist/chunk-CPY74A4F.js.map +1 -0
  106. package/dist/{chunk-N2PGTPWN.js → chunk-D553G64G.js} +11 -11
  107. package/dist/{chunk-N2PGTPWN.js.map → chunk-D553G64G.js.map} +1 -1
  108. package/dist/{chunk-KPKQKFT4.js → chunk-DOB37PV4.js} +3 -3
  109. package/dist/{chunk-KPKQKFT4.js.map → chunk-DOB37PV4.js.map} +1 -1
  110. package/dist/{chunk-H3D3ZGOJ.js → chunk-ELQ4SRRR.js} +15 -15
  111. package/dist/{chunk-H3D3ZGOJ.js.map → chunk-ELQ4SRRR.js.map} +1 -1
  112. package/dist/{chunk-X5TCH7VZ.js → chunk-F3AKYZOH.js} +3 -3
  113. package/dist/{chunk-X5TCH7VZ.js.map → chunk-F3AKYZOH.js.map} +1 -1
  114. package/dist/{chunk-LCSYJXIO.mjs → chunk-FBDHKYNF.mjs} +3 -3
  115. package/dist/{chunk-LCSYJXIO.mjs.map → chunk-FBDHKYNF.mjs.map} +1 -1
  116. package/dist/{chunk-JE5DWAE6.js → chunk-FEWWGEQF.js} +4 -4
  117. package/dist/{chunk-JE5DWAE6.js.map → chunk-FEWWGEQF.js.map} +1 -1
  118. package/dist/{chunk-NZSFOZJV.js → chunk-FO4KGPGF.js} +2 -2
  119. package/dist/{chunk-NZSFOZJV.js.map → chunk-FO4KGPGF.js.map} +1 -1
  120. package/dist/{chunk-OC7AO7XS.js → chunk-H65OX263.js} +15 -15
  121. package/dist/{chunk-OC7AO7XS.js.map → chunk-H65OX263.js.map} +1 -1
  122. package/dist/{chunk-46BMNWE6.js → chunk-H6YVT3BL.js} +2 -2
  123. package/dist/{chunk-46BMNWE6.js.map → chunk-H6YVT3BL.js.map} +1 -1
  124. package/dist/{chunk-GJ6NOLGC.mjs → chunk-HBN4A2N4.mjs} +3 -3
  125. package/dist/{chunk-GJ6NOLGC.mjs.map → chunk-HBN4A2N4.mjs.map} +1 -1
  126. package/dist/{chunk-AJQI3WTN.mjs → chunk-ILNCUSXW.mjs} +2 -2
  127. package/dist/{chunk-AJQI3WTN.mjs.map → chunk-ILNCUSXW.mjs.map} +1 -1
  128. package/dist/{chunk-473WDGQZ.mjs → chunk-JNAXDFC4.mjs} +3 -3
  129. package/dist/{chunk-473WDGQZ.mjs.map → chunk-JNAXDFC4.mjs.map} +1 -1
  130. package/dist/{chunk-7AUDKXY5.mjs → chunk-JQ7M6CVL.mjs} +3 -3
  131. package/dist/{chunk-7AUDKXY5.mjs.map → chunk-JQ7M6CVL.mjs.map} +1 -1
  132. package/dist/{chunk-BZLIOT7Q.js → chunk-JTCQJKJE.js} +18 -18
  133. package/dist/{chunk-BZLIOT7Q.js.map → chunk-JTCQJKJE.js.map} +1 -1
  134. package/dist/{chunk-OA7KKOAK.mjs → chunk-JTF4DFUF.mjs} +3 -3
  135. package/dist/{chunk-OA7KKOAK.mjs.map → chunk-JTF4DFUF.mjs.map} +1 -1
  136. package/dist/{chunk-5KIO6FXE.js → chunk-KXGD4E7G.js} +5 -5
  137. package/dist/{chunk-5KIO6FXE.js.map → chunk-KXGD4E7G.js.map} +1 -1
  138. package/dist/chunk-L4V6TKMJ.mjs +94 -0
  139. package/dist/chunk-L4V6TKMJ.mjs.map +1 -0
  140. package/dist/{chunk-DHIWR7CG.js → chunk-L7ACQ6PC.js} +4 -4
  141. package/dist/{chunk-DHIWR7CG.js.map → chunk-L7ACQ6PC.js.map} +1 -1
  142. package/dist/{chunk-RIYAMYLV.mjs → chunk-M5GY2AI3.mjs} +3 -3
  143. package/dist/{chunk-RIYAMYLV.mjs.map → chunk-M5GY2AI3.mjs.map} +1 -1
  144. package/dist/{chunk-YCI36ZUS.mjs → chunk-MW2M6O7A.mjs} +4 -4
  145. package/dist/{chunk-YCI36ZUS.mjs.map → chunk-MW2M6O7A.mjs.map} +1 -1
  146. package/dist/{chunk-BWSMUSDB.js → chunk-NOU3JQJK.js} +8 -8
  147. package/dist/{chunk-BWSMUSDB.js.map → chunk-NOU3JQJK.js.map} +1 -1
  148. package/dist/{chunk-IYCLN3XS.mjs → chunk-O2VJZOR2.mjs} +3 -3
  149. package/dist/{chunk-IYCLN3XS.mjs.map → chunk-O2VJZOR2.mjs.map} +1 -1
  150. package/dist/{chunk-T5VTQUNF.js → chunk-OYOO2OO5.js} +8 -8
  151. package/dist/{chunk-T5VTQUNF.js.map → chunk-OYOO2OO5.js.map} +1 -1
  152. package/dist/chunk-P4TB4ROG.js +110 -0
  153. package/dist/chunk-P4TB4ROG.js.map +1 -0
  154. package/dist/{chunk-6OP5XSMM.mjs → chunk-Q7347KP6.mjs} +3 -3
  155. package/dist/{chunk-6OP5XSMM.mjs.map → chunk-Q7347KP6.mjs.map} +1 -1
  156. package/dist/chunk-QRBPT6Z6.mjs +6 -0
  157. package/dist/{chunk-DQUBETXH.mjs.map → chunk-QRBPT6Z6.mjs.map} +1 -1
  158. package/dist/{chunk-USKIL6V6.mjs → chunk-R2SXXFXZ.mjs} +3 -3
  159. package/dist/{chunk-USKIL6V6.mjs.map → chunk-R2SXXFXZ.mjs.map} +1 -1
  160. package/dist/{chunk-UU47DGHE.js → chunk-RCSTDJUH.js} +5 -5
  161. package/dist/{chunk-UU47DGHE.js.map → chunk-RCSTDJUH.js.map} +1 -1
  162. package/dist/{chunk-SYGGZZMU.js → chunk-RNAGCAIB.js} +7 -7
  163. package/dist/{chunk-SYGGZZMU.js.map → chunk-RNAGCAIB.js.map} +1 -1
  164. package/dist/{chunk-AEARU24Q.mjs → chunk-RVRN5U7W.mjs} +2 -2
  165. package/dist/{chunk-AEARU24Q.mjs.map → chunk-RVRN5U7W.mjs.map} +1 -1
  166. package/dist/{chunk-C2MSD2UM.mjs → chunk-TDJKGN5Q.mjs} +4 -4
  167. package/dist/{chunk-C2MSD2UM.mjs.map → chunk-TDJKGN5Q.mjs.map} +1 -1
  168. package/dist/{chunk-R3KTBKSW.js → chunk-TSZIACRC.js} +4 -4
  169. package/dist/{chunk-R3KTBKSW.js.map → chunk-TSZIACRC.js.map} +1 -1
  170. package/dist/{chunk-H44XZUOV.mjs → chunk-UQ5YULFU.mjs} +4 -4
  171. package/dist/{chunk-H44XZUOV.mjs.map → chunk-UQ5YULFU.mjs.map} +1 -1
  172. package/dist/{chunk-QNPVVWR7.mjs → chunk-V5THCFPG.mjs} +3 -3
  173. package/dist/{chunk-QNPVVWR7.mjs.map → chunk-V5THCFPG.mjs.map} +1 -1
  174. package/dist/{chunk-CQRLKNHQ.js → chunk-VFGEY6FJ.js} +12 -12
  175. package/dist/{chunk-CQRLKNHQ.js.map → chunk-VFGEY6FJ.js.map} +1 -1
  176. package/dist/{chunk-HIHAXEPD.mjs → chunk-XLPU3TEE.mjs} +4 -4
  177. package/dist/{chunk-HIHAXEPD.mjs.map → chunk-XLPU3TEE.mjs.map} +1 -1
  178. package/dist/{chunk-AY7JBGYC.js → chunk-YKUEFRZI.js} +14 -14
  179. package/dist/{chunk-AY7JBGYC.js.map → chunk-YKUEFRZI.js.map} +1 -1
  180. package/dist/{chunk-XK5AIWQG.js → chunk-YYDZ2TYR.js} +3 -3
  181. package/dist/{chunk-XK5AIWQG.js.map → chunk-YYDZ2TYR.js.map} +1 -1
  182. package/dist/cli/agent/checks.d.ts.map +1 -1
  183. package/dist/cli/commands/api-routes.d.ts.map +1 -1
  184. package/dist/cli/commands/geo.d.ts +4 -0
  185. package/dist/cli/commands/geo.d.ts.map +1 -1
  186. package/dist/cli/commands/geo.test.d.ts +2 -0
  187. package/dist/cli/commands/geo.test.d.ts.map +1 -0
  188. package/dist/cli/commands/og.d.ts +10 -1
  189. package/dist/cli/commands/og.d.ts.map +1 -1
  190. package/dist/cli/commands/scaffold.d.ts +1 -2
  191. package/dist/cli/commands/scaffold.d.ts.map +1 -1
  192. package/dist/cli/commands/sync.d.ts.map +1 -1
  193. package/dist/cli/generators/index.d.ts +5 -0
  194. package/dist/cli/generators/index.d.ts.map +1 -1
  195. package/dist/cli/generators/index.test.d.ts +2 -0
  196. package/dist/cli/generators/index.test.d.ts.map +1 -0
  197. package/dist/cli/index.js +360 -266
  198. package/dist/cli/index.js.map +1 -1
  199. package/dist/cli/index.mjs +356 -262
  200. package/dist/cli/index.mjs.map +1 -1
  201. package/dist/client/index.js +4 -4
  202. package/dist/client/index.mjs +3 -3
  203. package/dist/commerce/index.js +56 -56
  204. package/dist/commerce/index.mjs +5 -5
  205. package/dist/discover-FGTKWOL3.mjs +4 -0
  206. package/dist/{discover-BEJRYNFF.mjs.map → discover-FGTKWOL3.mjs.map} +1 -1
  207. package/dist/discover-NJZPWTDL.js +21 -0
  208. package/dist/{discover-WVDYDUJX.js.map → discover-NJZPWTDL.js.map} +1 -1
  209. package/dist/engage/index.js +10 -10
  210. package/dist/engage/index.mjs +7 -7
  211. package/dist/fleet/index.js +8 -8
  212. package/dist/fleet/index.mjs +4 -4
  213. package/dist/forms/index.js +16 -16
  214. package/dist/forms/index.mjs +9 -9
  215. package/dist/forms/server.js +10 -10
  216. package/dist/forms/server.mjs +8 -8
  217. package/dist/forms/static.js +7 -7
  218. package/dist/forms/static.mjs +6 -6
  219. package/dist/images/index.js +11 -11
  220. package/dist/images/index.mjs +4 -4
  221. package/dist/index.js +68 -68
  222. package/dist/index.mjs +10 -10
  223. package/dist/layout/client.js +8 -8
  224. package/dist/layout/client.mjs +7 -7
  225. package/dist/layout/index.js +10 -10
  226. package/dist/layout/index.mjs +8 -8
  227. package/dist/llms/aiRobots.d.ts +4 -1
  228. package/dist/llms/aiRobots.d.ts.map +1 -1
  229. package/dist/llms/handlers.d.ts +20 -2
  230. package/dist/llms/handlers.d.ts.map +1 -1
  231. package/dist/llms/index.js +25 -18
  232. package/dist/llms/index.js.map +1 -1
  233. package/dist/llms/index.mjs +15 -8
  234. package/dist/llms/index.mjs.map +1 -1
  235. package/dist/llms/wiring.d.ts +81 -0
  236. package/dist/llms/wiring.d.ts.map +1 -0
  237. package/dist/llms/wiring.test.d.ts +2 -0
  238. package/dist/llms/wiring.test.d.ts.map +1 -0
  239. package/dist/maps/index.js +5 -5
  240. package/dist/maps/index.mjs +3 -3
  241. package/dist/og/wiring.d.ts +5 -1
  242. package/dist/og/wiring.d.ts.map +1 -1
  243. package/dist/proxy/index.d.ts +16 -11
  244. package/dist/proxy/index.d.ts.map +1 -1
  245. package/dist/proxy/index.js +3 -3
  246. package/dist/proxy/index.js.map +1 -1
  247. package/dist/proxy/index.mjs +1 -1
  248. package/dist/proxy/index.mjs.map +1 -1
  249. package/dist/redirects/index.d.ts +1 -1
  250. package/dist/redirects/index.js +8 -8
  251. package/dist/redirects/index.mjs +1 -1
  252. package/dist/redirects/not-found.d.ts +14 -29
  253. package/dist/redirects/not-found.d.ts.map +1 -1
  254. package/dist/redirects/not-found.js +12 -5
  255. package/dist/redirects/not-found.js.map +1 -1
  256. package/dist/redirects/not-found.mjs +8 -1
  257. package/dist/redirects/not-found.mjs.map +1 -1
  258. package/dist/robots/index.d.ts +5 -1
  259. package/dist/robots/index.d.ts.map +1 -1
  260. package/dist/robots/index.js +7 -1
  261. package/dist/robots/index.js.map +1 -1
  262. package/dist/robots/index.mjs +4 -1
  263. package/dist/robots/index.mjs.map +1 -1
  264. package/dist/robots/index.test.d.ts +2 -0
  265. package/dist/robots/index.test.d.ts.map +1 -0
  266. package/dist/robots/next-internals.d.ts +22 -0
  267. package/dist/robots/next-internals.d.ts.map +1 -0
  268. package/dist/search/index.js +4 -4
  269. package/dist/search/index.mjs +3 -3
  270. package/dist/seo/client.js +5 -5
  271. package/dist/seo/client.mjs +4 -4
  272. package/dist/seo/index.js +14 -14
  273. package/dist/seo/index.mjs +6 -6
  274. package/dist/seo/register-sitemap-cli.js +4 -4
  275. package/dist/seo/register-sitemap-cli.mjs +1 -1
  276. package/dist/seo/server.js +5 -5
  277. package/dist/seo/server.mjs +1 -1
  278. package/dist/server/index.js +3 -3
  279. package/dist/server/index.mjs +2 -2
  280. package/dist/shared/next-files.d.ts +35 -0
  281. package/dist/shared/next-files.d.ts.map +1 -0
  282. package/dist/shared/next-files.test.d.ts +2 -0
  283. package/dist/shared/next-files.test.d.ts.map +1 -0
  284. package/dist/shared/version.d.ts +1 -1
  285. package/dist/signal/index.js +11 -11
  286. package/dist/signal/index.mjs +2 -2
  287. package/dist/sitemap/discover.d.ts.map +1 -1
  288. package/dist/sitemap/index.d.ts +6 -1
  289. package/dist/sitemap/index.d.ts.map +1 -1
  290. package/dist/sitemap/index.js +5 -12
  291. package/dist/sitemap/index.js.map +1 -1
  292. package/dist/sitemap/index.mjs +4 -11
  293. package/dist/sitemap/index.mjs.map +1 -1
  294. package/dist/sync/index.js +17 -17
  295. package/dist/sync/index.mjs +4 -4
  296. package/package.json +19 -21
  297. package/dist/AnalyticsProvider-6PXC7UDP.js +0 -32
  298. package/dist/AnalyticsProvider-FVQIYSLY.mjs +0 -11
  299. package/dist/ChatWidget-2TQWCXWP.js +0 -22
  300. package/dist/ChatWidget-DG52ZIE6.mjs +0 -13
  301. package/dist/EngageWidget-2VUJADIU.mjs +0 -12
  302. package/dist/EngageWidget-Z7RC2INM.js +0 -21
  303. package/dist/ManagedForm-43WLCUAK.js +0 -23
  304. package/dist/ManagedForm-545YAUFC.mjs +0 -14
  305. package/dist/SitemapSync-46G7LVZS.mjs +0 -9
  306. package/dist/SitemapSync-XK4JKCS7.js +0 -18
  307. package/dist/chunk-746RKQHA.js.map +0 -1
  308. package/dist/chunk-DQUBETXH.mjs +0 -6
  309. package/dist/chunk-EEQYKMGH.mjs.map +0 -1
  310. package/dist/chunk-KSL3WA2I.js +0 -8
  311. package/dist/chunk-LOS5D6B3.js +0 -72
  312. package/dist/chunk-LOS5D6B3.js.map +0 -1
  313. package/dist/chunk-XIJ4F6IE.mjs +0 -63
  314. package/dist/chunk-XIJ4F6IE.mjs.map +0 -1
  315. package/dist/discover-BEJRYNFF.mjs +0 -4
  316. package/dist/discover-WVDYDUJX.js +0 -21
@@ -110,16 +110,39 @@ export declare function generateBlogCategoryMetadata(categoryName: string, optio
110
110
  categorySlug?: string;
111
111
  }): Metadata;
112
112
  /**
113
- * Generate static params for blog post pages
114
- * Usage: export const generateStaticParams = generateBlogStaticParams
113
+ * What Next passes to a route's `generateStaticParams`: the parent segments'
114
+ * params. The blog helpers ignore it; it's typed so they can be exported
115
+ * directly as `generateStaticParams`.
116
+ */
117
+ export interface NextStaticParamsProps {
118
+ params: unknown;
119
+ }
120
+ /**
121
+ * Generate static params for blog post pages.
122
+ *
123
+ * Export it directly for the default `/blog/[slug]` routes:
124
+ *
125
+ * export const generateStaticParams = generateBlogStaticParams
126
+ *
127
+ * With routing options, wrap it:
128
+ *
129
+ * export function generateStaticParams() {
130
+ * return generateBlogStaticParams(routing)
131
+ * }
115
132
  */
116
133
  export declare function generateBlogStaticParams(options?: BlogRoutingOptions): Promise<{
117
134
  slug: string;
118
135
  category?: string;
119
136
  }[]>;
137
+ export declare function generateBlogStaticParams(props: NextStaticParamsProps): Promise<{
138
+ slug: string;
139
+ category?: string;
140
+ }[]>;
120
141
  /**
121
- * Generate static params for category pages
122
- * Usage: export const generateStaticParams = generateCategoryStaticParams
142
+ * Generate static params for category pages. Takes no arguments, so it can be
143
+ * exported directly:
144
+ *
145
+ * export const generateStaticParams = generateCategoryStaticParams
123
146
  */
124
147
  export declare function generateCategoryStaticParams(): Promise<{
125
148
  category: string;
@@ -334,8 +357,10 @@ export declare function getAllAuthorSlugs(): Promise<{
334
357
  slug: string;
335
358
  }[]>;
336
359
  /**
337
- * Generate static params for author pages
338
- * Usage: export const generateStaticParams = generateAuthorStaticParams
360
+ * Generate static params for author pages. Takes no arguments, so it can be
361
+ * exported directly:
362
+ *
363
+ * export const generateStaticParams = generateAuthorStaticParams
339
364
  */
340
365
  export declare function generateAuthorStaticParams(): Promise<{
341
366
  slug: string;
@@ -1 +1 @@
1
- {"version":3,"file":"server-core.d.ts","sourceRoot":"","sources":["../../src/blog/server-core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server-core.d.ts","sourceRoot":"","sources":["../../src/blog/server-core.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunk746RKQHA_js = require('../chunk-746RKQHA.js');
3
+ var chunkCPY74A4F_js = require('../chunk-CPY74A4F.js');
4
4
  var chunkYQTE32QK_js = require('../chunk-YQTE32QK.js');
5
5
  var chunkLC7AM4J5_js = require('../chunk-LC7AM4J5.js');
6
6
  require('../chunk-O5GHP7UO.js');
@@ -10,159 +10,159 @@ require('../chunk-SNAQBZPT.js');
10
10
 
11
11
  Object.defineProperty(exports, "SEO_LIMITS", {
12
12
  enumerable: true,
13
- get: function () { return chunk746RKQHA_js.SEO_LIMITS; }
13
+ get: function () { return chunkCPY74A4F_js.SEO_LIMITS; }
14
14
  });
15
15
  Object.defineProperty(exports, "generateAllBlogSchemas", {
16
16
  enumerable: true,
17
- get: function () { return chunk746RKQHA_js.generateAllBlogSchemas; }
17
+ get: function () { return chunkCPY74A4F_js.generateAllBlogSchemas; }
18
18
  });
19
19
  Object.defineProperty(exports, "generateAtomFeed", {
20
20
  enumerable: true,
21
- get: function () { return chunk746RKQHA_js.generateAtomFeed; }
21
+ get: function () { return chunkCPY74A4F_js.generateAtomFeed; }
22
22
  });
23
23
  Object.defineProperty(exports, "generateAuthorPageMetadata", {
24
24
  enumerable: true,
25
- get: function () { return chunk746RKQHA_js.generateAuthorPageMetadata; }
25
+ get: function () { return chunkCPY74A4F_js.generateAuthorPageMetadata; }
26
26
  });
27
27
  Object.defineProperty(exports, "generateAuthorStaticParams", {
28
28
  enumerable: true,
29
- get: function () { return chunk746RKQHA_js.generateAuthorStaticParams; }
29
+ get: function () { return chunkCPY74A4F_js.generateAuthorStaticParams; }
30
30
  });
31
31
  Object.defineProperty(exports, "generateBlogCategoryMetadata", {
32
32
  enumerable: true,
33
- get: function () { return chunk746RKQHA_js.generateBlogCategoryMetadata; }
33
+ get: function () { return chunkCPY74A4F_js.generateBlogCategoryMetadata; }
34
34
  });
35
35
  Object.defineProperty(exports, "generateBlogIndexMetadata", {
36
36
  enumerable: true,
37
- get: function () { return chunk746RKQHA_js.generateBlogIndexMetadata; }
37
+ get: function () { return chunkCPY74A4F_js.generateBlogIndexMetadata; }
38
38
  });
39
39
  Object.defineProperty(exports, "generateBlogListSchema", {
40
40
  enumerable: true,
41
- get: function () { return chunk746RKQHA_js.generateBlogListSchema; }
41
+ get: function () { return chunkCPY74A4F_js.generateBlogListSchema; }
42
42
  });
43
43
  Object.defineProperty(exports, "generateBlogPostMetadata", {
44
44
  enumerable: true,
45
- get: function () { return chunk746RKQHA_js.generateBlogPostMetadata; }
45
+ get: function () { return chunkCPY74A4F_js.generateBlogPostMetadata; }
46
46
  });
47
47
  Object.defineProperty(exports, "generateBlogPostSchema", {
48
48
  enumerable: true,
49
- get: function () { return chunk746RKQHA_js.generateBlogPostSchema; }
49
+ get: function () { return chunkCPY74A4F_js.generateBlogPostSchema; }
50
50
  });
51
51
  Object.defineProperty(exports, "generateBlogSitemap", {
52
52
  enumerable: true,
53
- get: function () { return chunk746RKQHA_js.generateBlogSitemap; }
53
+ get: function () { return chunkCPY74A4F_js.generateBlogSitemap; }
54
54
  });
55
55
  Object.defineProperty(exports, "generateBlogStaticParams", {
56
56
  enumerable: true,
57
- get: function () { return chunk746RKQHA_js.generateBlogStaticParams; }
57
+ get: function () { return chunkCPY74A4F_js.generateBlogStaticParams; }
58
58
  });
59
59
  Object.defineProperty(exports, "generateBreadcrumbSchema", {
60
60
  enumerable: true,
61
- get: function () { return chunk746RKQHA_js.generateBreadcrumbSchema; }
61
+ get: function () { return chunkCPY74A4F_js.generateBreadcrumbSchema; }
62
62
  });
63
63
  Object.defineProperty(exports, "generateCategoryStaticParams", {
64
64
  enumerable: true,
65
- get: function () { return chunk746RKQHA_js.generateCategoryStaticParams; }
65
+ get: function () { return chunkCPY74A4F_js.generateCategoryStaticParams; }
66
66
  });
67
67
  Object.defineProperty(exports, "generateClusterArticleSchema", {
68
68
  enumerable: true,
69
- get: function () { return chunk746RKQHA_js.generateClusterArticleSchema; }
69
+ get: function () { return chunkCPY74A4F_js.generateClusterArticleSchema; }
70
70
  });
71
71
  Object.defineProperty(exports, "generateClusterBreadcrumbSchema", {
72
72
  enumerable: true,
73
- get: function () { return chunk746RKQHA_js.generateClusterBreadcrumbSchema; }
73
+ get: function () { return chunkCPY74A4F_js.generateClusterBreadcrumbSchema; }
74
74
  });
75
75
  Object.defineProperty(exports, "generateClusterItemListSchema", {
76
76
  enumerable: true,
77
- get: function () { return chunk746RKQHA_js.generateClusterItemListSchema; }
77
+ get: function () { return chunkCPY74A4F_js.generateClusterItemListSchema; }
78
78
  });
79
79
  Object.defineProperty(exports, "generateClusterLandingSchema", {
80
80
  enumerable: true,
81
- get: function () { return chunk746RKQHA_js.generateClusterLandingSchema; }
81
+ get: function () { return chunkCPY74A4F_js.generateClusterLandingSchema; }
82
82
  });
83
83
  Object.defineProperty(exports, "generateClusterPageMetadata", {
84
84
  enumerable: true,
85
- get: function () { return chunk746RKQHA_js.generateClusterPageMetadata; }
85
+ get: function () { return chunkCPY74A4F_js.generateClusterPageMetadata; }
86
86
  });
87
87
  Object.defineProperty(exports, "generateFaqSchema", {
88
88
  enumerable: true,
89
- get: function () { return chunk746RKQHA_js.generateFaqSchema; }
89
+ get: function () { return chunkCPY74A4F_js.generateFaqSchema; }
90
90
  });
91
91
  Object.defineProperty(exports, "generateHowToSchema", {
92
92
  enumerable: true,
93
- get: function () { return chunk746RKQHA_js.generateHowToSchema; }
93
+ get: function () { return chunkCPY74A4F_js.generateHowToSchema; }
94
94
  });
95
95
  Object.defineProperty(exports, "generateRssFeed", {
96
96
  enumerable: true,
97
- get: function () { return chunk746RKQHA_js.generateRssFeed; }
97
+ get: function () { return chunkCPY74A4F_js.generateRssFeed; }
98
98
  });
99
99
  Object.defineProperty(exports, "getAllAuthorSlugs", {
100
100
  enumerable: true,
101
- get: function () { return chunk746RKQHA_js.getAllAuthorSlugs; }
101
+ get: function () { return chunkCPY74A4F_js.getAllAuthorSlugs; }
102
102
  });
103
103
  Object.defineProperty(exports, "getAllBlogPosts", {
104
104
  enumerable: true,
105
- get: function () { return chunk746RKQHA_js.getAllBlogPosts; }
105
+ get: function () { return chunkCPY74A4F_js.getAllBlogPosts; }
106
106
  });
107
107
  Object.defineProperty(exports, "getAllBlogSlugs", {
108
108
  enumerable: true,
109
- get: function () { return chunk746RKQHA_js.getAllBlogSlugs; }
109
+ get: function () { return chunkCPY74A4F_js.getAllBlogSlugs; }
110
110
  });
111
111
  Object.defineProperty(exports, "getAuthorBySlug", {
112
112
  enumerable: true,
113
- get: function () { return chunk746RKQHA_js.getAuthorBySlug; }
113
+ get: function () { return chunkCPY74A4F_js.getAuthorBySlug; }
114
114
  });
115
115
  Object.defineProperty(exports, "getAuthorPosts", {
116
116
  enumerable: true,
117
- get: function () { return chunk746RKQHA_js.getAuthorPosts; }
117
+ get: function () { return chunkCPY74A4F_js.getAuthorPosts; }
118
118
  });
119
119
  Object.defineProperty(exports, "getBlogCategories", {
120
120
  enumerable: true,
121
- get: function () { return chunk746RKQHA_js.getBlogCategories; }
121
+ get: function () { return chunkCPY74A4F_js.getBlogCategories; }
122
122
  });
123
123
  Object.defineProperty(exports, "getBlogPost", {
124
124
  enumerable: true,
125
- get: function () { return chunk746RKQHA_js.getBlogPost; }
125
+ get: function () { return chunkCPY74A4F_js.getBlogPost; }
126
126
  });
127
127
  Object.defineProperty(exports, "getClusterNavigation", {
128
128
  enumerable: true,
129
- get: function () { return chunk746RKQHA_js.getClusterNavigation; }
129
+ get: function () { return chunkCPY74A4F_js.getClusterNavigation; }
130
130
  });
131
131
  Object.defineProperty(exports, "getPostsByCategory", {
132
132
  enumerable: true,
133
- get: function () { return chunk746RKQHA_js.getPostsByCategory; }
133
+ get: function () { return chunkCPY74A4F_js.getPostsByCategory; }
134
134
  });
135
135
  Object.defineProperty(exports, "getRelatedInsights", {
136
136
  enumerable: true,
137
- get: function () { return chunk746RKQHA_js.getRelatedInsights; }
137
+ get: function () { return chunkCPY74A4F_js.getRelatedInsights; }
138
138
  });
139
139
  Object.defineProperty(exports, "getTopicCluster", {
140
140
  enumerable: true,
141
- get: function () { return chunk746RKQHA_js.getTopicCluster; }
141
+ get: function () { return chunkCPY74A4F_js.getTopicCluster; }
142
142
  });
143
143
  Object.defineProperty(exports, "getTopicClusters", {
144
144
  enumerable: true,
145
- get: function () { return chunk746RKQHA_js.getTopicClusters; }
145
+ get: function () { return chunkCPY74A4F_js.getTopicClusters; }
146
146
  });
147
147
  Object.defineProperty(exports, "identifyTopicClusters", {
148
148
  enumerable: true,
149
- get: function () { return chunk746RKQHA_js.identifyTopicClusters; }
149
+ get: function () { return chunkCPY74A4F_js.identifyTopicClusters; }
150
150
  });
151
151
  Object.defineProperty(exports, "sanitizeExcerpt", {
152
152
  enumerable: true,
153
- get: function () { return chunk746RKQHA_js.sanitizeExcerpt; }
153
+ get: function () { return chunkCPY74A4F_js.sanitizeExcerpt; }
154
154
  });
155
155
  Object.defineProperty(exports, "validateBlogPostSeo", {
156
156
  enumerable: true,
157
- get: function () { return chunk746RKQHA_js.validateBlogPostSeo; }
157
+ get: function () { return chunkCPY74A4F_js.validateBlogPostSeo; }
158
158
  });
159
159
  Object.defineProperty(exports, "validateMetaDescription", {
160
160
  enumerable: true,
161
- get: function () { return chunk746RKQHA_js.validateMetaDescription; }
161
+ get: function () { return chunkCPY74A4F_js.validateMetaDescription; }
162
162
  });
163
163
  Object.defineProperty(exports, "validateSeoTitle", {
164
164
  enumerable: true,
165
- get: function () { return chunk746RKQHA_js.validateSeoTitle; }
165
+ get: function () { return chunkCPY74A4F_js.validateSeoTitle; }
166
166
  });
167
167
  Object.defineProperty(exports, "blogTableCss", {
168
168
  enumerable: true,
@@ -1,4 +1,4 @@
1
- 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 } from '../chunk-EEQYKMGH.mjs';
1
+ 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 } from '../chunk-BFJOZ3MU.mjs';
2
2
  export { blogTableCss, wrapBlogTables } from '../chunk-GHECYDSZ.mjs';
3
3
  export { blogCategorySlug, createBlogRoutes, generateAuthorSchema, resolveBlogArtwork, resolveBlogPostUrl, resolveBlogUrl } from '../chunk-4B4S56WJ.mjs';
4
4
  import '../chunk-6XNEGG5B.mjs';
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=static-params.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"static-params.test.d.ts","sourceRoot":"","sources":["../../src/blog/static-params.test.ts"],"names":[],"mappings":""}
@@ -3,7 +3,7 @@
3
3
 
4
4
  var chunkJEOKDUPQ_js = require('./chunk-JEOKDUPQ.js');
5
5
  var chunk5RNAUYWE_js = require('./chunk-5RNAUYWE.js');
6
- var chunkOC7AO7XS_js = require('./chunk-OC7AO7XS.js');
6
+ var chunkH65OX263_js = require('./chunk-H65OX263.js');
7
7
  var react = require('react');
8
8
 
9
9
  var SYNC_STAMP_KEY = "_sk_sitemap_synced_at";
@@ -47,7 +47,7 @@ function storeSyncedHash(hash) {
47
47
  }
48
48
  async function parseSitemap(sitemapUrl, debug) {
49
49
  try {
50
- const response = await chunkOC7AO7XS_js.sonorFetch(sitemapUrl);
50
+ const response = await chunkH65OX263_js.sonorFetch(sitemapUrl);
51
51
  if (!response.ok) {
52
52
  if (debug) console.warn("[SitemapSync] Failed to fetch sitemap:", response.status);
53
53
  return [];
@@ -97,7 +97,7 @@ async function syncToPortal(entries, apiUrl, apiKey, site, debug, mode = "additi
97
97
  try {
98
98
  const target = chunk5RNAUYWE_js.resolveAnalyticsTarget({ ...gate, apiUrl, apiKey });
99
99
  if (!target) return { success: false, created: 0, updated: 0 };
100
- const response = await chunkOC7AO7XS_js.sonorFetch(`${target.apiUrl}/api/public/seo/register-sitemap`, {
100
+ const response = await chunkH65OX263_js.sonorFetch(`${target.apiUrl}/api/public/seo/register-sitemap`, {
101
101
  method: "POST",
102
102
  headers: { "Content-Type": "application/json" },
103
103
  body: JSON.stringify({
@@ -191,5 +191,5 @@ function SitemapSync({
191
191
  }
192
192
 
193
193
  exports.SitemapSync = SitemapSync;
194
- //# sourceMappingURL=chunk-XR32C47O.js.map
195
- //# sourceMappingURL=chunk-XR32C47O.js.map
194
+ //# sourceMappingURL=chunk-2N27LCZH.js.map
195
+ //# sourceMappingURL=chunk-2N27LCZH.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/SitemapSync.tsx"],"names":["sonorFetch","locToPath","isMalformedSitemapPath","resolveAnalyticsTarget","inferPageType","useRef","useEffect"],"mappings":"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","file":"chunk-XR32C47O.js","sourcesContent":["/**\n * SitemapSync - Automatically sync sitemap.xml to Portal API\n *\n * Client-only component. Lives at package root so the main entry does not\n * pull in seo/ (and server-only code). For use in SiteKitLayout and\n * from @sonordev/site-kit/seo.\n *\n * @example\n * ```tsx\n * import { SitemapSync } from '@sonordev/site-kit'\n * // or\n * import { SitemapSync } from '@sonordev/site-kit/seo'\n * ```\n */\n\n'use client'\n\nimport { useEffect, useRef } from 'react'\nimport { sonorFetch } from './shared/sonorFetch'\nimport { resolveAnalyticsTarget, type AnalyticsGateOptions } from './shared/reporting-gate'\n// Single source of truth for page-type inference + path normalization, shared\n// with createSitemap (build) and the register-sitemap CLI. Pure string logic,\n// safe in the browser.\nimport { inferPageType, locToPath, isMalformedSitemapPath } from './sitemap/shared'\n\ninterface SitemapSyncProps extends AnalyticsGateOptions {\n /** Custom sitemap URL (defaults to /sitemap.xml) */\n sitemapUrl?: string\n /** How often to re-sync in minutes (0 = only on mount, default: 60) */\n syncInterval?: number\n /** Enable debug logging */\n debug?: boolean\n /**\n * Sync mode:\n * - 'additive' (default for runtime): adds/updates pages but never deletes existing ones\n * - 'full-replace': replaces the entire page set (use only for build-time sync via createSitemap)\n */\n mode?: 'additive' | 'full-replace'\n}\n\ninterface SitemapEntry {\n path: string\n lastmod?: string\n changefreq?: string\n priority?: number\n pageType?: string\n}\n\n/**\n * Per-browser-session sync throttle. Build-time sync (createSitemap) is the\n * canonical source of truth; runtime SitemapSync is only a safety net — so\n * re-registering the sitemap on every full page load of every visitor is pure\n * waste (fetch + DOMParser on the visitor's main thread, plus a write per\n * pageview against the API). Stamp the last successful sync in sessionStorage\n * and skip while inside the throttle window.\n */\nconst SYNC_STAMP_KEY = '_sk_sitemap_synced_at'\nconst SYNC_HASH_KEY = '_sk_sitemap_hash'\n\nfunction isRecentlySynced(throttleMinutes: number): boolean {\n try {\n const stamp = sessionStorage.getItem(SYNC_STAMP_KEY)\n if (!stamp) return false\n const elapsed = Date.now() - parseInt(stamp, 10)\n return elapsed >= 0 && elapsed < throttleMinutes * 60 * 1000\n } catch {\n return false // storage unavailable (private mode) — sync as before\n }\n}\n\nfunction stampSynced(): void {\n try {\n sessionStorage.setItem(SYNC_STAMP_KEY, Date.now().toString())\n } catch {\n /* storage unavailable — throttle simply won't apply */\n }\n}\n\n/**\n * Content-hash guard (localStorage, so it survives across sessions): the\n * sitemap of a static site only changes at deploy, so once ONE sync of a given\n * sitemap succeeded from this browser, re-POSTing the identical entry set is\n * pure API load. Hash the parsed entries; skip the POST when unchanged.\n * Keyed by sitemap URL so multiple SitemapSync instances don't collide.\n */\nfunction hashEntries(sitemapUrl: string, entries: SitemapEntry[]): string {\n const text = entries\n .map(e => `${e.path}|${e.lastmod ?? ''}|${e.changefreq ?? ''}|${e.priority ?? ''}`)\n .join('\\n')\n let hash = 0\n for (let i = 0; i < text.length; i++) {\n hash = ((hash << 5) - hash + text.charCodeAt(i)) | 0\n }\n return `${sitemapUrl}:${entries.length}:${hash.toString(16)}`\n}\n\nfunction isAlreadySyncedHash(hash: string): boolean {\n try {\n return localStorage.getItem(SYNC_HASH_KEY) === hash\n } catch {\n return false\n }\n}\n\nfunction storeSyncedHash(hash: string): void {\n try {\n localStorage.setItem(SYNC_HASH_KEY, hash)\n } catch {\n /* storage unavailable — guard simply won't apply */\n }\n}\n\nasync function parseSitemap(sitemapUrl: string, debug: boolean): Promise<SitemapEntry[]> {\n try {\n const response = await sonorFetch(sitemapUrl)\n if (!response.ok) {\n if (debug) console.warn('[SitemapSync] Failed to fetch sitemap:', response.status)\n return []\n }\n\n const text = await response.text()\n const parser = new DOMParser()\n const doc = parser.parseFromString(text, 'application/xml')\n\n const parseError = doc.querySelector('parsererror')\n if (parseError) {\n if (debug) console.warn('[SitemapSync] Sitemap parse error:', parseError.textContent)\n return []\n }\n\n const urls = doc.querySelectorAll('url')\n const entries: SitemapEntry[] = []\n\n urls.forEach(url => {\n const loc = url.querySelector('loc')?.textContent?.trim()\n if (!loc) return\n\n const path = locToPath(loc)\n\n // Reject malformed paths (embedded domains, double protocols, etc.)\n if (isMalformedSitemapPath(path)) {\n if (debug) console.warn(`[SitemapSync] Skipping malformed path: ${path}`)\n return\n }\n\n const lastmod = url.querySelector('lastmod')?.textContent || undefined\n const changefreq = url.querySelector('changefreq')?.textContent || undefined\n const priorityStr = url.querySelector('priority')?.textContent\n const priority = priorityStr ? parseFloat(priorityStr) : undefined\n\n entries.push({ path, lastmod, changefreq, priority })\n })\n\n if (debug) {\n console.log(`[SitemapSync] Parsed ${entries.length} entries from sitemap`)\n }\n\n return entries\n } catch (error) {\n if (debug) console.error('[SitemapSync] Error parsing sitemap:', error)\n return []\n }\n}\n\nasync function syncToPortal(\n entries: SitemapEntry[],\n apiUrl: string,\n apiKey: string,\n site: string,\n debug: boolean,\n mode: 'additive' | 'full-replace' = 'additive',\n gate: AnalyticsGateOptions = {},\n): Promise<{ success: boolean; created: number; updated: number }> {\n if (!apiKey) {\n if (debug) console.warn('[SitemapSync] No API key configured')\n return { success: false, created: 0, updated: 0 }\n }\n\n if (entries.length === 0) {\n if (debug) console.log('[SitemapSync] No entries to sync')\n return { success: true, created: 0, updated: 0 }\n }\n\n try {\n // Registration is idempotent in both modes (same payload → same final\n // state), so retrying a timed-out attempt is safe.\n const target = resolveAnalyticsTarget({ ...gate, apiUrl, apiKey })\n if (!target) return { success: false, created: 0, updated: 0 }\n const response = await sonorFetch(`${target.apiUrl}/api/public/seo/register-sitemap`, {\n method: 'POST',\n headers: { 'Content-Type': 'application/json' },\n body: JSON.stringify({\n entries: entries.map(e => ({\n path: e.path,\n priority: e.priority,\n changefreq: e.changefreq,\n pageType: inferPageType(e.path),\n })),\n mode,\n // Sub-site host — tagged on every seo_pages row so the dashboard\n // can scope the page tree to one microsite. Resolved by\n // SiteKitClientProviders (see __SITE_KIT_SITE__).\n ...(site ? { site } : {}),\n }),\n }, { apiKey: target.apiKey, retries: 2 })\n\n if (!response?.ok) {\n if (debug) console.error('[SitemapSync] API error:', response?.status, response?.statusText)\n return { success: false, created: 0, updated: 0 }\n }\n\n const result = await response.json()\n\n if (debug) {\n console.log(`[SitemapSync] Synced: ${result.created} created, ${result.updated} updated`)\n }\n\n return {\n success: true,\n created: result.created || 0,\n updated: result.updated || 0,\n }\n } catch (error) {\n if (debug) console.error('[SitemapSync] Sync error:', error)\n return { success: false, created: 0, updated: 0 }\n }\n}\n\nexport function SitemapSync({\n sitemapUrl = '/sitemap.xml',\n syncInterval = 60,\n debug = false,\n mode = 'additive',\n apiUrl: propApiUrl,\n apiKey: propApiKey,\n allowInFrame = false,\n allowLocalhost = false,\n}: SitemapSyncProps) {\n const hasSyncedRef = useRef(false)\n const intervalRef = useRef<ReturnType<typeof setInterval> | null>(null)\n\n useEffect(() => {\n // Build-time sync via createSitemap is the canonical source of truth, but\n // it can fail during ISR revalidation (app/ dir unavailable on serverless).\n // Runtime SitemapSync in additive mode is a safe fallback — it adds/updates\n // pages that may be missing without ever deleting existing ones.\n // Full-replace is never safe at runtime — always force additive.\n const effectiveMode: 'additive' | 'full-replace' = 'additive'\n\n // Throttle window: reuse syncInterval when periodic syncing is on,\n // otherwise default to 60 minutes for the on-mount sync.\n const throttleMinutes = syncInterval > 0 ? syncInterval : 60\n\n const doSync = async () => {\n const gate = { apiUrl: propApiUrl, apiKey: propApiKey, allowInFrame, allowLocalhost, debug }\n const target = resolveAnalyticsTarget(gate)\n if (!target) return\n const { apiUrl, apiKey } = target\n const site = (window as any).__SITE_KIT_SITE__ || window.location.host || ''\n\n if (isRecentlySynced(throttleMinutes)) {\n if (debug) console.log('[SitemapSync] Skipped — synced within the last', throttleMinutes, 'min this session')\n return\n }\n\n if (debug) console.log('[SitemapSync] Starting sitemap sync...', site ? `(site: ${site})` : '')\n\n const entries = await parseSitemap(sitemapUrl, debug)\n\n if (entries.length > 0) {\n const hash = hashEntries(sitemapUrl, entries)\n if (isAlreadySyncedHash(hash)) {\n // This exact sitemap already synced from this browser — the server\n // state can't be improved by re-POSTing it. Stamp the session so we\n // don't even re-fetch/parse for the rest of the throttle window.\n stampSynced()\n if (debug) console.log('[SitemapSync] Skipped POST — sitemap unchanged since last successful sync')\n return\n }\n const result = await syncToPortal(entries, apiUrl, apiKey, site, debug, effectiveMode, gate)\n if (result.success) {\n stampSynced()\n storeSyncedHash(hash)\n }\n }\n }\n\n if (!resolveAnalyticsTarget({ apiUrl: propApiUrl, apiKey: propApiKey, allowInFrame, allowLocalhost, debug })) return\n\n if (!hasSyncedRef.current) {\n hasSyncedRef.current = true\n doSync()\n }\n\n if (syncInterval > 0) {\n intervalRef.current = setInterval(doSync, syncInterval * 60 * 1000)\n }\n\n return () => {\n if (intervalRef.current) {\n clearInterval(intervalRef.current)\n }\n }\n }, [sitemapUrl, syncInterval, debug, mode, propApiUrl, propApiKey, allowInFrame, allowLocalhost])\n\n return null\n}\n"]}
1
+ {"version":3,"sources":["../src/SitemapSync.tsx"],"names":["sonorFetch","locToPath","isMalformedSitemapPath","resolveAnalyticsTarget","inferPageType","useRef","useEffect"],"mappings":"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","file":"chunk-2N27LCZH.js","sourcesContent":["/**\n * SitemapSync - Automatically sync sitemap.xml to Portal API\n *\n * Client-only component. Lives at package root so the main entry does not\n * pull in seo/ (and server-only code). For use in SiteKitLayout and\n * from @sonordev/site-kit/seo.\n *\n * @example\n * ```tsx\n * import { SitemapSync } from '@sonordev/site-kit'\n * // or\n * import { SitemapSync } from '@sonordev/site-kit/seo'\n * ```\n */\n\n'use client'\n\nimport { useEffect, useRef } from 'react'\nimport { sonorFetch } from './shared/sonorFetch'\nimport { resolveAnalyticsTarget, type AnalyticsGateOptions } from './shared/reporting-gate'\n// Single source of truth for page-type inference + path normalization, shared\n// with createSitemap (build) and the register-sitemap CLI. Pure string logic,\n// safe in the browser.\nimport { inferPageType, locToPath, isMalformedSitemapPath } from './sitemap/shared'\n\ninterface SitemapSyncProps extends AnalyticsGateOptions {\n /** Custom sitemap URL (defaults to /sitemap.xml) */\n sitemapUrl?: string\n /** How often to re-sync in minutes (0 = only on mount, default: 60) */\n syncInterval?: number\n /** Enable debug logging */\n debug?: boolean\n /**\n * Sync mode:\n * - 'additive' (default for runtime): adds/updates pages but never deletes existing ones\n * - 'full-replace': replaces the entire page set (use only for build-time sync via createSitemap)\n */\n mode?: 'additive' | 'full-replace'\n}\n\ninterface SitemapEntry {\n path: string\n lastmod?: string\n changefreq?: string\n priority?: number\n pageType?: string\n}\n\n/**\n * Per-browser-session sync throttle. Build-time sync (createSitemap) is the\n * canonical source of truth; runtime SitemapSync is only a safety net — so\n * re-registering the sitemap on every full page load of every visitor is pure\n * waste (fetch + DOMParser on the visitor's main thread, plus a write per\n * pageview against the API). Stamp the last successful sync in sessionStorage\n * and skip while inside the throttle window.\n */\nconst SYNC_STAMP_KEY = '_sk_sitemap_synced_at'\nconst SYNC_HASH_KEY = '_sk_sitemap_hash'\n\nfunction isRecentlySynced(throttleMinutes: number): boolean {\n try {\n const stamp = sessionStorage.getItem(SYNC_STAMP_KEY)\n if (!stamp) return false\n const elapsed = Date.now() - parseInt(stamp, 10)\n return elapsed >= 0 && elapsed < throttleMinutes * 60 * 1000\n } catch {\n return false // storage unavailable (private mode) — sync as before\n }\n}\n\nfunction stampSynced(): void {\n try {\n sessionStorage.setItem(SYNC_STAMP_KEY, Date.now().toString())\n } catch {\n /* storage unavailable — throttle simply won't apply */\n }\n}\n\n/**\n * Content-hash guard (localStorage, so it survives across sessions): the\n * sitemap of a static site only changes at deploy, so once ONE sync of a given\n * sitemap succeeded from this browser, re-POSTing the identical entry set is\n * pure API load. Hash the parsed entries; skip the POST when unchanged.\n * Keyed by sitemap URL so multiple SitemapSync instances don't collide.\n */\nfunction hashEntries(sitemapUrl: string, entries: SitemapEntry[]): string {\n const text = entries\n .map(e => `${e.path}|${e.lastmod ?? ''}|${e.changefreq ?? ''}|${e.priority ?? ''}`)\n .join('\\n')\n let hash = 0\n for (let i = 0; i < text.length; i++) {\n hash = ((hash << 5) - hash + text.charCodeAt(i)) | 0\n }\n return `${sitemapUrl}:${entries.length}:${hash.toString(16)}`\n}\n\nfunction isAlreadySyncedHash(hash: string): boolean {\n try {\n return localStorage.getItem(SYNC_HASH_KEY) === hash\n } catch {\n return false\n }\n}\n\nfunction storeSyncedHash(hash: string): void {\n try {\n localStorage.setItem(SYNC_HASH_KEY, hash)\n } catch {\n /* storage unavailable — guard simply won't apply */\n }\n}\n\nasync function parseSitemap(sitemapUrl: string, debug: boolean): Promise<SitemapEntry[]> {\n try {\n const response = await sonorFetch(sitemapUrl)\n if (!response.ok) {\n if (debug) console.warn('[SitemapSync] Failed to fetch sitemap:', response.status)\n return []\n }\n\n const text = await response.text()\n const parser = new DOMParser()\n const doc = parser.parseFromString(text, 'application/xml')\n\n const parseError = doc.querySelector('parsererror')\n if (parseError) {\n if (debug) console.warn('[SitemapSync] Sitemap parse error:', parseError.textContent)\n return []\n }\n\n const urls = doc.querySelectorAll('url')\n const entries: SitemapEntry[] = []\n\n urls.forEach(url => {\n const loc = url.querySelector('loc')?.textContent?.trim()\n if (!loc) return\n\n const path = locToPath(loc)\n\n // Reject malformed paths (embedded domains, double protocols, etc.)\n if (isMalformedSitemapPath(path)) {\n if (debug) console.warn(`[SitemapSync] Skipping malformed path: ${path}`)\n return\n }\n\n const lastmod = url.querySelector('lastmod')?.textContent || undefined\n const changefreq = url.querySelector('changefreq')?.textContent || undefined\n const priorityStr = url.querySelector('priority')?.textContent\n const priority = priorityStr ? parseFloat(priorityStr) : undefined\n\n entries.push({ path, lastmod, changefreq, priority })\n })\n\n if (debug) {\n console.log(`[SitemapSync] Parsed ${entries.length} entries from sitemap`)\n }\n\n return entries\n } catch (error) {\n if (debug) console.error('[SitemapSync] Error parsing sitemap:', error)\n return []\n }\n}\n\nasync function syncToPortal(\n entries: SitemapEntry[],\n apiUrl: string,\n apiKey: string,\n site: string,\n debug: boolean,\n mode: 'additive' | 'full-replace' = 'additive',\n gate: AnalyticsGateOptions = {},\n): Promise<{ success: boolean; created: number; updated: number }> {\n if (!apiKey) {\n if (debug) console.warn('[SitemapSync] No API key configured')\n return { success: false, created: 0, updated: 0 }\n }\n\n if (entries.length === 0) {\n if (debug) console.log('[SitemapSync] No entries to sync')\n return { success: true, created: 0, updated: 0 }\n }\n\n try {\n // Registration is idempotent in both modes (same payload → same final\n // state), so retrying a timed-out attempt is safe.\n const target = resolveAnalyticsTarget({ ...gate, apiUrl, apiKey })\n if (!target) return { success: false, created: 0, updated: 0 }\n const response = await sonorFetch(`${target.apiUrl}/api/public/seo/register-sitemap`, {\n method: 'POST',\n headers: { 'Content-Type': 'application/json' },\n body: JSON.stringify({\n entries: entries.map(e => ({\n path: e.path,\n priority: e.priority,\n changefreq: e.changefreq,\n pageType: inferPageType(e.path),\n })),\n mode,\n // Sub-site host — tagged on every seo_pages row so the dashboard\n // can scope the page tree to one microsite. Resolved by\n // SiteKitClientProviders (see __SITE_KIT_SITE__).\n ...(site ? { site } : {}),\n }),\n }, { apiKey: target.apiKey, retries: 2 })\n\n if (!response?.ok) {\n if (debug) console.error('[SitemapSync] API error:', response?.status, response?.statusText)\n return { success: false, created: 0, updated: 0 }\n }\n\n const result = await response.json()\n\n if (debug) {\n console.log(`[SitemapSync] Synced: ${result.created} created, ${result.updated} updated`)\n }\n\n return {\n success: true,\n created: result.created || 0,\n updated: result.updated || 0,\n }\n } catch (error) {\n if (debug) console.error('[SitemapSync] Sync error:', error)\n return { success: false, created: 0, updated: 0 }\n }\n}\n\nexport function SitemapSync({\n sitemapUrl = '/sitemap.xml',\n syncInterval = 60,\n debug = false,\n mode = 'additive',\n apiUrl: propApiUrl,\n apiKey: propApiKey,\n allowInFrame = false,\n allowLocalhost = false,\n}: SitemapSyncProps) {\n const hasSyncedRef = useRef(false)\n const intervalRef = useRef<ReturnType<typeof setInterval> | null>(null)\n\n useEffect(() => {\n // Build-time sync via createSitemap is the canonical source of truth, but\n // it can fail during ISR revalidation (app/ dir unavailable on serverless).\n // Runtime SitemapSync in additive mode is a safe fallback — it adds/updates\n // pages that may be missing without ever deleting existing ones.\n // Full-replace is never safe at runtime — always force additive.\n const effectiveMode: 'additive' | 'full-replace' = 'additive'\n\n // Throttle window: reuse syncInterval when periodic syncing is on,\n // otherwise default to 60 minutes for the on-mount sync.\n const throttleMinutes = syncInterval > 0 ? syncInterval : 60\n\n const doSync = async () => {\n const gate = { apiUrl: propApiUrl, apiKey: propApiKey, allowInFrame, allowLocalhost, debug }\n const target = resolveAnalyticsTarget(gate)\n if (!target) return\n const { apiUrl, apiKey } = target\n const site = (window as any).__SITE_KIT_SITE__ || window.location.host || ''\n\n if (isRecentlySynced(throttleMinutes)) {\n if (debug) console.log('[SitemapSync] Skipped — synced within the last', throttleMinutes, 'min this session')\n return\n }\n\n if (debug) console.log('[SitemapSync] Starting sitemap sync...', site ? `(site: ${site})` : '')\n\n const entries = await parseSitemap(sitemapUrl, debug)\n\n if (entries.length > 0) {\n const hash = hashEntries(sitemapUrl, entries)\n if (isAlreadySyncedHash(hash)) {\n // This exact sitemap already synced from this browser — the server\n // state can't be improved by re-POSTing it. Stamp the session so we\n // don't even re-fetch/parse for the rest of the throttle window.\n stampSynced()\n if (debug) console.log('[SitemapSync] Skipped POST — sitemap unchanged since last successful sync')\n return\n }\n const result = await syncToPortal(entries, apiUrl, apiKey, site, debug, effectiveMode, gate)\n if (result.success) {\n stampSynced()\n storeSyncedHash(hash)\n }\n }\n }\n\n if (!resolveAnalyticsTarget({ apiUrl: propApiUrl, apiKey: propApiKey, allowInFrame, allowLocalhost, debug })) return\n\n if (!hasSyncedRef.current) {\n hasSyncedRef.current = true\n doSync()\n }\n\n if (syncInterval > 0) {\n intervalRef.current = setInterval(doSync, syncInterval * 60 * 1000)\n }\n\n return () => {\n if (intervalRef.current) {\n clearInterval(intervalRef.current)\n }\n }\n }, [sitemapUrl, syncInterval, debug, mode, propApiUrl, propApiKey, allowInFrame, allowLocalhost])\n\n return null\n}\n"]}
@@ -1,9 +1,9 @@
1
1
  'use client';
2
- import { countStageViews, countStageQuestions, useFieldControls } from './chunk-6OP5XSMM.mjs';
3
- import { HoneypotField, NativeFallbackFields, nativeFormProps } from './chunk-LCSYJXIO.mjs';
2
+ import { countStageViews, countStageQuestions, useFieldControls } from './chunk-Q7347KP6.mjs';
3
+ import { HoneypotField, NativeFallbackFields, nativeFormProps } from './chunk-FBDHKYNF.mjs';
4
4
  import { DelightStyles, FormMomentum, FormField } from './chunk-H7274TKR.mjs';
5
- import { useFormTracking, useForm } from './chunk-C2MSD2UM.mjs';
6
- import { submitForm, DEFAULT_FORM_SUCCESS_MESSAGE } from './chunk-GJ6NOLGC.mjs';
5
+ import { useFormTracking, useForm } from './chunk-TDJKGN5Q.mjs';
6
+ import { submitForm, DEFAULT_FORM_SUCCESS_MESSAGE } from './chunk-HBN4A2N4.mjs';
7
7
  import { DEFAULT_HONEYPOT_FIELD } from './chunk-TMVKRQGJ.mjs';
8
8
  import { useState, useRef, useMemo, useEffect, useCallback } from 'react';
9
9
  import { jsx, Fragment, jsxs } from 'react/jsx-runtime';
@@ -68,7 +68,7 @@ function FormClient({
68
68
  return;
69
69
  }
70
70
  let cancelled = false;
71
- const load = resolvedExperience === "stage" ? import('./FormStage-DINIRFOX.mjs').then((m) => m.FormStage) : import('./FormSpotlight-RHL5FWM2.mjs').then((m) => m.FormSpotlight);
71
+ const load = resolvedExperience === "stage" ? import('./FormStage-VPGOCMAV.mjs').then((m) => m.FormStage) : import('./FormSpotlight-OTFB6QM5.mjs').then((m) => m.FormSpotlight);
72
72
  load.then((Component) => {
73
73
  if (!cancelled) setExperience(() => Component);
74
74
  }).catch((err) => {
@@ -514,5 +514,5 @@ function ManagedForm({
514
514
  }
515
515
 
516
516
  export { FormClient, ManagedForm };
517
- //# sourceMappingURL=chunk-GPLCPMVD.mjs.map
518
- //# sourceMappingURL=chunk-GPLCPMVD.mjs.map
517
+ //# sourceMappingURL=chunk-3CLP35TT.mjs.map
518
+ //# sourceMappingURL=chunk-3CLP35TT.mjs.map