@sonordev/site-kit 5.8.1 → 5.8.3
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/agent-manifest.json +6 -1
- package/dist/{AnalyticsProvider-HE6V5UJD.js → AnalyticsProvider-DPXR6FSV.js} +10 -10
- package/dist/{AnalyticsProvider-HE6V5UJD.js.map → AnalyticsProvider-DPXR6FSV.js.map} +1 -1
- package/dist/{AnalyticsProvider-ERNSZ4DH.mjs → AnalyticsProvider-IGOD64MY.mjs} +6 -6
- package/dist/{AnalyticsProvider-ERNSZ4DH.mjs.map → AnalyticsProvider-IGOD64MY.mjs.map} +1 -1
- package/dist/{BlogViewTracker-2NQ5LBVR.mjs → BlogViewTracker-Q7Y4MN4B.mjs} +5 -5
- package/dist/{BlogViewTracker-2NQ5LBVR.mjs.map → BlogViewTracker-Q7Y4MN4B.mjs.map} +1 -1
- package/dist/{BlogViewTracker-4OGWSC2Q.js → BlogViewTracker-S3CSRBIZ.js} +6 -6
- package/dist/{BlogViewTracker-4OGWSC2Q.js.map → BlogViewTracker-S3CSRBIZ.js.map} +1 -1
- package/dist/ChatWidget-76R7NOWD.js +24 -0
- package/dist/{ChatWidget-67CHHONZ.js.map → ChatWidget-76R7NOWD.js.map} +1 -1
- package/dist/ChatWidget-G3KOUDX5.mjs +15 -0
- package/dist/{ChatWidget-T4RICLLT.mjs.map → ChatWidget-G3KOUDX5.mjs.map} +1 -1
- package/dist/EngageWidget-HD4F2ZVE.js +21 -0
- package/dist/{EngageWidget-TDW2ZI3Q.js.map → EngageWidget-HD4F2ZVE.js.map} +1 -1
- package/dist/EngageWidget-UJ47PQFG.mjs +12 -0
- package/dist/{EngageWidget-WXEQTV4X.mjs.map → EngageWidget-UJ47PQFG.mjs.map} +1 -1
- package/dist/{FileField-DEVOXJSO.js → FileField-FV6WSZMX.js} +6 -6
- package/dist/{FileField-DEVOXJSO.js.map → FileField-FV6WSZMX.js.map} +1 -1
- package/dist/{FileField-Y5YM365S.mjs → FileField-WNMEA3PK.mjs} +5 -5
- package/dist/{FileField-Y5YM365S.mjs.map → FileField-WNMEA3PK.mjs.map} +1 -1
- package/dist/{FormSpotlight-4Q5FM3YS.js → FormSpotlight-2VRQXEFI.js} +9 -9
- package/dist/{FormSpotlight-4Q5FM3YS.js.map → FormSpotlight-2VRQXEFI.js.map} +1 -1
- package/dist/{FormSpotlight-T3ASGUYB.mjs → FormSpotlight-NGWEPGI4.mjs} +3 -3
- package/dist/{FormSpotlight-T3ASGUYB.mjs.map → FormSpotlight-NGWEPGI4.mjs.map} +1 -1
- package/dist/{FormStage-U5V4MI5Q.mjs → FormStage-7L4BBOLC.mjs} +3 -3
- package/dist/{FormStage-U5V4MI5Q.mjs.map → FormStage-7L4BBOLC.mjs.map} +1 -1
- package/dist/{FormStage-PSAIPZBS.js → FormStage-Q3KQVFVW.js} +9 -9
- package/dist/{FormStage-PSAIPZBS.js.map → FormStage-Q3KQVFVW.js.map} +1 -1
- package/dist/ManagedForm-4ZGU4R3G.js +25 -0
- package/dist/{ManagedForm-R6DJXU34.js.map → ManagedForm-4ZGU4R3G.js.map} +1 -1
- package/dist/ManagedForm-Z7QE4KYI.mjs +16 -0
- package/dist/{ManagedForm-EAZOMNSL.mjs.map → ManagedForm-Z7QE4KYI.mjs.map} +1 -1
- package/dist/{ManagedNewsletterForm-VX6GMZXJ.js → ManagedNewsletterForm-22EPZB7Z.js} +8 -8
- package/dist/{ManagedNewsletterForm-VX6GMZXJ.js.map → ManagedNewsletterForm-22EPZB7Z.js.map} +1 -1
- package/dist/{ManagedNewsletterForm-5RY3TWPQ.mjs → ManagedNewsletterForm-4TVO2VL4.mjs} +7 -7
- package/dist/{ManagedNewsletterForm-5RY3TWPQ.mjs.map → ManagedNewsletterForm-4TVO2VL4.mjs.map} +1 -1
- package/dist/{SignalCore-MWHF2WG4.js → SignalCore-2N7UZGF3.js} +11 -11
- package/dist/{SignalCore-MWHF2WG4.js.map → SignalCore-2N7UZGF3.js.map} +1 -1
- package/dist/{SignalCore-ZT6EQGV3.mjs → SignalCore-57OK3DHA.mjs} +5 -5
- package/dist/{SignalCore-ZT6EQGV3.mjs.map → SignalCore-57OK3DHA.mjs.map} +1 -1
- package/dist/SitemapSync-GF4OKN4Z.js +18 -0
- package/dist/{SitemapSync-Z62BGZMV.js.map → SitemapSync-GF4OKN4Z.js.map} +1 -1
- package/dist/SitemapSync-WIUEYOBS.mjs +9 -0
- package/dist/{SitemapSync-OG4TQLDB.mjs.map → SitemapSync-WIUEYOBS.mjs.map} +1 -1
- package/dist/analytics/index.js +9 -9
- package/dist/analytics/index.mjs +4 -4
- package/dist/blog/index.js +18 -18
- package/dist/blog/index.mjs +4 -4
- package/dist/blog/server-ui.js +14 -14
- package/dist/blog/server-ui.mjs +2 -2
- package/dist/{chunk-U6H5ZY3B.mjs → chunk-25F2EXOC.mjs} +3 -3
- package/dist/{chunk-U6H5ZY3B.mjs.map → chunk-25F2EXOC.mjs.map} +1 -1
- package/dist/{chunk-FWW4K6QP.js → chunk-2TS4ALOA.js} +14 -14
- package/dist/{chunk-FWW4K6QP.js.map → chunk-2TS4ALOA.js.map} +1 -1
- package/dist/{chunk-6WEZWYRU.mjs → chunk-3OO5EDKD.mjs} +8 -8
- package/dist/{chunk-6WEZWYRU.mjs.map → chunk-3OO5EDKD.mjs.map} +1 -1
- package/dist/{chunk-X22BGNVL.mjs → chunk-4C5CZJIN.mjs} +4 -4
- package/dist/{chunk-X22BGNVL.mjs.map → chunk-4C5CZJIN.mjs.map} +1 -1
- package/dist/{chunk-AUHUEIBB.mjs → chunk-4NVMAYMQ.mjs} +4 -4
- package/dist/{chunk-AUHUEIBB.mjs.map → chunk-4NVMAYMQ.mjs.map} +1 -1
- package/dist/chunk-5FETEH3Y.mjs +6 -0
- package/dist/{chunk-OESGRWI4.mjs.map → chunk-5FETEH3Y.mjs.map} +1 -1
- package/dist/{chunk-M4UVFUFR.js → chunk-5HFD36AN.js} +5 -5
- package/dist/{chunk-M4UVFUFR.js.map → chunk-5HFD36AN.js.map} +1 -1
- package/dist/{chunk-2HPQTRUB.js → chunk-6CCS2EGF.js} +11 -11
- package/dist/{chunk-2HPQTRUB.js.map → chunk-6CCS2EGF.js.map} +1 -1
- package/dist/chunk-7R6H3GQ4.js +8 -0
- package/dist/{chunk-NG2TTI7D.js.map → chunk-7R6H3GQ4.js.map} +1 -1
- package/dist/{chunk-BHBW2SZF.js → chunk-7VZYP4K5.js} +15 -15
- package/dist/{chunk-BHBW2SZF.js.map → chunk-7VZYP4K5.js.map} +1 -1
- package/dist/chunk-AJBOEV4I.mjs +453 -0
- package/dist/chunk-AJBOEV4I.mjs.map +1 -0
- package/dist/{chunk-CWUYI6LI.js → chunk-CNTDV7HM.js} +4 -4
- package/dist/{chunk-CWUYI6LI.js.map → chunk-CNTDV7HM.js.map} +1 -1
- package/dist/{chunk-S5VL7AWW.js → chunk-CY2RFEW6.js} +3 -3
- package/dist/{chunk-S5VL7AWW.js.map → chunk-CY2RFEW6.js.map} +1 -1
- package/dist/{chunk-LOEP76MQ.js → chunk-CZEIHFLW.js} +4 -4
- package/dist/{chunk-LOEP76MQ.js.map → chunk-CZEIHFLW.js.map} +1 -1
- package/dist/{chunk-3TQUARVN.mjs → chunk-F2KW4OJF.mjs} +4 -4
- package/dist/{chunk-3TQUARVN.mjs.map → chunk-F2KW4OJF.mjs.map} +1 -1
- package/dist/{chunk-WED6ZDVS.js → chunk-F3KA6V2Y.js} +3 -3
- package/dist/{chunk-WED6ZDVS.js.map → chunk-F3KA6V2Y.js.map} +1 -1
- package/dist/{chunk-MI2SRBCR.mjs → chunk-FD72QL42.mjs} +3 -3
- package/dist/{chunk-MI2SRBCR.mjs.map → chunk-FD72QL42.mjs.map} +1 -1
- package/dist/{chunk-OBKYF4TP.js → chunk-FTB5LAD3.js} +4 -4
- package/dist/{chunk-OBKYF4TP.js.map → chunk-FTB5LAD3.js.map} +1 -1
- package/dist/{chunk-PQVQAX67.mjs → chunk-HBHS5VRN.mjs} +3 -3
- package/dist/{chunk-PQVQAX67.mjs.map → chunk-HBHS5VRN.mjs.map} +1 -1
- package/dist/{chunk-7AEVA667.mjs → chunk-HEOLGDUX.mjs} +3 -3
- package/dist/{chunk-7AEVA667.mjs.map → chunk-HEOLGDUX.mjs.map} +1 -1
- package/dist/{chunk-7DV7Y7BZ.js → chunk-I7HOMMIK.js} +15 -15
- package/dist/{chunk-7DV7Y7BZ.js.map → chunk-I7HOMMIK.js.map} +1 -1
- package/dist/{chunk-LIAISQUE.js → chunk-IIHIRHSW.js} +18 -18
- package/dist/{chunk-LIAISQUE.js.map → chunk-IIHIRHSW.js.map} +1 -1
- package/dist/{chunk-M45AL7EA.js → chunk-LB44BNJ2.js} +2 -2
- package/dist/{chunk-M45AL7EA.js.map → chunk-LB44BNJ2.js.map} +1 -1
- package/dist/{chunk-6S3JE66D.mjs → chunk-LGOQ65JQ.mjs} +7 -7
- package/dist/{chunk-6S3JE66D.mjs.map → chunk-LGOQ65JQ.mjs.map} +1 -1
- package/dist/{chunk-YRNDASQY.mjs → chunk-MQS6AF5K.mjs} +3 -3
- package/dist/{chunk-YRNDASQY.mjs.map → chunk-MQS6AF5K.mjs.map} +1 -1
- package/dist/{chunk-GF4LV5LX.mjs → chunk-MWKI6ZIS.mjs} +3 -3
- package/dist/{chunk-GF4LV5LX.mjs.map → chunk-MWKI6ZIS.mjs.map} +1 -1
- package/dist/{chunk-Y6Z2W45H.js → chunk-MYMZRHTC.js} +8 -8
- package/dist/{chunk-Y6Z2W45H.js.map → chunk-MYMZRHTC.js.map} +1 -1
- package/dist/{chunk-3VRWKKTD.js → chunk-NBT4L2D7.js} +8 -8
- package/dist/{chunk-3VRWKKTD.js.map → chunk-NBT4L2D7.js.map} +1 -1
- package/dist/{chunk-XSAHJ2BB.mjs → chunk-NCDF2RK4.mjs} +3 -3
- package/dist/{chunk-XSAHJ2BB.mjs.map → chunk-NCDF2RK4.mjs.map} +1 -1
- package/dist/{chunk-YCFYQN2Q.js → chunk-NMM27UOF.js} +3 -3
- package/dist/{chunk-YCFYQN2Q.js.map → chunk-NMM27UOF.js.map} +1 -1
- package/dist/{chunk-MOAYT3KN.js → chunk-NR7YZQRR.js} +4 -4
- package/dist/{chunk-MOAYT3KN.js.map → chunk-NR7YZQRR.js.map} +1 -1
- package/dist/{chunk-NLDN6PYM.js → chunk-PI3FHABB.js} +10 -10
- package/dist/{chunk-NLDN6PYM.js.map → chunk-PI3FHABB.js.map} +1 -1
- package/dist/{chunk-FEKPEI2G.js → chunk-PIEHBSCN.js} +5 -5
- package/dist/{chunk-FEKPEI2G.js.map → chunk-PIEHBSCN.js.map} +1 -1
- package/dist/{chunk-4VSDMNQU.mjs → chunk-PIPERXI7.mjs} +3 -3
- package/dist/{chunk-4VSDMNQU.mjs.map → chunk-PIPERXI7.mjs.map} +1 -1
- package/dist/{chunk-7H4HB4UZ.mjs → chunk-POJZA67T.mjs} +4 -4
- package/dist/{chunk-7H4HB4UZ.mjs.map → chunk-POJZA67T.mjs.map} +1 -1
- package/dist/{chunk-HOJ4J4X2.mjs → chunk-PQYQHZWV.mjs} +2 -2
- package/dist/{chunk-HOJ4J4X2.mjs.map → chunk-PQYQHZWV.mjs.map} +1 -1
- package/dist/{chunk-JX5SM2MX.mjs → chunk-QOOLMSBY.mjs} +3 -3
- package/dist/{chunk-JX5SM2MX.mjs.map → chunk-QOOLMSBY.mjs.map} +1 -1
- package/dist/{chunk-ZV6HIQRQ.js → chunk-QQQAW6WY.js} +6 -6
- package/dist/{chunk-ZV6HIQRQ.js.map → chunk-QQQAW6WY.js.map} +1 -1
- package/dist/{chunk-R4B3DFF4.mjs → chunk-QXMWNIKL.mjs} +3 -3
- package/dist/{chunk-R4B3DFF4.mjs.map → chunk-QXMWNIKL.mjs.map} +1 -1
- package/dist/{chunk-GKFTJ5AF.mjs → chunk-R5IPDAMM.mjs} +3 -3
- package/dist/{chunk-GKFTJ5AF.mjs.map → chunk-R5IPDAMM.mjs.map} +1 -1
- package/dist/{chunk-EHAUNF4V.mjs → chunk-RFAAY3BW.mjs} +3 -3
- package/dist/{chunk-EHAUNF4V.mjs.map → chunk-RFAAY3BW.mjs.map} +1 -1
- package/dist/{chunk-AWF73RU2.mjs → chunk-ROSYCNXG.mjs} +4 -4
- package/dist/{chunk-AWF73RU2.mjs.map → chunk-ROSYCNXG.mjs.map} +1 -1
- package/dist/{chunk-CGCUHIAR.js → chunk-S2Y7LVQ2.js} +14 -14
- package/dist/{chunk-CGCUHIAR.js.map → chunk-S2Y7LVQ2.js.map} +1 -1
- package/dist/{chunk-JFJ7NHS3.mjs → chunk-SFC3OWSE.mjs} +3 -3
- package/dist/{chunk-JFJ7NHS3.mjs.map → chunk-SFC3OWSE.mjs.map} +1 -1
- package/dist/{chunk-BIGXEYKT.js → chunk-TR3F3CLV.js} +7 -7
- package/dist/{chunk-BIGXEYKT.js.map → chunk-TR3F3CLV.js.map} +1 -1
- package/dist/{chunk-5K6B4LWV.mjs → chunk-UEUWC3PH.mjs} +3 -3
- package/dist/{chunk-5K6B4LWV.mjs.map → chunk-UEUWC3PH.mjs.map} +1 -1
- package/dist/{chunk-BY35X57A.js → chunk-UHM3CCCC.js} +51 -19
- package/dist/chunk-UHM3CCCC.js.map +1 -0
- package/dist/{chunk-62Y4W4LR.mjs → chunk-UQY5KC64.mjs} +43 -11
- package/dist/chunk-UQY5KC64.mjs.map +1 -0
- package/dist/{chunk-JI4EUPHB.js → chunk-VVBMWV4O.js} +5 -5
- package/dist/{chunk-JI4EUPHB.js.map → chunk-VVBMWV4O.js.map} +1 -1
- package/dist/{chunk-43I7U5AI.js → chunk-W2U5SLMY.js} +3 -3
- package/dist/{chunk-43I7U5AI.js.map → chunk-W2U5SLMY.js.map} +1 -1
- package/dist/{chunk-26EKSVXM.mjs → chunk-WINDP776.mjs} +4 -4
- package/dist/{chunk-26EKSVXM.mjs.map → chunk-WINDP776.mjs.map} +1 -1
- package/dist/chunk-XEB77DQS.js +468 -0
- package/dist/chunk-XEB77DQS.js.map +1 -0
- package/dist/cli/index.js +3 -3
- package/dist/cli/index.mjs +1 -1
- package/dist/client/index.js +4 -4
- package/dist/client/index.mjs +3 -3
- package/dist/commerce/index.js +57 -57
- package/dist/commerce/index.mjs +5 -5
- package/dist/commerce/server.d.ts +1 -1
- package/dist/commerce/server.js +7 -7
- package/dist/commerce/server.js.map +1 -1
- package/dist/commerce/server.mjs +7 -7
- package/dist/commerce/server.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/form-values.d.ts +47 -0
- package/dist/forms/form-values.d.ts.map +1 -0
- package/dist/forms/index.js +21 -21
- package/dist/forms/index.mjs +10 -10
- package/dist/forms/server.js +10 -10
- package/dist/forms/server.mjs +8 -8
- package/dist/forms/static.js +7 -7
- package/dist/forms/static.mjs +6 -6
- package/dist/forms/useForm.d.ts.map +1 -1
- package/dist/images/index.js +11 -11
- package/dist/images/index.mjs +4 -4
- package/dist/index.js +63 -63
- package/dist/index.mjs +9 -9
- package/dist/layout/client.js +8 -8
- package/dist/layout/client.mjs +7 -7
- package/dist/layout/index.js +10 -10
- package/dist/layout/index.mjs +8 -8
- package/dist/llms/client.d.ts +18 -0
- package/dist/llms/client.d.ts.map +1 -0
- package/dist/llms/client.js +66 -0
- package/dist/llms/client.js.map +1 -0
- package/dist/llms/client.mjs +5 -0
- package/dist/llms/client.mjs.map +1 -0
- package/dist/llms/index.js +58 -462
- package/dist/llms/index.js.map +1 -1
- package/dist/llms/index.mjs +3 -449
- package/dist/llms/index.mjs.map +1 -1
- package/dist/maps/index.js +5 -5
- package/dist/maps/index.mjs +3 -3
- package/dist/search/index.js +4 -4
- package/dist/search/index.mjs +3 -3
- package/dist/seo/ManagedSchema.d.ts.map +1 -1
- package/dist/seo/client.js +5 -5
- package/dist/seo/client.mjs +4 -4
- package/dist/seo/index.js +25 -17
- package/dist/seo/index.js.map +1 -1
- package/dist/seo/index.mjs +17 -9
- package/dist/seo/index.mjs.map +1 -1
- package/dist/seo/register-sitemap-cli.mjs +0 -0
- package/dist/seo/server.js +5 -5
- package/dist/seo/server.mjs +1 -1
- package/dist/server/index.js +3 -3
- package/dist/server/index.mjs +2 -2
- package/dist/shared/build-entries.d.ts +6 -0
- package/dist/shared/build-entries.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/sync/index.js +17 -17
- package/dist/sync/index.mjs +4 -4
- package/package.json +26 -19
- package/dist/ChatWidget-67CHHONZ.js +0 -24
- package/dist/ChatWidget-T4RICLLT.mjs +0 -15
- package/dist/EngageWidget-TDW2ZI3Q.js +0 -21
- package/dist/EngageWidget-WXEQTV4X.mjs +0 -12
- package/dist/ManagedForm-EAZOMNSL.mjs +0 -16
- package/dist/ManagedForm-R6DJXU34.js +0 -25
- package/dist/SitemapSync-OG4TQLDB.mjs +0 -9
- package/dist/SitemapSync-Z62BGZMV.js +0 -18
- package/dist/chunk-62Y4W4LR.mjs.map +0 -1
- package/dist/chunk-BY35X57A.js.map +0 -1
- package/dist/chunk-NG2TTI7D.js +0 -8
- package/dist/chunk-OESGRWI4.mjs +0 -6
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
var
|
|
5
|
-
var
|
|
4
|
+
var chunkVVBMWV4O_js = require('./chunk-VVBMWV4O.js');
|
|
5
|
+
var chunkTR3F3CLV_js = require('./chunk-TR3F3CLV.js');
|
|
6
6
|
var chunkHGNSJXWT_js = require('./chunk-HGNSJXWT.js');
|
|
7
|
-
var
|
|
7
|
+
var chunkNMM27UOF_js = require('./chunk-NMM27UOF.js');
|
|
8
8
|
var chunkH5NBFNND_js = require('./chunk-H5NBFNND.js');
|
|
9
9
|
var chunkRC4WWQXR_js = require('./chunk-RC4WWQXR.js');
|
|
10
10
|
var React = require('react');
|
|
@@ -17,15 +17,15 @@ var React__default = /*#__PURE__*/_interopDefault(React);
|
|
|
17
17
|
var dynamic__default = /*#__PURE__*/_interopDefault(dynamic);
|
|
18
18
|
|
|
19
19
|
var LazyAnalyticsProvider = dynamic__default.default(
|
|
20
|
-
() => import('./AnalyticsProvider-
|
|
20
|
+
() => import('./AnalyticsProvider-DPXR6FSV.js').then((m) => ({ default: m.AnalyticsProvider })),
|
|
21
21
|
{ ssr: false }
|
|
22
22
|
);
|
|
23
23
|
var LazyEngageWidget = dynamic__default.default(
|
|
24
|
-
() => import('./EngageWidget-
|
|
24
|
+
() => import('./EngageWidget-HD4F2ZVE.js').then((m) => ({ default: m.EngageWidget })),
|
|
25
25
|
{ ssr: false }
|
|
26
26
|
);
|
|
27
27
|
var LazySitemapSync = dynamic__default.default(
|
|
28
|
-
() => import('./SitemapSync-
|
|
28
|
+
() => import('./SitemapSync-GF4OKN4Z.js').then((m) => ({ default: m.SitemapSync })),
|
|
29
29
|
{ ssr: false }
|
|
30
30
|
);
|
|
31
31
|
function SiteKitClientProviders({
|
|
@@ -45,7 +45,7 @@ function SiteKitClientProviders({
|
|
|
45
45
|
const modulesReady = chunkHGNSJXWT_js.useDeferredActivation(defer);
|
|
46
46
|
const analyticsConfig = typeof analytics === "object" ? analytics : {};
|
|
47
47
|
const site = chunkH5NBFNND_js.resolveSiteHost(analyticsConfig.site);
|
|
48
|
-
|
|
48
|
+
chunkVVBMWV4O_js.publishSiteCredential({ apiKey, apiUrl, site, debug, mapsBrowserKey });
|
|
49
49
|
const [visitorId] = React.useState(() => chunkRC4WWQXR_js.getOrCreateVisitorId());
|
|
50
50
|
const [sessionId] = React.useState(() => chunkRC4WWQXR_js.getOrCreateSessionId());
|
|
51
51
|
const pageMetadataRef = React.useRef(null);
|
|
@@ -57,7 +57,7 @@ function SiteKitClientProviders({
|
|
|
57
57
|
const signalConfig = typeof signal === "object" ? signal : {};
|
|
58
58
|
siblings.push(
|
|
59
59
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
60
|
-
|
|
60
|
+
chunkNMM27UOF_js.SignalBridge,
|
|
61
61
|
{
|
|
62
62
|
enabled: true,
|
|
63
63
|
realtime: signalConfig.realtime !== false,
|
|
@@ -134,7 +134,7 @@ function SiteKitClientProviders({
|
|
|
134
134
|
if (sitemapSync) activeModules.push("sitemapSync");
|
|
135
135
|
siblings.push(
|
|
136
136
|
/* @__PURE__ */ jsxRuntime.jsx(React__default.default.Fragment, { children: modulesReady && /* @__PURE__ */ jsxRuntime.jsx(
|
|
137
|
-
|
|
137
|
+
chunkTR3F3CLV_js.FleetHeartbeat,
|
|
138
138
|
{
|
|
139
139
|
apiUrl,
|
|
140
140
|
apiKey,
|
|
@@ -155,5 +155,5 @@ function SiteKitClientProviders({
|
|
|
155
155
|
}
|
|
156
156
|
|
|
157
157
|
exports.SiteKitClientProviders = SiteKitClientProviders;
|
|
158
|
-
//# sourceMappingURL=chunk-
|
|
159
|
-
//# sourceMappingURL=chunk-
|
|
158
|
+
//# sourceMappingURL=chunk-6CCS2EGF.js.map
|
|
159
|
+
//# sourceMappingURL=chunk-6CCS2EGF.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/layout/SiteKitClientProviders.tsx"],"names":["dynamic","useDeferredActivation","resolveSiteHost","publishSiteCredential","useState","getOrCreateVisitorId","getOrCreateSessionId","useRef","useCallback","jsx","SignalBridge","React","Suspense","FleetHeartbeat","jsxs","Fragment"],"mappings":"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","file":"chunk-2HPQTRUB.js","sourcesContent":["'use client'\n\n/**\n * SiteKitClientProviders — Client Island\n *\n * This is the 'use client' boundary for SiteKitLayout.\n * It composes the client-only providers (Analytics, Engage, Signal, SitemapSync)\n * that require React context or browser APIs.\n *\n * All modules are lazy-loaded via next/dynamic so their JS is only downloaded\n * when the feature is enabled — keeping the initial bundle lightweight.\n *\n * All modules share a unified identity (visitor ID + session ID) read from\n * the storage-backed singleton (shared/identity), ensuring consistent\n * tracking across Analytics, Signal, and Engage.\n *\n * 4.0 INVARIANT — CHILDREN ARE NEVER WRAPPED. Every module here renders as a\n * childless sibling AFTER {children}; nothing provides context around page\n * content. That makes the prerender-bailout / remount-flash class of bug\n * structurally impossible. Do not reintroduce a wrapper.\n *\n * Props are passed down from the server-side SiteKitLayout component,\n * which reads env vars at render time.\n */\n\nimport React, { Suspense, useCallback, useRef, useState, type ReactNode } from 'react'\nimport dynamic from 'next/dynamic'\nimport {\n getOrCreateVisitorId,\n getOrCreateSessionId,\n} from '../shared/identity'\n// Defer non-critical module mounting until the page is quiet: the lazy\n// modules below are dynamic(ssr:false) and never render on the server, but\n// rendering them during hydration still kicks off their chunk downloads +\n// mount effects inside the critical startup window. useDeferredActivation\n// holds them until window.load + idle or first interaction — the same\n// strategy as the hand-rolled per-site deferrals this replaces (upforge\n// `deferred-analytics.tsx`, TPS `DeferredAnalytics.tsx`). The hook is public\n// (`@sonordev/site-kit/client`) so sites can reuse it for their own scripts.\nimport { useDeferredActivation } from '../shared/defer'\n// Single source of truth for seeding the token manager + the __SITE_KIT_*\n// globals — shared with the public `SiteKitCredential` component that\n// non-core layouts (agency-site-kit) use. Do not re-inline it here.\nimport { publishSiteCredential, resolveSiteHost } from '../shared/publishCredential'\nimport type { AnalyticsConfig, EngageConfig, SignalConfig } from './types'\n\n// Lazy-load feature modules — JS only downloaded when feature is enabled\nconst LazyAnalyticsProvider = dynamic(\n () => import('../analytics/AnalyticsProvider').then(m => ({ default: m.AnalyticsProvider })),\n { ssr: false },\n)\nconst LazyEngageWidget = dynamic(\n () => import('../engage/EngageWidget').then(m => ({ default: m.EngageWidget })),\n { ssr: false },\n)\nconst LazySitemapSync = dynamic(\n () => import('../SitemapSync').then(m => ({ default: m.SitemapSync })),\n { ssr: false },\n)\n// SignalBridge is imported STATICALLY, not via dynamic(ssr:false): it is a\n// tiny SSR-safe context shell that renders children immediately and\n// lazy-loads its machinery (SignalCore) as a childless sibling internally.\n// Wrapping children in a dynamic(ssr:false) component was the old SSR-bailout\n// failure mode — do not reintroduce it.\nimport { SignalBridge } from '../signal/SignalBridge'\n// Fleet heartbeat: a deferred, CHILDLESS SIBLING (like Analytics/Engage) that\n// reports this site's kit version + active modules once per session, so the\n// platform can see version drift across the fleet. Tiny and SSR-safe — renders\n// null until the shared idle gate fires; never wraps page content.\nimport { FleetHeartbeat } from '../fleet/FleetHeartbeat'\nimport type { FleetModule } from '../fleet/contract'\n\nexport interface SiteKitClientProvidersProps {\n children: ReactNode\n apiKey: string\n apiUrl: string\n projectId?: string\n analytics?: boolean | AnalyticsConfig\n engage?: boolean | EngageConfig\n signal?: boolean | SignalConfig\n /**\n * Runtime SitemapSync from the visitor's browser. Default FALSE — sitemap\n * registration belongs to build time and to sonor-api's nightly reconciler,\n * not to whoever happens to load the page. See SiteKitLayout for the full\n * reasoning; in short, its guards live in session/localStorage, so every new\n * visitor missed them and re-POSTed the whole sitemap.\n */\n sitemapSync?: boolean\n /**\n * Fleet heartbeat — reports kit version + active modules to Sonor once per\n * session so the platform can track version drift and key state across every\n * site. Default true. Deferred exactly like Analytics; never in the hydration\n * path, carries no visitor data.\n */\n fleet?: boolean\n /**\n * Defer Analytics / Engage / SitemapSync until window load + idle or first\n * interaction (default true). Pass false to restore legacy eager mounting\n * on hydration. SignalBridge is never deferred — it must apply experiment\n * variants as early as possible.\n */\n defer?: boolean\n debug?: boolean\n /** Browser-safe Google Maps key, resolved server-side by SiteKitLayout. */\n mapsBrowserKey?: string\n}\n\nexport function SiteKitClientProviders({\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 debug = false,\n mapsBrowserKey,\n}: SiteKitClientProvidersProps) {\n // One shared activation gate for all deferred siblings, so they mount in a\n // single commit instead of staggered re-renders.\n const modulesReady = useDeferredActivation(defer)\n // Hoist analytics config so the `site` dimension is resolvable up here.\n const analyticsConfig: AnalyticsConfig =\n typeof analytics === 'object' ? analytics : {}\n\n // Resolve the sub-site identifier — the dimension that lets one Sonor project\n // host many sites (e.g. truepowersystems.com + ohiopowerstudies.com under one\n // TPS project). Precedence lives in resolveSiteHost (shared contract):\n // explicit `analytics.site` > NEXT_PUBLIC_SITE_URL host > window.location.host.\n // Needed as a local too — SignalBridge and the analytics config read it below.\n const site = resolveSiteHost(analyticsConfig.site)\n\n // Seed the token manager + publish the window globals modules read from.\n // No-op on the server; runs during render so it lands before child effects.\n publishSiteCredential({ apiKey, apiUrl, site, debug, mapsBrowserKey })\n\n // Unified identity — single source of truth for all modules\n const [visitorId] = useState(() => getOrCreateVisitorId())\n const [sessionId] = useState(() => getOrCreateSessionId())\n\n // Page metadata bridge: Analytics writes, Signal reads\n const pageMetadataRef = useRef<Record<string, unknown> | null>(null)\n const onPageMetadata = useCallback((metadata: Record<string, unknown>) => {\n pageMetadataRef.current = metadata\n }, [])\n\n // Children render FIRST and are never re-parented. Siblings accumulate after.\n const siblings: ReactNode[] = []\n\n // SignalBridge — childless sibling (4.0: useSignal reads the module store,\n // so it no longer needs to wrap anything). Not gated on modulesReady:\n // experiment variants must apply as early as possible.\n if (signal) {\n const signalConfig: SignalConfig =\n typeof signal === 'object' ? signal : {}\n siblings.push(\n <SignalBridge\n key=\"sk-signal\"\n enabled\n realtime={signalConfig.realtime !== false}\n experiments={signalConfig.experiments !== false}\n behaviorTracking={signalConfig.behaviorTracking !== false}\n visitorId={visitorId}\n sessionId={sessionId}\n pageMetadataRef={pageMetadataRef}\n />,\n )\n }\n\n // Add Analytics if enabled (renders alongside, doesn't wrap).\n //\n // CRITICAL: LazyAnalyticsProvider is dynamic(..., { ssr: false }). Wrapping\n // {content} inside an ssr:false component makes the entire page tree skip\n // server rendering — the route de-opts to 100% client rendering and the\n // hero / LCP element only paints after hydration (mobile LCP ~4s, Lighthouse\n // ~85). Analytics tracks via effects + a metadata ref, so it never needs to\n // wrap page content — mount it as a childless sibling, exactly like Engage.\n // Each deferred sibling is appended as `{modulesReady && <Module/>}` so the\n // children slot never moves in the tree — flipping ready only mounts the\n // sibling, it never remounts page content.\n if (analytics) {\n siblings.push(\n <React.Fragment key=\"sk-analytics\">\n {modulesReady && (\n <Suspense fallback={null}>\n <LazyAnalyticsProvider\n apiUrl={apiUrl}\n apiKey={apiKey}\n site={site}\n trackPageViews={analyticsConfig.trackPageViews !== false}\n trackWebVitals={analyticsConfig.trackWebVitals !== false}\n trackScrollDepth={analyticsConfig.trackScrollDepth !== false}\n trackClicks={analyticsConfig.trackClicks !== false}\n sessionTimeout={analyticsConfig.sessionDuration}\n excludePaths={analyticsConfig.excludePaths}\n // Off by default: a cross-origin embed of this site reports\n // nothing (see analytics/send-gate.ts). Opt in per site.\n allowInFrame={analyticsConfig.allowInFrame === true}\n allowLocalhost={analyticsConfig.allowLocalhost === true}\n debug={debug}\n externalVisitorId={visitorId}\n externalSessionId={sessionId}\n onPageMetadata={onPageMetadata}\n />\n </Suspense>\n )}\n </React.Fragment>,\n )\n }\n\n // Engage widget — childless sibling\n if (engage) {\n const engageConfig: EngageConfig =\n typeof engage === 'object' ? engage : {}\n siblings.push(\n <React.Fragment key=\"sk-engage\">\n {modulesReady && (\n <LazyEngageWidget\n apiUrl={apiUrl}\n apiKey={apiKey}\n projectId={projectId}\n allowInFrame={analyticsConfig.allowInFrame === true}\n allowLocalhost={analyticsConfig.allowLocalhost === true}\n position={engageConfig.position || 'bottom-right'}\n offsetBottom={engageConfig.offsetBottom}\n zIndex={engageConfig.zIndex}\n chatEnabled={engageConfig.chatEnabled !== false}\n />\n )}\n </React.Fragment>,\n )\n }\n\n // SitemapSync — childless sibling\n if (sitemapSync) {\n siblings.push(\n <React.Fragment key=\"sk-sitemap\">\n {modulesReady && (\n <LazySitemapSync\n debug={debug}\n allowInFrame={analyticsConfig.allowInFrame === true}\n allowLocalhost={analyticsConfig.allowLocalhost === true}\n />\n )}\n </React.Fragment>,\n )\n }\n\n // Fleet heartbeat — childless sibling on the same modulesReady idle gate.\n // Reports the modules actually enabled on THIS layout (honest client-observable\n // set) so the platform can answer \"which version / modules is each site\n // running\". defer={false}: the modulesReady gate already handled deferral, so\n // the heartbeat fires on mount (still bounded to once per session internally).\n if (fleet) {\n const activeModules: FleetModule[] = []\n if (analytics) activeModules.push('analytics')\n if (engage) activeModules.push('engage')\n if (signal) activeModules.push('signal')\n if (sitemapSync) activeModules.push('sitemapSync')\n siblings.push(\n <React.Fragment key=\"sk-fleet\">\n {modulesReady && (\n <FleetHeartbeat\n apiUrl={apiUrl}\n apiKey={apiKey}\n site={site}\n modules={activeModules}\n allowInFrame={analyticsConfig.allowInFrame === true}\n allowLocalhost={analyticsConfig.allowLocalhost === true}\n defer={false}\n debug={debug}\n />\n )}\n </React.Fragment>,\n )\n }\n\n return (\n <>\n {children}\n {siblings}\n </>\n )\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/layout/SiteKitClientProviders.tsx"],"names":["dynamic","useDeferredActivation","resolveSiteHost","publishSiteCredential","useState","getOrCreateVisitorId","getOrCreateSessionId","useRef","useCallback","jsx","SignalBridge","React","Suspense","FleetHeartbeat","jsxs","Fragment"],"mappings":"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","file":"chunk-6CCS2EGF.js","sourcesContent":["'use client'\n\n/**\n * SiteKitClientProviders — Client Island\n *\n * This is the 'use client' boundary for SiteKitLayout.\n * It composes the client-only providers (Analytics, Engage, Signal, SitemapSync)\n * that require React context or browser APIs.\n *\n * All modules are lazy-loaded via next/dynamic so their JS is only downloaded\n * when the feature is enabled — keeping the initial bundle lightweight.\n *\n * All modules share a unified identity (visitor ID + session ID) read from\n * the storage-backed singleton (shared/identity), ensuring consistent\n * tracking across Analytics, Signal, and Engage.\n *\n * 4.0 INVARIANT — CHILDREN ARE NEVER WRAPPED. Every module here renders as a\n * childless sibling AFTER {children}; nothing provides context around page\n * content. That makes the prerender-bailout / remount-flash class of bug\n * structurally impossible. Do not reintroduce a wrapper.\n *\n * Props are passed down from the server-side SiteKitLayout component,\n * which reads env vars at render time.\n */\n\nimport React, { Suspense, useCallback, useRef, useState, type ReactNode } from 'react'\nimport dynamic from 'next/dynamic'\nimport {\n getOrCreateVisitorId,\n getOrCreateSessionId,\n} from '../shared/identity'\n// Defer non-critical module mounting until the page is quiet: the lazy\n// modules below are dynamic(ssr:false) and never render on the server, but\n// rendering them during hydration still kicks off their chunk downloads +\n// mount effects inside the critical startup window. useDeferredActivation\n// holds them until window.load + idle or first interaction — the same\n// strategy as the hand-rolled per-site deferrals this replaces (upforge\n// `deferred-analytics.tsx`, TPS `DeferredAnalytics.tsx`). The hook is public\n// (`@sonordev/site-kit/client`) so sites can reuse it for their own scripts.\nimport { useDeferredActivation } from '../shared/defer'\n// Single source of truth for seeding the token manager + the __SITE_KIT_*\n// globals — shared with the public `SiteKitCredential` component that\n// non-core layouts (agency-site-kit) use. Do not re-inline it here.\nimport { publishSiteCredential, resolveSiteHost } from '../shared/publishCredential'\nimport type { AnalyticsConfig, EngageConfig, SignalConfig } from './types'\n\n// Lazy-load feature modules — JS only downloaded when feature is enabled\nconst LazyAnalyticsProvider = dynamic(\n () => import('../analytics/AnalyticsProvider').then(m => ({ default: m.AnalyticsProvider })),\n { ssr: false },\n)\nconst LazyEngageWidget = dynamic(\n () => import('../engage/EngageWidget').then(m => ({ default: m.EngageWidget })),\n { ssr: false },\n)\nconst LazySitemapSync = dynamic(\n () => import('../SitemapSync').then(m => ({ default: m.SitemapSync })),\n { ssr: false },\n)\n// SignalBridge is imported STATICALLY, not via dynamic(ssr:false): it is a\n// tiny SSR-safe context shell that renders children immediately and\n// lazy-loads its machinery (SignalCore) as a childless sibling internally.\n// Wrapping children in a dynamic(ssr:false) component was the old SSR-bailout\n// failure mode — do not reintroduce it.\nimport { SignalBridge } from '../signal/SignalBridge'\n// Fleet heartbeat: a deferred, CHILDLESS SIBLING (like Analytics/Engage) that\n// reports this site's kit version + active modules once per session, so the\n// platform can see version drift across the fleet. Tiny and SSR-safe — renders\n// null until the shared idle gate fires; never wraps page content.\nimport { FleetHeartbeat } from '../fleet/FleetHeartbeat'\nimport type { FleetModule } from '../fleet/contract'\n\nexport interface SiteKitClientProvidersProps {\n children: ReactNode\n apiKey: string\n apiUrl: string\n projectId?: string\n analytics?: boolean | AnalyticsConfig\n engage?: boolean | EngageConfig\n signal?: boolean | SignalConfig\n /**\n * Runtime SitemapSync from the visitor's browser. Default FALSE — sitemap\n * registration belongs to build time and to sonor-api's nightly reconciler,\n * not to whoever happens to load the page. See SiteKitLayout for the full\n * reasoning; in short, its guards live in session/localStorage, so every new\n * visitor missed them and re-POSTed the whole sitemap.\n */\n sitemapSync?: boolean\n /**\n * Fleet heartbeat — reports kit version + active modules to Sonor once per\n * session so the platform can track version drift and key state across every\n * site. Default true. Deferred exactly like Analytics; never in the hydration\n * path, carries no visitor data.\n */\n fleet?: boolean\n /**\n * Defer Analytics / Engage / SitemapSync until window load + idle or first\n * interaction (default true). Pass false to restore legacy eager mounting\n * on hydration. SignalBridge is never deferred — it must apply experiment\n * variants as early as possible.\n */\n defer?: boolean\n debug?: boolean\n /** Browser-safe Google Maps key, resolved server-side by SiteKitLayout. */\n mapsBrowserKey?: string\n}\n\nexport function SiteKitClientProviders({\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 debug = false,\n mapsBrowserKey,\n}: SiteKitClientProvidersProps) {\n // One shared activation gate for all deferred siblings, so they mount in a\n // single commit instead of staggered re-renders.\n const modulesReady = useDeferredActivation(defer)\n // Hoist analytics config so the `site` dimension is resolvable up here.\n const analyticsConfig: AnalyticsConfig =\n typeof analytics === 'object' ? analytics : {}\n\n // Resolve the sub-site identifier — the dimension that lets one Sonor project\n // host many sites (e.g. truepowersystems.com + ohiopowerstudies.com under one\n // TPS project). Precedence lives in resolveSiteHost (shared contract):\n // explicit `analytics.site` > NEXT_PUBLIC_SITE_URL host > window.location.host.\n // Needed as a local too — SignalBridge and the analytics config read it below.\n const site = resolveSiteHost(analyticsConfig.site)\n\n // Seed the token manager + publish the window globals modules read from.\n // No-op on the server; runs during render so it lands before child effects.\n publishSiteCredential({ apiKey, apiUrl, site, debug, mapsBrowserKey })\n\n // Unified identity — single source of truth for all modules\n const [visitorId] = useState(() => getOrCreateVisitorId())\n const [sessionId] = useState(() => getOrCreateSessionId())\n\n // Page metadata bridge: Analytics writes, Signal reads\n const pageMetadataRef = useRef<Record<string, unknown> | null>(null)\n const onPageMetadata = useCallback((metadata: Record<string, unknown>) => {\n pageMetadataRef.current = metadata\n }, [])\n\n // Children render FIRST and are never re-parented. Siblings accumulate after.\n const siblings: ReactNode[] = []\n\n // SignalBridge — childless sibling (4.0: useSignal reads the module store,\n // so it no longer needs to wrap anything). Not gated on modulesReady:\n // experiment variants must apply as early as possible.\n if (signal) {\n const signalConfig: SignalConfig =\n typeof signal === 'object' ? signal : {}\n siblings.push(\n <SignalBridge\n key=\"sk-signal\"\n enabled\n realtime={signalConfig.realtime !== false}\n experiments={signalConfig.experiments !== false}\n behaviorTracking={signalConfig.behaviorTracking !== false}\n visitorId={visitorId}\n sessionId={sessionId}\n pageMetadataRef={pageMetadataRef}\n />,\n )\n }\n\n // Add Analytics if enabled (renders alongside, doesn't wrap).\n //\n // CRITICAL: LazyAnalyticsProvider is dynamic(..., { ssr: false }). Wrapping\n // {content} inside an ssr:false component makes the entire page tree skip\n // server rendering — the route de-opts to 100% client rendering and the\n // hero / LCP element only paints after hydration (mobile LCP ~4s, Lighthouse\n // ~85). Analytics tracks via effects + a metadata ref, so it never needs to\n // wrap page content — mount it as a childless sibling, exactly like Engage.\n // Each deferred sibling is appended as `{modulesReady && <Module/>}` so the\n // children slot never moves in the tree — flipping ready only mounts the\n // sibling, it never remounts page content.\n if (analytics) {\n siblings.push(\n <React.Fragment key=\"sk-analytics\">\n {modulesReady && (\n <Suspense fallback={null}>\n <LazyAnalyticsProvider\n apiUrl={apiUrl}\n apiKey={apiKey}\n site={site}\n trackPageViews={analyticsConfig.trackPageViews !== false}\n trackWebVitals={analyticsConfig.trackWebVitals !== false}\n trackScrollDepth={analyticsConfig.trackScrollDepth !== false}\n trackClicks={analyticsConfig.trackClicks !== false}\n sessionTimeout={analyticsConfig.sessionDuration}\n excludePaths={analyticsConfig.excludePaths}\n // Off by default: a cross-origin embed of this site reports\n // nothing (see analytics/send-gate.ts). Opt in per site.\n allowInFrame={analyticsConfig.allowInFrame === true}\n allowLocalhost={analyticsConfig.allowLocalhost === true}\n debug={debug}\n externalVisitorId={visitorId}\n externalSessionId={sessionId}\n onPageMetadata={onPageMetadata}\n />\n </Suspense>\n )}\n </React.Fragment>,\n )\n }\n\n // Engage widget — childless sibling\n if (engage) {\n const engageConfig: EngageConfig =\n typeof engage === 'object' ? engage : {}\n siblings.push(\n <React.Fragment key=\"sk-engage\">\n {modulesReady && (\n <LazyEngageWidget\n apiUrl={apiUrl}\n apiKey={apiKey}\n projectId={projectId}\n allowInFrame={analyticsConfig.allowInFrame === true}\n allowLocalhost={analyticsConfig.allowLocalhost === true}\n position={engageConfig.position || 'bottom-right'}\n offsetBottom={engageConfig.offsetBottom}\n zIndex={engageConfig.zIndex}\n chatEnabled={engageConfig.chatEnabled !== false}\n />\n )}\n </React.Fragment>,\n )\n }\n\n // SitemapSync — childless sibling\n if (sitemapSync) {\n siblings.push(\n <React.Fragment key=\"sk-sitemap\">\n {modulesReady && (\n <LazySitemapSync\n debug={debug}\n allowInFrame={analyticsConfig.allowInFrame === true}\n allowLocalhost={analyticsConfig.allowLocalhost === true}\n />\n )}\n </React.Fragment>,\n )\n }\n\n // Fleet heartbeat — childless sibling on the same modulesReady idle gate.\n // Reports the modules actually enabled on THIS layout (honest client-observable\n // set) so the platform can answer \"which version / modules is each site\n // running\". defer={false}: the modulesReady gate already handled deferral, so\n // the heartbeat fires on mount (still bounded to once per session internally).\n if (fleet) {\n const activeModules: FleetModule[] = []\n if (analytics) activeModules.push('analytics')\n if (engage) activeModules.push('engage')\n if (signal) activeModules.push('signal')\n if (sitemapSync) activeModules.push('sitemapSync')\n siblings.push(\n <React.Fragment key=\"sk-fleet\">\n {modulesReady && (\n <FleetHeartbeat\n apiUrl={apiUrl}\n apiKey={apiKey}\n site={site}\n modules={activeModules}\n allowInFrame={analyticsConfig.allowInFrame === true}\n allowLocalhost={analyticsConfig.allowLocalhost === true}\n defer={false}\n debug={debug}\n />\n )}\n </React.Fragment>,\n )\n }\n\n return (\n <>\n {children}\n {siblings}\n </>\n )\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/shared/version.ts"],"names":[],"mappings":";;;AASO,IAAM,gBAAA,GAAmB","file":"chunk-
|
|
1
|
+
{"version":3,"sources":["../src/shared/version.ts"],"names":[],"mappings":";;;AASO,IAAM,gBAAA,GAAmB","file":"chunk-7R6H3GQ4.js","sourcesContent":["/**\n * @sonordev/site-kit shared - Package version constant\n *\n * Single source of truth for the version the kit reports at runtime (the\n * x-sitekit-version request header set by sonorFetch). Kept as a plain const\n * so client bundles don't need JSON imports; scripts/verify-dts.cjs asserts\n * it matches package.json at publish time, and version.test.ts asserts it in\n * dev, so it can't silently drift.\n */\nexport const SITE_KIT_VERSION = '5.8.3'\n"]}
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
4
|
var chunkESP5RMB7_js = require('./chunk-ESP5RMB7.js');
|
|
5
|
-
var
|
|
6
|
-
var
|
|
5
|
+
var chunkUHM3CCCC_js = require('./chunk-UHM3CCCC.js');
|
|
6
|
+
var chunkI7HOMMIK_js = require('./chunk-I7HOMMIK.js');
|
|
7
7
|
var react = require('react');
|
|
8
8
|
var ReactMarkdown = require('react-markdown');
|
|
9
9
|
var jsxRuntime = require('react/jsx-runtime');
|
|
@@ -38,7 +38,7 @@ function InlineManagedForm({ slug, prefill, primaryColor, primaryRgb }) {
|
|
|
38
38
|
submit,
|
|
39
39
|
isSubmitting,
|
|
40
40
|
isComplete
|
|
41
|
-
} =
|
|
41
|
+
} = chunkUHM3CCCC_js.useForm(slug, { initialValues: prefill || {} });
|
|
42
42
|
const cardStyle = {
|
|
43
43
|
marginTop: 8,
|
|
44
44
|
padding: 12,
|
|
@@ -395,7 +395,7 @@ function ChatWidget({ projectId: propProjectId, config, apiUrl: propApiUrl, sign
|
|
|
395
395
|
const { apiKey } = getApiConfig();
|
|
396
396
|
if (!apiKey) return;
|
|
397
397
|
let cancelled = false;
|
|
398
|
-
|
|
398
|
+
chunkI7HOMMIK_js.sonorFetch(`${baseUrl}/api/public/seo/project-info`, {}, { apiKey, retries: 0 }).then((res) => res.ok ? res.json() : null).then((data) => {
|
|
399
399
|
if (cancelled || !data?.valid || !data?.project_id) return;
|
|
400
400
|
setResolvedProjectId(data.project_id);
|
|
401
401
|
}).catch(() => {
|
|
@@ -409,7 +409,7 @@ function ChatWidget({ projectId: propProjectId, config, apiUrl: propApiUrl, sign
|
|
|
409
409
|
const apiKey = ensureApiKey();
|
|
410
410
|
if (!apiKey) return;
|
|
411
411
|
try {
|
|
412
|
-
const response = await
|
|
412
|
+
const response = await chunkI7HOMMIK_js.sonorFetch(`${baseUrl}/engage/widget/config?projectId=${projectId}`, {}, { apiKey, retries: 0 });
|
|
413
413
|
if (response.ok) {
|
|
414
414
|
const { data } = await response.json();
|
|
415
415
|
setWidgetConfig(data ?? null);
|
|
@@ -425,7 +425,7 @@ function ChatWidget({ projectId: propProjectId, config, apiUrl: propApiUrl, sign
|
|
|
425
425
|
const apiKey = ensureApiKey();
|
|
426
426
|
if (!apiKey) return null;
|
|
427
427
|
try {
|
|
428
|
-
const response = await
|
|
428
|
+
const response = await chunkI7HOMMIK_js.sonorFetch(`${baseUrl}/engage/widget/availability?projectId=${projectId}`, {}, { apiKey, retries: 0 });
|
|
429
429
|
if (response.ok) {
|
|
430
430
|
const { data } = await response.json();
|
|
431
431
|
setAvailability(data);
|
|
@@ -442,7 +442,7 @@ function ChatWidget({ projectId: propProjectId, config, apiUrl: propApiUrl, sign
|
|
|
442
442
|
const apiKey = ensureApiKey();
|
|
443
443
|
if (!apiKey) return null;
|
|
444
444
|
try {
|
|
445
|
-
const response = await
|
|
445
|
+
const response = await chunkI7HOMMIK_js.sonorFetch(`${baseUrl}/engage/widget/session`, {
|
|
446
446
|
method: "POST",
|
|
447
447
|
headers: { "Content-Type": "application/json" },
|
|
448
448
|
body: JSON.stringify({
|
|
@@ -503,7 +503,7 @@ function ChatWidget({ projectId: propProjectId, config, apiUrl: propApiUrl, sign
|
|
|
503
503
|
pageUrl: typeof window !== "undefined" ? window.location.href : void 0,
|
|
504
504
|
...siteContext ? { siteContext } : {}
|
|
505
505
|
};
|
|
506
|
-
const res = await
|
|
506
|
+
const res = await chunkI7HOMMIK_js.sonorFetch(url, {
|
|
507
507
|
method: "POST",
|
|
508
508
|
headers: {
|
|
509
509
|
"Content-Type": "application/json"
|
|
@@ -614,7 +614,7 @@ function ChatWidget({ projectId: propProjectId, config, apiUrl: propApiUrl, sign
|
|
|
614
614
|
if (currentSessionId) {
|
|
615
615
|
const apiKey = ensureApiKey();
|
|
616
616
|
if (apiKey) {
|
|
617
|
-
|
|
617
|
+
chunkI7HOMMIK_js.sonorFetch(`${baseUrl}/engage/widget/messages?sessionId=${currentSessionId}`, {}, { apiKey, retries: 0 }).then((res) => res.ok ? res.json() : null).then((json) => {
|
|
618
618
|
const data = json?.data ?? json;
|
|
619
619
|
if (Array.isArray(data) && data.length) {
|
|
620
620
|
setMessages((prev) => {
|
|
@@ -677,7 +677,7 @@ function ChatWidget({ projectId: propProjectId, config, apiUrl: propApiUrl, sign
|
|
|
677
677
|
try {
|
|
678
678
|
const apiKey = ensureApiKey();
|
|
679
679
|
if (!apiKey) return;
|
|
680
|
-
const response = await
|
|
680
|
+
const response = await chunkI7HOMMIK_js.sonorFetch(`${baseUrl}/engage/widget/messages?sessionId=${currentSessionId}`, {}, { apiKey, retries: 0 });
|
|
681
681
|
if (response.ok) {
|
|
682
682
|
const { data } = await response.json();
|
|
683
683
|
setMessages((prev) => {
|
|
@@ -830,7 +830,7 @@ function ChatWidget({ projectId: propProjectId, config, apiUrl: propApiUrl, sign
|
|
|
830
830
|
form.append("file", file);
|
|
831
831
|
form.append("sessionId", sessionId);
|
|
832
832
|
form.append("visitorId", visitorId);
|
|
833
|
-
const res = await
|
|
833
|
+
const res = await chunkI7HOMMIK_js.sonorFetch(`${baseUrl}/engage/widget/upload`, {
|
|
834
834
|
method: "POST",
|
|
835
835
|
body: form
|
|
836
836
|
}, { apiKey, retries: 0 });
|
|
@@ -977,7 +977,7 @@ function ChatWidget({ projectId: propProjectId, config, apiUrl: propApiUrl, sign
|
|
|
977
977
|
if (!apiKey) return;
|
|
978
978
|
setCheckingHandoff(true);
|
|
979
979
|
try {
|
|
980
|
-
const res = await
|
|
980
|
+
const res = await chunkI7HOMMIK_js.sonorFetch(`${baseUrl}/engage/widget/handoff`, {
|
|
981
981
|
method: "POST",
|
|
982
982
|
headers: { "Content-Type": "application/json" },
|
|
983
983
|
body: JSON.stringify({ sessionId })
|
|
@@ -1016,7 +1016,7 @@ function ChatWidget({ projectId: propProjectId, config, apiUrl: propApiUrl, sign
|
|
|
1016
1016
|
setIsLoading(true);
|
|
1017
1017
|
setOfflineError(null);
|
|
1018
1018
|
try {
|
|
1019
|
-
const response = await
|
|
1019
|
+
const response = await chunkI7HOMMIK_js.sonorFetch(`${baseUrl}/engage/widget/offline-form`, {
|
|
1020
1020
|
method: "POST",
|
|
1021
1021
|
headers: { "Content-Type": "application/json" },
|
|
1022
1022
|
body: JSON.stringify({
|
|
@@ -1614,5 +1614,5 @@ function ChatWidget({ projectId: propProjectId, config, apiUrl: propApiUrl, sign
|
|
|
1614
1614
|
}
|
|
1615
1615
|
|
|
1616
1616
|
exports.ChatWidget = ChatWidget;
|
|
1617
|
-
//# sourceMappingURL=chunk-
|
|
1618
|
-
//# sourceMappingURL=chunk-
|
|
1617
|
+
//# sourceMappingURL=chunk-7VZYP4K5.js.map
|
|
1618
|
+
//# sourceMappingURL=chunk-7VZYP4K5.js.map
|