@sonordev/site-kit 4.3.0 → 4.3.2
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.
- package/README.md +14 -6
- package/agent-manifest.json +10 -3
- package/dist/AnalyticsProvider-DNMYYBKX.js +31 -0
- package/dist/{AnalyticsProvider-WRAJE62B.js.map → AnalyticsProvider-DNMYYBKX.js.map} +1 -1
- package/dist/AnalyticsProvider-TWRQHKPZ.mjs +10 -0
- package/dist/{AnalyticsProvider-YZAOPVAY.mjs.map → AnalyticsProvider-TWRQHKPZ.mjs.map} +1 -1
- package/dist/ChatWidget-MDWEXISQ.js +20 -0
- package/dist/{ChatWidget-NMZGPP7A.js.map → ChatWidget-MDWEXISQ.js.map} +1 -1
- package/dist/ChatWidget-UQMEJAHY.mjs +11 -0
- package/dist/{ChatWidget-ZI34F7JU.mjs.map → ChatWidget-UQMEJAHY.mjs.map} +1 -1
- package/dist/EngageWidget-UIIN43ZU.mjs +9 -0
- package/dist/{EngageWidget-NI2BN6GO.mjs.map → EngageWidget-UIIN43ZU.mjs.map} +1 -1
- package/dist/EngageWidget-VRC7NUG6.js +18 -0
- package/dist/{EngageWidget-2U4EN7OP.js.map → EngageWidget-VRC7NUG6.js.map} +1 -1
- package/dist/{FileField-I4UICUJF.mjs → FileField-LVF3SCDC.mjs} +5 -5
- package/dist/{FileField-I4UICUJF.mjs.map → FileField-LVF3SCDC.mjs.map} +1 -1
- package/dist/{FileField-UI6DAB3K.js → FileField-W4VXQ3CM.js} +6 -6
- package/dist/{FileField-UI6DAB3K.js.map → FileField-W4VXQ3CM.js.map} +1 -1
- package/dist/{FormSpotlight-LO4BU6FY.js → FormSpotlight-CRLFAPNI.js} +15 -15
- package/dist/{FormSpotlight-LO4BU6FY.js.map → FormSpotlight-CRLFAPNI.js.map} +1 -1
- package/dist/{FormSpotlight-RGFZMYPT.mjs → FormSpotlight-ZPISKGIX.mjs} +3 -3
- package/dist/{FormSpotlight-RGFZMYPT.mjs.map → FormSpotlight-ZPISKGIX.mjs.map} +1 -1
- package/dist/{FormStage-NT5ZAH5Y.js → FormStage-QMRPAROJ.js} +13 -13
- package/dist/{FormStage-NT5ZAH5Y.js.map → FormStage-QMRPAROJ.js.map} +1 -1
- package/dist/{FormStage-RBXMNWM3.mjs → FormStage-WQOAP7CR.mjs} +3 -3
- package/dist/{FormStage-RBXMNWM3.mjs.map → FormStage-WQOAP7CR.mjs.map} +1 -1
- package/dist/ManagedForm-7L2W5BBZ.js +23 -0
- package/dist/{ManagedForm-MKV5RM54.js.map → ManagedForm-7L2W5BBZ.js.map} +1 -1
- package/dist/ManagedForm-D7CFOIXH.mjs +14 -0
- package/dist/{ManagedForm-CJOFGQK6.mjs.map → ManagedForm-D7CFOIXH.mjs.map} +1 -1
- package/dist/{SignalCore-IX4L2TYS.js → SignalCore-DNXKQKRO.js} +11 -11
- package/dist/{SignalCore-IX4L2TYS.js.map → SignalCore-DNXKQKRO.js.map} +1 -1
- package/dist/{SignalCore-B2ZSLEXI.mjs → SignalCore-JQLRWMPJ.mjs} +5 -5
- package/dist/{SignalCore-B2ZSLEXI.mjs.map → SignalCore-JQLRWMPJ.mjs.map} +1 -1
- package/dist/SitemapSync-RFY6PUG7.mjs +8 -0
- package/dist/{SitemapSync-2LLNO24P.mjs.map → SitemapSync-RFY6PUG7.mjs.map} +1 -1
- package/dist/SitemapSync-SR6OJRIA.js +17 -0
- package/dist/{SitemapSync-B2CY2JYM.js.map → SitemapSync-SR6OJRIA.js.map} +1 -1
- package/dist/analytics/index.js +9 -9
- package/dist/analytics/index.mjs +4 -4
- package/dist/blog/server-ui.js +3 -3
- package/dist/blog/server-ui.mjs +2 -2
- package/dist/blog/server.js +41 -41
- package/dist/blog/server.mjs +2 -2
- package/dist/{chunk-3DFYFDGC.mjs → chunk-36E6QKGL.mjs} +3 -3
- package/dist/{chunk-3DFYFDGC.mjs.map → chunk-36E6QKGL.mjs.map} +1 -1
- package/dist/{chunk-6SN3ABID.mjs → chunk-3BXYZC3V.mjs} +3 -3
- package/dist/{chunk-6SN3ABID.mjs.map → chunk-3BXYZC3V.mjs.map} +1 -1
- package/dist/{chunk-QCZBXG7G.js → chunk-3TXX5KIN.js} +5 -5
- package/dist/{chunk-QCZBXG7G.js.map → chunk-3TXX5KIN.js.map} +1 -1
- package/dist/{chunk-5PBJ42NC.mjs → chunk-45VPULF2.mjs} +4 -4
- package/dist/{chunk-5PBJ42NC.mjs.map → chunk-45VPULF2.mjs.map} +1 -1
- package/dist/{chunk-GC3BC6HQ.js → chunk-46BMNWE6.js} +2 -2
- package/dist/chunk-46BMNWE6.js.map +1 -0
- package/dist/{chunk-K7QBRZLN.js → chunk-4OSZ2JD3.js} +18 -18
- package/dist/{chunk-K7QBRZLN.js.map → chunk-4OSZ2JD3.js.map} +1 -1
- package/dist/{chunk-OVIDFJIK.mjs → chunk-5YKMHPJL.mjs} +3 -3
- package/dist/chunk-5YKMHPJL.mjs.map +1 -0
- package/dist/{chunk-SM27DPML.js → chunk-67MTTPJV.js} +13 -12
- package/dist/chunk-67MTTPJV.js.map +1 -0
- package/dist/{chunk-UDXWBLBH.js → chunk-6ABCPVJL.js} +4 -4
- package/dist/{chunk-UDXWBLBH.js.map → chunk-6ABCPVJL.js.map} +1 -1
- package/dist/{chunk-SACGTFCK.js → chunk-6CJP7BFM.js} +2 -2
- package/dist/chunk-6CJP7BFM.js.map +1 -0
- package/dist/{chunk-PA7ENTUZ.mjs → chunk-6VHVIBLQ.mjs} +3 -3
- package/dist/{chunk-PA7ENTUZ.mjs.map → chunk-6VHVIBLQ.mjs.map} +1 -1
- package/dist/{chunk-2EA4DC2G.js → chunk-6WJDTGM6.js} +5 -5
- package/dist/{chunk-2EA4DC2G.js.map → chunk-6WJDTGM6.js.map} +1 -1
- package/dist/{chunk-UDBUK5ZJ.mjs → chunk-6XNEGG5B.mjs} +28 -5
- package/dist/chunk-6XNEGG5B.mjs.map +1 -0
- package/dist/{chunk-L4FHGCQ2.mjs → chunk-A7OO6OPW.mjs} +3 -3
- package/dist/{chunk-L4FHGCQ2.mjs.map → chunk-A7OO6OPW.mjs.map} +1 -1
- package/dist/{chunk-KRARQ2ZF.mjs → chunk-AJQI3WTN.mjs} +2 -2
- package/dist/chunk-AJQI3WTN.mjs.map +1 -0
- package/dist/{chunk-U2CJZ6O5.mjs → chunk-B4BFQSSS.mjs} +4 -4
- package/dist/{chunk-U2CJZ6O5.mjs.map → chunk-B4BFQSSS.mjs.map} +1 -1
- package/dist/{chunk-XPNOM353.mjs → chunk-BUF6IZUE.mjs} +3 -3
- package/dist/{chunk-XPNOM353.mjs.map → chunk-BUF6IZUE.mjs.map} +1 -1
- package/dist/{chunk-IDSTSLMM.mjs → chunk-C22WW7G2.mjs} +3 -3
- package/dist/{chunk-IDSTSLMM.mjs.map → chunk-C22WW7G2.mjs.map} +1 -1
- package/dist/chunk-C3M5E4YI.js +25 -0
- package/dist/chunk-C3M5E4YI.js.map +1 -0
- package/dist/{chunk-T6YDAJ5F.js → chunk-CQWG5ICB.js} +4 -4
- package/dist/{chunk-T6YDAJ5F.js.map → chunk-CQWG5ICB.js.map} +1 -1
- package/dist/{chunk-U3X6AKCN.mjs → chunk-D4KHH44S.mjs} +22 -11
- package/dist/chunk-D4KHH44S.mjs.map +1 -0
- package/dist/{chunk-BGIT5M27.js → chunk-E242GZNE.js} +4 -4
- package/dist/{chunk-BGIT5M27.js.map → chunk-E242GZNE.js.map} +1 -1
- package/dist/{chunk-ANJBOE46.mjs → chunk-EQZ42LAK.mjs} +4 -4
- package/dist/{chunk-ANJBOE46.mjs.map → chunk-EQZ42LAK.mjs.map} +1 -1
- package/dist/{chunk-IWV72YOE.js → chunk-EUAOOOIE.js} +14 -14
- package/dist/{chunk-IWV72YOE.js.map → chunk-EUAOOOIE.js.map} +1 -1
- package/dist/{chunk-TMKLH6MY.js → chunk-FBI6LYTM.js} +14 -14
- package/dist/{chunk-TMKLH6MY.js.map → chunk-FBI6LYTM.js.map} +1 -1
- package/dist/{chunk-PJZHIISA.js → chunk-FIA3WNEM.js} +3 -3
- package/dist/{chunk-PJZHIISA.js.map → chunk-FIA3WNEM.js.map} +1 -1
- package/dist/{chunk-TBIWQQVF.js → chunk-FPWPRFTP.js} +15 -15
- package/dist/{chunk-TBIWQQVF.js.map → chunk-FPWPRFTP.js.map} +1 -1
- package/dist/chunk-GZJE23Y5.mjs +21 -0
- package/dist/chunk-GZJE23Y5.mjs.map +1 -0
- package/dist/{chunk-3AAFSXFC.js → chunk-H27UCW6K.js} +15 -15
- package/dist/{chunk-3AAFSXFC.js.map → chunk-H27UCW6K.js.map} +1 -1
- package/dist/{chunk-7X4LKAYJ.js → chunk-H3F4GV2S.js} +14 -14
- package/dist/{chunk-7X4LKAYJ.js.map → chunk-H3F4GV2S.js.map} +1 -1
- package/dist/{chunk-IW6S62NR.js → chunk-I2IA3JXD.js} +8 -8
- package/dist/{chunk-IW6S62NR.js.map → chunk-I2IA3JXD.js.map} +1 -1
- package/dist/{chunk-ACL5FDJI.mjs → chunk-I6XKZNFT.mjs} +3 -3
- package/dist/{chunk-ACL5FDJI.mjs.map → chunk-I6XKZNFT.mjs.map} +1 -1
- package/dist/{chunk-LVMPYAOQ.mjs → chunk-INR6AQ54.mjs} +4 -4
- package/dist/{chunk-LVMPYAOQ.mjs.map → chunk-INR6AQ54.mjs.map} +1 -1
- package/dist/{chunk-IT76CWZ2.mjs → chunk-JNKQKGYH.mjs} +3 -3
- package/dist/{chunk-IT76CWZ2.mjs.map → chunk-JNKQKGYH.mjs.map} +1 -1
- package/dist/{chunk-NF3QVKWU.js → chunk-JX3PO2MH.js} +4 -4
- package/dist/{chunk-NF3QVKWU.js.map → chunk-JX3PO2MH.js.map} +1 -1
- package/dist/{chunk-A624YYDG.js → chunk-L2LJQIM3.js} +11 -11
- package/dist/{chunk-A624YYDG.js.map → chunk-L2LJQIM3.js.map} +1 -1
- package/dist/{chunk-G5EETWKH.mjs → chunk-LQENHKD3.mjs} +4 -4
- package/dist/{chunk-G5EETWKH.mjs.map → chunk-LQENHKD3.mjs.map} +1 -1
- package/dist/{chunk-JJTCVH4Q.mjs → chunk-LVM63JSA.mjs} +3 -3
- package/dist/{chunk-JJTCVH4Q.mjs.map → chunk-LVM63JSA.mjs.map} +1 -1
- package/dist/{chunk-3KVG2PSJ.js → chunk-M52FYLV4.js} +7 -7
- package/dist/{chunk-3KVG2PSJ.js.map → chunk-M52FYLV4.js.map} +1 -1
- package/dist/{chunk-YSLGMCQH.mjs → chunk-MWKYLWCH.mjs} +9 -8
- package/dist/chunk-MWKYLWCH.mjs.map +1 -0
- package/dist/{chunk-OBRGUSGB.mjs → chunk-NDS6MXIP.mjs} +3 -3
- package/dist/{chunk-OBRGUSGB.mjs.map → chunk-NDS6MXIP.mjs.map} +1 -1
- package/dist/{chunk-3ZD2XCLE.mjs → chunk-NJ4YX3CI.mjs} +4 -4
- package/dist/{chunk-3ZD2XCLE.mjs.map → chunk-NJ4YX3CI.mjs.map} +1 -1
- package/dist/{chunk-QEHPIQYN.mjs → chunk-NQEUFRMX.mjs} +3 -3
- package/dist/{chunk-QEHPIQYN.mjs.map → chunk-NQEUFRMX.mjs.map} +1 -1
- package/dist/chunk-NQNSATTA.mjs +6 -0
- package/dist/{chunk-2X5ZB5D7.mjs.map → chunk-NQNSATTA.mjs.map} +1 -1
- package/dist/{chunk-QPIKPWAZ.js → chunk-O5GHP7UO.js} +28 -5
- package/dist/chunk-O5GHP7UO.js.map +1 -0
- package/dist/{chunk-SABYEM57.js → chunk-OQTP5M5Y.js} +9 -9
- package/dist/{chunk-SABYEM57.js.map → chunk-OQTP5M5Y.js.map} +1 -1
- package/dist/chunk-OZ3FU4BT.js +23 -0
- package/dist/chunk-OZ3FU4BT.js.map +1 -0
- package/dist/{chunk-JBX6KV46.mjs → chunk-PSBAUXUH.mjs} +4 -4
- package/dist/{chunk-JBX6KV46.mjs.map → chunk-PSBAUXUH.mjs.map} +1 -1
- package/dist/{chunk-77CIIDE6.js → chunk-PXAALKTP.js} +3 -3
- package/dist/chunk-PXAALKTP.js.map +1 -0
- package/dist/{chunk-5S735BSH.mjs → chunk-R6XBPA6C.mjs} +4 -4
- package/dist/{chunk-5S735BSH.mjs.map → chunk-R6XBPA6C.mjs.map} +1 -1
- package/dist/{chunk-CBUGUKRD.js → chunk-R7V7HNJJ.js} +22 -11
- package/dist/chunk-R7V7HNJJ.js.map +1 -0
- package/dist/{chunk-NGAKS4WG.js → chunk-RUOEUMAW.js} +3 -3
- package/dist/{chunk-NGAKS4WG.js.map → chunk-RUOEUMAW.js.map} +1 -1
- package/dist/{chunk-IUZ2RH4V.mjs → chunk-SFMNUVDN.mjs} +3 -3
- package/dist/{chunk-IUZ2RH4V.mjs.map → chunk-SFMNUVDN.mjs.map} +1 -1
- package/dist/{chunk-IWFQPGA2.mjs → chunk-TY3BPHTE.mjs} +7 -7
- package/dist/{chunk-IWFQPGA2.mjs.map → chunk-TY3BPHTE.mjs.map} +1 -1
- package/dist/{chunk-SRJSR6YP.mjs → chunk-UJ6CHZAI.mjs} +2 -2
- package/dist/chunk-UJ6CHZAI.mjs.map +1 -0
- package/dist/{chunk-R2O5VDNJ.js → chunk-ULP6BTN2.js} +12 -12
- package/dist/{chunk-R2O5VDNJ.js.map → chunk-ULP6BTN2.js.map} +1 -1
- package/dist/{chunk-2CHOHLB7.mjs → chunk-UOTXSWKZ.mjs} +3 -3
- package/dist/{chunk-2CHOHLB7.mjs.map → chunk-UOTXSWKZ.mjs.map} +1 -1
- package/dist/{chunk-LTALFZX7.js → chunk-UR4HKLHW.js} +6 -6
- package/dist/{chunk-LTALFZX7.js.map → chunk-UR4HKLHW.js.map} +1 -1
- package/dist/chunk-UXIUJYFK.js +8 -0
- package/dist/{chunk-U3P4WF2A.js.map → chunk-UXIUJYFK.js.map} +1 -1
- package/dist/{chunk-O4TMBV54.js → chunk-VLHHBJSV.js} +8 -8
- package/dist/{chunk-O4TMBV54.js.map → chunk-VLHHBJSV.js.map} +1 -1
- package/dist/{chunk-RW76CJBS.mjs → chunk-VU45CH5R.mjs} +3 -3
- package/dist/{chunk-RW76CJBS.mjs.map → chunk-VU45CH5R.mjs.map} +1 -1
- package/dist/{chunk-IZVV36RT.js → chunk-VYNOQCEK.js} +14 -14
- package/dist/{chunk-IZVV36RT.js.map → chunk-VYNOQCEK.js.map} +1 -1
- package/dist/{chunk-DYDJ6NCM.mjs → chunk-X2PAODFM.mjs} +3 -3
- package/dist/{chunk-DYDJ6NCM.mjs.map → chunk-X2PAODFM.mjs.map} +1 -1
- package/dist/{chunk-OOBEJZJ5.js → chunk-YWBXKEAF.js} +3 -3
- package/dist/{chunk-OOBEJZJ5.js.map → chunk-YWBXKEAF.js.map} +1 -1
- package/dist/chunk-ZWMAQ52D.mjs +23 -0
- package/dist/chunk-ZWMAQ52D.mjs.map +1 -0
- package/dist/{chunk-FIVPS4Z6.js → chunk-ZXRORNAW.js} +4 -4
- package/dist/{chunk-FIVPS4Z6.js.map → chunk-ZXRORNAW.js.map} +1 -1
- package/dist/cli/commands/og.d.ts +33 -0
- package/dist/cli/commands/og.d.ts.map +1 -1
- package/dist/cli/commands/og.test.d.ts +2 -0
- package/dist/cli/commands/og.test.d.ts.map +1 -0
- package/dist/cli/index.js +61 -25
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/index.mjs +54 -18
- package/dist/cli/index.mjs.map +1 -1
- package/dist/client/index.js +5 -4
- package/dist/client/index.js.map +1 -1
- package/dist/client/index.mjs +4 -3
- package/dist/client/index.mjs.map +1 -1
- package/dist/cms/index.js +3 -3
- package/dist/cms/index.mjs +2 -2
- package/dist/cms/server.js +5 -5
- package/dist/cms/server.mjs +2 -2
- package/dist/commerce/index.js +56 -56
- package/dist/commerce/index.mjs +5 -5
- package/dist/config/index.d.ts +1 -1
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +2 -2
- package/dist/config/index.js.map +1 -1
- package/dist/config/index.mjs +1 -1
- package/dist/config/index.mjs.map +1 -1
- package/dist/engage/index.js +10 -10
- package/dist/engage/index.mjs +7 -7
- package/dist/fleet/index.js +8 -8
- package/dist/fleet/index.mjs +4 -4
- package/dist/forms/index.js +16 -16
- package/dist/forms/index.mjs +9 -9
- package/dist/forms/server.js +12 -12
- package/dist/forms/server.mjs +9 -9
- package/dist/forms/static.js +7 -7
- package/dist/forms/static.mjs +6 -6
- package/dist/images/index.js +11 -11
- package/dist/images/index.mjs +4 -4
- package/dist/index.js +68 -68
- package/dist/index.mjs +10 -10
- package/dist/layout/client.js +9 -8
- package/dist/layout/client.mjs +8 -7
- package/dist/layout/index.js +13 -12
- package/dist/layout/index.js.map +1 -1
- package/dist/layout/index.mjs +10 -9
- package/dist/layout/index.mjs.map +1 -1
- package/dist/llms/api.d.ts +13 -3
- package/dist/llms/api.d.ts.map +1 -1
- package/dist/llms/generateLLMsTxt.d.ts.map +1 -1
- package/dist/llms/index.js +14 -12
- package/dist/llms/index.js.map +1 -1
- package/dist/llms/index.mjs +4 -2
- package/dist/llms/index.mjs.map +1 -1
- package/dist/llms/types.d.ts +8 -0
- package/dist/llms/types.d.ts.map +1 -1
- package/dist/llms/writeLLMsTxt.d.ts +9 -0
- package/dist/llms/writeLLMsTxt.d.ts.map +1 -1
- package/dist/maps/index.js +5 -5
- package/dist/maps/index.mjs +3 -3
- package/dist/og/config.d.ts +6 -0
- package/dist/og/config.d.ts.map +1 -1
- package/dist/og/index.js +5 -5
- package/dist/og/index.mjs +1 -1
- package/dist/og/pages.d.ts +39 -1
- package/dist/og/pages.d.ts.map +1 -1
- package/dist/{middleware → proxy}/index.d.ts +19 -9
- package/dist/proxy/index.d.ts.map +1 -0
- package/dist/{middleware → proxy}/index.js +10 -10
- package/dist/proxy/index.js.map +1 -0
- package/dist/{middleware → proxy}/index.mjs +7 -7
- package/dist/proxy/index.mjs.map +1 -0
- package/dist/proxy/securityHeaders.d.ts.map +1 -0
- package/dist/proxy/securityHeaders.test.d.ts.map +1 -0
- package/dist/{middleware → proxy}/segment.d.ts +1 -1
- package/dist/proxy/segment.d.ts.map +1 -0
- package/dist/proxy/segment.test.d.ts.map +1 -0
- package/dist/redirects/index.d.ts +2 -2
- package/dist/redirects/index.js +8 -8
- package/dist/redirects/index.mjs +1 -1
- package/dist/redirects/not-found.js +5 -5
- package/dist/redirects/not-found.mjs +1 -1
- package/dist/search/index.js +4 -4
- package/dist/search/index.mjs +3 -3
- package/dist/seo/client.js +5 -5
- package/dist/seo/client.mjs +4 -4
- package/dist/seo/index.js +43 -43
- package/dist/seo/index.mjs +9 -9
- package/dist/seo/routing.d.ts +3 -3
- package/dist/seo/server.js +19 -19
- package/dist/seo/server.mjs +3 -3
- package/dist/server/index.js +8 -8
- package/dist/server/index.mjs +3 -3
- package/dist/server/server-fetch.d.ts +7 -0
- package/dist/server/server-fetch.d.ts.map +1 -1
- package/dist/server/server-fetch.test.d.ts +2 -0
- package/dist/server/server-fetch.test.d.ts.map +1 -0
- package/dist/{server-api-GRZ3ZBCC.js → server-api-DB2SIUP4.js} +22 -22
- package/dist/{server-api-GRZ3ZBCC.js.map → server-api-DB2SIUP4.js.map} +1 -1
- package/dist/{server-api-2RAXJS3T.mjs → server-api-HW4PL2L2.mjs} +4 -4
- package/dist/{server-api-2RAXJS3T.mjs.map → server-api-HW4PL2L2.mjs.map} +1 -1
- package/dist/shared/build-entries.d.ts +1 -1
- package/dist/shared/build-entries.d.ts.map +1 -1
- package/dist/shared/publishCredential.d.ts +25 -9
- package/dist/shared/publishCredential.d.ts.map +1 -1
- package/dist/shared/version.d.ts +1 -1
- package/dist/signal/index.js +11 -11
- package/dist/signal/index.mjs +2 -2
- package/dist/sitemap/index.d.ts +46 -0
- package/dist/sitemap/index.d.ts.map +1 -1
- package/dist/sitemap/index.js +31 -10
- package/dist/sitemap/index.js.map +1 -1
- package/dist/sitemap/index.mjs +31 -10
- package/dist/sitemap/index.mjs.map +1 -1
- package/dist/sitemap/site-scope.test.d.ts +2 -0
- package/dist/sitemap/site-scope.test.d.ts.map +1 -0
- package/dist/sites/resolve.d.ts +7 -0
- package/dist/sites/resolve.d.ts.map +1 -0
- package/dist/slots/index.js +2 -2
- package/dist/slots/index.mjs +1 -1
- package/dist/sync/index.js +16 -16
- package/dist/sync/index.mjs +4 -4
- package/package.json +10 -5
- package/dist/AnalyticsProvider-WRAJE62B.js +0 -31
- package/dist/AnalyticsProvider-YZAOPVAY.mjs +0 -10
- package/dist/ChatWidget-NMZGPP7A.js +0 -20
- package/dist/ChatWidget-ZI34F7JU.mjs +0 -11
- package/dist/EngageWidget-2U4EN7OP.js +0 -18
- package/dist/EngageWidget-NI2BN6GO.mjs +0 -9
- package/dist/ManagedForm-CJOFGQK6.mjs +0 -14
- package/dist/ManagedForm-MKV5RM54.js +0 -23
- package/dist/SitemapSync-2LLNO24P.mjs +0 -8
- package/dist/SitemapSync-B2CY2JYM.js +0 -17
- package/dist/chunk-2X5ZB5D7.mjs +0 -6
- package/dist/chunk-77CIIDE6.js.map +0 -1
- package/dist/chunk-CBUGUKRD.js.map +0 -1
- package/dist/chunk-F3MOVBEE.js +0 -40
- package/dist/chunk-F3MOVBEE.js.map +0 -1
- package/dist/chunk-GC3BC6HQ.js.map +0 -1
- package/dist/chunk-KRARQ2ZF.mjs.map +0 -1
- package/dist/chunk-OVIDFJIK.mjs.map +0 -1
- package/dist/chunk-QPIKPWAZ.js.map +0 -1
- package/dist/chunk-SACGTFCK.js.map +0 -1
- package/dist/chunk-SM27DPML.js.map +0 -1
- package/dist/chunk-SRJSR6YP.mjs.map +0 -1
- package/dist/chunk-U3P4WF2A.js +0 -8
- package/dist/chunk-U3X6AKCN.mjs.map +0 -1
- package/dist/chunk-UDBUK5ZJ.mjs.map +0 -1
- package/dist/chunk-UFT7IKDN.mjs +0 -37
- package/dist/chunk-UFT7IKDN.mjs.map +0 -1
- package/dist/chunk-YSLGMCQH.mjs.map +0 -1
- package/dist/middleware/index.d.ts.map +0 -1
- package/dist/middleware/index.js.map +0 -1
- package/dist/middleware/index.mjs.map +0 -1
- package/dist/middleware/securityHeaders.d.ts.map +0 -1
- package/dist/middleware/securityHeaders.test.d.ts.map +0 -1
- package/dist/middleware/segment.d.ts.map +0 -1
- package/dist/middleware/segment.test.d.ts.map +0 -1
- /package/dist/{middleware → proxy}/securityHeaders.d.ts +0 -0
- /package/dist/{middleware → proxy}/securityHeaders.test.d.ts +0 -0
- /package/dist/{middleware → proxy}/segment.test.d.ts +0 -0
package/dist/index.js
CHANGED
|
@@ -2,24 +2,24 @@
|
|
|
2
2
|
|
|
3
3
|
var chunkJA77WXRE_js = require('./chunk-JA77WXRE.js');
|
|
4
4
|
var chunkCIM5W3UO_js = require('./chunk-CIM5W3UO.js');
|
|
5
|
-
var
|
|
6
|
-
var
|
|
5
|
+
var chunk46BMNWE6_js = require('./chunk-46BMNWE6.js');
|
|
6
|
+
var chunkH3F4GV2S_js = require('./chunk-H3F4GV2S.js');
|
|
7
7
|
require('./chunk-GCPPXUAI.js');
|
|
8
8
|
var chunkEHJANA5C_js = require('./chunk-EHJANA5C.js');
|
|
9
9
|
var chunkGSRT66PA_js = require('./chunk-GSRT66PA.js');
|
|
10
|
-
var
|
|
11
|
-
var
|
|
10
|
+
var chunkVYNOQCEK_js = require('./chunk-VYNOQCEK.js');
|
|
11
|
+
var chunkOQTP5M5Y_js = require('./chunk-OQTP5M5Y.js');
|
|
12
12
|
require('./chunk-JP5WGL75.js');
|
|
13
|
-
var
|
|
14
|
-
var
|
|
13
|
+
var chunkI2IA3JXD_js = require('./chunk-I2IA3JXD.js');
|
|
14
|
+
var chunkFIA3WNEM_js = require('./chunk-FIA3WNEM.js');
|
|
15
15
|
require('./chunk-EDZWNCSE.js');
|
|
16
|
-
require('./chunk-
|
|
16
|
+
require('./chunk-EUAOOOIE.js');
|
|
17
17
|
require('./chunk-HMFFAUCD.js');
|
|
18
18
|
require('./chunk-RC4WWQXR.js');
|
|
19
19
|
require('./chunk-VJMPIRSD.js');
|
|
20
|
-
var
|
|
21
|
-
require('./chunk-
|
|
22
|
-
require('./chunk-
|
|
20
|
+
var chunkFPWPRFTP_js = require('./chunk-FPWPRFTP.js');
|
|
21
|
+
require('./chunk-ZXRORNAW.js');
|
|
22
|
+
require('./chunk-UXIUJYFK.js');
|
|
23
23
|
require('./chunk-SNAQBZPT.js');
|
|
24
24
|
var react = require('react');
|
|
25
25
|
var jsxRuntime = require('react/jsx-runtime');
|
|
@@ -37,7 +37,7 @@ async function apiGet(endpoint) {
|
|
|
37
37
|
return null;
|
|
38
38
|
}
|
|
39
39
|
try {
|
|
40
|
-
const response = await
|
|
40
|
+
const response = await chunkFPWPRFTP_js.sonorFetch(
|
|
41
41
|
`${apiUrl}${endpoint}`,
|
|
42
42
|
{ method: "GET" },
|
|
43
43
|
{ apiKey, retries: 0 }
|
|
@@ -174,47 +174,47 @@ Object.defineProperty(exports, "landingPageMetadata", {
|
|
|
174
174
|
});
|
|
175
175
|
Object.defineProperty(exports, "clearRedirectCache", {
|
|
176
176
|
enumerable: true,
|
|
177
|
-
get: function () { return
|
|
177
|
+
get: function () { return chunk46BMNWE6_js.clearRedirectCache; }
|
|
178
178
|
});
|
|
179
179
|
Object.defineProperty(exports, "fetchRedirectRules", {
|
|
180
180
|
enumerable: true,
|
|
181
|
-
get: function () { return
|
|
181
|
+
get: function () { return chunk46BMNWE6_js.fetchRedirectRules; }
|
|
182
182
|
});
|
|
183
183
|
Object.defineProperty(exports, "generateNextRedirects", {
|
|
184
184
|
enumerable: true,
|
|
185
|
-
get: function () { return
|
|
185
|
+
get: function () { return chunk46BMNWE6_js.generateNextRedirects; }
|
|
186
186
|
});
|
|
187
187
|
Object.defineProperty(exports, "handleManagedRedirects", {
|
|
188
188
|
enumerable: true,
|
|
189
|
-
get: function () { return
|
|
189
|
+
get: function () { return chunk46BMNWE6_js.handleManagedRedirects; }
|
|
190
190
|
});
|
|
191
191
|
Object.defineProperty(exports, "ManagedImage", {
|
|
192
192
|
enumerable: true,
|
|
193
|
-
get: function () { return
|
|
193
|
+
get: function () { return chunkH3F4GV2S_js.ManagedImage; }
|
|
194
194
|
});
|
|
195
195
|
Object.defineProperty(exports, "assignImageToSlot", {
|
|
196
196
|
enumerable: true,
|
|
197
|
-
get: function () { return
|
|
197
|
+
get: function () { return chunkH3F4GV2S_js.assignImageToSlot; }
|
|
198
198
|
});
|
|
199
199
|
Object.defineProperty(exports, "clearImageSlot", {
|
|
200
200
|
enumerable: true,
|
|
201
|
-
get: function () { return
|
|
201
|
+
get: function () { return chunkH3F4GV2S_js.clearImageSlot; }
|
|
202
202
|
});
|
|
203
203
|
Object.defineProperty(exports, "fetchManagedImage", {
|
|
204
204
|
enumerable: true,
|
|
205
|
-
get: function () { return
|
|
205
|
+
get: function () { return chunkH3F4GV2S_js.fetchManagedImage; }
|
|
206
206
|
});
|
|
207
207
|
Object.defineProperty(exports, "fetchManagedImages", {
|
|
208
208
|
enumerable: true,
|
|
209
|
-
get: function () { return
|
|
209
|
+
get: function () { return chunkH3F4GV2S_js.fetchManagedImages; }
|
|
210
210
|
});
|
|
211
211
|
Object.defineProperty(exports, "listImageFiles", {
|
|
212
212
|
enumerable: true,
|
|
213
|
-
get: function () { return
|
|
213
|
+
get: function () { return chunkH3F4GV2S_js.listImageFiles; }
|
|
214
214
|
});
|
|
215
215
|
Object.defineProperty(exports, "uploadImage", {
|
|
216
216
|
enumerable: true,
|
|
217
|
-
get: function () { return
|
|
217
|
+
get: function () { return chunkH3F4GV2S_js.uploadImage; }
|
|
218
218
|
});
|
|
219
219
|
Object.defineProperty(exports, "TestimonialSection", {
|
|
220
220
|
enumerable: true,
|
|
@@ -230,187 +230,187 @@ Object.defineProperty(exports, "fetchReviews", {
|
|
|
230
230
|
});
|
|
231
231
|
Object.defineProperty(exports, "CalendarView", {
|
|
232
232
|
enumerable: true,
|
|
233
|
-
get: function () { return
|
|
233
|
+
get: function () { return chunkVYNOQCEK_js.CalendarView; }
|
|
234
234
|
});
|
|
235
235
|
Object.defineProperty(exports, "CheckoutForm", {
|
|
236
236
|
enumerable: true,
|
|
237
|
-
get: function () { return
|
|
237
|
+
get: function () { return chunkVYNOQCEK_js.CheckoutForm; }
|
|
238
238
|
});
|
|
239
239
|
Object.defineProperty(exports, "EventCalendar", {
|
|
240
240
|
enumerable: true,
|
|
241
|
-
get: function () { return
|
|
241
|
+
get: function () { return chunkVYNOQCEK_js.EventCalendar; }
|
|
242
242
|
});
|
|
243
243
|
Object.defineProperty(exports, "EventCheckout", {
|
|
244
244
|
enumerable: true,
|
|
245
|
-
get: function () { return
|
|
245
|
+
get: function () { return chunkVYNOQCEK_js.EventCheckout; }
|
|
246
246
|
});
|
|
247
247
|
Object.defineProperty(exports, "EventEmbed", {
|
|
248
248
|
enumerable: true,
|
|
249
|
-
get: function () { return
|
|
249
|
+
get: function () { return chunkVYNOQCEK_js.EventEmbed; }
|
|
250
250
|
});
|
|
251
251
|
Object.defineProperty(exports, "EventModal", {
|
|
252
252
|
enumerable: true,
|
|
253
|
-
get: function () { return
|
|
253
|
+
get: function () { return chunkVYNOQCEK_js.EventModal; }
|
|
254
254
|
});
|
|
255
255
|
Object.defineProperty(exports, "EventTile", {
|
|
256
256
|
enumerable: true,
|
|
257
|
-
get: function () { return
|
|
257
|
+
get: function () { return chunkVYNOQCEK_js.EventTile; }
|
|
258
258
|
});
|
|
259
259
|
Object.defineProperty(exports, "OfferingCard", {
|
|
260
260
|
enumerable: true,
|
|
261
|
-
get: function () { return
|
|
261
|
+
get: function () { return chunkVYNOQCEK_js.OfferingCard; }
|
|
262
262
|
});
|
|
263
263
|
Object.defineProperty(exports, "OfferingList", {
|
|
264
264
|
enumerable: true,
|
|
265
|
-
get: function () { return
|
|
265
|
+
get: function () { return chunkVYNOQCEK_js.OfferingList; }
|
|
266
266
|
});
|
|
267
267
|
Object.defineProperty(exports, "ProductEmbed", {
|
|
268
268
|
enumerable: true,
|
|
269
|
-
get: function () { return
|
|
269
|
+
get: function () { return chunkVYNOQCEK_js.ProductEmbed; }
|
|
270
270
|
});
|
|
271
271
|
Object.defineProperty(exports, "RegistrationForm", {
|
|
272
272
|
enumerable: true,
|
|
273
|
-
get: function () { return
|
|
273
|
+
get: function () { return chunkVYNOQCEK_js.RegistrationForm; }
|
|
274
274
|
});
|
|
275
275
|
Object.defineProperty(exports, "UpcomingEvents", {
|
|
276
276
|
enumerable: true,
|
|
277
|
-
get: function () { return
|
|
277
|
+
get: function () { return chunkVYNOQCEK_js.UpcomingEvents; }
|
|
278
278
|
});
|
|
279
279
|
Object.defineProperty(exports, "createCheckoutSession", {
|
|
280
280
|
enumerable: true,
|
|
281
|
-
get: function () { return
|
|
281
|
+
get: function () { return chunkVYNOQCEK_js.createCheckoutSession; }
|
|
282
282
|
});
|
|
283
283
|
Object.defineProperty(exports, "fetchNextEvent", {
|
|
284
284
|
enumerable: true,
|
|
285
|
-
get: function () { return
|
|
285
|
+
get: function () { return chunkVYNOQCEK_js.fetchNextEvent; }
|
|
286
286
|
});
|
|
287
287
|
Object.defineProperty(exports, "fetchOffering", {
|
|
288
288
|
enumerable: true,
|
|
289
|
-
get: function () { return
|
|
289
|
+
get: function () { return chunkVYNOQCEK_js.fetchOffering; }
|
|
290
290
|
});
|
|
291
291
|
Object.defineProperty(exports, "fetchOfferings", {
|
|
292
292
|
enumerable: true,
|
|
293
|
-
get: function () { return
|
|
293
|
+
get: function () { return chunkVYNOQCEK_js.fetchOfferings; }
|
|
294
294
|
});
|
|
295
295
|
Object.defineProperty(exports, "fetchProducts", {
|
|
296
296
|
enumerable: true,
|
|
297
|
-
get: function () { return
|
|
297
|
+
get: function () { return chunkVYNOQCEK_js.fetchProducts; }
|
|
298
298
|
});
|
|
299
299
|
Object.defineProperty(exports, "fetchServices", {
|
|
300
300
|
enumerable: true,
|
|
301
|
-
get: function () { return
|
|
301
|
+
get: function () { return chunkVYNOQCEK_js.fetchServices; }
|
|
302
302
|
});
|
|
303
303
|
Object.defineProperty(exports, "fetchUpcomingEvents", {
|
|
304
304
|
enumerable: true,
|
|
305
|
-
get: function () { return
|
|
305
|
+
get: function () { return chunkVYNOQCEK_js.fetchUpcomingEvents; }
|
|
306
306
|
});
|
|
307
307
|
Object.defineProperty(exports, "formatDate", {
|
|
308
308
|
enumerable: true,
|
|
309
|
-
get: function () { return
|
|
309
|
+
get: function () { return chunkVYNOQCEK_js.formatDate; }
|
|
310
310
|
});
|
|
311
311
|
Object.defineProperty(exports, "formatDateTime", {
|
|
312
312
|
enumerable: true,
|
|
313
|
-
get: function () { return
|
|
313
|
+
get: function () { return chunkVYNOQCEK_js.formatDateTime; }
|
|
314
314
|
});
|
|
315
315
|
Object.defineProperty(exports, "formatPrice", {
|
|
316
316
|
enumerable: true,
|
|
317
|
-
get: function () { return
|
|
317
|
+
get: function () { return chunkVYNOQCEK_js.formatPrice; }
|
|
318
318
|
});
|
|
319
319
|
Object.defineProperty(exports, "getOfferingUrl", {
|
|
320
320
|
enumerable: true,
|
|
321
|
-
get: function () { return
|
|
321
|
+
get: function () { return chunkVYNOQCEK_js.getOfferingUrl; }
|
|
322
322
|
});
|
|
323
323
|
Object.defineProperty(exports, "registerForEvent", {
|
|
324
324
|
enumerable: true,
|
|
325
|
-
get: function () { return
|
|
325
|
+
get: function () { return chunkVYNOQCEK_js.registerForEvent; }
|
|
326
326
|
});
|
|
327
327
|
Object.defineProperty(exports, "useEventModal", {
|
|
328
328
|
enumerable: true,
|
|
329
|
-
get: function () { return
|
|
329
|
+
get: function () { return chunkVYNOQCEK_js.useEventModal; }
|
|
330
330
|
});
|
|
331
331
|
Object.defineProperty(exports, "BookingWidget", {
|
|
332
332
|
enumerable: true,
|
|
333
|
-
get: function () { return
|
|
333
|
+
get: function () { return chunkOQTP5M5Y_js.BookingWidget; }
|
|
334
334
|
});
|
|
335
335
|
Object.defineProperty(exports, "createBooking", {
|
|
336
336
|
enumerable: true,
|
|
337
|
-
get: function () { return
|
|
337
|
+
get: function () { return chunkOQTP5M5Y_js.createBooking; }
|
|
338
338
|
});
|
|
339
339
|
Object.defineProperty(exports, "createSlotHold", {
|
|
340
340
|
enumerable: true,
|
|
341
|
-
get: function () { return
|
|
341
|
+
get: function () { return chunkOQTP5M5Y_js.createSlotHold; }
|
|
342
342
|
});
|
|
343
343
|
Object.defineProperty(exports, "detectTimezone", {
|
|
344
344
|
enumerable: true,
|
|
345
|
-
get: function () { return
|
|
345
|
+
get: function () { return chunkOQTP5M5Y_js.detectTimezone; }
|
|
346
346
|
});
|
|
347
347
|
Object.defineProperty(exports, "fetchAvailability", {
|
|
348
348
|
enumerable: true,
|
|
349
|
-
get: function () { return
|
|
349
|
+
get: function () { return chunkOQTP5M5Y_js.fetchAvailability; }
|
|
350
350
|
});
|
|
351
351
|
Object.defineProperty(exports, "fetchAvailableDates", {
|
|
352
352
|
enumerable: true,
|
|
353
|
-
get: function () { return
|
|
353
|
+
get: function () { return chunkOQTP5M5Y_js.fetchAvailableDates; }
|
|
354
354
|
});
|
|
355
355
|
Object.defineProperty(exports, "fetchBookingTypeDetails", {
|
|
356
356
|
enumerable: true,
|
|
357
|
-
get: function () { return
|
|
357
|
+
get: function () { return chunkOQTP5M5Y_js.fetchBookingTypeDetails; }
|
|
358
358
|
});
|
|
359
359
|
Object.defineProperty(exports, "fetchBookingTypes", {
|
|
360
360
|
enumerable: true,
|
|
361
|
-
get: function () { return
|
|
361
|
+
get: function () { return chunkOQTP5M5Y_js.fetchBookingTypes; }
|
|
362
362
|
});
|
|
363
363
|
Object.defineProperty(exports, "formatBookingDate", {
|
|
364
364
|
enumerable: true,
|
|
365
|
-
get: function () { return
|
|
365
|
+
get: function () { return chunkOQTP5M5Y_js.formatDate; }
|
|
366
366
|
});
|
|
367
367
|
Object.defineProperty(exports, "formatBookingTime", {
|
|
368
368
|
enumerable: true,
|
|
369
|
-
get: function () { return
|
|
369
|
+
get: function () { return chunkOQTP5M5Y_js.formatTime; }
|
|
370
370
|
});
|
|
371
371
|
Object.defineProperty(exports, "formatDuration", {
|
|
372
372
|
enumerable: true,
|
|
373
|
-
get: function () { return
|
|
373
|
+
get: function () { return chunkOQTP5M5Y_js.formatDuration; }
|
|
374
374
|
});
|
|
375
375
|
Object.defineProperty(exports, "releaseSlotHold", {
|
|
376
376
|
enumerable: true,
|
|
377
|
-
get: function () { return
|
|
377
|
+
get: function () { return chunkOQTP5M5Y_js.releaseSlotHold; }
|
|
378
378
|
});
|
|
379
379
|
Object.defineProperty(exports, "ExperimentConversion", {
|
|
380
380
|
enumerable: true,
|
|
381
|
-
get: function () { return
|
|
381
|
+
get: function () { return chunkI2IA3JXD_js.ExperimentConversion; }
|
|
382
382
|
});
|
|
383
383
|
Object.defineProperty(exports, "SignalExperiment", {
|
|
384
384
|
enumerable: true,
|
|
385
|
-
get: function () { return
|
|
385
|
+
get: function () { return chunkI2IA3JXD_js.SignalExperiment; }
|
|
386
386
|
});
|
|
387
387
|
Object.defineProperty(exports, "useExperimentVariant", {
|
|
388
388
|
enumerable: true,
|
|
389
|
-
get: function () { return
|
|
389
|
+
get: function () { return chunkI2IA3JXD_js.useExperimentVariant; }
|
|
390
390
|
});
|
|
391
391
|
Object.defineProperty(exports, "SignalBridge", {
|
|
392
392
|
enumerable: true,
|
|
393
|
-
get: function () { return
|
|
393
|
+
get: function () { return chunkFIA3WNEM_js.SignalBridge; }
|
|
394
394
|
});
|
|
395
395
|
Object.defineProperty(exports, "useSignal", {
|
|
396
396
|
enumerable: true,
|
|
397
|
-
get: function () { return
|
|
397
|
+
get: function () { return chunkFIA3WNEM_js.useSignal; }
|
|
398
398
|
});
|
|
399
399
|
Object.defineProperty(exports, "useSignalConfig", {
|
|
400
400
|
enumerable: true,
|
|
401
|
-
get: function () { return
|
|
401
|
+
get: function () { return chunkFIA3WNEM_js.useSignalConfig; }
|
|
402
402
|
});
|
|
403
403
|
Object.defineProperty(exports, "useSignalEvent", {
|
|
404
404
|
enumerable: true,
|
|
405
|
-
get: function () { return
|
|
405
|
+
get: function () { return chunkFIA3WNEM_js.useSignalEvent; }
|
|
406
406
|
});
|
|
407
407
|
Object.defineProperty(exports, "useSignalExperiment", {
|
|
408
408
|
enumerable: true,
|
|
409
|
-
get: function () { return
|
|
409
|
+
get: function () { return chunkFIA3WNEM_js.useSignalExperiment; }
|
|
410
410
|
});
|
|
411
411
|
Object.defineProperty(exports, "useSignalOutcome", {
|
|
412
412
|
enumerable: true,
|
|
413
|
-
get: function () { return
|
|
413
|
+
get: function () { return chunkFIA3WNEM_js.useSignalOutcome; }
|
|
414
414
|
});
|
|
415
415
|
exports.AffiliateCard = AffiliateCard;
|
|
416
416
|
exports.AffiliatesWidget = AffiliatesWidget;
|
package/dist/index.mjs
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
export { LandingPage } from './chunk-QZF5NTXQ.mjs';
|
|
2
2
|
export { landingPageMetadata } from './chunk-AAZNH3MA.mjs';
|
|
3
|
-
export { clearRedirectCache, fetchRedirectRules, generateNextRedirects, handleManagedRedirects } from './chunk-
|
|
4
|
-
export { ManagedImage, assignImageToSlot, clearImageSlot, fetchManagedImage, fetchManagedImages, listImageFiles, uploadImage } from './chunk-
|
|
3
|
+
export { clearRedirectCache, fetchRedirectRules, generateNextRedirects, handleManagedRedirects } from './chunk-AJQI3WTN.mjs';
|
|
4
|
+
export { ManagedImage, assignImageToSlot, clearImageSlot, fetchManagedImage, fetchManagedImages, listImageFiles, uploadImage } from './chunk-BUF6IZUE.mjs';
|
|
5
5
|
import './chunk-CU6OGBKK.mjs';
|
|
6
6
|
export { TestimonialSection } from './chunk-VIGRGMWR.mjs';
|
|
7
7
|
export { fetchReviewStats, fetchReviews } from './chunk-MU7DTEUF.mjs';
|
|
8
|
-
export { CalendarView, CheckoutForm, EventCalendar, EventCheckout, EventEmbed, EventModal, EventTile, OfferingCard, OfferingList, ProductEmbed, RegistrationForm, UpcomingEvents, createCheckoutSession, fetchNextEvent, fetchOffering, fetchOfferings, fetchProducts, fetchServices, fetchUpcomingEvents, formatDate, formatDateTime, formatPrice, getOfferingUrl, registerForEvent, useEventModal } from './chunk-
|
|
9
|
-
export { BookingWidget, createBooking, createSlotHold, detectTimezone, fetchAvailability, fetchAvailableDates, fetchBookingTypeDetails, fetchBookingTypes, formatDate as formatBookingDate, formatTime as formatBookingTime, formatDuration, releaseSlotHold } from './chunk-
|
|
8
|
+
export { CalendarView, CheckoutForm, EventCalendar, EventCheckout, EventEmbed, EventModal, EventTile, OfferingCard, OfferingList, ProductEmbed, RegistrationForm, UpcomingEvents, createCheckoutSession, fetchNextEvent, fetchOffering, fetchOfferings, fetchProducts, fetchServices, fetchUpcomingEvents, formatDate, formatDateTime, formatPrice, getOfferingUrl, registerForEvent, useEventModal } from './chunk-EQZ42LAK.mjs';
|
|
9
|
+
export { BookingWidget, createBooking, createSlotHold, detectTimezone, fetchAvailability, fetchAvailableDates, fetchBookingTypeDetails, fetchBookingTypes, formatDate as formatBookingDate, formatTime as formatBookingTime, formatDuration, releaseSlotHold } from './chunk-VU45CH5R.mjs';
|
|
10
10
|
import './chunk-B22WSN4L.mjs';
|
|
11
|
-
export { ExperimentConversion, SignalExperiment, useExperimentVariant } from './chunk-
|
|
12
|
-
export { SignalBridge, useSignal, useSignalConfig, useSignalEvent, useSignalExperiment, useSignalOutcome } from './chunk-
|
|
11
|
+
export { ExperimentConversion, SignalExperiment, useExperimentVariant } from './chunk-LVM63JSA.mjs';
|
|
12
|
+
export { SignalBridge, useSignal, useSignalConfig, useSignalEvent, useSignalExperiment, useSignalOutcome } from './chunk-JNKQKGYH.mjs';
|
|
13
13
|
import './chunk-26JXNW7B.mjs';
|
|
14
|
-
import './chunk-
|
|
14
|
+
import './chunk-3BXYZC3V.mjs';
|
|
15
15
|
import './chunk-3DPXOZAU.mjs';
|
|
16
16
|
import './chunk-ZZQAGCSI.mjs';
|
|
17
17
|
import './chunk-6EDVCUAG.mjs';
|
|
18
|
-
import { sonorFetch } from './chunk-
|
|
19
|
-
import './chunk-
|
|
20
|
-
import './chunk-
|
|
18
|
+
import { sonorFetch } from './chunk-45VPULF2.mjs';
|
|
19
|
+
import './chunk-NDS6MXIP.mjs';
|
|
20
|
+
import './chunk-NQNSATTA.mjs';
|
|
21
21
|
import './chunk-BEXTDHO4.mjs';
|
|
22
22
|
import { useState, useEffect } from 'react';
|
|
23
23
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
package/dist/layout/client.js
CHANGED
|
@@ -1,25 +1,26 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
var
|
|
5
|
-
require('../chunk-
|
|
6
|
-
require('../chunk-
|
|
4
|
+
var chunk67MTTPJV_js = require('../chunk-67MTTPJV.js');
|
|
5
|
+
require('../chunk-C3M5E4YI.js');
|
|
6
|
+
require('../chunk-M52FYLV4.js');
|
|
7
7
|
require('../chunk-Q2NBD54V.js');
|
|
8
|
+
require('../chunk-OZ3FU4BT.js');
|
|
8
9
|
require('../chunk-SWIKKSKL.js');
|
|
9
10
|
require('../chunk-HGNSJXWT.js');
|
|
10
|
-
require('../chunk-
|
|
11
|
+
require('../chunk-FIA3WNEM.js');
|
|
11
12
|
require('../chunk-RC4WWQXR.js');
|
|
12
13
|
require('../chunk-VJMPIRSD.js');
|
|
13
|
-
require('../chunk-
|
|
14
|
-
require('../chunk-
|
|
15
|
-
require('../chunk-
|
|
14
|
+
require('../chunk-FPWPRFTP.js');
|
|
15
|
+
require('../chunk-ZXRORNAW.js');
|
|
16
|
+
require('../chunk-UXIUJYFK.js');
|
|
16
17
|
require('../chunk-SNAQBZPT.js');
|
|
17
18
|
|
|
18
19
|
|
|
19
20
|
|
|
20
21
|
Object.defineProperty(exports, "SiteKitClientProviders", {
|
|
21
22
|
enumerable: true,
|
|
22
|
-
get: function () { return
|
|
23
|
+
get: function () { return chunk67MTTPJV_js.SiteKitClientProviders; }
|
|
23
24
|
});
|
|
24
25
|
//# sourceMappingURL=client.js.map
|
|
25
26
|
//# sourceMappingURL=client.js.map
|
package/dist/layout/client.mjs
CHANGED
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
export { SiteKitClientProviders } from '../chunk-
|
|
3
|
-
import '../chunk-
|
|
4
|
-
import '../chunk-
|
|
2
|
+
export { SiteKitClientProviders } from '../chunk-MWKYLWCH.mjs';
|
|
3
|
+
import '../chunk-ZWMAQ52D.mjs';
|
|
4
|
+
import '../chunk-PSBAUXUH.mjs';
|
|
5
5
|
import '../chunk-ZPLN537Q.mjs';
|
|
6
|
+
import '../chunk-GZJE23Y5.mjs';
|
|
6
7
|
import '../chunk-ZN4HBK5C.mjs';
|
|
7
8
|
import '../chunk-ZVBLXXNJ.mjs';
|
|
8
|
-
import '../chunk-
|
|
9
|
+
import '../chunk-JNKQKGYH.mjs';
|
|
9
10
|
import '../chunk-ZZQAGCSI.mjs';
|
|
10
11
|
import '../chunk-6EDVCUAG.mjs';
|
|
11
|
-
import '../chunk-
|
|
12
|
-
import '../chunk-
|
|
13
|
-
import '../chunk-
|
|
12
|
+
import '../chunk-45VPULF2.mjs';
|
|
13
|
+
import '../chunk-NDS6MXIP.mjs';
|
|
14
|
+
import '../chunk-NQNSATTA.mjs';
|
|
14
15
|
import '../chunk-BEXTDHO4.mjs';
|
|
15
16
|
//# sourceMappingURL=client.mjs.map
|
|
16
17
|
//# sourceMappingURL=client.mjs.map
|
package/dist/layout/index.js
CHANGED
|
@@ -1,21 +1,22 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
require('../chunk-
|
|
5
|
-
require('../chunk-
|
|
3
|
+
var chunk67MTTPJV_js = require('../chunk-67MTTPJV.js');
|
|
4
|
+
require('../chunk-C3M5E4YI.js');
|
|
5
|
+
require('../chunk-M52FYLV4.js');
|
|
6
6
|
require('../chunk-Q2NBD54V.js');
|
|
7
|
+
require('../chunk-OZ3FU4BT.js');
|
|
7
8
|
require('../chunk-SWIKKSKL.js');
|
|
8
9
|
require('../chunk-HGNSJXWT.js');
|
|
9
10
|
var chunkGCPPXUAI_js = require('../chunk-GCPPXUAI.js');
|
|
10
|
-
require('../chunk-
|
|
11
|
-
var
|
|
11
|
+
require('../chunk-FIA3WNEM.js');
|
|
12
|
+
var chunkE242GZNE_js = require('../chunk-E242GZNE.js');
|
|
12
13
|
var chunkDV2LJYFD_js = require('../chunk-DV2LJYFD.js');
|
|
13
|
-
var
|
|
14
|
+
var chunkO5GHP7UO_js = require('../chunk-O5GHP7UO.js');
|
|
14
15
|
require('../chunk-RC4WWQXR.js');
|
|
15
16
|
require('../chunk-VJMPIRSD.js');
|
|
16
|
-
require('../chunk-
|
|
17
|
-
require('../chunk-
|
|
18
|
-
require('../chunk-
|
|
17
|
+
require('../chunk-FPWPRFTP.js');
|
|
18
|
+
require('../chunk-ZXRORNAW.js');
|
|
19
|
+
require('../chunk-UXIUJYFK.js');
|
|
19
20
|
require('../chunk-SNAQBZPT.js');
|
|
20
21
|
var jsxRuntime = require('react/jsx-runtime');
|
|
21
22
|
|
|
@@ -68,8 +69,8 @@ async function SiteKitLayout({
|
|
|
68
69
|
"[SiteKitLayout] No API key found. Set SONOR_API_KEY."
|
|
69
70
|
);
|
|
70
71
|
}
|
|
71
|
-
const apiOrigin =
|
|
72
|
-
const clientCredential = await
|
|
72
|
+
const apiOrigin = chunkO5GHP7UO_js.resolveApiOrigin(resolvedApiUrl);
|
|
73
|
+
const clientCredential = await chunkE242GZNE_js.resolveClientCredential(resolvedApiKey, resolvedApiUrl);
|
|
73
74
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
74
75
|
/* @__PURE__ */ jsxRuntime.jsx("link", { rel: "preconnect", href: apiOrigin, crossOrigin: "anonymous" }),
|
|
75
76
|
/* @__PURE__ */ jsxRuntime.jsx("link", { rel: "dns-prefetch", href: apiOrigin }),
|
|
@@ -77,7 +78,7 @@ async function SiteKitLayout({
|
|
|
77
78
|
managedScripts && /* @__PURE__ */ jsxRuntime.jsx(chunkDV2LJYFD_js.ManagedScripts, { position: "head" }),
|
|
78
79
|
speculation && /* @__PURE__ */ jsxRuntime.jsx(SpeculationRules, { ...typeof speculation === "object" ? speculation : {} }),
|
|
79
80
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
80
|
-
|
|
81
|
+
chunk67MTTPJV_js.SiteKitClientProviders,
|
|
81
82
|
{
|
|
82
83
|
apiKey: clientCredential,
|
|
83
84
|
apiUrl: resolvedApiUrl,
|
package/dist/layout/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/layout/SpeculationRules.tsx","../../src/layout/SiteKitLayout.tsx"],"names":["jsx","resolveApiOrigin","resolveClientCredential","jsxs","Fragment","ManagedFavicon","ManagedScripts","SiteKitClientProviders"],"mappings":"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","file":"index.js","sourcesContent":["/**\n * SpeculationRules — declarative near-instant navigation for static sites.\n *\n * Emits a `<script type=\"speculationrules\">` telling supporting browsers\n * (Chromium 121+) to prerender same-origin links as the user shows intent\n * (moderate eagerness = hover/mousedown). Non-supporting browsers ignore the\n * tag entirely; there is no JS, no polyfill, no runtime cost — pure\n * progressive enhancement, ideal for the force-static fleet.\n *\n * Server component: renders during SSR, ships as static HTML.\n *\n * Excluded by default: URLs with a query string (often personalized) and\n * obvious non-page paths. Keep exclusions tight — prerendering a page that\n * sets cookies or fires analytics on load double-fires them only if the\n * analytics module ignores prerendering; site-kit analytics defers to\n * post-activation, and Chrome delays most side effects until activation.\n */\n\ninterface SpeculationRulesProps {\n /**\n * 'prerender' (default) renders the next page fully in the background;\n * 'prefetch' only fetches the document. Prefetch is the conservative\n * fallback if a site sees issues with prerender.\n */\n mode?: 'prerender' | 'prefetch'\n /** Additional URL patterns to exclude (speculation rules URL pattern syntax). */\n exclude?: string[]\n}\n\nexport function SpeculationRules({ mode = 'prerender', exclude = [] }: SpeculationRulesProps) {\n const rules = {\n [mode]: [\n {\n source: 'document' as const,\n where: {\n and: [\n { href_matches: '/*' },\n { not: { href_matches: '/*\\\\?*' } },\n { not: { href_matches: '/api/*' } },\n ...exclude.map(pattern => ({ not: { href_matches: pattern } })),\n ],\n },\n eagerness: 'moderate' as const,\n },\n ],\n }\n\n return (\n <script\n type=\"speculationrules\"\n dangerouslySetInnerHTML={{ __html: JSON.stringify(rules) }}\n />\n )\n}\n","/**\n * @sonordev/site-kit/layout — SiteKitLayout\n *\n * The master layout component. A single RSC that auto-composes every\n * site-kit feature your layout needs:\n *\n * Server-side (RSC):\n * - ManagedFavicon (link tags from Portal logo)\n * - ManagedScripts position=\"head\" (tracking pixels, analytics tags)\n * - ManagedScripts position=\"body-end\"\n *\n * Client-side (island):\n * - AnalyticsProvider (page views, scroll depth, heatmap, web vitals)\n * - EngageWidget (popups, nudges, chat)\n * - SignalBridge (A/B experiments, behavior tracking)\n * - SitemapSync (keeps Portal seo_pages in sync)\n *\n * @example\n * ```tsx\n * // app/layout.tsx\n * import { SiteKitLayout } from '@sonordev/site-kit/layout'\n *\n * export default function RootLayout({ children }) {\n * return (\n * <html lang=\"en\">\n * <body>\n * <SiteKitLayout>\n * <Header />\n * <main>{children}</main>\n * <Footer />\n * </SiteKitLayout>\n * </body>\n * </html>\n * )\n * }\n * ```\n *\n * @example Opt out of specific features:\n * ```tsx\n * <SiteKitLayout engage={false} signal={false}>\n * {children}\n * </SiteKitLayout>\n * ```\n */\n\nimport * as React from 'react'\nimport { ManagedFavicon } from '../images/ManagedFavicon'\nimport { ManagedScripts } from '../seo/ManagedScripts'\nimport { resolveApiOrigin } from '../server/server-fetch'\nimport { resolveClientCredential } from '../server/mint-site-token'\nimport { SiteKitClientProviders } from './SiteKitClientProviders'\nimport { SpeculationRules } from './SpeculationRules'\nimport type { AnalyticsConfig, EngageConfig, SignalConfig } from './types'\n\nexport interface SiteKitLayoutProps {\n children: React.ReactNode\n\n /** Portal API key. Defaults to SONOR_API_KEY env var. */\n apiKey?: string\n /** Portal API URL. Defaults to env or https://api.sonor.io */\n apiUrl?: string\n /** Project ID (for Engage chat room routing). Auto-resolved if not provided. */\n projectId?: string\n\n /** Analytics tracking. true (default) | false | config object */\n analytics?: boolean | AnalyticsConfig\n /** Engage widgets (popups, chat). true (default) | false | config object */\n engage?: boolean | EngageConfig\n /** Signal AI (experiments, behavior). false (default) | true | config object */\n signal?: boolean | SignalConfig\n /**\n * Runtime SitemapSync from the visitor's browser. **Default: false.**\n *\n * Sitemap registration is a build-time and server-side job. Build-time\n * `createSitemap` is canonical, and sonor-api's nightly reconciler fetches\n * each host's /sitemap.xml itself, so nothing here needs a visitor.\n *\n * This defaulted to true, and because its throttle lives in sessionStorage\n * and its content hash in localStorage, every first-time visitor, incognito\n * tab and crawler missed both guards and re-POSTed the entire sitemap:\n * upforge.io took ~140 full syncs in a day, queencityriverboats.com ~76.\n * That coupled sitemap traffic to VISITOR COUNT rather than to content\n * changes — exactly backwards — and made every reader pay for platform\n * bookkeeping in bandwidth, XML parsing and an API round-trip.\n *\n * Set true only to re-enable the legacy browser fallback for a site whose\n * build-time registration cannot be made to work.\n */\n sitemapSync?: boolean\n /**\n * Fleet heartbeat — reports this site's kit version + active modules to Sonor\n * once per session so the platform can track version drift. Default: true.\n * Deferred like Analytics; never in the hydration path.\n */\n fleet?: boolean\n /**\n * Defer client modules (Analytics, Engage, SitemapSync) until window load +\n * idle or the first user interaction, keeping their JS and mount work out of\n * the critical hydration path. Default: true. Pass false to restore legacy\n * eager mounting. SignalBridge is never deferred.\n */\n defer?: boolean\n /** ManagedFavicon in <head>. Default: true */\n favicon?: boolean\n /** ManagedScripts (head + body-end). Default: true */\n managedScripts?: boolean\n\n /** Debug mode — logs to console. Default: false */\n debug?: boolean\n /**\n * When true, append a screen-reader-only link to `/llms.txt` after main content.\n * Default false — prefer `buildAiDiscoveryHeaders()` for discovery.\n */\n showLlmsTxtFooterLink?: boolean\n /**\n * Emit a Speculation Rules script prerendering same-origin links on intent\n * (Chromium 121+; other browsers ignore it). Zero JS, static-safe. Default\n * false — opt in per site, or pass { mode: 'prefetch' } for the\n * conservative variant.\n */\n speculation?: boolean | { mode?: 'prerender' | 'prefetch'; exclude?: string[] }\n}\n\nexport async function SiteKitLayout({\n children,\n apiKey,\n apiUrl,\n projectId,\n analytics = true,\n engage = true,\n signal = false,\n sitemapSync = false,\n fleet = true,\n defer = true,\n favicon = true,\n managedScripts = true,\n debug = false,\n showLlmsTxtFooterLink = false,\n speculation = false,\n}: SiteKitLayoutProps) {\n // Resolve API config from env (server-side, safe)\n const resolvedApiKey =\n apiKey ??\n process.env.SONOR_API_KEY ??\n ''\n const resolvedApiUrl =\n apiUrl ??\n process.env.SONOR_API_URL ??\n 'https://api.sonor.io'\n\n if (!resolvedApiKey && debug) {\n console.warn(\n '[SiteKitLayout] No API key found. Set SONOR_API_KEY.',\n )\n }\n\n const apiOrigin = resolveApiOrigin(resolvedApiUrl)\n\n // Mint a short-lived client token so the raw key never reaches the browser.\n // Falls back to the raw key if minting is unavailable (older API / transient\n // outage) — the build never breaks. The client refreshes the token as needed.\n const clientCredential = await resolveClientCredential(resolvedApiKey, resolvedApiUrl)\n\n return (\n <>\n <link rel=\"preconnect\" href={apiOrigin} crossOrigin=\"anonymous\" />\n <link rel=\"dns-prefetch\" href={apiOrigin} />\n {/* Server-rendered head components */}\n {favicon && <ManagedFavicon apiKey={resolvedApiKey} apiUrl={resolvedApiUrl} />}\n {managedScripts && <ManagedScripts position=\"head\" />}\n {speculation && (\n <SpeculationRules {...(typeof speculation === 'object' ? speculation : {})} />\n )}\n\n {/* Client-side providers island — receives the minted token (or raw-key\n fallback), never the raw key when minting succeeds. */}\n <SiteKitClientProviders\n apiKey={clientCredential}\n apiUrl={resolvedApiUrl}\n mapsBrowserKey={\n process.env.NEXT_PUBLIC_GOOGLE_MAPS_API_KEY ||\n process.env.GOOGLE_MAPS_BROWSER_KEY ||\n undefined\n }\n projectId={projectId}\n analytics={analytics}\n engage={engage}\n signal={signal}\n sitemapSync={sitemapSync}\n fleet={fleet}\n defer={defer}\n debug={debug}\n >\n {children}\n {showLlmsTxtFooterLink ? (\n <footer className=\"sr-only\" aria-hidden=\"true\">\n <a href=\"/llms.txt\">llms.txt</a>\n </footer>\n ) : null}\n </SiteKitClientProviders>\n\n {/* Server-rendered body-end scripts */}\n {managedScripts && <ManagedScripts position=\"body-end\" />}\n </>\n )\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../src/layout/SpeculationRules.tsx","../../src/layout/SiteKitLayout.tsx"],"names":["jsx","resolveApiOrigin","resolveClientCredential","jsxs","Fragment","ManagedFavicon","ManagedScripts","SiteKitClientProviders"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AA6BO,SAAS,iBAAiB,EAAE,IAAA,GAAO,aAAa,OAAA,GAAU,IAAG,EAA0B;AAC5F,EAAA,MAAM,KAAA,GAAQ;AAAA,IACZ,CAAC,IAAI,GAAG;AAAA,MACN;AAAA,QACE,MAAA,EAAQ,UAAA;AAAA,QACR,KAAA,EAAO;AAAA,UACL,GAAA,EAAK;AAAA,YACH,EAAE,cAAc,IAAA,EAAK;AAAA,YACrB,EAAE,GAAA,EAAK,EAAE,YAAA,EAAc,UAAS,EAAE;AAAA,YAClC,EAAE,GAAA,EAAK,EAAE,YAAA,EAAc,UAAS,EAAE;AAAA,YAClC,GAAG,OAAA,CAAQ,GAAA,CAAI,CAAA,OAAA,MAAY,EAAE,KAAK,EAAE,YAAA,EAAc,OAAA,EAAQ,EAAE,CAAE;AAAA;AAChE,SACF;AAAA,QACA,SAAA,EAAW;AAAA;AACb;AACF,GACF;AAEA,EAAA,uBACEA,cAAA;AAAA,IAAC,QAAA;AAAA,IAAA;AAAA,MACC,IAAA,EAAK,kBAAA;AAAA,MACL,yBAAyB,EAAE,MAAA,EAAQ,IAAA,CAAK,SAAA,CAAU,KAAK,CAAA;AAAE;AAAA,GAC3D;AAEJ;ACsEA,eAAsB,aAAA,CAAc;AAAA,EAClC,QAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA,GAAY,IAAA;AAAA,EACZ,MAAA,GAAS,IAAA;AAAA,EACT,MAAA,GAAS,KAAA;AAAA,EACT,WAAA,GAAc,KAAA;AAAA,EACd,KAAA,GAAQ,IAAA;AAAA,EACR,KAAA,GAAQ,IAAA;AAAA,EACR,OAAA,GAAU,IAAA;AAAA,EACV,cAAA,GAAiB,IAAA;AAAA,EACjB,KAAA,GAAQ,KAAA;AAAA,EACR,qBAAA,GAAwB,KAAA;AAAA,EACxB,WAAA,GAAc;AAChB,CAAA,EAAuB;AAErB,EAAA,MAAM,cAAA,GACJ,MAAA,IACA,OAAA,CAAQ,GAAA,CAAI,aAAA,IACZ,EAAA;AACF,EAAA,MAAM,cAAA,GACJ,MAAA,IACA,OAAA,CAAQ,GAAA,CAAI,aAAA,IACZ,sBAAA;AAEF,EAAA,IAAI,CAAC,kBAAkB,KAAA,EAAO;AAC5B,IAAA,OAAA,CAAQ,IAAA;AAAA,MACN;AAAA,KACF;AAAA,EACF;AAEA,EAAA,MAAM,SAAA,GAAYC,kCAAiB,cAAc,CAAA;AAKjD,EAAA,MAAM,gBAAA,GAAmB,MAAMC,wCAAA,CAAwB,cAAA,EAAgB,cAAc,CAAA;AAErF,EAAA,uBACEC,eAAA,CAAAC,mBAAA,EAAA,EACE,QAAA,EAAA;AAAA,oBAAAJ,eAAC,MAAA,EAAA,EAAK,GAAA,EAAI,cAAa,IAAA,EAAM,SAAA,EAAW,aAAY,WAAA,EAAY,CAAA;AAAA,oBAChEA,cAAAA,CAAC,MAAA,EAAA,EAAK,GAAA,EAAI,cAAA,EAAe,MAAM,SAAA,EAAW,CAAA;AAAA,IAEzC,2BAAWA,cAAAA,CAACK,mCAAe,MAAA,EAAQ,cAAA,EAAgB,QAAQ,cAAA,EAAgB,CAAA;AAAA,IAC3E,cAAA,oBAAkBL,cAAAA,CAACM,+BAAA,EAAA,EAAe,UAAS,MAAA,EAAO,CAAA;AAAA,IAClD,WAAA,oBACCN,cAAAA,CAAC,gBAAA,EAAA,EAAkB,GAAI,OAAO,WAAA,KAAgB,QAAA,GAAW,WAAA,GAAc,EAAC,EAAI,CAAA;AAAA,oBAK9EG,eAAA;AAAA,MAACI,uCAAA;AAAA,MAAA;AAAA,QACC,MAAA,EAAQ,gBAAA;AAAA,QACR,MAAA,EAAQ,cAAA;AAAA,QACR,gBACE,OAAA,CAAQ,GAAA,CAAI,+BAAA,IACZ,OAAA,CAAQ,IAAI,uBAAA,IACZ,MAAA;AAAA,QAEF,SAAA;AAAA,QACA,SAAA;AAAA,QACA,MAAA;AAAA,QACA,MAAA;AAAA,QACA,WAAA;AAAA,QACA,KAAA;AAAA,QACA,KAAA;AAAA,QACA,KAAA;AAAA,QAEC,QAAA,EAAA;AAAA,UAAA,QAAA;AAAA,UACA,qBAAA,mBACCP,cAAAA,CAAC,QAAA,EAAA,EAAO,WAAU,SAAA,EAAU,aAAA,EAAY,MAAA,EACtC,QAAA,kBAAAA,eAAC,GAAA,EAAA,EAAE,IAAA,EAAK,WAAA,EAAY,QAAA,EAAA,UAAA,EAAQ,GAC9B,CAAA,GACE;AAAA;AAAA;AAAA,KACN;AAAA,IAGC,cAAA,oBAAkBA,cAAAA,CAACM,+BAAA,EAAA,EAAe,UAAS,UAAA,EAAW;AAAA,GAAA,EACzD,CAAA;AAEJ","file":"index.js","sourcesContent":["/**\n * SpeculationRules — declarative near-instant navigation for static sites.\n *\n * Emits a `<script type=\"speculationrules\">` telling supporting browsers\n * (Chromium 121+) to prerender same-origin links as the user shows intent\n * (moderate eagerness = hover/mousedown). Non-supporting browsers ignore the\n * tag entirely; there is no JS, no polyfill, no runtime cost — pure\n * progressive enhancement, ideal for the force-static fleet.\n *\n * Server component: renders during SSR, ships as static HTML.\n *\n * Excluded by default: URLs with a query string (often personalized) and\n * obvious non-page paths. Keep exclusions tight — prerendering a page that\n * sets cookies or fires analytics on load double-fires them only if the\n * analytics module ignores prerendering; site-kit analytics defers to\n * post-activation, and Chrome delays most side effects until activation.\n */\n\ninterface SpeculationRulesProps {\n /**\n * 'prerender' (default) renders the next page fully in the background;\n * 'prefetch' only fetches the document. Prefetch is the conservative\n * fallback if a site sees issues with prerender.\n */\n mode?: 'prerender' | 'prefetch'\n /** Additional URL patterns to exclude (speculation rules URL pattern syntax). */\n exclude?: string[]\n}\n\nexport function SpeculationRules({ mode = 'prerender', exclude = [] }: SpeculationRulesProps) {\n const rules = {\n [mode]: [\n {\n source: 'document' as const,\n where: {\n and: [\n { href_matches: '/*' },\n { not: { href_matches: '/*\\\\?*' } },\n { not: { href_matches: '/api/*' } },\n ...exclude.map(pattern => ({ not: { href_matches: pattern } })),\n ],\n },\n eagerness: 'moderate' as const,\n },\n ],\n }\n\n return (\n <script\n type=\"speculationrules\"\n dangerouslySetInnerHTML={{ __html: JSON.stringify(rules) }}\n />\n )\n}\n","/**\n * @sonordev/site-kit/layout — SiteKitLayout\n *\n * The master layout component. A single RSC that auto-composes every\n * site-kit feature your layout needs:\n *\n * Server-side (RSC):\n * - ManagedFavicon (link tags from Portal logo)\n * - ManagedScripts position=\"head\" (tracking pixels, analytics tags)\n * - ManagedScripts position=\"body-end\"\n *\n * Client-side (island):\n * - AnalyticsProvider (page views, scroll depth, heatmap, web vitals)\n * - EngageWidget (popups, nudges, chat)\n * - SignalBridge (A/B experiments, behavior tracking)\n * - SitemapSync (keeps Portal seo_pages in sync)\n *\n * @example\n * ```tsx\n * // app/layout.tsx\n * import { SiteKitLayout } from '@sonordev/site-kit/layout'\n *\n * export default function RootLayout({ children }) {\n * return (\n * <html lang=\"en\">\n * <body>\n * <SiteKitLayout>\n * <Header />\n * <main>{children}</main>\n * <Footer />\n * </SiteKitLayout>\n * </body>\n * </html>\n * )\n * }\n * ```\n *\n * @example Opt out of specific features:\n * ```tsx\n * <SiteKitLayout engage={false} signal={false}>\n * {children}\n * </SiteKitLayout>\n * ```\n */\n\nimport * as React from 'react'\nimport { ManagedFavicon } from '../images/ManagedFavicon'\nimport { ManagedScripts } from '../seo/ManagedScripts'\nimport { resolveApiOrigin } from '../server/server-fetch'\nimport { resolveClientCredential } from '../server/mint-site-token'\nimport { SiteKitClientProviders } from './SiteKitClientProviders'\nimport { SpeculationRules } from './SpeculationRules'\nimport type { AnalyticsConfig, EngageConfig, SignalConfig } from './types'\n\nexport interface SiteKitLayoutProps {\n children: React.ReactNode\n\n /** Portal API key. Defaults to SONOR_API_KEY env var. */\n apiKey?: string\n /** Portal API URL. Defaults to env or https://api.sonor.io */\n apiUrl?: string\n /** Project ID (for Engage chat room routing). Auto-resolved if not provided. */\n projectId?: string\n\n /** Analytics tracking. true (default) | false | config object */\n analytics?: boolean | AnalyticsConfig\n /** Engage widgets (popups, chat). true (default) | false | config object */\n engage?: boolean | EngageConfig\n /** Signal AI (experiments, behavior). false (default) | true | config object */\n signal?: boolean | SignalConfig\n /**\n * Runtime SitemapSync from the visitor's browser. **Default: false.**\n *\n * Sitemap registration is a build-time and server-side job. Build-time\n * `createSitemap` is canonical, and sonor-api's nightly reconciler fetches\n * each host's /sitemap.xml itself, so nothing here needs a visitor.\n *\n * This defaulted to true, and because its throttle lives in sessionStorage\n * and its content hash in localStorage, every first-time visitor, incognito\n * tab and crawler missed both guards and re-POSTed the entire sitemap:\n * upforge.io took ~140 full syncs in a day, queencityriverboats.com ~76.\n * That coupled sitemap traffic to VISITOR COUNT rather than to content\n * changes — exactly backwards — and made every reader pay for platform\n * bookkeeping in bandwidth, XML parsing and an API round-trip.\n *\n * Set true only to re-enable the legacy browser fallback for a site whose\n * build-time registration cannot be made to work.\n */\n sitemapSync?: boolean\n /**\n * Fleet heartbeat — reports this site's kit version + active modules to Sonor\n * once per session so the platform can track version drift. Default: true.\n * Deferred like Analytics; never in the hydration path.\n */\n fleet?: boolean\n /**\n * Defer client modules (Analytics, Engage, SitemapSync) until window load +\n * idle or the first user interaction, keeping their JS and mount work out of\n * the critical hydration path. Default: true. Pass false to restore legacy\n * eager mounting. SignalBridge is never deferred.\n */\n defer?: boolean\n /** ManagedFavicon in <head>. Default: true */\n favicon?: boolean\n /** ManagedScripts (head + body-end). Default: true */\n managedScripts?: boolean\n\n /** Debug mode — logs to console. Default: false */\n debug?: boolean\n /**\n * When true, append a screen-reader-only link to `/llms.txt` after main content.\n * Default false — prefer `buildAiDiscoveryHeaders()` for discovery.\n */\n showLlmsTxtFooterLink?: boolean\n /**\n * Emit a Speculation Rules script prerendering same-origin links on intent\n * (Chromium 121+; other browsers ignore it). Zero JS, static-safe. Default\n * false — opt in per site, or pass { mode: 'prefetch' } for the\n * conservative variant.\n */\n speculation?: boolean | { mode?: 'prerender' | 'prefetch'; exclude?: string[] }\n}\n\nexport async function SiteKitLayout({\n children,\n apiKey,\n apiUrl,\n projectId,\n analytics = true,\n engage = true,\n signal = false,\n sitemapSync = false,\n fleet = true,\n defer = true,\n favicon = true,\n managedScripts = true,\n debug = false,\n showLlmsTxtFooterLink = false,\n speculation = false,\n}: SiteKitLayoutProps) {\n // Resolve API config from env (server-side, safe)\n const resolvedApiKey =\n apiKey ??\n process.env.SONOR_API_KEY ??\n ''\n const resolvedApiUrl =\n apiUrl ??\n process.env.SONOR_API_URL ??\n 'https://api.sonor.io'\n\n if (!resolvedApiKey && debug) {\n console.warn(\n '[SiteKitLayout] No API key found. Set SONOR_API_KEY.',\n )\n }\n\n const apiOrigin = resolveApiOrigin(resolvedApiUrl)\n\n // Mint a short-lived client token so the raw key never reaches the browser.\n // Falls back to the raw key if minting is unavailable (older API / transient\n // outage) — the build never breaks. The client refreshes the token as needed.\n const clientCredential = await resolveClientCredential(resolvedApiKey, resolvedApiUrl)\n\n return (\n <>\n <link rel=\"preconnect\" href={apiOrigin} crossOrigin=\"anonymous\" />\n <link rel=\"dns-prefetch\" href={apiOrigin} />\n {/* Server-rendered head components */}\n {favicon && <ManagedFavicon apiKey={resolvedApiKey} apiUrl={resolvedApiUrl} />}\n {managedScripts && <ManagedScripts position=\"head\" />}\n {speculation && (\n <SpeculationRules {...(typeof speculation === 'object' ? speculation : {})} />\n )}\n\n {/* Client-side providers island — receives the minted token (or raw-key\n fallback), never the raw key when minting succeeds. */}\n <SiteKitClientProviders\n apiKey={clientCredential}\n apiUrl={resolvedApiUrl}\n mapsBrowserKey={\n process.env.NEXT_PUBLIC_GOOGLE_MAPS_API_KEY ||\n process.env.GOOGLE_MAPS_BROWSER_KEY ||\n undefined\n }\n projectId={projectId}\n analytics={analytics}\n engage={engage}\n signal={signal}\n sitemapSync={sitemapSync}\n fleet={fleet}\n defer={defer}\n debug={debug}\n >\n {children}\n {showLlmsTxtFooterLink ? (\n <footer className=\"sr-only\" aria-hidden=\"true\">\n <a href=\"/llms.txt\">llms.txt</a>\n </footer>\n ) : null}\n </SiteKitClientProviders>\n\n {/* Server-rendered body-end scripts */}\n {managedScripts && <ManagedScripts position=\"body-end\" />}\n </>\n )\n}\n"]}
|
package/dist/layout/index.mjs
CHANGED
|
@@ -1,19 +1,20 @@
|
|
|
1
|
-
import { SiteKitClientProviders } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import '../chunk-
|
|
1
|
+
import { SiteKitClientProviders } from '../chunk-MWKYLWCH.mjs';
|
|
2
|
+
import '../chunk-ZWMAQ52D.mjs';
|
|
3
|
+
import '../chunk-PSBAUXUH.mjs';
|
|
4
4
|
import '../chunk-ZPLN537Q.mjs';
|
|
5
|
+
import '../chunk-GZJE23Y5.mjs';
|
|
5
6
|
import '../chunk-ZN4HBK5C.mjs';
|
|
6
7
|
import '../chunk-ZVBLXXNJ.mjs';
|
|
7
8
|
import { ManagedFavicon } from '../chunk-CU6OGBKK.mjs';
|
|
8
|
-
import '../chunk-
|
|
9
|
-
import { resolveClientCredential } from '../chunk-
|
|
9
|
+
import '../chunk-JNKQKGYH.mjs';
|
|
10
|
+
import { resolveClientCredential } from '../chunk-36E6QKGL.mjs';
|
|
10
11
|
import { ManagedScripts } from '../chunk-6PJTLBRR.mjs';
|
|
11
|
-
import { resolveApiOrigin } from '../chunk-
|
|
12
|
+
import { resolveApiOrigin } from '../chunk-6XNEGG5B.mjs';
|
|
12
13
|
import '../chunk-ZZQAGCSI.mjs';
|
|
13
14
|
import '../chunk-6EDVCUAG.mjs';
|
|
14
|
-
import '../chunk-
|
|
15
|
-
import '../chunk-
|
|
16
|
-
import '../chunk-
|
|
15
|
+
import '../chunk-45VPULF2.mjs';
|
|
16
|
+
import '../chunk-NDS6MXIP.mjs';
|
|
17
|
+
import '../chunk-NQNSATTA.mjs';
|
|
17
18
|
import '../chunk-BEXTDHO4.mjs';
|
|
18
19
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
19
20
|
|