@farm.js/core 0.1.49 → 0.1.51-beta.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.
Files changed (363) hide show
  1. package/README.md +163 -3
  2. package/dist/{agent-mcp-Bb8hnnqd.d.ts → agent-mcp-BBMfNpsC.d.ts} +1 -1
  3. package/dist/{agent-mcp-ir3v4fHf.d.mts → agent-mcp-D44ip11f.d.mts} +1 -1
  4. package/dist/agent-runtime.cjs +3 -3
  5. package/dist/agent-runtime.d.mts +6 -6
  6. package/dist/agent-runtime.d.ts +6 -6
  7. package/dist/agent-runtime.mjs +2 -2
  8. package/dist/analyzer-HOUCQR3K.mjs +1066 -0
  9. package/dist/analyzer-VKUDHNDF.cjs +1066 -0
  10. package/dist/api/client.d.mts +0 -1
  11. package/dist/api/client.d.ts +0 -1
  12. package/dist/api/route-manager.cjs +8 -8
  13. package/dist/api/route-manager.d.mts +10 -10
  14. package/dist/api/route-manager.d.ts +10 -10
  15. package/dist/api/route-manager.mjs +7 -7
  16. package/dist/api/runtime.cjs +3 -3
  17. package/dist/api/runtime.d.mts +7 -7
  18. package/dist/api/runtime.d.ts +7 -7
  19. package/dist/api/runtime.mjs +2 -2
  20. package/dist/api.cjs +9 -9
  21. package/dist/api.d.mts +10 -10
  22. package/dist/api.d.ts +10 -10
  23. package/dist/api.mjs +8 -8
  24. package/dist/{app-y649szYm.d.ts → app-CourU3rQ.d.ts} +7 -7
  25. package/dist/{app-DLzz02du.d.mts → app-aeD4s_mg.d.mts} +7 -7
  26. package/dist/{app-manifest-Crn8Qd3U.d.mts → app-manifest-BC6mFn5A.d.mts} +1 -1
  27. package/dist/{app-manifest-DNeTKMRL.d.ts → app-manifest-LzjoNPeq.d.ts} +1 -1
  28. package/dist/app-markdown.d.mts +7 -7
  29. package/dist/app-markdown.d.ts +7 -7
  30. package/dist/base-path-BOUV5ozD.d.mts +10 -0
  31. package/dist/base-path-BOUV5ozD.d.ts +10 -0
  32. package/dist/cache.d.mts +4 -3
  33. package/dist/cache.d.ts +4 -3
  34. package/dist/{chunk-YQGZLCT4.cjs → chunk-2IAPKPEB.cjs} +6 -6
  35. package/dist/chunk-2KVDHNQS.mjs +224 -0
  36. package/dist/{chunk-QFQDRJKJ.mjs → chunk-3HA7PP72.mjs} +2 -2
  37. package/dist/{chunk-6LH33DLL.cjs → chunk-3OWVWZ6R.cjs} +28 -2
  38. package/dist/{chunk-GXSMF7UR.mjs → chunk-4GJJ65RB.mjs} +10 -2
  39. package/dist/{chunk-GERUXONA.cjs → chunk-5A77OEIG.cjs} +4 -1
  40. package/dist/{chunk-4HBKBHVP.mjs → chunk-5ENW27SL.mjs} +1 -1
  41. package/dist/{chunk-MTB57GOK.mjs → chunk-724WT3NI.mjs} +4 -2
  42. package/dist/{chunk-XLYXG73A.mjs → chunk-75WWOZ5C.mjs} +22 -0
  43. package/dist/{chunk-VCKGOXFI.cjs → chunk-76GHW3WI.cjs} +7 -1
  44. package/dist/{chunk-ZIBIE7AH.mjs → chunk-7UPCJDB5.mjs} +7 -1
  45. package/dist/{chunk-4IICUBQX.cjs → chunk-A5BJKSZE.cjs} +2 -2
  46. package/dist/{chunk-UYQOIPXE.mjs → chunk-AER5I65K.mjs} +1 -1
  47. package/dist/{chunk-WB6XES4V.mjs → chunk-ALEUMLJN.mjs} +34 -5
  48. package/dist/{chunk-Z4LTSH7D.mjs → chunk-AMRK3P6W.mjs} +175 -71
  49. package/dist/{chunk-TTYXOAB7.mjs → chunk-ANHZ6SUL.mjs} +1 -1
  50. package/dist/{chunk-ZBS3GOQZ.cjs → chunk-AQLHD6HZ.cjs} +35 -61
  51. package/dist/{chunk-L6QDME5Z.cjs → chunk-B3GZAQSC.cjs} +3 -3
  52. package/dist/chunk-CKPTIEDX.cjs +12 -0
  53. package/dist/{chunk-JPAVNDZH.cjs → chunk-CY7H5KS4.cjs} +25 -25
  54. package/dist/{chunk-4S7M63WX.cjs → chunk-DGOLAZLV.cjs} +22 -1
  55. package/dist/{chunk-4HM5B5RR.cjs → chunk-DWW3AMJX.cjs} +343 -308
  56. package/dist/{chunk-EQMTJBB7.cjs → chunk-DZZHTMWM.cjs} +35 -6
  57. package/dist/chunk-E36C43IX.cjs +224 -0
  58. package/dist/{chunk-J2ZEVDEK.cjs → chunk-EHB77D5U.cjs} +3 -3
  59. package/dist/{chunk-WQGRD5BJ.cjs → chunk-EX6ZSN5P.cjs} +1 -16
  60. package/dist/{chunk-C5S457CK.cjs → chunk-F42U3R4F.cjs} +214 -193
  61. package/dist/{chunk-FGJQS4EC.cjs → chunk-FK25QSVC.cjs} +4 -3
  62. package/dist/{chunk-JOHXK4BB.mjs → chunk-FSQMN2MQ.mjs} +2 -1
  63. package/dist/{chunk-2H3FJYY6.mjs → chunk-FSXSQQTV.mjs} +3 -2
  64. package/dist/chunk-G2KTRMWA.mjs +40 -0
  65. package/dist/{chunk-C6U66WWF.mjs → chunk-GFT5AHAT.mjs} +13 -0
  66. package/dist/chunk-GNZIAJGB.mjs +358 -0
  67. package/dist/{chunk-TXK4D46O.mjs → chunk-H3ASZDT7.mjs} +21 -1
  68. package/dist/{chunk-AXRNEVCS.cjs → chunk-HASX6DC7.cjs} +8 -8
  69. package/dist/{chunk-NW2BKDVT.mjs → chunk-HHFMECFO.mjs} +1 -1
  70. package/dist/{chunk-HELQXYVI.cjs → chunk-I2DQGS56.cjs} +11 -9
  71. package/dist/{chunk-IVHPRF4W.mjs → chunk-I2ZA5SXS.mjs} +81 -46
  72. package/dist/{chunk-EVCQX243.cjs → chunk-IOUOGRDX.cjs} +13 -5
  73. package/dist/{chunk-CBJKDB6F.mjs → chunk-IRSS4HS4.mjs} +1 -1
  74. package/dist/{chunk-NPPT4RWF.cjs → chunk-J22JD5YJ.cjs} +7 -7
  75. package/dist/{chunk-VJXLUTBM.mjs → chunk-JF5CNHHF.mjs} +9 -9
  76. package/dist/{chunk-VR4SEDEM.mjs → chunk-JWI5PUO2.mjs} +6 -2
  77. package/dist/{chunk-6XFGJBYX.cjs → chunk-JYNNIGQO.cjs} +16 -7
  78. package/dist/{chunk-EXHEPWFJ.cjs → chunk-KHXAJ2KA.cjs} +16 -16
  79. package/dist/{chunk-ALD2WMLA.mjs → chunk-KY32FWK7.mjs} +4 -4
  80. package/dist/{chunk-BR5FSKZ5.cjs → chunk-LEIXUFJN.cjs} +6 -2
  81. package/dist/{chunk-5566GNEG.cjs → chunk-LIFUPCXW.cjs} +13 -0
  82. package/dist/{chunk-I2SWKWO7.mjs → chunk-LJDIFIJ2.mjs} +1 -1
  83. package/dist/chunk-LMFJCXDD.mjs +55 -0
  84. package/dist/{chunk-IXSMFKZ2.cjs → chunk-LNM57D3H.cjs} +4 -4
  85. package/dist/{chunk-ATHPRVP2.mjs → chunk-LZ4SB57H.mjs} +3 -3
  86. package/dist/{chunk-73XBJRZW.cjs → chunk-MMEEXMUQ.cjs} +2 -2
  87. package/dist/chunk-N4AQNEXR.cjs +17 -0
  88. package/dist/{chunk-JZMZKABS.cjs → chunk-NWUHS6GV.cjs} +3 -2
  89. package/dist/{chunk-KZT2VHRQ.cjs → chunk-O3MMJPC2.cjs} +19 -19
  90. package/dist/{chunk-JWP56HCP.mjs → chunk-OD6WM3I7.mjs} +2 -2
  91. package/dist/{chunk-R2SEZEBC.cjs → chunk-OYNNA4DD.cjs} +4 -4
  92. package/dist/{chunk-GBPDSUFE.mjs → chunk-OZK2DS44.mjs} +1 -1
  93. package/dist/{chunk-A7DK663W.cjs → chunk-PDJSL7PL.cjs} +50 -39
  94. package/dist/{chunk-XLLVWLWO.mjs → chunk-PIHKO25G.mjs} +1 -1
  95. package/dist/chunk-PIUTGRDI.cjs +358 -0
  96. package/dist/{chunk-XO6WL6NL.mjs → chunk-PPDHCRTC.mjs} +1 -1
  97. package/dist/{chunk-LZBM35DH.mjs → chunk-QI5AQMEE.mjs} +20 -9
  98. package/dist/{chunk-FR4HJDI6.cjs → chunk-QK3HBOTG.cjs} +27 -30
  99. package/dist/{chunk-Q3UU2KXC.mjs → chunk-QMDU6QHN.mjs} +4 -1
  100. package/dist/chunk-QXJADAQB.cjs +40 -0
  101. package/dist/{chunk-DGVVVYKD.mjs → chunk-R5P4KFPM.mjs} +2 -2
  102. package/dist/{chunk-3HBFI373.cjs → chunk-S5AQ7CAC.cjs} +14 -14
  103. package/dist/{chunk-Z3BXMMFF.mjs → chunk-S5ZA2T2W.mjs} +63 -42
  104. package/dist/{chunk-PXEXOQ5R.mjs → chunk-SHS6KXOZ.mjs} +1 -1
  105. package/dist/{chunk-ETF5C6HR.cjs → chunk-SJ23LJ3N.cjs} +3 -3
  106. package/dist/{chunk-LL7TDMOM.mjs → chunk-SMUW7UST.mjs} +33 -59
  107. package/dist/{chunk-VCFBQFOV.mjs → chunk-SN5VSO3Q.mjs} +9 -7
  108. package/dist/{chunk-AIHD6VME.cjs → chunk-SO3T6T4I.cjs} +482 -378
  109. package/dist/{chunk-JHXJBNLY.cjs → chunk-SUCDVKUB.cjs} +21 -1
  110. package/dist/{chunk-DM3TFCC2.cjs → chunk-SUV6YO4Q.cjs} +5 -5
  111. package/dist/{chunk-NG44F7AH.mjs → chunk-T4EW7AAD.mjs} +2 -2
  112. package/dist/{chunk-JUMPFVMK.mjs → chunk-TUOO6IK3.mjs} +9 -0
  113. package/dist/chunk-UB7RVEMX.mjs +73 -0
  114. package/dist/{chunk-CDTIXBKN.mjs → chunk-UN6N623E.mjs} +2 -2
  115. package/dist/{chunk-BEXYFR2R.cjs → chunk-USL2ANCB.cjs} +10 -10
  116. package/dist/{chunk-HAH4FBTA.mjs → chunk-VAHBCI6X.mjs} +1 -1
  117. package/dist/{chunk-QNQEK3OF.cjs → chunk-VIFPE5RG.cjs} +14 -14
  118. package/dist/{chunk-HTLCLOXQ.cjs → chunk-VO6NLTV4.cjs} +3 -3
  119. package/dist/{chunk-XN2MB4QZ.cjs → chunk-VQJYGZNX.cjs} +4 -4
  120. package/dist/{chunk-N25RPPO5.cjs → chunk-WAPQWAE6.cjs} +10 -10
  121. package/dist/{chunk-5PKDHKQP.cjs → chunk-WFVSAT7Y.cjs} +6 -4
  122. package/dist/{chunk-EA5PMJDU.mjs → chunk-WSY2JD7O.mjs} +7 -7
  123. package/dist/{chunk-HNAUK3SC.mjs → chunk-WVX3BUNJ.mjs} +40 -199
  124. package/dist/chunk-X3EFRVXY.mjs +12 -0
  125. package/dist/{chunk-UCQ52TJY.mjs → chunk-X3JNB2TB.mjs} +1 -1
  126. package/dist/{chunk-J5VCA45K.cjs → chunk-X5BCMLGP.cjs} +1 -1
  127. package/dist/{chunk-SSNN55Q6.cjs → chunk-XB24LZWI.cjs} +10 -10
  128. package/dist/{chunk-XXB37YET.cjs → chunk-XLRLSTJ6.cjs} +7 -7
  129. package/dist/{chunk-BNMHXVLL.mjs → chunk-XMHERKSE.mjs} +0 -15
  130. package/dist/chunk-XPMC4E2G.cjs +55 -0
  131. package/dist/{chunk-J27BZO67.mjs → chunk-XWC5NAHV.mjs} +23 -26
  132. package/dist/{chunk-DRFADSKY.mjs → chunk-XXXRRVY6.mjs} +4 -4
  133. package/dist/{chunk-C7425KDG.cjs → chunk-XYL4HSVC.cjs} +2 -2
  134. package/dist/{chunk-2SVJGOAX.mjs → chunk-Y3N5BFRJ.mjs} +3 -3
  135. package/dist/{chunk-ZSIGEHSE.cjs → chunk-Y7TLL65B.cjs} +21 -180
  136. package/dist/{chunk-PEHL3IZL.cjs → chunk-YB44NKC2.cjs} +2 -2
  137. package/dist/chunk-YKHRCY4T.cjs +73 -0
  138. package/dist/{chunk-RYDDUCNJ.mjs → chunk-YLNBWUVS.mjs} +1 -1
  139. package/dist/chunk-Z5A6CNV2.mjs +60 -0
  140. package/dist/chunk-Z64V4WZI.mjs +17 -0
  141. package/dist/{chunk-ACI52TCN.mjs → chunk-ZF3GX4O7.mjs} +1 -1
  142. package/dist/client/lifecycle.d.mts +1 -1
  143. package/dist/client/lifecycle.d.ts +1 -1
  144. package/dist/{client-plugins-DFDQUI9Q.d.ts → client-plugins-CFBEfVPO.d.ts} +34 -10
  145. package/dist/{client-plugins-BNBeyLMi.d.mts → client-plugins-cqy_dQd0.d.mts} +34 -10
  146. package/dist/client-plugins.d.mts +6 -6
  147. package/dist/client-plugins.d.ts +6 -6
  148. package/dist/client.cjs +13 -9
  149. package/dist/client.d.mts +11 -10
  150. package/dist/client.d.ts +11 -10
  151. package/dist/client.mjs +15 -11
  152. package/dist/client.react-server.mjs +1 -1
  153. package/dist/config-CnhyvvmT.d.mts +188 -0
  154. package/dist/config-CnhyvvmT.d.ts +188 -0
  155. package/dist/config.d.mts +6 -6
  156. package/dist/config.d.ts +6 -6
  157. package/dist/cron.cjs +4 -4
  158. package/dist/cron.mjs +3 -3
  159. package/dist/desktop.d.mts +7 -7
  160. package/dist/desktop.d.ts +7 -7
  161. package/dist/{dev-guard-YO6KPIOQ.mjs → dev-guard-4PFQNXQX.mjs} +2 -1
  162. package/dist/{dev-guard-PLHL6OTJ.cjs → dev-guard-YLO5DE3H.cjs} +4 -3
  163. package/dist/{devtools-BLKHPY3C.mjs → devtools-4MLL3RAL.mjs} +10 -10
  164. package/dist/{devtools-A37WWJZL.cjs → devtools-4ZLMD454.cjs} +12 -12
  165. package/dist/docs.cjs +14 -14
  166. package/dist/docs.d.mts +7 -7
  167. package/dist/docs.d.ts +7 -7
  168. package/dist/docs.mjs +13 -13
  169. package/dist/environment/vite.d.mts +1 -1
  170. package/dist/environment/vite.d.ts +1 -1
  171. package/dist/generate-route-types-DQP0cUzk.d.ts +33 -0
  172. package/dist/generate-route-types-TF5Wwtvz.d.mts +33 -0
  173. package/dist/i18n/client.d.mts +2 -2
  174. package/dist/i18n/client.d.ts +2 -2
  175. package/dist/i18n/index.d.mts +3 -3
  176. package/dist/i18n/index.d.ts +3 -3
  177. package/dist/i18n/server.d.mts +5 -5
  178. package/dist/i18n/server.d.ts +5 -5
  179. package/dist/image/server.cjs +3 -3
  180. package/dist/image/server.mjs +2 -2
  181. package/dist/image/sharp.cjs +10 -10
  182. package/dist/image/sharp.mjs +2 -2
  183. package/dist/{index-DBdiTkNc.d.ts → index-BYkNbeQV.d.mts} +2 -2
  184. package/dist/{index-CeJ9_s9p.d.mts → index-BxjN_UDZ.d.ts} +2 -2
  185. package/dist/{index-MocnSP3a.d.ts → index-D3l4tREW.d.ts} +2 -2
  186. package/dist/{index-Cl3akY5U.d.mts → index-DPUAPho_.d.mts} +2 -2
  187. package/dist/index.cjs +88 -79
  188. package/dist/index.d.mts +29 -45
  189. package/dist/index.d.ts +29 -45
  190. package/dist/index.mjs +92 -83
  191. package/dist/integrations.cjs +3 -3
  192. package/dist/integrations.d.mts +6 -6
  193. package/dist/integrations.d.ts +6 -6
  194. package/dist/integrations.mjs +2 -2
  195. package/dist/internal/app-markdown-runtime.d.mts +7 -7
  196. package/dist/internal/app-markdown-runtime.d.ts +7 -7
  197. package/dist/internal/build-runtime.cjs +47 -43
  198. package/dist/internal/build-runtime.d.mts +9 -9
  199. package/dist/internal/build-runtime.d.ts +9 -9
  200. package/dist/internal/build-runtime.mjs +46 -42
  201. package/dist/internal/cli-runtime.cjs +24 -23
  202. package/dist/internal/cli-runtime.mjs +24 -23
  203. package/dist/internal/client-error-overlay.cjs +4 -4
  204. package/dist/internal/client-error-overlay.mjs +1 -1
  205. package/dist/internal/client-runtime.cjs +22 -3
  206. package/dist/internal/client-runtime.d.mts +46 -4
  207. package/dist/internal/client-runtime.d.ts +46 -4
  208. package/dist/internal/client-runtime.mjs +22 -3
  209. package/dist/internal/compression-runtime.d.mts +6 -6
  210. package/dist/internal/compression-runtime.d.ts +6 -6
  211. package/dist/internal/config-runtime.cjs +20 -13
  212. package/dist/internal/config-runtime.d.mts +259 -18
  213. package/dist/internal/config-runtime.d.ts +259 -18
  214. package/dist/internal/config-runtime.mjs +18 -11
  215. package/dist/internal/form-actions.cjs +5 -4
  216. package/dist/internal/form-actions.mjs +4 -3
  217. package/dist/internal/infra-analytics-runtime.cjs +6 -6
  218. package/dist/internal/infra-analytics-runtime.mjs +4 -4
  219. package/dist/internal/islands-runtime.cjs +56 -0
  220. package/dist/internal/islands-runtime.mjs +57 -1
  221. package/dist/internal/metadata-image-runtime.cjs +3 -3
  222. package/dist/internal/metadata-image-runtime.mjs +2 -2
  223. package/dist/internal/product-telemetry-runtime.cjs +2 -2
  224. package/dist/internal/product-telemetry-runtime.mjs +1 -1
  225. package/dist/internal/production-runtime.cjs +18 -15
  226. package/dist/internal/production-runtime.d.mts +33 -20
  227. package/dist/internal/production-runtime.d.ts +33 -20
  228. package/dist/internal/production-runtime.mjs +20 -17
  229. package/dist/internal/server-fn-transform.cjs +13 -0
  230. package/dist/internal/server-fn-transform.d.mts +24 -0
  231. package/dist/internal/server-fn-transform.d.ts +24 -0
  232. package/dist/internal/server-fn-transform.mjs +13 -0
  233. package/dist/{layers-D9fbe-rz.d.ts → layers-CcS42OGR.d.mts} +1 -1
  234. package/dist/{layers-D9fbe-rz.d.mts → layers-CcS42OGR.d.ts} +1 -1
  235. package/dist/{lifecycle-DK06VuKP.d.ts → lifecycle-C2aLBOwu.d.mts} +1 -1
  236. package/dist/{lifecycle-DK06VuKP.d.mts → lifecycle-C2aLBOwu.d.ts} +1 -1
  237. package/dist/markdown.d.mts +6 -6
  238. package/dist/markdown.d.ts +6 -6
  239. package/dist/middleware.cjs +11 -11
  240. package/dist/middleware.d.mts +8 -8
  241. package/dist/middleware.d.ts +8 -8
  242. package/dist/middleware.mjs +10 -10
  243. package/dist/mobile.cjs +9 -0
  244. package/dist/mobile.d.mts +94 -0
  245. package/dist/mobile.d.ts +94 -0
  246. package/dist/mobile.mjs +9 -0
  247. package/dist/navigation-delegate-BU4xqdnw.d.ts +29 -0
  248. package/dist/navigation-delegate-DLhbfEN4.d.mts +29 -0
  249. package/dist/navigation.cjs +5 -5
  250. package/dist/navigation.d.mts +9 -9
  251. package/dist/navigation.d.ts +9 -9
  252. package/dist/navigation.mjs +4 -4
  253. package/dist/{nitro-BIXIKJZS.cjs → nitro-CK7M4RMY.cjs} +12 -12
  254. package/dist/{nitro-UT2J5A5D.mjs → nitro-R444AF3O.mjs} +8 -8
  255. package/dist/platform.cjs +2 -1
  256. package/dist/platform.d.mts +4 -3
  257. package/dist/platform.d.ts +4 -3
  258. package/dist/platform.mjs +2 -1
  259. package/dist/{plugin-4KYXV7BB.mjs → plugin-53SY5YBS.mjs} +1 -1
  260. package/dist/{plugin-WBANOZQM.cjs → plugin-HZIBL3DW.cjs} +2 -2
  261. package/dist/plugin.cjs +40 -36
  262. package/dist/plugin.d.mts +13 -8
  263. package/dist/plugin.d.ts +13 -8
  264. package/dist/plugin.mjs +39 -35
  265. package/dist/{production-runtime-B3qFFtKF.d.ts → production-runtime-C78A8YgK.d.ts} +3 -3
  266. package/dist/{production-runtime-DcD-GRAv.d.mts → production-runtime-DLA4J5WG.d.mts} +3 -3
  267. package/dist/production-vite-BQFAlG7n.d.mts +13 -0
  268. package/dist/production-vite-BQFAlG7n.d.ts +13 -0
  269. package/dist/{programmatic-routes-client-fD9f4XqU.d.ts → programmatic-routes-client-CBqkNhBy.d.ts} +2 -2
  270. package/dist/{programmatic-routes-client-DzbYGiZQ.d.mts → programmatic-routes-client-NpqGBn-i.d.mts} +2 -2
  271. package/dist/query/client.cjs +6 -6
  272. package/dist/query/client.mjs +2 -2
  273. package/dist/{render-plan-DqJ51ufr.d.mts → render-plan-C9sWvDTv.d.mts} +1 -1
  274. package/dist/{render-plan-B6cfssrr.d.ts → render-plan-CrqcBbnV.d.ts} +1 -1
  275. package/dist/renderer-client.cjs +17 -12
  276. package/dist/renderer-client.d.mts +9 -8
  277. package/dist/renderer-client.d.ts +9 -8
  278. package/dist/renderer-client.mjs +10 -5
  279. package/dist/{request-jhvUMXRx.d.ts → request-BizeuqD7.d.ts} +1 -1
  280. package/dist/{request-UuAxHn8h.d.mts → request-WwB1-Uim.d.mts} +1 -1
  281. package/dist/request.d.mts +7 -7
  282. package/dist/request.d.ts +7 -7
  283. package/dist/{resolver-DC57A4vz.d.ts → resolver-CJ-D9nP-.d.ts} +1 -1
  284. package/dist/{resolver-C2G-3Tm6.d.mts → resolver-TDyZKgKI.d.mts} +1 -1
  285. package/dist/{route-rendering-Sn50cYZf.d.ts → route-rendering-BGhJN64l.d.ts} +1 -1
  286. package/dist/{route-rendering-Cou00t1X.d.mts → route-rendering-S6NFjnx4.d.mts} +1 -1
  287. package/dist/{router-0X9DCTcm.d.mts → router-BIheIy9G.d.mts} +1 -1
  288. package/dist/{router-xwLvi48p.d.ts → router-BUD_j2EL.d.ts} +1 -1
  289. package/dist/routes-8PT9cl60.d.ts +121 -0
  290. package/dist/routes-kEUsXHx3.d.mts +121 -0
  291. package/dist/routes.cjs +3 -2
  292. package/dist/routes.d.mts +7 -7
  293. package/dist/routes.d.ts +7 -7
  294. package/dist/routes.mjs +2 -1
  295. package/dist/{rsc-pipeline-VKHMABDJ.cjs → rsc-pipeline-JRGUZBYM.cjs} +18 -16
  296. package/dist/{rsc-pipeline-F6ZPH5MU.mjs → rsc-pipeline-OLAVIKI3.mjs} +17 -15
  297. package/dist/{runtime-B9HmxiZc.d.ts → runtime-C4CmlOOh.d.ts} +2 -2
  298. package/dist/{runtime-tkSXZiqO.d.ts → runtime-CWP-21hP.d.ts} +1 -1
  299. package/dist/{runtime-CMrsyChI.d.mts → runtime-CgJwe6H_.d.mts} +1 -1
  300. package/dist/{runtime-CCxTmGuf.d.mts → runtime-CihDZ2Rn.d.mts} +2 -2
  301. package/dist/runtime-G23RSLEK.cjs +1005 -0
  302. package/dist/runtime-OGCHDACZ.mjs +1005 -0
  303. package/dist/{schema-dev-notice-O3I5HLXK.mjs → schema-dev-notice-F6QYSOAI.mjs} +4 -4
  304. package/dist/{schema-dev-notice-Z73J3NJ6.cjs → schema-dev-notice-UU7DMZEU.cjs} +7 -7
  305. package/dist/{search-client-BTXL5XWD.mjs → search-client-OXH6GBNO.mjs} +5 -3
  306. package/dist/search-client-ZZLKVO5R.cjs +15 -0
  307. package/dist/server-action-security.cjs +3 -3
  308. package/dist/server-action-security.mjs +2 -2
  309. package/dist/server-fn-client.d.mts +0 -1
  310. package/dist/server-fn-client.d.ts +0 -1
  311. package/dist/server-fn.cjs +4 -4
  312. package/dist/server-fn.d.mts +0 -1
  313. package/dist/server-fn.d.ts +0 -1
  314. package/dist/server-fn.mjs +3 -3
  315. package/dist/server-plugins.cjs +1 -1
  316. package/dist/server-plugins.d.mts +7 -7
  317. package/dist/server-plugins.d.ts +7 -7
  318. package/dist/server-plugins.mjs +1 -1
  319. package/dist/server-query-client.cjs +4 -3
  320. package/dist/server-query-client.d.mts +0 -1
  321. package/dist/server-query-client.d.ts +0 -1
  322. package/dist/server-query-client.mjs +3 -2
  323. package/dist/server-query.cjs +5 -5
  324. package/dist/server-query.d.mts +0 -1
  325. package/dist/server-query.d.ts +0 -1
  326. package/dist/server-query.mjs +4 -4
  327. package/dist/server.cjs +104 -79
  328. package/dist/server.d.mts +22 -17
  329. package/dist/server.d.ts +22 -17
  330. package/dist/server.mjs +73 -48
  331. package/dist/{spa-router-B48EjsS1.d.mts → spa-router-CVOL0Vrq.d.mts} +4 -4
  332. package/dist/{spa-router-B06APnGK.d.ts → spa-router-Kytv4jSB.d.ts} +4 -4
  333. package/dist/testing.cjs +16 -15
  334. package/dist/testing.d.mts +6 -6
  335. package/dist/testing.d.ts +6 -6
  336. package/dist/testing.mjs +12 -11
  337. package/dist/{types--Wh02r5_.d.mts → types-C41ePjvP.d.mts} +1 -1
  338. package/dist/{types--Wh02r5_.d.ts → types-C41ePjvP.d.ts} +1 -1
  339. package/dist/{utils-C5fyK2tE.d.ts → utils-DbyXlzaj.d.ts} +1 -1
  340. package/dist/{utils-hyAwmcN6.d.mts → utils-Dsa1HZ7X.d.mts} +1 -1
  341. package/dist/version.cjs +2 -2
  342. package/dist/version.mjs +1 -1
  343. package/dist/vite.cjs +40 -36
  344. package/dist/vite.d.mts +9 -9
  345. package/dist/vite.d.ts +9 -9
  346. package/dist/vite.mjs +39 -35
  347. package/dist/{workflows-Df1C_7OG.d.mts → workflows-CRMzQZ3k.d.mts} +2 -1
  348. package/dist/{workflows-Df1C_7OG.d.ts → workflows-CRMzQZ3k.d.ts} +2 -1
  349. package/dist/workflows.cjs +5 -5
  350. package/dist/workflows.d.mts +1 -1
  351. package/dist/workflows.d.ts +1 -1
  352. package/dist/workflows.mjs +4 -4
  353. package/package.json +16 -3
  354. package/dist/base-path-leyrqXbX.d.mts +0 -19
  355. package/dist/base-path-leyrqXbX.d.ts +0 -19
  356. package/dist/cache-invalidation-BD0z_lfu.d.mts +0 -4
  357. package/dist/cache-invalidation-BD0z_lfu.d.ts +0 -4
  358. package/dist/chunk-45EUIICW.mjs +0 -15
  359. package/dist/chunk-MJ6IC4K2.mjs +0 -34
  360. package/dist/chunk-V7KTQR4C.cjs +0 -15
  361. package/dist/search-client-QCYAL6AY.cjs +0 -13
  362. package/dist/{chunk-5OJVKXFV.cjs → chunk-N7JQXQAV.cjs} +2 -2
  363. package/dist/{chunk-72KABRWN.mjs → chunk-WSDKXV4E.mjs} +4 -4
