@sonordev/site-kit 8.0.0 → 8.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. package/CHANGELOG.md +5 -0
  2. package/agent-manifest.json +1 -1
  3. package/dist/{AnalyticsProvider-LYFDQRRJ.js → AnalyticsProvider-EGCZ2MVM.js} +4 -4
  4. package/dist/{ArticleViewTracker-HG7IIRJY.js → ArticleViewTracker-ATNVMT45.js} +3 -3
  5. package/dist/{BlocksPopup-GFX3GZIK.js → BlocksPopup-F636XNO4.js} +4 -4
  6. package/dist/{ChatWidget-DVS7MLBN.js → ChatWidget-EQTLKPJX.js} +5 -5
  7. package/dist/{FileField-DVN7NUBI.js → FileField-BUD2YGN5.js} +3 -3
  8. package/dist/{FormSpotlight-W4SXKKO6.js → FormSpotlight-NGH56TGC.js} +1 -1
  9. package/dist/{FormStage-JTEE5MZD.js → FormStage-XZRC54SY.js} +1 -1
  10. package/dist/{ManagedForm-ZAUHIHGP.js → ManagedForm-CQDQ4CUN.js} +6 -6
  11. package/dist/{ManagedNewsletterForm-DQIB5Z4Y.js → ManagedNewsletterForm-KCN3BTKA.js} +4 -4
  12. package/dist/{SignalCore-W5PYYMGX.js → SignalCore-RDQPM2L2.js} +3 -3
  13. package/dist/{SiteChat-MY2GATWC.js → SiteChat-QBDOQ5ZZ.js} +1 -1
  14. package/dist/{SiteDesignReporter-ICZWEGCY.js → SiteDesignReporter-426TUCUF.js} +5 -5
  15. package/dist/{SitePopups-TGULLAER.js → SitePopups-KLUD6XIE.js} +4 -4
  16. package/dist/{SitemapSync-AN2OBJE6.js → SitemapSync-QOIMV5GO.js} +4 -4
  17. package/dist/_client/booking-widget.js +5 -5
  18. package/dist/affiliates/index.js +3 -3
  19. package/dist/analytics/index.js +4 -4
  20. package/dist/articles/index.js +1 -1
  21. package/dist/articles/server-ui.js +1 -1
  22. package/dist/chat/index.js +6 -6
  23. package/dist/{chunk-UUWUAMUC.js → chunk-3222QBUS.js} +1 -1
  24. package/dist/{chunk-56VDS2RP.js → chunk-55JLUMAC.js} +2 -2
  25. package/dist/{chunk-ICAVVF6D.js → chunk-5GB2HHVJ.js} +2 -2
  26. package/dist/{chunk-TOSZGJEQ.js → chunk-6BXUSAOJ.js} +1 -1
  27. package/dist/{chunk-LBIQ5LTC.js → chunk-6KUCA5HG.js} +1 -1
  28. package/dist/{chunk-LKH44GI3.js → chunk-7BSC6HF3.js} +3 -3
  29. package/dist/{chunk-PD7K54EQ.js → chunk-AGJODJ4V.js} +1 -1
  30. package/dist/{chunk-GNSXOTIK.js → chunk-B7QRRLTU.js} +2 -2
  31. package/dist/{chunk-ZHNQFNO3.js → chunk-CAF53GKN.js} +1 -1
  32. package/dist/{chunk-7YEEOIWI.js → chunk-DWNS6ZJM.js} +1 -1
  33. package/dist/{chunk-ROAOI6GG.js → chunk-EE6IG5GK.js} +8 -8
  34. package/dist/{chunk-K22OLAPC.js → chunk-FIGIJK5F.js} +1 -1
  35. package/dist/{chunk-PIX7FAMX.js → chunk-GMXY2OOY.js} +1 -1
  36. package/dist/{chunk-BQ2CXKTQ.js → chunk-H3SDOSVU.js} +1 -1
  37. package/dist/{chunk-ZLFGXKLG.js → chunk-IY6G67EF.js} +1 -1
  38. package/dist/{chunk-KRBBH64S.js → chunk-J6N5DCGW.js} +2 -2
  39. package/dist/{chunk-SBPAXWLF.js → chunk-JCFQGEG7.js} +1 -1
  40. package/dist/{chunk-S7SSYGUJ.js → chunk-NKFRW2VB.js} +2 -2
  41. package/dist/{chunk-J65N34YM.js → chunk-OCKGB734.js} +1 -1
  42. package/dist/{chunk-5S2XDG5O.js → chunk-S5G3A7OZ.js} +1 -1
  43. package/dist/{chunk-6QFINXLH.js → chunk-VQQV7FOX.js} +1 -1
  44. package/dist/{chunk-IJQ767JS.js → chunk-YGXWG54S.js} +1 -1
  45. package/dist/{chunk-6ZXJ3SXR.js → chunk-Z4MK4VOG.js} +1 -1
  46. package/dist/{chunk-OGK7OL3T.js → chunk-Z6PVFZRI.js} +1 -1
  47. package/dist/client/index.js +3 -3
  48. package/dist/contracts/entries.d.ts +1 -1
  49. package/dist/contracts/knowledge.d.ts +84 -0
  50. package/dist/fleet/index.js +4 -4
  51. package/dist/forms/index.js +7 -7
  52. package/dist/forms/server.js +2 -2
  53. package/dist/images/index.js +4 -4
  54. package/dist/index.js +1 -1
  55. package/dist/layout/client.js +7 -7
  56. package/dist/layout/index.js +8 -8
  57. package/dist/llms/index.js +2 -2
  58. package/dist/maps/index.js +3 -3
  59. package/dist/mcp/sonor.js +6 -6
  60. package/dist/revalidate/index.js +2 -2
  61. package/dist/runtime/index.js +3 -3
  62. package/dist/seo/client.js +4 -4
  63. package/dist/seo/index.js +4 -4
  64. package/dist/seo/llms.js +2 -2
  65. package/dist/server/index.js +2 -2
  66. package/dist/shared/import-specifiers.d.ts +57 -9
  67. package/dist/shared/source-graph.d.ts +4 -1
  68. package/dist/shared/version.d.ts +1 -1
  69. package/dist/signal/index.js +2 -2
  70. package/dist/sync/index.js +5 -5
  71. package/dist/website/images.js +4 -4
  72. package/dist/website/index.js +5 -5
  73. package/dist/website/popups.js +4 -4
  74. package/docs/MIGRATING-TO-8.md +1 -1
  75. package/package.json +5 -3
