@sonordev/site-kit 6.4.0 → 7.0.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/AGENTS.md +18 -3
- package/README.md +50 -34
- package/agent-manifest.json +282 -52
- package/dist/AnalyticsProvider-GJ6JFQO5.js +11 -0
- package/dist/ArticleFaqSection-3Q26DP7P.js +9 -0
- package/dist/ArticleViewTracker-FEA5SBKW.js +49 -0
- package/dist/BlocksPopup-MNK4SDZM.js +43 -0
- package/dist/ChatWidget-M2YNLRYW.js +15 -0
- package/dist/DatePicker-JEBV6WYJ.js +2 -0
- package/dist/EngageWidget-RR63JQCA.js +11 -0
- package/dist/FileField-JFBXXD43.js +83 -0
- package/dist/FormCelebration-OVGAGBKF.js +2 -0
- package/dist/FormSpotlight-QE3J3VB5.js +754 -0
- package/dist/FormStage-OTPKEWID.js +418 -0
- package/dist/ManagedForm-3VRALWUD.js +14 -0
- package/dist/ManagedNewsletterForm-A2FE6L5C.js +62 -0
- package/dist/SignalCore-S6DO3VQV.js +322 -0
- package/dist/SiteDesignReporter-2WZVWJMA.js +11 -0
- package/dist/SitemapSync-IKNKPT2G.js +8 -0
- package/dist/SitemapSync.d.ts +0 -1
- package/dist/_client/booking-widget.d.ts +4 -0
- package/dist/_client/booking-widget.js +7 -0
- package/dist/_client/testimonial-section.d.ts +11 -0
- package/dist/_client/testimonial-section.js +5 -0
- package/dist/admin-auth/index.d.ts +0 -1
- package/dist/admin-auth/index.js +0 -0
- package/dist/admin-auth/session.d.ts +0 -1
- package/dist/affiliates/AffiliatesWidget.d.ts +0 -1
- package/dist/affiliates/api.d.ts +0 -1
- package/dist/affiliates/index.d.ts +0 -1
- package/dist/affiliates/index.js +149 -0
- package/dist/affiliates/types.d.ts +0 -1
- package/dist/affiliates/useAffiliates.d.ts +0 -1
- package/dist/analytics/AnalyticsProvider.d.ts +0 -1
- package/dist/analytics/WebVitals.d.ts +0 -1
- package/dist/analytics/dispatch.d.ts +0 -1
- package/dist/analytics/index.d.ts +0 -1
- package/dist/analytics/index.js +12 -66
- package/dist/analytics/measurement-context.d.ts +0 -1
- package/dist/analytics/page-observation.d.ts +0 -1
- package/dist/analytics/send-gate.d.ts +0 -1
- package/dist/analytics/types.d.ts +0 -1
- package/dist/analytics/useContactTracking.d.ts +0 -1
- package/dist/article-styles-6CM5FUMV.js +590 -0
- package/dist/article-tables-AXSZOGNW.js +2 -0
- package/dist/articles/Article.d.ts +0 -1
- package/dist/articles/ArticleFAQ.d.ts +0 -1
- package/dist/articles/ArticleFaqSection.d.ts +0 -1
- package/dist/articles/ArticleList.d.ts +0 -1
- package/dist/articles/ArticleViewTracker.d.ts +0 -1
- package/dist/articles/AuthorCard.d.ts +0 -1
- package/dist/articles/AuthorPage.d.ts +0 -1
- package/dist/articles/ClusterLandingPage.d.ts +0 -1
- package/dist/articles/ClusterNavigation.d.ts +0 -1
- package/dist/articles/ManagedNewsletterForm.d.ts +0 -1
- package/dist/articles/NewsletterShell.d.ts +0 -1
- package/dist/articles/NewsletterWidget.d.ts +0 -1
- package/dist/articles/PublicationLayout.d.ts +0 -1
- package/dist/articles/PublicationSidebar.d.ts +0 -1
- package/dist/articles/RelatedPosts.d.ts +0 -1
- package/dist/articles/ServiceCallout.d.ts +0 -1
- package/dist/articles/TableOfContents.d.ts +0 -1
- package/dist/articles/article-styles.d.ts +0 -1
- package/dist/articles/article-tables.d.ts +0 -1
- package/dist/articles/artwork.d.ts +0 -1
- package/dist/articles/author-schema.d.ts +0 -1
- package/dist/articles/author-social.d.ts +0 -1
- package/dist/articles/excerpt.d.ts +0 -1
- package/dist/articles/index.d.ts +0 -1
- package/dist/articles/index.js +87 -147
- package/dist/articles/news-sitemap.d.ts +0 -1
- package/dist/articles/processArticleHtml.d.ts +0 -1
- package/dist/articles/public-reads.d.ts +0 -1
- package/dist/articles/reading-time.d.ts +0 -1
- package/dist/articles/routes.d.ts +0 -1
- package/dist/articles/server-core.d.ts +0 -14
- package/dist/articles/server-ui.d.ts +0 -1
- package/dist/articles/server-ui.js +221 -265
- package/dist/articles/server.d.ts +0 -14
- package/dist/articles/server.js +10 -252
- package/dist/articles/types.d.ts +6 -1
- package/dist/articles/widget-styles.d.ts +0 -1
- package/dist/brand/extract-brand-profile.d.ts +0 -1
- package/dist/chat/index.d.ts +11 -0
- package/dist/chat/index.js +16 -0
- package/dist/chunk-24QZEO3Q.js +41 -0
- package/dist/chunk-3XHK5DFX.js +184 -0
- package/dist/chunk-43OCZ3JA.js +67 -0
- package/dist/chunk-4KZ6W3ZH.js +8 -0
- package/dist/chunk-4WI3FU5L.js +129 -0
- package/dist/chunk-4Y5FWDPM.js +97 -0
- package/dist/chunk-5C4WVOVO.js +478 -0
- package/dist/chunk-5SQK3D53.js +24 -0
- package/dist/chunk-5UZN5V52.js +52 -0
- package/dist/chunk-5YSI5KFD.js +19 -0
- package/dist/chunk-6CUFRMMF.js +937 -0
- package/dist/chunk-6HDT4G4A.js +253 -0
- package/dist/chunk-6T6CQVNL.js +37 -0
- package/dist/chunk-6ZB3XNAT.js +54 -0
- package/dist/chunk-7KJGO77W.js +1 -0
- package/dist/chunk-7L5AARVY.js +68 -0
- package/dist/chunk-7ZHJIRM3.js +4 -0
- package/dist/chunk-7ZWO5HDQ.js +1 -0
- package/dist/chunk-A4CC4ZG3.js +15 -0
- package/dist/chunk-AQSNPZY4.js +92 -0
- package/dist/chunk-B52EXDWI.js +1803 -0
- package/dist/chunk-BQR4IPBW.js +146 -0
- package/dist/chunk-BR4ZKUHH.js +227 -0
- package/dist/chunk-BU66S5B7.js +1 -0
- package/dist/chunk-C4G3NW2E.js +25 -0
- package/dist/chunk-D7SLSJS4.js +1 -0
- package/dist/chunk-DIKNRN34.js +28 -0
- package/dist/chunk-DXO6SBMD.js +43 -0
- package/dist/chunk-EDYHROQ7.js +77 -0
- package/dist/chunk-EKBEOXTH.js +114 -0
- package/dist/chunk-FESKKJAS.js +19 -0
- package/dist/chunk-FV2VD7WM.js +347 -0
- package/dist/chunk-FYAB6CXS.js +265 -0
- package/dist/chunk-G3NHWMP5.js +233 -0
- package/dist/chunk-GJWI74ZZ.js +27 -0
- package/dist/chunk-GKGSXUVQ.js +218 -0
- package/dist/chunk-GLHQ3LRO.js +97 -0
- package/dist/chunk-GW7GSBO7.js +66 -0
- package/dist/chunk-GYBMMWGF.js +163 -0
- package/dist/chunk-GYF2ULVO.js +14 -0
- package/dist/chunk-HPUXKMNR.js +148 -0
- package/dist/chunk-HXJ54KAM.js +122 -0
- package/dist/chunk-I6WUCBKI.js +99 -0
- package/dist/chunk-IHG36STL.js +286 -0
- package/dist/chunk-J4FSB4OG.js +200 -0
- package/dist/chunk-JE4A5S4F.js +48 -0
- package/dist/chunk-JJ4JS3LD.js +26 -0
- package/dist/chunk-JMRESWQT.js +130 -0
- package/dist/chunk-JSZN6LDZ.js +338 -0
- package/dist/chunk-KPAZG65P.js +138 -0
- package/dist/chunk-KV4LOKOU.js +154 -0
- package/dist/chunk-KXPBMCFL.js +39 -0
- package/dist/chunk-L2V5PUFN.js +15 -0
- package/dist/chunk-L3AQCDCY.js +386 -0
- package/dist/chunk-L5UOHS6E.js +45 -0
- package/dist/chunk-LCDVPAMR.js +24 -0
- package/dist/chunk-LE7ZOTHB.js +43 -0
- package/dist/chunk-LNSNA3W4.js +217 -0
- package/dist/chunk-LQJC5S2M.js +236 -0
- package/dist/chunk-LT5ITURG.js +1071 -0
- package/dist/chunk-LVESVYCE.js +270 -0
- package/dist/chunk-M4ZY2FVB.js +177 -0
- package/dist/chunk-MH2DSGC6.js +10 -0
- package/dist/chunk-MJP63SSS.js +14 -0
- package/dist/chunk-MVLMXC44.js +9 -0
- package/dist/chunk-MZFF5F7R.js +407 -0
- package/dist/chunk-N2UVOR3X.js +238 -0
- package/dist/chunk-NDF4A5JM.js +37 -0
- package/dist/chunk-NJCTQH2P.js +62 -0
- package/dist/chunk-NZOJHERI.js +32 -0
- package/dist/chunk-OO2GZ272.js +1241 -0
- package/dist/chunk-OPRBF7VE.js +41 -0
- package/dist/chunk-OSQHWIM5.js +523 -0
- package/dist/chunk-OSYCOC3K.js +21 -0
- package/dist/chunk-P5GB6NEO.js +66 -0
- package/dist/chunk-PKBMQBKP.js +5 -0
- package/dist/chunk-PO2TRJPY.js +40 -0
- package/dist/chunk-PSAG45YF.js +451 -0
- package/dist/chunk-PXKIGZ2F.js +31 -0
- package/dist/chunk-QLTDFUJ7.js +94 -0
- package/dist/chunk-QPEEKFCA.js +533 -0
- package/dist/chunk-QXMIKDOL.js +125 -0
- package/dist/chunk-R3TOKUDJ.js +191 -0
- package/dist/chunk-S22FSH7C.js +94 -0
- package/dist/chunk-SC4MZGWZ.js +63 -0
- package/dist/chunk-SOD2F6C2.js +281 -0
- package/dist/chunk-SS636UDN.js +35 -0
- package/dist/chunk-SSUQKA7L.js +746 -0
- package/dist/chunk-SWKE6FWH.js +47 -0
- package/dist/chunk-T22VK4NJ.js +49 -0
- package/dist/chunk-TT63HHIT.js +543 -0
- package/dist/chunk-TXBAOEKG.js +1084 -0
- package/dist/chunk-UINSEWQ3.js +127 -0
- package/dist/chunk-UPFU63L4.js +126 -0
- package/dist/chunk-UVPGW4R7.js +222 -0
- package/dist/chunk-VX5CMNMM.js +26 -0
- package/dist/chunk-WFHI6HXP.js +837 -0
- package/dist/chunk-WMVK77ND.js +53 -0
- package/dist/chunk-X6F6SO4S.js +135 -0
- package/dist/chunk-XTRZGXB2.js +34 -0
- package/dist/chunk-XZMVNORA.js +100 -0
- package/dist/chunk-Y3INC4QJ.js +133 -0
- package/dist/chunk-YC7ELZS3.js +51 -0
- package/dist/chunk-YGGDU6C3.js +93 -0
- package/dist/chunk-YVKRYQRG.js +70 -0
- package/dist/chunk-Z22QVHT4.js +57 -0
- package/dist/chunk-ZEGVKVD5.js +80 -0
- package/dist/chunk-ZTZQPYP6.js +55 -0
- package/dist/client/SiteKitCredential.d.ts +0 -1
- package/dist/client/index.d.ts +0 -1
- package/dist/client/index.js +13 -53
- package/dist/cms/CmsPage.d.ts +0 -1
- package/dist/cms/CmsPreview.d.ts +0 -1
- package/dist/cms/CmsSection.d.ts +0 -1
- package/dist/cms/PortableTextRenderer.d.ts +0 -1
- package/dist/cms/index.d.ts +1 -2
- package/dist/cms/index.js +5 -410
- package/dist/cms/sanity-image.d.ts +0 -1
- package/dist/cms/sections/CtaSection.d.ts +0 -1
- package/dist/cms/sections/CustomSection.d.ts +0 -1
- package/dist/cms/sections/FaqSection.d.ts +0 -1
- package/dist/cms/sections/FormSection.d.ts +0 -1
- package/dist/cms/sections/GallerySection.d.ts +0 -1
- package/dist/cms/sections/HeroSection.d.ts +0 -1
- package/dist/cms/sections/RichTextSection.d.ts +0 -1
- package/dist/cms/sections/TestimonialsSection.d.ts +0 -1
- package/dist/cms/sections/index.d.ts +0 -1
- package/dist/cms/server-api.d.ts +0 -1
- package/dist/cms/server.d.ts +0 -1
- package/dist/cms/server.js +5 -22
- package/dist/cms/types.d.ts +0 -1
- package/dist/commerce/CalendarView.d.ts +0 -1
- package/dist/commerce/CheckoutForm.d.ts +0 -1
- package/dist/commerce/EventCalendar.d.ts +0 -1
- package/dist/commerce/EventCheckout.d.ts +0 -1
- package/dist/commerce/EventEmbed.d.ts +0 -1
- package/dist/commerce/EventModal.d.ts +0 -1
- package/dist/commerce/EventTile.d.ts +0 -1
- package/dist/commerce/EventsAgenda.d.ts +0 -1
- package/dist/commerce/EventsWidget.d.ts +0 -1
- package/dist/commerce/OfferingCard.d.ts +0 -1
- package/dist/commerce/OfferingList.d.ts +0 -1
- package/dist/commerce/ProductDetail.d.ts +0 -1
- package/dist/commerce/ProductEmbed.d.ts +0 -1
- package/dist/commerce/ProductGrid.d.ts +0 -1
- package/dist/commerce/ProductPage.d.ts +0 -1
- package/dist/commerce/RegistrationForm.d.ts +0 -1
- package/dist/commerce/SizeChart.d.ts +0 -1
- package/dist/commerce/UpcomingEvents.d.ts +0 -1
- package/dist/commerce/api.d.ts +0 -1
- package/dist/commerce/events-extras.d.ts +0 -1
- package/dist/commerce/index.d.ts +0 -1
- package/dist/commerce/index.js +8021 -227
- package/dist/commerce/server.d.ts +0 -1
- package/dist/commerce/server.js +2 -251
- package/dist/commerce/types.d.ts +0 -1
- package/dist/commerce/useEventModal.d.ts +0 -1
- package/dist/commerce/utils.d.ts +0 -1
- package/dist/config/index.d.ts +0 -1
- package/dist/config/index.js +7 -11
- package/dist/contracts/color.d.ts +38 -0
- package/dist/contracts/entries.d.ts +8 -0
- package/dist/contracts/fleet.d.ts +96 -0
- package/dist/contracts/forms.d.ts +89 -0
- package/dist/contracts/llms.d.ts +54 -0
- package/dist/contracts/portfolio.d.ts +158 -0
- package/dist/contracts/seo-meta.d.ts +56 -0
- package/dist/contracts/seo-pages.d.ts +124 -0
- package/dist/contracts/sites-normalize.d.ts +35 -0
- package/dist/contracts/sites.d.ts +48 -0
- package/dist/contracts/slots.d.ts +81 -0
- package/dist/contracts/website.d.ts +148 -0
- package/dist/cta-bar/CtaBar.d.ts +0 -1
- package/dist/cta-bar/CtaBarBehavior.d.ts +0 -1
- package/dist/cta-bar/client.d.ts +0 -1
- package/dist/cta-bar/client.js +3 -22
- package/dist/cta-bar/index.d.ts +0 -1
- package/dist/cta-bar/index.js +5 -227
- package/dist/cta-bar/styles.d.ts +0 -1
- package/dist/discover-3YYOHOQP.js +2 -0
- package/dist/engage/ChatWidget.d.ts +0 -1
- package/dist/engage/DesignRenderer.d.ts +0 -1
- package/dist/engage/EchoUiActions.d.ts +0 -1
- package/dist/engage/EngageWidget.d.ts +2 -1
- package/dist/engage/brand-color.d.ts +0 -1
- package/dist/engage/chat-messages.d.ts +0 -1
- package/dist/engage/echo-config.d.ts +0 -1
- package/dist/engage/element-rules.d.ts +0 -1
- package/dist/engage/index.d.ts +0 -1
- package/dist/engage/index.js +20 -36
- package/dist/engage/launcher-placement.d.ts +0 -1
- package/dist/engage/socket-loader.d.ts +0 -1
- package/dist/engage/types.d.ts +18 -1
- package/dist/fleet/FleetHeartbeat.d.ts +0 -1
- package/dist/fleet/contract.d.ts +1 -98
- package/dist/fleet/contract.js +2 -53
- package/dist/fleet/heartbeat.d.ts +0 -1
- package/dist/fleet/index.d.ts +0 -1
- package/dist/fleet/index.js +9 -75
- package/dist/forms/DatePicker.d.ts +0 -1
- package/dist/forms/FileField.d.ts +0 -1
- package/dist/forms/FormCelebration.d.ts +0 -1
- package/dist/forms/FormClient.d.ts +0 -1
- package/dist/forms/FormEnhancer.d.ts +0 -1
- package/dist/forms/FormField.d.ts +0 -1
- package/dist/forms/FormSpotlight.d.ts +0 -1
- package/dist/forms/FormStage.d.ts +0 -1
- package/dist/forms/HoneypotField.d.ts +0 -1
- package/dist/forms/ManagedForm.d.ts +0 -1
- package/dist/forms/ServerForm.d.ts +0 -1
- package/dist/forms/StaticForm.d.ts +0 -1
- package/dist/forms/contract.d.ts +1 -91
- package/dist/forms/contract.js +2 -37
- package/dist/forms/defaultSuccessMessage.d.ts +0 -1
- package/dist/forms/delight.d.ts +0 -1
- package/dist/forms/experience-chrome.d.ts +0 -1
- package/dist/forms/experience-plan.d.ts +0 -1
- package/dist/forms/field-controls.d.ts +0 -1
- package/dist/forms/field-interactions.d.ts +0 -1
- package/dist/forms/field-rules.d.ts +0 -1
- package/dist/forms/form-loaded-at.d.ts +12 -0
- package/dist/forms/form-values.d.ts +0 -1
- package/dist/forms/formsApi.d.ts +0 -1
- package/dist/forms/ga4-identity.d.ts +0 -1
- package/dist/forms/index.d.ts +0 -1
- package/dist/forms/index.js +20 -64
- package/dist/forms/normalize-config.d.ts +0 -1
- package/dist/forms/recaptcha-warmup.d.ts +0 -1
- package/dist/forms/recaptcha.d.ts +0 -1
- package/dist/forms/server.d.ts +0 -1
- package/dist/forms/server.js +11 -67
- package/dist/forms/static.d.ts +0 -1
- package/dist/forms/static.js +6 -17
- package/dist/forms/submitForm.d.ts +0 -1
- package/dist/forms/tracking-session.d.ts +0 -1
- package/dist/forms/types.d.ts +0 -1
- package/dist/forms/useForm.d.ts +0 -1
- package/dist/forms/useFormTracking.d.ts +0 -1
- package/dist/images/ManagedFavicon.d.ts +0 -1
- package/dist/images/ManagedImage.d.ts +0 -1
- package/dist/images/api.d.ts +0 -1
- package/dist/images/index.d.ts +0 -1
- package/dist/images/index.js +6 -49
- package/dist/images/server.d.ts +0 -1
- package/dist/images/server.js +3 -21
- package/dist/index.d.ts +13 -56
- package/dist/index.js +2 -426
- package/dist/landing/LandingPage.d.ts +0 -1
- package/dist/landing/contract.d.ts +0 -1
- package/dist/landing/index.d.ts +0 -1
- package/dist/landing/index.js +3 -22
- package/dist/landing/metadata.d.ts +0 -1
- package/dist/landing/server.d.ts +0 -1
- package/dist/landing/server.js +3 -17
- package/dist/layout/SiteKitClientProviders.d.ts +12 -3
- package/dist/layout/SiteKitLayout.d.ts +19 -4
- package/dist/layout/SpeculationRules.d.ts +0 -1
- package/dist/layout/client.d.ts +12 -3
- package/dist/layout/client.js +16 -26
- package/dist/layout/index.d.ts +0 -1
- package/dist/layout/index.js +43 -40
- package/dist/layout/types.d.ts +19 -1
- package/dist/llms/AEOComponents.d.ts +0 -1
- package/dist/llms/SpeakableSchema.d.ts +0 -1
- package/dist/llms/agent-access.d.ts +43 -0
- package/dist/llms/aiRobots.d.ts +0 -10
- package/dist/llms/api.d.ts +0 -1
- package/dist/llms/client.d.ts +0 -1
- package/dist/llms/client.js +4 -66
- package/dist/llms/contract.d.ts +1 -42
- package/dist/llms/contract.js +2 -41
- package/dist/llms/discovery-headers.d.ts +6 -1
- package/dist/llms/generateLLMsTxt.d.ts +0 -1
- package/dist/llms/handlers.d.ts +0 -1
- package/dist/llms/humanize-industry.d.ts +0 -1
- package/dist/llms/index.d.ts +3 -2
- package/dist/llms/index.js +17 -448
- package/dist/llms/links.d.ts +0 -1
- package/dist/llms/revalidate.d.ts +0 -1
- package/dist/llms/seo-revalidate.d.ts +0 -1
- package/dist/llms/sourcedFacts.d.ts +0 -1
- package/dist/llms/types.d.ts +6 -1
- package/dist/llms/writeLLMsTxt.d.ts +10 -1
- package/dist/manifest/index.d.ts +0 -1
- package/dist/manifest/index.js +4 -8
- package/dist/maps/GoogleMap.d.ts +0 -1
- package/dist/maps/NeighborhoodMap.d.ts +0 -1
- package/dist/maps/api.d.ts +0 -1
- package/dist/maps/index.d.ts +0 -1
- package/dist/maps/index.js +85 -92
- package/dist/maps/types.d.ts +0 -1
- package/dist/mcp/WebMcpTools.d.ts +0 -1
- package/dist/mcp/client.d.ts +0 -1
- package/dist/mcp/client.js +9 -12
- package/dist/mcp/declarative.d.ts +0 -1
- package/dist/mcp/handlers.d.ts +15 -2
- package/dist/mcp/index.d.ts +2 -3
- package/dist/mcp/index.js +50 -298
- package/dist/mcp/protocol.d.ts +0 -1
- package/dist/mcp/report.d.ts +27 -0
- package/dist/mcp/serverCard.d.ts +0 -1
- package/dist/mcp/sonor.d.ts +99 -0
- package/dist/mcp/sonor.js +482 -0
- package/dist/mcp/transport.d.ts +0 -1
- package/dist/mcp/transport.js +8 -24
- package/dist/mcp/types.d.ts +21 -1
- package/dist/motion/CountUp.d.ts +0 -1
- package/dist/motion/Parallax.d.ts +0 -1
- package/dist/motion/Reveal.d.ts +0 -1
- package/dist/motion/ScrollScene.d.ts +0 -1
- package/dist/motion/engine.d.ts +0 -1
- package/dist/motion/failsafe.d.ts +0 -1
- package/dist/motion/gsap.d.ts +0 -1
- package/dist/motion/gsap.js +17 -29
- package/dist/motion/index.d.ts +0 -1
- package/dist/motion/index.js +25 -51
- package/dist/motion/three.d.ts +0 -1
- package/dist/motion/three.js +16 -23
- package/dist/og/config.d.ts +0 -1
- package/dist/og/contrast.d.ts +0 -1
- package/dist/og/index.d.ts +0 -1
- package/dist/og/index.js +4 -43
- package/dist/og/pages.d.ts +0 -1
- package/dist/og/route-fit.d.ts +0 -1
- package/dist/og/route.d.ts +0 -1
- package/dist/og/route.js +3 -245
- package/dist/og/template.d.ts +0 -1
- package/dist/portfolio/contract.d.ts +1 -60
- package/dist/portfolio/contract.js +2 -43
- package/dist/proxy/index.d.ts +16 -14
- package/dist/proxy/index.js +20 -36
- package/dist/proxy/securityHeaders.d.ts +0 -1
- package/dist/proxy/segment.d.ts +0 -1
- package/dist/redirects/index.d.ts +0 -8
- package/dist/redirects/index.js +6 -41
- package/dist/reputation/TestimonialSection.d.ts +0 -1
- package/dist/reputation/api.d.ts +0 -1
- package/dist/reputation/index.d.ts +0 -1
- package/dist/reputation/index.js +4 -22
- package/dist/reputation/server.d.ts +0 -1
- package/dist/reputation/server.js +3 -17
- package/dist/reputation/types.d.ts +0 -1
- package/dist/robots/index.d.ts +1 -2
- package/dist/robots/index.js +4 -78
- package/dist/robots/indexnow.d.ts +0 -1
- package/dist/robots/indexnow.js +4 -39
- package/dist/robots/next-internals.d.ts +0 -1
- package/dist/seo/ManagedContent.d.ts +0 -1
- package/dist/seo/ManagedFAQ.d.ts +0 -1
- package/dist/seo/ManagedInternalLinks.d.ts +0 -1
- package/dist/seo/ManagedSchema.d.ts +0 -1
- package/dist/seo/ManagedScripts.d.ts +0 -1
- package/dist/seo/api.d.ts +0 -1
- package/dist/seo/client.d.ts +0 -1
- package/dist/seo/client.js +8 -18
- package/dist/seo/entry-indexnow.d.ts +2 -0
- package/dist/seo/entry-llms-client.d.ts +2 -0
- package/dist/seo/entry-llms-contract.d.ts +2 -0
- package/dist/seo/entry-llms.d.ts +2 -0
- package/dist/seo/entry-meta-contract.d.ts +2 -0
- package/dist/seo/entry-og-route.d.ts +2 -0
- package/dist/seo/entry-og.d.ts +2 -0
- package/dist/seo/entry-pages-contract.d.ts +2 -0
- package/dist/seo/entry-redirects.d.ts +2 -0
- package/dist/seo/entry-robots.d.ts +2 -0
- package/dist/seo/entry-sitemap.d.ts +2 -0
- package/dist/seo/getManagedMetadata.d.ts +0 -1
- package/dist/seo/groundingSchema.d.ts +0 -1
- package/dist/seo/index.d.ts +0 -2
- package/dist/seo/index.js +88 -317
- package/dist/seo/indexnow.d.ts +2 -0
- package/dist/seo/indexnow.js +4 -0
- package/dist/seo/llms/client.d.ts +2 -0
- package/dist/seo/llms/client.js +4 -0
- package/dist/seo/llms/contract.d.ts +2 -0
- package/dist/seo/llms/contract.js +2 -0
- package/dist/seo/llms.d.ts +2 -0
- package/dist/seo/llms.js +17 -0
- package/dist/seo/load-env.d.ts +12 -0
- package/dist/seo/meta/contract.d.ts +2 -0
- package/dist/seo/meta/contract.js +2 -0
- package/dist/seo/og/route.d.ts +2 -0
- package/dist/seo/og/route.js +3 -0
- package/dist/seo/og.d.ts +2 -0
- package/dist/seo/og.js +4 -0
- package/dist/seo/pages/contract.d.ts +2 -0
- package/dist/seo/pages/contract.js +4 -0
- package/dist/seo/redirects.d.ts +2 -0
- package/dist/seo/redirects.js +6 -0
- package/dist/seo/register-sitemap-cli-impl.d.ts +6 -1
- package/dist/seo/register-sitemap-cli.d.ts +1 -1
- package/dist/seo/register-sitemap-cli.js +73 -66
- package/dist/seo/register-sitemap-request.d.ts +0 -1
- package/dist/seo/robots.d.ts +2 -0
- package/dist/seo/robots.js +4 -0
- package/dist/seo/routing.d.ts +0 -1
- package/dist/seo/safeJsonLd.d.ts +0 -1
- package/dist/seo/schema-filter.d.ts +0 -1
- package/dist/seo/server-api.d.ts +0 -1
- package/dist/seo/server.d.ts +0 -1
- package/dist/seo/server.js +10 -80
- package/dist/seo/sitemap.d.ts +2 -0
- package/dist/seo/sitemap.js +15 -0
- package/dist/seo/types.d.ts +0 -1
- package/dist/seo/withManagedMetadata.d.ts +0 -1
- package/dist/seo-meta/contract.d.ts +1 -60
- package/dist/seo-meta/contract.js +2 -41
- package/dist/seo-pages/contract.d.ts +1 -61
- package/dist/seo-pages/contract.js +4 -49
- package/dist/server/index.d.ts +0 -1
- package/dist/server/index.js +6 -32
- package/dist/server/mint-site-token.d.ts +0 -1
- package/dist/server/server-fetch.d.ts +0 -1
- package/dist/server-api-GJJQZVG7.js +8 -0
- package/dist/shared/build-entries.d.ts +53 -14
- package/dist/shared/clock.d.ts +20 -0
- package/dist/shared/color.d.ts +1 -39
- package/dist/shared/defer.d.ts +0 -1
- package/dist/shared/fetchWithRetry.d.ts +0 -1
- package/dist/shared/frame.d.ts +8 -1
- package/dist/shared/fresh-fetch.d.ts +0 -1
- package/dist/shared/glass.d.ts +0 -1
- package/dist/shared/identity.d.ts +0 -1
- package/dist/shared/markdown.d.ts +40 -0
- package/dist/shared/next-files.d.ts +0 -1
- package/dist/shared/page-leave.d.ts +0 -1
- package/dist/shared/publishCredential.d.ts +0 -1
- package/dist/shared/reporting-gate.d.ts +0 -1
- package/dist/shared/request-guards.d.ts +0 -1
- package/dist/shared/siteToken.d.ts +0 -1
- package/dist/shared/sonorFetch.d.ts +0 -1
- package/dist/shared/source-graph.d.ts +0 -1
- package/dist/shared/uuid.d.ts +0 -1
- package/dist/shared/version.d.ts +1 -2
- package/dist/shared/visual-viewport-gap.d.ts +0 -1
- package/dist/signal/SignalBridge.d.ts +0 -1
- package/dist/signal/SignalCore.d.ts +0 -1
- package/dist/signal/SignalExperiment.d.ts +0 -1
- package/dist/signal/index.d.ts +0 -1
- package/dist/signal/index.js +72 -44
- package/dist/signal/store.d.ts +0 -1
- package/dist/signal/types.d.ts +0 -1
- package/dist/site-config/index.d.ts +0 -1
- package/dist/site-config/index.js +2 -17
- package/dist/sitemap/discover.d.ts +0 -1
- package/dist/sitemap/index.d.ts +6 -1
- package/dist/sitemap/index.js +15 -553
- package/dist/sitemap/shared.d.ts +0 -1
- package/dist/sites/contract.d.ts +1 -51
- package/dist/sites/contract.js +3 -38
- package/dist/sites/normalize.d.ts +1 -36
- package/dist/sites/resolve.d.ts +0 -1
- package/dist/sites/site-param.d.ts +0 -1
- package/dist/slots/ManagedSlot.d.ts +0 -1
- package/dist/slots/contract.d.ts +1 -82
- package/dist/slots/contract.js +2 -41
- package/dist/slots/index.d.ts +0 -1
- package/dist/slots/index.js +5 -182
- package/dist/slots/revalidate.d.ts +0 -1
- package/dist/slots/server-api.d.ts +0 -1
- package/dist/socket-loader-R24ZSRSQ.js +12 -0
- package/dist/sync/AddToCalendar.d.ts +0 -1
- package/dist/sync/BookingWidget.d.ts +0 -1
- package/dist/sync/MeetingFormatStep.d.ts +0 -1
- package/dist/sync/api.d.ts +0 -1
- package/dist/sync/booking-flow.d.ts +0 -1
- package/dist/sync/index.d.ts +0 -1
- package/dist/sync/index.js +6 -64
- package/dist/sync/types.d.ts +0 -1
- package/dist/types.d.ts +0 -63
- package/dist/web-vitals.attribution-N2PCCF4Q.js +522 -0
- package/dist/website/BlocksPopup.d.ts +25 -0
- package/dist/website/PopupBlocks.d.ts +57 -0
- package/dist/website/SiteDesignReporter.d.ts +28 -0
- package/dist/website/cms/server.d.ts +2 -0
- package/dist/website/cms/server.js +5 -0
- package/dist/website/cms-server.d.ts +2 -0
- package/dist/website/cms.d.ts +2 -0
- package/dist/website/cms.js +5 -0
- package/dist/website/contract.d.ts +1 -0
- package/dist/website/contract.js +3 -0
- package/dist/website/cta-bar.d.ts +2 -0
- package/dist/website/cta-bar.js +5 -0
- package/dist/website/design.d.ts +165 -0
- package/dist/website/images/server.d.ts +2 -0
- package/dist/website/images/server.js +3 -0
- package/dist/website/images-server.d.ts +2 -0
- package/dist/website/images.d.ts +2 -0
- package/dist/website/images.js +6 -0
- package/dist/website/index.d.ts +17 -0
- package/dist/website/index.js +13 -0
- package/dist/website/landing/server.d.ts +2 -0
- package/dist/website/landing/server.js +3 -0
- package/dist/website/landing-server.d.ts +2 -0
- package/dist/website/landing.d.ts +2 -0
- package/dist/website/landing.js +3 -0
- package/dist/website/popups.d.ts +17 -0
- package/dist/website/popups.js +22 -0
- package/dist/website/slots/contract.d.ts +2 -0
- package/dist/website/slots/contract.js +2 -0
- package/dist/website/slots-contract.d.ts +2 -0
- package/dist/website/slots.d.ts +3 -0
- package/dist/website/slots.js +5 -0
- package/dist/writeLLMsTxt-UMHKGNRR.js +11 -0
- package/package.json +175 -147
- package/skills/site-kit/SKILL.md +9 -3
- package/dist/AnalyticsProvider-4K5T7OQ7.mjs +0 -12
- package/dist/AnalyticsProvider-4K5T7OQ7.mjs.map +0 -1
- package/dist/AnalyticsProvider-QXZN5O6D.js +0 -33
- package/dist/AnalyticsProvider-QXZN5O6D.js.map +0 -1
- package/dist/ArticleFaqSection-3KZ24MFS.js +0 -13
- package/dist/ArticleFaqSection-3KZ24MFS.js.map +0 -1
- package/dist/ArticleFaqSection-XZPXJVH4.mjs +0 -11
- package/dist/ArticleFaqSection-XZPXJVH4.mjs.map +0 -1
- package/dist/ArticleViewTracker-BUG2TOHS.mjs +0 -51
- package/dist/ArticleViewTracker-BUG2TOHS.mjs.map +0 -1
- package/dist/ArticleViewTracker-FFMHR7AY.js +0 -54
- package/dist/ArticleViewTracker-FFMHR7AY.js.map +0 -1
- package/dist/ChatWidget-CRQPBDEF.mjs +0 -17
- package/dist/ChatWidget-CRQPBDEF.mjs.map +0 -1
- package/dist/ChatWidget-XFYLVXAX.js +0 -34
- package/dist/ChatWidget-XFYLVXAX.js.map +0 -1
- package/dist/DatePicker-4WNKNNCV.mjs +0 -4
- package/dist/DatePicker-4WNKNNCV.mjs.map +0 -1
- package/dist/DatePicker-VPZR7RU3.js +0 -13
- package/dist/DatePicker-VPZR7RU3.js.map +0 -1
- package/dist/EngageWidget-S234YAT2.js +0 -21
- package/dist/EngageWidget-S234YAT2.js.map +0 -1
- package/dist/EngageWidget-SQU4T7CI.mjs +0 -12
- package/dist/EngageWidget-SQU4T7CI.mjs.map +0 -1
- package/dist/FileField-HNEBEBLB.mjs +0 -85
- package/dist/FileField-HNEBEBLB.mjs.map +0 -1
- package/dist/FileField-XG4EYAZW.js +0 -91
- package/dist/FileField-XG4EYAZW.js.map +0 -1
- package/dist/FormCelebration-7CBANVNS.mjs +0 -4
- package/dist/FormCelebration-7CBANVNS.mjs.map +0 -1
- package/dist/FormCelebration-O2O5S6JI.js +0 -13
- package/dist/FormCelebration-O2O5S6JI.js.map +0 -1
- package/dist/FormSpotlight-IODREOPN.js +0 -761
- package/dist/FormSpotlight-IODREOPN.js.map +0 -1
- package/dist/FormSpotlight-VKD774PZ.mjs +0 -756
- package/dist/FormSpotlight-VKD774PZ.mjs.map +0 -1
- package/dist/FormStage-37KKZQH4.js +0 -422
- package/dist/FormStage-37KKZQH4.js.map +0 -1
- package/dist/FormStage-PRZNRYNC.mjs +0 -420
- package/dist/FormStage-PRZNRYNC.mjs.map +0 -1
- package/dist/ManagedForm-4PZOCKCV.mjs +0 -16
- package/dist/ManagedForm-4PZOCKCV.mjs.map +0 -1
- package/dist/ManagedForm-JCMEE626.js +0 -25
- package/dist/ManagedForm-JCMEE626.js.map +0 -1
- package/dist/ManagedNewsletterForm-CTC33B2U.js +0 -66
- package/dist/ManagedNewsletterForm-CTC33B2U.js.map +0 -1
- package/dist/ManagedNewsletterForm-KMZG24OE.mjs +0 -64
- package/dist/ManagedNewsletterForm-KMZG24OE.mjs.map +0 -1
- package/dist/SignalCore-YHT7WPXV.js +0 -326
- package/dist/SignalCore-YHT7WPXV.js.map +0 -1
- package/dist/SignalCore-YIPKKIUG.mjs +0 -324
- package/dist/SignalCore-YIPKKIUG.mjs.map +0 -1
- package/dist/SitemapSync-GN4OXIM2.js +0 -18
- package/dist/SitemapSync-GN4OXIM2.js.map +0 -1
- package/dist/SitemapSync-NG763CGN.mjs +0 -9
- package/dist/SitemapSync-NG763CGN.mjs.map +0 -1
- package/dist/SitemapSync.d.ts.map +0 -1
- package/dist/admin-auth/index.d.ts.map +0 -1
- package/dist/admin-auth/index.js.map +0 -1
- package/dist/admin-auth/index.mjs +0 -0
- package/dist/admin-auth/index.mjs.map +0 -1
- package/dist/admin-auth/session.d.ts.map +0 -1
- package/dist/affiliates/AffiliatesWidget.d.ts.map +0 -1
- package/dist/affiliates/api.d.ts.map +0 -1
- package/dist/affiliates/index.d.ts.map +0 -1
- package/dist/affiliates/types.d.ts.map +0 -1
- package/dist/affiliates/useAffiliates.d.ts.map +0 -1
- package/dist/analytics/AnalyticsProvider.d.ts.map +0 -1
- package/dist/analytics/WebVitals.d.ts.map +0 -1
- package/dist/analytics/dispatch.d.ts.map +0 -1
- package/dist/analytics/index.d.ts.map +0 -1
- package/dist/analytics/index.js.map +0 -1
- package/dist/analytics/index.mjs +0 -14
- package/dist/analytics/index.mjs.map +0 -1
- package/dist/analytics/measurement-context.d.ts.map +0 -1
- package/dist/analytics/page-observation.d.ts.map +0 -1
- package/dist/analytics/send-gate.d.ts.map +0 -1
- package/dist/analytics/types.d.ts.map +0 -1
- package/dist/analytics/useContactTracking.d.ts.map +0 -1
- package/dist/api-D745LGGU.mjs +0 -183
- package/dist/api-XR5APCH3.js +0 -201
- package/dist/article-styles-DACUAOVT.mjs +0 -592
- package/dist/article-styles-DACUAOVT.mjs.map +0 -1
- package/dist/article-styles-JHHTNHOK.js +0 -595
- package/dist/article-styles-JHHTNHOK.js.map +0 -1
- package/dist/article-tables-EWXG4LNP.js +0 -17
- package/dist/article-tables-EWXG4LNP.js.map +0 -1
- package/dist/article-tables-OGE52LNT.mjs +0 -4
- package/dist/article-tables-OGE52LNT.mjs.map +0 -1
- package/dist/articles/Article.d.ts.map +0 -1
- package/dist/articles/ArticleFAQ.d.ts.map +0 -1
- package/dist/articles/ArticleFaqSection.d.ts.map +0 -1
- package/dist/articles/ArticleList.d.ts.map +0 -1
- package/dist/articles/ArticleViewTracker.d.ts.map +0 -1
- package/dist/articles/AuthorCard.d.ts.map +0 -1
- package/dist/articles/AuthorPage.d.ts.map +0 -1
- package/dist/articles/ClusterLandingPage.d.ts.map +0 -1
- package/dist/articles/ClusterNavigation.d.ts.map +0 -1
- package/dist/articles/ManagedNewsletterForm.d.ts.map +0 -1
- package/dist/articles/NewsletterShell.d.ts.map +0 -1
- package/dist/articles/NewsletterWidget.d.ts.map +0 -1
- package/dist/articles/PublicationLayout.d.ts.map +0 -1
- package/dist/articles/PublicationSidebar.d.ts.map +0 -1
- package/dist/articles/RelatedPosts.d.ts.map +0 -1
- package/dist/articles/ServiceCallout.d.ts.map +0 -1
- package/dist/articles/TableOfContents.d.ts.map +0 -1
- package/dist/articles/article-styles.d.ts.map +0 -1
- package/dist/articles/article-tables.d.ts.map +0 -1
- package/dist/articles/artwork.d.ts.map +0 -1
- package/dist/articles/author-schema.d.ts.map +0 -1
- package/dist/articles/author-social.d.ts.map +0 -1
- package/dist/articles/excerpt.d.ts.map +0 -1
- package/dist/articles/index.d.ts.map +0 -1
- package/dist/articles/index.js.map +0 -1
- package/dist/articles/index.mjs +0 -457
- package/dist/articles/index.mjs.map +0 -1
- package/dist/articles/news-sitemap.d.ts.map +0 -1
- package/dist/articles/processArticleHtml.d.ts.map +0 -1
- package/dist/articles/public-reads.d.ts.map +0 -1
- package/dist/articles/reading-time.d.ts.map +0 -1
- package/dist/articles/routes.d.ts.map +0 -1
- package/dist/articles/server-core.d.ts.map +0 -1
- package/dist/articles/server-ui.d.ts.map +0 -1
- package/dist/articles/server-ui.js.map +0 -1
- package/dist/articles/server-ui.mjs +0 -1098
- package/dist/articles/server-ui.mjs.map +0 -1
- package/dist/articles/server.d.ts.map +0 -1
- package/dist/articles/server.js.map +0 -1
- package/dist/articles/server.mjs +0 -11
- package/dist/articles/server.mjs.map +0 -1
- package/dist/articles/types.d.ts.map +0 -1
- package/dist/articles/widget-styles.d.ts.map +0 -1
- package/dist/brand/extract-brand-profile.d.ts.map +0 -1
- package/dist/chunk-24LFAQEG.mjs +0 -480
- package/dist/chunk-24LFAQEG.mjs.map +0 -1
- package/dist/chunk-2FEQ6TYD.mjs +0 -37
- package/dist/chunk-2FEQ6TYD.mjs.map +0 -1
- package/dist/chunk-3AOKYAZ2.js +0 -135
- package/dist/chunk-3AOKYAZ2.js.map +0 -1
- package/dist/chunk-3DWIYCQX.js +0 -30
- package/dist/chunk-3DWIYCQX.js.map +0 -1
- package/dist/chunk-3SDMJMN2.js +0 -71
- package/dist/chunk-3SDMJMN2.js.map +0 -1
- package/dist/chunk-3T2CVHFO.mjs +0 -453
- package/dist/chunk-3T2CVHFO.mjs.map +0 -1
- package/dist/chunk-4BEGKFMN.js +0 -133
- package/dist/chunk-4BEGKFMN.js.map +0 -1
- package/dist/chunk-4C3INRHE.mjs +0 -1073
- package/dist/chunk-4C3INRHE.mjs.map +0 -1
- package/dist/chunk-4KAMU5HD.mjs +0 -16
- package/dist/chunk-4KAMU5HD.mjs.map +0 -1
- package/dist/chunk-4U5NCKQY.mjs +0 -39
- package/dist/chunk-4U5NCKQY.mjs.map +0 -1
- package/dist/chunk-4WCA2HM6.mjs +0 -57
- package/dist/chunk-4WCA2HM6.mjs.map +0 -1
- package/dist/chunk-54CARHDR.mjs +0 -95
- package/dist/chunk-54CARHDR.mjs.map +0 -1
- package/dist/chunk-55J2KE7D.js +0 -60
- package/dist/chunk-55J2KE7D.js.map +0 -1
- package/dist/chunk-5BARLEAI.mjs +0 -102
- package/dist/chunk-5BARLEAI.mjs.map +0 -1
- package/dist/chunk-5F2FIM5A.mjs +0 -135
- package/dist/chunk-5F2FIM5A.mjs.map +0 -1
- package/dist/chunk-5RNAUYWE.js +0 -50
- package/dist/chunk-5RNAUYWE.js.map +0 -1
- package/dist/chunk-5SANRSX3.mjs +0 -17
- package/dist/chunk-5SANRSX3.mjs.map +0 -1
- package/dist/chunk-5T3J24K4.mjs +0 -131
- package/dist/chunk-5T3J24K4.mjs.map +0 -1
- package/dist/chunk-5W4S7XQD.js +0 -141
- package/dist/chunk-5W4S7XQD.js.map +0 -1
- package/dist/chunk-5XFFUP6D.js +0 -100
- package/dist/chunk-5XFFUP6D.js.map +0 -1
- package/dist/chunk-5YVQWLSQ.mjs +0 -47
- package/dist/chunk-5YVQWLSQ.mjs.map +0 -1
- package/dist/chunk-64BOVMXG.mjs +0 -68
- package/dist/chunk-64BOVMXG.mjs.map +0 -1
- package/dist/chunk-662YHKWW.mjs +0 -10
- package/dist/chunk-662YHKWW.mjs.map +0 -1
- package/dist/chunk-6C47333H.mjs +0 -55
- package/dist/chunk-6C47333H.mjs.map +0 -1
- package/dist/chunk-6EDVCUAG.mjs +0 -29
- package/dist/chunk-6EDVCUAG.mjs.map +0 -1
- package/dist/chunk-6FNFM7JL.js +0 -113
- package/dist/chunk-6FNFM7JL.js.map +0 -1
- package/dist/chunk-6PJTLBRR.mjs +0 -11
- package/dist/chunk-6PJTLBRR.mjs.map +0 -1
- package/dist/chunk-6QPKC6XP.mjs +0 -1416
- package/dist/chunk-6QPKC6XP.mjs.map +0 -1
- package/dist/chunk-6XNEGG5B.mjs +0 -137
- package/dist/chunk-6XNEGG5B.mjs.map +0 -1
- package/dist/chunk-7K6L33BX.mjs +0 -24842
- package/dist/chunk-7RLL67F3.js +0 -47
- package/dist/chunk-7RLL67F3.js.map +0 -1
- package/dist/chunk-7THQ4UW3.js +0 -69
- package/dist/chunk-7THQ4UW3.js.map +0 -1
- package/dist/chunk-A6UYV475.mjs +0 -45
- package/dist/chunk-A6UYV475.mjs.map +0 -1
- package/dist/chunk-AAZNH3MA.mjs +0 -23
- package/dist/chunk-AAZNH3MA.mjs.map +0 -1
- package/dist/chunk-AEN7EL6N.js +0 -161
- package/dist/chunk-AEN7EL6N.js.map +0 -1
- package/dist/chunk-AGIMH67E.mjs +0 -26
- package/dist/chunk-AGIMH67E.mjs.map +0 -1
- package/dist/chunk-AS2HUIDW.mjs +0 -16
- package/dist/chunk-AS2HUIDW.mjs.map +0 -1
- package/dist/chunk-ATPQ6264.js +0 -24860
- package/dist/chunk-B22WSN4L.mjs +0 -59
- package/dist/chunk-B22WSN4L.mjs.map +0 -1
- package/dist/chunk-BBBJHYPH.js +0 -19
- package/dist/chunk-BBBJHYPH.js.map +0 -1
- package/dist/chunk-BEXTDHO4.mjs +0 -57
- package/dist/chunk-BEXTDHO4.mjs.map +0 -1
- package/dist/chunk-BI7DH42Z.mjs +0 -101
- package/dist/chunk-BI7DH42Z.mjs.map +0 -1
- package/dist/chunk-BQP6JIE2.mjs +0 -28
- package/dist/chunk-BQP6JIE2.mjs.map +0 -1
- package/dist/chunk-BZR6RUIN.mjs +0 -128
- package/dist/chunk-BZR6RUIN.mjs.map +0 -1
- package/dist/chunk-C2CTLLIO.mjs +0 -72
- package/dist/chunk-C2CTLLIO.mjs.map +0 -1
- package/dist/chunk-C5VITBN7.mjs +0 -220
- package/dist/chunk-C5VITBN7.mjs.map +0 -1
- package/dist/chunk-C7J4XLBN.js +0 -134
- package/dist/chunk-C7J4XLBN.js.map +0 -1
- package/dist/chunk-CDRQYJUT.js +0 -355
- package/dist/chunk-CDRQYJUT.js.map +0 -1
- package/dist/chunk-CFRJ2MK5.mjs +0 -16
- package/dist/chunk-CFRJ2MK5.mjs.map +0 -1
- package/dist/chunk-CIB3RHNZ.js +0 -8
- package/dist/chunk-CIB3RHNZ.js.map +0 -1
- package/dist/chunk-CIM5W3UO.js +0 -26
- package/dist/chunk-CIM5W3UO.js.map +0 -1
- package/dist/chunk-CLO3K7PF.js +0 -19
- package/dist/chunk-CLO3K7PF.js.map +0 -1
- package/dist/chunk-CU6OGBKK.mjs +0 -68
- package/dist/chunk-CU6OGBKK.mjs.map +0 -1
- package/dist/chunk-CUNZAD46.js +0 -53
- package/dist/chunk-CUNZAD46.js.map +0 -1
- package/dist/chunk-CUZ3I6CO.js +0 -23
- package/dist/chunk-CUZ3I6CO.js.map +0 -1
- package/dist/chunk-CXAXZFFW.js +0 -157
- package/dist/chunk-CXAXZFFW.js.map +0 -1
- package/dist/chunk-DA7IANFG.mjs +0 -37
- package/dist/chunk-DA7IANFG.mjs.map +0 -1
- package/dist/chunk-DV2LJYFD.js +0 -14
- package/dist/chunk-DV2LJYFD.js.map +0 -1
- package/dist/chunk-DV5KVNA7.js +0 -45
- package/dist/chunk-DV5KVNA7.js.map +0 -1
- package/dist/chunk-DVYYGHSG.js +0 -285
- package/dist/chunk-DVYYGHSG.js.map +0 -1
- package/dist/chunk-EDLNMGQC.mjs +0 -65
- package/dist/chunk-EDLNMGQC.mjs.map +0 -1
- package/dist/chunk-EHJANA5C.js +0 -231
- package/dist/chunk-EHJANA5C.js.map +0 -1
- package/dist/chunk-EMHSHAVW.js +0 -19
- package/dist/chunk-EMHSHAVW.js.map +0 -1
- package/dist/chunk-ESP5RMB7.js +0 -42
- package/dist/chunk-ESP5RMB7.js.map +0 -1
- package/dist/chunk-EWDWLY74.js +0 -158
- package/dist/chunk-EWDWLY74.js.map +0 -1
- package/dist/chunk-F2GECCK7.js +0 -483
- package/dist/chunk-F2GECCK7.js.map +0 -1
- package/dist/chunk-FCAHV5P3.mjs +0 -45
- package/dist/chunk-FCAHV5P3.mjs.map +0 -1
- package/dist/chunk-G6WF4G3E.js +0 -43
- package/dist/chunk-G6WF4G3E.js.map +0 -1
- package/dist/chunk-GCPPXUAI.js +0 -72
- package/dist/chunk-GCPPXUAI.js.map +0 -1
- package/dist/chunk-GFSQMK35.mjs +0 -127
- package/dist/chunk-GFSQMK35.mjs.map +0 -1
- package/dist/chunk-GGGX54ZE.js +0 -8071
- package/dist/chunk-GGGX54ZE.js.map +0 -1
- package/dist/chunk-GSRT66PA.js +0 -80
- package/dist/chunk-GSRT66PA.js.map +0 -1
- package/dist/chunk-GSU6VTCZ.mjs +0 -165
- package/dist/chunk-GSU6VTCZ.mjs.map +0 -1
- package/dist/chunk-GXSSFQ5D.js +0 -1677
- package/dist/chunk-GXSSFQ5D.js.map +0 -1
- package/dist/chunk-H4TSADY3.mjs +0 -761
- package/dist/chunk-H4TSADY3.mjs.map +0 -1
- package/dist/chunk-H6AU3WKF.js +0 -108
- package/dist/chunk-H6AU3WKF.js.map +0 -1
- package/dist/chunk-HGNSJXWT.js +0 -55
- package/dist/chunk-HGNSJXWT.js.map +0 -1
- package/dist/chunk-HIZJD7TU.mjs +0 -326
- package/dist/chunk-HIZJD7TU.mjs.map +0 -1
- package/dist/chunk-HPGPOUHU.mjs +0 -105
- package/dist/chunk-HPGPOUHU.mjs.map +0 -1
- package/dist/chunk-HSLPN3QK.js +0 -106
- package/dist/chunk-HSLPN3QK.js.map +0 -1
- package/dist/chunk-HTCNRTN6.js +0 -791
- package/dist/chunk-HTCNRTN6.js.map +0 -1
- package/dist/chunk-HXHDOIV6.js +0 -41
- package/dist/chunk-HXHDOIV6.js.map +0 -1
- package/dist/chunk-IBJOGXQI.js +0 -33
- package/dist/chunk-IBJOGXQI.js.map +0 -1
- package/dist/chunk-IMWON7OV.mjs +0 -27
- package/dist/chunk-IMWON7OV.mjs.map +0 -1
- package/dist/chunk-IWSN4DGG.js +0 -132
- package/dist/chunk-IWSN4DGG.js.map +0 -1
- package/dist/chunk-J7QI3GDX.js +0 -12
- package/dist/chunk-J7QI3GDX.js.map +0 -1
- package/dist/chunk-JA77WXRE.js +0 -30
- package/dist/chunk-JA77WXRE.js.map +0 -1
- package/dist/chunk-JONWE26J.js +0 -81
- package/dist/chunk-JONWE26J.js.map +0 -1
- package/dist/chunk-JP5WGL75.js +0 -62
- package/dist/chunk-JP5WGL75.js.map +0 -1
- package/dist/chunk-JSXLTZUP.mjs +0 -255
- package/dist/chunk-JSXLTZUP.mjs.map +0 -1
- package/dist/chunk-JX3PO2MH.js +0 -53
- package/dist/chunk-JX3PO2MH.js.map +0 -1
- package/dist/chunk-JXRGIE3V.mjs +0 -1669
- package/dist/chunk-JXRGIE3V.mjs.map +0 -1
- package/dist/chunk-K3PVUXKB.mjs +0 -6
- package/dist/chunk-K3PVUXKB.mjs.map +0 -1
- package/dist/chunk-KHPJ3CEL.js +0 -72
- package/dist/chunk-KHPJ3CEL.js.map +0 -1
- package/dist/chunk-KOPFFKG2.mjs +0 -132
- package/dist/chunk-KOPFFKG2.mjs.map +0 -1
- package/dist/chunk-KP5BFPGT.js +0 -44
- package/dist/chunk-KP5BFPGT.js.map +0 -1
- package/dist/chunk-KR7ATPAN.js +0 -52
- package/dist/chunk-KR7ATPAN.js.map +0 -1
- package/dist/chunk-KZBDH5A3.js +0 -130
- package/dist/chunk-KZBDH5A3.js.map +0 -1
- package/dist/chunk-KZVSB5WE.mjs +0 -21
- package/dist/chunk-KZVSB5WE.mjs.map +0 -1
- package/dist/chunk-LPDXS2B2.mjs +0 -932
- package/dist/chunk-LPDXS2B2.mjs.map +0 -1
- package/dist/chunk-LVGSOW2F.js +0 -32
- package/dist/chunk-LVGSOW2F.js.map +0 -1
- package/dist/chunk-M2N7NY3V.js +0 -103
- package/dist/chunk-M2N7NY3V.js.map +0 -1
- package/dist/chunk-M3JCHPK3.mjs +0 -782
- package/dist/chunk-M3JCHPK3.mjs.map +0 -1
- package/dist/chunk-M62L2N5A.mjs +0 -193
- package/dist/chunk-M62L2N5A.mjs.map +0 -1
- package/dist/chunk-MLVHVKFT.mjs +0 -148
- package/dist/chunk-MLVHVKFT.mjs.map +0 -1
- package/dist/chunk-MU3D5IO7.mjs +0 -283
- package/dist/chunk-MU3D5IO7.mjs.map +0 -1
- package/dist/chunk-MU7DTEUF.mjs +0 -77
- package/dist/chunk-MU7DTEUF.mjs.map +0 -1
- package/dist/chunk-MVHR77V4.js +0 -205
- package/dist/chunk-MVHR77V4.js.map +0 -1
- package/dist/chunk-NBOBOYMT.js +0 -52
- package/dist/chunk-NBOBOYMT.js.map +0 -1
- package/dist/chunk-NE6QGHFT.mjs +0 -240
- package/dist/chunk-NE6QGHFT.mjs.map +0 -1
- package/dist/chunk-NSWO43XW.mjs +0 -39
- package/dist/chunk-NSWO43XW.mjs.map +0 -1
- package/dist/chunk-NYXENHD2.mjs +0 -96
- package/dist/chunk-NYXENHD2.mjs.map +0 -1
- package/dist/chunk-O5GHP7UO.js +0 -142
- package/dist/chunk-O5GHP7UO.js.map +0 -1
- package/dist/chunk-OBKS3CPP.mjs +0 -50
- package/dist/chunk-OBKS3CPP.mjs.map +0 -1
- package/dist/chunk-OGNX6JT4.js +0 -222
- package/dist/chunk-OGNX6JT4.js.map +0 -1
- package/dist/chunk-OIPG3EGM.js +0 -771
- package/dist/chunk-OIPG3EGM.js.map +0 -1
- package/dist/chunk-OSU4QA5M.js +0 -260
- package/dist/chunk-OSU4QA5M.js.map +0 -1
- package/dist/chunk-P4Y75QSU.js +0 -19
- package/dist/chunk-P4Y75QSU.js.map +0 -1
- package/dist/chunk-PENNTSJE.mjs +0 -99
- package/dist/chunk-PENNTSJE.mjs.map +0 -1
- package/dist/chunk-PRAHDLKT.js +0 -67
- package/dist/chunk-PRAHDLKT.js.map +0 -1
- package/dist/chunk-QAQTDHHT.mjs +0 -1102
- package/dist/chunk-QAQTDHHT.mjs.map +0 -1
- package/dist/chunk-QOKMH2TD.mjs +0 -21
- package/dist/chunk-QOKMH2TD.mjs.map +0 -1
- package/dist/chunk-QRHVMTHF.mjs +0 -94
- package/dist/chunk-QRHVMTHF.mjs.map +0 -1
- package/dist/chunk-QZF5NTXQ.mjs +0 -28
- package/dist/chunk-QZF5NTXQ.mjs.map +0 -1
- package/dist/chunk-R5F2JQVX.mjs +0 -41
- package/dist/chunk-R5F2JQVX.mjs.map +0 -1
- package/dist/chunk-RC4WWQXR.js +0 -47
- package/dist/chunk-RC4WWQXR.js.map +0 -1
- package/dist/chunk-RCB6HEHM.mjs +0 -349
- package/dist/chunk-RCB6HEHM.mjs.map +0 -1
- package/dist/chunk-RH4XEXTK.mjs +0 -323
- package/dist/chunk-RI6DFQCA.js +0 -539
- package/dist/chunk-RI6DFQCA.js.map +0 -1
- package/dist/chunk-RLUNEEGM.js +0 -336
- package/dist/chunk-RLUNEEGM.js.map +0 -1
- package/dist/chunk-RQROZLH3.js +0 -1153
- package/dist/chunk-RQROZLH3.js.map +0 -1
- package/dist/chunk-S5QKNXLQ.js +0 -1430
- package/dist/chunk-S5QKNXLQ.js.map +0 -1
- package/dist/chunk-SBTA6B6Y.mjs +0 -8014
- package/dist/chunk-SBTA6B6Y.mjs.map +0 -1
- package/dist/chunk-SFMNUVDN.mjs +0 -49
- package/dist/chunk-SFMNUVDN.mjs.map +0 -1
- package/dist/chunk-SG7CWD2R.js +0 -138
- package/dist/chunk-SG7CWD2R.js.map +0 -1
- package/dist/chunk-SHLWA6JY.mjs +0 -26
- package/dist/chunk-SHLWA6JY.mjs.map +0 -1
- package/dist/chunk-SNAQBZPT.js +0 -68
- package/dist/chunk-SNAQBZPT.js.map +0 -1
- package/dist/chunk-SWIKKSKL.js +0 -19
- package/dist/chunk-SWIKKSKL.js.map +0 -1
- package/dist/chunk-TBXWJJGT.js +0 -468
- package/dist/chunk-TBXWJJGT.js.map +0 -1
- package/dist/chunk-TIFVAASU.mjs +0 -14279
- package/dist/chunk-TMVKRQGJ.mjs +0 -64
- package/dist/chunk-TMVKRQGJ.mjs.map +0 -1
- package/dist/chunk-TPDDSEL3.mjs +0 -75
- package/dist/chunk-TPDDSEL3.mjs.map +0 -1
- package/dist/chunk-TST2IKYO.js +0 -264
- package/dist/chunk-TST2IKYO.js.map +0 -1
- package/dist/chunk-TULCHQX2.js +0 -29
- package/dist/chunk-TULCHQX2.js.map +0 -1
- package/dist/chunk-U4CYO4NG.js +0 -195
- package/dist/chunk-U4CYO4NG.js.map +0 -1
- package/dist/chunk-U5NFIHLY.js +0 -158
- package/dist/chunk-U5NFIHLY.js.map +0 -1
- package/dist/chunk-UCMMIGC6.mjs +0 -156
- package/dist/chunk-UCMMIGC6.mjs.map +0 -1
- package/dist/chunk-UHYRVALN.mjs +0 -98
- package/dist/chunk-UHYRVALN.mjs.map +0 -1
- package/dist/chunk-UO6KTHBQ.mjs +0 -125
- package/dist/chunk-UO6KTHBQ.mjs.map +0 -1
- package/dist/chunk-USQPRLSG.mjs +0 -151
- package/dist/chunk-USQPRLSG.mjs.map +0 -1
- package/dist/chunk-UZKXOZHR.js +0 -23
- package/dist/chunk-UZKXOZHR.js.map +0 -1
- package/dist/chunk-VDEQVXNV.js +0 -176
- package/dist/chunk-VDEQVXNV.js.map +0 -1
- package/dist/chunk-VIGRGMWR.mjs +0 -229
- package/dist/chunk-VIGRGMWR.mjs.map +0 -1
- package/dist/chunk-VJMPIRSD.js +0 -31
- package/dist/chunk-VJMPIRSD.js.map +0 -1
- package/dist/chunk-VMNPLCZB.js +0 -533
- package/dist/chunk-VMNPLCZB.js.map +0 -1
- package/dist/chunk-VQL7XDIY.mjs +0 -43
- package/dist/chunk-VQL7XDIY.mjs.map +0 -1
- package/dist/chunk-VS67QHNX.mjs +0 -34
- package/dist/chunk-VS67QHNX.mjs.map +0 -1
- package/dist/chunk-W7IAG5YD.js +0 -108
- package/dist/chunk-W7IAG5YD.js.map +0 -1
- package/dist/chunk-WIWHM47B.mjs +0 -525
- package/dist/chunk-WIWHM47B.mjs.map +0 -1
- package/dist/chunk-WRRVYPMY.mjs +0 -535
- package/dist/chunk-WRRVYPMY.mjs.map +0 -1
- package/dist/chunk-WS7MH3GD.js +0 -40
- package/dist/chunk-WS7MH3GD.js.map +0 -1
- package/dist/chunk-WSPGXSBU.mjs +0 -202
- package/dist/chunk-WSPGXSBU.mjs.map +0 -1
- package/dist/chunk-XXSSUCJB.js +0 -14285
- package/dist/chunk-XZHR4E2D.js +0 -83
- package/dist/chunk-XZHR4E2D.js.map +0 -1
- package/dist/chunk-Y2CP5J6Q.js +0 -116
- package/dist/chunk-Y2CP5J6Q.js.map +0 -1
- package/dist/chunk-YACU35MY.js +0 -937
- package/dist/chunk-YACU35MY.js.map +0 -1
- package/dist/chunk-YBKALLBH.js +0 -46
- package/dist/chunk-YBKALLBH.js.map +0 -1
- package/dist/chunk-YMZNEDFP.js +0 -39
- package/dist/chunk-YMZNEDFP.js.map +0 -1
- package/dist/chunk-YPGUV6BT.mjs +0 -30
- package/dist/chunk-YPGUV6BT.mjs.map +0 -1
- package/dist/chunk-YRKWJCML.mjs +0 -150
- package/dist/chunk-YRKWJCML.mjs.map +0 -1
- package/dist/chunk-YU7QZ3PP.mjs +0 -45
- package/dist/chunk-YU7QZ3PP.mjs.map +0 -1
- package/dist/chunk-YVJASVVK.js +0 -97
- package/dist/chunk-YVJASVVK.js.map +0 -1
- package/dist/chunk-YZJ22HUQ.js +0 -29
- package/dist/chunk-YZJ22HUQ.js.map +0 -1
- package/dist/chunk-Z2URIOKG.mjs +0 -36
- package/dist/chunk-Z2URIOKG.mjs.map +0 -1
- package/dist/chunk-ZEBOOUBP.mjs +0 -128
- package/dist/chunk-ZEBOOUBP.mjs.map +0 -1
- package/dist/chunk-ZN4HBK5C.mjs +0 -17
- package/dist/chunk-ZN4HBK5C.mjs.map +0 -1
- package/dist/chunk-ZOBUA65N.js +0 -1079
- package/dist/chunk-ZOBUA65N.js.map +0 -1
- package/dist/chunk-ZUQSVCMD.js +0 -325
- package/dist/chunk-ZVBLXXNJ.mjs +0 -53
- package/dist/chunk-ZVBLXXNJ.mjs.map +0 -1
- package/dist/chunk-ZZQAGCSI.mjs +0 -43
- package/dist/chunk-ZZQAGCSI.mjs.map +0 -1
- package/dist/cli/agent/checks.d.ts +0 -96
- package/dist/cli/agent/checks.d.ts.map +0 -1
- package/dist/cli/agent/context.d.ts +0 -50
- package/dist/cli/agent/context.d.ts.map +0 -1
- package/dist/cli/agent/envelope.d.ts +0 -98
- package/dist/cli/agent/envelope.d.ts.map +0 -1
- package/dist/cli/agent/errors.d.ts +0 -36
- package/dist/cli/agent/errors.d.ts.map +0 -1
- package/dist/cli/agent/output.d.ts +0 -41
- package/dist/cli/agent/output.d.ts.map +0 -1
- package/dist/cli/agent/ssr-bailout.d.ts +0 -27
- package/dist/cli/agent/ssr-bailout.d.ts.map +0 -1
- package/dist/cli/api/sonor.d.ts +0 -39
- package/dist/cli/api/sonor.d.ts.map +0 -1
- package/dist/cli/codemod/diff.d.ts +0 -14
- package/dist/cli/codemod/diff.d.ts.map +0 -1
- package/dist/cli/codemod/engine.d.ts +0 -26
- package/dist/cli/codemod/engine.d.ts.map +0 -1
- package/dist/cli/codemod/transforms.d.ts +0 -31
- package/dist/cli/codemod/transforms.d.ts.map +0 -1
- package/dist/cli/commands/api-routes.d.ts +0 -13
- package/dist/cli/commands/api-routes.d.ts.map +0 -1
- package/dist/cli/commands/codemod.d.ts +0 -21
- package/dist/cli/commands/codemod.d.ts.map +0 -1
- package/dist/cli/commands/doctor.d.ts +0 -27
- package/dist/cli/commands/doctor.d.ts.map +0 -1
- package/dist/cli/commands/faqs.d.ts +0 -16
- package/dist/cli/commands/faqs.d.ts.map +0 -1
- package/dist/cli/commands/geo.d.ts +0 -18
- package/dist/cli/commands/geo.d.ts.map +0 -1
- package/dist/cli/commands/images.d.ts +0 -85
- package/dist/cli/commands/images.d.ts.map +0 -1
- package/dist/cli/commands/init.d.ts +0 -21
- package/dist/cli/commands/init.d.ts.map +0 -1
- package/dist/cli/commands/install.d.ts +0 -15
- package/dist/cli/commands/install.d.ts.map +0 -1
- package/dist/cli/commands/locations.d.ts +0 -55
- package/dist/cli/commands/locations.d.ts.map +0 -1
- package/dist/cli/commands/manifest.d.ts +0 -17
- package/dist/cli/commands/manifest.d.ts.map +0 -1
- package/dist/cli/commands/migrate.d.ts +0 -19
- package/dist/cli/commands/migrate.d.ts.map +0 -1
- package/dist/cli/commands/next16.d.ts +0 -10
- package/dist/cli/commands/next16.d.ts.map +0 -1
- package/dist/cli/commands/og.d.ts +0 -117
- package/dist/cli/commands/og.d.ts.map +0 -1
- package/dist/cli/commands/scaffold.d.ts +0 -22
- package/dist/cli/commands/scaffold.d.ts.map +0 -1
- package/dist/cli/commands/scan.d.ts +0 -18
- package/dist/cli/commands/scan.d.ts.map +0 -1
- package/dist/cli/commands/setup.d.ts +0 -35
- package/dist/cli/commands/setup.d.ts.map +0 -1
- package/dist/cli/commands/sync.d.ts +0 -22
- package/dist/cli/commands/sync.d.ts.map +0 -1
- package/dist/cli/commands/upgrade.d.ts +0 -15
- package/dist/cli/commands/upgrade.d.ts.map +0 -1
- package/dist/cli/commands/verify.d.ts +0 -22
- package/dist/cli/commands/verify.d.ts.map +0 -1
- package/dist/cli/config.d.ts +0 -31
- package/dist/cli/config.d.ts.map +0 -1
- package/dist/cli/generators/index.d.ts +0 -60
- package/dist/cli/generators/index.d.ts.map +0 -1
- package/dist/cli/index.d.ts +0 -15
- package/dist/cli/index.d.ts.map +0 -1
- package/dist/cli/index.js +0 -32904
- package/dist/cli/index.mjs +0 -32872
- package/dist/cli/migrator/index.d.ts +0 -92
- package/dist/cli/migrator/index.d.ts.map +0 -1
- package/dist/cli/scanner/index.d.ts +0 -129
- package/dist/cli/scanner/index.d.ts.map +0 -1
- package/dist/cli/state.d.ts +0 -7
- package/dist/cli/state.d.ts.map +0 -1
- package/dist/client/SiteKitCredential.d.ts.map +0 -1
- package/dist/client/index.d.ts.map +0 -1
- package/dist/client/index.js.map +0 -1
- package/dist/client/index.mjs +0 -27
- package/dist/client/index.mjs.map +0 -1
- package/dist/cms/CmsPage.d.ts.map +0 -1
- package/dist/cms/CmsPreview.d.ts.map +0 -1
- package/dist/cms/CmsSection.d.ts.map +0 -1
- package/dist/cms/PortableTextRenderer.d.ts.map +0 -1
- package/dist/cms/index.d.ts.map +0 -1
- package/dist/cms/index.js.map +0 -1
- package/dist/cms/index.mjs +0 -389
- package/dist/cms/index.mjs.map +0 -1
- package/dist/cms/sanity-image.d.ts.map +0 -1
- package/dist/cms/sections/CtaSection.d.ts.map +0 -1
- package/dist/cms/sections/CustomSection.d.ts.map +0 -1
- package/dist/cms/sections/FaqSection.d.ts.map +0 -1
- package/dist/cms/sections/FormSection.d.ts.map +0 -1
- package/dist/cms/sections/GallerySection.d.ts.map +0 -1
- package/dist/cms/sections/HeroSection.d.ts.map +0 -1
- package/dist/cms/sections/RichTextSection.d.ts.map +0 -1
- package/dist/cms/sections/TestimonialsSection.d.ts.map +0 -1
- package/dist/cms/sections/index.d.ts.map +0 -1
- package/dist/cms/server-api.d.ts.map +0 -1
- package/dist/cms/server.d.ts.map +0 -1
- package/dist/cms/server.js.map +0 -1
- package/dist/cms/server.mjs +0 -5
- package/dist/cms/server.mjs.map +0 -1
- package/dist/cms/types.d.ts.map +0 -1
- package/dist/commerce/CalendarView.d.ts.map +0 -1
- package/dist/commerce/CheckoutForm.d.ts.map +0 -1
- package/dist/commerce/EventCalendar.d.ts.map +0 -1
- package/dist/commerce/EventCheckout.d.ts.map +0 -1
- package/dist/commerce/EventEmbed.d.ts.map +0 -1
- package/dist/commerce/EventModal.d.ts.map +0 -1
- package/dist/commerce/EventTile.d.ts.map +0 -1
- package/dist/commerce/EventsAgenda.d.ts.map +0 -1
- package/dist/commerce/EventsWidget.d.ts.map +0 -1
- package/dist/commerce/OfferingCard.d.ts.map +0 -1
- package/dist/commerce/OfferingList.d.ts.map +0 -1
- package/dist/commerce/ProductDetail.d.ts.map +0 -1
- package/dist/commerce/ProductEmbed.d.ts.map +0 -1
- package/dist/commerce/ProductGrid.d.ts.map +0 -1
- package/dist/commerce/ProductPage.d.ts.map +0 -1
- package/dist/commerce/RegistrationForm.d.ts.map +0 -1
- package/dist/commerce/SizeChart.d.ts.map +0 -1
- package/dist/commerce/UpcomingEvents.d.ts.map +0 -1
- package/dist/commerce/api.d.ts.map +0 -1
- package/dist/commerce/events-extras.d.ts.map +0 -1
- package/dist/commerce/index.d.ts.map +0 -1
- package/dist/commerce/index.js.map +0 -1
- package/dist/commerce/index.mjs +0 -15
- package/dist/commerce/index.mjs.map +0 -1
- package/dist/commerce/server.d.ts.map +0 -1
- package/dist/commerce/server.js.map +0 -1
- package/dist/commerce/server.mjs +0 -237
- package/dist/commerce/server.mjs.map +0 -1
- package/dist/commerce/types.d.ts.map +0 -1
- package/dist/commerce/useEventModal.d.ts.map +0 -1
- package/dist/commerce/utils.d.ts.map +0 -1
- package/dist/config/index.d.ts.map +0 -1
- package/dist/config/index.js.map +0 -1
- package/dist/config/index.mjs +0 -116
- package/dist/config/index.mjs.map +0 -1
- package/dist/cta-bar/CtaBar.d.ts.map +0 -1
- package/dist/cta-bar/CtaBarBehavior.d.ts.map +0 -1
- package/dist/cta-bar/client.d.ts.map +0 -1
- package/dist/cta-bar/client.js.map +0 -1
- package/dist/cta-bar/client.mjs +0 -6
- package/dist/cta-bar/client.mjs.map +0 -1
- package/dist/cta-bar/index.d.ts.map +0 -1
- package/dist/cta-bar/index.js.map +0 -1
- package/dist/cta-bar/index.mjs +0 -221
- package/dist/cta-bar/index.mjs.map +0 -1
- package/dist/cta-bar/styles.d.ts.map +0 -1
- package/dist/discover-LPN55L5B.js +0 -21
- package/dist/discover-LPN55L5B.js.map +0 -1
- package/dist/discover-QGA6QFSR.mjs +0 -4
- package/dist/discover-QGA6QFSR.mjs.map +0 -1
- package/dist/engage/ChatWidget.d.ts.map +0 -1
- package/dist/engage/DesignRenderer.d.ts.map +0 -1
- package/dist/engage/EchoUiActions.d.ts.map +0 -1
- package/dist/engage/EngageWidget.d.ts.map +0 -1
- package/dist/engage/brand-color.d.ts.map +0 -1
- package/dist/engage/chat-messages.d.ts.map +0 -1
- package/dist/engage/echo-config.d.ts.map +0 -1
- package/dist/engage/element-rules.d.ts.map +0 -1
- package/dist/engage/index.d.ts.map +0 -1
- package/dist/engage/index.js.map +0 -1
- package/dist/engage/index.mjs +0 -50
- package/dist/engage/index.mjs.map +0 -1
- package/dist/engage/launcher-placement.d.ts.map +0 -1
- package/dist/engage/socket-loader.d.ts.map +0 -1
- package/dist/engage/types.d.ts.map +0 -1
- package/dist/fleet/FleetHeartbeat.d.ts.map +0 -1
- package/dist/fleet/contract.d.ts.map +0 -1
- package/dist/fleet/contract.js.map +0 -1
- package/dist/fleet/contract.mjs +0 -4
- package/dist/fleet/contract.mjs.map +0 -1
- package/dist/fleet/heartbeat.d.ts.map +0 -1
- package/dist/fleet/index.d.ts.map +0 -1
- package/dist/fleet/index.js.map +0 -1
- package/dist/fleet/index.mjs +0 -11
- package/dist/fleet/index.mjs.map +0 -1
- package/dist/forms/DatePicker.d.ts.map +0 -1
- package/dist/forms/FileField.d.ts.map +0 -1
- package/dist/forms/FormCelebration.d.ts.map +0 -1
- package/dist/forms/FormClient.d.ts.map +0 -1
- package/dist/forms/FormEnhancer.d.ts.map +0 -1
- package/dist/forms/FormField.d.ts.map +0 -1
- package/dist/forms/FormSpotlight.d.ts.map +0 -1
- package/dist/forms/FormStage.d.ts.map +0 -1
- package/dist/forms/HoneypotField.d.ts.map +0 -1
- package/dist/forms/ManagedForm.d.ts.map +0 -1
- package/dist/forms/ServerForm.d.ts.map +0 -1
- package/dist/forms/StaticForm.d.ts.map +0 -1
- package/dist/forms/contract.d.ts.map +0 -1
- package/dist/forms/contract.js.map +0 -1
- package/dist/forms/contract.mjs +0 -4
- package/dist/forms/contract.mjs.map +0 -1
- package/dist/forms/defaultSuccessMessage.d.ts.map +0 -1
- package/dist/forms/delight.d.ts.map +0 -1
- package/dist/forms/experience-chrome.d.ts.map +0 -1
- package/dist/forms/experience-plan.d.ts.map +0 -1
- package/dist/forms/field-controls.d.ts.map +0 -1
- package/dist/forms/field-interactions.d.ts.map +0 -1
- package/dist/forms/field-rules.d.ts.map +0 -1
- package/dist/forms/form-values.d.ts.map +0 -1
- package/dist/forms/formsApi.d.ts.map +0 -1
- package/dist/forms/ga4-identity.d.ts.map +0 -1
- package/dist/forms/index.d.ts.map +0 -1
- package/dist/forms/index.js.map +0 -1
- package/dist/forms/index.mjs +0 -341
- package/dist/forms/index.mjs.map +0 -1
- package/dist/forms/normalize-config.d.ts.map +0 -1
- package/dist/forms/recaptcha-warmup.d.ts.map +0 -1
- package/dist/forms/recaptcha.d.ts.map +0 -1
- package/dist/forms/server.d.ts.map +0 -1
- package/dist/forms/server.js.map +0 -1
- package/dist/forms/server.mjs +0 -61
- package/dist/forms/server.mjs.map +0 -1
- package/dist/forms/static.d.ts.map +0 -1
- package/dist/forms/static.js.map +0 -1
- package/dist/forms/static.mjs +0 -8
- package/dist/forms/static.mjs.map +0 -1
- package/dist/forms/submitForm.d.ts.map +0 -1
- package/dist/forms/tracking-session.d.ts.map +0 -1
- package/dist/forms/types.d.ts.map +0 -1
- package/dist/forms/useForm.d.ts.map +0 -1
- package/dist/forms/useFormTracking.d.ts.map +0 -1
- package/dist/images/ManagedFavicon.d.ts.map +0 -1
- package/dist/images/ManagedImage.d.ts.map +0 -1
- package/dist/images/api.d.ts.map +0 -1
- package/dist/images/index.d.ts.map +0 -1
- package/dist/images/index.js.map +0 -1
- package/dist/images/index.mjs +0 -8
- package/dist/images/index.mjs.map +0 -1
- package/dist/images/server.d.ts.map +0 -1
- package/dist/images/server.js.map +0 -1
- package/dist/images/server.mjs +0 -4
- package/dist/images/server.mjs.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/index.mjs +0 -172
- package/dist/index.mjs.map +0 -1
- package/dist/landing/LandingPage.d.ts.map +0 -1
- package/dist/landing/contract.d.ts.map +0 -1
- package/dist/landing/index.d.ts.map +0 -1
- package/dist/landing/index.js.map +0 -1
- package/dist/landing/index.mjs +0 -5
- package/dist/landing/index.mjs.map +0 -1
- package/dist/landing/metadata.d.ts.map +0 -1
- package/dist/landing/server.d.ts.map +0 -1
- package/dist/landing/server.js.map +0 -1
- package/dist/landing/server.mjs +0 -4
- package/dist/landing/server.mjs.map +0 -1
- package/dist/layout/SiteKitClientProviders.d.ts.map +0 -1
- package/dist/layout/SiteKitLayout.d.ts.map +0 -1
- package/dist/layout/SpeculationRules.d.ts.map +0 -1
- package/dist/layout/client.d.ts.map +0 -1
- package/dist/layout/client.js.map +0 -1
- package/dist/layout/client.mjs +0 -18
- package/dist/layout/client.mjs.map +0 -1
- package/dist/layout/index.d.ts.map +0 -1
- package/dist/layout/index.js.map +0 -1
- package/dist/layout/index.mjs +0 -105
- package/dist/layout/index.mjs.map +0 -1
- package/dist/layout/types.d.ts.map +0 -1
- package/dist/lib-6GWWPDJR.js +0 -28
- package/dist/lib-BD4KKQBI.mjs +0 -4
- package/dist/lib-N5PD6JNJ.mjs +0 -3
- package/dist/lib-WFB5RLEQ.js +0 -31
- package/dist/llms/AEOComponents.d.ts.map +0 -1
- package/dist/llms/SpeakableSchema.d.ts.map +0 -1
- package/dist/llms/aiRobots.d.ts.map +0 -1
- package/dist/llms/api.d.ts.map +0 -1
- package/dist/llms/client.d.ts.map +0 -1
- package/dist/llms/client.js.map +0 -1
- package/dist/llms/client.mjs +0 -5
- package/dist/llms/client.mjs.map +0 -1
- package/dist/llms/contract.d.ts.map +0 -1
- package/dist/llms/contract.js.map +0 -1
- package/dist/llms/contract.mjs +0 -4
- package/dist/llms/contract.mjs.map +0 -1
- package/dist/llms/discovery-headers.d.ts.map +0 -1
- package/dist/llms/generateLLMsTxt.d.ts.map +0 -1
- package/dist/llms/handlers.d.ts.map +0 -1
- package/dist/llms/humanize-industry.d.ts.map +0 -1
- package/dist/llms/index.d.ts.map +0 -1
- package/dist/llms/index.js.map +0 -1
- package/dist/llms/index.mjs +0 -286
- package/dist/llms/index.mjs.map +0 -1
- package/dist/llms/links.d.ts.map +0 -1
- package/dist/llms/revalidate.d.ts.map +0 -1
- package/dist/llms/seo-revalidate.d.ts.map +0 -1
- package/dist/llms/sourcedFacts.d.ts.map +0 -1
- package/dist/llms/types.d.ts.map +0 -1
- package/dist/llms/wiring.d.ts +0 -103
- package/dist/llms/wiring.d.ts.map +0 -1
- package/dist/llms/writeLLMsTxt.d.ts.map +0 -1
- package/dist/manifest/index.d.ts.map +0 -1
- package/dist/manifest/index.js.map +0 -1
- package/dist/manifest/index.mjs +0 -83
- package/dist/manifest/index.mjs.map +0 -1
- package/dist/maps/GoogleMap.d.ts.map +0 -1
- package/dist/maps/NeighborhoodMap.d.ts.map +0 -1
- package/dist/maps/api.d.ts.map +0 -1
- package/dist/maps/index.d.ts.map +0 -1
- package/dist/maps/index.js.map +0 -1
- package/dist/maps/index.mjs +0 -361
- package/dist/maps/index.mjs.map +0 -1
- package/dist/maps/types.d.ts.map +0 -1
- package/dist/mcp/WebMcpTools.d.ts.map +0 -1
- package/dist/mcp/client.d.ts.map +0 -1
- package/dist/mcp/client.js.map +0 -1
- package/dist/mcp/client.mjs +0 -129
- package/dist/mcp/client.mjs.map +0 -1
- package/dist/mcp/declarative.d.ts.map +0 -1
- package/dist/mcp/handlers.d.ts.map +0 -1
- package/dist/mcp/index.d.ts.map +0 -1
- package/dist/mcp/index.js.map +0 -1
- package/dist/mcp/index.mjs +0 -509
- package/dist/mcp/index.mjs.map +0 -1
- package/dist/mcp/protocol.d.ts.map +0 -1
- package/dist/mcp/serverCard.d.ts.map +0 -1
- package/dist/mcp/transport.d.ts.map +0 -1
- package/dist/mcp/transport.js.map +0 -1
- package/dist/mcp/transport.mjs +0 -123
- package/dist/mcp/transport.mjs.map +0 -1
- package/dist/mcp/types.d.ts.map +0 -1
- package/dist/motion/CountUp.d.ts.map +0 -1
- package/dist/motion/Parallax.d.ts.map +0 -1
- package/dist/motion/Reveal.d.ts.map +0 -1
- package/dist/motion/ScrollScene.d.ts.map +0 -1
- package/dist/motion/engine.d.ts.map +0 -1
- package/dist/motion/failsafe.d.ts.map +0 -1
- package/dist/motion/gsap.d.ts.map +0 -1
- package/dist/motion/gsap.js.map +0 -1
- package/dist/motion/gsap.mjs +0 -220
- package/dist/motion/gsap.mjs.map +0 -1
- package/dist/motion/index.d.ts.map +0 -1
- package/dist/motion/index.js.map +0 -1
- package/dist/motion/index.mjs +0 -209
- package/dist/motion/index.mjs.map +0 -1
- package/dist/motion/three.d.ts.map +0 -1
- package/dist/motion/three.js.map +0 -1
- package/dist/motion/three.mjs +0 -145
- package/dist/motion/three.mjs.map +0 -1
- package/dist/og/config.d.ts.map +0 -1
- package/dist/og/contrast.d.ts.map +0 -1
- package/dist/og/index.d.ts.map +0 -1
- package/dist/og/index.js.map +0 -1
- package/dist/og/index.mjs +0 -6
- package/dist/og/index.mjs.map +0 -1
- package/dist/og/pages.d.ts.map +0 -1
- package/dist/og/route-copy.d.ts +0 -34
- package/dist/og/route-copy.d.ts.map +0 -1
- package/dist/og/route-fit.d.ts.map +0 -1
- package/dist/og/route.d.ts.map +0 -1
- package/dist/og/route.js.map +0 -1
- package/dist/og/route.mjs +0 -239
- package/dist/og/route.mjs.map +0 -1
- package/dist/og/template.d.ts.map +0 -1
- package/dist/og/wiring.d.ts +0 -100
- package/dist/og/wiring.d.ts.map +0 -1
- package/dist/portfolio/contract.d.ts.map +0 -1
- package/dist/portfolio/contract.js.map +0 -1
- package/dist/portfolio/contract.mjs +0 -38
- package/dist/portfolio/contract.mjs.map +0 -1
- package/dist/proxy/index.d.ts.map +0 -1
- package/dist/proxy/index.js.map +0 -1
- package/dist/proxy/index.mjs +0 -170
- package/dist/proxy/index.mjs.map +0 -1
- package/dist/proxy/securityHeaders.d.ts.map +0 -1
- package/dist/proxy/segment.d.ts.map +0 -1
- package/dist/redirects/index.d.ts.map +0 -1
- package/dist/redirects/index.js.map +0 -1
- package/dist/redirects/index.mjs +0 -8
- package/dist/redirects/index.mjs.map +0 -1
- package/dist/redirects/not-found.d.ts +0 -31
- package/dist/redirects/not-found.d.ts.map +0 -1
- package/dist/redirects/not-found.js +0 -47
- package/dist/redirects/not-found.js.map +0 -1
- package/dist/redirects/not-found.mjs +0 -45
- package/dist/redirects/not-found.mjs.map +0 -1
- package/dist/reputation/TestimonialSection.d.ts.map +0 -1
- package/dist/reputation/api.d.ts.map +0 -1
- package/dist/reputation/index.d.ts.map +0 -1
- package/dist/reputation/index.js.map +0 -1
- package/dist/reputation/index.mjs +0 -5
- package/dist/reputation/index.mjs.map +0 -1
- package/dist/reputation/server.d.ts.map +0 -1
- package/dist/reputation/server.js.map +0 -1
- package/dist/reputation/server.mjs +0 -4
- package/dist/reputation/server.mjs.map +0 -1
- package/dist/reputation/types.d.ts.map +0 -1
- package/dist/robots/index.d.ts.map +0 -1
- package/dist/robots/index.js.map +0 -1
- package/dist/robots/index.mjs +0 -53
- package/dist/robots/index.mjs.map +0 -1
- package/dist/robots/indexnow.d.ts.map +0 -1
- package/dist/robots/indexnow.js.map +0 -1
- package/dist/robots/indexnow.mjs +0 -34
- package/dist/robots/indexnow.mjs.map +0 -1
- package/dist/robots/next-internals.d.ts.map +0 -1
- package/dist/search/contract.d.ts +0 -62
- package/dist/search/contract.d.ts.map +0 -1
- package/dist/search/contract.js +0 -17
- package/dist/search/contract.js.map +0 -1
- package/dist/search/contract.mjs +0 -4
- package/dist/search/contract.mjs.map +0 -1
- package/dist/search/index.d.ts +0 -52
- package/dist/search/index.d.ts.map +0 -1
- package/dist/search/index.js +0 -105
- package/dist/search/index.js.map +0 -1
- package/dist/search/index.mjs +0 -99
- package/dist/search/index.mjs.map +0 -1
- package/dist/seo/LocationPageContent.d.ts +0 -64
- package/dist/seo/LocationPageContent.d.ts.map +0 -1
- package/dist/seo/ManagedContent.d.ts.map +0 -1
- package/dist/seo/ManagedFAQ.d.ts.map +0 -1
- package/dist/seo/ManagedInternalLinks.d.ts.map +0 -1
- package/dist/seo/ManagedSchema.d.ts.map +0 -1
- package/dist/seo/ManagedScripts.d.ts.map +0 -1
- package/dist/seo/api.d.ts.map +0 -1
- package/dist/seo/client.d.ts.map +0 -1
- package/dist/seo/client.js.map +0 -1
- package/dist/seo/client.mjs +0 -10
- package/dist/seo/client.mjs.map +0 -1
- package/dist/seo/getManagedMetadata.d.ts.map +0 -1
- package/dist/seo/groundingSchema.d.ts.map +0 -1
- package/dist/seo/index.d.ts.map +0 -1
- package/dist/seo/index.js.map +0 -1
- package/dist/seo/index.mjs +0 -701
- package/dist/seo/index.mjs.map +0 -1
- package/dist/seo/register-sitemap-cli-impl.d.ts.map +0 -1
- package/dist/seo/register-sitemap-cli.d.ts.map +0 -1
- package/dist/seo/register-sitemap-cli.mjs +0 -528
- package/dist/seo/register-sitemap-request.d.ts.map +0 -1
- package/dist/seo/routing.d.ts.map +0 -1
- package/dist/seo/safeJsonLd.d.ts.map +0 -1
- package/dist/seo/schema-filter.d.ts.map +0 -1
- package/dist/seo/server-api.d.ts.map +0 -1
- package/dist/seo/server.d.ts.map +0 -1
- package/dist/seo/server.js.map +0 -1
- package/dist/seo/server.mjs +0 -11
- package/dist/seo/server.mjs.map +0 -1
- package/dist/seo/types.d.ts.map +0 -1
- package/dist/seo/withManagedMetadata.d.ts.map +0 -1
- package/dist/seo-meta/contract.d.ts.map +0 -1
- package/dist/seo-meta/contract.js.map +0 -1
- package/dist/seo-meta/contract.mjs +0 -4
- package/dist/seo-meta/contract.mjs.map +0 -1
- package/dist/seo-pages/contract.d.ts.map +0 -1
- package/dist/seo-pages/contract.js.map +0 -1
- package/dist/seo-pages/contract.mjs +0 -45
- package/dist/seo-pages/contract.mjs.map +0 -1
- package/dist/server/index.d.ts.map +0 -1
- package/dist/server/index.js.map +0 -1
- package/dist/server/index.mjs +0 -7
- package/dist/server/index.mjs.map +0 -1
- package/dist/server/mint-site-token.d.ts.map +0 -1
- package/dist/server/server-fetch.d.ts.map +0 -1
- package/dist/server-api-7F5P6CSH.mjs +0 -9
- package/dist/server-api-7F5P6CSH.mjs.map +0 -1
- package/dist/server-api-OC5JNK6R.js +0 -86
- package/dist/server-api-OC5JNK6R.js.map +0 -1
- package/dist/setup/index.d.ts +0 -12
- package/dist/setup/index.d.ts.map +0 -1
- package/dist/setup/index.js +0 -4
- package/dist/setup/index.js.map +0 -1
- package/dist/setup/index.mjs +0 -3
- package/dist/setup/index.mjs.map +0 -1
- package/dist/shared/build-entries.d.ts.map +0 -1
- package/dist/shared/color.d.ts.map +0 -1
- package/dist/shared/defer.d.ts.map +0 -1
- package/dist/shared/fetchWithRetry.d.ts.map +0 -1
- package/dist/shared/frame.d.ts.map +0 -1
- package/dist/shared/fresh-fetch.d.ts.map +0 -1
- package/dist/shared/glass.d.ts.map +0 -1
- package/dist/shared/identity.d.ts.map +0 -1
- package/dist/shared/next-files.d.ts.map +0 -1
- package/dist/shared/page-leave.d.ts.map +0 -1
- package/dist/shared/publishCredential.d.ts.map +0 -1
- package/dist/shared/reporting-gate.d.ts.map +0 -1
- package/dist/shared/request-guards.d.ts.map +0 -1
- package/dist/shared/siteToken.d.ts.map +0 -1
- package/dist/shared/sonorFetch.d.ts.map +0 -1
- package/dist/shared/source-graph.d.ts.map +0 -1
- package/dist/shared/uuid.d.ts.map +0 -1
- package/dist/shared/version.d.ts.map +0 -1
- package/dist/shared/visual-viewport-gap.d.ts.map +0 -1
- package/dist/signal/SignalBridge.d.ts.map +0 -1
- package/dist/signal/SignalCore.d.ts.map +0 -1
- package/dist/signal/SignalExperiment.d.ts.map +0 -1
- package/dist/signal/index.d.ts.map +0 -1
- package/dist/signal/index.js.map +0 -1
- package/dist/signal/index.mjs +0 -6
- package/dist/signal/index.mjs.map +0 -1
- package/dist/signal/store.d.ts.map +0 -1
- package/dist/signal/types.d.ts.map +0 -1
- package/dist/site-config/index.d.ts.map +0 -1
- package/dist/site-config/index.js.map +0 -1
- package/dist/site-config/index.mjs +0 -4
- package/dist/site-config/index.mjs.map +0 -1
- package/dist/sitemap/discover.d.ts.map +0 -1
- package/dist/sitemap/index.d.ts.map +0 -1
- package/dist/sitemap/index.js.map +0 -1
- package/dist/sitemap/index.mjs +0 -549
- package/dist/sitemap/index.mjs.map +0 -1
- package/dist/sitemap/shared.d.ts.map +0 -1
- package/dist/sites/contract.d.ts.map +0 -1
- package/dist/sites/contract.js.map +0 -1
- package/dist/sites/contract.mjs +0 -5
- package/dist/sites/contract.mjs.map +0 -1
- package/dist/sites/normalize.d.ts.map +0 -1
- package/dist/sites/resolve.d.ts.map +0 -1
- package/dist/sites/site-param.d.ts.map +0 -1
- package/dist/slots/ManagedSlot.d.ts.map +0 -1
- package/dist/slots/contract.d.ts.map +0 -1
- package/dist/slots/contract.js.map +0 -1
- package/dist/slots/contract.mjs +0 -4
- package/dist/slots/contract.mjs.map +0 -1
- package/dist/slots/index.d.ts.map +0 -1
- package/dist/slots/index.js.map +0 -1
- package/dist/slots/index.mjs +0 -142
- package/dist/slots/index.mjs.map +0 -1
- package/dist/slots/revalidate.d.ts.map +0 -1
- package/dist/slots/server-api.d.ts.map +0 -1
- package/dist/socket-loader-2NYBMBFQ.js +0 -16
- package/dist/socket-loader-2NYBMBFQ.js.map +0 -1
- package/dist/socket-loader-JA2DI2RT.mjs +0 -14
- package/dist/socket-loader-JA2DI2RT.mjs.map +0 -1
- package/dist/sync/AddToCalendar.d.ts.map +0 -1
- package/dist/sync/BookingWidget.d.ts.map +0 -1
- package/dist/sync/MeetingFormatStep.d.ts.map +0 -1
- package/dist/sync/api.d.ts.map +0 -1
- package/dist/sync/booking-flow.d.ts.map +0 -1
- package/dist/sync/index.d.ts.map +0 -1
- package/dist/sync/index.js.map +0 -1
- package/dist/sync/index.mjs +0 -7
- package/dist/sync/index.mjs.map +0 -1
- package/dist/sync/types.d.ts.map +0 -1
- package/dist/types.d.ts.map +0 -1
- package/dist/web-vitals.attribution-CHXXWO72.mjs +0 -524
- package/dist/web-vitals.attribution-CHXXWO72.mjs.map +0 -1
- package/dist/web-vitals.attribution-SQVZNHN3.js +0 -535
- package/dist/web-vitals.attribution-SQVZNHN3.js.map +0 -1
- package/dist/writeLLMsTxt-IYJILIU3.mjs +0 -11
- package/dist/writeLLMsTxt-SQG4B63X.js +0 -20
- package/scripts/postinstall.cjs +0 -67
|
@@ -0,0 +1,937 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { isFieldVisible, validateField, isFieldComplete } from './chunk-AQSNPZY4.js';
|
|
3
|
+
import { normalizeFormConfig } from './chunk-5SQK3D53.js';
|
|
4
|
+
import { DEFAULT_HONEYPOT_FIELD } from './chunk-NJCTQH2P.js';
|
|
5
|
+
import { onPageLeave } from './chunk-L2V5PUFN.js';
|
|
6
|
+
import { uuid } from './chunk-GJWI74ZZ.js';
|
|
7
|
+
import { sonorFetch, sonorBeacon } from './chunk-4WI3FU5L.js';
|
|
8
|
+
import { useRef, useCallback, useEffect, useState, useMemo } from 'react';
|
|
9
|
+
|
|
10
|
+
// src/forms/field-interactions.ts
|
|
11
|
+
var MAX_TRACKED_FIELDS = 100;
|
|
12
|
+
var MAX_FIELD_SLUG_LENGTH = 100;
|
|
13
|
+
var FieldInteractionLog = class {
|
|
14
|
+
constructor() {
|
|
15
|
+
/**
|
|
16
|
+
* The field the visitor was on, reported as `abandonment_field` when they
|
|
17
|
+
* leave. The last FOCUSED field once the form reports focus; a headless form
|
|
18
|
+
* that never wires focus falls back to the last field whose value changed.
|
|
19
|
+
*/
|
|
20
|
+
this.lastField = null;
|
|
21
|
+
this.entries = /* @__PURE__ */ new Map();
|
|
22
|
+
this.focusReported = false;
|
|
23
|
+
/** The one field holding focus, if any. Only one can, so this is a slot, not a flag per field. */
|
|
24
|
+
this.open = null;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Visitor moved focus into `slug`. Returns true when that's a new visit to
|
|
28
|
+
* the field; false for an untrackable slug or a field that already has focus.
|
|
29
|
+
*/
|
|
30
|
+
focus(slug, now = Date.now()) {
|
|
31
|
+
if (this.open?.slug === slug) return false;
|
|
32
|
+
const entry = this.entry(slug);
|
|
33
|
+
if (!entry) return false;
|
|
34
|
+
this.close(now);
|
|
35
|
+
entry.focusCount++;
|
|
36
|
+
this.open = { slug, since: now };
|
|
37
|
+
this.focusReported = true;
|
|
38
|
+
this.lastField = slug;
|
|
39
|
+
return true;
|
|
40
|
+
}
|
|
41
|
+
/** Visitor moved focus out of `slug`. */
|
|
42
|
+
blur(slug, now = Date.now()) {
|
|
43
|
+
if (this.open?.slug === slug) this.close(now);
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* `slug`'s value changed. Counts as reaching the field even without a focus
|
|
47
|
+
* event: autofill, a custom renderer that doesn't report focus, a picker
|
|
48
|
+
* that sets the value from outside the input.
|
|
49
|
+
*/
|
|
50
|
+
change(slug) {
|
|
51
|
+
if (!this.entry(slug)) return false;
|
|
52
|
+
if (!this.focusReported) this.lastField = slug;
|
|
53
|
+
return true;
|
|
54
|
+
}
|
|
55
|
+
get size() {
|
|
56
|
+
return this.entries.size;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Every field reached so far. Time for a field that still has focus counts
|
|
60
|
+
* up to `now`, so a report built as the page hides includes the field the
|
|
61
|
+
* visitor was sitting in.
|
|
62
|
+
*/
|
|
63
|
+
snapshot(isComplete, now = Date.now()) {
|
|
64
|
+
const out = {};
|
|
65
|
+
for (const [slug, entry] of this.entries) {
|
|
66
|
+
const openMs = this.open?.slug === slug ? Math.max(0, now - this.open.since) : 0;
|
|
67
|
+
out[slug] = {
|
|
68
|
+
completed: safeIsComplete(isComplete, slug),
|
|
69
|
+
focusCount: entry.focusCount,
|
|
70
|
+
timeMs: Math.round(entry.timeMs + openMs)
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
return out;
|
|
74
|
+
}
|
|
75
|
+
close(now) {
|
|
76
|
+
if (!this.open) return;
|
|
77
|
+
const entry = this.entries.get(this.open.slug);
|
|
78
|
+
if (entry) entry.timeMs += Math.max(0, now - this.open.since);
|
|
79
|
+
this.open = null;
|
|
80
|
+
}
|
|
81
|
+
entry(slug) {
|
|
82
|
+
if (typeof slug !== "string" || slug.length === 0 || slug.length > MAX_FIELD_SLUG_LENGTH) return null;
|
|
83
|
+
const existing = this.entries.get(slug);
|
|
84
|
+
if (existing) return existing;
|
|
85
|
+
if (this.entries.size >= MAX_TRACKED_FIELDS) return null;
|
|
86
|
+
const created = { focusCount: 0, timeMs: 0 };
|
|
87
|
+
this.entries.set(slug, created);
|
|
88
|
+
return created;
|
|
89
|
+
}
|
|
90
|
+
};
|
|
91
|
+
function safeIsComplete(isComplete, slug) {
|
|
92
|
+
try {
|
|
93
|
+
return isComplete(slug) === true;
|
|
94
|
+
} catch {
|
|
95
|
+
return false;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
// src/forms/tracking-session.ts
|
|
100
|
+
var SESSION_GRACE_MS = 2e3;
|
|
101
|
+
var activeSessions = /* @__PURE__ */ new Map();
|
|
102
|
+
function acquireTrackingSession(formId, start) {
|
|
103
|
+
const existing = activeSessions.get(formId);
|
|
104
|
+
if (existing) {
|
|
105
|
+
if (existing.releaseTimer) {
|
|
106
|
+
clearTimeout(existing.releaseTimer);
|
|
107
|
+
existing.releaseTimer = null;
|
|
108
|
+
}
|
|
109
|
+
existing.refCount++;
|
|
110
|
+
return existing;
|
|
111
|
+
}
|
|
112
|
+
const sessionId = uuid();
|
|
113
|
+
const session = {
|
|
114
|
+
sessionId,
|
|
115
|
+
startedAt: Date.now(),
|
|
116
|
+
// Assigned below — declared here so the object shape is complete first.
|
|
117
|
+
analyticsId: null,
|
|
118
|
+
fields: new FieldInteractionLog(),
|
|
119
|
+
interacted: false,
|
|
120
|
+
completed: false,
|
|
121
|
+
abandonSent: false,
|
|
122
|
+
onEnd: null,
|
|
123
|
+
refCount: 1,
|
|
124
|
+
releaseTimer: null
|
|
125
|
+
};
|
|
126
|
+
activeSessions.set(formId, session);
|
|
127
|
+
session.analyticsId = start(sessionId);
|
|
128
|
+
return session;
|
|
129
|
+
}
|
|
130
|
+
function releaseTrackingSession(formId, session) {
|
|
131
|
+
session.refCount--;
|
|
132
|
+
if (session.refCount > 0) return;
|
|
133
|
+
if (session.releaseTimer) return;
|
|
134
|
+
session.releaseTimer = setTimeout(() => {
|
|
135
|
+
session.releaseTimer = null;
|
|
136
|
+
if (session.refCount <= 0 && activeSessions.get(formId) === session) {
|
|
137
|
+
activeSessions.delete(formId);
|
|
138
|
+
const onEnd = session.onEnd;
|
|
139
|
+
session.onEnd = null;
|
|
140
|
+
try {
|
|
141
|
+
onEnd?.();
|
|
142
|
+
} catch {
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
}, SESSION_GRACE_MS);
|
|
146
|
+
session.releaseTimer?.unref?.();
|
|
147
|
+
}
|
|
148
|
+
function noteActivity(session) {
|
|
149
|
+
if (session.completed) return;
|
|
150
|
+
session.interacted = true;
|
|
151
|
+
session.abandonSent = false;
|
|
152
|
+
}
|
|
153
|
+
function claimAbandon(session) {
|
|
154
|
+
if (session.completed || !session.interacted || session.abandonSent) return false;
|
|
155
|
+
session.abandonSent = true;
|
|
156
|
+
return true;
|
|
157
|
+
}
|
|
158
|
+
function markCompleted(session) {
|
|
159
|
+
session.completed = true;
|
|
160
|
+
session.abandonSent = true;
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
// src/forms/useFormTracking.ts
|
|
164
|
+
function useFormTracking({
|
|
165
|
+
formId,
|
|
166
|
+
totalSteps,
|
|
167
|
+
enabled = true,
|
|
168
|
+
debug = false,
|
|
169
|
+
isFieldComplete: isFieldComplete2
|
|
170
|
+
}) {
|
|
171
|
+
const sessionRef = useRef(null);
|
|
172
|
+
const sessionIdRef = useRef("");
|
|
173
|
+
const startTimeRef = useRef(0);
|
|
174
|
+
const stepStartTimeRef = useRef(0);
|
|
175
|
+
const stepTimesRef = useRef({});
|
|
176
|
+
const currentStepRef = useRef(1);
|
|
177
|
+
const maxStepRef = useRef(1);
|
|
178
|
+
const analyticsIdRef = useRef(null);
|
|
179
|
+
const isFieldCompleteRef = useRef(isFieldComplete2);
|
|
180
|
+
isFieldCompleteRef.current = isFieldComplete2;
|
|
181
|
+
const fieldReport = useCallback((session, now) => {
|
|
182
|
+
const check = isFieldCompleteRef.current;
|
|
183
|
+
return session.fields.snapshot((slug) => check ? check(slug) : false, now);
|
|
184
|
+
}, []);
|
|
185
|
+
useEffect(() => {
|
|
186
|
+
if (!enabled) return;
|
|
187
|
+
if (!formId) {
|
|
188
|
+
if (debug) console.warn("[Forms] Tracking skipped: formId is empty");
|
|
189
|
+
return;
|
|
190
|
+
}
|
|
191
|
+
const startTracking = async (sessionId) => {
|
|
192
|
+
const apiUrl = window.__SITE_KIT_API_URL__;
|
|
193
|
+
const apiKey = window.__SITE_KIT_API_KEY__;
|
|
194
|
+
if (!apiUrl || !apiKey) {
|
|
195
|
+
if (debug) console.error("[Forms] Missing API URL or API key");
|
|
196
|
+
return null;
|
|
197
|
+
}
|
|
198
|
+
try {
|
|
199
|
+
const response = await sonorFetch(
|
|
200
|
+
`${apiUrl}/api/public/forms/analytics/start`,
|
|
201
|
+
{
|
|
202
|
+
method: "POST",
|
|
203
|
+
headers: { "Content-Type": "application/json" },
|
|
204
|
+
body: JSON.stringify({
|
|
205
|
+
formId,
|
|
206
|
+
sessionId,
|
|
207
|
+
deviceType: getDeviceType()
|
|
208
|
+
})
|
|
209
|
+
},
|
|
210
|
+
{ apiKey, retries: 0 }
|
|
211
|
+
);
|
|
212
|
+
if (!response.ok) {
|
|
213
|
+
throw new Error(`HTTP ${response.status}: ${response.statusText}`);
|
|
214
|
+
}
|
|
215
|
+
const data = await response.json();
|
|
216
|
+
if (debug) console.log("[Forms] Started tracking:", data.id);
|
|
217
|
+
return data.id ?? null;
|
|
218
|
+
} catch (error) {
|
|
219
|
+
if (debug) console.error("[Forms] Error starting tracking:", error);
|
|
220
|
+
return null;
|
|
221
|
+
}
|
|
222
|
+
};
|
|
223
|
+
const session = acquireTrackingSession(formId, startTracking);
|
|
224
|
+
sessionRef.current = session;
|
|
225
|
+
sessionIdRef.current = session.sessionId;
|
|
226
|
+
startTimeRef.current = session.startedAt;
|
|
227
|
+
stepStartTimeRef.current = Date.now();
|
|
228
|
+
let joined = true;
|
|
229
|
+
void session.analyticsId.then((id) => {
|
|
230
|
+
if (joined) analyticsIdRef.current = id;
|
|
231
|
+
});
|
|
232
|
+
const reportAbandon = (analyticsId) => {
|
|
233
|
+
if (!analyticsId) return;
|
|
234
|
+
const apiUrl = window.__SITE_KIT_API_URL__;
|
|
235
|
+
const apiKey = window.__SITE_KIT_API_KEY__;
|
|
236
|
+
if (!apiUrl || !apiKey) return;
|
|
237
|
+
if (!claimAbandon(session)) return;
|
|
238
|
+
const now = Date.now();
|
|
239
|
+
stepTimesRef.current[currentStepRef.current] = Math.floor((now - stepStartTimeRef.current) / 1e3);
|
|
240
|
+
sonorBeacon(
|
|
241
|
+
`${apiUrl}/api/public/forms/analytics/abandon`,
|
|
242
|
+
{
|
|
243
|
+
analyticsId,
|
|
244
|
+
step: currentStepRef.current,
|
|
245
|
+
maxStep: maxStepRef.current,
|
|
246
|
+
stepTimes: stepTimesRef.current,
|
|
247
|
+
totalTimeSeconds: Math.floor((now - startTimeRef.current) / 1e3),
|
|
248
|
+
fieldInteractions: fieldReport(session, now),
|
|
249
|
+
abandonmentField: session.fields.lastField
|
|
250
|
+
},
|
|
251
|
+
apiKey
|
|
252
|
+
);
|
|
253
|
+
if (debug) console.log("[Forms] Abandonment tracked:", session.fields.lastField);
|
|
254
|
+
};
|
|
255
|
+
const stopLeaveListener = onPageLeave(() => reportAbandon(analyticsIdRef.current));
|
|
256
|
+
session.onEnd = () => {
|
|
257
|
+
void session.analyticsId.then(reportAbandon);
|
|
258
|
+
};
|
|
259
|
+
return () => {
|
|
260
|
+
joined = false;
|
|
261
|
+
stopLeaveListener();
|
|
262
|
+
releaseTrackingSession(formId, session);
|
|
263
|
+
sessionRef.current = null;
|
|
264
|
+
};
|
|
265
|
+
}, [formId, enabled, debug, fieldReport]);
|
|
266
|
+
const resolveAnalyticsId = useCallback(async () => {
|
|
267
|
+
if (analyticsIdRef.current) return analyticsIdRef.current;
|
|
268
|
+
const session = sessionRef.current;
|
|
269
|
+
if (!session) return null;
|
|
270
|
+
const id = await session.analyticsId;
|
|
271
|
+
if (id) analyticsIdRef.current = id;
|
|
272
|
+
return id;
|
|
273
|
+
}, []);
|
|
274
|
+
const trackFieldFocus = useCallback((slug) => {
|
|
275
|
+
const session = sessionRef.current;
|
|
276
|
+
if (!session || session.completed) return;
|
|
277
|
+
if (session.fields.focus(slug)) noteActivity(session);
|
|
278
|
+
}, []);
|
|
279
|
+
const trackFieldBlur = useCallback((slug) => {
|
|
280
|
+
sessionRef.current?.fields.blur(slug);
|
|
281
|
+
}, []);
|
|
282
|
+
const trackFieldChange = useCallback((slug) => {
|
|
283
|
+
const session = sessionRef.current;
|
|
284
|
+
if (!session || session.completed) return;
|
|
285
|
+
if (session.fields.change(slug)) noteActivity(session);
|
|
286
|
+
}, []);
|
|
287
|
+
const trackStepChange = useCallback(async (step) => {
|
|
288
|
+
if (!enabled) return;
|
|
289
|
+
const apiUrl = window.__SITE_KIT_API_URL__;
|
|
290
|
+
const apiKey = window.__SITE_KIT_API_KEY__;
|
|
291
|
+
if (!apiUrl || !apiKey) {
|
|
292
|
+
if (debug) console.error("[Forms] Missing API URL or API key");
|
|
293
|
+
return;
|
|
294
|
+
}
|
|
295
|
+
const now = Date.now();
|
|
296
|
+
const prevStepTime = Math.floor((now - stepStartTimeRef.current) / 1e3);
|
|
297
|
+
stepTimesRef.current[currentStepRef.current] = prevStepTime;
|
|
298
|
+
currentStepRef.current = step;
|
|
299
|
+
maxStepRef.current = Math.max(maxStepRef.current, step);
|
|
300
|
+
stepStartTimeRef.current = now;
|
|
301
|
+
const session = sessionRef.current;
|
|
302
|
+
if (session) noteActivity(session);
|
|
303
|
+
const analyticsId = await resolveAnalyticsId();
|
|
304
|
+
if (!analyticsId) return;
|
|
305
|
+
try {
|
|
306
|
+
const response = await sonorFetch(
|
|
307
|
+
`${apiUrl}/api/public/forms/analytics/step`,
|
|
308
|
+
{
|
|
309
|
+
method: "POST",
|
|
310
|
+
headers: { "Content-Type": "application/json" },
|
|
311
|
+
body: JSON.stringify({
|
|
312
|
+
analyticsId,
|
|
313
|
+
step,
|
|
314
|
+
maxStep: maxStepRef.current,
|
|
315
|
+
stepTimes: stepTimesRef.current,
|
|
316
|
+
...session ? { fieldInteractions: fieldReport(session, Date.now()) } : {}
|
|
317
|
+
})
|
|
318
|
+
},
|
|
319
|
+
{ apiKey, retries: 0 }
|
|
320
|
+
);
|
|
321
|
+
if (!response.ok) {
|
|
322
|
+
throw new Error(`HTTP ${response.status}: ${response.statusText}`);
|
|
323
|
+
}
|
|
324
|
+
if (debug) console.log("[Forms] Step changed to:", step);
|
|
325
|
+
} catch (error) {
|
|
326
|
+
if (debug) console.error("[Forms] Error updating step:", error);
|
|
327
|
+
}
|
|
328
|
+
}, [enabled, debug, resolveAnalyticsId, fieldReport]);
|
|
329
|
+
const trackComplete = useCallback(async () => {
|
|
330
|
+
if (!enabled) return;
|
|
331
|
+
const session = sessionRef.current;
|
|
332
|
+
if (session) markCompleted(session);
|
|
333
|
+
const apiUrl = window.__SITE_KIT_API_URL__;
|
|
334
|
+
const apiKey = window.__SITE_KIT_API_KEY__;
|
|
335
|
+
if (!apiUrl || !apiKey) {
|
|
336
|
+
if (debug) console.error("[Forms] Missing API URL or API key");
|
|
337
|
+
return;
|
|
338
|
+
}
|
|
339
|
+
const now = Date.now();
|
|
340
|
+
const finalStepTime = Math.floor((now - stepStartTimeRef.current) / 1e3);
|
|
341
|
+
stepTimesRef.current[currentStepRef.current] = finalStepTime;
|
|
342
|
+
const fieldInteractions = session ? fieldReport(session, now) : void 0;
|
|
343
|
+
const analyticsId = await resolveAnalyticsId();
|
|
344
|
+
if (!analyticsId) return;
|
|
345
|
+
try {
|
|
346
|
+
const response = await sonorFetch(
|
|
347
|
+
`${apiUrl}/api/public/forms/analytics/complete`,
|
|
348
|
+
{
|
|
349
|
+
method: "POST",
|
|
350
|
+
// A form with a redirect_url navigates away right after submit, which
|
|
351
|
+
// cancels an ordinary in-flight fetch. And since completion now
|
|
352
|
+
// suppresses the abandon beacon, losing this would leave the row
|
|
353
|
+
// neither completed nor abandoned.
|
|
354
|
+
keepalive: true,
|
|
355
|
+
headers: { "Content-Type": "application/json" },
|
|
356
|
+
body: JSON.stringify({
|
|
357
|
+
analyticsId,
|
|
358
|
+
totalSteps,
|
|
359
|
+
stepTimes: stepTimesRef.current,
|
|
360
|
+
totalTimeSeconds: Math.floor((now - startTimeRef.current) / 1e3),
|
|
361
|
+
...fieldInteractions ? { fieldInteractions } : {}
|
|
362
|
+
})
|
|
363
|
+
},
|
|
364
|
+
{ apiKey, retries: 0 }
|
|
365
|
+
);
|
|
366
|
+
if (!response.ok) {
|
|
367
|
+
throw new Error(`HTTP ${response.status}: ${response.statusText}`);
|
|
368
|
+
}
|
|
369
|
+
if (debug) console.log("[Forms] Form completed");
|
|
370
|
+
} catch (error) {
|
|
371
|
+
if (debug) console.error("[Forms] Error completing tracking:", error);
|
|
372
|
+
}
|
|
373
|
+
}, [enabled, totalSteps, debug, resolveAnalyticsId, fieldReport]);
|
|
374
|
+
return {
|
|
375
|
+
trackStepChange,
|
|
376
|
+
trackComplete,
|
|
377
|
+
trackFieldFocus,
|
|
378
|
+
trackFieldBlur,
|
|
379
|
+
trackFieldChange,
|
|
380
|
+
sessionId: sessionIdRef.current
|
|
381
|
+
};
|
|
382
|
+
}
|
|
383
|
+
function getDeviceType() {
|
|
384
|
+
if (typeof window === "undefined") return "desktop";
|
|
385
|
+
const ua = navigator.userAgent;
|
|
386
|
+
if (/tablet|ipad|playbook|silk/i.test(ua)) return "tablet";
|
|
387
|
+
if (/mobile|iphone|ipod|android|blackberry|opera mini|iemobile/i.test(ua)) return "mobile";
|
|
388
|
+
return "desktop";
|
|
389
|
+
}
|
|
390
|
+
function useFormLoadedAt() {
|
|
391
|
+
const loadedAt = useRef(0);
|
|
392
|
+
useEffect(() => {
|
|
393
|
+
loadedAt.current = Date.now();
|
|
394
|
+
}, []);
|
|
395
|
+
return useCallback(() => loadedAt.current || Date.now(), []);
|
|
396
|
+
}
|
|
397
|
+
|
|
398
|
+
// src/forms/form-values.ts
|
|
399
|
+
function mergeFormValues({
|
|
400
|
+
fields,
|
|
401
|
+
current,
|
|
402
|
+
initialValues = {}
|
|
403
|
+
}) {
|
|
404
|
+
const slugs = /* @__PURE__ */ new Set();
|
|
405
|
+
const next = {};
|
|
406
|
+
for (const field of fields || []) {
|
|
407
|
+
if (!field || typeof field.slug !== "string") continue;
|
|
408
|
+
slugs.add(field.slug);
|
|
409
|
+
if (field.default_value !== void 0 && field.default_value !== null) {
|
|
410
|
+
next[field.slug] = field.default_value;
|
|
411
|
+
}
|
|
412
|
+
}
|
|
413
|
+
for (const [slug, value] of Object.entries(initialValues)) {
|
|
414
|
+
if (slugs.has(slug)) next[slug] = value;
|
|
415
|
+
}
|
|
416
|
+
for (const [slug, value] of Object.entries(current)) {
|
|
417
|
+
if (slugs.has(slug)) next[slug] = value;
|
|
418
|
+
}
|
|
419
|
+
return next;
|
|
420
|
+
}
|
|
421
|
+
function pruneErrors(errors, fields) {
|
|
422
|
+
const slugs = new Set((fields || []).map((f) => f?.slug).filter(Boolean));
|
|
423
|
+
const next = {};
|
|
424
|
+
for (const [slug, message] of Object.entries(errors)) {
|
|
425
|
+
if (slugs.has(slug)) next[slug] = message;
|
|
426
|
+
}
|
|
427
|
+
return next;
|
|
428
|
+
}
|
|
429
|
+
|
|
430
|
+
// src/forms/recaptcha.ts
|
|
431
|
+
function getSiteKey(explicitSiteKey) {
|
|
432
|
+
if (typeof window === "undefined") return void 0;
|
|
433
|
+
if (explicitSiteKey) return explicitSiteKey;
|
|
434
|
+
const win = window;
|
|
435
|
+
return win.__SITE_KIT_RECAPTCHA_SITE_KEY__ ?? process.env.NEXT_PUBLIC_RECAPTCHA_SITE_KEY;
|
|
436
|
+
}
|
|
437
|
+
var RECAPTCHA_LOAD_TIMEOUT_MS = 1e4;
|
|
438
|
+
function loadScript(siteKey) {
|
|
439
|
+
return new Promise((resolve) => {
|
|
440
|
+
if (typeof window === "undefined") {
|
|
441
|
+
resolve(null);
|
|
442
|
+
return;
|
|
443
|
+
}
|
|
444
|
+
const win = window;
|
|
445
|
+
if (win.grecaptcha?.enterprise) {
|
|
446
|
+
resolve(win.grecaptcha);
|
|
447
|
+
return;
|
|
448
|
+
}
|
|
449
|
+
let settled = false;
|
|
450
|
+
const finish = (value) => {
|
|
451
|
+
if (settled) return;
|
|
452
|
+
settled = true;
|
|
453
|
+
resolve(value);
|
|
454
|
+
};
|
|
455
|
+
const giveUp = setTimeout(() => finish(null), RECAPTCHA_LOAD_TIMEOUT_MS);
|
|
456
|
+
const waitForReady = () => {
|
|
457
|
+
if (settled) return;
|
|
458
|
+
if (win.grecaptcha?.enterprise) {
|
|
459
|
+
clearTimeout(giveUp);
|
|
460
|
+
finish(win.grecaptcha);
|
|
461
|
+
return;
|
|
462
|
+
}
|
|
463
|
+
setTimeout(waitForReady, 50);
|
|
464
|
+
};
|
|
465
|
+
const existing = document.querySelector('script[src*="recaptcha/enterprise"]');
|
|
466
|
+
if (existing) {
|
|
467
|
+
waitForReady();
|
|
468
|
+
return;
|
|
469
|
+
}
|
|
470
|
+
const script = document.createElement("script");
|
|
471
|
+
script.src = `https://www.google.com/recaptcha/enterprise.js?render=${siteKey}`;
|
|
472
|
+
script.async = true;
|
|
473
|
+
script.onload = () => waitForReady();
|
|
474
|
+
script.onerror = () => {
|
|
475
|
+
clearTimeout(giveUp);
|
|
476
|
+
finish(null);
|
|
477
|
+
};
|
|
478
|
+
document.head.appendChild(script);
|
|
479
|
+
});
|
|
480
|
+
}
|
|
481
|
+
async function loadReady(siteKey) {
|
|
482
|
+
const grecaptcha = await loadScript(siteKey);
|
|
483
|
+
if (typeof grecaptcha?.enterprise?.ready !== "function") return null;
|
|
484
|
+
const ready = await Promise.race([
|
|
485
|
+
new Promise((resolve) => grecaptcha.enterprise.ready(() => resolve(true))),
|
|
486
|
+
new Promise((resolve) => setTimeout(() => resolve(false), RECAPTCHA_LOAD_TIMEOUT_MS))
|
|
487
|
+
]);
|
|
488
|
+
if (!ready || typeof grecaptcha.enterprise.execute !== "function") return null;
|
|
489
|
+
return grecaptcha;
|
|
490
|
+
}
|
|
491
|
+
function preloadRecaptcha(explicitSiteKey) {
|
|
492
|
+
const siteKey = getSiteKey(explicitSiteKey);
|
|
493
|
+
if (!siteKey || typeof window === "undefined") return;
|
|
494
|
+
void loadReady(siteKey).catch(() => null);
|
|
495
|
+
}
|
|
496
|
+
async function getRecaptchaToken(explicitSiteKey) {
|
|
497
|
+
const siteKey = getSiteKey(explicitSiteKey);
|
|
498
|
+
if (!siteKey || typeof window === "undefined") return null;
|
|
499
|
+
try {
|
|
500
|
+
const grecaptcha = await loadReady(siteKey);
|
|
501
|
+
if (!grecaptcha) return null;
|
|
502
|
+
const token = await grecaptcha.enterprise.execute(siteKey, { action: "submit" });
|
|
503
|
+
return token || null;
|
|
504
|
+
} catch (err) {
|
|
505
|
+
try {
|
|
506
|
+
await new Promise((resolve) => setTimeout(resolve, 800));
|
|
507
|
+
const win = window;
|
|
508
|
+
const token = await win.grecaptcha.enterprise.execute(siteKey, { action: "submit" });
|
|
509
|
+
return token || null;
|
|
510
|
+
} catch (retryErr) {
|
|
511
|
+
console.warn("[site-kit reCAPTCHA]", retryErr);
|
|
512
|
+
return null;
|
|
513
|
+
}
|
|
514
|
+
}
|
|
515
|
+
}
|
|
516
|
+
|
|
517
|
+
// src/forms/ga4-identity.ts
|
|
518
|
+
function readCookie(jar, name) {
|
|
519
|
+
const escaped = name.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
520
|
+
const match = jar.match(new RegExp(`(?:^|;\\s*)${escaped}=([^;]*)`));
|
|
521
|
+
return match ? decodeURIComponent(match[1]) : void 0;
|
|
522
|
+
}
|
|
523
|
+
function readGa4Identity() {
|
|
524
|
+
if (typeof document === "undefined") return {};
|
|
525
|
+
const jar = document.cookie || "";
|
|
526
|
+
if (!jar) return {};
|
|
527
|
+
const identity = {};
|
|
528
|
+
const ga = readCookie(jar, "_ga");
|
|
529
|
+
if (ga) {
|
|
530
|
+
const parts = ga.split(".");
|
|
531
|
+
if (parts.length >= 4) {
|
|
532
|
+
const clientId = `${parts[parts.length - 2]}.${parts[parts.length - 1]}`;
|
|
533
|
+
if (/^\d+\.\d+$/.test(clientId)) identity.gaClientId = clientId;
|
|
534
|
+
}
|
|
535
|
+
}
|
|
536
|
+
const sessions = {};
|
|
537
|
+
for (const raw of jar.split(";")) {
|
|
538
|
+
const cookie = raw.trim();
|
|
539
|
+
const eq = cookie.indexOf("=");
|
|
540
|
+
if (eq < 0) continue;
|
|
541
|
+
const name = cookie.slice(0, eq);
|
|
542
|
+
const container = /^_ga_([A-Z0-9]+)$/i.exec(name)?.[1];
|
|
543
|
+
if (!container) continue;
|
|
544
|
+
const parts = decodeURIComponent(cookie.slice(eq + 1)).split(".");
|
|
545
|
+
if (parts.length >= 3 && /^\d+$/.test(parts[2])) sessions[container] = parts[2];
|
|
546
|
+
}
|
|
547
|
+
if (Object.keys(sessions).length > 0) identity.gaSessions = sessions;
|
|
548
|
+
return identity;
|
|
549
|
+
}
|
|
550
|
+
|
|
551
|
+
// src/forms/submitForm.ts
|
|
552
|
+
function getApiConfig() {
|
|
553
|
+
const apiUrl = typeof window !== "undefined" ? window.__SITE_KIT_API_URL__ || "https://api.sonor.io" : process.env.SONOR_API_URL || process.env.NEXT_PUBLIC_SONOR_API_URL || "https://api.sonor.io";
|
|
554
|
+
const apiKey = typeof window !== "undefined" ? window.__SITE_KIT_API_KEY__ : void 0;
|
|
555
|
+
return { apiUrl, apiKey };
|
|
556
|
+
}
|
|
557
|
+
function getUTMParams() {
|
|
558
|
+
if (typeof window === "undefined") return {};
|
|
559
|
+
const params = new URLSearchParams(window.location.search);
|
|
560
|
+
const out = {};
|
|
561
|
+
for (const key of ["utm_source", "utm_medium", "utm_campaign", "utm_term", "utm_content"]) {
|
|
562
|
+
out[key] = params.get(key);
|
|
563
|
+
}
|
|
564
|
+
return out;
|
|
565
|
+
}
|
|
566
|
+
async function submitForm({
|
|
567
|
+
config,
|
|
568
|
+
values,
|
|
569
|
+
honeypotValue,
|
|
570
|
+
formLoadedAt
|
|
571
|
+
}) {
|
|
572
|
+
const { apiUrl, apiKey } = getApiConfig();
|
|
573
|
+
if (!apiKey) {
|
|
574
|
+
throw new Error("API key is required. Set SONOR_API_KEY in your environment.");
|
|
575
|
+
}
|
|
576
|
+
const recaptchaToken = config.recaptcha_enabled ? await getRecaptchaToken(config.recaptcha_site_key) : null;
|
|
577
|
+
if (config.recaptcha_enabled && !recaptchaToken) {
|
|
578
|
+
throw new Error("Verification could not be completed. Please try again.");
|
|
579
|
+
}
|
|
580
|
+
const honeypotFieldName = config.honeypot_field || DEFAULT_HONEYPOT_FIELD;
|
|
581
|
+
const utm = getUTMParams();
|
|
582
|
+
const ga4 = readGa4Identity();
|
|
583
|
+
const payload = {
|
|
584
|
+
formId: config.id,
|
|
585
|
+
form_id: config.id,
|
|
586
|
+
data: {
|
|
587
|
+
...values,
|
|
588
|
+
...config.honeypot_enabled ? { [honeypotFieldName]: honeypotValue } : {}
|
|
589
|
+
},
|
|
590
|
+
metadata: {
|
|
591
|
+
pageUrl: typeof window !== "undefined" ? window.location.href : null,
|
|
592
|
+
referrer: typeof document !== "undefined" ? document.referrer || null : null,
|
|
593
|
+
userAgent: typeof navigator !== "undefined" ? navigator.userAgent : null,
|
|
594
|
+
sessionId: typeof sessionStorage !== "undefined" ? sessionStorage.getItem("_sk_sid") : null,
|
|
595
|
+
// Anonymous visitor id (_sk_vid) — the same id Analytics/Signal stamp on
|
|
596
|
+
// page views, so the Sonor side can bind this lead to its browsing session
|
|
597
|
+
// (page -> lead attribution). Sent on every submission; null pre-hydration.
|
|
598
|
+
visitorId: typeof localStorage !== "undefined" ? localStorage.getItem("_sk_vid") : null,
|
|
599
|
+
recaptchaToken: recaptchaToken || void 0,
|
|
600
|
+
utmSource: utm.utm_source,
|
|
601
|
+
utmMedium: utm.utm_medium,
|
|
602
|
+
utmCampaign: utm.utm_campaign,
|
|
603
|
+
utmTerm: utm.utm_term,
|
|
604
|
+
utmContent: utm.utm_content,
|
|
605
|
+
...ga4,
|
|
606
|
+
// Sub-site host — preserved on form_submissions for lead attribution
|
|
607
|
+
// across multi-site projects. Resolved by SiteKitClientProviders.
|
|
608
|
+
site: typeof window !== "undefined" ? window.__SITE_KIT_SITE__ || window.location.host : void 0,
|
|
609
|
+
_formLoadedAt: formLoadedAt
|
|
610
|
+
}
|
|
611
|
+
};
|
|
612
|
+
const response = await sonorFetch(
|
|
613
|
+
`${apiUrl}/api/public/forms/submit`,
|
|
614
|
+
{
|
|
615
|
+
method: "POST",
|
|
616
|
+
headers: {
|
|
617
|
+
"Content-Type": "application/json",
|
|
618
|
+
Authorization: `Bearer ${apiKey}`
|
|
619
|
+
},
|
|
620
|
+
body: JSON.stringify(payload)
|
|
621
|
+
},
|
|
622
|
+
{ retries: 2, timeoutMs: 2e4 }
|
|
623
|
+
);
|
|
624
|
+
const data = await response.json().catch(() => null);
|
|
625
|
+
if (!response.ok) {
|
|
626
|
+
const msg = (data?.message ?? data?.error ?? (response.statusText || `HTTP ${response.status}`)).toString().trim();
|
|
627
|
+
throw new Error(
|
|
628
|
+
msg ? `Failed to submit form: ${msg}` : `Failed to submit form (${response.status})`
|
|
629
|
+
);
|
|
630
|
+
}
|
|
631
|
+
return submitResult(data, values);
|
|
632
|
+
}
|
|
633
|
+
function submitResult(receipt, values) {
|
|
634
|
+
const r = receipt && typeof receipt === "object" ? receipt : {};
|
|
635
|
+
const id = typeof r.submissionId === "string" ? r.submissionId : typeof r.id === "string" ? r.id : "";
|
|
636
|
+
return {
|
|
637
|
+
success: r.success !== false,
|
|
638
|
+
id,
|
|
639
|
+
submissionId: id,
|
|
640
|
+
message: typeof r.message === "string" ? r.message : void 0,
|
|
641
|
+
redirectUrl: typeof r.redirectUrl === "string" ? r.redirectUrl : null,
|
|
642
|
+
data: { ...values }
|
|
643
|
+
};
|
|
644
|
+
}
|
|
645
|
+
function useRecaptchaWarmup(config, onFocus) {
|
|
646
|
+
const warmed = useRef(false);
|
|
647
|
+
const enabled = !!config?.recaptcha_enabled;
|
|
648
|
+
const siteKey = config?.recaptcha_site_key;
|
|
649
|
+
return useCallback(
|
|
650
|
+
(slug) => {
|
|
651
|
+
if (enabled && !warmed.current) {
|
|
652
|
+
warmed.current = true;
|
|
653
|
+
preloadRecaptcha(siteKey);
|
|
654
|
+
}
|
|
655
|
+
onFocus(slug);
|
|
656
|
+
},
|
|
657
|
+
[enabled, siteKey, onFocus]
|
|
658
|
+
);
|
|
659
|
+
}
|
|
660
|
+
|
|
661
|
+
// src/forms/useForm.ts
|
|
662
|
+
function useForm(formIdOrSlug, options = {}) {
|
|
663
|
+
const {
|
|
664
|
+
projectId: optionsProjectId,
|
|
665
|
+
onSuccess,
|
|
666
|
+
onError,
|
|
667
|
+
initialValues = {},
|
|
668
|
+
redirectUrl,
|
|
669
|
+
initialForm,
|
|
670
|
+
trackAnalytics = true
|
|
671
|
+
} = options;
|
|
672
|
+
const projectId = optionsProjectId || (typeof window !== "undefined" ? window.__SITE_KIT_PROJECT_ID__ : void 0);
|
|
673
|
+
const [form, setForm] = useState(
|
|
674
|
+
() => initialForm ? normalizeFormConfig(initialForm) : null
|
|
675
|
+
);
|
|
676
|
+
const [isLoading, setIsLoading] = useState(!initialForm);
|
|
677
|
+
const [fetchError, setFetchError] = useState(null);
|
|
678
|
+
const [values, setValuesState] = useState(() => {
|
|
679
|
+
if (!initialForm) return initialValues;
|
|
680
|
+
const defaults = {};
|
|
681
|
+
for (const field of initialForm.fields || []) {
|
|
682
|
+
if (field.default_value !== void 0 && field.default_value !== null) {
|
|
683
|
+
defaults[field.slug] = field.default_value;
|
|
684
|
+
}
|
|
685
|
+
}
|
|
686
|
+
return { ...defaults, ...initialValues };
|
|
687
|
+
});
|
|
688
|
+
const [errors, setErrors] = useState({});
|
|
689
|
+
const [step, setStep] = useState(1);
|
|
690
|
+
const [isSubmitting, setIsSubmitting] = useState(false);
|
|
691
|
+
const [isComplete, setIsComplete] = useState(false);
|
|
692
|
+
const [submitError, setSubmitError] = useState(null);
|
|
693
|
+
const isSubmittingRef = useRef(false);
|
|
694
|
+
const formLoadedAt = useFormLoadedAt();
|
|
695
|
+
const totalSteps = form?.total_steps || 1;
|
|
696
|
+
const isMultiStep = form?.is_multi_step || false;
|
|
697
|
+
useEffect(() => {
|
|
698
|
+
const initialMatches = initialForm && (initialForm.slug === formIdOrSlug || initialForm.id === formIdOrSlug);
|
|
699
|
+
if (initialMatches) {
|
|
700
|
+
const siteKey = initialForm.recaptcha_site_key;
|
|
701
|
+
if (typeof window !== "undefined" && siteKey) {
|
|
702
|
+
window.__SITE_KIT_RECAPTCHA_SITE_KEY__ = siteKey;
|
|
703
|
+
}
|
|
704
|
+
return;
|
|
705
|
+
}
|
|
706
|
+
const apiUrl = typeof window !== "undefined" ? window.__SITE_KIT_API_URL__ || "https://api.sonor.io" : "https://api.sonor.io";
|
|
707
|
+
async function fetchForm() {
|
|
708
|
+
try {
|
|
709
|
+
setIsLoading(true);
|
|
710
|
+
setFetchError(null);
|
|
711
|
+
const readApiKey = () => typeof window !== "undefined" ? window.__SITE_KIT_API_KEY__ : void 0;
|
|
712
|
+
let apiKey = readApiKey();
|
|
713
|
+
for (let i = 0; i < 15 && !apiKey; i++) {
|
|
714
|
+
await new Promise((r) => setTimeout(r, 100));
|
|
715
|
+
apiKey = readApiKey();
|
|
716
|
+
}
|
|
717
|
+
if (!apiKey) {
|
|
718
|
+
throw new Error("API key is required. Provide it via SiteKitLayout or set SONOR_API_KEY.");
|
|
719
|
+
}
|
|
720
|
+
const url = `${apiUrl}/api/public/forms/config`;
|
|
721
|
+
const init = {
|
|
722
|
+
method: "POST",
|
|
723
|
+
headers: {
|
|
724
|
+
"Content-Type": "application/json"
|
|
725
|
+
},
|
|
726
|
+
body: JSON.stringify({
|
|
727
|
+
formIdOrSlug
|
|
728
|
+
})
|
|
729
|
+
};
|
|
730
|
+
const response = await sonorFetch(url, init, { apiKey, retries: 3, timeoutMs: 15e3 });
|
|
731
|
+
if (!response.ok) {
|
|
732
|
+
throw new Error(`Failed to fetch form: ${response.statusText}`);
|
|
733
|
+
}
|
|
734
|
+
const data = await response.json();
|
|
735
|
+
if (!data) throw new Error("Form not found");
|
|
736
|
+
if (typeof window !== "undefined" && data.recaptcha_site_key) {
|
|
737
|
+
;
|
|
738
|
+
window.__SITE_KIT_RECAPTCHA_SITE_KEY__ = data.recaptcha_site_key;
|
|
739
|
+
}
|
|
740
|
+
setForm(normalizeFormConfig(data));
|
|
741
|
+
const nextFields = data.fields || [];
|
|
742
|
+
setValuesState(
|
|
743
|
+
(prev) => mergeFormValues({ fields: nextFields, current: prev, initialValues })
|
|
744
|
+
);
|
|
745
|
+
setErrors((prev) => pruneErrors(prev, nextFields));
|
|
746
|
+
} catch (err) {
|
|
747
|
+
setFetchError(err);
|
|
748
|
+
} finally {
|
|
749
|
+
setIsLoading(false);
|
|
750
|
+
}
|
|
751
|
+
}
|
|
752
|
+
fetchForm();
|
|
753
|
+
}, [formIdOrSlug, projectId]);
|
|
754
|
+
const allFields = useMemo(() => form?.fields || [], [form]);
|
|
755
|
+
const fields = useMemo(() => {
|
|
756
|
+
if (!isMultiStep) return allFields;
|
|
757
|
+
const currentStepConfig = form?.steps?.find((s) => s.step_number === step);
|
|
758
|
+
if (!currentStepConfig) return allFields;
|
|
759
|
+
return allFields.filter((f) => f.step_id === currentStepConfig.id);
|
|
760
|
+
}, [form, step, allFields, isMultiStep]);
|
|
761
|
+
const isFieldVisible2 = useCallback(
|
|
762
|
+
(field) => isFieldVisible(field, values),
|
|
763
|
+
[values]
|
|
764
|
+
);
|
|
765
|
+
const visibleFields = useMemo(() => {
|
|
766
|
+
return fields.filter(isFieldVisible2);
|
|
767
|
+
}, [fields, isFieldVisible2]);
|
|
768
|
+
const validateField2 = useCallback(
|
|
769
|
+
(field) => validateField(field, values, isFieldVisible2),
|
|
770
|
+
[values, isFieldVisible2]
|
|
771
|
+
);
|
|
772
|
+
const fieldBySlug = useMemo(
|
|
773
|
+
() => new Map(allFields.map((f) => [f.slug, f])),
|
|
774
|
+
[allFields]
|
|
775
|
+
);
|
|
776
|
+
const {
|
|
777
|
+
trackStepChange,
|
|
778
|
+
trackComplete,
|
|
779
|
+
trackFieldFocus: trackFocus,
|
|
780
|
+
trackFieldBlur,
|
|
781
|
+
trackFieldChange
|
|
782
|
+
} = useFormTracking({
|
|
783
|
+
formId: form?.id || "",
|
|
784
|
+
totalSteps,
|
|
785
|
+
enabled: trackAnalytics,
|
|
786
|
+
isFieldComplete: (slug) => {
|
|
787
|
+
const field = fieldBySlug.get(slug);
|
|
788
|
+
return field ? isFieldComplete(field, values, isFieldVisible2) : false;
|
|
789
|
+
}
|
|
790
|
+
});
|
|
791
|
+
const trackFieldFocus = useRecaptchaWarmup(form, trackFocus);
|
|
792
|
+
const validate = useCallback(() => {
|
|
793
|
+
const newErrors = {};
|
|
794
|
+
for (const field of fields) {
|
|
795
|
+
const error = validateField2(field);
|
|
796
|
+
if (error) {
|
|
797
|
+
newErrors[field.slug] = error;
|
|
798
|
+
}
|
|
799
|
+
}
|
|
800
|
+
setErrors(newErrors);
|
|
801
|
+
return Object.keys(newErrors).length === 0;
|
|
802
|
+
}, [fields, validateField2]);
|
|
803
|
+
const validateAll = useCallback(() => {
|
|
804
|
+
const newErrors = {};
|
|
805
|
+
for (const field of allFields) {
|
|
806
|
+
const error = validateField2(field);
|
|
807
|
+
if (error) newErrors[field.slug] = error;
|
|
808
|
+
}
|
|
809
|
+
setErrors(newErrors);
|
|
810
|
+
return Object.keys(newErrors).length === 0;
|
|
811
|
+
}, [allFields, validateField2]);
|
|
812
|
+
const buildVisibleValues = useCallback(() => {
|
|
813
|
+
const out = {};
|
|
814
|
+
for (const field of allFields) {
|
|
815
|
+
if (!isFieldVisible2(field)) continue;
|
|
816
|
+
if (field.slug in values) out[field.slug] = values[field.slug];
|
|
817
|
+
}
|
|
818
|
+
return out;
|
|
819
|
+
}, [allFields, values, isFieldVisible2]);
|
|
820
|
+
const setFieldValue = useCallback((key, value) => {
|
|
821
|
+
setValuesState((prev) => ({ ...prev, [key]: value }));
|
|
822
|
+
trackFieldChange(key);
|
|
823
|
+
setErrors((prev) => {
|
|
824
|
+
if (prev[key]) {
|
|
825
|
+
const next = { ...prev };
|
|
826
|
+
delete next[key];
|
|
827
|
+
return next;
|
|
828
|
+
}
|
|
829
|
+
return prev;
|
|
830
|
+
});
|
|
831
|
+
}, [trackFieldChange]);
|
|
832
|
+
const setValues = useCallback((newValues) => {
|
|
833
|
+
setValuesState((prev) => ({ ...prev, ...newValues }));
|
|
834
|
+
}, []);
|
|
835
|
+
const clearErrors = useCallback(() => {
|
|
836
|
+
setErrors({});
|
|
837
|
+
}, []);
|
|
838
|
+
const canGoNext = step < totalSteps;
|
|
839
|
+
const canGoPrev = step > 1;
|
|
840
|
+
const isLastStep = step === totalSteps;
|
|
841
|
+
const progress = Math.round(step / totalSteps * 100);
|
|
842
|
+
const nextStep = useCallback(() => {
|
|
843
|
+
if (!validate()) return false;
|
|
844
|
+
if (step < totalSteps) {
|
|
845
|
+
const newStep = step + 1;
|
|
846
|
+
setStep(newStep);
|
|
847
|
+
trackStepChange(newStep);
|
|
848
|
+
return true;
|
|
849
|
+
}
|
|
850
|
+
return false;
|
|
851
|
+
}, [step, totalSteps, validate, trackStepChange]);
|
|
852
|
+
const prevStep = useCallback(() => {
|
|
853
|
+
if (step > 1) {
|
|
854
|
+
const newStep = step - 1;
|
|
855
|
+
setStep(newStep);
|
|
856
|
+
trackStepChange(newStep);
|
|
857
|
+
}
|
|
858
|
+
}, [step, trackStepChange]);
|
|
859
|
+
const goToStep = useCallback((targetStep) => {
|
|
860
|
+
if (targetStep >= 1 && targetStep <= totalSteps) {
|
|
861
|
+
setStep(targetStep);
|
|
862
|
+
trackStepChange(targetStep);
|
|
863
|
+
}
|
|
864
|
+
}, [totalSteps, trackStepChange]);
|
|
865
|
+
const submit = useCallback(async () => {
|
|
866
|
+
if (!form) return;
|
|
867
|
+
if (isSubmittingRef.current) return;
|
|
868
|
+
if (!validateAll()) return;
|
|
869
|
+
isSubmittingRef.current = true;
|
|
870
|
+
setIsSubmitting(true);
|
|
871
|
+
setSubmitError(null);
|
|
872
|
+
try {
|
|
873
|
+
const data = await submitForm({
|
|
874
|
+
config: form,
|
|
875
|
+
values: buildVisibleValues(),
|
|
876
|
+
honeypotValue: "",
|
|
877
|
+
formLoadedAt: formLoadedAt()
|
|
878
|
+
});
|
|
879
|
+
trackComplete();
|
|
880
|
+
setIsComplete(true);
|
|
881
|
+
onSuccess?.(data);
|
|
882
|
+
const finalRedirect = redirectUrl !== false ? redirectUrl || form.redirect_url : void 0;
|
|
883
|
+
if (finalRedirect) {
|
|
884
|
+
window.location.href = finalRedirect;
|
|
885
|
+
}
|
|
886
|
+
} catch (error) {
|
|
887
|
+
console.error("[useForm] Submission error:", error);
|
|
888
|
+
setSubmitError("Something went wrong sending your submission. Please try again.");
|
|
889
|
+
onError?.(error);
|
|
890
|
+
} finally {
|
|
891
|
+
isSubmittingRef.current = false;
|
|
892
|
+
setIsSubmitting(false);
|
|
893
|
+
}
|
|
894
|
+
}, [form, validateAll, buildVisibleValues, trackComplete, onSuccess, onError, redirectUrl]);
|
|
895
|
+
const reset = useCallback(() => {
|
|
896
|
+
setValuesState(initialValues);
|
|
897
|
+
setErrors({});
|
|
898
|
+
setStep(1);
|
|
899
|
+
setIsComplete(false);
|
|
900
|
+
setSubmitError(null);
|
|
901
|
+
}, [initialValues]);
|
|
902
|
+
return {
|
|
903
|
+
form,
|
|
904
|
+
isLoading,
|
|
905
|
+
fetchError,
|
|
906
|
+
submitError,
|
|
907
|
+
allFields,
|
|
908
|
+
fields,
|
|
909
|
+
visibleFields,
|
|
910
|
+
values,
|
|
911
|
+
errors,
|
|
912
|
+
setFieldValue,
|
|
913
|
+
setValues,
|
|
914
|
+
clearErrors,
|
|
915
|
+
step,
|
|
916
|
+
totalSteps,
|
|
917
|
+
isMultiStep,
|
|
918
|
+
progress,
|
|
919
|
+
nextStep,
|
|
920
|
+
prevStep,
|
|
921
|
+
goToStep,
|
|
922
|
+
canGoNext,
|
|
923
|
+
canGoPrev,
|
|
924
|
+
isLastStep,
|
|
925
|
+
validate,
|
|
926
|
+
validateField: validateField2,
|
|
927
|
+
isFieldVisible: isFieldVisible2,
|
|
928
|
+
submit,
|
|
929
|
+
isSubmitting,
|
|
930
|
+
isComplete,
|
|
931
|
+
reset,
|
|
932
|
+
trackFieldFocus,
|
|
933
|
+
trackFieldBlur
|
|
934
|
+
};
|
|
935
|
+
}
|
|
936
|
+
|
|
937
|
+
export { submitForm, useForm, useFormLoadedAt, useFormTracking, useRecaptchaWarmup };
|