package/dist/client.d.ts CHANGED
@@ -8,21 +8,21 @@ export { a as FarmClientCacheEntry, b as FarmClientCacheKey, F as FarmClientCach
8
8
  export { F as FarmIntegrationAPI, e as FarmIntegrationAPIBodyFormat, f as FarmIntegrationAPIMethod, g as FarmIntegrationAPIOperation, h as FarmIntegrationAPIResponseFormat, p as api, r as defineIntegrationAPI, s as defineIntegrationAPIOperation, t as endpoint } from './route-DFhZj6jN.js';
9
9
  export { UseThemeResult, useTheme } from './theme/client.js';
10
10
  import { FarmRouterPathParams, FarmRouterPathParam, FarmRouterBuildOptions } from './router.js';
11
- import { f as FarmViewTransitionMode } from './spa-router-B06APnGK.js';
12
- export { b as FarmNavigateOptions, c as FarmNavigationBlocker, F as FarmNavigationBlockerContext, d as FarmNavigationListener, e as FarmNavigationLocation, a as FarmNavigationState, S as SPARouter, g as getRouter, n as navigateTo, p as prefetch, h as pushState, r as readPageState, i as replaceState } from './spa-router-B06APnGK.js';
13
- import { c as FarmI18nLocale } from './types--Wh02r5_.js';
14
- export { U as UseBlockerOptions, a as UseBlockerReturn, b as UseRouterOptions, u as useBlocker, c as useNavigation, d as usePageState, e as useRouter, f as useScrollRestoration } from './router-xwLvi48p.js';
11
+ import { f as FarmViewTransitionMode } from './spa-router-Kytv4jSB.js';
12
+ export { b as FarmNavigateOptions, c as FarmNavigationBlocker, F as FarmNavigationBlockerContext, d as FarmNavigationListener, e as FarmNavigationLocation, a as FarmNavigationState, S as SPARouter, g as getRouter, n as navigateTo, p as prefetch, h as pushState, r as readPageState, i as replaceState } from './spa-router-Kytv4jSB.js';
13
+ import { c as FarmI18nLocale } from './types-C41ePjvP.js';
14
+ export { U as UseBlockerOptions, a as UseBlockerReturn, b as UseRouterOptions, u as useBlocker, c as useNavigation, d as usePageState, e as useRouter, f as useScrollRestoration } from './router-BUD_j2EL.js';
15
+ export { F as FarmNavigationDelegate, a as FarmNavigationDelegateContext, d as delegateNavigation } from './navigation-delegate-BU4xqdnw.js';
15
16
  export { F as FarmChunkRecoveryOptions, i as installChunkErrorRecovery, a as isChunkLoadError } from './chunk-recovery-lnQFzcQP.js';
16
- export { a as FarmClientHydrationCompleteEvent, b as FarmClientHydrationEvent, d as FarmClientHydrationMode, e as FarmClientHydrationSession, f as FarmClientLocation, g as FarmClientNavigationAction, h as FarmClientNavigationErrorEvent, i as FarmClientNavigationEvent, j as FarmClientNavigationLoadedEvent, k as FarmClientNavigationResolvedEvent, l as FarmClientNavigationSession, m as FarmClientPerformanceEvent, n as FarmClientPlugin, o as FarmClientPluginCloseEvent, p as FarmClientPluginEnforce, q as FarmClientPluginErrorEvent, r as FarmClientPluginErrorPhase, F as FarmClientPluginManager, s as FarmClientPluginManagerOptions, t as FarmClientPluginMetadata, u as FarmClientPluginRegistration, v as FarmClientPluginRouter, w as FarmClientPluginSetupEvent, x as FarmClientPluginStateEvent, c as createClientPluginManager } from './lifecycle-DK06VuKP.js';
17
+ export { b as FarmClientHydrationCompleteEvent, d as FarmClientHydrationEvent, e as FarmClientHydrationMode, f as FarmClientHydrationSession, g as FarmClientLocation, h as FarmClientNavigationAction, i as FarmClientNavigationErrorEvent, j as FarmClientNavigationEvent, k as FarmClientNavigationLoadedEvent, l as FarmClientNavigationResolvedEvent, m as FarmClientNavigationSession, n as FarmClientPerformanceEvent, a as FarmClientPlugin, o as FarmClientPluginCloseEvent, p as FarmClientPluginEnforce, q as FarmClientPluginErrorEvent, r as FarmClientPluginErrorPhase, F as FarmClientPluginManager, s as FarmClientPluginManagerOptions, t as FarmClientPluginMetadata, u as FarmClientPluginRegistration, v as FarmClientPluginRouter, w as FarmClientPluginSetupEvent, x as FarmClientPluginStateEvent, c as createClientPluginManager } from './lifecycle-C2aLBOwu.js';
17
18
  export { S as ServerQueryFetchOptions, f as fetchServerQuery, p as prefetchServerQuery } from './server-query-runtime-DXRNhX_3.js';
18
19
  export { getTheme, setTheme, toggleTheme } from './theme/runtime.js';
19
20
  import './cache.js';
20
- import './cache-invalidation-BD0z_lfu.js';
21
21
  import './server-fn.js';
22
22
  import './server-fn-error-DrcH9cc1.js';
23
23
  import './server-query.js';
24
24
  import './types-DQnyD3VD.js';
25
- import './client-plugins-DFDQUI9Q.js';
25
+ import './client-plugins-CFBEfVPO.js';
26
26
  import './renderer.js';
27
27
  import './deployment.js';
28
28
  import 'http';
@@ -35,17 +35,18 @@ import '@farming-labs/docs';
35
35
  import './observability-B2363jB6.js';
36
36
  import '@opentelemetry/api';
37
37
  import 'vite';
38
- import './workflows-Df1C_7OG.js';
38
+ import './workflows-CRMzQZ3k.js';
39
39
  import './cron.js';
40
40
  import './env.js';
41
41
  import './server-action-security.js';
42
- import './layers-D9fbe-rz.js';
42
+ import './layers-CcS42OGR.js';
43
43
  import 'rolldown/utils';
44
44
  import 'rolldown';
45
45
  import './image-config-CeDgNyX4.js';
46
+ import './config-CnhyvvmT.js';
46
47
  import './font.js';
47
48
  import './island-CfGru1MO.js';
48
- import './render-plan-B6cfssrr.js';
49
+ import './render-plan-CrqcBbnV.js';
49
50
 
50
51
  type MutationStatus = "idle" | "pending" | "success" | "error";
51
52
  type AnyMutationTarget = (...args: any[]) => Promise<any>;
package/dist/client.mjs CHANGED
@@ -13,27 +13,27 @@ import {
13
13
  storageClientCacheAdapter,
14
14
  useFetcher,
15
15
  useMutation
16
- } from "./chunk-VR4SEDEM.mjs";
16
+ } from "./chunk-JWI5PUO2.mjs";
17
17
  import {
18
18
  installChunkErrorRecovery,
19
19
  isChunkLoadError
20
20
  } from "./chunk-O4F3JUST.mjs";
