@sonordev/site-kit 6.4.0 → 6.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/agent-manifest.json +1 -1
- package/dist/AnalyticsProvider-44PDLORZ.js +34 -0
- package/dist/{AnalyticsProvider-QXZN5O6D.js.map → AnalyticsProvider-44PDLORZ.js.map} +1 -1
- package/dist/AnalyticsProvider-F6KHEAOX.mjs +13 -0
- package/dist/{AnalyticsProvider-4K5T7OQ7.mjs.map → AnalyticsProvider-F6KHEAOX.mjs.map} +1 -1
- package/dist/{ArticleViewTracker-FFMHR7AY.js → ArticleViewTracker-MGNVIHZ4.js} +6 -6
- package/dist/{ArticleViewTracker-FFMHR7AY.js.map → ArticleViewTracker-MGNVIHZ4.js.map} +1 -1
- package/dist/{ArticleViewTracker-BUG2TOHS.mjs → ArticleViewTracker-NI4UNSY7.mjs} +5 -5
- package/dist/{ArticleViewTracker-BUG2TOHS.mjs.map → ArticleViewTracker-NI4UNSY7.mjs.map} +1 -1
- package/dist/{ChatWidget-CRQPBDEF.mjs → ChatWidget-XSALHDDW.mjs} +7 -7
- package/dist/{ChatWidget-CRQPBDEF.mjs.map → ChatWidget-XSALHDDW.mjs.map} +1 -1
- package/dist/{ChatWidget-XFYLVXAX.js → ChatWidget-YBXJRR2Z.js} +10 -10
- package/dist/{ChatWidget-XFYLVXAX.js.map → ChatWidget-YBXJRR2Z.js.map} +1 -1
- package/dist/EngageWidget-DUEXPVOY.mjs +13 -0
- package/dist/{EngageWidget-SQU4T7CI.mjs.map → EngageWidget-DUEXPVOY.mjs.map} +1 -1
- package/dist/EngageWidget-MDCRS3BN.js +22 -0
- package/dist/{EngageWidget-S234YAT2.js.map → EngageWidget-MDCRS3BN.js.map} +1 -1
- package/dist/{FileField-XG4EYAZW.js → FileField-AXU6KBSV.js} +6 -6
- package/dist/{FileField-XG4EYAZW.js.map → FileField-AXU6KBSV.js.map} +1 -1
- package/dist/{FileField-HNEBEBLB.mjs → FileField-UTLGR5ZN.mjs} +5 -5
- package/dist/{FileField-HNEBEBLB.mjs.map → FileField-UTLGR5ZN.mjs.map} +1 -1
- package/dist/{FormSpotlight-VKD774PZ.mjs → FormSpotlight-NWLCZMOT.mjs} +3 -3
- package/dist/{FormSpotlight-VKD774PZ.mjs.map → FormSpotlight-NWLCZMOT.mjs.map} +1 -1
- package/dist/{FormSpotlight-IODREOPN.js → FormSpotlight-RR5KJDIH.js} +9 -9
- package/dist/{FormSpotlight-IODREOPN.js.map → FormSpotlight-RR5KJDIH.js.map} +1 -1
- package/dist/{FormStage-37KKZQH4.js → FormStage-GFNX4GLU.js} +9 -9
- package/dist/{FormStage-37KKZQH4.js.map → FormStage-GFNX4GLU.js.map} +1 -1
- package/dist/{FormStage-PRZNRYNC.mjs → FormStage-V4XKLI6J.mjs} +3 -3
- package/dist/{FormStage-PRZNRYNC.mjs.map → FormStage-V4XKLI6J.mjs.map} +1 -1
- package/dist/ManagedForm-4AD3LWSC.js +25 -0
- package/dist/{ManagedForm-JCMEE626.js.map → ManagedForm-4AD3LWSC.js.map} +1 -1
- package/dist/ManagedForm-4IWPG6AZ.mjs +16 -0
- package/dist/{ManagedForm-4PZOCKCV.mjs.map → ManagedForm-4IWPG6AZ.mjs.map} +1 -1
- package/dist/{ManagedNewsletterForm-KMZG24OE.mjs → ManagedNewsletterForm-ARSY2VHC.mjs} +6 -6
- package/dist/{ManagedNewsletterForm-KMZG24OE.mjs.map → ManagedNewsletterForm-ARSY2VHC.mjs.map} +1 -1
- package/dist/{ManagedNewsletterForm-CTC33B2U.js → ManagedNewsletterForm-HJZNUABY.js} +7 -7
- package/dist/{ManagedNewsletterForm-CTC33B2U.js.map → ManagedNewsletterForm-HJZNUABY.js.map} +1 -1
- package/dist/{SignalCore-YIPKKIUG.mjs → SignalCore-N2LKG4XN.mjs} +5 -5
- package/dist/{SignalCore-YIPKKIUG.mjs.map → SignalCore-N2LKG4XN.mjs.map} +1 -1
- package/dist/{SignalCore-YHT7WPXV.js → SignalCore-P2JUY2BO.js} +11 -11
- package/dist/{SignalCore-YHT7WPXV.js.map → SignalCore-P2JUY2BO.js.map} +1 -1
- package/dist/SitemapSync-KFY4PJ7G.js +19 -0
- package/dist/{SitemapSync-GN4OXIM2.js.map → SitemapSync-KFY4PJ7G.js.map} +1 -1
- package/dist/SitemapSync-UYDL7T4M.mjs +10 -0
- package/dist/{SitemapSync-NG763CGN.mjs.map → SitemapSync-UYDL7T4M.mjs.map} +1 -1
- package/dist/analytics/index.js +14 -13
- package/dist/analytics/index.mjs +6 -5
- package/dist/articles/index.js +1 -1
- package/dist/articles/index.mjs +1 -1
- package/dist/articles/server-ui.js +1 -1
- package/dist/articles/server-ui.mjs +1 -1
- package/dist/articles/types.d.ts +6 -0
- package/dist/articles/types.d.ts.map +1 -1
- package/dist/{chunk-KZBDH5A3.js → chunk-34XL7TVH.js} +4 -4
- package/dist/{chunk-KZBDH5A3.js.map → chunk-34XL7TVH.js.map} +1 -1
- package/dist/{chunk-5T3J24K4.mjs → chunk-3BLKKF67.mjs} +4 -4
- package/dist/{chunk-5T3J24K4.mjs.map → chunk-3BLKKF67.mjs.map} +1 -1
- package/dist/{chunk-5W4S7XQD.js → chunk-3EAS4PAT.js} +3 -3
- package/dist/{chunk-5W4S7XQD.js.map → chunk-3EAS4PAT.js.map} +1 -1
- package/dist/{chunk-LPDXS2B2.mjs → chunk-42LLFAJQ.mjs} +3 -3
- package/dist/{chunk-LPDXS2B2.mjs.map → chunk-42LLFAJQ.mjs.map} +1 -1
- package/dist/{chunk-TIFVAASU.mjs → chunk-5YA6SI4Z.mjs} +2 -2
- package/dist/{chunk-S5QKNXLQ.js → chunk-5ZMTEK7U.js} +10 -10
- package/dist/{chunk-S5QKNXLQ.js.map → chunk-5ZMTEK7U.js.map} +1 -1
- package/dist/{chunk-YACU35MY.js → chunk-6OQYRVMI.js} +9 -9
- package/dist/{chunk-YACU35MY.js.map → chunk-6OQYRVMI.js.map} +1 -1
- package/dist/{chunk-4C3INRHE.mjs → chunk-7F66Y4MA.mjs} +5 -5
- package/dist/{chunk-4C3INRHE.mjs.map → chunk-7F66Y4MA.mjs.map} +1 -1
- package/dist/{chunk-GSU6VTCZ.mjs → chunk-A2HL22BO.mjs} +3 -3
- package/dist/{chunk-GSU6VTCZ.mjs.map → chunk-A2HL22BO.mjs.map} +1 -1
- package/dist/{chunk-XZHR4E2D.js → chunk-AL4Z6VYF.js} +8 -8
- package/dist/{chunk-XZHR4E2D.js.map → chunk-AL4Z6VYF.js.map} +1 -1
- package/dist/{chunk-ZEBOOUBP.mjs → chunk-B6QPCAEG.mjs} +3 -3
- package/dist/{chunk-ZEBOOUBP.mjs.map → chunk-B6QPCAEG.mjs.map} +1 -1
- package/dist/{chunk-HTCNRTN6.js → chunk-BHZHWXER.js} +8 -8
- package/dist/{chunk-HTCNRTN6.js.map → chunk-BHZHWXER.js.map} +1 -1
- package/dist/{chunk-TPDDSEL3.mjs → chunk-BNKBRLJK.mjs} +3 -3
- package/dist/{chunk-TPDDSEL3.mjs.map → chunk-BNKBRLJK.mjs.map} +1 -1
- package/dist/{chunk-A6UYV475.mjs → chunk-CABEVWKJ.mjs} +4 -24
- package/dist/chunk-CABEVWKJ.mjs.map +1 -0
- package/dist/{chunk-VMNPLCZB.js → chunk-CM4AVKXR.js} +14 -14
- package/dist/{chunk-VMNPLCZB.js.map → chunk-CM4AVKXR.js.map} +1 -1
- package/dist/{chunk-KOPFFKG2.mjs → chunk-D3WJMSTB.mjs} +3 -3
- package/dist/{chunk-KOPFFKG2.mjs.map → chunk-D3WJMSTB.mjs.map} +1 -1
- package/dist/{chunk-JXRGIE3V.mjs → chunk-DWZGW77V.mjs} +4 -4
- package/dist/{chunk-JXRGIE3V.mjs.map → chunk-DWZGW77V.mjs.map} +1 -1
- package/dist/{chunk-USQPRLSG.mjs → chunk-FPVYKSXE.mjs} +13 -10
- package/dist/chunk-FPVYKSXE.mjs.map +1 -0
- package/dist/{chunk-VDEQVXNV.js → chunk-G2KGHIAP.js} +3 -3
- package/dist/{chunk-VDEQVXNV.js.map → chunk-G2KGHIAP.js.map} +1 -1
- package/dist/chunk-GIGUDKLS.mjs +6 -0
- package/dist/{chunk-K3PVUXKB.mjs.map → chunk-GIGUDKLS.mjs.map} +1 -1
- package/dist/{chunk-XXSSUCJB.js → chunk-I7AZC5ZQ.js} +2 -2
- package/dist/{chunk-C7J4XLBN.js → chunk-IO65ROAO.js} +15 -15
- package/dist/{chunk-C7J4XLBN.js.map → chunk-IO65ROAO.js.map} +1 -1
- package/dist/chunk-JCDX37BY.js +58 -0
- package/dist/chunk-JCDX37BY.js.map +1 -0
- package/dist/{chunk-7K6L33BX.mjs → chunk-JOYMIGR2.mjs} +22 -22
- package/dist/{chunk-ATPQ6264.js → chunk-JS75ORH7.js} +24 -24
- package/dist/{chunk-BI7DH42Z.mjs → chunk-MDQLON5R.mjs} +5 -5
- package/dist/{chunk-BI7DH42Z.mjs.map → chunk-MDQLON5R.mjs.map} +1 -1
- package/dist/{chunk-GXSSFQ5D.js → chunk-MHKD34B4.js} +15 -15
- package/dist/{chunk-GXSSFQ5D.js.map → chunk-MHKD34B4.js.map} +1 -1
- package/dist/chunk-MXJOKOFK.mjs +51 -0
- package/dist/chunk-MXJOKOFK.mjs.map +1 -0
- package/dist/{chunk-5RNAUYWE.js → chunk-NH2P27MA.js} +4 -27
- package/dist/chunk-NH2P27MA.js.map +1 -0
- package/dist/{chunk-ZUQSVCMD.js → chunk-NN2YE5WT.js} +3 -3
- package/dist/{chunk-RH4XEXTK.mjs → chunk-NNZDWY3L.mjs} +3 -3
- package/dist/{chunk-SBTA6B6Y.mjs → chunk-OFBEBMXN.mjs} +4 -4
- package/dist/{chunk-SBTA6B6Y.mjs.map → chunk-OFBEBMXN.mjs.map} +1 -1
- package/dist/{chunk-HSLPN3QK.js → chunk-OY3PDIB3.js} +10 -10
- package/dist/{chunk-HSLPN3QK.js.map → chunk-OY3PDIB3.js.map} +1 -1
- package/dist/{chunk-ZOBUA65N.js → chunk-PFDRQJKJ.js} +14 -14
- package/dist/{chunk-ZOBUA65N.js.map → chunk-PFDRQJKJ.js.map} +1 -1
- package/dist/{chunk-YRKWJCML.mjs → chunk-PGYOBEPL.mjs} +3 -3
- package/dist/{chunk-YRKWJCML.mjs.map → chunk-PGYOBEPL.mjs.map} +1 -1
- package/dist/{chunk-U5NFIHLY.js → chunk-PIPGH7GA.js} +4 -4
- package/dist/{chunk-U5NFIHLY.js.map → chunk-PIPGH7GA.js.map} +1 -1
- package/dist/chunk-PURI56RE.js +8 -0
- package/dist/{chunk-CIB3RHNZ.js.map → chunk-PURI56RE.js.map} +1 -1
- package/dist/{chunk-EWDWLY74.js → chunk-QCS7NWMA.js} +15 -12
- package/dist/chunk-QCS7NWMA.js.map +1 -0
- package/dist/{chunk-W7IAG5YD.js → chunk-RMDH2HMW.js} +3 -3
- package/dist/{chunk-W7IAG5YD.js.map → chunk-RMDH2HMW.js.map} +1 -1
- package/dist/{chunk-U4CYO4NG.js → chunk-SUGBIEYQ.js} +9 -9
- package/dist/{chunk-U4CYO4NG.js.map → chunk-SUGBIEYQ.js.map} +1 -1
- package/dist/{chunk-M62L2N5A.mjs → chunk-SVCKJ5KH.mjs} +4 -4
- package/dist/{chunk-M62L2N5A.mjs.map → chunk-SVCKJ5KH.mjs.map} +1 -1
- package/dist/{chunk-6QPKC6XP.mjs → chunk-THO4NS6Z.mjs} +3 -3
- package/dist/{chunk-6QPKC6XP.mjs.map → chunk-THO4NS6Z.mjs.map} +1 -1
- package/dist/{chunk-WIWHM47B.mjs → chunk-TPEPAHU5.mjs} +3 -3
- package/dist/{chunk-WIWHM47B.mjs.map → chunk-TPEPAHU5.mjs.map} +1 -1
- package/dist/{chunk-CUZ3I6CO.js → chunk-U577ITSA.js} +5 -5
- package/dist/{chunk-CUZ3I6CO.js.map → chunk-U577ITSA.js.map} +1 -1
- package/dist/{chunk-5BARLEAI.mjs → chunk-UCQDE5UH.mjs} +3 -3
- package/dist/{chunk-5BARLEAI.mjs.map → chunk-UCQDE5UH.mjs.map} +1 -1
- package/dist/{chunk-QOKMH2TD.mjs → chunk-VA2O5OSV.mjs} +3 -3
- package/dist/{chunk-QOKMH2TD.mjs.map → chunk-VA2O5OSV.mjs.map} +1 -1
- package/dist/{chunk-M3JCHPK3.mjs → chunk-VJTKIKZY.mjs} +5 -5
- package/dist/{chunk-M3JCHPK3.mjs.map → chunk-VJTKIKZY.mjs.map} +1 -1
- package/dist/{chunk-F2GECCK7.js → chunk-VUAGR6VL.js} +12 -12
- package/dist/{chunk-F2GECCK7.js.map → chunk-VUAGR6VL.js.map} +1 -1
- package/dist/{chunk-24LFAQEG.mjs → chunk-XEOIGCUE.mjs} +5 -5
- package/dist/{chunk-24LFAQEG.mjs.map → chunk-XEOIGCUE.mjs.map} +1 -1
- package/dist/{chunk-GGGX54ZE.js → chunk-ZXC56JS3.js} +14 -14
- package/dist/{chunk-GGGX54ZE.js.map → chunk-ZXC56JS3.js.map} +1 -1
- package/dist/cli/index.js +211 -211
- package/dist/cli/index.mjs +151 -151
- package/dist/client/index.js +4 -4
- package/dist/client/index.mjs +3 -3
- package/dist/commerce/index.js +59 -58
- package/dist/commerce/index.mjs +7 -6
- package/dist/engage/index.js +11 -10
- package/dist/engage/index.js.map +1 -1
- package/dist/engage/index.mjs +8 -7
- package/dist/engage/index.mjs.map +1 -1
- package/dist/fleet/index.js +10 -9
- package/dist/fleet/index.mjs +6 -5
- package/dist/forms/index.js +13 -13
- package/dist/forms/index.mjs +7 -7
- package/dist/forms/server.js +2 -2
- package/dist/forms/server.mjs +1 -1
- package/dist/images/index.js +11 -11
- package/dist/images/index.mjs +4 -4
- package/dist/index.js +65 -64
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +11 -10
- package/dist/index.mjs.map +1 -1
- package/dist/layout/SiteKitClientProviders.d.ts.map +1 -1
- package/dist/layout/client.d.ts.map +1 -1
- package/dist/layout/client.js +10 -9
- package/dist/layout/client.mjs +9 -8
- package/dist/layout/index.js +12 -11
- 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/layout/types.d.ts +6 -0
- package/dist/layout/types.d.ts.map +1 -1
- package/dist/{lib-6GWWPDJR.js → lib-6HOOMENJ.js} +7 -7
- package/dist/{lib-WFB5RLEQ.js → lib-BGAWCSUH.js} +8 -8
- package/dist/{lib-N5PD6JNJ.mjs → lib-R7IQ4ZHE.mjs} +2 -2
- package/dist/lib-RSDMEKDQ.mjs +4 -0
- package/dist/maps/index.js +5 -5
- package/dist/maps/index.mjs +3 -3
- package/dist/portfolio/contract.d.ts +93 -0
- package/dist/portfolio/contract.d.ts.map +1 -1
- package/dist/portfolio/contract.js +94 -1
- package/dist/portfolio/contract.js.map +1 -1
- package/dist/portfolio/contract.mjs +79 -2
- package/dist/portfolio/contract.mjs.map +1 -1
- package/dist/search/index.js +4 -4
- package/dist/search/index.mjs +3 -3
- package/dist/seo/client.js +7 -6
- package/dist/seo/client.mjs +6 -5
- package/dist/seo/index.js +7 -6
- package/dist/seo/index.js.map +1 -1
- package/dist/seo/index.mjs +6 -5
- package/dist/seo/index.mjs.map +1 -1
- package/dist/seo/register-sitemap-cli.js +2 -2
- package/dist/seo/register-sitemap-cli.mjs +1 -1
- package/dist/server/index.js +3 -3
- package/dist/server/index.mjs +2 -2
- package/dist/shared/frame.d.ts +15 -0
- package/dist/shared/frame.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/dist/{web-vitals.attribution-CHXXWO72.mjs → web-vitals.attribution-7LKLZ5GR.mjs} +3 -3
- package/dist/web-vitals.attribution-7LKLZ5GR.mjs.map +1 -0
- package/dist/{web-vitals.attribution-SQVZNHN3.js → web-vitals.attribution-ONVYQNRB.js} +3 -3
- package/dist/web-vitals.attribution-ONVYQNRB.js.map +1 -0
- package/package.json +19 -21
- package/dist/AnalyticsProvider-4K5T7OQ7.mjs +0 -12
- package/dist/AnalyticsProvider-QXZN5O6D.js +0 -33
- package/dist/EngageWidget-S234YAT2.js +0 -21
- package/dist/EngageWidget-SQU4T7CI.mjs +0 -12
- package/dist/ManagedForm-4PZOCKCV.mjs +0 -16
- package/dist/ManagedForm-JCMEE626.js +0 -25
- package/dist/SitemapSync-GN4OXIM2.js +0 -18
- package/dist/SitemapSync-NG763CGN.mjs +0 -9
- package/dist/chunk-5RNAUYWE.js.map +0 -1
- package/dist/chunk-A6UYV475.mjs.map +0 -1
- package/dist/chunk-CIB3RHNZ.js +0 -8
- package/dist/chunk-EWDWLY74.js.map +0 -1
- package/dist/chunk-K3PVUXKB.mjs +0 -6
- package/dist/chunk-USQPRLSG.mjs.map +0 -1
- package/dist/lib-BD4KKQBI.mjs +0 -4
- package/dist/web-vitals.attribution-CHXXWO72.mjs.map +0 -1
- package/dist/web-vitals.attribution-SQVZNHN3.js.map +0 -1
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { parse } from './chunk-
|
|
1
|
+
import { parse } from './chunk-5YA6SI4Z.mjs';
|
|
2
2
|
import { __commonJS, __export, __toESM, __publicField } from './chunk-BEXTDHO4.mjs';
|
|
3
3
|
import { isatty } from 'tty';
|
|
4
4
|
import { inspect, formatWithOptions, styleText } from 'util';
|
|
5
5
|
|
|
6
|
-
//
|
|
6
|
+
// node_modules/.pnpm/jsesc@3.1.0/node_modules/jsesc/jsesc.js
|
|
7
7
|
var require_jsesc = __commonJS({
|
|
8
|
-
"
|
|
8
|
+
"node_modules/.pnpm/jsesc@3.1.0/node_modules/jsesc/jsesc.js"(exports, module) {
|
|
9
9
|
var object = {};
|
|
10
10
|
var hasOwnProperty = object.hasOwnProperty;
|
|
11
11
|
var forOwn = (object2, callback) => {
|
|
@@ -278,7 +278,7 @@ var require_jsesc = __commonJS({
|
|
|
278
278
|
}
|
|
279
279
|
});
|
|
280
280
|
|
|
281
|
-
//
|
|
281
|
+
// node_modules/.pnpm/obug@2.1.4/node_modules/obug/dist/core.js
|
|
282
282
|
function coerce(value) {
|
|
283
283
|
if (value instanceof Error) return value.stack || value.message;
|
|
284
284
|
return value;
|
|
@@ -544,7 +544,7 @@ function createDebug2(namespace, options) {
|
|
|
544
544
|
}
|
|
545
545
|
enable(env.DEBUG || "");
|
|
546
546
|
|
|
547
|
-
//
|
|
547
|
+
// node_modules/.pnpm/@babel+code-frame@8.0.0/node_modules/@babel/code-frame/lib/common-shared.js
|
|
548
548
|
var NEWLINE = /\r\n|[\n\r\u2028\u2029]/;
|
|
549
549
|
function getMarkerLines(loc, source, opts, startLineBaseZero) {
|
|
550
550
|
const startLoc = {
|
|
@@ -659,7 +659,7 @@ ${frame}`;
|
|
|
659
659
|
return defs2.reset(frame);
|
|
660
660
|
}
|
|
661
661
|
|
|
662
|
-
//
|
|
662
|
+
// node_modules/.pnpm/js-tokens@10.0.0/node_modules/js-tokens/index.js
|
|
663
663
|
var HashbangComment;
|
|
664
664
|
var Identifier;
|
|
665
665
|
var JSXIdentifier;
|
|
@@ -1076,7 +1076,7 @@ jsTokens = function* (input, { jsx = false } = {}) {
|
|
|
1076
1076
|
};
|
|
1077
1077
|
var js_tokens_default = jsTokens;
|
|
1078
1078
|
|
|
1079
|
-
//
|
|
1079
|
+
// node_modules/.pnpm/@babel+helper-validator-identifier@8.0.4/node_modules/@babel/helper-validator-identifier/lib/identifier.js
|
|
1080
1080
|
var bmpIdentifierStart = /[\p{ID_Start}\u088f\u0c5c\u0cdc\ua7ce\ua7cf\ua7d2\ua7d4\ua7f1]/u;
|
|
1081
1081
|
var bmpIdentifier = /[\p{ID_Continue}\u088f\u0c5c\u0cdc\ua7ce\ua7cf\ua7d2\ua7d4\ua7f1\u1acf-\u1add\u1ae0-\u1aeb]/u;
|
|
1082
1082
|
var supplementaryIdentifierStartCodes = [2368, 25, 1388, 2, 3817, 43, 20677, 24, 3, 24, 287, 4, 6146, 7, 1290, 21, 98, 114, 22734, 30, 2, 2, 2, 1, 2, 6, 3, 4, 10, 1, 53307, 5, 5987, 11, 21763, 4297];
|
|
@@ -1135,7 +1135,7 @@ function isIdentifierName(name) {
|
|
|
1135
1135
|
return !isFirst;
|
|
1136
1136
|
}
|
|
1137
1137
|
|
|
1138
|
-
//
|
|
1138
|
+
// node_modules/.pnpm/@babel+helper-validator-identifier@8.0.4/node_modules/@babel/helper-validator-identifier/lib/index.js
|
|
1139
1139
|
var reservedWords = {
|
|
1140
1140
|
keyword: ["break", "case", "catch", "continue", "debugger", "default", "do", "else", "finally", "for", "function", "if", "return", "switch", "throw", "try", "var", "const", "while", "with", "new", "this", "super", "class", "extends", "export", "import", "null", "true", "false", "in", "instanceof", "typeof", "void", "delete"],
|
|
1141
1141
|
strict: ["implements", "interface", "let", "package", "private", "protected", "public", "static", "yield"],
|
|
@@ -1154,7 +1154,7 @@ function isKeyword(word) {
|
|
|
1154
1154
|
return keywords.has(word);
|
|
1155
1155
|
}
|
|
1156
1156
|
|
|
1157
|
-
//
|
|
1157
|
+
// node_modules/.pnpm/@babel+code-frame@8.0.0/node_modules/@babel/code-frame/lib/index.js
|
|
1158
1158
|
function isColorSupported() {
|
|
1159
1159
|
return styleText("red", "-") !== "-";
|
|
1160
1160
|
}
|
|
@@ -1299,7 +1299,7 @@ function codeFrameColumns(rawLines, loc, opts = {}) {
|
|
|
1299
1299
|
} : void 0);
|
|
1300
1300
|
}
|
|
1301
1301
|
|
|
1302
|
-
//
|
|
1302
|
+
// node_modules/.pnpm/@babel+types@8.0.4/node_modules/@babel/types/lib/index.js
|
|
1303
1303
|
var lib_exports = {};
|
|
1304
1304
|
__export(lib_exports, {
|
|
1305
1305
|
ACCESSOR_TYPES: () => ACCESSOR_TYPES,
|
|
@@ -2551,7 +2551,7 @@ __export(lib_exports, {
|
|
|
2551
2551
|
yieldExpression: () => yieldExpression
|
|
2552
2552
|
});
|
|
2553
2553
|
|
|
2554
|
-
//
|
|
2554
|
+
// node_modules/.pnpm/@babel+helper-string-parser@8.0.0/node_modules/@babel/helper-string-parser/lib/index.js
|
|
2555
2555
|
var _isDigit = function isDigit(code) {
|
|
2556
2556
|
return code >= 48 && code <= 57;
|
|
2557
2557
|
};
|
|
@@ -2803,7 +2803,7 @@ function readCodePoint(input, pos, lineStart, curLine, throwOnInvalid, errors) {
|
|
|
2803
2803
|
};
|
|
2804
2804
|
}
|
|
2805
2805
|
|
|
2806
|
-
//
|
|
2806
|
+
// node_modules/.pnpm/@babel+types@8.0.4/node_modules/@babel/types/lib/index.js
|
|
2807
2807
|
function shallowEqual(actual, expected) {
|
|
2808
2808
|
const keys2 = Object.keys(expected);
|
|
2809
2809
|
for (const key of keys2) {
|
|
@@ -13899,7 +13899,7 @@ var react = {
|
|
|
13899
13899
|
buildChildren
|
|
13900
13900
|
};
|
|
13901
13901
|
|
|
13902
|
-
//
|
|
13902
|
+
// node_modules/.pnpm/@babel+helper-globals@8.0.0/node_modules/@babel/helper-globals/data/builtin-lower.json
|
|
13903
13903
|
var builtin_lower_default = [
|
|
13904
13904
|
"decodeURI",
|
|
13905
13905
|
"decodeURIComponent",
|
|
@@ -13916,7 +13916,7 @@ var builtin_lower_default = [
|
|
|
13916
13916
|
"unescape"
|
|
13917
13917
|
];
|
|
13918
13918
|
|
|
13919
|
-
//
|
|
13919
|
+
// node_modules/.pnpm/@babel+helper-globals@8.0.0/node_modules/@babel/helper-globals/data/builtin-upper.json
|
|
13920
13920
|
var builtin_upper_default = [
|
|
13921
13921
|
"AggregateError",
|
|
13922
13922
|
"Array",
|
|
@@ -13969,7 +13969,7 @@ var builtin_upper_default = [
|
|
|
13969
13969
|
"WeakSet"
|
|
13970
13970
|
];
|
|
13971
13971
|
|
|
13972
|
-
//
|
|
13972
|
+
// node_modules/.pnpm/@jridgewell+sourcemap-codec@1.5.5/node_modules/@jridgewell/sourcemap-codec/dist/sourcemap-codec.mjs
|
|
13973
13973
|
var comma = ",".charCodeAt(0);
|
|
13974
13974
|
var semicolon = ";".charCodeAt(0);
|
|
13975
13975
|
var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
|
|
@@ -14137,7 +14137,7 @@ function encode(decoded) {
|
|
|
14137
14137
|
return writer.flush();
|
|
14138
14138
|
}
|
|
14139
14139
|
|
|
14140
|
-
//
|
|
14140
|
+
// node_modules/.pnpm/@jridgewell+resolve-uri@3.1.2/node_modules/@jridgewell/resolve-uri/dist/resolve-uri.mjs
|
|
14141
14141
|
var schemeRegex = /^[\w+.-]+:\/\//;
|
|
14142
14142
|
var urlRegex = /^([\w+.-]+:)\/\/([^@/#?]*@)?([^:/#?]*)(:\d+)?(\/[^#?]*)?(\?[^#]*)?(#.*)?/;
|
|
14143
14143
|
var fileRegex = /^file:(?:\/\/((?![a-z]:)[^/#?]*)?)?(\/?[^#?]*)(\?[^#]*)?(#.*)?/i;
|
|
@@ -14306,7 +14306,7 @@ function resolve(input, base) {
|
|
|
14306
14306
|
}
|
|
14307
14307
|
}
|
|
14308
14308
|
|
|
14309
|
-
//
|
|
14309
|
+
// node_modules/.pnpm/@jridgewell+trace-mapping@0.3.31/node_modules/@jridgewell/trace-mapping/dist/trace-mapping.mjs
|
|
14310
14310
|
function stripFilename(path) {
|
|
14311
14311
|
if (!path) return "";
|
|
14312
14312
|
const index3 = path.lastIndexOf("/");
|
|
@@ -14492,7 +14492,7 @@ function traceSegmentInternal(segments, memo, line, column, bias) {
|
|
|
14492
14492
|
return index3;
|
|
14493
14493
|
}
|
|
14494
14494
|
|
|
14495
|
-
//
|
|
14495
|
+
// node_modules/.pnpm/@jridgewell+gen-mapping@0.3.13/node_modules/@jridgewell/gen-mapping/dist/gen-mapping.mjs
|
|
14496
14496
|
var SetArray = class {
|
|
14497
14497
|
constructor() {
|
|
14498
14498
|
this._indexes = { __proto__: null };
|
|
@@ -14690,7 +14690,7 @@ function addMappingInternal(skipable, map, mapping) {
|
|
|
14690
14690
|
);
|
|
14691
14691
|
}
|
|
14692
14692
|
|
|
14693
|
-
//
|
|
14693
|
+
// node_modules/.pnpm/@babel+generator@8.0.0/node_modules/@babel/generator/lib/index.js
|
|
14694
14694
|
var import_jsesc = __toESM(require_jsesc(), 1);
|
|
14695
14695
|
var SourceMap = class {
|
|
14696
14696
|
constructor(opts, code) {
|
|
@@ -19348,7 +19348,7 @@ function generate(ast, opts = {}, code) {
|
|
|
19348
19348
|
return printer.generate(ast);
|
|
19349
19349
|
}
|
|
19350
19350
|
|
|
19351
|
-
//
|
|
19351
|
+
// node_modules/.pnpm/@babel+template@8.0.0/node_modules/@babel/template/lib/index.js
|
|
19352
19352
|
var {
|
|
19353
19353
|
assertExpressionStatement: assertExpressionStatement2
|
|
19354
19354
|
} = lib_exports;
|
|
@@ -19888,7 +19888,7 @@ var index2 = Object.assign(smart.bind(void 0), {
|
|
|
19888
19888
|
ast: smart.ast
|
|
19889
19889
|
});
|
|
19890
19890
|
|
|
19891
|
-
//
|
|
19891
|
+
// node_modules/.pnpm/@babel+traverse@8.0.4/node_modules/@babel/traverse/lib/index.js
|
|
19892
19892
|
var ReferencedIdentifier = ["Identifier", "JSXIdentifier"];
|
|
19893
19893
|
var ReferencedMemberExpression = ["MemberExpression"];
|
|
19894
19894
|
var BindingIdentifier = ["Identifier"];
|
|
@@ -24839,4 +24839,4 @@ traverse3.hasType = function(tree, type, denylistTypes) {
|
|
|
24839
24839
|
traverse3.cache = cache;
|
|
24840
24840
|
|
|
24841
24841
|
export { Hub, NodePath_Final, Scope, isArrayExpression, isFunctionDeclaration, isIdentifier, isJSXAttribute, isJSXExpressionContainer, isJSXIdentifier, isJSXMemberExpression, isJSXText, isObjectExpression, isStringLiteral, isTemplateLiteral, isVariableDeclarator, traverse3 as traverse, visitors };
|
|
24842
|
-
//# sourceMappingURL=chunk-
|
|
24842
|
+
//# sourceMappingURL=chunk-JOYMIGR2.mjs.map
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkI7AZC5ZQ_js = require('./chunk-I7AZC5ZQ.js');
|
|
4
4
|
var chunkSNAQBZPT_js = require('./chunk-SNAQBZPT.js');
|
|
5
5
|
var tty = require('tty');
|
|
6
6
|
var util = require('util');
|
|
7
7
|
|
|
8
|
-
//
|
|
8
|
+
// node_modules/.pnpm/jsesc@3.1.0/node_modules/jsesc/jsesc.js
|
|
9
9
|
var require_jsesc = chunkSNAQBZPT_js.__commonJS({
|
|
10
|
-
"
|
|
10
|
+
"node_modules/.pnpm/jsesc@3.1.0/node_modules/jsesc/jsesc.js"(exports, module) {
|
|
11
11
|
var object = {};
|
|
12
12
|
var hasOwnProperty = object.hasOwnProperty;
|
|
13
13
|
var forOwn = (object2, callback) => {
|
|
@@ -280,7 +280,7 @@ var require_jsesc = chunkSNAQBZPT_js.__commonJS({
|
|
|
280
280
|
}
|
|
281
281
|
});
|
|
282
282
|
|
|
283
|
-
//
|
|
283
|
+
// node_modules/.pnpm/obug@2.1.4/node_modules/obug/dist/core.js
|
|
284
284
|
function coerce(value) {
|
|
285
285
|
if (value instanceof Error) return value.stack || value.message;
|
|
286
286
|
return value;
|
|
@@ -546,7 +546,7 @@ function createDebug2(namespace, options) {
|
|
|
546
546
|
}
|
|
547
547
|
enable(env.DEBUG || "");
|
|
548
548
|
|
|
549
|
-
//
|
|
549
|
+
// node_modules/.pnpm/@babel+code-frame@8.0.0/node_modules/@babel/code-frame/lib/common-shared.js
|
|
550
550
|
var NEWLINE = /\r\n|[\n\r\u2028\u2029]/;
|
|
551
551
|
function getMarkerLines(loc, source, opts, startLineBaseZero) {
|
|
552
552
|
const startLoc = {
|
|
@@ -661,7 +661,7 @@ ${frame}`;
|
|
|
661
661
|
return defs2.reset(frame);
|
|
662
662
|
}
|
|
663
663
|
|
|
664
|
-
//
|
|
664
|
+
// node_modules/.pnpm/js-tokens@10.0.0/node_modules/js-tokens/index.js
|
|
665
665
|
var HashbangComment;
|
|
666
666
|
var Identifier;
|
|
667
667
|
var JSXIdentifier;
|
|
@@ -1078,7 +1078,7 @@ jsTokens = function* (input, { jsx = false } = {}) {
|
|
|
1078
1078
|
};
|
|
1079
1079
|
var js_tokens_default = jsTokens;
|
|
1080
1080
|
|
|
1081
|
-
//
|
|
1081
|
+
// node_modules/.pnpm/@babel+helper-validator-identifier@8.0.4/node_modules/@babel/helper-validator-identifier/lib/identifier.js
|
|
1082
1082
|
var bmpIdentifierStart = /[\p{ID_Start}\u088f\u0c5c\u0cdc\ua7ce\ua7cf\ua7d2\ua7d4\ua7f1]/u;
|
|
1083
1083
|
var bmpIdentifier = /[\p{ID_Continue}\u088f\u0c5c\u0cdc\ua7ce\ua7cf\ua7d2\ua7d4\ua7f1\u1acf-\u1add\u1ae0-\u1aeb]/u;
|
|
1084
1084
|
var supplementaryIdentifierStartCodes = [2368, 25, 1388, 2, 3817, 43, 20677, 24, 3, 24, 287, 4, 6146, 7, 1290, 21, 98, 114, 22734, 30, 2, 2, 2, 1, 2, 6, 3, 4, 10, 1, 53307, 5, 5987, 11, 21763, 4297];
|
|
@@ -1137,7 +1137,7 @@ function isIdentifierName(name) {
|
|
|
1137
1137
|
return !isFirst;
|
|
1138
1138
|
}
|
|
1139
1139
|
|
|
1140
|
-
//
|
|
1140
|
+
// node_modules/.pnpm/@babel+helper-validator-identifier@8.0.4/node_modules/@babel/helper-validator-identifier/lib/index.js
|
|
1141
1141
|
var reservedWords = {
|
|
1142
1142
|
keyword: ["break", "case", "catch", "continue", "debugger", "default", "do", "else", "finally", "for", "function", "if", "return", "switch", "throw", "try", "var", "const", "while", "with", "new", "this", "super", "class", "extends", "export", "import", "null", "true", "false", "in", "instanceof", "typeof", "void", "delete"],
|
|
1143
1143
|
strict: ["implements", "interface", "let", "package", "private", "protected", "public", "static", "yield"],
|
|
@@ -1156,7 +1156,7 @@ function isKeyword(word) {
|
|
|
1156
1156
|
return keywords.has(word);
|
|
1157
1157
|
}
|
|
1158
1158
|
|
|
1159
|
-
//
|
|
1159
|
+
// node_modules/.pnpm/@babel+code-frame@8.0.0/node_modules/@babel/code-frame/lib/index.js
|
|
1160
1160
|
function isColorSupported() {
|
|
1161
1161
|
return util.styleText("red", "-") !== "-";
|
|
1162
1162
|
}
|
|
@@ -1301,7 +1301,7 @@ function codeFrameColumns(rawLines, loc, opts = {}) {
|
|
|
1301
1301
|
} : void 0);
|
|
1302
1302
|
}
|
|
1303
1303
|
|
|
1304
|
-
//
|
|
1304
|
+
// node_modules/.pnpm/@babel+types@8.0.4/node_modules/@babel/types/lib/index.js
|
|
1305
1305
|
var lib_exports = {};
|
|
1306
1306
|
chunkSNAQBZPT_js.__export(lib_exports, {
|
|
1307
1307
|
ACCESSOR_TYPES: () => ACCESSOR_TYPES,
|
|
@@ -2553,7 +2553,7 @@ chunkSNAQBZPT_js.__export(lib_exports, {
|
|
|
2553
2553
|
yieldExpression: () => yieldExpression
|
|
2554
2554
|
});
|
|
2555
2555
|
|
|
2556
|
-
//
|
|
2556
|
+
// node_modules/.pnpm/@babel+helper-string-parser@8.0.0/node_modules/@babel/helper-string-parser/lib/index.js
|
|
2557
2557
|
var _isDigit = function isDigit(code) {
|
|
2558
2558
|
return code >= 48 && code <= 57;
|
|
2559
2559
|
};
|
|
@@ -2805,7 +2805,7 @@ function readCodePoint(input, pos, lineStart, curLine, throwOnInvalid, errors) {
|
|
|
2805
2805
|
};
|
|
2806
2806
|
}
|
|
2807
2807
|
|
|
2808
|
-
//
|
|
2808
|
+
// node_modules/.pnpm/@babel+types@8.0.4/node_modules/@babel/types/lib/index.js
|
|
2809
2809
|
function shallowEqual(actual, expected) {
|
|
2810
2810
|
const keys2 = Object.keys(expected);
|
|
2811
2811
|
for (const key of keys2) {
|
|
@@ -13901,7 +13901,7 @@ var react = {
|
|
|
13901
13901
|
buildChildren
|
|
13902
13902
|
};
|
|
13903
13903
|
|
|
13904
|
-
//
|
|
13904
|
+
// node_modules/.pnpm/@babel+helper-globals@8.0.0/node_modules/@babel/helper-globals/data/builtin-lower.json
|
|
13905
13905
|
var builtin_lower_default = [
|
|
13906
13906
|
"decodeURI",
|
|
13907
13907
|
"decodeURIComponent",
|
|
@@ -13918,7 +13918,7 @@ var builtin_lower_default = [
|
|
|
13918
13918
|
"unescape"
|
|
13919
13919
|
];
|
|
13920
13920
|
|
|
13921
|
-
//
|
|
13921
|
+
// node_modules/.pnpm/@babel+helper-globals@8.0.0/node_modules/@babel/helper-globals/data/builtin-upper.json
|
|
13922
13922
|
var builtin_upper_default = [
|
|
13923
13923
|
"AggregateError",
|
|
13924
13924
|
"Array",
|
|
@@ -13971,7 +13971,7 @@ var builtin_upper_default = [
|
|
|
13971
13971
|
"WeakSet"
|
|
13972
13972
|
];
|
|
13973
13973
|
|
|
13974
|
-
//
|
|
13974
|
+
// node_modules/.pnpm/@jridgewell+sourcemap-codec@1.5.5/node_modules/@jridgewell/sourcemap-codec/dist/sourcemap-codec.mjs
|
|
13975
13975
|
var comma = ",".charCodeAt(0);
|
|
13976
13976
|
var semicolon = ";".charCodeAt(0);
|
|
13977
13977
|
var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
|
|
@@ -14139,7 +14139,7 @@ function encode(decoded) {
|
|
|
14139
14139
|
return writer.flush();
|
|
14140
14140
|
}
|
|
14141
14141
|
|
|
14142
|
-
//
|
|
14142
|
+
// node_modules/.pnpm/@jridgewell+resolve-uri@3.1.2/node_modules/@jridgewell/resolve-uri/dist/resolve-uri.mjs
|
|
14143
14143
|
var schemeRegex = /^[\w+.-]+:\/\//;
|
|
14144
14144
|
var urlRegex = /^([\w+.-]+:)\/\/([^@/#?]*@)?([^:/#?]*)(:\d+)?(\/[^#?]*)?(\?[^#]*)?(#.*)?/;
|
|
14145
14145
|
var fileRegex = /^file:(?:\/\/((?![a-z]:)[^/#?]*)?)?(\/?[^#?]*)(\?[^#]*)?(#.*)?/i;
|
|
@@ -14308,7 +14308,7 @@ function resolve(input, base) {
|
|
|
14308
14308
|
}
|
|
14309
14309
|
}
|
|
14310
14310
|
|
|
14311
|
-
//
|
|
14311
|
+
// node_modules/.pnpm/@jridgewell+trace-mapping@0.3.31/node_modules/@jridgewell/trace-mapping/dist/trace-mapping.mjs
|
|
14312
14312
|
function stripFilename(path) {
|
|
14313
14313
|
if (!path) return "";
|
|
14314
14314
|
const index3 = path.lastIndexOf("/");
|
|
@@ -14494,7 +14494,7 @@ function traceSegmentInternal(segments, memo, line, column, bias) {
|
|
|
14494
14494
|
return index3;
|
|
14495
14495
|
}
|
|
14496
14496
|
|
|
14497
|
-
//
|
|
14497
|
+
// node_modules/.pnpm/@jridgewell+gen-mapping@0.3.13/node_modules/@jridgewell/gen-mapping/dist/gen-mapping.mjs
|
|
14498
14498
|
var SetArray = class {
|
|
14499
14499
|
constructor() {
|
|
14500
14500
|
this._indexes = { __proto__: null };
|
|
@@ -14692,7 +14692,7 @@ function addMappingInternal(skipable, map, mapping) {
|
|
|
14692
14692
|
);
|
|
14693
14693
|
}
|
|
14694
14694
|
|
|
14695
|
-
//
|
|
14695
|
+
// node_modules/.pnpm/@babel+generator@8.0.0/node_modules/@babel/generator/lib/index.js
|
|
14696
14696
|
var import_jsesc = chunkSNAQBZPT_js.__toESM(require_jsesc(), 1);
|
|
14697
14697
|
var SourceMap = class {
|
|
14698
14698
|
constructor(opts, code) {
|
|
@@ -19350,7 +19350,7 @@ function generate(ast, opts = {}, code) {
|
|
|
19350
19350
|
return printer.generate(ast);
|
|
19351
19351
|
}
|
|
19352
19352
|
|
|
19353
|
-
//
|
|
19353
|
+
// node_modules/.pnpm/@babel+template@8.0.0/node_modules/@babel/template/lib/index.js
|
|
19354
19354
|
var {
|
|
19355
19355
|
assertExpressionStatement: assertExpressionStatement2
|
|
19356
19356
|
} = lib_exports;
|
|
@@ -19616,7 +19616,7 @@ function parseWithCodeFrame(code, parserOpts, syntacticPlaceholders) {
|
|
|
19616
19616
|
plugins
|
|
19617
19617
|
};
|
|
19618
19618
|
try {
|
|
19619
|
-
return
|
|
19619
|
+
return chunkI7AZC5ZQ_js.parse(code, parserOpts);
|
|
19620
19620
|
} catch (err) {
|
|
19621
19621
|
const loc = err.loc;
|
|
19622
19622
|
if (loc) {
|
|
@@ -19890,7 +19890,7 @@ var index2 = Object.assign(smart.bind(void 0), {
|
|
|
19890
19890
|
ast: smart.ast
|
|
19891
19891
|
});
|
|
19892
19892
|
|
|
19893
|
-
//
|
|
19893
|
+
// node_modules/.pnpm/@babel+traverse@8.0.4/node_modules/@babel/traverse/lib/index.js
|
|
19894
19894
|
var ReferencedIdentifier = ["Identifier", "JSXIdentifier"];
|
|
19895
19895
|
var ReferencedMemberExpression = ["MemberExpression"];
|
|
19896
19896
|
var BindingIdentifier = ["Identifier"];
|
|
@@ -22547,7 +22547,7 @@ function replaceWithSourceString(replacement) {
|
|
|
22547
22547
|
let ast;
|
|
22548
22548
|
try {
|
|
22549
22549
|
replacement = `(${replacement})`;
|
|
22550
|
-
ast =
|
|
22550
|
+
ast = chunkI7AZC5ZQ_js.parse(replacement);
|
|
22551
22551
|
} catch (err) {
|
|
22552
22552
|
const loc = err.loc;
|
|
22553
22553
|
if (loc) {
|
|
@@ -24857,4 +24857,4 @@ exports.isTemplateLiteral = isTemplateLiteral;
|
|
|
24857
24857
|
exports.isVariableDeclarator = isVariableDeclarator;
|
|
24858
24858
|
exports.traverse = traverse3;
|
|
24859
24859
|
exports.visitors = visitors;
|
|
24860
|
-
//# sourceMappingURL=chunk-
|
|
24860
|
+
//# sourceMappingURL=chunk-JS75ORH7.js.map
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { sanitizeFleetVersion, buildFleetHeartbeatPayload } from './chunk-4WCA2HM6.mjs';
|
|
3
3
|
import { useDeferredActivation } from './chunk-ZVBLXXNJ.mjs';
|
|
4
|
-
import { resolveAnalyticsTarget } from './chunk-
|
|
5
|
-
import { sonorFetch } from './chunk-
|
|
6
|
-
import { SITE_KIT_VERSION } from './chunk-
|
|
4
|
+
import { resolveAnalyticsTarget } from './chunk-CABEVWKJ.mjs';
|
|
5
|
+
import { sonorFetch } from './chunk-3BLKKF67.mjs';
|
|
6
|
+
import { SITE_KIT_VERSION } from './chunk-GIGUDKLS.mjs';
|
|
7
7
|
import { useRef, useEffect } from 'react';
|
|
8
8
|
|
|
9
9
|
// src/fleet/heartbeat.ts
|
|
@@ -97,5 +97,5 @@ function FleetHeartbeat({
|
|
|
97
97
|
}
|
|
98
98
|
|
|
99
99
|
export { FLEET_HEARTBEAT_PATH, FleetHeartbeat, detectNextVersion, sendFleetHeartbeat };
|
|
100
|
-
//# sourceMappingURL=chunk-
|
|
101
|
-
//# sourceMappingURL=chunk-
|
|
100
|
+
//# sourceMappingURL=chunk-MDQLON5R.mjs.map
|
|
101
|
+
//# sourceMappingURL=chunk-MDQLON5R.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/fleet/heartbeat.ts","../src/fleet/FleetHeartbeat.tsx"],"names":[],"mappings":"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","file":"chunk-BI7DH42Z.mjs","sourcesContent":["/**\n * @sonordev/site-kit/fleet — heartbeat sender (single source of truth for the POST)\n *\n * One place that turns fleet inputs into a validated payload and ships it to\n * `/api/public/fleet/heartbeat`. Used by BOTH the client component\n * (FleetHeartbeat) and any build-time caller, so the send path never forks.\n *\n * It routes through the shared analytics send gate and `sonorFetch`, which stamps\n * the x-sitekit-version header, attaches x-api-key, and honors the auth\n * circuit breaker — a site on a stale/canceled key will not spam the API.\n */\n\nimport { resolveAnalyticsTarget, type AnalyticsGateOptions } from '../shared/reporting-gate'\nimport { sonorFetch } from '../shared/sonorFetch'\nimport { SITE_KIT_VERSION } from '../shared/version'\nimport {\n buildFleetHeartbeatPayload,\n sanitizeFleetVersion,\n type FleetHeartbeatPayload,\n type FleetHeartbeatSource,\n type FleetModule,\n} from './contract'\n\n/** Canonical ingest path — resolved against the site's Sonor API origin. */\nexport const FLEET_HEARTBEAT_PATH = '/api/public/fleet/heartbeat'\n\nexport interface SendFleetHeartbeatOptions extends AnalyticsGateOptions {\n /** Sonor API origin (e.g. https://api.sonor.io). Trailing slash tolerated. */\n apiUrl: string\n /** Project API key — scopes the request; the project is resolved server-side. */\n apiKey: string\n /** Client-observable active modules (validated/deduped by the contract). */\n modules?: FleetModule[] | string[]\n /** Normalized host for the multi-site sub-dimension (server re-normalizes). */\n site?: string | null\n /** Installed Next.js version, if the caller can resolve it. */\n nextVersion?: string | null\n /** 'client' (runtime boot) or 'build' (CI). Default 'client'. */\n source?: FleetHeartbeatSource\n /** Override the reported kit version. Defaults to the runtime SITE_KIT_VERSION. */\n kitVersion?: string\n /** Log one info line with the result. Never logs at error level. */\n debug?: boolean\n}\n\n/**\n * Best-effort runtime detection of the host Next.js version. Unreliable by\n * design — Next does not expose its version consistently across app/pages\n * router — so it returns null unless a site injects `__SITE_KIT_NEXT_VERSION__`\n * or `window.next.version` is present. Build-time callers should pass\n * `nextVersion` explicitly (resolvable from `next/package.json`).\n */\nexport function detectNextVersion(): string | null {\n if (typeof window === 'undefined') return null\n const w = window as unknown as {\n __SITE_KIT_NEXT_VERSION__?: string\n next?: { version?: string }\n }\n return sanitizeFleetVersion(w.__SITE_KIT_NEXT_VERSION__ ?? w.next?.version ?? null)\n}\n\n/**\n * Fire one heartbeat. Fire-and-forget by contract: it never throws — a\n * telemetry POST must never break a visitor's page or a site's build. Returns\n * true only when the POST was accepted (2xx).\n */\nexport async function sendFleetHeartbeat(opts: SendFleetHeartbeatOptions): Promise<boolean> {\n const { apiUrl, apiKey } = opts\n if (!apiUrl || !apiKey) return false\n const target = resolveAnalyticsTarget(opts)\n if (!target) return false\n\n const payload: FleetHeartbeatPayload = buildFleetHeartbeatPayload({\n kitVersion: opts.kitVersion || SITE_KIT_VERSION,\n nextVersion: opts.nextVersion,\n modules: opts.modules,\n site: opts.site,\n source: opts.source,\n })\n\n try {\n const res = await sonorFetch(\n `${target.apiUrl.replace(/\\/$/, '')}${FLEET_HEARTBEAT_PATH}`,\n {\n method: 'POST',\n headers: { 'Content-Type': 'application/json' },\n body: JSON.stringify(payload),\n },\n { apiKey: target.apiKey, retries: 0 },\n )\n if (opts.debug) {\n // info, never error: a visitor's console must stay clean (Lighthouse).\n console.info(\n `[Sonor fleet] heartbeat ${res.status} v${payload.kit_version} [${payload.modules.join(',') || 'none'}]`,\n )\n }\n return res.ok\n } catch (err) {\n if (opts.debug) console.info('[Sonor fleet] heartbeat skipped (network)', err)\n return false\n }\n}\n","/**\n * @sonordev/site-kit/fleet — FleetHeartbeat\n *\n * A childless, effect-only client component that reports this site's build\n * fingerprint (kit version, Next.js version, active modules, host) to Sonor\n * exactly once per browser session. It exists so the platform can answer\n * \"which version / modules / key state is each site running\" without shelling\n * into every client repo.\n *\n * It is mounted as a deferred, CHILDLESS SIBLING — never a wrapper — by\n * SiteKitClientProviders, behind the same idle/first-interaction gate as\n * Analytics and Engage, so it never enters the critical hydration path (see\n * CLAUDE.md \"the page must server-render\"). It renders null and carries no\n * visitor data.\n */\n\n'use client'\n\nimport { useEffect, useRef } from 'react'\nimport { useDeferredActivation } from '../shared/defer'\nimport { SITE_KIT_VERSION } from '../shared/version'\nimport { detectNextVersion, sendFleetHeartbeat } from './heartbeat'\nimport { resolveAnalyticsTarget, type AnalyticsGateOptions } from '../shared/reporting-gate'\nimport type { FleetModule } from './contract'\n\n/** Session guard key — one heartbeat per session, re-sent when version/host changes. */\nconst SESSION_GUARD_KEY = '_sk_fleet_hb'\n\nexport interface FleetHeartbeatProps extends AnalyticsGateOptions {\n /** Sonor API origin. Falls back to `window.__SITE_KIT_API_URL__` then api.sonor.io. */\n apiUrl?: string\n /** Project API key. Falls back to `window.__SITE_KIT_API_KEY__`. */\n apiKey?: string\n /** Host for the multi-site sub-dimension. Falls back to `__SITE_KIT_SITE__` then location.host. */\n site?: string | null\n /** Client-observable active modules (SiteKitClientProviders passes the enabled set). */\n modules?: FleetModule[]\n /** Installed Next.js version if known; otherwise best-effort runtime detection. */\n nextVersion?: string | null\n /**\n * Self-defer to idle / first interaction. Default true so standalone use is\n * safe. SiteKitClientProviders already gates the mount and passes false.\n */\n defer?: boolean\n /** Send at most once per browser session per (version, host). Default true. */\n oncePerSession?: boolean\n debug?: boolean\n}\n\nexport function FleetHeartbeat({\n apiUrl,\n apiKey,\n site,\n modules,\n nextVersion,\n defer = true,\n oncePerSession = true,\n debug = false,\n allowInFrame = false,\n allowLocalhost = false,\n}: FleetHeartbeatProps) {\n const ready = useDeferredActivation(defer)\n const sentRef = useRef(false)\n\n useEffect(() => {\n if (!ready || sentRef.current) return\n if (typeof window === 'undefined') return\n\n const w = window as unknown as {\n __SITE_KIT_API_URL__?: string\n __SITE_KIT_API_KEY__?: string\n __SITE_KIT_SITE__?: string\n }\n const target = resolveAnalyticsTarget({ apiUrl, apiKey, allowInFrame, allowLocalhost, debug })\n if (!target) return // Gate before stamping session storage.\n const { apiUrl: url, apiKey: key } = target\n\n const resolvedSite = site ?? w.__SITE_KIT_SITE__ ?? window.location.host ?? ''\n\n // Once-per-session-per-(version,host): keeps heartbeat volume to one POST\n // per visitor session while still re-reporting after an upgrade or on a\n // different sub-site. Storage-disabled browsers simply send once per load.\n if (oncePerSession) {\n const stamp = `${SITE_KIT_VERSION}:${resolvedSite}`\n try {\n if (sessionStorage.getItem(SESSION_GUARD_KEY) === stamp) {\n sentRef.current = true\n return\n }\n sessionStorage.setItem(SESSION_GUARD_KEY, stamp)\n } catch {\n /* storage unavailable — fall through and send this load */\n }\n }\n\n sentRef.current = true\n void sendFleetHeartbeat({\n apiUrl: url,\n apiKey: key,\n site: resolvedSite,\n modules,\n nextVersion: nextVersion ?? detectNextVersion(),\n source: 'client',\n allowInFrame,\n allowLocalhost,\n debug,\n })\n }, [ready, apiUrl, apiKey, site, modules, nextVersion, oncePerSession, debug, allowInFrame, allowLocalhost])\n\n return null\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/fleet/heartbeat.ts","../src/fleet/FleetHeartbeat.tsx"],"names":[],"mappings":"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","file":"chunk-MDQLON5R.mjs","sourcesContent":["/**\n * @sonordev/site-kit/fleet — heartbeat sender (single source of truth for the POST)\n *\n * One place that turns fleet inputs into a validated payload and ships it to\n * `/api/public/fleet/heartbeat`. Used by BOTH the client component\n * (FleetHeartbeat) and any build-time caller, so the send path never forks.\n *\n * It routes through the shared analytics send gate and `sonorFetch`, which stamps\n * the x-sitekit-version header, attaches x-api-key, and honors the auth\n * circuit breaker — a site on a stale/canceled key will not spam the API.\n */\n\nimport { resolveAnalyticsTarget, type AnalyticsGateOptions } from '../shared/reporting-gate'\nimport { sonorFetch } from '../shared/sonorFetch'\nimport { SITE_KIT_VERSION } from '../shared/version'\nimport {\n buildFleetHeartbeatPayload,\n sanitizeFleetVersion,\n type FleetHeartbeatPayload,\n type FleetHeartbeatSource,\n type FleetModule,\n} from './contract'\n\n/** Canonical ingest path — resolved against the site's Sonor API origin. */\nexport const FLEET_HEARTBEAT_PATH = '/api/public/fleet/heartbeat'\n\nexport interface SendFleetHeartbeatOptions extends AnalyticsGateOptions {\n /** Sonor API origin (e.g. https://api.sonor.io). Trailing slash tolerated. */\n apiUrl: string\n /** Project API key — scopes the request; the project is resolved server-side. */\n apiKey: string\n /** Client-observable active modules (validated/deduped by the contract). */\n modules?: FleetModule[] | string[]\n /** Normalized host for the multi-site sub-dimension (server re-normalizes). */\n site?: string | null\n /** Installed Next.js version, if the caller can resolve it. */\n nextVersion?: string | null\n /** 'client' (runtime boot) or 'build' (CI). Default 'client'. */\n source?: FleetHeartbeatSource\n /** Override the reported kit version. Defaults to the runtime SITE_KIT_VERSION. */\n kitVersion?: string\n /** Log one info line with the result. Never logs at error level. */\n debug?: boolean\n}\n\n/**\n * Best-effort runtime detection of the host Next.js version. Unreliable by\n * design — Next does not expose its version consistently across app/pages\n * router — so it returns null unless a site injects `__SITE_KIT_NEXT_VERSION__`\n * or `window.next.version` is present. Build-time callers should pass\n * `nextVersion` explicitly (resolvable from `next/package.json`).\n */\nexport function detectNextVersion(): string | null {\n if (typeof window === 'undefined') return null\n const w = window as unknown as {\n __SITE_KIT_NEXT_VERSION__?: string\n next?: { version?: string }\n }\n return sanitizeFleetVersion(w.__SITE_KIT_NEXT_VERSION__ ?? w.next?.version ?? null)\n}\n\n/**\n * Fire one heartbeat. Fire-and-forget by contract: it never throws — a\n * telemetry POST must never break a visitor's page or a site's build. Returns\n * true only when the POST was accepted (2xx).\n */\nexport async function sendFleetHeartbeat(opts: SendFleetHeartbeatOptions): Promise<boolean> {\n const { apiUrl, apiKey } = opts\n if (!apiUrl || !apiKey) return false\n const target = resolveAnalyticsTarget(opts)\n if (!target) return false\n\n const payload: FleetHeartbeatPayload = buildFleetHeartbeatPayload({\n kitVersion: opts.kitVersion || SITE_KIT_VERSION,\n nextVersion: opts.nextVersion,\n modules: opts.modules,\n site: opts.site,\n source: opts.source,\n })\n\n try {\n const res = await sonorFetch(\n `${target.apiUrl.replace(/\\/$/, '')}${FLEET_HEARTBEAT_PATH}`,\n {\n method: 'POST',\n headers: { 'Content-Type': 'application/json' },\n body: JSON.stringify(payload),\n },\n { apiKey: target.apiKey, retries: 0 },\n )\n if (opts.debug) {\n // info, never error: a visitor's console must stay clean (Lighthouse).\n console.info(\n `[Sonor fleet] heartbeat ${res.status} v${payload.kit_version} [${payload.modules.join(',') || 'none'}]`,\n )\n }\n return res.ok\n } catch (err) {\n if (opts.debug) console.info('[Sonor fleet] heartbeat skipped (network)', err)\n return false\n }\n}\n","/**\n * @sonordev/site-kit/fleet — FleetHeartbeat\n *\n * A childless, effect-only client component that reports this site's build\n * fingerprint (kit version, Next.js version, active modules, host) to Sonor\n * exactly once per browser session. It exists so the platform can answer\n * \"which version / modules / key state is each site running\" without shelling\n * into every client repo.\n *\n * It is mounted as a deferred, CHILDLESS SIBLING — never a wrapper — by\n * SiteKitClientProviders, behind the same idle/first-interaction gate as\n * Analytics and Engage, so it never enters the critical hydration path (see\n * CLAUDE.md \"the page must server-render\"). It renders null and carries no\n * visitor data.\n */\n\n'use client'\n\nimport { useEffect, useRef } from 'react'\nimport { useDeferredActivation } from '../shared/defer'\nimport { SITE_KIT_VERSION } from '../shared/version'\nimport { detectNextVersion, sendFleetHeartbeat } from './heartbeat'\nimport { resolveAnalyticsTarget, type AnalyticsGateOptions } from '../shared/reporting-gate'\nimport type { FleetModule } from './contract'\n\n/** Session guard key — one heartbeat per session, re-sent when version/host changes. */\nconst SESSION_GUARD_KEY = '_sk_fleet_hb'\n\nexport interface FleetHeartbeatProps extends AnalyticsGateOptions {\n /** Sonor API origin. Falls back to `window.__SITE_KIT_API_URL__` then api.sonor.io. */\n apiUrl?: string\n /** Project API key. Falls back to `window.__SITE_KIT_API_KEY__`. */\n apiKey?: string\n /** Host for the multi-site sub-dimension. Falls back to `__SITE_KIT_SITE__` then location.host. */\n site?: string | null\n /** Client-observable active modules (SiteKitClientProviders passes the enabled set). */\n modules?: FleetModule[]\n /** Installed Next.js version if known; otherwise best-effort runtime detection. */\n nextVersion?: string | null\n /**\n * Self-defer to idle / first interaction. Default true so standalone use is\n * safe. SiteKitClientProviders already gates the mount and passes false.\n */\n defer?: boolean\n /** Send at most once per browser session per (version, host). Default true. */\n oncePerSession?: boolean\n debug?: boolean\n}\n\nexport function FleetHeartbeat({\n apiUrl,\n apiKey,\n site,\n modules,\n nextVersion,\n defer = true,\n oncePerSession = true,\n debug = false,\n allowInFrame = false,\n allowLocalhost = false,\n}: FleetHeartbeatProps) {\n const ready = useDeferredActivation(defer)\n const sentRef = useRef(false)\n\n useEffect(() => {\n if (!ready || sentRef.current) return\n if (typeof window === 'undefined') return\n\n const w = window as unknown as {\n __SITE_KIT_API_URL__?: string\n __SITE_KIT_API_KEY__?: string\n __SITE_KIT_SITE__?: string\n }\n const target = resolveAnalyticsTarget({ apiUrl, apiKey, allowInFrame, allowLocalhost, debug })\n if (!target) return // Gate before stamping session storage.\n const { apiUrl: url, apiKey: key } = target\n\n const resolvedSite = site ?? w.__SITE_KIT_SITE__ ?? window.location.host ?? ''\n\n // Once-per-session-per-(version,host): keeps heartbeat volume to one POST\n // per visitor session while still re-reporting after an upgrade or on a\n // different sub-site. Storage-disabled browsers simply send once per load.\n if (oncePerSession) {\n const stamp = `${SITE_KIT_VERSION}:${resolvedSite}`\n try {\n if (sessionStorage.getItem(SESSION_GUARD_KEY) === stamp) {\n sentRef.current = true\n return\n }\n sessionStorage.setItem(SESSION_GUARD_KEY, stamp)\n } catch {\n /* storage unavailable — fall through and send this load */\n }\n }\n\n sentRef.current = true\n void sendFleetHeartbeat({\n apiUrl: url,\n apiKey: key,\n site: resolvedSite,\n modules,\n nextVersion: nextVersion ?? detectNextVersion(),\n source: 'client',\n allowInFrame,\n allowLocalhost,\n debug,\n })\n }, [ready, apiUrl, apiKey, site, modules, nextVersion, oncePerSession, debug, allowInFrame, allowLocalhost])\n\n return null\n}\n"]}
|
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
|
|
4
4
|
var chunkESP5RMB7_js = require('./chunk-ESP5RMB7.js');
|
|
5
5
|
var chunkNBOBOYMT_js = require('./chunk-NBOBOYMT.js');
|
|
6
|
-
var
|
|
6
|
+
var chunk6OQYRVMI_js = require('./chunk-6OQYRVMI.js');
|
|
7
7
|
var chunkM2N7NY3V_js = require('./chunk-M2N7NY3V.js');
|
|
8
|
-
var
|
|
8
|
+
var chunkIO65ROAO_js = require('./chunk-IO65ROAO.js');
|
|
9
9
|
var react = require('react');
|
|
10
10
|
var ReactMarkdown = require('react-markdown');
|
|
11
11
|
var jsxRuntime = require('react/jsx-runtime');
|
|
@@ -92,7 +92,7 @@ function InlineManagedForm({ slug, prefill, primaryColor, primaryRgb }) {
|
|
|
92
92
|
submit,
|
|
93
93
|
isSubmitting,
|
|
94
94
|
isComplete
|
|
95
|
-
} =
|
|
95
|
+
} = chunk6OQYRVMI_js.useForm(slug, { initialValues: prefill || {} });
|
|
96
96
|
const cardStyle = {
|
|
97
97
|
marginTop: 8,
|
|
98
98
|
padding: 12,
|
|
@@ -441,7 +441,7 @@ function ChatWidget(props) {
|
|
|
441
441
|
const { apiKey } = getApiConfig();
|
|
442
442
|
if (!apiKey) return;
|
|
443
443
|
let cancelled = false;
|
|
444
|
-
|
|
444
|
+
chunkIO65ROAO_js.sonorFetch(`${baseUrl}/api/public/seo/project-info`, {}, { apiKey, retries: 0 }).then((res) => res.ok ? res.json() : null).then((data) => {
|
|
445
445
|
if (cancelled || !data?.valid || !data?.project_id) return;
|
|
446
446
|
setResolvedProjectId(data.project_id);
|
|
447
447
|
}).catch(() => {
|
|
@@ -458,7 +458,7 @@ function ChatWidget(props) {
|
|
|
458
458
|
return;
|
|
459
459
|
}
|
|
460
460
|
let cancelled = false;
|
|
461
|
-
|
|
461
|
+
chunkIO65ROAO_js.sonorFetch(`${baseUrl}/engage/widget/config?projectId=${projectId}`, {}, { apiKey, retries: 0 }).then((res) => res.ok ? res.json() : null).then((json) => {
|
|
462
462
|
if (!cancelled) setWidgetConfig(json?.data ?? null);
|
|
463
463
|
}).catch((error) => {
|
|
464
464
|
if (process.env.NODE_ENV === "development") {
|
|
@@ -546,7 +546,7 @@ function EchoChat({ projectId, widgetConfig, config, apiUrl: propApiUrl, signalU
|
|
|
546
546
|
const apiKey = ensureApiKey();
|
|
547
547
|
if (!apiKey) return null;
|
|
548
548
|
try {
|
|
549
|
-
const response = await
|
|
549
|
+
const response = await chunkIO65ROAO_js.sonorFetch(`${baseUrl}/engage/widget/availability?projectId=${projectId}`, {}, { apiKey, retries: 0 });
|
|
550
550
|
if (response.ok) {
|
|
551
551
|
const { data } = await response.json();
|
|
552
552
|
setAvailability(data);
|
|
@@ -563,7 +563,7 @@ function EchoChat({ projectId, widgetConfig, config, apiUrl: propApiUrl, signalU
|
|
|
563
563
|
const apiKey = ensureApiKey();
|
|
564
564
|
if (!apiKey) return null;
|
|
565
565
|
try {
|
|
566
|
-
const response = await
|
|
566
|
+
const response = await chunkIO65ROAO_js.sonorFetch(`${baseUrl}/engage/widget/session`, {
|
|
567
567
|
method: "POST",
|
|
568
568
|
headers: { "Content-Type": "application/json" },
|
|
569
569
|
body: JSON.stringify({
|
|
@@ -624,7 +624,7 @@ function EchoChat({ projectId, widgetConfig, config, apiUrl: propApiUrl, signalU
|
|
|
624
624
|
pageUrl: typeof window !== "undefined" ? window.location.href : void 0,
|
|
625
625
|
...siteContext ? { siteContext } : {}
|
|
626
626
|
};
|
|
627
|
-
const res = await
|
|
627
|
+
const res = await chunkIO65ROAO_js.sonorFetch(url, {
|
|
628
628
|
method: "POST",
|
|
629
629
|
headers: {
|
|
630
630
|
"Content-Type": "application/json"
|
|
@@ -727,7 +727,7 @@ function EchoChat({ projectId, widgetConfig, config, apiUrl: propApiUrl, signalU
|
|
|
727
727
|
if (currentSessionId) {
|
|
728
728
|
const apiKey = ensureApiKey();
|
|
729
729
|
if (apiKey) {
|
|
730
|
-
|
|
730
|
+
chunkIO65ROAO_js.sonorFetch(`${baseUrl}/engage/widget/messages?sessionId=${currentSessionId}`, {}, { apiKey, retries: 0 }).then((res) => res.ok ? res.json() : null).then((json) => {
|
|
731
731
|
const data = json?.data ?? json;
|
|
732
732
|
if (Array.isArray(data) && data.length) {
|
|
733
733
|
setMessages((prev) => {
|
|
@@ -790,7 +790,7 @@ function EchoChat({ projectId, widgetConfig, config, apiUrl: propApiUrl, signalU
|
|
|
790
790
|
try {
|
|
791
791
|
const apiKey = ensureApiKey();
|
|
792
792
|
if (!apiKey) return;
|
|
793
|
-
const response = await
|
|
793
|
+
const response = await chunkIO65ROAO_js.sonorFetch(`${baseUrl}/engage/widget/messages?sessionId=${currentSessionId}`, {}, { apiKey, retries: 0 });
|
|
794
794
|
if (response.ok) {
|
|
795
795
|
const { data } = await response.json();
|
|
796
796
|
setMessages((prev) => {
|
|
@@ -920,7 +920,7 @@ function EchoChat({ projectId, widgetConfig, config, apiUrl: propApiUrl, signalU
|
|
|
920
920
|
form.append("file", file);
|
|
921
921
|
form.append("sessionId", sessionId);
|
|
922
922
|
form.append("visitorId", visitorId);
|
|
923
|
-
const res = await
|
|
923
|
+
const res = await chunkIO65ROAO_js.sonorFetch(`${baseUrl}/engage/widget/upload`, {
|
|
924
924
|
method: "POST",
|
|
925
925
|
body: form
|
|
926
926
|
}, { apiKey, retries: 0 });
|
|
@@ -1020,7 +1020,7 @@ function EchoChat({ projectId, widgetConfig, config, apiUrl: propApiUrl, signalU
|
|
|
1020
1020
|
if (!apiKey) return;
|
|
1021
1021
|
setCheckingHandoff(true);
|
|
1022
1022
|
try {
|
|
1023
|
-
const res = await
|
|
1023
|
+
const res = await chunkIO65ROAO_js.sonorFetch(`${baseUrl}/engage/widget/handoff`, {
|
|
1024
1024
|
method: "POST",
|
|
1025
1025
|
headers: { "Content-Type": "application/json" },
|
|
1026
1026
|
body: JSON.stringify({ sessionId })
|
|
@@ -1059,7 +1059,7 @@ function EchoChat({ projectId, widgetConfig, config, apiUrl: propApiUrl, signalU
|
|
|
1059
1059
|
setIsLoading(true);
|
|
1060
1060
|
setOfflineError(null);
|
|
1061
1061
|
try {
|
|
1062
|
-
const response = await
|
|
1062
|
+
const response = await chunkIO65ROAO_js.sonorFetch(`${baseUrl}/engage/widget/offline-form`, {
|
|
1063
1063
|
method: "POST",
|
|
1064
1064
|
headers: { "Content-Type": "application/json" },
|
|
1065
1065
|
body: JSON.stringify({
|
|
@@ -1673,5 +1673,5 @@ function EchoChat({ projectId, widgetConfig, config, apiUrl: propApiUrl, signalU
|
|
|
1673
1673
|
exports.ChatWidget = ChatWidget;
|
|
1674
1674
|
exports.EchoChat = EchoChat;
|
|
1675
1675
|
exports.isChatEnabled = isChatEnabled;
|
|
1676
|
-
//# sourceMappingURL=chunk-
|
|
1677
|
-
//# sourceMappingURL=chunk-
|
|
1676
|
+
//# sourceMappingURL=chunk-MHKD34B4.js.map
|
|
1677
|
+
//# sourceMappingURL=chunk-MHKD34B4.js.map
|