package/CHANGELOG.md CHANGED
@@ -1,5 +1,10 @@
1
1
  # @sonordev/site-kit Changelog
2
2
 
3
+ ## 8.0.1
4
+
5
+ - **`server-only` is a dependency.** The entries that run only on the server (`@sonordev/site-kit/server`, `/seo/server`, `/forms/server` and the others that import the `server-only` marker) didn't list it. A Next build never noticed, because Next supplies its own copy, but a Node script or a test that imported one of those entries from a pnpm install failed with `ERR_MODULE_NOT_FOUND`. site-kit now depends on `server-only` ^0.0.1, so the import resolves anywhere. Inside a build Next still uses its own copy, so nothing changes for a site. Outside Next, load a server entry under the `react-server` condition (`node --conditions=react-server`), the way a server component loads it; without that condition, `server-only` stops the import on purpose.
6
+ - **Moving a commerce site to 8? Use sonor-setup 7.3.1 or later.** Its codemod writes the `pnpm-workspace.yaml` line it adds as valid YAML, and it adds `@sonordev/commerce-kit` only to a project whose code imports commerce, not to one that merely mentions it in a code sample or a redirect table. [docs/MIGRATING-TO-8.md](docs/MIGRATING-TO-8.md) says so too.
7
+
3
8
  ## 8.0.0
4
9
 