21
- import {
22
- useAction
23
- } from "./chunk-GL3ZDHKI.mjs";
24
21
  import {
25
22
  useServerQuery
26
- } from "./chunk-MTB57GOK.mjs";
23
+ } from "./chunk-724WT3NI.mjs";
27
24
  import {
28
- useTheme
29
- } from "./chunk-EFLNOZGH.mjs";
25
+ useAction
26
+ } from "./chunk-GL3ZDHKI.mjs";
30
27
  import {
31
28
  useBlocker,
32
29
  useNavigation,
33
30
  usePageState,
34
31
  useRouter,
35
32
  useScrollRestoration
36
- } from "./chunk-HAH4FBTA.mjs";
33
+ } from "./chunk-VAHBCI6X.mjs";
34
+ import {
35
+ useTheme
36
+ } from "./chunk-EFLNOZGH.mjs";
37
37
  import {
38
38
  APIClientError,
39
39
  IntegrationClientError,
@@ -51,10 +51,11 @@ import {
51
51
  integrationsServer
52
52
  } from "./chunk-2NHOYYUT.mjs";
53
53
  import "./chunk-IAPTECEB.mjs";
54
+ import "./chunk-Z64V4WZI.mjs";
54
55
  import {
55
56
  fetchServerQuery,
56
57
  prefetchServerQuery
57
- } from "./chunk-BNMHXVLL.mjs";
58
+ } from "./chunk-XMHERKSE.mjs";
58
59
  import {
59
60
  getTheme,
60
61
  setTheme,
@@ -69,9 +70,11 @@ import {
69
70
  pushState,
70
71
  readPageState,
71
72
  replaceState
72
- } from "./chunk-VCFBQFOV.mjs";
73
+ } from "./chunk-SN5VSO3Q.mjs";
73
74
  import "./chunk-PTLXHRJZ.mjs";
