@sonordev/site-kit 5.4.0 → 5.5.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 (318) hide show
  1. package/AGENTS.md +16 -6
  2. package/README.md +9 -7
  3. package/agent-manifest.json +7 -7
  4. package/dist/AnalyticsProvider-KFXAH4GR.mjs +11 -0
  5. package/dist/{AnalyticsProvider-2XIOMRCN.mjs.map → AnalyticsProvider-KFXAH4GR.mjs.map} +1 -1
  6. package/dist/AnalyticsProvider-WDDW3IJW.js +32 -0
  7. package/dist/{AnalyticsProvider-Y2P2BPOI.js.map → AnalyticsProvider-WDDW3IJW.js.map} +1 -1
  8. package/dist/{BlogViewTracker-6EGEDPP3.js → BlogViewTracker-D4DIEP4Q.js} +6 -6
  9. package/dist/{BlogViewTracker-6EGEDPP3.js.map → BlogViewTracker-D4DIEP4Q.js.map} +1 -1
  10. package/dist/{BlogViewTracker-R4YQ76WP.mjs → BlogViewTracker-ZVEGGH3Y.mjs} +5 -5
  11. package/dist/{BlogViewTracker-R4YQ76WP.mjs.map → BlogViewTracker-ZVEGGH3Y.mjs.map} +1 -1
  12. package/dist/ChatWidget-2ZYPYIMQ.js +22 -0
  13. package/dist/{ChatWidget-2OFWPCWF.js.map → ChatWidget-2ZYPYIMQ.js.map} +1 -1
  14. package/dist/ChatWidget-FYCCLMQE.mjs +13 -0
  15. package/dist/{ChatWidget-4AOGHYXQ.mjs.map → ChatWidget-FYCCLMQE.mjs.map} +1 -1
  16. package/dist/EngageWidget-6HUZYOY7.mjs +11 -0
  17. package/dist/{EngageWidget-SFO2XRNG.mjs.map → EngageWidget-6HUZYOY7.mjs.map} +1 -1
  18. package/dist/EngageWidget-MYQTBBW6.js +20 -0
  19. package/dist/{EngageWidget-T4KAAD3G.js.map → EngageWidget-MYQTBBW6.js.map} +1 -1
  20. package/dist/{FileField-CE2XNBBG.js → FileField-JK2S24XU.js} +6 -6
  21. package/dist/{FileField-CE2XNBBG.js.map → FileField-JK2S24XU.js.map} +1 -1
  22. package/dist/{FileField-7DF2SLPF.mjs → FileField-OZZHWGPA.mjs} +5 -5
  23. package/dist/{FileField-7DF2SLPF.mjs.map → FileField-OZZHWGPA.mjs.map} +1 -1
  24. package/dist/{FormSpotlight-ZD3WR5BC.js → FormSpotlight-5AXFQU5M.js} +15 -15
  25. package/dist/{FormSpotlight-ZD3WR5BC.js.map → FormSpotlight-5AXFQU5M.js.map} +1 -1
  26. package/dist/{FormSpotlight-IRLKSZGV.mjs → FormSpotlight-XV42L72H.mjs} +3 -3
  27. package/dist/{FormSpotlight-IRLKSZGV.mjs.map → FormSpotlight-XV42L72H.mjs.map} +1 -1
  28. package/dist/{FormStage-OSPXOUQE.js → FormStage-HATUHNRV.js} +13 -13
  29. package/dist/{FormStage-OSPXOUQE.js.map → FormStage-HATUHNRV.js.map} +1 -1
  30. package/dist/{FormStage-2OSRNQJL.mjs → FormStage-RUK675HV.mjs} +3 -3
  31. package/dist/{FormStage-2OSRNQJL.mjs.map → FormStage-RUK675HV.mjs.map} +1 -1
  32. package/dist/ManagedForm-JWEXJEXK.js +23 -0
  33. package/dist/{ManagedForm-JCHGBBQW.js.map → ManagedForm-JWEXJEXK.js.map} +1 -1
  34. package/dist/ManagedForm-OA3MNGXT.mjs +14 -0
  35. package/dist/{ManagedForm-5G37EDJT.mjs.map → ManagedForm-OA3MNGXT.mjs.map} +1 -1
  36. package/dist/{ManagedNewsletterForm-4LVJZROZ.js → ManagedNewsletterForm-AAHH63KT.js} +8 -8
  37. package/dist/{ManagedNewsletterForm-4LVJZROZ.js.map → ManagedNewsletterForm-AAHH63KT.js.map} +1 -1
  38. package/dist/{ManagedNewsletterForm-QJSVH23S.mjs → ManagedNewsletterForm-HZKTNWLW.mjs} +7 -7
  39. package/dist/{ManagedNewsletterForm-QJSVH23S.mjs.map → ManagedNewsletterForm-HZKTNWLW.mjs.map} +1 -1
  40. package/dist/{SignalCore-L6Z3YTCF.mjs → SignalCore-X3GDGBZD.mjs} +5 -5
  41. package/dist/{SignalCore-L6Z3YTCF.mjs.map → SignalCore-X3GDGBZD.mjs.map} +1 -1
  42. package/dist/{SignalCore-NQ4YEOI7.js → SignalCore-YSNZYBKJ.js} +11 -11
  43. package/dist/{SignalCore-NQ4YEOI7.js.map → SignalCore-YSNZYBKJ.js.map} +1 -1
  44. package/dist/SitemapSync-2PTDBH5E.mjs +9 -0
  45. package/dist/{SitemapSync-MYSTLJOM.mjs.map → SitemapSync-2PTDBH5E.mjs.map} +1 -1
  46. package/dist/SitemapSync-3SFAI546.js +18 -0
  47. package/dist/{SitemapSync-3LUZWBTB.js.map → SitemapSync-3SFAI546.js.map} +1 -1
  48. package/dist/analytics/dispatch.d.ts +4 -4
  49. package/dist/analytics/index.js +15 -15
  50. package/dist/analytics/index.mjs +6 -6
  51. package/dist/{api-NTHZ6PAW.mjs → api-D745LGGU.mjs} +3 -3
  52. package/dist/api-D745LGGU.mjs.map +1 -0
  53. package/dist/{api-N5OLQXYN.js → api-XR5APCH3.js} +3 -3
  54. package/dist/api-XR5APCH3.js.map +1 -0
  55. package/dist/blog/index.js +20 -20
  56. package/dist/blog/index.mjs +3 -3
  57. package/dist/blog/server-ui.js +14 -14
  58. package/dist/blog/server-ui.mjs +2 -2
  59. package/dist/{chunk-WSUQ76LN.js → chunk-2CMSWJWC.js} +18 -18
  60. package/dist/{chunk-WSUQ76LN.js.map → chunk-2CMSWJWC.js.map} +1 -1
  61. package/dist/{chunk-QWLL3B6U.js → chunk-2OU4KBUN.js} +26 -23
  62. package/dist/chunk-2OU4KBUN.js.map +1 -0
  63. package/dist/{chunk-A2VLEORI.mjs → chunk-3B6CXGAK.mjs} +3 -3
  64. package/dist/{chunk-A2VLEORI.mjs.map → chunk-3B6CXGAK.mjs.map} +1 -1
  65. package/dist/{chunk-HMFFAUCD.js → chunk-3DWIYCQX.js} +2 -2
  66. package/dist/chunk-3DWIYCQX.js.map +1 -0
  67. package/dist/{chunk-3EPMDPWI.js → chunk-3SDMJMN2.js} +5 -5
  68. package/dist/{chunk-3EPMDPWI.js.map → chunk-3SDMJMN2.js.map} +1 -1
  69. package/dist/chunk-4U5NCKQY.mjs +39 -0
  70. package/dist/chunk-4U5NCKQY.mjs.map +1 -0
  71. package/dist/{chunk-I4PDSDVE.mjs → chunk-4XGACM7D.mjs} +3 -3
  72. package/dist/{chunk-I4PDSDVE.mjs.map → chunk-4XGACM7D.mjs.map} +1 -1
  73. package/dist/{chunk-HDDV63XJ.mjs → chunk-5TGAUWNO.mjs} +3 -3
  74. package/dist/{chunk-HDDV63XJ.mjs.map → chunk-5TGAUWNO.mjs.map} +1 -1
  75. package/dist/{chunk-RO55G3OA.mjs → chunk-64BOVMXG.mjs} +3 -3
  76. package/dist/{chunk-RO55G3OA.mjs.map → chunk-64BOVMXG.mjs.map} +1 -1
  77. package/dist/{chunk-JJ26JKBJ.mjs → chunk-7PPNXORV.mjs} +3 -3
  78. package/dist/{chunk-JJ26JKBJ.mjs.map → chunk-7PPNXORV.mjs.map} +1 -1
  79. package/dist/{chunk-LHYVFWHL.js → chunk-A3F5GRNJ.js} +8 -8
  80. package/dist/{chunk-LHYVFWHL.js.map → chunk-A3F5GRNJ.js.map} +1 -1
  81. package/dist/{chunk-SZHKNGNR.mjs → chunk-AEARU24Q.mjs} +40 -26
  82. package/dist/chunk-AEARU24Q.mjs.map +1 -0
  83. package/dist/{chunk-HBMF3M5F.js → chunk-BNOQXDPJ.js} +4 -4
  84. package/dist/{chunk-HBMF3M5F.js.map → chunk-BNOQXDPJ.js.map} +1 -1
  85. package/dist/{chunk-5737U6DI.js → chunk-CT5REGAK.js} +15 -15
  86. package/dist/{chunk-5737U6DI.js.map → chunk-CT5REGAK.js.map} +1 -1
  87. package/dist/{chunk-HH5KGXTK.mjs → chunk-DRLHQQBH.mjs} +4 -4
  88. package/dist/{chunk-HH5KGXTK.mjs.map → chunk-DRLHQQBH.mjs.map} +1 -1
  89. package/dist/{chunk-UOLY4NXK.mjs → chunk-DYULWKDC.mjs} +4 -4
  90. package/dist/{chunk-UOLY4NXK.mjs.map → chunk-DYULWKDC.mjs.map} +1 -1
  91. package/dist/chunk-ESP5RMB7.js +42 -0
  92. package/dist/chunk-ESP5RMB7.js.map +1 -0
  93. package/dist/{chunk-LF4L3ZP5.js → chunk-FF5N5D3D.js} +8 -8
  94. package/dist/{chunk-LF4L3ZP5.js.map → chunk-FF5N5D3D.js.map} +1 -1
  95. package/dist/{chunk-ITFZZ6YT.js → chunk-FYVLQ3OU.js} +3 -3
  96. package/dist/{chunk-ITFZZ6YT.js.map → chunk-FYVLQ3OU.js.map} +1 -1
  97. package/dist/{chunk-N6X76QUF.mjs → chunk-G5HUI4BO.mjs} +3 -3
  98. package/dist/{chunk-N6X76QUF.mjs.map → chunk-G5HUI4BO.mjs.map} +1 -1
  99. package/dist/chunk-G6WF4G3E.js +43 -0
  100. package/dist/chunk-G6WF4G3E.js.map +1 -0
  101. package/dist/{chunk-DQM5GR2P.mjs → chunk-HBI67P7Y.mjs} +4 -4
  102. package/dist/{chunk-DQM5GR2P.mjs.map → chunk-HBI67P7Y.mjs.map} +1 -1
  103. package/dist/{chunk-VA36CJRV.js → chunk-HFJQMIFM.js} +4 -4
  104. package/dist/{chunk-VA36CJRV.js.map → chunk-HFJQMIFM.js.map} +1 -1
  105. package/dist/{chunk-VWDT7H6L.js → chunk-HX3BRMOX.js} +3 -3
  106. package/dist/{chunk-VWDT7H6L.js.map → chunk-HX3BRMOX.js.map} +1 -1
  107. package/dist/{chunk-3TXX5KIN.js → chunk-JNRHTZL4.js} +2 -2
  108. package/dist/{chunk-3TXX5KIN.js.map → chunk-JNRHTZL4.js.map} +1 -1
  109. package/dist/{chunk-U53KN4SA.js → chunk-KAUUGRYB.js} +5 -5
  110. package/dist/{chunk-U53KN4SA.js.map → chunk-KAUUGRYB.js.map} +1 -1
  111. package/dist/{chunk-L2LJQIM3.js → chunk-KPKQKFT4.js} +11 -11
  112. package/dist/chunk-KPKQKFT4.js.map +1 -0
  113. package/dist/{chunk-ZLPXFV5Y.js → chunk-MCJF2KJ6.js} +5 -5
  114. package/dist/{chunk-ZLPXFV5Y.js.map → chunk-MCJF2KJ6.js.map} +1 -1
  115. package/dist/{chunk-URVGBWCP.js → chunk-MNYM2XU4.js} +4 -4
  116. package/dist/{chunk-URVGBWCP.js.map → chunk-MNYM2XU4.js.map} +1 -1
  117. package/dist/{chunk-ACTLQ2RH.mjs → chunk-MU7IEPDG.mjs} +4 -4
  118. package/dist/chunk-MU7IEPDG.mjs.map +1 -0
  119. package/dist/chunk-NSWO43XW.mjs +39 -0
  120. package/dist/chunk-NSWO43XW.mjs.map +1 -0
  121. package/dist/{chunk-KMGGAL2X.js → chunk-NZSFOZJV.js} +40 -26
  122. package/dist/chunk-NZSFOZJV.js.map +1 -0
  123. package/dist/{chunk-MIFP6QEQ.mjs → chunk-OFSA7LUH.mjs} +4 -4
  124. package/dist/{chunk-MIFP6QEQ.mjs.map → chunk-OFSA7LUH.mjs.map} +1 -1
  125. package/dist/{chunk-2KIGFOPM.js → chunk-PIPLBBDH.js} +8 -8
  126. package/dist/{chunk-2KIGFOPM.js.map → chunk-PIPLBBDH.js.map} +1 -1
  127. package/dist/{chunk-7PLH3H3W.js → chunk-Q26VZNM2.js} +3 -3
  128. package/dist/{chunk-7PLH3H3W.js.map → chunk-Q26VZNM2.js.map} +1 -1
  129. package/dist/{chunk-GQ6CUOLA.js → chunk-QEGUI2Q2.js} +15 -15
  130. package/dist/{chunk-GQ6CUOLA.js.map → chunk-QEGUI2Q2.js.map} +1 -1
  131. package/dist/{chunk-LBS4PRC7.js → chunk-QFNSM77X.js} +3 -3
  132. package/dist/{chunk-LBS4PRC7.js.map → chunk-QFNSM77X.js.map} +1 -1
  133. package/dist/{chunk-MTANHZKJ.mjs → chunk-R4MX6EOM.mjs} +7 -7
  134. package/dist/{chunk-MTANHZKJ.mjs.map → chunk-R4MX6EOM.mjs.map} +1 -1
  135. package/dist/{chunk-LIYSLNEK.mjs → chunk-RMMHWSPP.mjs} +3 -3
  136. package/dist/{chunk-LIYSLNEK.mjs.map → chunk-RMMHWSPP.mjs.map} +1 -1
  137. package/dist/{chunk-B4BFQSSS.mjs → chunk-RU54J2PY.mjs} +4 -4
  138. package/dist/chunk-RU54J2PY.mjs.map +1 -0
  139. package/dist/{chunk-SJXGIUHP.mjs → chunk-RZUZMUTN.mjs} +9 -8
  140. package/dist/chunk-RZUZMUTN.mjs.map +1 -0
  141. package/dist/{chunk-N6AVWMIB.mjs → chunk-S6FEC6UT.mjs} +9 -5
  142. package/dist/chunk-S6FEC6UT.mjs.map +1 -0
  143. package/dist/{chunk-3DPXOZAU.mjs → chunk-SHLWA6JY.mjs} +2 -2
  144. package/dist/chunk-SHLWA6JY.mjs.map +1 -0
  145. package/dist/{chunk-7IPSQ5JR.js → chunk-SQVYLIIN.js} +11 -7
  146. package/dist/chunk-SQVYLIIN.js.map +1 -0
  147. package/dist/chunk-SUZ3ZLB2.js +8 -0
  148. package/dist/{chunk-UTOHMK52.js.map → chunk-SUZ3ZLB2.js.map} +1 -1
  149. package/dist/{chunk-7Y2UPFSY.mjs → chunk-TALEV3IH.mjs} +3 -3
  150. package/dist/{chunk-7Y2UPFSY.mjs.map → chunk-TALEV3IH.mjs.map} +1 -1
  151. package/dist/{chunk-UOTXSWKZ.mjs → chunk-TP7H6BSK.mjs} +2 -2
  152. package/dist/{chunk-UOTXSWKZ.mjs.map → chunk-TP7H6BSK.mjs.map} +1 -1
  153. package/dist/{chunk-XWF7QPIP.mjs → chunk-TX2QQ7IX.mjs} +3 -3
  154. package/dist/{chunk-XWF7QPIP.mjs.map → chunk-TX2QQ7IX.mjs.map} +1 -1
  155. package/dist/{chunk-AWFZIXCT.js → chunk-UNPEMSLK.js} +12 -11
  156. package/dist/chunk-UNPEMSLK.js.map +1 -0
  157. package/dist/{chunk-NUH245XK.mjs → chunk-UZL2QU2V.mjs} +16 -13
  158. package/dist/chunk-UZL2QU2V.mjs.map +1 -0
  159. package/dist/{chunk-G5I3XEQS.mjs → chunk-V6NOM7PJ.mjs} +3 -3
  160. package/dist/{chunk-G5I3XEQS.mjs.map → chunk-V6NOM7PJ.mjs.map} +1 -1
  161. package/dist/{chunk-ZY5AVC4P.js → chunk-VAS3LH5W.js} +10 -10
  162. package/dist/{chunk-ZY5AVC4P.js.map → chunk-VAS3LH5W.js.map} +1 -1
  163. package/dist/{chunk-KQ3VAOAF.mjs → chunk-VYHRAICF.mjs} +4 -4
  164. package/dist/{chunk-KQ3VAOAF.mjs.map → chunk-VYHRAICF.mjs.map} +1 -1
  165. package/dist/{chunk-LUYUFILE.js → chunk-W5NVW23S.js} +4 -4
  166. package/dist/{chunk-LUYUFILE.js.map → chunk-W5NVW23S.js.map} +1 -1
  167. package/dist/chunk-WDBCXRTT.mjs +6 -0
  168. package/dist/{chunk-7U7C6XRI.mjs.map → chunk-WDBCXRTT.mjs.map} +1 -1
  169. package/dist/{chunk-6CUBSQMD.mjs → chunk-WIZRCI6J.mjs} +3 -3
  170. package/dist/{chunk-6CUBSQMD.mjs.map → chunk-WIZRCI6J.mjs.map} +1 -1
  171. package/dist/{chunk-EBMPXFOP.mjs → chunk-X2XFLYZ3.mjs} +3 -3
  172. package/dist/{chunk-EBMPXFOP.mjs.map → chunk-X2XFLYZ3.mjs.map} +1 -1
  173. package/dist/{chunk-B36PTS7B.mjs → chunk-XQYC4KMH.mjs} +3 -3
  174. package/dist/{chunk-B36PTS7B.mjs.map → chunk-XQYC4KMH.mjs.map} +1 -1
  175. package/dist/{chunk-DPDV5Z4G.js → chunk-YNC5D3FT.js} +12 -12
  176. package/dist/{chunk-DPDV5Z4G.js.map → chunk-YNC5D3FT.js.map} +1 -1
  177. package/dist/{chunk-4WQB2ORG.js → chunk-YYAFHIY7.js} +15 -15
  178. package/dist/chunk-YYAFHIY7.js.map +1 -0
  179. package/dist/{chunk-OXZYP32B.js → chunk-Z6S4MWSR.js} +7 -7
  180. package/dist/{chunk-OXZYP32B.js.map → chunk-Z6S4MWSR.js.map} +1 -1
  181. package/dist/{chunk-ZDFVYSKK.mjs → chunk-ZRQFG3L6.mjs} +5 -5
  182. package/dist/{chunk-ZDFVYSKK.mjs.map → chunk-ZRQFG3L6.mjs.map} +1 -1
  183. package/dist/cli/agent/checks.d.ts.map +1 -1
  184. package/dist/cli/agent/ssr-bailout.d.ts +27 -0
  185. package/dist/cli/agent/ssr-bailout.d.ts.map +1 -0
  186. package/dist/cli/agent/ssr-bailout.test.d.ts +2 -0
  187. package/dist/cli/agent/ssr-bailout.test.d.ts.map +1 -0
  188. package/dist/cli/codemod/transforms.d.ts.map +1 -1
  189. package/dist/cli/index.js +38 -51
  190. package/dist/cli/index.js.map +1 -1
  191. package/dist/cli/index.mjs +36 -49
  192. package/dist/cli/index.mjs.map +1 -1
  193. package/dist/cli/migrator/index.d.ts.map +1 -1
  194. package/dist/client/index.d.ts +1 -0
  195. package/dist/client/index.d.ts.map +1 -1
  196. package/dist/client/index.js +20 -7
  197. package/dist/client/index.js.map +1 -1
  198. package/dist/client/index.mjs +5 -4
  199. package/dist/client/index.mjs.map +1 -1
  200. package/dist/cms/index.js.map +1 -1
  201. package/dist/cms/index.mjs.map +1 -1
  202. package/dist/cms/sanity-image.d.ts +1 -1
  203. package/dist/commerce/index.js +58 -58
  204. package/dist/commerce/index.mjs +7 -7
  205. package/dist/engage/ChatWidget.d.ts.map +1 -1
  206. package/dist/engage/EngageWidget.d.ts +3 -4
  207. package/dist/engage/EngageWidget.d.ts.map +1 -1
  208. package/dist/engage/chat-launcher.test.d.ts +2 -0
  209. package/dist/engage/chat-launcher.test.d.ts.map +1 -0
  210. package/dist/engage/index.js +12 -10
  211. package/dist/engage/index.js.map +1 -1
  212. package/dist/engage/index.mjs +9 -7
  213. package/dist/engage/index.mjs.map +1 -1
  214. package/dist/engage/launcher-placement.d.ts +56 -0
  215. package/dist/engage/launcher-placement.d.ts.map +1 -0
  216. package/dist/engage/launcher-placement.test.d.ts +2 -0
  217. package/dist/engage/launcher-placement.test.d.ts.map +1 -0
  218. package/dist/engage/types.d.ts +41 -7
  219. package/dist/engage/types.d.ts.map +1 -1
  220. package/dist/fleet/index.js +8 -8
  221. package/dist/fleet/index.mjs +4 -4
  222. package/dist/forms/index.js +16 -16
  223. package/dist/forms/index.mjs +9 -9
  224. package/dist/forms/server.js +10 -10
  225. package/dist/forms/server.mjs +8 -8
  226. package/dist/forms/static.js +7 -7
  227. package/dist/forms/static.mjs +6 -6
  228. package/dist/images/ManagedImage.d.ts.map +1 -1
  229. package/dist/images/index.js +11 -11
  230. package/dist/images/index.mjs +4 -4
  231. package/dist/index.js +65 -65
  232. package/dist/index.mjs +11 -11
  233. package/dist/layout/SiteKitClientProviders.d.ts.map +1 -1
  234. package/dist/layout/client.d.ts.map +1 -1
  235. package/dist/layout/client.js +8 -8
  236. package/dist/layout/client.mjs +7 -7
  237. package/dist/layout/index.js +10 -10
  238. package/dist/layout/index.mjs +8 -8
  239. package/dist/layout/types.d.ts +7 -3
  240. package/dist/layout/types.d.ts.map +1 -1
  241. package/dist/llms/generateLLMsTxt.d.ts.map +1 -1
  242. package/dist/llms/index.js +12 -12
  243. package/dist/llms/index.mjs +2 -2
  244. package/dist/llms/types.d.ts +7 -1
  245. package/dist/llms/types.d.ts.map +1 -1
  246. package/dist/maps/index.js +5 -5
  247. package/dist/maps/index.mjs +3 -3
  248. package/dist/mcp/WebMcpTools.d.ts +5 -2
  249. package/dist/mcp/WebMcpTools.d.ts.map +1 -1
  250. package/dist/mcp/client.js.map +1 -1
  251. package/dist/mcp/client.mjs.map +1 -1
  252. package/dist/search/index.js +4 -4
  253. package/dist/search/index.mjs +3 -3
  254. package/dist/seo/LocationPageContent.d.ts +6 -5
  255. package/dist/seo/LocationPageContent.d.ts.map +1 -1
  256. package/dist/seo/api.d.ts +4 -5
  257. package/dist/seo/api.d.ts.map +1 -1
  258. package/dist/seo/client.js +5 -5
  259. package/dist/seo/client.mjs +4 -4
  260. package/dist/seo/index.js +42 -42
  261. package/dist/seo/index.js.map +1 -1
  262. package/dist/seo/index.mjs +8 -8
  263. package/dist/seo/index.mjs.map +1 -1
  264. package/dist/seo/routing.d.ts +9 -23
  265. package/dist/seo/routing.d.ts.map +1 -1
  266. package/dist/seo/server-api.d.ts +11 -5
  267. package/dist/seo/server-api.d.ts.map +1 -1
  268. package/dist/seo/server.js +18 -18
  269. package/dist/seo/server.mjs +2 -2
  270. package/dist/server/index.js +3 -3
  271. package/dist/server/index.mjs +2 -2
  272. package/dist/{server-api-HW4PL2L2.mjs → server-api-RG3ZL3DV.mjs} +3 -3
  273. package/dist/{server-api-HW4PL2L2.mjs.map → server-api-RG3ZL3DV.mjs.map} +1 -1
  274. package/dist/{server-api-DB2SIUP4.js → server-api-RYJQAUGO.js} +21 -21
  275. package/dist/{server-api-DB2SIUP4.js.map → server-api-RYJQAUGO.js.map} +1 -1
  276. package/dist/shared/version.d.ts +1 -1
  277. package/dist/shared/visual-viewport-gap.d.ts +52 -0
  278. package/dist/shared/visual-viewport-gap.d.ts.map +1 -0
  279. package/dist/shared/visual-viewport-gap.test.d.ts +2 -0
  280. package/dist/shared/visual-viewport-gap.test.d.ts.map +1 -0
  281. package/dist/signal/index.js +11 -11
  282. package/dist/signal/index.mjs +2 -2
  283. package/dist/sitemap/index.js +2 -2
  284. package/dist/sitemap/index.mjs +1 -1
  285. package/dist/sync/index.js +17 -17
  286. package/dist/sync/index.mjs +4 -4
  287. package/dist/types.d.ts +9 -0
  288. package/dist/types.d.ts.map +1 -1
  289. package/package.json +1 -1
  290. package/skills/site-kit/SKILL.md +8 -3
  291. package/dist/AnalyticsProvider-2XIOMRCN.mjs +0 -11
  292. package/dist/AnalyticsProvider-Y2P2BPOI.js +0 -32
  293. package/dist/ChatWidget-2OFWPCWF.js +0 -20
  294. package/dist/ChatWidget-4AOGHYXQ.mjs +0 -11
  295. package/dist/EngageWidget-SFO2XRNG.mjs +0 -9
  296. package/dist/EngageWidget-T4KAAD3G.js +0 -18
  297. package/dist/ManagedForm-5G37EDJT.mjs +0 -14
  298. package/dist/ManagedForm-JCHGBBQW.js +0 -23
  299. package/dist/SitemapSync-3LUZWBTB.js +0 -18
  300. package/dist/SitemapSync-MYSTLJOM.mjs +0 -9
  301. package/dist/api-N5OLQXYN.js.map +0 -1
  302. package/dist/api-NTHZ6PAW.mjs.map +0 -1
  303. package/dist/chunk-3DPXOZAU.mjs.map +0 -1
  304. package/dist/chunk-4WQB2ORG.js.map +0 -1
  305. package/dist/chunk-7IPSQ5JR.js.map +0 -1
  306. package/dist/chunk-7U7C6XRI.mjs +0 -6
  307. package/dist/chunk-ACTLQ2RH.mjs.map +0 -1
  308. package/dist/chunk-AWFZIXCT.js.map +0 -1
  309. package/dist/chunk-B4BFQSSS.mjs.map +0 -1
  310. package/dist/chunk-HMFFAUCD.js.map +0 -1
  311. package/dist/chunk-KMGGAL2X.js.map +0 -1
  312. package/dist/chunk-L2LJQIM3.js.map +0 -1
  313. package/dist/chunk-N6AVWMIB.mjs.map +0 -1
  314. package/dist/chunk-NUH245XK.mjs.map +0 -1
  315. package/dist/chunk-QWLL3B6U.js.map +0 -1
  316. package/dist/chunk-SJXGIUHP.mjs.map +0 -1
  317. package/dist/chunk-SZHKNGNR.mjs.map +0 -1
  318. package/dist/chunk-UTOHMK52.js +0 -8
