@sonordev/site-kit 6.3.1 → 6.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (250) hide show
  1. package/agent-manifest.json +1 -1
  2. package/dist/{AnalyticsProvider-G46LCH3V.js → AnalyticsProvider-IZXUFR7B.js} +10 -10
  3. package/dist/{AnalyticsProvider-G46LCH3V.js.map → AnalyticsProvider-IZXUFR7B.js.map} +1 -1
  4. package/dist/{AnalyticsProvider-IYGKHMVM.mjs → AnalyticsProvider-K5DRCKEB.mjs} +6 -6
  5. package/dist/{AnalyticsProvider-IYGKHMVM.mjs.map → AnalyticsProvider-K5DRCKEB.mjs.map} +1 -1
  6. package/dist/{ArticleViewTracker-3USIHB4O.js → ArticleViewTracker-OYYQABG3.js} +6 -6
  7. package/dist/{ArticleViewTracker-3USIHB4O.js.map → ArticleViewTracker-OYYQABG3.js.map} +1 -1
  8. package/dist/{ArticleViewTracker-7GEI37VK.mjs → ArticleViewTracker-TLQT5MJP.mjs} +5 -5
  9. package/dist/{ArticleViewTracker-7GEI37VK.mjs.map → ArticleViewTracker-TLQT5MJP.mjs.map} +1 -1
  10. package/dist/{ChatWidget-VP3QQJA6.js → ChatWidget-4GAGGANM.js} +11 -11
  11. package/dist/{ChatWidget-VP3QQJA6.js.map → ChatWidget-4GAGGANM.js.map} +1 -1
  12. package/dist/ChatWidget-JTI25HIA.mjs +17 -0
  13. package/dist/{ChatWidget-36IDUB53.mjs.map → ChatWidget-JTI25HIA.mjs.map} +1 -1
  14. package/dist/EngageWidget-LNTIXBFA.js +21 -0
  15. package/dist/{EngageWidget-YHMSB4YE.js.map → EngageWidget-LNTIXBFA.js.map} +1 -1
  16. package/dist/EngageWidget-YM2JPXXJ.mjs +12 -0
  17. package/dist/{EngageWidget-ILRTLGBB.mjs.map → EngageWidget-YM2JPXXJ.mjs.map} +1 -1
  18. package/dist/{FileField-DXGPA4OB.mjs → FileField-KIQMFWW6.mjs} +5 -5
  19. package/dist/FileField-KIQMFWW6.mjs.map +1 -0
  20. package/dist/{FileField-LMSLNNRX.js → FileField-U327LS7Q.js} +6 -6
  21. package/dist/FileField-U327LS7Q.js.map +1 -0
  22. package/dist/{FormSpotlight-SEJ4NJHG.mjs → FormSpotlight-BKMGDP3Z.mjs} +4 -4
  23. package/dist/{FormSpotlight-SEJ4NJHG.mjs.map → FormSpotlight-BKMGDP3Z.mjs.map} +1 -1
  24. package/dist/{FormSpotlight-5BQCAXIO.js → FormSpotlight-SAYR5PQW.js} +12 -12
  25. package/dist/{FormSpotlight-5BQCAXIO.js.map → FormSpotlight-SAYR5PQW.js.map} +1 -1
  26. package/dist/{FormStage-6OLDPLYU.mjs → FormStage-35VWCKJ4.mjs} +4 -4
  27. package/dist/{FormStage-6OLDPLYU.mjs.map → FormStage-35VWCKJ4.mjs.map} +1 -1
  28. package/dist/{FormStage-ZRXENSYN.js → FormStage-GBH4PXW7.js} +11 -11
  29. package/dist/{FormStage-ZRXENSYN.js.map → FormStage-GBH4PXW7.js.map} +1 -1
  30. package/dist/ManagedForm-GOZNJ66K.mjs +16 -0
  31. package/dist/{ManagedForm-AIPXF5QY.mjs.map → ManagedForm-GOZNJ66K.mjs.map} +1 -1
  32. package/dist/ManagedForm-MKSPZAI3.js +25 -0
  33. package/dist/{ManagedForm-T464AA5B.js.map → ManagedForm-MKSPZAI3.js.map} +1 -1
  34. package/dist/{ManagedNewsletterForm-UGDUBYR3.mjs → ManagedNewsletterForm-3FJU7HUS.mjs} +7 -7
  35. package/dist/{ManagedNewsletterForm-UGDUBYR3.mjs.map → ManagedNewsletterForm-3FJU7HUS.mjs.map} +1 -1
  36. package/dist/{ManagedNewsletterForm-HKNXIKDV.js → ManagedNewsletterForm-BMXJ2BXD.js} +8 -8
  37. package/dist/{ManagedNewsletterForm-HKNXIKDV.js.map → ManagedNewsletterForm-BMXJ2BXD.js.map} +1 -1
  38. package/dist/{SignalCore-OOQHKIUZ.js → SignalCore-DEGICRY2.js} +11 -11
  39. package/dist/{SignalCore-OOQHKIUZ.js.map → SignalCore-DEGICRY2.js.map} +1 -1
  40. package/dist/{SignalCore-O3GEJZCN.mjs → SignalCore-N2JUB4D4.mjs} +5 -5
  41. package/dist/{SignalCore-O3GEJZCN.mjs.map → SignalCore-N2JUB4D4.mjs.map} +1 -1
  42. package/dist/SitemapSync-HRQ7KLP5.js +18 -0
  43. package/dist/{SitemapSync-MT3I4W3B.js.map → SitemapSync-HRQ7KLP5.js.map} +1 -1
  44. package/dist/SitemapSync-JIORN4Z5.mjs +9 -0
  45. package/dist/{SitemapSync-RG554AJR.mjs.map → SitemapSync-JIORN4Z5.mjs.map} +1 -1
  46. package/dist/analytics/index.js +9 -9
  47. package/dist/analytics/index.mjs +4 -4
  48. package/dist/articles/index.js +1 -1
  49. package/dist/articles/index.mjs +1 -1
  50. package/dist/articles/server-ui.js +1 -1
  51. package/dist/articles/server-ui.mjs +1 -1
  52. package/dist/{chunk-S7S6ZZ3R.js → chunk-2TSDPEMA.js} +7 -7
  53. package/dist/{chunk-S7S6ZZ3R.js.map → chunk-2TSDPEMA.js.map} +1 -1
  54. package/dist/{chunk-XNZ2WFXR.mjs → chunk-377Z7GOV.mjs} +4 -4
  55. package/dist/{chunk-XNZ2WFXR.mjs.map → chunk-377Z7GOV.mjs.map} +1 -1
  56. package/dist/{chunk-FVATDBFX.js → chunk-4F4CHBVS.js} +10 -10
  57. package/dist/{chunk-FVATDBFX.js.map → chunk-4F4CHBVS.js.map} +1 -1
  58. package/dist/{chunk-HY6EXWLZ.js → chunk-4T3CV7DK.js} +8 -8
  59. package/dist/{chunk-HY6EXWLZ.js.map → chunk-4T3CV7DK.js.map} +1 -1
  60. package/dist/{chunk-3EOUKWHB.mjs → chunk-6OA4VMSL.mjs} +3 -3
  61. package/dist/{chunk-3EOUKWHB.mjs.map → chunk-6OA4VMSL.mjs.map} +1 -1
  62. package/dist/chunk-6PQJH6YR.js +8 -0
  63. package/dist/{chunk-ZKOQCKOR.js.map → chunk-6PQJH6YR.js.map} +1 -1
  64. package/dist/{chunk-GE3CGR2T.js → chunk-7EW22AND.js} +14 -14
  65. package/dist/{chunk-GE3CGR2T.js.map → chunk-7EW22AND.js.map} +1 -1
  66. package/dist/{chunk-QRL3QDUE.js → chunk-7RLL67F3.js} +3 -20
  67. package/dist/chunk-7RLL67F3.js.map +1 -0
  68. package/dist/{chunk-XV2FFSJU.mjs → chunk-7SHTA3NT.mjs} +10 -11
  69. package/dist/chunk-7SHTA3NT.mjs.map +1 -0
  70. package/dist/{chunk-WIRGZMM5.mjs → chunk-A2ENMRTN.mjs} +3 -3
  71. package/dist/{chunk-WIRGZMM5.mjs.map → chunk-A2ENMRTN.mjs.map} +1 -1
  72. package/dist/{chunk-4KSE642V.js → chunk-A6PXU6IU.js} +23 -27
  73. package/dist/chunk-A6PXU6IU.js.map +1 -0
  74. package/dist/chunk-AGIMH67E.mjs +26 -0
  75. package/dist/chunk-AGIMH67E.mjs.map +1 -0
  76. package/dist/{chunk-A3QAZJXC.js → chunk-CB3WK2OW.js} +6 -8
  77. package/dist/chunk-CB3WK2OW.js.map +1 -0
  78. package/dist/{chunk-RZUUPX2H.js → chunk-DFVWOIJE.js} +6 -6
  79. package/dist/{chunk-RZUUPX2H.js.map → chunk-DFVWOIJE.js.map} +1 -1
  80. package/dist/{chunk-6WWGH6E3.js → chunk-DHCU3RTK.js} +14 -14
  81. package/dist/{chunk-6WWGH6E3.js.map → chunk-DHCU3RTK.js.map} +1 -1
  82. package/dist/{chunk-YCE6HRWW.js → chunk-DV5KVNA7.js} +10 -11
  83. package/dist/chunk-DV5KVNA7.js.map +1 -0
  84. package/dist/{chunk-JS265UKZ.mjs → chunk-EE7D6BSA.mjs} +3 -3
  85. package/dist/{chunk-JS265UKZ.mjs.map → chunk-EE7D6BSA.mjs.map} +1 -1
  86. package/dist/{chunk-OUM77VZ4.mjs → chunk-EE7J66MJ.mjs} +3 -3
  87. package/dist/{chunk-OUM77VZ4.mjs.map → chunk-EE7J66MJ.mjs.map} +1 -1
  88. package/dist/{chunk-6TSYWYYR.js → chunk-F5RO6HVF.js} +4 -4
  89. package/dist/{chunk-6TSYWYYR.js.map → chunk-F5RO6HVF.js.map} +1 -1
  90. package/dist/chunk-FCAHV5P3.mjs +45 -0
  91. package/dist/chunk-FCAHV5P3.mjs.map +1 -0
  92. package/dist/chunk-GBMVAKX3.mjs +6 -0
  93. package/dist/{chunk-C654VCWV.mjs.map → chunk-GBMVAKX3.mjs.map} +1 -1
  94. package/dist/{chunk-KAJT3MOM.mjs → chunk-GFWSYLGO.mjs} +4 -4
  95. package/dist/{chunk-KAJT3MOM.mjs.map → chunk-GFWSYLGO.mjs.map} +1 -1
  96. package/dist/{chunk-2LX7LHAO.js → chunk-GWQTFMM2.js} +5 -5
  97. package/dist/{chunk-2LX7LHAO.js.map → chunk-GWQTFMM2.js.map} +1 -1
  98. package/dist/{chunk-NO4JQ2G3.mjs → chunk-HMTFTO5G.mjs} +10 -14
  99. package/dist/chunk-HMTFTO5G.mjs.map +1 -0
  100. package/dist/{chunk-S4DTX5E7.js → chunk-KMJM55P6.js} +4 -4
  101. package/dist/{chunk-S4DTX5E7.js.map → chunk-KMJM55P6.js.map} +1 -1
  102. package/dist/{chunk-4HSZPHF7.mjs → chunk-LBGOC22N.mjs} +4 -6
  103. package/dist/chunk-LBGOC22N.mjs.map +1 -0
  104. package/dist/{chunk-NKBPEZCX.js → chunk-LPUP2TSV.js} +15 -15
  105. package/dist/{chunk-NKBPEZCX.js.map → chunk-LPUP2TSV.js.map} +1 -1
  106. package/dist/{chunk-KUDSEKV7.mjs → chunk-LRSLYZXP.mjs} +4 -4
  107. package/dist/{chunk-KUDSEKV7.mjs.map → chunk-LRSLYZXP.mjs.map} +1 -1
  108. package/dist/{chunk-7YFUX2CL.mjs → chunk-M26C37WI.mjs} +3 -3
  109. package/dist/{chunk-7YFUX2CL.mjs.map → chunk-M26C37WI.mjs.map} +1 -1
  110. package/dist/{chunk-JPXT5LY2.js → chunk-NNQJUMFQ.js} +204 -12
  111. package/dist/chunk-NNQJUMFQ.js.map +1 -0
  112. package/dist/{chunk-A5R62CXI.mjs → chunk-NP6BRB6Z.mjs} +3 -5
  113. package/dist/chunk-NP6BRB6Z.mjs.map +1 -0
  114. package/dist/{chunk-DUFU27R2.mjs → chunk-PBBARB5B.mjs} +3 -3
  115. package/dist/{chunk-DUFU27R2.mjs.map → chunk-PBBARB5B.mjs.map} +1 -1
  116. package/dist/{chunk-YUCKBIRE.mjs → chunk-PHTL4CPD.mjs} +196 -5
  117. package/dist/chunk-PHTL4CPD.mjs.map +1 -0
  118. package/dist/{chunk-XA2GJFVM.js → chunk-RI6DFQCA.js} +3 -5
  119. package/dist/chunk-RI6DFQCA.js.map +1 -0
  120. package/dist/{chunk-U274XAMD.js → chunk-RWUFJGZX.js} +12 -13
  121. package/dist/chunk-RWUFJGZX.js.map +1 -0
  122. package/dist/{chunk-YYOGUTLV.js → chunk-S3RPDQA7.js} +3 -3
  123. package/dist/{chunk-YYOGUTLV.js.map → chunk-S3RPDQA7.js.map} +1 -1
  124. package/dist/{chunk-A4WYSHIX.js → chunk-SBCG2ZLK.js} +3 -5
  125. package/dist/chunk-SBCG2ZLK.js.map +1 -0
  126. package/dist/{chunk-YOS4A3QE.mjs → chunk-T4ZA4RCC.mjs} +3 -3
  127. package/dist/{chunk-YOS4A3QE.mjs.map → chunk-T4ZA4RCC.mjs.map} +1 -1
  128. package/dist/chunk-TULCHQX2.js +29 -0
  129. package/dist/chunk-TULCHQX2.js.map +1 -0
  130. package/dist/{chunk-QRN6HQOX.js → chunk-UTSKVISR.js} +15 -15
  131. package/dist/{chunk-QRN6HQOX.js.map → chunk-UTSKVISR.js.map} +1 -1
  132. package/dist/{chunk-TDJZFBHI.mjs → chunk-VQL7XDIY.mjs} +8 -9
  133. package/dist/chunk-VQL7XDIY.mjs.map +1 -0
  134. package/dist/{chunk-VJV7WUR2.mjs → chunk-WRRVYPMY.mjs} +3 -5
  135. package/dist/chunk-WRRVYPMY.mjs.map +1 -0
  136. package/dist/{chunk-W5MHX6SO.mjs → chunk-X5FQXU5J.mjs} +3 -3
  137. package/dist/{chunk-W5MHX6SO.mjs.map → chunk-X5FQXU5J.mjs.map} +1 -1
  138. package/dist/{chunk-MWIIHMYS.mjs → chunk-XUVD6I2E.mjs} +3 -3
  139. package/dist/{chunk-MWIIHMYS.mjs.map → chunk-XUVD6I2E.mjs.map} +1 -1
  140. package/dist/{chunk-4EXBEFIV.mjs → chunk-YA2XM3KX.mjs} +4 -4
  141. package/dist/{chunk-4EXBEFIV.mjs.map → chunk-YA2XM3KX.mjs.map} +1 -1
  142. package/dist/{chunk-W4NTPOBD.js → chunk-YTVVICWW.js} +5 -5
  143. package/dist/{chunk-W4NTPOBD.js.map → chunk-YTVVICWW.js.map} +1 -1
  144. package/dist/{chunk-IDBA3YZ6.mjs → chunk-YVP4JJFL.mjs} +4 -4
  145. package/dist/{chunk-IDBA3YZ6.mjs.map → chunk-YVP4JJFL.mjs.map} +1 -1
  146. package/dist/{chunk-UFG2TUBG.js → chunk-ZNYYWNCH.js} +3 -3
  147. package/dist/{chunk-UFG2TUBG.js.map → chunk-ZNYYWNCH.js.map} +1 -1
  148. package/dist/cli/index.js +3 -3
  149. package/dist/cli/index.mjs +1 -1
  150. package/dist/client/index.js +4 -4
  151. package/dist/client/index.mjs +3 -3
  152. package/dist/commerce/index.js +57 -57
  153. package/dist/commerce/index.mjs +5 -5
  154. package/dist/engage/index.js +10 -10
  155. package/dist/engage/index.mjs +7 -7
  156. package/dist/fleet/index.js +8 -8
  157. package/dist/fleet/index.mjs +4 -4
  158. package/dist/forms/FileField.d.ts +2 -4
  159. package/dist/forms/FileField.d.ts.map +1 -1
  160. package/dist/forms/FormClient.d.ts +6 -2
  161. package/dist/forms/FormClient.d.ts.map +1 -1
  162. package/dist/forms/FormEnhancer.d.ts +2 -1
  163. package/dist/forms/FormEnhancer.d.ts.map +1 -1
  164. package/dist/forms/FormField.d.ts.map +1 -1
  165. package/dist/forms/ManagedForm.d.ts +1 -1
  166. package/dist/forms/ManagedForm.d.ts.map +1 -1
  167. package/dist/forms/ServerForm.d.ts +3 -7
  168. package/dist/forms/ServerForm.d.ts.map +1 -1
  169. package/dist/forms/StaticForm.d.ts +17 -18
  170. package/dist/forms/StaticForm.d.ts.map +1 -1
  171. package/dist/forms/index.js +18 -18
  172. package/dist/forms/index.mjs +10 -10
  173. package/dist/forms/server.js +8 -13
  174. package/dist/forms/server.js.map +1 -1
  175. package/dist/forms/server.mjs +7 -12
  176. package/dist/forms/server.mjs.map +1 -1
  177. package/dist/forms/static.js +5 -8
  178. package/dist/forms/static.mjs +4 -7
  179. package/dist/forms/types.d.ts +3 -9
  180. package/dist/forms/types.d.ts.map +1 -1
  181. package/dist/images/index.js +11 -11
  182. package/dist/images/index.mjs +4 -4
  183. package/dist/index.js +63 -63
  184. package/dist/index.mjs +9 -9
  185. package/dist/layout/SiteKitClientProviders.d.ts +1 -3
  186. package/dist/layout/SiteKitClientProviders.d.ts.map +1 -1
  187. package/dist/layout/SiteKitLayout.d.ts.map +1 -1
  188. package/dist/layout/client.d.ts +1 -3
  189. package/dist/layout/client.d.ts.map +1 -1
  190. package/dist/layout/client.js +8 -8
  191. package/dist/layout/client.mjs +7 -7
  192. package/dist/layout/index.js +10 -11
  193. package/dist/layout/index.js.map +1 -1
  194. package/dist/layout/index.mjs +8 -9
  195. package/dist/layout/index.mjs.map +1 -1
  196. package/dist/maps/api.d.ts +2 -2
  197. package/dist/maps/index.js +6 -6
  198. package/dist/maps/index.js.map +1 -1
  199. package/dist/maps/index.mjs +4 -4
  200. package/dist/maps/index.mjs.map +1 -1
  201. package/dist/search/index.js +4 -4
  202. package/dist/search/index.mjs +3 -3
  203. package/dist/seo/client.js +5 -5
  204. package/dist/seo/client.mjs +4 -4
  205. package/dist/seo/index.js +5 -5
  206. package/dist/seo/index.mjs +4 -4
  207. package/dist/server/index.js +3 -3
  208. package/dist/server/index.mjs +2 -2
  209. package/dist/shared/publishCredential.d.ts +1 -9
  210. package/dist/shared/publishCredential.d.ts.map +1 -1
  211. package/dist/shared/version.d.ts +1 -1
  212. package/dist/signal/index.js +11 -11
  213. package/dist/signal/index.mjs +2 -2
  214. package/dist/sync/index.js +17 -17
  215. package/dist/sync/index.mjs +4 -4
  216. package/package.json +1 -1
  217. package/dist/ChatWidget-36IDUB53.mjs +0 -17
  218. package/dist/EngageWidget-ILRTLGBB.mjs +0 -12
  219. package/dist/EngageWidget-YHMSB4YE.js +0 -21
  220. package/dist/FileField-DXGPA4OB.mjs.map +0 -1
  221. package/dist/FileField-LMSLNNRX.js.map +0 -1
  222. package/dist/ManagedForm-AIPXF5QY.mjs +0 -16
  223. package/dist/ManagedForm-T464AA5B.js +0 -25
  224. package/dist/SitemapSync-MT3I4W3B.js +0 -18
  225. package/dist/SitemapSync-RG554AJR.mjs +0 -9
  226. package/dist/chunk-4HSZPHF7.mjs.map +0 -1
  227. package/dist/chunk-4KSE642V.js.map +0 -1
  228. package/dist/chunk-6FASIYCV.js +0 -224
  229. package/dist/chunk-6FASIYCV.js.map +0 -1
  230. package/dist/chunk-A3QAZJXC.js.map +0 -1
  231. package/dist/chunk-A4WYSHIX.js.map +0 -1
  232. package/dist/chunk-A5R62CXI.mjs.map +0 -1
  233. package/dist/chunk-C654VCWV.mjs +0 -6
  234. package/dist/chunk-HIG7COWF.mjs +0 -60
  235. package/dist/chunk-HIG7COWF.mjs.map +0 -1
  236. package/dist/chunk-JPXT5LY2.js.map +0 -1
  237. package/dist/chunk-NO4JQ2G3.mjs.map +0 -1
  238. package/dist/chunk-QRL3QDUE.js.map +0 -1
  239. package/dist/chunk-RH46WZRN.mjs +0 -219
  240. package/dist/chunk-RH46WZRN.mjs.map +0 -1
  241. package/dist/chunk-TDJZFBHI.mjs.map +0 -1
  242. package/dist/chunk-U274XAMD.js.map +0 -1
  243. package/dist/chunk-VJV7WUR2.mjs.map +0 -1
  244. package/dist/chunk-XA2GJFVM.js.map +0 -1
  245. package/dist/chunk-XV2FFSJU.mjs.map +0 -1
  246. package/dist/chunk-YCE6HRWW.js.map +0 -1
  247. package/dist/chunk-YUCKBIRE.mjs.map +0 -1
  248. package/dist/chunk-ZKOQCKOR.js +0 -8
  249. package/dist/forms/native-fallback.d.ts +0 -41
  250. package/dist/forms/native-fallback.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/forms/field-controls.ts","../src/forms/experience-plan.ts"],"names":["useMemo","useState","useRef","useEffect","isDisplayOnly","isEmptyValue"],"mappings":"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","file":"chunk-UFG2TUBG.js","sourcesContent":["'use client'\n\n/**\n * The field controls that need React hooks, loaded only when a form actually\n * has a field that uses them.\n *\n * FormField deliberately does NOT import these. DatePicker carries 17 hooks\n * and FileField holds upload state; importing them there put both in\n * FormField's chunk, which the build stamps `'use client'` — so a Server\n * Component rendering a single text input shipped 38 KB of date picker to the\n * browser. Injecting them from the client side keeps FormField hook-free and\n * therefore server-renderable, which is the whole basis of StaticForm.\n *\n * Injection alone still put both controls in the forms entry's eager graph,\n * because a module-level constant referencing them is a static import: every\n * form paid for the date picker, and most forms have no date field. They are\n * now fetched on demand, per control, from the field list.\n *\n * The wait costs nothing visually. FormField already renders the native\n * control when a control is absent (static mode does exactly this), so a date\n * field paints as `<input type=\"date\">` and upgrades in place when the chunk\n * lands — the same enhancement path a no-JS visitor never leaves.\n *\n * Every client renderer of <FormField> (FormClient, FormSpotlight, FormStage)\n * calls this hook, so the experiences and the classic form always offer\n * identical controls.\n */\n\nimport { useEffect, useMemo, useRef, useState } from 'react'\nimport type { FormField as FormFieldType } from './types'\n\nexport interface FieldControls {\n Date?: React.ComponentType<any>\n File?: React.ComponentType<any>\n}\n\n/** Stable identity for the common case (no date, no file) — no render churn. */\nconst NO_CONTROLS: FieldControls = {}\n\nexport function useFieldControls(fields: FormFieldType[] | undefined): FieldControls {\n const needsDate = useMemo(\n () => (fields ?? []).some((f) => f.field_type === 'date' || f.field_type === 'datetime'),\n [fields],\n )\n const needsFile = useMemo(\n () => (fields ?? []).some((f) => f.field_type === 'file'),\n [fields],\n )\n\n const [controls, setControls] = useState<FieldControls>(NO_CONTROLS)\n // Guards re-import when a conditional field toggles visibility mid-fill.\n const requested = useRef({ date: false, file: false })\n\n useEffect(() => {\n let cancelled = false\n\n if (needsDate && !requested.current.date) {\n requested.current.date = true\n import('./DatePicker')\n .then((m) => {\n if (!cancelled) setControls((prev) => ({ ...prev, Date: m.DatePicker }))\n })\n .catch(() => {\n // Chunk never arrived — the native date input stays, which submits\n // the same value. A failed fetch must not cost the lead.\n requested.current.date = false\n })\n }\n\n if (needsFile && !requested.current.file) {\n requested.current.file = true\n import('./FileField')\n .then((m) => {\n if (!cancelled) setControls((prev) => ({ ...prev, File: m.FileField }))\n })\n .catch(() => {\n requested.current.file = false\n })\n }\n\n return () => {\n cancelled = true\n }\n }, [needsDate, needsFile])\n\n return controls\n}\n","/**\n * Shared planning helpers for the alternate form experiences (stage,\n * spotlight). Pure data — no React, no CSS — so FormClient can import the\n * counts it needs for tracking WITHOUT pulling an experience component (and\n * its stylesheet) into every site's forms bundle. The components themselves\n * are lazy-loaded; this module is the only part that ships eagerly.\n */\n\nimport type {\n FormField as FormFieldType,\n FormStep,\n ManagedFormConfig,\n} from './types'\n// Display-only types are never staged; what counts as empty is shared with\n// validation. Both live in field-rules.ts.\nimport { isDisplayOnly, isEmptyValue } from './field-rules'\n\nexport interface StageQuestion {\n field: FormFieldType\n /** The step (chapter) this question belongs to, when the form is multi-step. */\n step?: FormStep\n}\n\nexport interface StageView {\n fields: FormFieldType[]\n step?: FormStep\n}\n\n/**\n * Flatten a form into its ordered question list. Steps become chapters:\n * multi-step forms iterate steps in step_number order (fields are already\n * sorted by sort_order via normalizeFormConfig); stepless fields trail.\n */\nexport function stageQuestions(config: ManagedFormConfig): StageQuestion[] {\n const input = (config.fields || []).filter(\n (f) => !isDisplayOnly(f),\n )\n if (!config.is_multi_step || !config.steps?.length) {\n return input.map((field) => ({ field }))\n }\n const ordered = [...config.steps].sort((a, b) => a.step_number - b.step_number)\n const out: StageQuestion[] = []\n const claimed = new Set<string>()\n for (const step of ordered) {\n for (const field of input) {\n if (field.step_id === step.id) {\n out.push({ field, step })\n claimed.add(field.id)\n }\n }\n }\n for (const field of input) {\n if (!claimed.has(field.id)) out.push({ field })\n }\n return out\n}\n\nconst WIDTH_FRACTION: Record<string, number> = {\n full: 1,\n half: 1 / 2,\n third: 1 / 3,\n quarter: 1 / 4,\n}\n\n/**\n * Group questions into beats using the classic grid's own row math:\n * consecutive sub-full-width fields fill a row (2 halves, 3 thirds...) and\n * that row is one beat; a full-width field closes any open row and stands\n * alone; a chapter change always starts a fresh beat.\n */\nexport function stageViews(config: ManagedFormConfig): StageView[] {\n const questions = stageQuestions(config)\n const views: StageView[] = []\n let open: StageView | null = null\n let openWidth = 0\n\n const close = () => {\n if (open) views.push(open)\n open = null\n openWidth = 0\n }\n\n for (const q of questions) {\n const fraction = WIDTH_FRACTION[q.field.width] ?? 1\n const chapterChanged = open && open.step?.id !== q.step?.id\n if (fraction >= 1 || chapterChanged) close()\n if (!open) {\n open = { fields: [q.field], step: q.step }\n openWidth = fraction\n if (fraction >= 1) close()\n continue\n }\n if (openWidth + fraction > 1.0001) close()\n if (!open) {\n open = { fields: [q.field], step: q.step }\n openWidth = fraction\n continue\n }\n open.fields.push(q.field)\n openWidth += fraction\n }\n close()\n return views\n}\n\nexport function countStageViews(config: ManagedFormConfig): number {\n return stageViews(config).length\n}\n\nexport function countStageQuestions(config: ManagedFormConfig): number {\n return stageQuestions(config).length\n}\n\n/**\n * Honest, friendly time estimate: \"about 40 seconds\".\n * ~8s per question, rounded to something a human would actually say.\n */\nexport function stageEstimate(questionCount: number): string {\n const seconds = questionCount * 8\n if (seconds < 50) return `about ${Math.max(15, Math.ceil(seconds / 5) * 5)} seconds`\n if (seconds <= 90) return 'about a minute'\n return `about ${Math.round(seconds / 60)} minutes`\n}\n\n/** First name for the greeting — conservative: short, single token, else null. */\nexport function stageFirstName(value: unknown): string | null {\n if (typeof value !== 'string') return null\n const token = value.trim().split(/\\s+/)[0]\n if (!token || token.length > 24) return null\n return token\n}\n\nexport function formatAnswer(value: unknown): string | null {\n if (isEmptyValue(value)) return null\n if (Array.isArray(value)) return value.map(String).join(', ')\n if (typeof value === 'boolean') return value ? 'Yes' : 'No'\n return String(value)\n}\n\n/** Single-select types where picking an answer advances after a lock-in beat. */\nexport const AUTO_ADVANCE_TYPES = ['radio', 'select', 'rating']\n"]}
1
+ {"version":3,"sources":["../src/forms/field-controls.ts","../src/forms/experience-plan.ts"],"names":["useMemo","useState","useRef","useEffect","isDisplayOnly","isEmptyValue"],"mappings":"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","file":"chunk-ZNYYWNCH.js","sourcesContent":["'use client'\n\n/**\n * The field controls that need React hooks, loaded only when a form actually\n * has a field that uses them.\n *\n * FormField deliberately does NOT import these. DatePicker carries 17 hooks\n * and FileField holds upload state; importing them there put both in\n * FormField's chunk, which the build stamps `'use client'` — so a Server\n * Component rendering a single text input shipped 38 KB of date picker to the\n * browser. Injecting them from the client side keeps FormField hook-free and\n * therefore server-renderable, which is the whole basis of StaticForm.\n *\n * Injection alone still put both controls in the forms entry's eager graph,\n * because a module-level constant referencing them is a static import: every\n * form paid for the date picker, and most forms have no date field. They are\n * now fetched on demand, per control, from the field list.\n *\n * The wait costs nothing visually. FormField already renders the native\n * control when a control is absent (static mode does exactly this), so a date\n * field paints as `<input type=\"date\">` and upgrades in place when the chunk\n * lands — the same enhancement path a no-JS visitor never leaves.\n *\n * Every client renderer of <FormField> (FormClient, FormSpotlight, FormStage)\n * calls this hook, so the experiences and the classic form always offer\n * identical controls.\n */\n\nimport { useEffect, useMemo, useRef, useState } from 'react'\nimport type { FormField as FormFieldType } from './types'\n\nexport interface FieldControls {\n Date?: React.ComponentType<any>\n File?: React.ComponentType<any>\n}\n\n/** Stable identity for the common case (no date, no file) — no render churn. */\nconst NO_CONTROLS: FieldControls = {}\n\nexport function useFieldControls(fields: FormFieldType[] | undefined): FieldControls {\n const needsDate = useMemo(\n () => (fields ?? []).some((f) => f.field_type === 'date' || f.field_type === 'datetime'),\n [fields],\n )\n const needsFile = useMemo(\n () => (fields ?? []).some((f) => f.field_type === 'file'),\n [fields],\n )\n\n const [controls, setControls] = useState<FieldControls>(NO_CONTROLS)\n // Guards re-import when a conditional field toggles visibility mid-fill.\n const requested = useRef({ date: false, file: false })\n\n useEffect(() => {\n let cancelled = false\n\n if (needsDate && !requested.current.date) {\n requested.current.date = true\n import('./DatePicker')\n .then((m) => {\n if (!cancelled) setControls((prev) => ({ ...prev, Date: m.DatePicker }))\n })\n .catch(() => {\n // Chunk never arrived — the native date input stays, which submits\n // the same value. A failed fetch must not cost the lead.\n requested.current.date = false\n })\n }\n\n if (needsFile && !requested.current.file) {\n requested.current.file = true\n import('./FileField')\n .then((m) => {\n if (!cancelled) setControls((prev) => ({ ...prev, File: m.FileField }))\n })\n .catch(() => {\n requested.current.file = false\n })\n }\n\n return () => {\n cancelled = true\n }\n }, [needsDate, needsFile])\n\n return controls\n}\n","/**\n * Shared planning helpers for the alternate form experiences (stage,\n * spotlight). Pure data — no React, no CSS — so FormClient can import the\n * counts it needs for tracking WITHOUT pulling an experience component (and\n * its stylesheet) into every site's forms bundle. The components themselves\n * are lazy-loaded; this module is the only part that ships eagerly.\n */\n\nimport type {\n FormField as FormFieldType,\n FormStep,\n ManagedFormConfig,\n} from './types'\n// Display-only types are never staged; what counts as empty is shared with\n// validation. Both live in field-rules.ts.\nimport { isDisplayOnly, isEmptyValue } from './field-rules'\n\nexport interface StageQuestion {\n field: FormFieldType\n /** The step (chapter) this question belongs to, when the form is multi-step. */\n step?: FormStep\n}\n\nexport interface StageView {\n fields: FormFieldType[]\n step?: FormStep\n}\n\n/**\n * Flatten a form into its ordered question list. Steps become chapters:\n * multi-step forms iterate steps in step_number order (fields are already\n * sorted by sort_order via normalizeFormConfig); stepless fields trail.\n */\nexport function stageQuestions(config: ManagedFormConfig): StageQuestion[] {\n const input = (config.fields || []).filter(\n (f) => !isDisplayOnly(f),\n )\n if (!config.is_multi_step || !config.steps?.length) {\n return input.map((field) => ({ field }))\n }\n const ordered = [...config.steps].sort((a, b) => a.step_number - b.step_number)\n const out: StageQuestion[] = []\n const claimed = new Set<string>()\n for (const step of ordered) {\n for (const field of input) {\n if (field.step_id === step.id) {\n out.push({ field, step })\n claimed.add(field.id)\n }\n }\n }\n for (const field of input) {\n if (!claimed.has(field.id)) out.push({ field })\n }\n return out\n}\n\nconst WIDTH_FRACTION: Record<string, number> = {\n full: 1,\n half: 1 / 2,\n third: 1 / 3,\n quarter: 1 / 4,\n}\n\n/**\n * Group questions into beats using the classic grid's own row math:\n * consecutive sub-full-width fields fill a row (2 halves, 3 thirds...) and\n * that row is one beat; a full-width field closes any open row and stands\n * alone; a chapter change always starts a fresh beat.\n */\nexport function stageViews(config: ManagedFormConfig): StageView[] {\n const questions = stageQuestions(config)\n const views: StageView[] = []\n let open: StageView | null = null\n let openWidth = 0\n\n const close = () => {\n if (open) views.push(open)\n open = null\n openWidth = 0\n }\n\n for (const q of questions) {\n const fraction = WIDTH_FRACTION[q.field.width] ?? 1\n const chapterChanged = open && open.step?.id !== q.step?.id\n if (fraction >= 1 || chapterChanged) close()\n if (!open) {\n open = { fields: [q.field], step: q.step }\n openWidth = fraction\n if (fraction >= 1) close()\n continue\n }\n if (openWidth + fraction > 1.0001) close()\n if (!open) {\n open = { fields: [q.field], step: q.step }\n openWidth = fraction\n continue\n }\n open.fields.push(q.field)\n openWidth += fraction\n }\n close()\n return views\n}\n\nexport function countStageViews(config: ManagedFormConfig): number {\n return stageViews(config).length\n}\n\nexport function countStageQuestions(config: ManagedFormConfig): number {\n return stageQuestions(config).length\n}\n\n/**\n * Honest, friendly time estimate: \"about 40 seconds\".\n * ~8s per question, rounded to something a human would actually say.\n */\nexport function stageEstimate(questionCount: number): string {\n const seconds = questionCount * 8\n if (seconds < 50) return `about ${Math.max(15, Math.ceil(seconds / 5) * 5)} seconds`\n if (seconds <= 90) return 'about a minute'\n return `about ${Math.round(seconds / 60)} minutes`\n}\n\n/** First name for the greeting — conservative: short, single token, else null. */\nexport function stageFirstName(value: unknown): string | null {\n if (typeof value !== 'string') return null\n const token = value.trim().split(/\\s+/)[0]\n if (!token || token.length > 24) return null\n return token\n}\n\nexport function formatAnswer(value: unknown): string | null {\n if (isEmptyValue(value)) return null\n if (Array.isArray(value)) return value.map(String).join(', ')\n if (typeof value === 'boolean') return value ? 'Yes' : 'No'\n return String(value)\n}\n\n/** Single-select types where picking an answer advances after a lock-in beat. */\nexport const AUTO_ADVANCE_TYPES = ['radio', 'select', 'rating']\n"]}
package/dist/cli/index.js CHANGED
@@ -8,7 +8,7 @@ var chunkCUNZAD46_js = require('../chunk-CUNZAD46.js');
8
8
  var chunkNN2YE5WT_js = require('../chunk-NN2YE5WT.js');
9
9
  var chunkY2CP5J6Q_js = require('../chunk-Y2CP5J6Q.js');
10
10
  var chunkJONWE26J_js = require('../chunk-JONWE26J.js');
11
- var chunkZKOQCKOR_js = require('../chunk-ZKOQCKOR.js');
11
+ var chunk6PQJH6YR_js = require('../chunk-6PQJH6YR.js');
12
12
  var chunkSNAQBZPT_js = require('../chunk-SNAQBZPT.js');
13
13
  var events = require('events');
14
14
  var childProcess = require('child_process');
@@ -13545,7 +13545,7 @@ function buildEnvelope(input, nowMs = Date.now()) {
13545
13545
  ok: exitCode === 0 /* OK */,
13546
13546
  command,
13547
13547
  schemaVersion: 1,
13548
- siteKitVersion: chunkZKOQCKOR_js.SITE_KIT_VERSION,
13548
+ siteKitVersion: chunk6PQJH6YR_js.SITE_KIT_VERSION,
13549
13549
  exitCode,
13550
13550
  status: statusForCode(exitCode),
13551
13551
  summary,
@@ -32851,7 +32851,7 @@ async function geoCommand(options) {
32851
32851
  (0, import_dotenv2.config)({ path: ".env.local", quiet: true });
32852
32852
  (0, import_dotenv2.config)({ path: ".env", quiet: true });
32853
32853
  var program2 = new Command();
32854
- program2.name("sonor-setup").description("Setup + verification toolchain for @sonordev/site-kit").version(chunkZKOQCKOR_js.SITE_KIT_VERSION);
32854
+ program2.name("sonor-setup").description("Setup + verification toolchain for @sonordev/site-kit").version(chunk6PQJH6YR_js.SITE_KIT_VERSION);
32855
32855
  withAgentFlags(
32856
32856
  program2.command("verify").description("Verify the integration actually works (health + key + SSR) \u2014 exit 0 = done").option("--url <url>", "Verify a running/deployed URL server-renders (recommended for agents)").option("--offline", "Skip the network key-validity ping").option("--strict", "Treat warnings as failures")
32857
32857
  ).action(verifyCommand);
@@ -6,7 +6,7 @@ import { TITLE_MAX_PX, OG_REPORT_ATTR } from '../chunk-YU7QZ3PP.mjs';
6
6
  import { require_main } from '../chunk-NNZDWY3L.mjs';
7
7
  import { findAppDirForDiscovery, NEXT_PROXY_FILES, NEXT_MIDDLEWARE_FILES, findConventionFile, NEXT_APP_DIRS, findSitemapRoute, findProxyFiles, findNextConfig, findRootLayout, discoverNextJsRoutes, hasPageFile, NEXT_SOURCE_EXTENSIONS } from '../chunk-UHYRVALN.mjs';
8
8
  import { applyTrailingSlash } from '../chunk-C2CTLLIO.mjs';
9
- import { SITE_KIT_VERSION } from '../chunk-C654VCWV.mjs';
9
+ import { SITE_KIT_VERSION } from '../chunk-GBMVAKX3.mjs';
10
10
  import { __commonJS, __require, __toESM, __export, __privateAdd, __publicField, __privateGet, __privateMethod, __privateSet, __privateWrapper } from '../chunk-BEXTDHO4.mjs';
11
11
  import { EventEmitter } from 'events';
12
12
  import childProcess, { execFile as execFile$1, execSync, spawnSync, spawn } from 'child_process';
@@ -1,7 +1,7 @@
1
1
  'use client';
2
2
  'use strict';
3
3
 
4
- var chunkA3QAZJXC_js = require('../chunk-A3QAZJXC.js');
4
+ var chunkCB3WK2OW_js = require('../chunk-CB3WK2OW.js');
5
5
  var chunkHGNSJXWT_js = require('../chunk-HGNSJXWT.js');
6
6
  require('../chunk-UZKXOZHR.js');
7
7
  require('../chunk-SWIKKSKL.js');
@@ -9,8 +9,8 @@ var chunk3DWIYCQX_js = require('../chunk-3DWIYCQX.js');
9
9
  var chunkG6WF4G3E_js = require('../chunk-G6WF4G3E.js');
10
10
  var chunkRC4WWQXR_js = require('../chunk-RC4WWQXR.js');
11
11
  require('../chunk-VJMPIRSD.js');
12
- require('../chunk-6TSYWYYR.js');
13
- require('../chunk-ZKOQCKOR.js');
12
+ require('../chunk-F5RO6HVF.js');
13
+ require('../chunk-6PQJH6YR.js');
14
14
  require('../chunk-SNAQBZPT.js');
15
15
 
16
16
  // src/client/SiteKitCredential.tsx
@@ -20,7 +20,7 @@ function SiteKitCredential({
20
20
  site,
21
21
  debug
22
22
  }) {
23
- chunkA3QAZJXC_js.publishSiteCredential({ apiKey, apiUrl, site, debug });
23
+ chunkCB3WK2OW_js.publishSiteCredential({ apiKey, apiUrl, site, debug });
24
24
  return null;
25
25
  }
26
26
 
@@ -1,5 +1,5 @@
1
1
  'use client';
2
- import { publishSiteCredential } from '../chunk-4HSZPHF7.mjs';
2
+ import { publishSiteCredential } from '../chunk-LBGOC22N.mjs';
3
3
  export { useDeferredActivation } from '../chunk-ZVBLXXNJ.mjs';
4
4
  import '../chunk-KZVSB5WE.mjs';
5
5
  import '../chunk-ZN4HBK5C.mjs';
@@ -7,8 +7,8 @@ export { trackConversion, trackEvent } from '../chunk-SHLWA6JY.mjs';
7
7
  export { VISUAL_VIEWPORT_GAP_PROPERTY, VisualViewportGap, useVisualViewportGap } from '../chunk-NSWO43XW.mjs';
8
8
  export { getOrCreateSessionId, getOrCreateVisitorId, useSiteKitIdentity } from '../chunk-ZZQAGCSI.mjs';
9
9
  import '../chunk-6EDVCUAG.mjs';
10
- import '../chunk-OUM77VZ4.mjs';
11
- import '../chunk-C654VCWV.mjs';
10
+ import '../chunk-EE7J66MJ.mjs';
11
+ import '../chunk-GBMVAKX3.mjs';
12
12
  import '../chunk-BEXTDHO4.mjs';
13
13
 
14
14
  // src/client/SiteKitCredential.tsx
@@ -1,228 +1,228 @@
1
1
  'use client';
2
2
  'use strict';
3
3
 
4
- var chunk6WWGH6E3_js = require('../chunk-6WWGH6E3.js');
4
+ var chunkDHCU3RTK_js = require('../chunk-DHCU3RTK.js');
5
5
  require('../chunk-3SDMJMN2.js');
6
- require('../chunk-W4NTPOBD.js');
6
+ require('../chunk-YTVVICWW.js');
7
7
  require('../chunk-3DWIYCQX.js');
8
8
  require('../chunk-RC4WWQXR.js');
9
9
  require('../chunk-P4Y75QSU.js');
10
10
  require('../chunk-VJMPIRSD.js');
11
11
  require('../chunk-5RNAUYWE.js');
12
- require('../chunk-NKBPEZCX.js');
13
- require('../chunk-6TSYWYYR.js');
14
- require('../chunk-ZKOQCKOR.js');
12
+ require('../chunk-LPUP2TSV.js');
13
+ require('../chunk-F5RO6HVF.js');
14
+ require('../chunk-6PQJH6YR.js');
15
15
  require('../chunk-SNAQBZPT.js');
16
16
 
17
17
 
18
18
 
19
19
  Object.defineProperty(exports, "CalendarView", {
20
20
  enumerable: true,
21
- get: function () { return chunk6WWGH6E3_js.CalendarView; }
21
+ get: function () { return chunkDHCU3RTK_js.CalendarView; }
22
22
  });
23
23
  Object.defineProperty(exports, "CapacityBadge", {
24
24
  enumerable: true,
25
- get: function () { return chunk6WWGH6E3_js.CapacityBadge; }
25
+ get: function () { return chunkDHCU3RTK_js.CapacityBadge; }
26
26
  });
27
27
  Object.defineProperty(exports, "CheckoutForm", {
28
28
  enumerable: true,
29
- get: function () { return chunk6WWGH6E3_js.CheckoutForm; }
29
+ get: function () { return chunkDHCU3RTK_js.CheckoutForm; }
30
30
  });
31
31
  Object.defineProperty(exports, "EventCalendar", {
32
32
  enumerable: true,
33
- get: function () { return chunk6WWGH6E3_js.EventCalendar; }
33
+ get: function () { return chunkDHCU3RTK_js.EventCalendar; }
34
34
  });
35
35
  Object.defineProperty(exports, "EventCheckout", {
36
36
  enumerable: true,
37
- get: function () { return chunk6WWGH6E3_js.EventCheckout; }
37
+ get: function () { return chunkDHCU3RTK_js.EventCheckout; }
38
38
  });
39
39
  Object.defineProperty(exports, "EventEmbed", {
40
40
  enumerable: true,
41
- get: function () { return chunk6WWGH6E3_js.EventEmbed; }
41
+ get: function () { return chunkDHCU3RTK_js.EventEmbed; }
42
42
  });
43
43
  Object.defineProperty(exports, "EventJsonLd", {
44
44
  enumerable: true,
45
- get: function () { return chunk6WWGH6E3_js.EventJsonLd; }
45
+ get: function () { return chunkDHCU3RTK_js.EventJsonLd; }
46
46
  });
47
47
  Object.defineProperty(exports, "EventModal", {
48
48
  enumerable: true,
49
- get: function () { return chunk6WWGH6E3_js.EventModal; }
49
+ get: function () { return chunkDHCU3RTK_js.EventModal; }
50
50
  });
51
51
  Object.defineProperty(exports, "EventTile", {
52
52
  enumerable: true,
53
- get: function () { return chunk6WWGH6E3_js.EventTile; }
53
+ get: function () { return chunkDHCU3RTK_js.EventTile; }
54
54
  });
55
55
  Object.defineProperty(exports, "EventsAgenda", {
56
56
  enumerable: true,
57
- get: function () { return chunk6WWGH6E3_js.EventsAgenda; }
57
+ get: function () { return chunkDHCU3RTK_js.EventsAgenda; }
58
58
  });
59
59
  Object.defineProperty(exports, "EventsWidget", {
60
60
  enumerable: true,
61
- get: function () { return chunk6WWGH6E3_js.EventsWidget; }
61
+ get: function () { return chunkDHCU3RTK_js.EventsWidget; }
62
62
  });
63
63
  Object.defineProperty(exports, "OfferingCard", {
64
64
  enumerable: true,
65
- get: function () { return chunk6WWGH6E3_js.OfferingCard; }
65
+ get: function () { return chunkDHCU3RTK_js.OfferingCard; }
66
66
  });
67
67
  Object.defineProperty(exports, "OfferingList", {
68
68
  enumerable: true,
69
- get: function () { return chunk6WWGH6E3_js.OfferingList; }
69
+ get: function () { return chunkDHCU3RTK_js.OfferingList; }
70
70
  });
71
71
  Object.defineProperty(exports, "ProductDetail", {
72
72
  enumerable: true,
73
- get: function () { return chunk6WWGH6E3_js.ProductDetail; }
73
+ get: function () { return chunkDHCU3RTK_js.ProductDetail; }
74
74
  });
75
75
  Object.defineProperty(exports, "ProductEmbed", {
76
76
  enumerable: true,
77
- get: function () { return chunk6WWGH6E3_js.ProductEmbed; }
77
+ get: function () { return chunkDHCU3RTK_js.ProductEmbed; }
78
78
  });
79
79
  Object.defineProperty(exports, "ProductGrid", {
80
80
  enumerable: true,
81
- get: function () { return chunk6WWGH6E3_js.ProductGrid; }
81
+ get: function () { return chunkDHCU3RTK_js.ProductGrid; }
82
82
  });
83
83
  Object.defineProperty(exports, "ProductPage", {
84
84
  enumerable: true,
85
- get: function () { return chunk6WWGH6E3_js.ProductPage; }
85
+ get: function () { return chunkDHCU3RTK_js.ProductPage; }
86
86
  });
87
87
  Object.defineProperty(exports, "RegistrationForm", {
88
88
  enumerable: true,
89
- get: function () { return chunk6WWGH6E3_js.RegistrationForm; }
89
+ get: function () { return chunkDHCU3RTK_js.RegistrationForm; }
90
90
  });
91
91
  Object.defineProperty(exports, "SizeChart", {
92
92
  enumerable: true,
93
- get: function () { return chunk6WWGH6E3_js.SizeChart; }
93
+ get: function () { return chunkDHCU3RTK_js.SizeChart; }
94
94
  });
95
95
  Object.defineProperty(exports, "UpcomingEvents", {
96
96
  enumerable: true,
97
- get: function () { return chunk6WWGH6E3_js.UpcomingEvents; }
97
+ get: function () { return chunkDHCU3RTK_js.UpcomingEvents; }
98
98
  });
99
99
  Object.defineProperty(exports, "createCheckoutSession", {
100
100
  enumerable: true,
101
- get: function () { return chunk6WWGH6E3_js.createCheckoutSession; }
101
+ get: function () { return chunkDHCU3RTK_js.createCheckoutSession; }
102
102
  });
103
103
  Object.defineProperty(exports, "createPaymentIntent", {
104
104
  enumerable: true,
105
- get: function () { return chunk6WWGH6E3_js.createPaymentIntent; }
105
+ get: function () { return chunkDHCU3RTK_js.createPaymentIntent; }
106
106
  });
107
107
  Object.defineProperty(exports, "fetchActiveProcessor", {
108
108
  enumerable: true,
109
- get: function () { return chunk6WWGH6E3_js.fetchActiveProcessor; }
109
+ get: function () { return chunkDHCU3RTK_js.fetchActiveProcessor; }
110
110
  });
111
111
  Object.defineProperty(exports, "fetchCategories", {
112
112
  enumerable: true,
113
- get: function () { return chunk6WWGH6E3_js.fetchCategories; }
113
+ get: function () { return chunkDHCU3RTK_js.fetchCategories; }
114
114
  });
115
115
  Object.defineProperty(exports, "fetchLatestOffering", {
116
116
  enumerable: true,
117
- get: function () { return chunk6WWGH6E3_js.fetchLatestOffering; }
117
+ get: function () { return chunkDHCU3RTK_js.fetchLatestOffering; }
118
118
  });
119
119
  Object.defineProperty(exports, "fetchNextEvent", {
120
120
  enumerable: true,
121
- get: function () { return chunk6WWGH6E3_js.fetchNextEvent; }
121
+ get: function () { return chunkDHCU3RTK_js.fetchNextEvent; }
122
122
  });
123
123
  Object.defineProperty(exports, "fetchOffering", {
124
124
  enumerable: true,
125
- get: function () { return chunk6WWGH6E3_js.fetchOffering; }
125
+ get: function () { return chunkDHCU3RTK_js.fetchOffering; }
126
126
  });
127
127
  Object.defineProperty(exports, "fetchOfferings", {
128
128
  enumerable: true,
129
- get: function () { return chunk6WWGH6E3_js.fetchOfferings; }
129
+ get: function () { return chunkDHCU3RTK_js.fetchOfferings; }
130
130
  });
131
131
  Object.defineProperty(exports, "fetchProcessorConfig", {
132
132
  enumerable: true,
133
- get: function () { return chunk6WWGH6E3_js.fetchProcessorConfig; }
133
+ get: function () { return chunkDHCU3RTK_js.fetchProcessorConfig; }
134
134
  });
135
135
  Object.defineProperty(exports, "fetchProductBySlug", {
136
136
  enumerable: true,
137
- get: function () { return chunk6WWGH6E3_js.fetchProductBySlug; }
137
+ get: function () { return chunkDHCU3RTK_js.fetchProductBySlug; }
138
138
  });
139
139
  Object.defineProperty(exports, "fetchProducts", {
140
140
  enumerable: true,
141
- get: function () { return chunk6WWGH6E3_js.fetchProducts; }
141
+ get: function () { return chunkDHCU3RTK_js.fetchProducts; }
142
142
  });
143
143
  Object.defineProperty(exports, "fetchProductsPublic", {
144
144
  enumerable: true,
145
- get: function () { return chunk6WWGH6E3_js.fetchProductsPublic; }
145
+ get: function () { return chunkDHCU3RTK_js.fetchProductsPublic; }
146
146
  });
147
147
  Object.defineProperty(exports, "fetchServices", {
148
148
  enumerable: true,
149
- get: function () { return chunk6WWGH6E3_js.fetchServices; }
149
+ get: function () { return chunkDHCU3RTK_js.fetchServices; }
150
150
  });
151
151
  Object.defineProperty(exports, "fetchShippingRates", {
152
152
  enumerable: true,
153
- get: function () { return chunk6WWGH6E3_js.fetchShippingRates; }
153
+ get: function () { return chunkDHCU3RTK_js.fetchShippingRates; }
154
154
  });
155
155
  Object.defineProperty(exports, "fetchUpcomingEvents", {
156
156
  enumerable: true,
157
- get: function () { return chunk6WWGH6E3_js.fetchUpcomingEvents; }
157
+ get: function () { return chunkDHCU3RTK_js.fetchUpcomingEvents; }
158
158
  });
159
159
  Object.defineProperty(exports, "formatDate", {
160
160
  enumerable: true,
161
- get: function () { return chunk6WWGH6E3_js.formatDate; }
161
+ get: function () { return chunkDHCU3RTK_js.formatDate; }
162
162
  });
163
163
  Object.defineProperty(exports, "formatDateRange", {
164
164
  enumerable: true,
165
- get: function () { return chunk6WWGH6E3_js.formatDateRange; }
165
+ get: function () { return chunkDHCU3RTK_js.formatDateRange; }
166
166
  });
167
167
  Object.defineProperty(exports, "formatDateTime", {
168
168
  enumerable: true,
169
- get: function () { return chunk6WWGH6E3_js.formatDateTime; }
169
+ get: function () { return chunkDHCU3RTK_js.formatDateTime; }
170
170
  });
171
171
  Object.defineProperty(exports, "formatPrice", {
172
172
  enumerable: true,
173
- get: function () { return chunk6WWGH6E3_js.formatPrice; }
173
+ get: function () { return chunkDHCU3RTK_js.formatPrice; }
174
174
  });
175
175
  Object.defineProperty(exports, "formatTime", {
176
176
  enumerable: true,
177
- get: function () { return chunk6WWGH6E3_js.formatTime; }
177
+ get: function () { return chunkDHCU3RTK_js.formatTime; }
178
178
  });
179
179
  Object.defineProperty(exports, "getOfferingUrl", {
180
180
  enumerable: true,
181
- get: function () { return chunk6WWGH6E3_js.getOfferingUrl; }
181
+ get: function () { return chunkDHCU3RTK_js.getOfferingUrl; }
182
182
  });
183
183
  Object.defineProperty(exports, "getRelativeTimeUntil", {
184
184
  enumerable: true,
185
- get: function () { return chunk6WWGH6E3_js.getRelativeTimeUntil; }
185
+ get: function () { return chunkDHCU3RTK_js.getRelativeTimeUntil; }
186
186
  });
187
187
  Object.defineProperty(exports, "getSpotsRemaining", {
188
188
  enumerable: true,
189
- get: function () { return chunk6WWGH6E3_js.getSpotsRemaining; }
189
+ get: function () { return chunkDHCU3RTK_js.getSpotsRemaining; }
190
190
  });
191
191
  Object.defineProperty(exports, "googleCalendarUrl", {
192
192
  enumerable: true,
193
- get: function () { return chunk6WWGH6E3_js.googleCalendarUrl; }
193
+ get: function () { return chunkDHCU3RTK_js.googleCalendarUrl; }
194
194
  });
195
195
  Object.defineProperty(exports, "icsForEvent", {
196
196
  enumerable: true,
197
- get: function () { return chunk6WWGH6E3_js.icsForEvent; }
197
+ get: function () { return chunkDHCU3RTK_js.icsForEvent; }
198
198
  });
199
199
  Object.defineProperty(exports, "icsResponse", {
200
200
  enumerable: true,
201
- get: function () { return chunk6WWGH6E3_js.icsResponse; }
201
+ get: function () { return chunkDHCU3RTK_js.icsResponse; }
202
202
  });
203
203
  Object.defineProperty(exports, "isEventSoldOut", {
204
204
  enumerable: true,
205
- get: function () { return chunk6WWGH6E3_js.isEventSoldOut; }
205
+ get: function () { return chunkDHCU3RTK_js.isEventSoldOut; }
206
206
  });
207
207
  Object.defineProperty(exports, "registerForEvent", {
208
208
  enumerable: true,
209
- get: function () { return chunk6WWGH6E3_js.registerForEvent; }
209
+ get: function () { return chunkDHCU3RTK_js.registerForEvent; }
210
210
  });
211
211
  Object.defineProperty(exports, "shippingSelection", {
212
212
  enumerable: true,
213
- get: function () { return chunk6WWGH6E3_js.shippingSelection; }
213
+ get: function () { return chunkDHCU3RTK_js.shippingSelection; }
214
214
  });
215
215
  Object.defineProperty(exports, "useEventModal", {
216
216
  enumerable: true,
217
- get: function () { return chunk6WWGH6E3_js.useEventModal; }
217
+ get: function () { return chunkDHCU3RTK_js.useEventModal; }
218
218
  });
219
219
  Object.defineProperty(exports, "validateAddress", {
220
220
  enumerable: true,
221
- get: function () { return chunk6WWGH6E3_js.validateAddress; }
221
+ get: function () { return chunkDHCU3RTK_js.validateAddress; }
222
222
  });
223
223
  Object.defineProperty(exports, "validateDiscountCode", {
224
224
  enumerable: true,
225
- get: function () { return chunk6WWGH6E3_js.validateDiscountCode; }
225
+ get: function () { return chunkDHCU3RTK_js.validateDiscountCode; }
226
226
  });
227
227
  //# sourceMappingURL=index.js.map
228
228
  //# sourceMappingURL=index.js.map
@@ -1,15 +1,15 @@
1
1
  'use client';
2
- export { CalendarView, CapacityBadge, CheckoutForm, EventCalendar, EventCheckout, EventEmbed, EventJsonLd, EventModal, EventTile, EventsAgenda, EventsWidget, OfferingCard, OfferingList, ProductDetail, ProductEmbed, ProductGrid, ProductPage, RegistrationForm, SizeChart, UpcomingEvents, createCheckoutSession, createPaymentIntent, fetchActiveProcessor, fetchCategories, fetchLatestOffering, fetchNextEvent, fetchOffering, fetchOfferings, fetchProcessorConfig, fetchProductBySlug, fetchProducts, fetchProductsPublic, fetchServices, fetchShippingRates, fetchUpcomingEvents, formatDate, formatDateRange, formatDateTime, formatPrice, formatTime, getOfferingUrl, getRelativeTimeUntil, getSpotsRemaining, googleCalendarUrl, icsForEvent, icsResponse, isEventSoldOut, registerForEvent, shippingSelection, useEventModal, validateAddress, validateDiscountCode } from '../chunk-KUDSEKV7.mjs';
2
+ export { CalendarView, CapacityBadge, CheckoutForm, EventCalendar, EventCheckout, EventEmbed, EventJsonLd, EventModal, EventTile, EventsAgenda, EventsWidget, OfferingCard, OfferingList, ProductDetail, ProductEmbed, ProductGrid, ProductPage, RegistrationForm, SizeChart, UpcomingEvents, createCheckoutSession, createPaymentIntent, fetchActiveProcessor, fetchCategories, fetchLatestOffering, fetchNextEvent, fetchOffering, fetchOfferings, fetchProcessorConfig, fetchProductBySlug, fetchProducts, fetchProductsPublic, fetchServices, fetchShippingRates, fetchUpcomingEvents, formatDate, formatDateRange, formatDateTime, formatPrice, formatTime, getOfferingUrl, getRelativeTimeUntil, getSpotsRemaining, googleCalendarUrl, icsForEvent, icsResponse, isEventSoldOut, registerForEvent, shippingSelection, useEventModal, validateAddress, validateDiscountCode } from '../chunk-LRSLYZXP.mjs';
3
3
  import '../chunk-64BOVMXG.mjs';
4
- import '../chunk-MWIIHMYS.mjs';
4
+ import '../chunk-XUVD6I2E.mjs';
5
5
  import '../chunk-SHLWA6JY.mjs';
6
6
  import '../chunk-ZZQAGCSI.mjs';
7
7
  import '../chunk-5SANRSX3.mjs';
8
8
  import '../chunk-6EDVCUAG.mjs';
9
9
  import '../chunk-A6UYV475.mjs';
10
- import '../chunk-XNZ2WFXR.mjs';
11
- import '../chunk-OUM77VZ4.mjs';
12
- import '../chunk-C654VCWV.mjs';
10
+ import '../chunk-377Z7GOV.mjs';
11
+ import '../chunk-EE7J66MJ.mjs';
12
+ import '../chunk-GBMVAKX3.mjs';
13
13
  import '../chunk-BEXTDHO4.mjs';
14
14
  //# sourceMappingURL=index.mjs.map
15
15
  //# sourceMappingURL=index.mjs.map
@@ -1,23 +1,23 @@
1
1
  'use client';
2
2
  'use strict';
3
3
 
4
- var chunkQRN6HQOX_js = require('../chunk-QRN6HQOX.js');
5
- var chunkRZUUPX2H_js = require('../chunk-RZUUPX2H.js');
4
+ var chunkUTSKVISR_js = require('../chunk-UTSKVISR.js');
5
+ var chunkDFVWOIJE_js = require('../chunk-DFVWOIJE.js');
6
6
  require('../chunk-ESP5RMB7.js');
7
7
  require('../chunk-NBOBOYMT.js');
8
8
  require('../chunk-G6WF4G3E.js');
9
- require('../chunk-JPXT5LY2.js');
9
+ require('../chunk-NNQJUMFQ.js');
10
10
  require('../chunk-5XFFUP6D.js');
11
- require('../chunk-6FASIYCV.js');
11
+ require('../chunk-TULCHQX2.js');
12
12
  require('../chunk-KHPJ3CEL.js');
13
13
  require('../chunk-M2N7NY3V.js');
14
14
  require('../chunk-RC4WWQXR.js');
15
15
  require('../chunk-P4Y75QSU.js');
16
16
  require('../chunk-VJMPIRSD.js');
17
17
  require('../chunk-5RNAUYWE.js');
18
- require('../chunk-NKBPEZCX.js');
19
- require('../chunk-6TSYWYYR.js');
20
- require('../chunk-ZKOQCKOR.js');
18
+ require('../chunk-LPUP2TSV.js');
19
+ require('../chunk-F5RO6HVF.js');
20
+ require('../chunk-6PQJH6YR.js');
21
21
  require('../chunk-SNAQBZPT.js');
22
22
 
23
23
  // src/engage/echo-config.ts
@@ -49,15 +49,15 @@ function getEchoWidgetProps(config = SONOR_PUBLIC_ECHO_DEFAULTS) {
49
49
 
50
50
  Object.defineProperty(exports, "ChatWidget", {
51
51
  enumerable: true,
52
- get: function () { return chunkQRN6HQOX_js.ChatWidget; }
52
+ get: function () { return chunkUTSKVISR_js.ChatWidget; }
53
53
  });
54
54
  Object.defineProperty(exports, "DesignRenderer", {
55
55
  enumerable: true,
56
- get: function () { return chunkRZUUPX2H_js.DesignRenderer; }
56
+ get: function () { return chunkDFVWOIJE_js.DesignRenderer; }
57
57
  });
58
58
  Object.defineProperty(exports, "EngageWidget", {
59
59
  enumerable: true,
60
- get: function () { return chunkRZUUPX2H_js.EngageWidget; }
60
+ get: function () { return chunkDFVWOIJE_js.EngageWidget; }
61
61
  });
62
62
  exports.SONOR_PUBLIC_ECHO_DEFAULTS = SONOR_PUBLIC_ECHO_DEFAULTS;
63
63
  exports.getEchoWidgetProps = getEchoWidgetProps;
@@ -1,21 +1,21 @@
1
1
  'use client';
2
- export { ChatWidget } from '../chunk-KAJT3MOM.mjs';
3
- export { DesignRenderer, EngageWidget } from '../chunk-4EXBEFIV.mjs';
2
+ export { ChatWidget } from '../chunk-GFWSYLGO.mjs';
3
+ export { DesignRenderer, EngageWidget } from '../chunk-YA2XM3KX.mjs';
4
4
  import '../chunk-4U5NCKQY.mjs';
5
5
  import '../chunk-OBKS3CPP.mjs';
6
6
  import '../chunk-NSWO43XW.mjs';
7
- import '../chunk-YUCKBIRE.mjs';
7
+ import '../chunk-PHTL4CPD.mjs';
8
8
  import '../chunk-QRHVMTHF.mjs';
9
- import '../chunk-RH46WZRN.mjs';
9
+ import '../chunk-AGIMH67E.mjs';
10
10
  import '../chunk-TMVKRQGJ.mjs';
11
11
  import '../chunk-NYXENHD2.mjs';
12
12
  import '../chunk-ZZQAGCSI.mjs';
13
13
  import '../chunk-5SANRSX3.mjs';
14
14
  import '../chunk-6EDVCUAG.mjs';
15
15
  import '../chunk-A6UYV475.mjs';
16
- import '../chunk-XNZ2WFXR.mjs';
17
- import '../chunk-OUM77VZ4.mjs';
18
- import '../chunk-C654VCWV.mjs';
16
+ import '../chunk-377Z7GOV.mjs';
17
+ import '../chunk-EE7J66MJ.mjs';
18
+ import '../chunk-GBMVAKX3.mjs';
19
19
  import '../chunk-BEXTDHO4.mjs';
20
20
 
21
21
  // src/engage/echo-config.ts
@@ -1,32 +1,32 @@
1
1
  'use client';
2
2
  'use strict';
3
3
 
4
- var chunkS7S6ZZ3R_js = require('../chunk-S7S6ZZ3R.js');
4
+ var chunk2TSDPEMA_js = require('../chunk-2TSDPEMA.js');
5
5
  var chunk7THQ4UW3_js = require('../chunk-7THQ4UW3.js');
6
6
  require('../chunk-HGNSJXWT.js');
7
7
  require('../chunk-5RNAUYWE.js');
8
- require('../chunk-NKBPEZCX.js');
9
- require('../chunk-6TSYWYYR.js');
10
- require('../chunk-ZKOQCKOR.js');
8
+ require('../chunk-LPUP2TSV.js');
9
+ require('../chunk-F5RO6HVF.js');
10
+ require('../chunk-6PQJH6YR.js');
11
11
  require('../chunk-SNAQBZPT.js');
12
12
 
13
13
 
14
14
 
15
15
  Object.defineProperty(exports, "FLEET_HEARTBEAT_PATH", {
16
16
  enumerable: true,
17
- get: function () { return chunkS7S6ZZ3R_js.FLEET_HEARTBEAT_PATH; }
17
+ get: function () { return chunk2TSDPEMA_js.FLEET_HEARTBEAT_PATH; }
18
18
  });
19
19
  Object.defineProperty(exports, "FleetHeartbeat", {
20
20
  enumerable: true,
21
- get: function () { return chunkS7S6ZZ3R_js.FleetHeartbeat; }
21
+ get: function () { return chunk2TSDPEMA_js.FleetHeartbeat; }
22
22
  });
23
23
  Object.defineProperty(exports, "detectNextVersion", {
24
24
  enumerable: true,
25
- get: function () { return chunkS7S6ZZ3R_js.detectNextVersion; }
25
+ get: function () { return chunk2TSDPEMA_js.detectNextVersion; }
26
26
  });
27
27
  Object.defineProperty(exports, "sendFleetHeartbeat", {
28
28
  enumerable: true,
29
- get: function () { return chunkS7S6ZZ3R_js.sendFleetHeartbeat; }
29
+ get: function () { return chunk2TSDPEMA_js.sendFleetHeartbeat; }
30
30
  });
31
31
  Object.defineProperty(exports, "FLEET_CONTRACT_VERSION", {
32
32
  enumerable: true,
@@ -1,11 +1,11 @@
1
1
  'use client';
2
- export { FLEET_HEARTBEAT_PATH, FleetHeartbeat, detectNextVersion, sendFleetHeartbeat } from '../chunk-IDBA3YZ6.mjs';
2
+ export { FLEET_HEARTBEAT_PATH, FleetHeartbeat, detectNextVersion, sendFleetHeartbeat } from '../chunk-YVP4JJFL.mjs';
3
3
  export { FLEET_CONTRACT_VERSION, FLEET_MODULES, FLEET_MODULES_MAX, FLEET_SITE_MAX_LENGTH, FLEET_VERSION_MAX_LENGTH, FLEET_VERSION_PATTERN, buildFleetHeartbeatPayload, isFleetModule, normalizeFleetModules, normalizeFleetSite, sanitizeFleetVersion } from '../chunk-4WCA2HM6.mjs';
4
4
  import '../chunk-ZVBLXXNJ.mjs';
5
5
  import '../chunk-A6UYV475.mjs';
6
- import '../chunk-XNZ2WFXR.mjs';
7
- import '../chunk-OUM77VZ4.mjs';
8
- import '../chunk-C654VCWV.mjs';
6
+ import '../chunk-377Z7GOV.mjs';
7
+ import '../chunk-EE7J66MJ.mjs';
8
+ import '../chunk-GBMVAKX3.mjs';
9
9
  import '../chunk-BEXTDHO4.mjs';
10
10
  //# sourceMappingURL=index.mjs.map
11
11
  //# sourceMappingURL=index.mjs.map
@@ -13,10 +13,8 @@
13
13
  * so a required file field correctly blocks submission until the upload
14
14
  * completes (rather than submitting a useless bare filename).
15
15
  *
16
- * Note: forms containing a file field are NOT native-POST eligible (see
17
- * native-fallback.tsx) — a form-encoded POST cannot run this upload — so the
18
- * server shell renders a plain disabled-looking file input and the real
19
- * control arrives with the enhancement.
16
+ * The server shell renders a plain file input and the real control arrives
17
+ * with the enhancement.
20
18
  */
21
19
  import React from 'react';
22
20
  import type { FormField as FormFieldType } from './types';
@@ -1 +1 @@
1
- {"version":3,"file":"FileField.d.ts","sourceRoot":"","sources":["../../src/forms/FileField.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,KAAK,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,SAAS,CAAA;AAGzD,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,aAAa,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,EAAE,KAAK,CAAC,aAAa,CAAA;IACnC,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;CACnC;AAED,wBAAgB,SAAS,CAAC,EACxB,KAAK,EACL,OAAO,EACP,WAAW,EACX,cAAc,EACd,QAAQ,GACT,EAAE,cAAc,qBA6ChB"}
1
+ {"version":3,"file":"FileField.d.ts","sourceRoot":"","sources":["../../src/forms/FileField.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,KAAK,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,SAAS,CAAA;AAGzD,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,aAAa,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,EAAE,KAAK,CAAC,aAAa,CAAA;IACnC,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;CACnC;AAED,wBAAgB,SAAS,CAAC,EACxB,KAAK,EACL,OAAO,EACP,WAAW,EACX,cAAc,EACd,QAAQ,GACT,EAAE,cAAc,qBA6ChB"}
@@ -27,9 +27,13 @@ interface FormClientProps {
27
27
  * else 'classic'. customRender always wins over this.
28
28
  */
29
29
  experience?: FormExperience;
30
- /** Absolute page URL for the no-JS 303 to land on (see native-fallback). */
30
+ /**
31
+ * @deprecated Ignored since 6.3.2. It set where the no-JavaScript form POST
32
+ * returned to, and that path was removed (bots used it; no person ever did).
33
+ * Kept so existing call sites still type-check.
34
+ */
31
35
  nativeReturnTo?: string;
32
36
  }
33
- export declare function FormClient({ config, className, onSuccess, onError, customRender, experience, nativeReturnTo, defaultValues, }: FormClientProps): React.JSX.Element;
37
+ export declare function FormClient({ config, className, onSuccess, onError, customRender, experience, defaultValues, }: FormClientProps): React.JSX.Element;
34
38
  export {};
35
39
  //# sourceMappingURL=FormClient.d.ts.map