5
10
  Two things leave site-kit in this release. Commerce (products, services, events and checkout) and the new memberships module move into their own package, [`@sonordev/commerce-kit`](https://sonor.dev/commerce-kit), which versions and releases on its own. And the entries for the modules Sonor retired, Engage and the Sanity CMS, are removed, as the 7.0, 7.1 and 7.2 notes said they'd be. A site that uses neither changes nothing: update site-kit and rebuild.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "schemaVersion": 1,
3
3
  "package": "@sonordev/site-kit",
4
- "version": "8.0.0",
4
+ "version": "8.0.1",
5
5
  "description": "Machine-readable manifest for coding agents integrating a site with Sonor. See AGENTS.md (shipped) and docs/SITE-KIT-AGENT-NATIVE.md.",
6
6
  "env": {
7
7
  "required": [
@@ -1,4 +1,4 @@
1
- export { AnalyticsProvider, useAnalytics, useAnalyticsOptional, useTrackEvent } from './chunk-J65N34YM.js';
1
+ export { AnalyticsProvider, useAnalytics, useAnalyticsOptional, useTrackEvent } from './chunk-OCKGB734.js';
2
2
  import './chunk-LCDVPAMR.js';
3
3
  import './chunk-ZKADJNR2.js';
4
4
  import './chunk-L2V5PUFN.js';
@@ -7,7 +7,7 @@ import './chunk-GJWI74ZZ.js';
7
7
  import './chunk-CAH4Y4PY.js';
8
8
  import './chunk-EKBEOXTH.js';
9
9
  import './chunk-3G7YABRA.js';
10
- import './chunk-56VDS2RP.js';
11
- import './chunk-ZLFGXKLG.js';
12
- import './chunk-5S2XDG5O.js';
10
+ import './chunk-55JLUMAC.js';
11
+ import './chunk-IY6G67EF.js';
12
+ import './chunk-S5G3A7OZ.js';
13
13
  import './chunk-PKBMQBKP.js';
@@ -4,9 +4,9 @@ import { withSiteBody } from './chunk-MJP63SSS.js';
4
4
  import './chunk-FESKKJAS.js';
5
5
  import './chunk-A4CC4ZG3.js';
6
6
  import { readPublishedApiConfig } from './chunk-3G7YABRA.js';
7
- import { sonorFetch } from './chunk-56VDS2RP.js';
8
- import './chunk-ZLFGXKLG.js';
9
- import './chunk-5S2XDG5O.js';
7
+ import { sonorFetch } from './chunk-55JLUMAC.js';
8
+ import './chunk-IY6G67EF.js';
9
+ import './chunk-S5G3A7OZ.js';
10
10
  import './chunk-PKBMQBKP.js';
11
11
  import { useEffect } from 'react';
12
12
 
@@ -1,14 +1,14 @@
1
1
  'use client';
2
- import { getSiteDesignTokens } from './chunk-KRBBH64S.js';
2
+ import { getSiteDesignTokens } from './chunk-J6N5DCGW.js';
3
3
  import { DEFAULT_POPUP_TOKENS, PopupBlocks } from './chunk-BF7TZYC3.js';
4
4
  import { normalizePopupBlocks, toHexColor, readableOn } from './chunk-IHG36STL.js';
5
5
  import './chunk-S22FSH7C.js';
6
6
  import './chunk-CAH4Y4PY.js';
7
7
  import './chunk-EKBEOXTH.js';
8
8
  import './chunk-3G7YABRA.js';
9
- import './chunk-56VDS2RP.js';
10
- import './chunk-ZLFGXKLG.js';
11
- import './chunk-5S2XDG5O.js';
9
+ import './chunk-55JLUMAC.js';
10
+ import './chunk-IY6G67EF.js';
11
+ import './chunk-S5G3A7OZ.js';
12
12
  import './chunk-PKBMQBKP.js';
13
13
  import { useState } from 'react';
14
14
  import { jsx } from 'react/jsx-runtime';
@@ -1,8 +1,8 @@
1
- export { ChatWidget, EchoChat, isChatEnabled } from './chunk-GNSXOTIK.js';
1
+ export { ChatWidget, EchoChat, isChatEnabled } from './chunk-B7QRRLTU.js';
2
2
  import './chunk-6T6CQVNL.js';
3
3
  import './chunk-JE4A5S4F.js';
4
4
  import './chunk-27FISYK4.js';
5
- import './chunk-UUWUAMUC.js';
5
+ import './chunk-3222QBUS.js';
6
6
  import './chunk-Q6E4OPGG.js';
7
7
  import './chunk-5ROTTMBL.js';
8
8
  import './chunk-C2FZBUSS.js';
@@ -14,7 +14,7 @@ import './chunk-L2V5PUFN.js';
14
14
  import './chunk-5TM3WPCI.js';
15
15
  import './chunk-GJWI74ZZ.js';
16
16
  import './chunk-3G7YABRA.js';
17
- import './chunk-56VDS2RP.js';
18
- import './chunk-ZLFGXKLG.js';
19
- import './chunk-5S2XDG5O.js';
17
+ import './chunk-55JLUMAC.js';
18
+ import './chunk-IY6G67EF.js';
19
+ import './chunk-S5G3A7OZ.js';
20
20
  import './chunk-PKBMQBKP.js';
@@ -1,8 +1,8 @@
1
1
  'use client';
2
2
  import { getClientApiConfig } from './chunk-3G7YABRA.js';
3
- import { sonorFetch } from './chunk-56VDS2RP.js';
4
- import './chunk-ZLFGXKLG.js';
5
- import './chunk-5S2XDG5O.js';
3
+ import { sonorFetch } from './chunk-55JLUMAC.js';
4
+ import './chunk-IY6G67EF.js';
5
+ import './chunk-S5G3A7OZ.js';
6
6
  import './chunk-PKBMQBKP.js';
7
7
  import React from 'react';
8
8
  import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
@@ -1,6 +1,6 @@
1
1
  'use client';
2
2
  import { StageStyles, SummaryTick } from './chunk-3YKQLC7J.js';
3
- import { stageFirstName, useFieldControls, stageViews, stageEstimate, AUTO_ADVANCE_TYPES } from './chunk-SBPAXWLF.js';
3
+ import { stageFirstName, useFieldControls, stageViews, stageEstimate, AUTO_ADVANCE_TYPES } from './chunk-JCFQGEG7.js';
4
4
  import { readAgentSubmit, formToolAttributes } from './chunk-Q6E4OPGG.js';
5
5
  import { isEmptyValue, unseenControlValues, isDisplayOnly } from './chunk-C2FZBUSS.js';
6
6
  import { FormField } from './chunk-TYAVHRWH.js';
@@ -1,6 +1,6 @@
1
1
  'use client';
2
2
  import { StageStyles, SummaryTick } from './chunk-3YKQLC7J.js';
3
- import { useFieldControls, stageViews, stageFirstName, stageEstimate, formatAnswer, AUTO_ADVANCE_TYPES } from './chunk-SBPAXWLF.js';
3
+ import { useFieldControls, stageViews, stageFirstName, stageEstimate, formatAnswer, AUTO_ADVANCE_TYPES } from './chunk-JCFQGEG7.js';
4
4
  import { readAgentSubmit, formToolAttributes } from './chunk-Q6E4OPGG.js';
5
5
  import { isEmptyValue, unseenControlValues } from './chunk-C2FZBUSS.js';
6
6
  import { FormField } from './chunk-TYAVHRWH.js';
@@ -1,6 +1,6 @@
1
- export { ManagedForm } from './chunk-LKH44GI3.js';
2
- import './chunk-SBPAXWLF.js';
3
- import './chunk-UUWUAMUC.js';
1
+ export { ManagedForm } from './chunk-7BSC6HF3.js';
2
+ import './chunk-JCFQGEG7.js';
3
+ import './chunk-3222QBUS.js';
4
4
  import './chunk-Q6E4OPGG.js';
5
5
  import './chunk-5ROTTMBL.js';
6
6
  import './chunk-C2FZBUSS.js';
@@ -13,7 +13,7 @@ import './chunk-L2V5PUFN.js';
13
13
  import './chunk-5TM3WPCI.js';
14
14
  import './chunk-GJWI74ZZ.js';
15
15
  import './chunk-3G7YABRA.js';
16
- import './chunk-56VDS2RP.js';
17
- import './chunk-ZLFGXKLG.js';
18
- import './chunk-5S2XDG5O.js';
16
+ import './chunk-55JLUMAC.js';
17
+ import './chunk-IY6G67EF.js';
18
+ import './chunk-S5G3A7OZ.js';
19
19
  import './chunk-PKBMQBKP.js';
@@ -1,4 +1,4 @@
1
- import { useForm } from './chunk-UUWUAMUC.js';
1
+ import { useForm } from './chunk-3222QBUS.js';
2
2
  import './chunk-Q6E4OPGG.js';
3
3
  import './chunk-5ROTTMBL.js';
4
4
  import './chunk-C2FZBUSS.js';
@@ -11,9 +11,9 @@ import './chunk-L2V5PUFN.js';
11
11
  import './chunk-5TM3WPCI.js';
12
12
  import './chunk-GJWI74ZZ.js';
13
13
  import './chunk-3G7YABRA.js';
14
- import './chunk-56VDS2RP.js';
15
- import './chunk-ZLFGXKLG.js';
16
- import './chunk-5S2XDG5O.js';
14
+ import './chunk-55JLUMAC.js';
15
+ import './chunk-IY6G67EF.js';
16
+ import './chunk-S5G3A7OZ.js';
17
17
  import './chunk-PKBMQBKP.js';
18
18
  import { jsx } from 'react/jsx-runtime';
19
19
 
@@ -4,9 +4,9 @@ import { onPageLeave } from './chunk-L2V5PUFN.js';
4
4
  import './chunk-5TM3WPCI.js';
5
5
  import './chunk-GJWI74ZZ.js';
6
6
  import { getClientApiConfig } from './chunk-3G7YABRA.js';
7
- import { sonorFetch } from './chunk-56VDS2RP.js';
8
- import { getFreshCredential, isSiteToken } from './chunk-ZLFGXKLG.js';
9
- import './chunk-5S2XDG5O.js';
7
+ import { sonorFetch } from './chunk-55JLUMAC.js';
8
+ import { getFreshCredential, isSiteToken } from './chunk-IY6G67EF.js';
9
+ import './chunk-S5G3A7OZ.js';
10
10
  import './chunk-PKBMQBKP.js';
11
11
  import { useState, useRef, useEffect, useCallback } from 'react';
12
12
 
@@ -1,4 +1,4 @@
1
- export { SiteChat } from './chunk-PD7K54EQ.js';
1
+ export { SiteChat } from './chunk-AGJODJ4V.js';
2
2
  import './chunk-27FISYK4.js';
3
3
  import './chunk-CAH4Y4PY.js';
4
4
  import './chunk-EKBEOXTH.js';
@@ -1,12 +1,12 @@
1
- export { SiteDesignReporter } from './chunk-ZHNQFNO3.js';
2
- import './chunk-KRBBH64S.js';
1
+ export { SiteDesignReporter } from './chunk-CAF53GKN.js';
2
+ import './chunk-J6N5DCGW.js';
3
3
  import './chunk-IHG36STL.js';
4
4
  import './chunk-YC7ELZS3.js';
5
5
  import './chunk-S22FSH7C.js';
6
6
  import './chunk-CAH4Y4PY.js';
7
7
  import './chunk-EKBEOXTH.js';
8
8
  import './chunk-3G7YABRA.js';
9
- import './chunk-56VDS2RP.js';
10
- import './chunk-ZLFGXKLG.js';
11
- import './chunk-5S2XDG5O.js';
9
+ import './chunk-55JLUMAC.js';
10
+ import './chunk-IY6G67EF.js';
11
+ import './chunk-S5G3A7OZ.js';
12
12
  import './chunk-PKBMQBKP.js';
@@ -1,4 +1,4 @@
1
- export { SitePopups } from './chunk-S7SSYGUJ.js';
1
+ export { SitePopups } from './chunk-NKFRW2VB.js';
2
2
  import './chunk-27FISYK4.js';
3
3
  import './chunk-5ROTTMBL.js';
4
4
  import './chunk-ZKADJNR2.js';
@@ -7,7 +7,7 @@ import './chunk-GJWI74ZZ.js';
7
7
  import './chunk-CAH4Y4PY.js';
8
8
  import './chunk-EKBEOXTH.js';
9
9
  import './chunk-3G7YABRA.js';
10
- import './chunk-56VDS2RP.js';
11
- import './chunk-ZLFGXKLG.js';
12
- import './chunk-5S2XDG5O.js';
10
+ import './chunk-55JLUMAC.js';
11
+ import './chunk-IY6G67EF.js';
12
+ import './chunk-S5G3A7OZ.js';
13
13
  import './chunk-PKBMQBKP.js';
@@ -1,9 +1,9 @@
1
- export { SitemapSync } from './chunk-K22OLAPC.js';
1
+ export { SitemapSync } from './chunk-FIGIJK5F.js';
2
2
  import './chunk-YVKRYQRG.js';
3
3
  import './chunk-CAH4Y4PY.js';
4
4
  import './chunk-EKBEOXTH.js';
5
5
  import './chunk-3G7YABRA.js';
6
- import './chunk-56VDS2RP.js';
7
- import './chunk-ZLFGXKLG.js';
8
- import './chunk-5S2XDG5O.js';
6
+ import './chunk-55JLUMAC.js';
7
+ import './chunk-IY6G67EF.js';
8
+ import './chunk-S5G3A7OZ.js';
9
9
  import './chunk-PKBMQBKP.js';
@@ -1,8 +1,8 @@
1
1
  'use client';
2
- export { BookingWidget, BookingWidget_default as default } from '../chunk-OGK7OL3T.js';
3
- import '../chunk-IJQ767JS.js';
2
+ export { BookingWidget, BookingWidget_default as default } from '../chunk-Z6PVFZRI.js';
3
+ import '../chunk-YGXWG54S.js';
4
4
  import '../chunk-3G7YABRA.js';
5
- import '../chunk-56VDS2RP.js';
6
- import '../chunk-ZLFGXKLG.js';
7
- import '../chunk-5S2XDG5O.js';
5
+ import '../chunk-55JLUMAC.js';
6
+ import '../chunk-IY6G67EF.js';
7
+ import '../chunk-S5G3A7OZ.js';
8
8
  import '../chunk-PKBMQBKP.js';
@@ -1,8 +1,8 @@
1
1
  'use client';
2
2
  import { getClientApiConfig } from '../chunk-3G7YABRA.js';
3
- import { sonorFetch } from '../chunk-56VDS2RP.js';
4
- import '../chunk-ZLFGXKLG.js';
5
- import '../chunk-5S2XDG5O.js';
3
+ import { sonorFetch } from '../chunk-55JLUMAC.js';
4
+ import '../chunk-IY6G67EF.js';
5
+ import '../chunk-S5G3A7OZ.js';
6
6
  import '../chunk-PKBMQBKP.js';
7
7
  import { useState, useEffect } from 'react';
8
8
  import { jsx, jsxs } from 'react/jsx-runtime';
@@ -1,5 +1,5 @@
1
1
  'use client';
2
- export { AnalyticsProvider, WebVitals, useAnalytics, useAnalyticsOptional, useTrackEvent } from '../chunk-J65N34YM.js';
2
+ export { AnalyticsProvider, WebVitals, useAnalytics, useAnalyticsOptional, useTrackEvent } from '../chunk-OCKGB734.js';
3
3
  import { trackConversion } from '../chunk-LCDVPAMR.js';
4
4
  export { trackConversion, trackEvent } from '../chunk-LCDVPAMR.js';
5
5
  import '../chunk-ZKADJNR2.js';
@@ -9,9 +9,9 @@ import '../chunk-GJWI74ZZ.js';
9
9
  export { isCrossOriginFrame, isFramed, isTopFrameSameOrigin } from '../chunk-CAH4Y4PY.js';
10
10
  import '../chunk-EKBEOXTH.js';
11
11
  import '../chunk-3G7YABRA.js';
12
- import '../chunk-56VDS2RP.js';
13
- import '../chunk-ZLFGXKLG.js';
14
- import '../chunk-5S2XDG5O.js';
12
+ import '../chunk-55JLUMAC.js';
13
+ import '../chunk-IY6G67EF.js';
14
+ import '../chunk-S5G3A7OZ.js';
15
15
  import '../chunk-PKBMQBKP.js';
16
16
  import { useCallback, useEffect } from 'react';
17
17
 
@@ -15,7 +15,7 @@ import '../chunk-PKBMQBKP.js';
15
15
  import React, { useState, Suspense, useEffect } from 'react';
16
16
  import { jsx, jsxs } from 'react/jsx-runtime';
17
17
 
18
- var ManagedNewsletterForm = React.lazy(() => import('../ManagedNewsletterForm-DQIB5Z4Y.js'));
18
+ var ManagedNewsletterForm = React.lazy(() => import('../ManagedNewsletterForm-KCN3BTKA.js'));
19
19
  function NewsletterWidget({
20
20
  title = "Subscribe to Our Newsletter",
21
21
  description = "Get the latest posts delivered straight to your inbox.",
@@ -133,7 +133,7 @@ async function Article({
133
133
  ...item,
134
134
  answer: addExternalLinkTargets(item.answer || "", siteUrlResolved)
135
135
  })) ?? faqRaw;
136
- const { ArticleViewTracker } = await import('../ArticleViewTracker-HG7IIRJY.js');
136
+ const { ArticleViewTracker } = await import('../ArticleViewTracker-ATNVMT45.js');
137
137
  if (children) {
138
138
  return /* @__PURE__ */ jsxs(Fragment, { children: [
139
139
  /* @__PURE__ */ jsx(ArticleViewTracker, { slug: post.slug, site }),
@@ -1,10 +1,10 @@
1
1
  'use client';
2
- export { ChatWidget, DEFAULT_LAUNCHER_OFFSET_BOTTOM, EchoChat, chatLauncherStyles, isChatEnabled } from '../chunk-GNSXOTIK.js';
3
- export { SiteChat } from '../chunk-PD7K54EQ.js';
2
+ export { ChatWidget, DEFAULT_LAUNCHER_OFFSET_BOTTOM, EchoChat, chatLauncherStyles, isChatEnabled } from '../chunk-B7QRRLTU.js';
3
+ export { SiteChat } from '../chunk-AGJODJ4V.js';
4
4
  import '../chunk-6T6CQVNL.js';
5
5
  import '../chunk-JE4A5S4F.js';
6
6
  import '../chunk-27FISYK4.js';
7
- import '../chunk-UUWUAMUC.js';
7
+ import '../chunk-3222QBUS.js';
8
8
  import '../chunk-Q6E4OPGG.js';
9
9
  import '../chunk-5ROTTMBL.js';
10
10
  import '../chunk-C2FZBUSS.js';
@@ -18,9 +18,9 @@ import '../chunk-GJWI74ZZ.js';
18
18
  import '../chunk-CAH4Y4PY.js';
19
19
  import '../chunk-EKBEOXTH.js';
20
20
  import '../chunk-3G7YABRA.js';
21
- import '../chunk-56VDS2RP.js';
22
- import '../chunk-ZLFGXKLG.js';
23
- import '../chunk-5S2XDG5O.js';
21
+ import '../chunk-55JLUMAC.js';
22
+ import '../chunk-IY6G67EF.js';
23
+ import '../chunk-S5G3A7OZ.js';
24
24
  import '../chunk-PKBMQBKP.js';
25
25
 
26
26
  // src/chat/echo-config.ts
@@ -7,7 +7,7 @@ import { DEFAULT_HONEYPOT_FIELD } from './chunk-NJCTQH2P.js';
7
7
  import { onPageLeave } from './chunk-L2V5PUFN.js';
8
8
  import { uuid } from './chunk-GJWI74ZZ.js';
9
9
  import { readPublishedApiConfig, getClientApiConfig } from './chunk-3G7YABRA.js';
10
- import { sonorFetch, sonorBeacon } from './chunk-56VDS2RP.js';
10
+ import { sonorFetch, sonorBeacon } from './chunk-55JLUMAC.js';
11
11
  import { useRef, useCallback, useEffect, useState, useMemo } from 'react';
12
12
 
13
13
  // src/forms/field-interactions.ts
@@ -1,5 +1,5 @@
1
- import { isTokenMode, getFreshCredential, isSiteToken, refreshSiteToken, currentCredential, credentialBreakerId } from './chunk-ZLFGXKLG.js';
2
- import { SITE_KIT_VERSION } from './chunk-5S2XDG5O.js';
1
+ import { isTokenMode, getFreshCredential, isSiteToken, refreshSiteToken, currentCredential, credentialBreakerId } from './chunk-IY6G67EF.js';
2
+ import { SITE_KIT_VERSION } from './chunk-S5G3A7OZ.js';
3
3
 
4
4
  // src/shared/fetchWithRetry.ts
5
5
  function backoffDelay(attempt, response) {
@@ -2,8 +2,8 @@
2
2
  import { sanitizeFleetVersion, buildFleetHeartbeatPayload } from './chunk-ZTZQPYP6.js';
3
3
  import { useDeferredActivation } from './chunk-YC7ELZS3.js';
4
4
  import { resolveAnalyticsTarget } from './chunk-CAH4Y4PY.js';
5
- import { sonorFetch } from './chunk-56VDS2RP.js';
6
- import { SITE_KIT_VERSION } from './chunk-5S2XDG5O.js';
5
+ import { sonorFetch } from './chunk-55JLUMAC.js';
6
+ import { SITE_KIT_VERSION } from './chunk-S5G3A7OZ.js';
7
7
  import { useRef, useEffect } from 'react';
8
8
 
9
9
  // src/fleet/heartbeat.ts
@@ -1,5 +1,5 @@
1
1
  'use client';
2
- import { sonorFetch } from './chunk-56VDS2RP.js';
2
+ import { sonorFetch } from './chunk-55JLUMAC.js';
3
3
  import { useState, useCallback, useEffect } from 'react';
4
4
  import { jsx, Fragment, jsxs } from 'react/jsx-runtime';
5
5
 
@@ -1,5 +1,5 @@
1
1
  import { resolveSiteHost } from './chunk-FESKKJAS.js';
2
- import { configureSiteCredential, currentCredential } from './chunk-ZLFGXKLG.js';
2
+ import { configureSiteCredential, currentCredential } from './chunk-IY6G67EF.js';
3
3
 
4
4
  // src/shared/publishCredential.ts
5
5
  function publishSiteCredential({
@@ -1,6 +1,6 @@
1
1
  'use client';
2
- import { countStageViews, countStageQuestions, useFieldControls } from './chunk-SBPAXWLF.js';
3
- import { useFormLoadedAt, useFormTracking, submitForm, useRecaptchaWarmup, useForm } from './chunk-UUWUAMUC.js';
2
+ import { countStageViews, countStageQuestions, useFieldControls } from './chunk-JCFQGEG7.js';
3
+ import { useFormLoadedAt, useFormTracking, submitForm, useRecaptchaWarmup, useForm } from './chunk-3222QBUS.js';
4
4
  import { readAgentSubmit, formToolAttributes } from './chunk-Q6E4OPGG.js';
5
5
  import { isFieldVisible, validateField, isFieldComplete, isDisplayOnly, unseenControlValues } from './chunk-C2FZBUSS.js';
6
6
  import { HoneypotField } from './chunk-DXO6SBMD.js';
@@ -63,7 +63,7 @@ function FormClient({
63
63
  return;
64
64
  }
65
65
  let cancelled = false;
66
- const load = resolvedExperience === "stage" ? import('./FormStage-JTEE5MZD.js').then((m) => m.FormStage) : import('./FormSpotlight-W4SXKKO6.js').then((m) => m.FormSpotlight);
66
+ const load = resolvedExperience === "stage" ? import('./FormStage-XZRC54SY.js').then((m) => m.FormStage) : import('./FormSpotlight-NGH56TGC.js').then((m) => m.FormSpotlight);
67
67
  load.then((Component) => {
68
68
  if (!cancelled) setExperience(() => Component);
69
69
  }).catch((err) => {
@@ -7,7 +7,7 @@ import dynamic from 'next/dynamic';
7
7
  import { jsx } from 'react/jsx-runtime';
8
8
 
9
9
  var LazyChatWidget = dynamic(
10
- () => import('./ChatWidget-DVS7MLBN.js').then((m) => ({ default: m.ChatWidget })),
10
+ () => import('./ChatWidget-EQTLKPJX.js').then((m) => ({ default: m.ChatWidget })),
11
11
  { ssr: false }
12
12
  );
13
13
  function SiteChat(props) {
@@ -2,10 +2,10 @@
2
2
  import { VISUAL_VIEWPORT_GAP_PROPERTY } from './chunk-6T6CQVNL.js';
3
3
  import { GlassStyles } from './chunk-JE4A5S4F.js';
4
4
  import { DEFAULT_WIDGET_Z_INDEX } from './chunk-27FISYK4.js';
5
- import { useForm } from './chunk-UUWUAMUC.js';
5
+ import { useForm } from './chunk-3222QBUS.js';
6
6
  import { parseColor, relativeLuminance, DARK_LUMINANCE, contrastRatio } from './chunk-S22FSH7C.js';
7
7
  import { readPublishedApiConfig } from './chunk-3G7YABRA.js';
8
- import { sonorFetch } from './chunk-56VDS2RP.js';
8
+ import { sonorFetch } from './chunk-55JLUMAC.js';
9
9
  import { useState, useEffect, useRef, useLayoutEffect, useCallback, Fragment as Fragment$1 } from 'react';
10
10
  import { lexer } from 'marked';
11
11
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
@@ -1,5 +1,5 @@
1
1
  'use client';
2
- import { getSiteDesignTokens, tokensForReport, shouldReportDesign, sendSiteDesign } from './chunk-KRBBH64S.js';
2
+ import { getSiteDesignTokens, tokensForReport, shouldReportDesign, sendSiteDesign } from './chunk-J6N5DCGW.js';
3
3
  import { designTokensHash } from './chunk-IHG36STL.js';
4
4
  import { useDeferredActivation } from './chunk-YC7ELZS3.js';
5
5
  import { resolveAnalyticsTarget } from './chunk-CAH4Y4PY.js';
@@ -1,5 +1,5 @@
1
1
  import { secretsMatch, readCappedBody } from './chunk-XTRZGXB2.js';
2
- import { SITE_KIT_VERSION } from './chunk-5S2XDG5O.js';
2
+ import { SITE_KIT_VERSION } from './chunk-S5G3A7OZ.js';
3
3
 
4
4
  // src/llms/revalidate.ts
5
5
  function createLlmsRevalidateHandler(secret, options) {
@@ -1,12 +1,12 @@
1
1
  'use client';
2
2
  import { SITE_EDIT_PARAM } from './chunk-6G43IRWR.js';
3
- import { publishSiteCredential } from './chunk-LBIQ5LTC.js';
4
- import { FleetHeartbeat } from './chunk-ICAVVF6D.js';
3
+ import { publishSiteCredential } from './chunk-6KUCA5HG.js';
4
+ import { FleetHeartbeat } from './chunk-5GB2HHVJ.js';
5
5
  import { useDeferredActivation } from './chunk-YC7ELZS3.js';
6
6
  import { resolveSiteHost } from './chunk-FESKKJAS.js';
7
7
  import { getOrCreateVisitorId, getOrCreateSessionId } from './chunk-ZKADJNR2.js';
8
8
  import { announceFrameReady, isCrossOriginFrame } from './chunk-CAH4Y4PY.js';
9
- import { SignalBridge } from './chunk-6ZXJ3SXR.js';
9
+ import { SignalBridge } from './chunk-Z4MK4VOG.js';
10
10
  import React, { useState, useRef, useCallback, useEffect, Suspense } from 'react';
11
11
  import dynamic from 'next/dynamic';
12
12
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
@@ -33,23 +33,23 @@ function startEditBridge() {
33
33
  };
34
34
  }
35
35
  var LazyAnalyticsProvider = dynamic(
36
- () => import('./AnalyticsProvider-LYFDQRRJ.js').then((m) => ({ default: m.AnalyticsProvider })),
36
+ () => import('./AnalyticsProvider-EGCZ2MVM.js').then((m) => ({ default: m.AnalyticsProvider })),
37
37
  { ssr: false }
38
38
  );
39
39
  var LazySiteChat = dynamic(
40
- () => import('./SiteChat-MY2GATWC.js').then((m) => ({ default: m.SiteChat })),
40
+ () => import('./SiteChat-QBDOQ5ZZ.js').then((m) => ({ default: m.SiteChat })),
41
41
  { ssr: false }
42
42
  );
43
43
  var LazySitePopups = dynamic(
44
- () => import('./SitePopups-TGULLAER.js').then((m) => ({ default: m.SitePopups })),
44
+ () => import('./SitePopups-KLUD6XIE.js').then((m) => ({ default: m.SitePopups })),
45
45
  { ssr: false }
46
46
  );
47
47
  var LazySiteDesignReporter = dynamic(
48
- () => import('./SiteDesignReporter-ICZWEGCY.js').then((m) => ({ default: m.SiteDesignReporter })),
48
+ () => import('./SiteDesignReporter-426TUCUF.js').then((m) => ({ default: m.SiteDesignReporter })),
49
49
  { ssr: false }
50
50
  );
51
51
  var LazySitemapSync = dynamic(
52
- () => import('./SitemapSync-AN2OBJE6.js').then((m) => ({ default: m.SitemapSync })),
52
+ () => import('./SitemapSync-QOIMV5GO.js').then((m) => ({ default: m.SitemapSync })),
53
53
  { ssr: false }
54
54
  );
55
55
  function SiteKitClientProviders({
@@ -1,7 +1,7 @@
1
1
  'use client';
2
2
  import { locToPath, isMalformedSitemapPath, inferPageType } from './chunk-YVKRYQRG.js';
3
3
  import { resolveAnalyticsTarget } from './chunk-CAH4Y4PY.js';
4
- import { sonorFetch } from './chunk-56VDS2RP.js';
4
+ import { sonorFetch } from './chunk-55JLUMAC.js';
5
5
  import { useRef, useEffect } from 'react';
6
6
 
7
7
  var SYNC_STAMP_KEY = "_sk_sitemap_synced_at";
@@ -6,7 +6,7 @@ import { DEFAULT_HONEYPOT_FIELD } from './chunk-NJCTQH2P.js';
6
6
  import React, { useRef, useEffect, useState, useMemo, useCallback } from 'react';
7
7
  import { jsx, jsxs } from 'react/jsx-runtime';
8
8
 
9
- var loadInteractiveForm = () => import('./ManagedForm-ZAUHIHGP.js').then((m) => m.ManagedForm);
9
+ var loadInteractiveForm = () => import('./ManagedForm-CQDQ4CUN.js').then((m) => m.ManagedForm);
10
10
  var REPLAY_WAIT_MS = 8e3;
11
11
  function FormEnhancer({
12
12
  formId,
@@ -1,7 +1,7 @@
1
1
  import { trackedFreshFetch } from './chunk-UAYAJPEP.js';
2
2
  import { isNextControlFlow } from './chunk-C7TLGL3R.js';
3
3
  import { monotonicMs } from './chunk-MH2DSGC6.js';
4
- import { SITE_KIT_VERSION } from './chunk-5S2XDG5O.js';
4
+ import { SITE_KIT_VERSION } from './chunk-S5G3A7OZ.js';
5
5
  import 'server-only';
6
6
 
7
7
  var MINT_PATH = "/api/public/site-token";
@@ -1,4 +1,4 @@
1
- import { SITE_KIT_VERSION } from './chunk-5S2XDG5O.js';
1
+ import { SITE_KIT_VERSION } from './chunk-S5G3A7OZ.js';
2
2
 
3
3
  // src/shared/siteToken.ts
4
4
  var SITE_TOKEN_PREFIX = "st1.";
@@ -1,8 +1,8 @@
1
1
  import { toHexColor, normalizeDesignTokens, designTokensHash } from './chunk-IHG36STL.js';
2
2
  import { contrastRatio, parseColor, relativeLuminance } from './chunk-S22FSH7C.js';
3
3
  import { resolveAnalyticsTarget } from './chunk-CAH4Y4PY.js';
4
- import { sonorFetch } from './chunk-56VDS2RP.js';
5
- import { SITE_KIT_VERSION } from './chunk-5S2XDG5O.js';
4
+ import { sonorFetch } from './chunk-55JLUMAC.js';
5
+ import { SITE_KIT_VERSION } from './chunk-S5G3A7OZ.js';
6
6
 
7
7
  // src/website/design.ts
8
8
  var SITE_DESIGN_PATH = "/api/public/site/design";
@@ -26,7 +26,7 @@ function useFieldControls(fields) {
26
26
  }
27
27
  if (needsFile && !requested.current.file) {
28
28
  requested.current.file = true;
29
- import('./FileField-DVN7NUBI.js').then((m) => {
29
+ import('./FileField-BUD2YGN5.js').then((m) => {
30
30
  if (!cancelled) setControls((prev) => ({ ...prev, File: m.FileField }));
31
31
  }).catch(() => {
32
32
  requested.current.file = false;
@@ -3,7 +3,7 @@ import { DEFAULT_WIDGET_Z_INDEX } from './chunk-27FISYK4.js';
3
3
  import { readAnalyticsIdentity } from './chunk-5ROTTMBL.js';
4
4
  import { getOrCreateVisitorId } from './chunk-ZKADJNR2.js';
5
5
  import { resolveAnalyticsTarget } from './chunk-CAH4Y4PY.js';
6
- import { sonorFetch } from './chunk-56VDS2RP.js';
6
+ import { sonorFetch } from './chunk-55JLUMAC.js';
7
7
  import { useState, useEffect, useCallback, useRef } from 'react';
8
8
  import ReactDOM from 'react-dom';
9
9
  import dynamic from 'next/dynamic';
@@ -161,7 +161,7 @@ function activatePopup(active, id, popups) {
161
161
  return [...active, id];
162
162
  }
163
163
  var LazyBlocksPopup = dynamic(
164
- () => import('./BlocksPopup-GFX3GZIK.js').then((m) => ({ default: m.BlocksPopup })),
164
+ () => import('./BlocksPopup-F636XNO4.js').then((m) => ({ default: m.BlocksPopup })),
165
165
  { ssr: false }
166
166
  );
167
167
  function SitePopups(props) {
@@ -3,7 +3,7 @@ import { registerAnalyticsDispatcher } from './chunk-LCDVPAMR.js';
3
3
  import { getOrCreateVisitorId, getOrCreateSessionId } from './chunk-ZKADJNR2.js';
4
4
  import { onPageLeave } from './chunk-L2V5PUFN.js';
5
5
  import { resolveAnalyticsTarget } from './chunk-CAH4Y4PY.js';
6
- import { sonorFetch, sonorBeacon } from './chunk-56VDS2RP.js';
6
+ import { sonorFetch, sonorBeacon } from './chunk-55JLUMAC.js';
7
7
  import { createContext, useRef, useEffect, useState, useMemo, useCallback, useContext } from 'react';
8
8
  import { usePathname } from 'next/navigation';
9
9
  import { jsxs, jsx } from 'react/jsx-runtime';
@@ -1,4 +1,4 @@
1
1
  // src/shared/version.ts
2
- var SITE_KIT_VERSION = "8.0.0";
2
+ var SITE_KIT_VERSION = "8.0.1";
3
3
 
4
4
  export { SITE_KIT_VERSION };
@@ -1,4 +1,4 @@
1
- import { FormEnhancer } from './chunk-PIX7FAMX.js';
1
+ import { FormEnhancer } from './chunk-GMXY2OOY.js';
2
2
  import { StaticForm } from './chunk-LNSF6BJC.js';
3
3
  import { serverApiFetch } from './chunk-C7TLGL3R.js';
4
4
  import { jsx } from 'react/jsx-runtime';
@@ -1,5 +1,5 @@
1
1
  import { getClientApiConfig } from './chunk-3G7YABRA.js';
2
- import { sonorFetch } from './chunk-56VDS2RP.js';
2
+ import { sonorFetch } from './chunk-55JLUMAC.js';
3
3
 
4
4
  // src/sync/api.ts
5
5
  function getApiConfig() {
@@ -54,7 +54,7 @@ function useSignal() {
54
54
  return useSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);
55
55
  }
56
56
  var LazySignalCore = dynamic(
57
- () => import('./SignalCore-W5PYYMGX.js').then((m) => ({ default: m.SignalCore })),
57
+ () => import('./SignalCore-RDQPM2L2.js').then((m) => ({ default: m.SignalCore })),
58
58
  { ssr: false }
59
59
  );
60
60
  function SignalBridge({