@@ -1 +1 @@
1
- {"version":3,"file":"checks.d.ts","sourceRoot":"","sources":["../../../src/cli/agent/checks.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAyCvC,wBAAgB,cAAc,IAAI,KAAK,CAgCtC;AAED,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAmDvE;AAED,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CA4CpE;AAED,wBAAsB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAuB9D;AAED,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAqCvE;AAID,wBAAsB,iBAAiB,CAAC,SAAS,SAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CA0BxE;AAED;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,SAAS,SAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CA4DpE;AAED,4EAA4E;AAC5E,wBAAsB,YAAY,CAAC,SAAS,SAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAyCnE;AAED;;;;;;GAMG;AACH,wBAAsB,eAAe,CAAC,SAAS,SAAO,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,CAqHxE;AAID;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,QAAQ,EAAE,OAAO,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,CAI7G;AAED,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,SAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,CAiD1F;AAED;;;;GAIG;AACH,wBAAsB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CA2CzE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAiDxE;AAED;;;;;;;;;GASG;AACH,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAgFrE;AAED;;;;GAIG;AACH,wBAAsB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAoB7D;AAYD,kDAAkD;AAClD,wBAAsB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,CAWhE"}
1
+ {"version":3,"file":"checks.d.ts","sourceRoot":"","sources":["../../../src/cli/agent/checks.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AA2CvC,wBAAgB,cAAc,IAAI,KAAK,CAgCtC;AAED,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAmDvE;AAED,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CA4CpE;AAED,wBAAsB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAuB9D;AAED,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAqCvE;AAID,wBAAsB,iBAAiB,CAAC,SAAS,SAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CA0BxE;AAED;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,SAAS,SAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CA4DpE;AAED,4EAA4E;AAC5E,wBAAsB,YAAY,CAAC,SAAS,SAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAyCnE;AAED;;;;;;GAMG;AACH,wBAAsB,eAAe,CAAC,SAAS,SAAO,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,CAqHxE;AAID;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,QAAQ,EAAE,OAAO,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,CAI7G;AAED,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,SAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,CAiD1F;AAED;;;;GAIG;AACH,wBAAsB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CA2CzE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAiDxE;AAED;;;;;;;;;GASG;AACH,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAgFrE;AAED;;;;GAIG;AACH,wBAAsB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAoB7D;AAYD,kDAAkD;AAClD,wBAAsB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,CAWhE"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * @sonordev/site-kit CLI — SSR-bailout remediation text
3
+ *
4
+ * SINGLE SOURCE OF TRUTH for what we tell a site whose route bailed to client
5
+ * rendering. Used by the `ssr.render` check (both the --url and the .next-build
6
+ * variants in checks.ts) and the `analytics-sibling` codemod flag. The agent
7
+ * manifest's `ssr.bailout` failure mode (scripts/agent-manifest.data.json)
8
+ * leads with SSR_BAILOUT_FIX verbatim, then a verify pointer; the manifest is
9
+ * JSON the CLI can't import, so ssr-bailout.test.ts pins it. AGENTS.md and
10
+ * skills/site-kit/SKILL.md say the same thing in prose; keep them in step.
11
+ *
12
+ * Why this exists: the old advice ("run SiteKitLayout with analytics={false}
13
+ * and mount analytics as a deferred, childless sibling") predates the package
14
+ * doing that itself. Since 3.0.2, SiteKitClientProviders renders {children}
15
+ * first and mounts analytics/engage/sitemap/heartbeat as childless siblings
16
+ * behind useDeferredActivation; 4.0.0 removed the last context wrappers. So on
17
+ * any current install a plain <SiteKitLayout> is the correct layout, and a
18
+ * bailed-out route means something ELSE wraps {children}. Telling that site to
19
+ * set analytics={false} changes nothing and hides the real cause.
20
+ */
21
+ /** First version whose SiteKitLayout mounts analytics as a deferred, childless sibling. */
22
+ export declare const DEFERRED_SIBLING_SINCE = "3.0.2";
23
+ /** Fix for a route that ships an empty shell + RSC flight data (`ssr.render`). */
24
+ export declare const SSR_BAILOUT_FIX: string;
25
+ /** Fix for a layout that wraps {children} in <AnalyticsProvider> (codemod `analytics-sibling`). */
26
+ export declare const ANALYTICS_WRAPPER_FIX: string;
27
+ //# sourceMappingURL=ssr-bailout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ssr-bailout.d.ts","sourceRoot":"","sources":["../../../src/cli/agent/ssr-bailout.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,2FAA2F;AAC3F,eAAO,MAAM,sBAAsB,UAAU,CAAA;AAU7C,kFAAkF;AAClF,eAAO,MAAM,eAAe,QAIyC,CAAA;AAErE,mGAAmG;AACnG,eAAO,MAAM,qBAAqB,QAIlB,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ssr-bailout.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ssr-bailout.test.d.ts","sourceRoot":"","sources":["../../../src/cli/agent/ssr-bailout.test.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"transforms.d.ts","sourceRoot":"","sources":["../../../src/cli/codemod/transforms.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAA;IACd,GAAG,EAAE,MAAM,CAAA;CACZ;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAA;IACd,oDAAoD;IACpD,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,+EAA+E;IAC/E,KAAK,EAAE,WAAW,EAAE,CAAA;CACrB;AAED,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAA;IACpC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,eAAe,CAAA;CACvD;AAoCD,eAAO,MAAM,cAAc,EAAE,SAwB5B,CAAA;AAMD,eAAO,MAAM,gBAAgB,EAAE,SA4D9B,CAAA;AAUD,eAAO,MAAM,gBAAgB,EAAE,SA2B9B,CAAA;AAED,eAAO,MAAM,cAAc,EAAE,SAAS,EAAyD,CAAA;AAE/F,wBAAgB,cAAc,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,CAI1D"}
1
+ {"version":3,"file":"transforms.d.ts","sourceRoot":"","sources":["../../../src/cli/codemod/transforms.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAA;IACd,GAAG,EAAE,MAAM,CAAA;CACZ;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAA;IACd,oDAAoD;IACpD,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,+EAA+E;IAC/E,KAAK,EAAE,WAAW,EAAE,CAAA;CACrB;AAED,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAA;IACpC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,eAAe,CAAA;CACvD;AAoCD,eAAO,MAAM,cAAc,EAAE,SAwB5B,CAAA;AAMD,eAAO,MAAM,gBAAgB,EAAE,SA4D9B,CAAA;AAUD,eAAO,MAAM,gBAAgB,EAAE,SA2B9B,CAAA;AAED,eAAO,MAAM,cAAc,EAAE,SAAS,EAAyD,CAAA;AAE/F,wBAAgB,cAAc,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,CAI1D"}
package/dist/cli/index.js CHANGED
@@ -6,7 +6,7 @@ var chunkI7AZC5ZQ_js = require('../chunk-I7AZC5ZQ.js');
6
6
  var chunk6CJP7BFM_js = require('../chunk-6CJP7BFM.js');
7
7
  var chunkNN2YE5WT_js = require('../chunk-NN2YE5WT.js');
8
8
  var chunkLOS5D6B3_js = require('../chunk-LOS5D6B3.js');
9
- var chunkUTOHMK52_js = require('../chunk-UTOHMK52.js');
9
+ var chunkSUZ3ZLB2_js = require('../chunk-SUZ3ZLB2.js');
10
10
  var chunkSNAQBZPT_js = require('../chunk-SNAQBZPT.js');
11
11
  var events = require('events');
12
12
  var childProcess = require('child_process');
@@ -13543,7 +13543,7 @@ function buildEnvelope(input, nowMs = Date.now()) {
13543
13543
  ok: exitCode === 0 /* OK */,
13544
13544
  command,
13545
13545
  schemaVersion: 1,
13546
- siteKitVersion: chunkUTOHMK52_js.SITE_KIT_VERSION,
13546
+ siteKitVersion: chunkSUZ3ZLB2_js.SITE_KIT_VERSION,
13547
13547
  exitCode,
13548
13548
  status: statusForCode(exitCode),
13549
13549
  summary,
@@ -21580,15 +21580,11 @@ function addToExistingImport(content, namedExport, modulePath) {
21580
21580
  }
21581
21581
  return content;
21582
21582
  }
21583
- function insertManagedSchemaIntoJSX(content, pagePath, isTypeScript) {
21583
+ function insertManagedSchemaIntoJSX(content, pagePath) {
21584
21584
  if (content.includes("<ManagedSchema")) {
21585
21585
  return content;
21586
21586
  }
21587
- const projectIdSuffix = isTypeScript ? "!" : "";
21588
- const schemaComponent = `<ManagedSchema
21589
- projectId={process.env.SONOR_PROJECT_ID${projectIdSuffix}}
21590
- path="${pagePath}"
21591
- />`;
21587
+ const schemaComponent = `<ManagedSchema path="${pagePath}" />`;
21592
21588
  const returnPatterns = [
21593
21589
  // return (<> ... - fragment
21594
21590
  /return\s*\(\s*<>/,
@@ -21898,7 +21894,7 @@ async function migrateWidget(filePath, widget, options) {
21898
21894
  const changes = [];
21899
21895
  if (options.dryRun) {
21900
21896
  changes.push(`[DRY RUN] Would remove ${widget.widgetType} script`);
21901
- changes.push("[DRY RUN] Would enable Engage in SiteKitProvider");
21897
+ changes.push("[DRY RUN] Sonor Engage chat would come from SiteKitLayout (engage is on by default)");
21902
21898
  return { filePath, success: true, changes };
21903
21899
  }
21904
21900
  const fullPath = path10__default.default.resolve(process.cwd(), filePath);
@@ -21917,7 +21913,7 @@ async function migrateWidget(filePath, widget, options) {
21917
21913
  }
21918
21914
  await fs3__default.default.writeFile(fullPath, content, "utf-8");
21919
21915
  changes.push(`Removed ${widget.widgetType} script`);
21920
- changes.push("Enable Engage in SiteKitProvider to add chat widget");
21916
+ changes.push("SiteKitLayout adds the Sonor Engage chat widget (engage is on by default)");
21921
21917
  return { filePath, success: true, changes };
21922
21918
  }
21923
21919
  function matchBalancedBraces(content, startIndex) {
@@ -21975,7 +21971,6 @@ async function migrateMetadata(filePath, metadata, options) {
21975
21971
 
21976
21972
  export async function generateMetadata() {
21977
21973
  return getManagedMetadata({
21978
- projectId: process.env.SONOR_PROJECT_ID${isTypeScript ? "!" : ""},
21979
21974
  path: '${pagePath}',
21980
21975
  fallback: {
21981
21976
  title: '${(metadata.title || "Page Title").replace(/'/g, "\\'")}',
@@ -21987,10 +21982,7 @@ export async function generateMetadata() {
21987
21982
  export default function ${layoutName}({ children }${isTypeScript ? ": { children: React.ReactNode }" : ""}) {
21988
21983
  return (
21989
21984
  <>
21990
- <ManagedSchema
21991
- projectId={process.env.SONOR_PROJECT_ID${isTypeScript ? "!" : ""}}
21992
- path="${pagePath}"
21993
- />
21985
+ <ManagedSchema path="${pagePath}" />
21994
21986
  {children}
21995
21987
  </>
21996
21988
  )
@@ -22020,7 +22012,6 @@ export default function ${layoutName}({ children }${isTypeScript ? ": { children
22020
22012
  const generateMetadataCode = `
22021
22013
  export async function generateMetadata() {
22022
22014
  return getManagedMetadata({
22023
- projectId: process.env.SONOR_PROJECT_ID${isTypeScript ? "!" : ""},
22024
22015
  path: '${pagePath}',
22025
22016
  fallback: {
22026
22017
  title: '${(metadata.title || "Page Title").replace(/'/g, "\\'")}',
@@ -22042,7 +22033,7 @@ export async function generateMetadata() {
22042
22033
  content = generateMetadataCode + content;
22043
22034
  }
22044
22035
  }
22045
- content = insertManagedSchemaIntoJSX(content, pagePath, isTypeScript);
22036
+ content = insertManagedSchemaIntoJSX(content, pagePath);
22046
22037
  changes.push("Added ManagedSchema component");
22047
22038
  await fs3__default.default.writeFile(fullPath, content, "utf-8");
22048
22039
  changes.push("Added generateMetadata function");
@@ -22062,7 +22053,6 @@ export async function generateMetadata() {
22062
22053
  }
22063
22054
  const generateMetadataCode = `export async function generateMetadata() {
22064
22055
  return getManagedMetadata({
22065
- projectId: process.env.SONOR_PROJECT_ID${isTypeScript ? "!" : ""},
22066
22056
  path: '${pagePath}',
22067
22057
  fallback: {
22068
22058
  title: '${(metadata.title || "Page Title").replace(/'/g, "\\'")}',
@@ -22072,7 +22062,7 @@ export async function generateMetadata() {
22072
22062
  }`;
22073
22063
  content = content.replace(fullMatch, generateMetadataCode);
22074
22064
  changes.push("Replaced static metadata with getManagedMetadata");
22075
- content = insertManagedSchemaIntoJSX(content, pagePath, isTypeScript);
22065
+ content = insertManagedSchemaIntoJSX(content, pagePath);
22076
22066
  changes.push("Added ManagedSchema component");
22077
22067
  }
22078
22068
  }
@@ -22196,8 +22186,6 @@ async function migrateSchema(filePath, schema, options) {
22196
22186
  }
22197
22187
  }
22198
22188
  const alreadyHasManagedSchema = content.includes("<ManagedSchema");
22199
- const isTypeScript = filePath.endsWith(".tsx") || filePath.endsWith(".ts");
22200
- const projectIdSuffix = isTypeScript ? "!" : "";
22201
22189
  const jsonLdPattern = /<script\s+type=["']application\/ld\+json["'][^>]*>[\s\S]*?<\/script>/gi;
22202
22190
  const scriptPattern = /<Script\s+[^>]*type=["']application\/ld\+json["'][^>]*>[\s\S]*?<\/Script>/gi;
22203
22191
  const hasJsonLd = jsonLdPattern.test(content) || scriptPattern.test(content);
@@ -22217,14 +22205,8 @@ async function migrateSchema(filePath, schema, options) {
22217
22205
  }
22218
22206
  changes.push("Added ManagedSchema import");
22219
22207
  }
22220
- content = content.replace(jsonLdPattern, `<ManagedSchema
22221
- projectId={process.env.SONOR_PROJECT_ID${projectIdSuffix}}
22222
- path="${pagePath}"
22223
- />`);
22224
- content = content.replace(scriptPattern, `<ManagedSchema
22225
- projectId={process.env.SONOR_PROJECT_ID${projectIdSuffix}}
22226
- path="${pagePath}"
22227
- />`);
22208
+ content = content.replace(jsonLdPattern, `<ManagedSchema path="${pagePath}" />`);
22209
+ content = content.replace(scriptPattern, `<ManagedSchema path="${pagePath}" />`);
22228
22210
  changes.push("Replaced JSON-LD script with ManagedSchema component");
22229
22211
  }
22230
22212
  }
@@ -22328,12 +22310,7 @@ async function migrateFAQ(filePath, faq, options) {
22328
22310
  }
22329
22311
  changes.push("Added ManagedFAQ import");
22330
22312
  }
22331
- const isTypeScript = filePath.endsWith(".tsx") || filePath.endsWith(".ts");
22332
- const projectIdSuffix = isTypeScript ? "!" : "";
22333
- const managedFAQComponent = `<ManagedFAQ
22334
- projectId={process.env.SONOR_PROJECT_ID${projectIdSuffix}}
22335
- path="${pagePath}"
22336
- />`;
22313
+ const managedFAQComponent = `<ManagedFAQ path="${pagePath}" />`;
22337
22314
  if (faq.componentName) {
22338
22315
  const componentPattern = new RegExp(`(<${faq.componentName}[^>]*>)`, "i");
22339
22316
  if (componentPattern.test(content)) {
@@ -22386,7 +22363,7 @@ async function migrateSitemap(filePath, sitemap, options) {
22386
22363
  }
22387
22364
  if (sitemap.type === "custom-sitemap" && filePath.includes("sitemap")) {
22388
22365
  changes.push("Custom sitemap detected - consider using Site-Kit's createSitemap helper");
22389
- changes.push("Import: import { createSitemap } from '@sonordev/site-kit/seo'");
22366
+ changes.push("Import: import { createSitemap } from '@sonordev/site-kit/sitemap'");
22390
22367
  }
22391
22368
  return { filePath, success: true, changes };
22392
22369
  }
@@ -22394,11 +22371,11 @@ async function migrateAnalytics(filePath, analytics, options) {
22394
22371
  const changes = [];
22395
22372
  if (options.dryRun) {
22396
22373
  changes.push(`[DRY RUN] Detected ${analytics.type}${analytics.trackingId ? ` (${analytics.trackingId})` : ""}`);
22397
- changes.push("[DRY RUN] Would recommend moving to SiteKitProvider analytics");
22374
+ changes.push("[DRY RUN] Would recommend Sonor analytics from SiteKitLayout (on by default)");
22398
22375
  return { filePath, success: true, changes };
22399
22376
  }
22400
22377
  changes.push(`Detected ${analytics.type}${analytics.trackingId ? ` (${analytics.trackingId})` : ""}`);
22401
- changes.push("SiteKitProvider supports analytics integration");
22378
+ changes.push("SiteKitLayout already tracks Sonor analytics (on by default)");
22402
22379
  changes.push("Configure analytics in project settings to consolidate tracking");
22403
22380
  return { filePath, success: true, changes };
22404
22381
  }
@@ -25786,7 +25763,7 @@ async function syncCommand(options, config2) {
25786
25763
  if (codePaths.length === 0) {
25787
25764
  spinner.warn("No ManagedFAQ components found");
25788
25765
  console.log("");
25789
- console.log(source_default.gray(' Add <ManagedFAQ projectId={...} path="/your-page" /> to your pages, then run:'));
25766
+ console.log(source_default.gray(' Add <ManagedFAQ path="/your-page" /> to your pages, then run:'));
25790
25767
  console.log(source_default.gray(" npx sonor-setup migrate (to add the component)"));
25791
25768
  console.log(source_default.gray(" npx sonor-setup faqs sync (to register paths in Portal)"));
25792
25769
  console.log("");
@@ -26490,6 +26467,13 @@ function checkOgWiring(cwd) {
26490
26467
  return judgeOgWiring(readOgWiring(cwd));
26491
26468
  }
26492
26469
 
26470
+ // src/cli/agent/ssr-bailout.ts
26471
+ var DEFERRED_SIBLING_SINCE = "3.0.2";
26472
+ var LAYOUT_ALREADY_DEFERS = `plain <SiteKitLayout>{children}</SiteKitLayout> already mounts analytics as a deferred, childless sibling on site-kit >=${DEFERRED_SIBLING_SINCE}`;
26473
+ var LEGACY_STOPGAP = `Only on site-kit <${DEFERRED_SIBLING_SINCE}: upgrade, or as a stopgap run SiteKitLayout with analytics={false} plus a deferred, childless analytics sibling.`;
26474
+ var SSR_BAILOUT_FIX = `Keep the layout: ${LAYOUT_ALREADY_DEFERS}, so it is not the cause. Find what else wraps {children}, usually a next/dynamic({ ssr: false }) component such as a site's own lazy Providers. Import it statically (a client component still server-renders; only ssr: false skips that) or mount it as a childless sibling. ${LEGACY_STOPGAP}`;
26475
+ var ANALYTICS_WRAPPER_FIX = `Remove the <AnalyticsProvider> wrapper: ${LAYOUT_ALREADY_DEFERS} (configure it with analytics={{ ... }}). Track custom events with trackEvent / trackConversion from @sonordev/site-kit/analytics, which need no provider, instead of useAnalytics(). ` + LEGACY_STOPGAP;
26476
+
26493
26477
  // src/cli/agent/checks.ts
26494
26478
  var API_URL4 = process.env.SONOR_API_URL || "https://api.sonor.io";
26495
26479
  async function readFileOrNull(p) {
@@ -26972,7 +26956,7 @@ async function checkSsrRenderFromUrl(url, timeoutMs = 12e3) {
26972
26956
  level: "error",
26973
26957
  message: "Page bailed to client rendering",
26974
26958
  detail: `Only ${contentTags} content tags in the server HTML \u2014 the route ships an empty shell + RSC flight data.`,
26975
- fix: "Run SiteKitLayout with analytics={false} and mount analytics as a deferred, childless sibling (never wrap {children}).",
26959
+ fix: SSR_BAILOUT_FIX,
26976
26960
  docs: "manifest#failureModes"
26977
26961
  };
26978
26962
  }
@@ -27032,7 +27016,7 @@ async function checkSsrRenderFromBuild(cwd) {
27032
27016
  title: "Server-side rendering",
27033
27017
  level: "error",
27034
27018
  message: `Prerendered HTML has only ${contentTags} content tags \u2014 likely CSR bailout`,
27035
- fix: "Run SiteKitLayout with analytics={false} + a deferred, childless analytics sibling.",
27019
+ fix: SSR_BAILOUT_FIX,
27036
27020
  docs: "manifest#failureModes"
27037
27021
  };
27038
27022
  }
@@ -27493,7 +27477,7 @@ async function resolveRouteCopy(paths) {
27493
27477
  try {
27494
27478
  if (process.env.SONOR_API_KEY) {
27495
27479
  ;
27496
- ({ getSEOPageData } = await import('../api-N5OLQXYN.js'));
27480
+ ({ getSEOPageData } = await import('../api-XR5APCH3.js'));
27497
27481
  }
27498
27482
  } catch {
27499
27483
  getSEOPageData = null;
@@ -30998,18 +30982,21 @@ var analyticsSibling = {
30998
30982
  appliesTo(filePath) {
30999
30983
  return LAYOUT_FILE.test(filePath.replace(/\\/g, "/"));
31000
30984
  },
31001
- // Deliberately detect-and-flag, never auto-rewrite: turning an arbitrary
31002
- // layout into the deferred-sibling shape can silently drop analytics or break
31003
- // the tree. We surface the exact fix + reference impls instead of guessing.
30985
+ // Deliberately detect-and-flag, never auto-rewrite: removing a wrapper from
30986
+ // an arbitrary layout can silently drop analytics or break the tree. We
30987
+ // surface the exact fix instead of guessing.
30988
+ //
30989
+ // A plain <SiteKitLayout>{children}</SiteKitLayout> is NOT flagged: it is the
30990
+ // blessed layout, and since 3.0.2 it mounts analytics as a deferred, childless
30991
+ // sibling itself (see ssr-bailout.ts). Flagging it told every correct site to
30992
+ // hand-roll the sibling the package already ships.
31004
30993
  run(source) {
31005
30994
  const flags = [];
31006
- const wrapsChildren = /\{\s*children\s*\}/.test(source);
31007
- const sitekitLayoutOn = /<SiteKitLayout(?![^>]*analytics\s*=\s*\{?\s*false)/.test(source) && /<SiteKitLayout[\s\S]*\{\s*children\s*\}[\s\S]*<\/SiteKitLayout>/.test(source);
31008
30995
  const rawAnalyticsWrapper = /<AnalyticsProvider[\s\S]*\{\s*children\s*\}[\s\S]*<\/AnalyticsProvider>/.test(source);
31009
- if (wrapsChildren && (sitekitLayoutOn || rawAnalyticsWrapper)) {
30996
+ if (rawAnalyticsWrapper) {
31010
30997
  flags.push({
31011
- reason: rawAnalyticsWrapper ? "AnalyticsProvider wraps {children} \u2014 this de-opts the route to client rendering (SSR bailout)" : "SiteKitLayout wraps {children} with analytics enabled \u2014 analytics runs in the hydration path",
31012
- fix: "Run SiteKitLayout with analytics={false} and mount analytics as a deferred, lazy, CHILDLESS sibling (never wrap {children}). Reference: upforge-nextjs/app/deferred-analytics.tsx and true-power-systems-nextjs/src/components/DeferredAnalytics.tsx."
30998
+ reason: "AnalyticsProvider wraps {children}: analytics joins the hydration path, and if the provider is lazy-loaded with next/dynamic({ ssr: false }) the whole route de-opts to client rendering (SSR bailout)",
30999
+ fix: ANALYTICS_WRAPPER_FIX
31013
31000
  });
31014
31001
  }
31015
31002
  return { output: source, changes: [], flags };
@@ -32420,7 +32407,7 @@ async function geoCommand(options) {
32420
32407
  (0, import_dotenv.config)({ path: ".env.local", quiet: true });
32421
32408
  (0, import_dotenv.config)({ path: ".env", quiet: true });
32422
32409
  var program2 = new Command();
32423
- program2.name("sonor-setup").description("Setup + verification toolchain for @sonordev/site-kit").version(chunkUTOHMK52_js.SITE_KIT_VERSION);
32410
+ program2.name("sonor-setup").description("Setup + verification toolchain for @sonordev/site-kit").version(chunkSUZ3ZLB2_js.SITE_KIT_VERSION);
32424
32411
  withAgentFlags(
32425
32412
  program2.command("verify").description("Verify the integration actually works (health + key + SSR) \u2014 exit 0 = done").option("--url <url>", "Verify a running/deployed URL server-renders (recommended for agents)").option("--offline", "Skip the network key-validity ping").option("--strict", "Treat warnings as failures")
32426
32413
  ).action(verifyCommand);