74
- import "./chunk-45EUIICW.mjs";
75
+ import {
76
+ delegateNavigation
77
+ } from "./chunk-G2KTRMWA.mjs";
75
78
  import "./chunk-NCIAP562.mjs";
76
79
  import {
77
80
  getFarmClientDataCache,
@@ -133,6 +136,7 @@ export {
133
136
  defineClientCacheAdapter,
134
137
  defineIntegrationAPI,
135
138
  defineIntegrationAPIOperation,
139
+ delegateNavigation,
136
140
  enableCrossTabCacheInvalidation,
137
141
  enableLiveCacheInvalidation,
138
142
  endpoint,
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- export { APIClientError, FARM_CACHE_INVALIDATION_CHANNEL, FARM_CLIENT_CACHE_PERSIST_VERSION, FarmClientPluginManager, FetcherInputError, IntegrationClientError, Link, SPARouter, api, clearPersistedCache, createAPIClient, createApiClients, createClientPluginManager, createIntegrationApi, createIntegrationClient, createIntegrationClients, createIntegrationServerClient, createIntegrations, createServerAPIClient, createStore, defineClientCacheAdapter, defineIntegrationAPI, defineIntegrationAPIOperation, enableCrossTabCacheInvalidation, enableLiveCacheInvalidation, endpoint, fetchServerQuery, getFarmClientDataCache, getIntegrationAPIManifest, getRouter, getTheme, initConfiguredClientCachePersistence, initPersistedClientCache, installChunkErrorRecovery, integrationClients, integrationsClient, integrationsServer, isChunkLoadError, navigateTo, normalizeFarmClientCacheKey, prefetch, prefetchServerQuery, pushState, readPageState, replaceState, setTheme, storageClientCacheAdapter, toggleTheme, useAction, useBlocker, useFetcher, useMutation, useNavigation, usePageState, useRouter, useScrollRestoration, useServerQuery, useTheme } from "./client.mjs";
2
+ export { APIClientError, FARM_CACHE_INVALIDATION_CHANNEL, FARM_CLIENT_CACHE_PERSIST_VERSION, FarmClientPluginManager, FetcherInputError, IntegrationClientError, Link, SPARouter, api, clearPersistedCache, createAPIClient, createApiClients, createClientPluginManager, createIntegrationApi, createIntegrationClient, createIntegrationClients, createIntegrationServerClient, createIntegrations, createServerAPIClient, createStore, defineClientCacheAdapter, defineIntegrationAPI, defineIntegrationAPIOperation, delegateNavigation, enableCrossTabCacheInvalidation, enableLiveCacheInvalidation, endpoint, fetchServerQuery, getFarmClientDataCache, getIntegrationAPIManifest, getRouter, getTheme, initConfiguredClientCachePersistence, initPersistedClientCache, installChunkErrorRecovery, integrationClients, integrationsClient, integrationsServer, isChunkLoadError, navigateTo, normalizeFarmClientCacheKey, prefetch, prefetchServerQuery, pushState, readPageState, replaceState, setTheme, storageClientCacheAdapter, toggleTheme, useAction, useBlocker, useFetcher, useMutation, useNavigation, usePageState, useRouter, useScrollRestoration, useServerQuery, useTheme } from "./client.mjs";
@@ -0,0 +1,188 @@
1
+ /** Checks for one block, with errors prefixed by the block, such as `mobile (os: android)`. */
2
+ interface PlatformBlockChecker {
3
+ fail(message: string): never;
4
+ checkKeys(value: Record<string, unknown>, allowed: ReadonlySet<string>, where: string): void;
5
+ optionalString(value: unknown, key: string): string | undefined;
6
+ }
7
+ /** Results of function-valued blocks for one dev session or build. */
8
+ type PlatformBlockCache<T> = Map<string, Promise<T>>;
9
+
10
+ type FarmMobileOS = "android" | "ios";
11
+ /** How the native navigator shows a route: on a new stack screen, as a sheet, or in place. */
12
+ type FarmMobilePresentation = "push" | "modal" | "replace";
13
+ interface FarmMobileTab {
14
+ /** A static app route, such as `"/notes"`. Its screen is the tab's root. */
15
+ path: string;
16
+ title: string;
17
+ /** Platform icon name: an Android drawable or an SF Symbol on iOS, such as `"note.text"`. */
18
+ icon: string;
19
+ }
20
+ interface FarmMobileRouteConfig {
21
+ /** Defaults to `"push"`. A page's `export const mobile` wins. */
22
+ presentation?: FarmMobilePresentation;
23
+ }
24
+ /**
25
+ * What a route shows on mobile: a WebView of the web page (`"web"`), a screen from the
26
+ * `mobile.native.engine` (`"native"`), or a Compose or SwiftUI screen from `page.kt` or
27
+ * `page.swift` (`"platform"`).
28
+ */
29
+ type FarmMobileScreen = "web" | "native" | "platform";
30
+ /** What builds native screens. Only the decision is recorded for now; no engine ships yet. */
31
+ type FarmMobileNativeEngine = "react-native" | "platform";
32
+ /**
33
+ * The build-time analyzer that finds pages a native screen could replace. `"report"` writes
34
+ * `native-report.json`; `"on"` also records its decisions in the route manifest.
35
+ */
36
+ type FarmMobileNativeAuto = "off" | "report" | "on";
37
+ /** `"intent"` starts a route's data request when a link to it is pressed. */
38
+ type FarmMobilePrefetch = "intent" | "off";
39
+ interface FarmMobileNativeRouteConfig {
40
+ /**
41
+ * Wins over the route's native files and the analyzer. `"native"` uses `page.native.tsx` (or
42
+ * the OS file) and otherwise asks the analyzer to port the page; `"platform"` needs `page.kt`
43
+ * or `page.swift`; `"web"` keeps the route web even when native files exist.
44
+ */
45
+ screen: FarmMobileScreen;
46
+ /** Overrides `screen` on Android. */
47
+ android?: FarmMobileScreen;
48
+ /** Overrides `screen` on iOS. */
49
+ ios?: FarmMobileScreen;
50
+ /** Defaults to `"push"`. Set it here or in `mobile.routes`, not both. */
51
+ presentation?: FarmMobilePresentation;
52
+ }
53
+ interface FarmMobileBudgets {
54
+ /** Installed app size, in MB. */
55
+ appSizeMb?: number;
56
+ /** Time from a tap to the next screen's first frame, in ms. */
57
+ screenOpenMs?: number;
58
+ /** Dropped frames allowed per screen open. */
59
+ droppedFrames?: number;
60
+ }
61
+ interface FarmMobileNativeConfig {
62
+ /** Defaults to `"react-native"`. */
63
+ engine?: FarmMobileNativeEngine;
64
+ /** Defaults to `"report"`. */
65
+ auto?: FarmMobileNativeAuto;
66
+ /** Per-route screens and navigation, keyed by app route pattern such as `"/notes/[id]"`. */
67
+ routes?: Record<string, FarmMobileNativeRouteConfig>;
68
+ /**
69
+ * Components that may render as native views inside web screens, such as `"Map"`. Reserved:
70
+ * no islands render yet.
71
+ */
72
+ islands?: string[];
73
+ /** Default for every route; a page's `export const mobile` wins. Defaults to `"intent"`. */
74
+ prefetch?: FarmMobilePrefetch;
75
+ budgets?: FarmMobileBudgets;
76
+ }
77
+ /**
78
+ * A page's `export const mobile = { ... }`, read from `page.tsx` without running it, so its
79
+ * values must be literals.
80
+ */
81
+ interface FarmMobilePageConfig {
82
+ presentation?: FarmMobilePresentation;
83
+ prefetch?: FarmMobilePrefetch;
84
+ /** `false` keeps the route a web screen, even with a `page.native.tsx`. */
85
+ native?: false;
86
+ }
87
+ interface FarmMobileUserConfig {
88
+ /** Display name of the app. Defaults to the package.json `productName` or `name`. */
89
+ name?: string;
90
+ /**
91
+ * Reverse-DNS app identifier, used as the Android application ID and the iOS bundle ID, such as
92
+ * `"com.example.notes"`. Stores key the app on it. Defaults to `local.farm.<name>`.
93
+ */
94
+ id?: string;
95
+ /**
96
+ * Origin of the web deployment whose pages the app shows, such as `"https://notes.example.com"`.
97
+ * `http://` is allowed only for loopback and LAN hosts in dev.
98
+ */
99
+ server?: string;
100
+ /** Tab bar entries, at most 5. Without tabs the app is one stack starting at `/`. */
101
+ tabs?: FarmMobileTab[];
102
+ /** Per-route navigation, keyed by app route pattern such as `"/notes/[id]"`. */
103
+ routes?: Record<string, FarmMobileRouteConfig>;
104
+ /** Screen tiers per route, the native engine, and the analyzer. */
105
+ native?: FarmMobileNativeConfig;
106
+ }
107
+ /** What a function-valued `mobile` block receives. Resolved once per OS per dev start or build. */
108
+ interface FarmMobileContext {
109
+ os: FarmMobileOS;
110
+ mode: "development" | "production";
111
+ command: "dev" | "build";
112
+ /** `--profile`, `"production"` by default. */
113
+ profile: string;
114
+ env: Readonly<Record<string, string | undefined>>;
115
+ /** App root. */
116
+ root: string;
117
+ }
118
+ /**
119
+ * `mobile` in farm.config: a static block, or a function of the platform context that returns
120
+ * one. The function runs in the CLI only; its code never reaches a server or browser bundle.
121
+ */
122
+ type FarmMobileConfigInput = FarmMobileUserConfig | ((context: FarmMobileContext) => FarmMobileUserConfig | Promise<FarmMobileUserConfig>);
123
+ interface ResolvedFarmMobileNativeConfig {
124
+ engine: FarmMobileNativeEngine;
125
+ auto: FarmMobileNativeAuto;
126
+ /** Keyed by route pattern with route groups removed. */
127
+ routes: Record<string, FarmMobileNativeRouteConfig>;
128
+ islands: string[];
129
+ prefetch: FarmMobilePrefetch;
130
+ budgets: FarmMobileBudgets;
131
+ }
132
+ interface ResolvedFarmMobileConfig {
133
+ name: string;
134
+ id: string;
135
+ /** Origin, without a trailing slash. Undefined only when the CLI supplies one (dev). */
136
+ server?: string;
137
+ tabs: FarmMobileTab[];
138
+ /** `mobile.routes`, keyed by route pattern with route groups removed. */
139
+ routes: Record<string, FarmMobileRouteConfig>;
140
+ native: ResolvedFarmMobileNativeConfig;
141
+ }
142
+ /**
143
+ * The origin a mobile app loads pages from. `https://` anywhere; `http://` only for loopback and
144
+ * LAN hosts (the emulator's `10.0.2.2`, `192.168.x.y`, `*.local`) when `command` is `"dev"`.
145
+ */
146
+ declare function resolveFarmMobileServer(value: string, context: Pick<FarmMobileContext, "command">, check?: PlatformBlockChecker, key?: string): string;
147
+ /**
148
+ * Check a page's `export const mobile` value, already read from its source. `where` names the
149
+ * file in errors.
150
+ */
151
+ declare function validateFarmMobilePageConfig(value: unknown, where: string, context?: Pick<FarmMobileContext, "os">): FarmMobilePageConfig;
152
+ /**
153
+ * Check a returned or static `mobile` block's shape. Route and module existence are checked by
154
+ * `resolveFarmMobileConfig`, which has the app's routes.
155
+ */
156
+ declare function validateFarmMobileConfig(input: unknown, context?: Pick<FarmMobileContext, "os" | "command">): FarmMobileUserConfig | undefined;
157
+ interface FarmMobileResolveOptions {
158
+ root: string;
159
+ srcDir?: string;
160
+ /** The app's page route patterns, such as `"/notes/[id]"` (route groups removed). */
161
+ routes: readonly string[];
162
+ }
163
+ /**
164
+ * Fill in defaults for an already resolved (static or returned) `mobile` block and check it
165
+ * against the app: every tab, `routes`, and `native.routes` key must be a page route.
166
+ */
167
+ declare function resolveFarmMobileConfig(input: FarmMobileUserConfig | undefined, options: FarmMobileResolveOptions, context: Pick<FarmMobileContext, "os" | "command">): ResolvedFarmMobileConfig;
168
+ interface FarmMobileContextOptions {
169
+ command: FarmMobileContext["command"];
170
+ /** `--profile`; defaults to `"production"`. */
171
+ profile?: string;
172
+ /** Target OS; defaults to `"android"`, the first shell. */
173
+ os?: FarmMobileOS;
174
+ root: string;
175
+ mode: FarmMobileContext["mode"];
176
+ }
177
+ /** The context a function-valued block receives. `env` is a frozen snapshot. */
178
+ declare function createFarmMobileContext(options: FarmMobileContextOptions): FarmMobileContext;
179
+ /** Results of function-valued blocks for one dev session or build. */
180
+ type FarmMobileBlockCache = PlatformBlockCache<FarmMobileUserConfig>;
181
+ /**
182
+ * The plain `mobile` block for a context: the static object, or what the function returned.
183
+ * Validated, with errors naming the OS and field. With a cache, the function runs once per
184
+ * session and OS.
185
+ */
186
+ declare function resolveFarmMobileBlock(input: FarmMobileConfigInput, context: FarmMobileContext, cache?: FarmMobileBlockCache): Promise<FarmMobileUserConfig>;
187
+
188
+ export { type FarmMobileOS as F, type PlatformBlockCache as P, type ResolvedFarmMobileConfig as R, type FarmMobileBudgets as a, type FarmMobileConfigInput as b, type FarmMobileContext as c, type FarmMobileNativeAuto as d, type FarmMobileNativeConfig as e, type FarmMobileNativeEngine as f, type FarmMobileNativeRouteConfig as g, type FarmMobilePageConfig as h, type FarmMobilePrefetch as i, type FarmMobilePresentation as j, type FarmMobileRouteConfig as k, type FarmMobileScreen as l, type FarmMobileTab as m, type FarmMobileUserConfig as n, type FarmMobileBlockCache as o, type FarmMobileContextOptions as p, type FarmMobileResolveOptions as q, type ResolvedFarmMobileNativeConfig as r, createFarmMobileContext as s, resolveFarmMobileBlock as t, resolveFarmMobileConfig as u, resolveFarmMobileServer as v, validateFarmMobileConfig as w, validateFarmMobilePageConfig as x };
@@ -0,0 +1,188 @@
1
+ /** Checks for one block, with errors prefixed by the block, such as `mobile (os: android)`. */
2
+ interface PlatformBlockChecker {
3
+ fail(message: string): never;
4
+ checkKeys(value: Record<string, unknown>, allowed: ReadonlySet<string>, where: string): void;
5
+ optionalString(value: unknown, key: string): string | undefined;
6
+ }
7
+ /** Results of function-valued blocks for one dev session or build. */
8
+ type PlatformBlockCache<T> = Map<string, Promise<T>>;
9
+
10
+ type FarmMobileOS = "android" | "ios";
11
+ /** How the native navigator shows a route: on a new stack screen, as a sheet, or in place. */
12
+ type FarmMobilePresentation = "push" | "modal" | "replace";
13
+ interface FarmMobileTab {
14
+ /** A static app route, such as `"/notes"`. Its screen is the tab's root. */
15
+ path: string;
16
+ title: string;
17
+ /** Platform icon name: an Android drawable or an SF Symbol on iOS, such as `"note.text"`. */
18
+ icon: string;
19
+ }
20
+ interface FarmMobileRouteConfig {
21
+ /** Defaults to `"push"`. A page's `export const mobile` wins. */
22
+ presentation?: FarmMobilePresentation;
23
+ }
24
+ /**
25
+ * What a route shows on mobile: a WebView of the web page (`"web"`), a screen from the
26
+ * `mobile.native.engine` (`"native"`), or a Compose or SwiftUI screen from `page.kt` or
27
+ * `page.swift` (`"platform"`).
28
+ */
29
+ type FarmMobileScreen = "web" | "native" | "platform";
30
+ /** What builds native screens. Only the decision is recorded for now; no engine ships yet. */
31
+ type FarmMobileNativeEngine = "react-native" | "platform";
32
+ /**
33
+ * The build-time analyzer that finds pages a native screen could replace. `"report"` writes
34
+ * `native-report.json`; `"on"` also records its decisions in the route manifest.
35
+ */
36
+ type FarmMobileNativeAuto = "off" | "report" | "on";
37
+ /** `"intent"` starts a route's data request when a link to it is pressed. */
38
+ type FarmMobilePrefetch = "intent" | "off";
39
+ interface FarmMobileNativeRouteConfig {
40
+ /**
41
+ * Wins over the route's native files and the analyzer. `"native"` uses `page.native.tsx` (or
42
+ * the OS file) and otherwise asks the analyzer to port the page; `"platform"` needs `page.kt`
43
+ * or `page.swift`; `"web"` keeps the route web even when native files exist.
44
+ */
45
+ screen: FarmMobileScreen;
46
+ /** Overrides `screen` on Android. */
47
+ android?: FarmMobileScreen;
48
+ /** Overrides `screen` on iOS. */
49
+ ios?: FarmMobileScreen;
50
+ /** Defaults to `"push"`. Set it here or in `mobile.routes`, not both. */
51
+ presentation?: FarmMobilePresentation;
52
+ }
53
+ interface FarmMobileBudgets {
54
+ /** Installed app size, in MB. */
55
+ appSizeMb?: number;
56
+ /** Time from a tap to the next screen's first frame, in ms. */
57
+ screenOpenMs?: number;
58
+ /** Dropped frames allowed per screen open. */
59
+ droppedFrames?: number;
60
+ }
61
+ interface FarmMobileNativeConfig {
62
+ /** Defaults to `"react-native"`. */
63
+ engine?: FarmMobileNativeEngine;
64
+ /** Defaults to `"report"`. */
65
+ auto?: FarmMobileNativeAuto;
66
+ /** Per-route screens and navigation, keyed by app route pattern such as `"/notes/[id]"`. */
67
+ routes?: Record<string, FarmMobileNativeRouteConfig>;
68
+ /**
69
+ * Components that may render as native views inside web screens, such as `"Map"`. Reserved:
70
+ * no islands render yet.
71
+ */
72
+ islands?: string[];
73
+ /** Default for every route; a page's `export const mobile` wins. Defaults to `"intent"`. */
74
+ prefetch?: FarmMobilePrefetch;
75
+ budgets?: FarmMobileBudgets;
76
+ }
77
+ /**
78
+ * A page's `export const mobile = { ... }`, read from `page.tsx` without running it, so its
79
+ * values must be literals.
80
+ */
81
+ interface FarmMobilePageConfig {
82
+ presentation?: FarmMobilePresentation;
83
+ prefetch?: FarmMobilePrefetch;
84
+ /** `false` keeps the route a web screen, even with a `page.native.tsx`. */
85
+ native?: false;
86
+ }
87
+ interface FarmMobileUserConfig {
88
+ /** Display name of the app. Defaults to the package.json `productName` or `name`. */
89
+ name?: string;
90
+ /**
91
+ * Reverse-DNS app identifier, used as the Android application ID and the iOS bundle ID, such as
92
+ * `"com.example.notes"`. Stores key the app on it. Defaults to `local.farm.<name>`.
93
+ */
94
+ id?: string;
95
+ /**
96
+ * Origin of the web deployment whose pages the app shows, such as `"https://notes.example.com"`.
97
+ * `http://` is allowed only for loopback and LAN hosts in dev.
98
+ */
99
+ server?: string;
100
+ /** Tab bar entries, at most 5. Without tabs the app is one stack starting at `/`. */
101
+ tabs?: FarmMobileTab[];
102
+ /** Per-route navigation, keyed by app route pattern such as `"/notes/[id]"`. */
103
+ routes?: Record<string, FarmMobileRouteConfig>;
104
+ /** Screen tiers per route, the native engine, and the analyzer. */
105
+ native?: FarmMobileNativeConfig;
106
+ }
107
+ /** What a function-valued `mobile` block receives. Resolved once per OS per dev start or build. */
108
+ interface FarmMobileContext {
109
+ os: FarmMobileOS;
110
+ mode: "development" | "production";
111
+ command: "dev" | "build";
112
+ /** `--profile`, `"production"` by default. */
113
+ profile: string;
114
+ env: Readonly<Record<string, string | undefined>>;
115
+ /** App root. */
116
+ root: string;
117
+ }
118
+ /**
119
+ * `mobile` in farm.config: a static block, or a function of the platform context that returns
120
+ * one. The function runs in the CLI only; its code never reaches a server or browser bundle.
121
+ */
122
+ type FarmMobileConfigInput = FarmMobileUserConfig | ((context: FarmMobileContext) => FarmMobileUserConfig | Promise<FarmMobileUserConfig>);
123
+ interface ResolvedFarmMobileNativeConfig {
124
+ engine: FarmMobileNativeEngine;
125
+ auto: FarmMobileNativeAuto;
126
+ /** Keyed by route pattern with route groups removed. */
127
+ routes: Record<string, FarmMobileNativeRouteConfig>;
128
+ islands: string[];
129
+ prefetch: FarmMobilePrefetch;
130
+ budgets: FarmMobileBudgets;
131
+ }
132
+ interface ResolvedFarmMobileConfig {
133
+ name: string;
134
+ id: string;
135
+ /** Origin, without a trailing slash. Undefined only when the CLI supplies one (dev). */
136
+ server?: string;
137
+ tabs: FarmMobileTab[];
138
+ /** `mobile.routes`, keyed by route pattern with route groups removed. */
139
+ routes: Record<string, FarmMobileRouteConfig>;
140
+ native: ResolvedFarmMobileNativeConfig;
141
+ }
142
+ /**
143
+ * The origin a mobile app loads pages from. `https://` anywhere; `http://` only for loopback and
144
+ * LAN hosts (the emulator's `10.0.2.2`, `192.168.x.y`, `*.local`) when `command` is `"dev"`.
145
+ */
146
+ declare function resolveFarmMobileServer(value: string, context: Pick<FarmMobileContext, "command">, check?: PlatformBlockChecker, key?: string): string;
147
+ /**
148
+ * Check a page's `export const mobile` value, already read from its source. `where` names the
149
+ * file in errors.
150
+ */
151
+ declare function validateFarmMobilePageConfig(value: unknown, where: string, context?: Pick<FarmMobileContext, "os">): FarmMobilePageConfig;
152
+ /**
153
+ * Check a returned or static `mobile` block's shape. Route and module existence are checked by
154
+ * `resolveFarmMobileConfig`, which has the app's routes.
155
+ */
156
+ declare function validateFarmMobileConfig(input: unknown, context?: Pick<FarmMobileContext, "os" | "command">): FarmMobileUserConfig | undefined;
157
+ interface FarmMobileResolveOptions {
158
+ root: string;
159
+ srcDir?: string;
160
+ /** The app's page route patterns, such as `"/notes/[id]"` (route groups removed). */
161
+ routes: readonly string[];
162
+ }
163
+ /**
164
+ * Fill in defaults for an already resolved (static or returned) `mobile` block and check it
165
+ * against the app: every tab, `routes`, and `native.routes` key must be a page route.
166
+ */
167
+ declare function resolveFarmMobileConfig(input: FarmMobileUserConfig | undefined, options: FarmMobileResolveOptions, context: Pick<FarmMobileContext, "os" | "command">): ResolvedFarmMobileConfig;
168
+ interface FarmMobileContextOptions {
169
+ command: FarmMobileContext["command"];
170
+ /** `--profile`; defaults to `"production"`. */
171
+ profile?: string;
172
+ /** Target OS; defaults to `"android"`, the first shell. */
173
+ os?: FarmMobileOS;
174
+ root: string;
175
+ mode: FarmMobileContext["mode"];
176
+ }
177
+ /** The context a function-valued block receives. `env` is a frozen snapshot. */
178
+ declare function createFarmMobileContext(options: FarmMobileContextOptions): FarmMobileContext;
179
+ /** Results of function-valued blocks for one dev session or build. */
180
+ type FarmMobileBlockCache = PlatformBlockCache<FarmMobileUserConfig>;
181
+ /**
182
+ * The plain `mobile` block for a context: the static object, or what the function returned.
183
+ * Validated, with errors naming the OS and field. With a cache, the function runs once per
184
+ * session and OS.
185
+ */
186
+ declare function resolveFarmMobileBlock(input: FarmMobileConfigInput, context: FarmMobileContext, cache?: FarmMobileBlockCache): Promise<FarmMobileUserConfig>;
187
+
188
+ export { type FarmMobileOS as F, type PlatformBlockCache as P, type ResolvedFarmMobileConfig as R, type FarmMobileBudgets as a, type FarmMobileConfigInput as b, type FarmMobileContext as c, type FarmMobileNativeAuto as d, type FarmMobileNativeConfig as e, type FarmMobileNativeEngine as f, type FarmMobileNativeRouteConfig as g, type FarmMobilePageConfig as h, type FarmMobilePrefetch as i, type FarmMobilePresentation as j, type FarmMobileRouteConfig as k, type FarmMobileScreen as l, type FarmMobileTab as m, type FarmMobileUserConfig as n, type FarmMobileBlockCache as o, type FarmMobileContextOptions as p, type FarmMobileResolveOptions as q, type ResolvedFarmMobileNativeConfig as r, createFarmMobileContext as s, resolveFarmMobileBlock as t, resolveFarmMobileConfig as u, resolveFarmMobileServer as v, validateFarmMobileConfig as w, validateFarmMobilePageConfig as x };
package/dist/config.d.mts CHANGED
@@ -1,9 +1,8 @@
1
- import { p as FarmUserConfig } from './client-plugins-BNBeyLMi.mjs';
2
- import './lifecycle-DK06VuKP.mjs';
1
+ import { p as FarmUserConfig } from './client-plugins-cqy_dQd0.mjs';
2
+ import './lifecycle-C2aLBOwu.mjs';
3
3
  import './route-2_yXC6gv.mjs';
4
4
  import './endpoint-BkMSCRf6.mjs';
5
5
  import './cache.mjs';
6
- import './cache-invalidation-BD0z_lfu.mjs';
7
6
  import './renderer.mjs';
8
7
  import './deployment.mjs';
9
8
  import 'http';
@@ -20,15 +19,16 @@ import '@farming-labs/docs';
20
19
  import './observability-B2363jB6.mjs';
21
20
  import '@opentelemetry/api';
22
21
  import 'vite';
23
- import './workflows-Df1C_7OG.mjs';
22
+ import './workflows-CRMzQZ3k.mjs';
24
23
  import './cron.mjs';
25
24
  import './env.mjs';
26
25
  import './server-action-security.mjs';
27
- import './layers-D9fbe-rz.mjs';
26
+ import './layers-CcS42OGR.mjs';
28
27
  import 'rolldown/utils';
29
28
  import 'rolldown';
30
29
  import './image-config-CeDgNyX4.mjs';
31
- import './types--Wh02r5_.mjs';
30
+ import './types-C41ePjvP.mjs';
31
+ import './config-CnhyvvmT.mjs';
32
32
  import './types-DQnyD3VD.mjs';
33
33
  import './font.mjs';
34
34
 
package/dist/config.d.ts CHANGED
@@ -1,9 +1,8 @@
1
- import { p as FarmUserConfig } from './client-plugins-DFDQUI9Q.js';
2
- import './lifecycle-DK06VuKP.js';
1
+ import { p as FarmUserConfig } from './client-plugins-CFBEfVPO.js';
2
+ import './lifecycle-C2aLBOwu.js';
3
3
  import './route-DFhZj6jN.js';
4
4
  import './endpoint-BgHn0lhl.js';
5
5
  import './cache.js';
6
- import './cache-invalidation-BD0z_lfu.js';
7
6
  import './renderer.js';
8
7
  import './deployment.js';
9
8
  import 'http';
@@ -20,15 +19,16 @@ import '@farming-labs/docs';
20
19
  import './observability-B2363jB6.js';
21
20
  import '@opentelemetry/api';
22
21
  import 'vite';
23
- import './workflows-Df1C_7OG.js';
22
+ import './workflows-CRMzQZ3k.js';
24
23
  import './cron.js';
25
24
  import './env.js';
26
25
  import './server-action-security.js';
27
- import './layers-D9fbe-rz.js';
26
+ import './layers-CcS42OGR.js';
28
27
  import 'rolldown/utils';
29
28
  import 'rolldown';
30
29
  import './image-config-CeDgNyX4.js';
31
- import './types--Wh02r5_.js';
30
+ import './types-C41ePjvP.js';
31
+ import './config-CnhyvvmT.js';
32
32
  import './types-DQnyD3VD.js';
33
33
  import './font.js';
34
34
 
package/dist/cron.cjs CHANGED
@@ -11,11 +11,11 @@
11
11
 
12
12
 
13
13
 
14
- var _chunkC7425KDGcjs = require('./chunk-C7425KDG.cjs');
14
+ var _chunkXYL4HSVCcjs = require('./chunk-XYL4HSVC.cjs');
15
15
  require('./chunk-2KMIJDY6.cjs');
16
16
  require('./chunk-SHIWRBFI.cjs');
17
- require('./chunk-XN2MB4QZ.cjs');
18
- require('./chunk-JHXJBNLY.cjs');
17
+ require('./chunk-VQJYGZNX.cjs');
18
+ require('./chunk-SUCDVKUB.cjs');
19
19
  require('./chunk-6CTFVBAT.cjs');
20
20
  require('./chunk-YTVSWXEZ.cjs');
21
21
  require('./chunk-BTZ5O6VM.cjs');
@@ -32,4 +32,4 @@ require('./chunk-BTZ5O6VM.cjs');
32
32
 
33
33
 
34
34
 
35
- exports.DEFAULT_FARM_CRON_SECRET_ENV = _chunkC7425KDGcjs.DEFAULT_FARM_CRON_SECRET_ENV; exports.FARM_CRON_MANIFEST = _chunkC7425KDGcjs.FARM_CRON_MANIFEST; exports.applyFarmCronVercelCrons = _chunkC7425KDGcjs.applyFarmCronVercelCrons; exports.createFarmCronCloudflareConfig = _chunkC7425KDGcjs.createFarmCronCloudflareConfig; exports.createFarmCronCloudflareTriggers = _chunkC7425KDGcjs.createFarmCronCloudflareTriggers; exports.createFarmCronManifest = _chunkC7425KDGcjs.createFarmCronManifest; exports.createFarmCronVercelCrons = _chunkC7425KDGcjs.createFarmCronVercelCrons; exports.cronRoute = _chunkC7425KDGcjs.cronRoute; exports.isCronRequestAuthorized = _chunkC7425KDGcjs.isCronRequestAuthorized; exports.mergeScheduledTasks = _chunkC7425KDGcjs.mergeScheduledTasks; exports.prepareFarmCronForNitro = _chunkC7425KDGcjs.prepareFarmCronForNitro; exports.resolveCronConfig = _chunkC7425KDGcjs.resolveCronConfig;
35
+ exports.DEFAULT_FARM_CRON_SECRET_ENV = _chunkXYL4HSVCcjs.DEFAULT_FARM_CRON_SECRET_ENV; exports.FARM_CRON_MANIFEST = _chunkXYL4HSVCcjs.FARM_CRON_MANIFEST; exports.applyFarmCronVercelCrons = _chunkXYL4HSVCcjs.applyFarmCronVercelCrons; exports.createFarmCronCloudflareConfig = _chunkXYL4HSVCcjs.createFarmCronCloudflareConfig; exports.createFarmCronCloudflareTriggers = _chunkXYL4HSVCcjs.createFarmCronCloudflareTriggers; exports.createFarmCronManifest = _chunkXYL4HSVCcjs.createFarmCronManifest; exports.createFarmCronVercelCrons = _chunkXYL4HSVCcjs.createFarmCronVercelCrons; exports.cronRoute = _chunkXYL4HSVCcjs.cronRoute; exports.isCronRequestAuthorized = _chunkXYL4HSVCcjs.isCronRequestAuthorized; exports.mergeScheduledTasks = _chunkXYL4HSVCcjs.mergeScheduledTasks; exports.prepareFarmCronForNitro = _chunkXYL4HSVCcjs.prepareFarmCronForNitro; exports.resolveCronConfig = _chunkXYL4HSVCcjs.resolveCronConfig;
package/dist/cron.mjs CHANGED
@@ -11,11 +11,11 @@ import {
11
11
  mergeScheduledTasks,
12
12
  prepareFarmCronForNitro,
13
13
  resolveCronConfig
14
- } from "./chunk-UCQ52TJY.mjs";
14
+ } from "./chunk-X3JNB2TB.mjs";
15
15
  import "./chunk-WXFY5JIY.mjs";
16
16
  import "./chunk-YP7YO3S3.mjs";
17
- import "./chunk-2SVJGOAX.mjs";
18
- import "./chunk-TXK4D46O.mjs";
17
+ import "./chunk-Y3N5BFRJ.mjs";
18
+ import "./chunk-H3ASZDT7.mjs";
19
19
  import "./chunk-OHWM2VI4.mjs";
20
20
  import "./chunk-AYP2YFVN.mjs";
21
21
  import "./chunk-Y6FXYEAI.mjs";
@@ -1,10 +1,9 @@
1
- import { R as ResolvedFarmDesktopConfig } from './client-plugins-BNBeyLMi.mjs';
2
- export { b as FarmDesktopConfigInput, c as FarmDesktopContext, d as FarmDesktopUserConfig, e as FarmDesktopWindowConfig } from './client-plugins-BNBeyLMi.mjs';
3
- import './lifecycle-DK06VuKP.mjs';
1
+ import { R as ResolvedFarmDesktopConfig } from './client-plugins-cqy_dQd0.mjs';
2
+ export { b as FarmDesktopConfigInput, c as FarmDesktopContext, d as FarmDesktopUserConfig, e as FarmDesktopWindowConfig } from './client-plugins-cqy_dQd0.mjs';
3
+ import './lifecycle-C2aLBOwu.mjs';
4
4
  import './route-2_yXC6gv.mjs';
5
5
  import './endpoint-BkMSCRf6.mjs';
6
6
  import './cache.mjs';
7
- import './cache-invalidation-BD0z_lfu.mjs';
8
7
  import './renderer.mjs';
9
8
  import './deployment.mjs';
10
9
  import 'http';
@@ -21,15 +20,16 @@ import '@farming-labs/docs';
21
20
  import './observability-B2363jB6.mjs';
22
21
  import '@opentelemetry/api';
23
22
  import 'vite';
24
- import './workflows-Df1C_7OG.mjs';
23
+ import './workflows-CRMzQZ3k.mjs';
25
24
  import './cron.mjs';
26
25
  import './env.mjs';
27
26
  import './server-action-security.mjs';
28
- import './layers-D9fbe-rz.mjs';
27
+ import './layers-CcS42OGR.mjs';
29
28
  import 'rolldown/utils';
30
29
  import 'rolldown';
31
30
  import './image-config-CeDgNyX4.mjs';
32
- import './types--Wh02r5_.mjs';
31
+ import './types-C41ePjvP.mjs';
32
+ import './config-CnhyvvmT.mjs';
33
33
  import './types-DQnyD3VD.mjs';
34
34
  import './font.mjs';
35
35