gemi 0.119.2 → 0.120.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (234) hide show
  1. package/dist/ai/index.js +2 -2
  2. package/dist/ai/index.js.map +1 -1
  3. package/dist/app/index.js +2 -2
  4. package/dist/app/index.js.map +1 -1
  5. package/dist/bin/gemi.js +32 -5
  6. package/dist/bin/gemi.js.map +6 -5
  7. package/dist/bun/plugin.js +1 -1
  8. package/dist/bun/preload.js +1 -1
  9. package/dist/{chunk-x5m12vkw.js → chunk-0ejjgzwc.js} +2 -2
  10. package/dist/{chunk-x5m12vkw.js.map → chunk-0ejjgzwc.js.map} +1 -1
  11. package/dist/{chunk-7rffbkmg.js → chunk-0k02tza1.js} +1 -1
  12. package/dist/{chunk-14xk8kq0.js → chunk-0yj0s1pn.js} +2 -2
  13. package/dist/{chunk-14xk8kq0.js.map → chunk-0yj0s1pn.js.map} +1 -1
  14. package/dist/{chunk-6pqbsc5y.js → chunk-19dpzp4y.js} +3 -3
  15. package/dist/{chunk-6pqbsc5y.js.map → chunk-19dpzp4y.js.map} +1 -1
  16. package/dist/{chunk-3vt172y7.js → chunk-1wnnkde0.js} +3 -3
  17. package/dist/{chunk-3vt172y7.js.map → chunk-1wnnkde0.js.map} +1 -1
  18. package/dist/{chunk-ct1vwaw7.js → chunk-1xdrs2hx.js} +3 -3
  19. package/dist/{chunk-ct1vwaw7.js.map → chunk-1xdrs2hx.js.map} +1 -1
  20. package/dist/{chunk-79rtpahn.js → chunk-2c0s0561.js} +2 -2
  21. package/dist/{chunk-79rtpahn.js.map → chunk-2c0s0561.js.map} +1 -1
  22. package/dist/{chunk-nfq127pg.js → chunk-2n3pgfnb.js} +2 -2
  23. package/dist/{chunk-nfq127pg.js.map → chunk-2n3pgfnb.js.map} +1 -1
  24. package/dist/{chunk-s2h85rbf.js → chunk-32n8t8x6.js} +2 -2
  25. package/dist/{chunk-s2h85rbf.js.map → chunk-32n8t8x6.js.map} +1 -1
  26. package/dist/{chunk-6gfsjgra.js → chunk-3gsv1vv1.js} +2 -2
  27. package/dist/{chunk-6gfsjgra.js.map → chunk-3gsv1vv1.js.map} +1 -1
  28. package/dist/{chunk-862jeyz0.js → chunk-3wnghdsx.js} +2 -2
  29. package/dist/{chunk-862jeyz0.js.map → chunk-3wnghdsx.js.map} +1 -1
  30. package/dist/{chunk-yn4x9wxc.js → chunk-471htqmz.js} +2 -2
  31. package/dist/{chunk-yn4x9wxc.js.map → chunk-471htqmz.js.map} +1 -1
  32. package/dist/{chunk-w1zqg54r.js → chunk-48gmyaxc.js} +2 -2
  33. package/dist/{chunk-w1zqg54r.js.map → chunk-48gmyaxc.js.map} +1 -1
  34. package/dist/{chunk-299zx9dv.js → chunk-4acpw92g.js} +3 -3
  35. package/dist/{chunk-299zx9dv.js.map → chunk-4acpw92g.js.map} +1 -1
  36. package/dist/{chunk-9c5s06gc.js → chunk-4fx8p02c.js} +2 -2
  37. package/dist/{chunk-9c5s06gc.js.map → chunk-4fx8p02c.js.map} +1 -1
  38. package/dist/{chunk-xpz1bp50.js → chunk-51w5ktv2.js} +3 -3
  39. package/dist/{chunk-xpz1bp50.js.map → chunk-51w5ktv2.js.map} +1 -1
  40. package/dist/{chunk-9qkjkse0.js → chunk-5nj94s66.js} +4 -4
  41. package/dist/{chunk-9qkjkse0.js.map → chunk-5nj94s66.js.map} +1 -1
  42. package/dist/{chunk-j632p533.js → chunk-5tdxbwzg.js} +3 -3
  43. package/dist/{chunk-j632p533.js.map → chunk-5tdxbwzg.js.map} +1 -1
  44. package/dist/{chunk-zq1bhsdg.js → chunk-65beps2q.js} +3 -3
  45. package/dist/{chunk-zq1bhsdg.js.map → chunk-65beps2q.js.map} +1 -1
  46. package/dist/{chunk-xeh1mw1d.js → chunk-6yhpprzs.js} +3 -3
  47. package/dist/{chunk-xeh1mw1d.js.map → chunk-6yhpprzs.js.map} +1 -1
  48. package/dist/{chunk-620yeafr.js → chunk-7ftj43vp.js} +2 -2
  49. package/dist/{chunk-620yeafr.js.map → chunk-7ftj43vp.js.map} +1 -1
  50. package/dist/{chunk-4kj4e22e.js → chunk-7g649j8h.js} +2 -2
  51. package/dist/{chunk-4kj4e22e.js.map → chunk-7g649j8h.js.map} +1 -1
  52. package/dist/{chunk-675kzd7z.js → chunk-7mmw0jr2.js} +2 -2
  53. package/dist/{chunk-675kzd7z.js.map → chunk-7mmw0jr2.js.map} +1 -1
  54. package/dist/{chunk-k1ncgq7p.js → chunk-9d2d08qm.js} +2 -2
  55. package/dist/{chunk-k1ncgq7p.js.map → chunk-9d2d08qm.js.map} +1 -1
  56. package/dist/{chunk-wdg83tgd.js → chunk-9rr5h818.js} +3 -3
  57. package/dist/{chunk-wdg83tgd.js.map → chunk-9rr5h818.js.map} +1 -1
  58. package/dist/{chunk-30xxc6r7.js → chunk-9xyxbxgk.js} +2 -2
  59. package/dist/{chunk-30xxc6r7.js.map → chunk-9xyxbxgk.js.map} +1 -1
  60. package/dist/{chunk-khd9ft0s.js → chunk-ar4d3vmr.js} +3 -3
  61. package/dist/{chunk-khd9ft0s.js.map → chunk-ar4d3vmr.js.map} +1 -1
  62. package/dist/chunk-b5a5vvkk.js +57 -0
  63. package/dist/{chunk-bz5gda3b.js.map → chunk-b5a5vvkk.js.map} +7 -6
  64. package/dist/{chunk-6ggmk2eg.js → chunk-c0v61fp5.js} +2 -2
  65. package/dist/{chunk-6ggmk2eg.js.map → chunk-c0v61fp5.js.map} +1 -1
  66. package/dist/{chunk-bw2pfaz3.js → chunk-c7qs1xp3.js} +2 -2
  67. package/dist/{chunk-bw2pfaz3.js.map → chunk-c7qs1xp3.js.map} +1 -1
  68. package/dist/{chunk-2kegxt0s.js → chunk-cca0grq3.js} +2 -2
  69. package/dist/{chunk-2kegxt0s.js.map → chunk-cca0grq3.js.map} +1 -1
  70. package/dist/{chunk-b336h3hj.js → chunk-cskqet01.js} +2 -2
  71. package/dist/{chunk-b336h3hj.js.map → chunk-cskqet01.js.map} +1 -1
  72. package/dist/{chunk-pzk2a5sr.js → chunk-cvr5624r.js} +1 -1
  73. package/dist/chunk-cytq2msw.js +24 -0
  74. package/dist/{chunk-w8d37mcq.js.map → chunk-cytq2msw.js.map} +3 -3
  75. package/dist/{chunk-8507ez1g.js → chunk-d2c3947c.js} +2 -2
  76. package/dist/{chunk-8507ez1g.js.map → chunk-d2c3947c.js.map} +1 -1
  77. package/dist/{chunk-q0djcyj2.js → chunk-d5f1m3d2.js} +2 -2
  78. package/dist/{chunk-q0djcyj2.js.map → chunk-d5f1m3d2.js.map} +1 -1
  79. package/dist/{chunk-f9tfpn3w.js → chunk-dedqr5wb.js} +2 -2
  80. package/dist/{chunk-f9tfpn3w.js.map → chunk-dedqr5wb.js.map} +1 -1
  81. package/dist/{chunk-h02kyxgg.js → chunk-dhbgrv58.js} +1 -1
  82. package/dist/{chunk-d4dd7jde.js → chunk-dwedx1jb.js} +3 -3
  83. package/dist/{chunk-d4dd7jde.js.map → chunk-dwedx1jb.js.map} +1 -1
  84. package/dist/{chunk-5crtgt1y.js → chunk-ep0baa9g.js} +2 -2
  85. package/dist/{chunk-5crtgt1y.js.map → chunk-ep0baa9g.js.map} +1 -1
  86. package/dist/{chunk-kk77x2v4.js → chunk-er8acmch.js} +7 -7
  87. package/dist/{chunk-kk77x2v4.js.map → chunk-er8acmch.js.map} +3 -3
  88. package/dist/{chunk-thz75w6e.js → chunk-fcqx2t0p.js} +2 -2
  89. package/dist/{chunk-thz75w6e.js.map → chunk-fcqx2t0p.js.map} +1 -1
  90. package/dist/{chunk-1p87gdd2.js → chunk-fenc5tpv.js} +2 -2
  91. package/dist/{chunk-1p87gdd2.js.map → chunk-fenc5tpv.js.map} +1 -1
  92. package/dist/{chunk-fmea4sak.js → chunk-gc2dz11k.js} +2 -2
  93. package/dist/{chunk-fmea4sak.js.map → chunk-gc2dz11k.js.map} +1 -1
  94. package/dist/{chunk-qxxbp3nn.js → chunk-gemzbw7f.js} +2 -2
  95. package/dist/{chunk-qxxbp3nn.js.map → chunk-gemzbw7f.js.map} +1 -1
  96. package/dist/{chunk-qpy25jj9.js → chunk-gy81nd9a.js} +2 -2
  97. package/dist/{chunk-qpy25jj9.js.map → chunk-gy81nd9a.js.map} +1 -1
  98. package/dist/{chunk-c8vttyem.js → chunk-h43jp8ws.js} +2 -2
  99. package/dist/{chunk-c8vttyem.js.map → chunk-h43jp8ws.js.map} +1 -1
  100. package/dist/chunk-htgmy3x7.js +5 -0
  101. package/dist/{chunk-15v719sq.js.map → chunk-htgmy3x7.js.map} +1 -1
  102. package/dist/{chunk-xqd3zde5.js → chunk-jaa6xkeh.js} +2 -2
  103. package/dist/{chunk-xqd3zde5.js.map → chunk-jaa6xkeh.js.map} +1 -1
  104. package/dist/{chunk-2bja99cq.js → chunk-kk18xqgc.js} +2 -2
  105. package/dist/{chunk-2bja99cq.js.map → chunk-kk18xqgc.js.map} +1 -1
  106. package/dist/{chunk-mcjbck8e.js → chunk-krk7mcgm.js} +3 -3
  107. package/dist/{chunk-mcjbck8e.js.map → chunk-krk7mcgm.js.map} +1 -1
  108. package/dist/{chunk-hd5ztshp.js → chunk-krtybgz1.js} +2 -2
  109. package/dist/{chunk-hd5ztshp.js.map → chunk-krtybgz1.js.map} +1 -1
  110. package/dist/{chunk-fjhnn3de.js → chunk-m53fgf20.js} +3 -3
  111. package/dist/{chunk-fjhnn3de.js.map → chunk-m53fgf20.js.map} +1 -1
  112. package/dist/{chunk-4c1npv8k.js → chunk-m83zm86m.js} +2 -2
  113. package/dist/{chunk-4c1npv8k.js.map → chunk-m83zm86m.js.map} +1 -1
  114. package/dist/{chunk-q6a30w8w.js → chunk-meg8rtr6.js} +2 -2
  115. package/dist/{chunk-q6a30w8w.js.map → chunk-meg8rtr6.js.map} +1 -1
  116. package/dist/{chunk-vy0tnx2s.js → chunk-mr94nfp1.js} +3 -3
  117. package/dist/{chunk-vy0tnx2s.js.map → chunk-mr94nfp1.js.map} +1 -1
  118. package/dist/{chunk-zb8zzf5x.js → chunk-nz8z8jr1.js} +3 -3
  119. package/dist/{chunk-zb8zzf5x.js.map → chunk-nz8z8jr1.js.map} +1 -1
  120. package/dist/{chunk-d38x71xy.js → chunk-pemhmjzp.js} +3 -3
  121. package/dist/{chunk-d38x71xy.js.map → chunk-pemhmjzp.js.map} +1 -1
  122. package/dist/{chunk-d2v78b77.js → chunk-pn2x59ge.js} +3 -3
  123. package/dist/{chunk-d2v78b77.js.map → chunk-pn2x59ge.js.map} +1 -1
  124. package/dist/{chunk-qm6j85fq.js → chunk-qphjhpad.js} +2 -2
  125. package/dist/{chunk-qm6j85fq.js.map → chunk-qphjhpad.js.map} +1 -1
  126. package/dist/{chunk-p5xy9cn8.js → chunk-qsz9241c.js} +2 -2
  127. package/dist/{chunk-p5xy9cn8.js.map → chunk-qsz9241c.js.map} +1 -1
  128. package/dist/{chunk-d6nhcqvt.js → chunk-qy8c0gzr.js} +2 -2
  129. package/dist/{chunk-d6nhcqvt.js.map → chunk-qy8c0gzr.js.map} +1 -1
  130. package/dist/{chunk-7ns5506p.js → chunk-r01aqf0q.js} +2 -2
  131. package/dist/{chunk-7ns5506p.js.map → chunk-r01aqf0q.js.map} +1 -1
  132. package/dist/{chunk-0p6mdba6.js → chunk-rhvc1axc.js} +2 -2
  133. package/dist/{chunk-0p6mdba6.js.map → chunk-rhvc1axc.js.map} +1 -1
  134. package/dist/{chunk-pjz79c2c.js → chunk-s07v65x6.js} +3 -3
  135. package/dist/{chunk-pjz79c2c.js.map → chunk-s07v65x6.js.map} +1 -1
  136. package/dist/{chunk-q00f25na.js → chunk-s5k3yq6t.js} +2 -2
  137. package/dist/{chunk-q00f25na.js.map → chunk-s5k3yq6t.js.map} +1 -1
  138. package/dist/{chunk-ty8gxbgj.js → chunk-s6vvqsd0.js} +3 -3
  139. package/dist/{chunk-ty8gxbgj.js.map → chunk-s6vvqsd0.js.map} +3 -3
  140. package/dist/{chunk-2854taf5.js → chunk-sx340k85.js} +2 -2
  141. package/dist/{chunk-2854taf5.js.map → chunk-sx340k85.js.map} +1 -1
  142. package/dist/{chunk-j5q5ysng.js → chunk-tewhms9w.js} +2 -2
  143. package/dist/{chunk-j5q5ysng.js.map → chunk-tewhms9w.js.map} +1 -1
  144. package/dist/{chunk-7pxdvvrz.js → chunk-tk135gmj.js} +3 -3
  145. package/dist/{chunk-7pxdvvrz.js.map → chunk-tk135gmj.js.map} +1 -1
  146. package/dist/{chunk-yvd4pgd9.js → chunk-vx7hvyvq.js} +2 -2
  147. package/dist/{chunk-yvd4pgd9.js.map → chunk-vx7hvyvq.js.map} +1 -1
  148. package/dist/{chunk-xecnc8zv.js → chunk-wjkh2gem.js} +1 -1
  149. package/dist/{chunk-511zqetr.js → chunk-wqe47c0j.js} +2 -2
  150. package/dist/{chunk-511zqetr.js.map → chunk-wqe47c0j.js.map} +1 -1
  151. package/dist/{chunk-2y0r4b7g.js → chunk-y6wt5b6t.js} +1 -1
  152. package/dist/{chunk-kkx8a35r.js → chunk-yds7zwc3.js} +2 -2
  153. package/dist/{chunk-kkx8a35r.js.map → chunk-yds7zwc3.js.map} +1 -1
  154. package/dist/{chunk-w7am9q0q.js → chunk-zefs2b6h.js} +2 -2
  155. package/dist/{chunk-w7am9q0q.js.map → chunk-zefs2b6h.js.map} +1 -1
  156. package/dist/{chunk-de4t48j9.js → chunk-zg6hmc48.js} +1 -1
  157. package/dist/{chunk-svn6zvzd.js → chunk-zrcd9hxr.js} +2 -2
  158. package/dist/{chunk-svn6zvzd.js.map → chunk-zrcd9hxr.js.map} +1 -1
  159. package/dist/client/index.d.ts +1 -0
  160. package/dist/client/index.d.ts.map +1 -1
  161. package/dist/client/index.js +26 -1
  162. package/dist/client/index.js.map +1 -1
  163. package/dist/client/staticNavigation.d.ts +26 -0
  164. package/dist/client/staticNavigation.d.ts.map +1 -0
  165. package/dist/config/index.js +1 -1
  166. package/dist/console/run.js +2 -2
  167. package/dist/console/run.js.map +1 -1
  168. package/dist/container/index.js +2 -2
  169. package/dist/container/index.js.map +1 -1
  170. package/dist/database/index.js +2 -2
  171. package/dist/database/index.js.map +1 -1
  172. package/dist/email/index.js +2 -2
  173. package/dist/email/index.js.map +1 -1
  174. package/dist/facades/index.js +2 -2
  175. package/dist/facades/index.js.map +1 -1
  176. package/dist/foundation/index.js +2 -2
  177. package/dist/foundation/index.js.map +1 -1
  178. package/dist/http/ViewRouter.d.ts +36 -2
  179. package/dist/http/ViewRouter.d.ts.map +1 -1
  180. package/dist/http/index.d.ts +1 -1
  181. package/dist/http/index.d.ts.map +1 -1
  182. package/dist/http/index.js +2 -2
  183. package/dist/http/index.js.map +1 -1
  184. package/dist/i18n/dictionaryRuntime.js +2 -2
  185. package/dist/i18n/dictionaryRuntime.js.map +1 -1
  186. package/dist/i18n/index.js +2 -2
  187. package/dist/i18n/index.js.map +2 -2
  188. package/dist/internal/islandRuntime.d.ts +16 -0
  189. package/dist/internal/islandRuntime.d.ts.map +1 -1
  190. package/dist/internal/staticNavigationRuntime.d.ts +8 -0
  191. package/dist/internal/staticNavigationRuntime.d.ts.map +1 -0
  192. package/dist/kernel/index.js +2 -2
  193. package/dist/kernel/index.js.map +2 -2
  194. package/dist/orm/index.js +2 -2
  195. package/dist/orm/index.js.map +1 -1
  196. package/dist/server/devFetch.d.ts.map +1 -1
  197. package/dist/server/httpProd.d.ts.map +1 -1
  198. package/dist/server/index.js +2 -2
  199. package/dist/server/index.js.map +1 -1
  200. package/dist/services/index.d.ts +1 -1
  201. package/dist/services/index.d.ts.map +1 -1
  202. package/dist/services/index.js +3 -3
  203. package/dist/services/index.js.map +2 -2
  204. package/dist/services/queue/work.js +2 -2
  205. package/dist/services/queue/work.js.map +1 -1
  206. package/dist/services/router/ViewRouteDispatcher.d.ts +5 -0
  207. package/dist/services/router/ViewRouteDispatcher.d.ts.map +1 -1
  208. package/dist/services/router/staticDocument.d.ts +30 -21
  209. package/dist/services/router/staticDocument.d.ts.map +1 -1
  210. package/dist/stats/bundleStats.d.ts +6 -2
  211. package/dist/stats/bundleStats.d.ts.map +1 -1
  212. package/dist/stats/route-table.js +2 -2
  213. package/dist/stats/route-table.js.map +3 -3
  214. package/dist/stats/routeTable.d.ts +5 -1
  215. package/dist/stats/routeTable.d.ts.map +1 -1
  216. package/dist/support/index.js +2 -2
  217. package/dist/support/index.js.map +1 -1
  218. package/dist/testing/index.d.ts +2 -0
  219. package/dist/testing/index.d.ts.map +1 -1
  220. package/dist/testing/index.js +185 -2
  221. package/dist/testing/index.js.map +1 -1
  222. package/dist/testing/staticDocument.d.ts +80 -0
  223. package/dist/testing/staticDocument.d.ts.map +1 -0
  224. package/dist/vitest/index.js +1 -1
  225. package/package.json +1 -1
  226. package/dist/chunk-15v719sq.js +0 -5
  227. package/dist/chunk-bz5gda3b.js +0 -57
  228. package/dist/chunk-w8d37mcq.js +0 -24
  229. /package/dist/{chunk-7rffbkmg.js.map → chunk-0k02tza1.js.map} +0 -0
  230. /package/dist/{chunk-pzk2a5sr.js.map → chunk-cvr5624r.js.map} +0 -0
  231. /package/dist/{chunk-h02kyxgg.js.map → chunk-dhbgrv58.js.map} +0 -0
  232. /package/dist/{chunk-xecnc8zv.js.map → chunk-wjkh2gem.js.map} +0 -0
  233. /package/dist/{chunk-2y0r4b7g.js.map → chunk-y6wt5b6t.js.map} +0 -0
  234. /package/dist/{chunk-de4t48j9.js.map → chunk-zg6hmc48.js.map} +0 -0
@@ -0,0 +1,26 @@
1
+ /** What `onStaticNavigate` and the `gemi:page-load` event report. */
2
+ export interface StaticPageLoad {
3
+ /** The page's URL, `#hash` included. */
4
+ url: string;
5
+ /** Its `document.title`. */
6
+ title: string;
7
+ /** `true` for the page the browser loaded, `false` after a client navigation. */
8
+ initial: boolean;
9
+ }
10
+ /**
11
+ * Calls `callback` for every page a static view's navigation runtime shows
12
+ * (`.static({ navigation })`): right away for the current page, then after
13
+ * every client-side navigation. Returns a function that stops it.
14
+ *
15
+ * Meant for analytics and the like from an island:
16
+ *
17
+ * ```tsx
18
+ * useEffect(() => onStaticNavigate(({ url }) => track(url)), []);
19
+ * ```
20
+ *
21
+ * Without the runtime (a hydrated page, a static page without `navigation`,
22
+ * the server), it does nothing. The same notice is the `gemi:page-load` event
23
+ * on `document`, for code that is not an island.
24
+ */
25
+ export declare function onStaticNavigate(callback: (page: StaticPageLoad) => void): () => void;
26
+ //# sourceMappingURL=staticNavigation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"staticNavigation.d.ts","sourceRoot":"","sources":["../../client/staticNavigation.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,MAAM,WAAW,cAAc;IAC7B,wCAAwC;IACxC,GAAG,EAAE,MAAM,CAAC;IACZ,4BAA4B;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,iFAAiF;IACjF,OAAO,EAAE,OAAO,CAAC;CAClB;AAKD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,IAAI,GAAG,MAAM,IAAI,CAOrF"}
@@ -1,4 +1,4 @@
1
1
  // @bun
2
- import"../chunk-j5q5ysng.js";function k(b){return b}function q(b){if((process.env.GEMI_REACT_COMPILER??"auto").toLowerCase()==="off")return!1;return b??!0}export{q as reactCompiler,k as defineConfig};
2
+ import"../chunk-tewhms9w.js";function k(b){return b}function q(b){if((process.env.GEMI_REACT_COMPILER??"auto").toLowerCase()==="off")return!1;return b??!0}export{q as reactCompiler,k as defineConfig};
3
3
 
4
4
  //# debugId=2F7F86887FCF6F1A64756E2164756E21
@@ -1,5 +1,5 @@
1
1
  // @bun
2
- import{ba as c}from"../chunk-7ns5506p.js";import{gb as f,hb as o}from"../chunk-thz75w6e.js";import{kc as A,nc as n,oc as u,yc as r}from"../chunk-wdg83tgd.js";import"../chunk-675kzd7z.js";import"../chunk-d4dd7jde.js";import{Sg as g,Wg as v}from"../chunk-ct1vwaw7.js";import{fh as h}from"../chunk-6pqbsc5y.js";import"../chunk-kkx8a35r.js";import"../chunk-q6a30w8w.js";import{Ph as t}from"../chunk-c8vttyem.js";import"../chunk-pjz79c2c.js";import"../chunk-fmea4sak.js";import{Ti as k}from"../chunk-zb8zzf5x.js";import"../chunk-9c5s06gc.js";import"../chunk-nfq127pg.js";import{bj as a}from"../chunk-q0djcyj2.js";import"../chunk-j5q5ysng.js";function E(){let z=Promise.resolve(),J=Promise.resolve(),Y=(Q,G)=>new Promise(($)=>{Q.write(G,()=>$())});return{stdout:(Q)=>{z=Y(process.stdout,Q)},stderr:(Q)=>{J=Y(process.stderr,Q)},flush:async()=>{await Promise.all([z,J])}}}function x(z){let J=z.writers??E();return{args:z.args,options:z.options,argv:z.argv,line:(Y="")=>J.stdout(`${Y}
2
+ import{ba as c}from"../chunk-r01aqf0q.js";import{bb as f,cb as o}from"../chunk-fcqx2t0p.js";import{fc as A,ic as n,jc as u,tc as r}from"../chunk-9rr5h818.js";import"../chunk-7mmw0jr2.js";import"../chunk-dwedx1jb.js";import{Og as g,Sg as v}from"../chunk-1xdrs2hx.js";import{bh as h}from"../chunk-19dpzp4y.js";import"../chunk-yds7zwc3.js";import"../chunk-meg8rtr6.js";import{Lh as t}from"../chunk-h43jp8ws.js";import"../chunk-s07v65x6.js";import"../chunk-gc2dz11k.js";import{Pi as k}from"../chunk-nz8z8jr1.js";import"../chunk-4fx8p02c.js";import"../chunk-2n3pgfnb.js";import{dj as a}from"../chunk-d5f1m3d2.js";import"../chunk-tewhms9w.js";function E(){let z=Promise.resolve(),J=Promise.resolve(),Y=(Q,G)=>new Promise(($)=>{Q.write(G,()=>$())});return{stdout:(Q)=>{z=Y(process.stdout,Q)},stderr:(Q)=>{J=Y(process.stderr,Q)},flush:async()=>{await Promise.all([z,J])}}}function x(z){let J=z.writers??E();return{args:z.args,options:z.options,argv:z.argv,line:(Y="")=>J.stdout(`${Y}
3
3
  `),error:(Y)=>J.stderr(`${Y}
4
4
  `),fail:(Y,Q=1)=>{throw new A(Y,Q)}}}import b from"path";var Gz=u("encryption:rotate").describe("Re-encrypt encrypted columns that are still under an older key").arg("model",{description:"The model to rotate. Omit to rotate every model with encrypted columns"}).option("batchSize",{type:"number",default:500,description:"Rows read and rewritten per batch"}).option("dryRun",{type:"boolean",description:"Count what would be re-encrypted, and write nothing"}).option("encryptPlaintext",{type:"boolean",description:"Also encrypt values that are not encrypted yet (a column just marked @gemi.encrypted)"}).handle(async({args:z,options:J,line:Y,fail:Q})=>{let G=z.model?[z.model]:[...new Set(h().map((B)=>B.split(".")[0]))],$=z.model?null:Jz();if(G.length===0&&!$){Y("No model has encrypted columns.");return}if($){let B=await $.rotateEncryption({dryRun:J.dryRun});Y(`OAuth connections: ${B.scanned} rows, ${B.rotated} ${J.dryRun?"to re-encrypt":"re-encrypted"}`)}let _=0;for(let B of G){let V=await c(B,{batchSize:J.batchSize,dryRun:J.dryRun,encryptPlaintext:J.encryptPlaintext});_+=V.plaintext,Y(`${V.model} (${V.fields.join(", ")}): ${V.scanned} rows, ${V.rotated} ${J.dryRun?"to re-encrypt":"re-encrypted"}`+(V.skipped>0?`, ${V.skipped} changed meanwhile (already current)`:"")+(V.plaintext>0?`, ${V.plaintext} not encrypted yet`:""))}if(_>0)Q(`${_} value${_===1?" is":"s are"} not encrypted. If the column was just marked @gemi.encrypted, run again with --encrypt-plaintext.`)});function Jz(){let z=k();if(!z.bound(v))return null;let J=z.make(v);if(Object.keys(J.providers).length===0)return null;let Y=J.store;return Y instanceof g?Y:null}var m=[Gz];function R(z){return z.replace(/([a-z0-9])([A-Z])/g,"$1-$2").replace(/([A-Z])([A-Z][a-z])/g,"$1-$2").toLowerCase()}function Qz(z){let J=new Map,Y=new Map;for(let Q of z){J.set(R(Q.name),Q),J.set(Q.name,Q);let G="alias"in Q?Q.alias:void 0;if(G)Y.set(G,Q)}return{byName:J,byAlias:Y}}function l(z){if(z==="--")return!0;if(!z.startsWith("-"))return!1;if(z==="-")return!1;if(/^-(\d|\.\d)/.test(z))return!1;return!0}function p(z,J){let{byName:Y,byAlias:Q}=Qz(z.options),G=[],$=[],_=new Map,B=!Y.has("help"),V=!Q.has("h"),F=!1,N=!1,W=(X)=>G.push(`Unknown option ${X} for command "${z.commandName}".`),T=(X,Z)=>{if(Z==="--help"||Z==="-h")N=!0;G.push(Z===void 0?`Option ${X} needs a value.`:`Option ${X} needs a value, but the next token is ${JSON.stringify(Z)}, which is another option. If that really is the value, write ${X}=${Z}.`)},j=0;while(j<J.length){let X=J[j];if(X==="--"){$.push(...J.slice(j+1));break}if(X.startsWith("--")){let Z=X.slice(2),K=Z.indexOf("="),M=K===-1?Z:Z.slice(0,K),O=K===-1?void 0:Z.slice(K+1),P=Y.get(M),D=!1;if(!P&&M.startsWith("no-")){let S=Y.get(M.slice(3));if(S&&S.type==="boolean")P=S,D=!0}if(!P&&M==="help"&&B){F=!0,j+=1;continue}if(!P){W(`--${M}`),j+=1;continue}if(P.type==="boolean"){if(O!==void 0&&O!=="true"&&O!=="false")G.push(`Option --${R(P.name)} is a flag and takes no value, but got ${JSON.stringify(O)}.`);else{let S=O===void 0?!0:O==="true";_.set(P.name,D?!S:S)}j+=1;continue}if(O!==void 0){_.set(P.name,O),j+=1;continue}let L=J[j+1];if(L===void 0||l(L)){T(`--${R(P.name)}`,L),j+=1;continue}_.set(P.name,L),j+=2;continue}if(X.startsWith("-")&&X.length>1){let Z=X.slice(1),K=!1;for(let M=0;M<Z.length;M+=1){let O=Q.get(Z[M]);if(!O){if(Z[M]==="h"&&V){F=!0;continue}W(`-${Z[M]}`);break}if(O.type==="boolean"){_.set(O.name,!0);continue}let P=Z.slice(M+1),D=P.startsWith("=")?P.slice(1):P;if(D!==""){_.set(O.name,D);break}let L=J[j+1];if(L===void 0||l(L)){T(`-${O.alias}`,L);break}_.set(O.name,L),K=!0;break}j+=K?2:1;continue}$.push(X),j+=1}let H={},I=0;for(let X of z.args){if(X.variadic){let K=$.slice(I);if(I=$.length,H[X.name]=K,X.required&&K.length===0)G.push(`Missing required argument <${X.name}...>. Command "${z.commandName}" needs at least one.`);continue}let Z=$[I];if(I+=1,Z!==void 0){H[X.name]=Z;continue}if(X.default!==void 0){H[X.name]=X.default;continue}if(X.required)G.push(`Missing required argument <${X.name}>.`);H[X.name]=void 0}if(I<$.length){let X=$.slice(I);G.push(`Unexpected argument${X.length===1?"":"s"} ${X.map((Z)=>JSON.stringify(Z)).join(", ")}. Command "${z.commandName}" takes ${z.args.length} argument${z.args.length===1?"":"s"}.`)}let U={};for(let X of z.options){let Z=_.get(X.name);if(X.type==="boolean"){U[X.name]=Z===void 0?X.default??!1:Boolean(Z);continue}if(Z===void 0){if(X.default!==void 0)U[X.name]=X.default;else if(X.required)G.push(`Missing required option --${R(X.name)}.`),U[X.name]=void 0;else U[X.name]=void 0;continue}let K=String(Z);if(X.type==="number"){let M=Number(K);if(K.trim()===""||!Number.isFinite(M))G.push(`Option --${R(X.name)} expects a number, but got ${JSON.stringify(K)}.`),U[X.name]=void 0;else U[X.name]=M;continue}U[X.name]=K}let q=F&&!N;if(G.length>0)return{ok:!1,help:q,errors:G};return{ok:!0,help:q,args:H,options:U}}function C(z,J=" "){let Y=z.reduce((Q,[G])=>Math.max(Q,G.length),0);return z.map(([Q,G])=>G===""?`${J}${Q}`:`${J}${Q.padEnd(Y)} ${G}`)}function d(z){let J=z.variadic?`${z.name}...`:z.name;return z.required?`<${J}>`:`[${J}]`}function Xz(z){let J=(G)=>z.options.some(G),Y=J((G)=>G.name==="help"||R(G.name)==="help"),Q=J((G)=>("alias"in G)&&G.alias==="h");if(Y&&Q)return[];if(Y)return[["-h","Show this message"]];return[[`${Q?"":"-h, "}--help`,"Show this message"]]}function w(z){let J=[],Y=z.args.map(d).join(" "),Q=["gemi run",z.commandName,z.options.length>0?"[options]":"",Y].filter(Boolean).join(" ");if(J.push(`Usage: ${Q}`),z.description)J.push("",z.description);if(z.args.length>0)J.push("","Arguments:"),J.push(...C(z.args.map((G)=>{let $=[G.description??"",G.default!==void 0?`(default: ${JSON.stringify(G.default)})`:""].filter(Boolean).join(" ");return[d(G),$]})));return J.push("","Options:"),J.push(...C([...z.options.map((G)=>{let $="alias"in G&&G.alias?`-${G.alias}, `:"",_=G.type==="boolean"?"":` <${G.type}>`,B=[G.description??"",G.default!==void 0?`(default: ${JSON.stringify(G.default)})`:"","required"in G&&G.required?"(required)":""].filter(Boolean).join(" ");return[`${$}--${R(G.name)}${_}`,B]}),...Xz(z)])),J.join(`
5
5
  `)}function i(z){return["Provided by gemi:","",...C(z.map((J)=>[J.commandName,J.description]))].join(`
@@ -15,4 +15,4 @@ ${i(j)}`);return 0}let H=W.get(z.name)??j.find((Z)=>Z.commandName===z.name);if($
15
15
  ${Q.message}
16
16
  \`gemi run\` boots your application the way the server does, so it needs the Kernel. Run it from the root of a gemi project.`,{cause:Q})}if(typeof Y.default!=="function")throw new f(`${J} has no default export. gemi expects the Kernel subclass to be the default export of that file.`);return new Y.default}function s(z,J,Y,Q="returned"){if(z===void 0||z===null)return 0;if(typeof z==="number"&&Number.isInteger(z)&&z>=0&&z<=255)return z;let G=J?`Command "${J.commandName}"`:"The command";return Y(`${G} ${Q} ${JSON.stringify(z)}, which is not an exit `+"code \u2014 an exit code is an integer from 0 to 255. Treating this as a "+"failure."),1}var[Zz,..._z]=process.argv.slice(2),zz=E();e({rootDir:process.cwd(),name:Zz,argv:_z,writers:zz}).then(async(z)=>{await zz.flush(),process.exit(z)});
17
17
 
18
- //# debugId=CFBB44DE9AA5510D64756E2164756E21
18
+ //# debugId=D045075A8A42D3C264756E2164756E21
@@ -10,6 +10,6 @@
10
10
  "/**\n * The entry point `gemi run` spawns.\n *\n * Exposed through the exports map as `gemi/console/run` and resolved by the CLI\n * out of the *application's* `node_modules`, the same way `dev` and `start`\n * resolve `gemi/bun/preload`. That indirection is the point: the runner has to\n * be the application's copy of gemi, not the one bundled into `dist/bin/gemi.js`\n * — see the note at the top of `runner.ts`.\n *\n * Nothing but argv handling lives here, so that everything worth testing lives\n * in `runConsole`, which returns an exit code instead of taking one.\n */\nimport { processWriters } from \"./context\";\nimport { runConsole } from \"./runner\";\n\n// The tail is forwarded exactly as commander handed it over, `--` and all.\n// commander passes a `--` through as a literal operand (verified: `gemi run x --\n// --weird` arrives as `[\"--\", \"--weird\"]`), and `parse.ts` already treats a `--`\n// as \"everything after this is positional\". Stripping it here — which an earlier\n// draft did — consumed the escape hatch before the only thing that reads it,\n// leaving `-- --weird` reported as an unknown option and `-- --` the only way to\n// pass a flag-shaped value.\nconst [name, ...argv] = process.argv.slice(2);\n\nconst writers = processWriters();\n\n// `.then` rather than a top-level `await`, so this file typechecks under the\n// package's inherited `module: NodeNext` — the same TS1309 that keeps `bun/` out\n// of tsconfig.json's `include`. Bun runs it as ESM either way; this just avoids\n// buying a nested tsconfig for two lines.\nrunConsole({ rootDir: process.cwd(), name, argv, writers }).then(\n async (code) => {\n // Everything written has to reach the OS before the exit below discards it —\n // see `processWriters` for what that costs when it is skipped.\n await writers.flush();\n\n // Explicit, and not belt-and-braces. `kernel.destroy()` stops the scheduler,\n // but an open database pool, a Redis client or an unref'd timer will happily\n // hold the loop open after the work is done — a command that finishes and then\n // sits there, which is the failure `kernel/exit.test.ts` exists for and the\n // one `orm/context.test.ts` names by example.\n process.exit(code);\n },\n);\n"
11
11
  ],
12
12
  "mappings": "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",
13
- "debugId": "CFBB44DE9AA5510D64756E2164756E21",
13
+ "debugId": "D045075A8A42D3C264756E2164756E21",
14
14
  "names": []
15
15
  }
@@ -1,4 +1,4 @@
1
1
  // @bun
2
- import{Ui as e,Vi as o}from"../chunk-9c5s06gc.js";import"../chunk-j5q5ysng.js";export{o as Container,e as BindingResolutionError};
2
+ import{Qi as e,Ri as o}from"../chunk-4fx8p02c.js";import"../chunk-tewhms9w.js";export{o as Container,e as BindingResolutionError};
3
3
 
4
- //# debugId=E19128F1A525B31364756E2164756E21
4
+ //# debugId=01DBCEA8EF343E9464756E2164756E21
@@ -4,6 +4,6 @@
4
4
  "sourcesContent": [
5
5
  ],
6
6
  "mappings": "",
7
- "debugId": "E19128F1A525B31364756E2164756E21",
7
+ "debugId": "01DBCEA8EF343E9464756E2164756E21",
8
8
  "names": []
9
9
  }
@@ -1,4 +1,4 @@
1
1
  // @bun
2
- import{Ja as N}from"../chunk-xpz1bp50.js";import"../chunk-30xxc6r7.js";import"../chunk-fjhnn3de.js";import"../chunk-kkx8a35r.js";import"../chunk-c8vttyem.js";import{fi as j,gi as k,ii as w,ji as x,ki as z,li as A,mi as E,ni as F,oi as G,pi as H,qi as I,ri as J,si as K,ti as L}from"../chunk-fmea4sak.js";import"../chunk-j5q5ysng.js";export{A as isSqlite,E as isMysqlFamily,z as inferDialect,j as defineDatabaseConfig,k as databaseConfigDefaults,w as UnknownDatabaseUrlError,H as UnknownConnectionError,I as ReservedConnectionNameError,x as MissingDatabaseUrlError,N as DatabaseServiceProvider,L as DatabaseManager,G as DEFAULT_CONNECTION,J as CrossConnectionTransactionError,K as Connection,F as AmbiguousSqlitePathError};
2
+ import{Ea as N}from"../chunk-51w5ktv2.js";import"../chunk-9xyxbxgk.js";import"../chunk-m53fgf20.js";import"../chunk-yds7zwc3.js";import"../chunk-h43jp8ws.js";import{bi as j,ci as k,ei as w,fi as x,gi as z,hi as A,ii as E,ji as F,ki as G,li as H,mi as I,ni as J,oi as K,pi as L}from"../chunk-gc2dz11k.js";import"../chunk-tewhms9w.js";export{A as isSqlite,E as isMysqlFamily,z as inferDialect,j as defineDatabaseConfig,k as databaseConfigDefaults,w as UnknownDatabaseUrlError,H as UnknownConnectionError,I as ReservedConnectionNameError,x as MissingDatabaseUrlError,N as DatabaseServiceProvider,L as DatabaseManager,G as DEFAULT_CONNECTION,J as CrossConnectionTransactionError,K as Connection,F as AmbiguousSqlitePathError};
3
3
 
4
- //# debugId=C52342301D7EB28864756E2164756E21
4
+ //# debugId=F7FB053E41F2E6F464756E2164756E21
@@ -4,6 +4,6 @@
4
4
  "sourcesContent": [
5
5
  ],
6
6
  "mappings": "",
7
- "debugId": "C52342301D7EB28864756E2164756E21",
7
+ "debugId": "F7FB053E41F2E6F464756E2164756E21",
8
8
  "names": []
9
9
  }
@@ -1,6 +1,6 @@
1
1
  // @bun
2
- import{Ii as qS,Ji as JS}from"../chunk-3vt172y7.js";import{Pi as $S}from"../chunk-1p87gdd2.js";import{Ti as P}from"../chunk-zb8zzf5x.js";import"../chunk-9c5s06gc.js";import"../chunk-j5q5ysng.js";import{render as s}from"jsx-email";import B from"process";import{Buffer as n}from"buffer";import r from"path";import{fileURLToPath as PS}from"url";import{promisify as yS}from"util";import o from"child_process";import wS,{constants as fS}from"fs/promises";import h from"process";import l,{constants as zS}from"fs/promises";import g from"process";import NS from"os";import W from"fs";import RS from"fs";import b from"fs";var F;function HS(){try{return b.statSync("/.dockerenv"),!0}catch{return!1}}function XS(){try{return b.readFileSync("/proc/self/cgroup","utf8").includes("docker")}catch{return!1}}function L(){if(F===void 0)F=HS()||XS();return F}var O,US=()=>{try{return RS.statSync("/run/.containerenv"),!0}catch{return!1}};function R(){if(O===void 0)O=US()||L();return O}var u=()=>{if(g.platform!=="linux")return!1;if(NS.release().toLowerCase().includes("microsoft")){if(R())return!1;return!0}try{if(W.readFileSync("/proc/version","utf8").toLowerCase().includes("microsoft"))return!R()}catch{}if(W.existsSync("/proc/sys/fs/binfmt_misc/WSLInterop")||W.existsSync("/run/WSL"))return!R();return!1},H=g.env.__IS_WSL_TEST__?u:u();var ES=(()=>{let S;return async function(){if(S)return S;let q="/etc/wsl.conf",J=!1;try{await l.access(q,zS.F_OK),J=!0}catch{}if(!J)return"/mnt/";let K=await l.readFile(q,{encoding:"utf8"}),Q=/(?<!#.*)root\s*=\s*(?<mountPoint>.*)/g.exec(K);if(!Q)return"/mnt/";return S=Q.groups.mountPoint.trim(),S=S.endsWith("/")?S:`${S}/`,S}})(),MS=async()=>{return`${await ES()}c/Windows/System32/WindowsPowerShell/v1.0/powershell.exe`},v=async()=>{if(H)return MS();return`${h.env.SYSTEMROOT||h.env.windir||String.raw`C:\Windows`}\\System32\\WindowsPowerShell\\v1.0\\powershell.exe`};function X($,S,q){let J=(K)=>Object.defineProperty($,S,{value:K,enumerable:!0,writable:!0});return Object.defineProperty($,S,{configurable:!0,enumerable:!0,get(){let K=q();return J(K),K},set(K){J(K)}}),$}import{promisify as jS}from"util";import j from"process";import{execFile as xS}from"child_process";import{promisify as _S}from"util";import kS from"process";import{execFile as DS}from"child_process";var FS=_S(DS);async function T(){if(kS.platform!=="darwin")throw Error("macOS only");let{stdout:$}=await FS("defaults",["read","com.apple.LaunchServices/com.apple.launchservices.secure","LSHandlers"]),q=/LSHandlerRoleAll = "(?!-)(?<id>[^"]+?)";\s+?LSHandlerURLScheme = (?:http|https);/.exec($)?.groups.id??"com.apple.Safari";if(q==="com.apple.safari")return"com.apple.Safari";return q}import LS from"process";import{promisify as OS}from"util";import{execFile as WS,execFileSync as H0}from"child_process";var vS=OS(WS);async function m($,{humanReadableOutput:S=!0,signal:q}={}){if(LS.platform!=="darwin")throw Error("macOS only");let J=S?[]:["-ss"],K={};if(q)K.signal=q;let{stdout:Q}=await vS("osascript",["-e",$,J],K);return Q.trim()}async function C($){return m(`tell application "Finder" to set app_path to application file id "${$}" as string
2
+ import{Ei as qS,Fi as JS}from"../chunk-1wnnkde0.js";import{Li as $S}from"../chunk-fenc5tpv.js";import{Pi as P}from"../chunk-nz8z8jr1.js";import"../chunk-4fx8p02c.js";import"../chunk-tewhms9w.js";import{render as s}from"jsx-email";import B from"process";import{Buffer as n}from"buffer";import r from"path";import{fileURLToPath as PS}from"url";import{promisify as yS}from"util";import o from"child_process";import wS,{constants as fS}from"fs/promises";import h from"process";import l,{constants as zS}from"fs/promises";import g from"process";import NS from"os";import W from"fs";import RS from"fs";import b from"fs";var F;function HS(){try{return b.statSync("/.dockerenv"),!0}catch{return!1}}function XS(){try{return b.readFileSync("/proc/self/cgroup","utf8").includes("docker")}catch{return!1}}function L(){if(F===void 0)F=HS()||XS();return F}var O,US=()=>{try{return RS.statSync("/run/.containerenv"),!0}catch{return!1}};function R(){if(O===void 0)O=US()||L();return O}var u=()=>{if(g.platform!=="linux")return!1;if(NS.release().toLowerCase().includes("microsoft")){if(R())return!1;return!0}try{if(W.readFileSync("/proc/version","utf8").toLowerCase().includes("microsoft"))return!R()}catch{}if(W.existsSync("/proc/sys/fs/binfmt_misc/WSLInterop")||W.existsSync("/run/WSL"))return!R();return!1},H=g.env.__IS_WSL_TEST__?u:u();var ES=(()=>{let S;return async function(){if(S)return S;let q="/etc/wsl.conf",J=!1;try{await l.access(q,zS.F_OK),J=!0}catch{}if(!J)return"/mnt/";let K=await l.readFile(q,{encoding:"utf8"}),Q=/(?<!#.*)root\s*=\s*(?<mountPoint>.*)/g.exec(K);if(!Q)return"/mnt/";return S=Q.groups.mountPoint.trim(),S=S.endsWith("/")?S:`${S}/`,S}})(),MS=async()=>{return`${await ES()}c/Windows/System32/WindowsPowerShell/v1.0/powershell.exe`},v=async()=>{if(H)return MS();return`${h.env.SYSTEMROOT||h.env.windir||String.raw`C:\Windows`}\\System32\\WindowsPowerShell\\v1.0\\powershell.exe`};function X($,S,q){let J=(K)=>Object.defineProperty($,S,{value:K,enumerable:!0,writable:!0});return Object.defineProperty($,S,{configurable:!0,enumerable:!0,get(){let K=q();return J(K),K},set(K){J(K)}}),$}import{promisify as jS}from"util";import j from"process";import{execFile as xS}from"child_process";import{promisify as _S}from"util";import kS from"process";import{execFile as DS}from"child_process";var FS=_S(DS);async function T(){if(kS.platform!=="darwin")throw Error("macOS only");let{stdout:$}=await FS("defaults",["read","com.apple.LaunchServices/com.apple.launchservices.secure","LSHandlers"]),q=/LSHandlerRoleAll = "(?!-)(?<id>[^"]+?)";\s+?LSHandlerURLScheme = (?:http|https);/.exec($)?.groups.id??"com.apple.Safari";if(q==="com.apple.safari")return"com.apple.Safari";return q}import LS from"process";import{promisify as OS}from"util";import{execFile as WS,execFileSync as H0}from"child_process";var vS=OS(WS);async function m($,{humanReadableOutput:S=!0,signal:q}={}){if(LS.platform!=="darwin")throw Error("macOS only");let J=S?[]:["-ss"],K={};if(q)K.signal=q;let{stdout:Q}=await vS("osascript",["-e",$,J],K);return Q.trim()}async function C($){return m(`tell application "Finder" to set app_path to application file id "${$}" as string
3
3
  tell application "System Events" to get value of property list item "CFBundleName" of property list file (app_path & ":Contents:Info.plist")`)}import{promisify as TS}from"util";import{execFile as CS}from"child_process";var IS=TS(CS),_={MSEdgeHTM:{name:"Edge",id:"com.microsoft.edge"},MSEdgeBHTML:{name:"Edge Beta",id:"com.microsoft.edge.beta"},MSEdgeDHTML:{name:"Edge Dev",id:"com.microsoft.edge.dev"},AppXq0fevzme2pys62n3e0fbqa7peapykr8v:{name:"Edge",id:"com.microsoft.edge.old"},ChromeHTML:{name:"Chrome",id:"com.google.chrome"},ChromeBHTML:{name:"Chrome Beta",id:"com.google.chrome.beta"},ChromeDHTML:{name:"Chrome Dev",id:"com.google.chrome.dev"},ChromiumHTM:{name:"Chromium",id:"org.chromium.Chromium"},BraveHTML:{name:"Brave",id:"com.brave.Browser"},BraveBHTML:{name:"Brave Beta",id:"com.brave.Browser.beta"},BraveDHTML:{name:"Brave Dev",id:"com.brave.Browser.dev"},BraveSSHTM:{name:"Brave Nightly",id:"com.brave.Browser.nightly"},FirefoxURL:{name:"Firefox",id:"org.mozilla.firefox"},OperaStable:{name:"Opera",id:"com.operasoftware.Opera"},VivaldiHTM:{name:"Vivaldi",id:"com.vivaldi.Vivaldi"},"IE.HTTP":{name:"Internet Explorer",id:"com.microsoft.ie"}},E0=new Map(Object.entries(_));class c extends Error{}async function I($=IS){let{stdout:S}=await $("reg",["QUERY"," HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\Shell\\Associations\\UrlAssociations\\http\\UserChoice","/v","ProgId"]),q=/ProgId\s*REG_SZ\s*(?<id>\S+)/.exec(S);if(!q)throw new c(`Cannot find Windows browser in stdout: ${JSON.stringify(S)}`);let{id:J}=q.groups,K=J.lastIndexOf("."),Q=J.lastIndexOf("-"),Z=K===-1?void 0:J.slice(0,K),V=Q===-1?void 0:J.slice(0,Q);return _[J]??_[Z]??_[V]??{name:J,id:J}}var BS=jS(xS),AS=($)=>$.toLowerCase().replaceAll(/(?:^|\s|-)\S/g,(S)=>S.toUpperCase());async function x(){if(j.platform==="darwin"){let $=await T();return{name:await C($),id:$}}if(j.platform==="linux"){let{stdout:$}=await BS("xdg-mime",["query","default","x-scheme-handler/http"]),S=$.trim();return{name:AS(S.replace(/.desktop$/,"").replace("-"," ")),id:S}}if(j.platform==="win32")return I();throw Error("Only macOS, Linux, and Windows are supported")}var bS=yS(o.execFile),A=r.dirname(PS(import.meta.url)),d=r.join(A,"xdg-open"),{platform:N,arch:p}=B;async function uS(){let $=await v(),S=String.raw`(Get-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\http\UserChoice").ProgId`,q=n.from(S,"utf16le").toString("base64"),{stdout:J}=await bS($,["-NoProfile","-NonInteractive","-ExecutionPolicy","Bypass","-EncodedCommand",q],{encoding:"utf8"}),K=J.trim(),Q={ChromeHTML:"com.google.chrome",BraveHTML:"com.brave.Browser",MSEdgeHTM:"com.microsoft.edge",FirefoxURL:"org.mozilla.firefox"};return Q[K]?{id:Q[K]}:{}}var t=async($,S)=>{let q;for(let J of $)try{return await S(J)}catch(K){q=K}throw q},k=async($)=>{if($={wait:!1,background:!1,newInstance:!1,allowNonzeroExitCode:!1,...$},Array.isArray($.app))return t($.app,(V)=>k({...$,app:V}));let{name:S,arguments:q=[]}=$.app??{};if(q=[...q],Array.isArray(S))return t(S,(V)=>k({...$,app:{name:V,arguments:q}}));if(S==="browser"||S==="browserPrivate"){let V={"com.google.chrome":"chrome","google-chrome.desktop":"chrome","com.brave.Browser":"brave","org.mozilla.firefox":"firefox","firefox.desktop":"firefox","com.microsoft.msedge":"edge","com.microsoft.edge":"edge","com.microsoft.edgemac":"edge","microsoft-edge.desktop":"edge"},Y={chrome:"--incognito",brave:"--incognito",firefox:"--private-window",edge:"--inPrivate"},G=H?await uS():await x();if(G.id in V){let z=V[G.id];if(S==="browserPrivate")q.push(Y[z]);return k({...$,app:{name:U[z],arguments:q}})}throw Error(`${G.name} is not supported as a default browser`)}let J,K=[],Q={};if(N==="darwin"){if(J="open",$.wait)K.push("--wait-apps");if($.background)K.push("--background");if($.newInstance)K.push("--new");if(S)K.push("-a",S)}else if(N==="win32"||H&&!R()&&!S){if(J=await v(),K.push("-NoProfile","-NonInteractive","-ExecutionPolicy","Bypass","-EncodedCommand"),!H)Q.windowsVerbatimArguments=!0;let V=["Start"];if($.wait)V.push("-Wait");if(S){if(V.push(`"\`"${S}\`""`),$.target)q.push($.target)}else if($.target)V.push(`"${$.target}"`);if(q.length>0)q=q.map((Y)=>`"\`"${Y}\`""`),V.push("-ArgumentList",q.join(","));$.target=n.from(V.join(" "),"utf16le").toString("base64")}else{if(S)J=S;else{let V=!A||A==="/",Y=!1;try{await wS.access(d,fS.X_OK),Y=!0}catch{}J=B.versions.electron??(N==="android"||V||!Y)?"xdg-open":d}if(q.length>0)K.push(...q);if(!$.wait)Q.stdio="ignore",Q.detached=!0}if(N==="darwin"&&q.length>0)K.push("--args",...q);if($.target)K.push($.target);let Z=o.spawn(J,K,Q);if($.wait)return new Promise((V,Y)=>{Z.once("error",Y),Z.once("close",(G)=>{if(!$.allowNonzeroExitCode&&G>0){Y(Error(`Exited with code ${G}`));return}V(Z)})});return Z.unref(),Z},gS=($,S)=>{if(typeof $!=="string")throw TypeError("Expected a `target`");return k({...S,target:$})};function i($){if(typeof $==="string"||Array.isArray($))return $;let{[p]:S}=$;if(!S)throw Error(`${p} is not supported`);return S}function D({[N]:$},{wsl:S}){if(S&&H)return i(S);if(!$)throw Error(`${N} is not supported`);return i($)}var U={};X(U,"chrome",()=>D({darwin:"google chrome",win32:"chrome",linux:["google-chrome","google-chrome-stable","chromium"]},{wsl:{ia32:"/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe",x64:["/mnt/c/Program Files/Google/Chrome/Application/chrome.exe","/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe"]}}));X(U,"brave",()=>D({darwin:"brave browser",win32:"brave",linux:["brave-browser","brave"]},{wsl:{ia32:"/mnt/c/Program Files (x86)/BraveSoftware/Brave-Browser/Application/brave.exe",x64:["/mnt/c/Program Files/BraveSoftware/Brave-Browser/Application/brave.exe","/mnt/c/Program Files (x86)/BraveSoftware/Brave-Browser/Application/brave.exe"]}}));X(U,"firefox",()=>D({darwin:"firefox",win32:String.raw`C:\Program Files\Mozilla Firefox\firefox.exe`,linux:"firefox"},{wsl:"/mnt/c/Program Files/Mozilla Firefox/firefox.exe"}));X(U,"edge",()=>D({darwin:"microsoft edge",win32:"msedge",linux:["microsoft-edge","microsoft-edge-dev"]},{wsl:"/mnt/c/Program Files (x86)/Microsoft/Edge/Application/msedge.exe"}));X(U,"browser",()=>"browser");X(U,"browserPrivate",()=>"browserPrivate");var a=gS;function hS($){return Array.from($,(S)=>{let q=S.charCodeAt(0);return S==="/"||S==="\\"||q<32||q===127?"_":S}).join("")}async function e($,S,q={}){let J=`${$}/${new Date().toISOString()}${hS(S.subject)}`,K={to:S.to,cc:S.cc,bcc:S.bcc,from:S.from,subject:S.subject,headers:S.headers??{},attachments:S.attachments.map((Q)=>({filename:Q.filename,bytes:Buffer.byteLength(Q.content)})),scheduledAt:S.scheduledAt??null,idempotencyKey:S.idempotencyKey??null,locale:q.locale??null,text:S.text??null};return await Bun.write(`${J}.json`,`${JSON.stringify(K,null,2)}
4
4
  `),await Bun.write(`${J}.html`,S.html),`${J}.html`}import{jsx as SS}from"react/jsx-runtime";class KS{from="";to=[];subject="No Subject";cc=[];bcc=[];attachments=[];template;headers={};static async send($){let S=new this,q=P($S).defaultLocale,J=P(JS),{to:K=S.to,from:Q=S.from,subject:Z=typeof S.subject==="string"?S.subject:S.subject[$.locale||q],cc:V=S.cc,bcc:Y=S.bcc,attachments:G=S.attachments,data:z,headers:QS={}}=$,VS={...J.headers??{},...S.headers??{},...QS??{}},y=process.env.EMAIL_DEBUG==="true",E=y?"debug":J.driver?.provider??"custom",w=await J.filterRecipients(K);if(!w.length)return{id:null,provider:E,status:"skipped"};let[YS,ZS]=await Promise.all([S.render({...z,locale:$.locale}),S.renderText({...z,locale:$.locale})]),f={bcc:Y,cc:V,from:Q,subject:Z,to:w,attachments:G,html:YS,headers:VS,text:ZS,scheduledAt:$.scheduledAt,idempotencyKey:$.idempotencyKey};if(y){let GS=await e(`${process.env.ROOT_DIR}/.debug/emails`,f,{locale:$.locale});if(process.env.CI!=="true")await a(GS);return{id:`debug_${crypto.randomUUID()}`,provider:E,status:"debug"}}let M=await qS(J,f);return M.ok?{id:M.id,provider:E,status:"sent"}:{id:M.id,provider:E,status:"failed",error:M.error}}static async preview($){return await new this().render({...$.data,locale:$.locale})}async render($){let S=this.template;return await s(SS(S,{...$}))}async renderText($){let S=this.template;return await s(SS(S,{...$}),{plainText:!0})}}export{KS as Email};
5
5
 
6
- //# debugId=E1CCA7FC458B054C64756E2164756E21
6
+ //# debugId=07D6FE61BB44BE4464756E2164756E21
@@ -17,6 +17,6 @@
17
17
  "import type { SendEmailParams } from \"../services/email/drivers/types\";\n\n/**\n * What `EMAIL_DEBUG=true` records about a send, next to the rendered HTML.\n *\n * The HTML alone can't say who a mail went to: plenty of templates render\n * nothing per recipient, so a test asserting \"this action mailed this user\"\n * could match another send with the same subject. The sidecar holds the\n * envelope the driver would have been handed, with `to` already filtered.\n */\nexport interface DebugEmailRecord {\n to: string[];\n cc: string[];\n bcc: string[];\n from: string;\n subject: string;\n headers: Record<string, string>;\n // Attachment bodies are left out: name and size are enough to assert on.\n attachments: Array<{ filename: string; bytes: number }>;\n scheduledAt: string | null;\n idempotencyKey: string | null;\n locale: string | null;\n text: string | null;\n}\n\n/**\n * A subject as a filename fragment. Path separators would write into a\n * subdirectory (or fail), and control characters aren't valid on every\n * filesystem. Everything else is kept, so a reader matching on the subject\n * substring keeps working.\n */\nexport function debugEmailFileSubject(subject: string) {\n return Array.from(subject, (char) => {\n const code = char.charCodeAt(0);\n return char === \"/\" || char === \"\\\\\" || code < 0x20 || code === 0x7f ? \"_\" : char;\n }).join(\"\");\n}\n\n/**\n * Writes `<dir>/<iso><subject>.json` and then `<dir>/<iso><subject>.html`, and\n * returns the HTML path. The sidecar goes first so a reader that sees the HTML\n * can rely on its envelope being there.\n */\nexport async function writeDebugEmail(\n dir: string,\n params: SendEmailParams,\n options: { locale?: string } = {},\n) {\n const base = `${dir}/${new Date().toISOString()}${debugEmailFileSubject(params.subject)}`;\n\n const record: DebugEmailRecord = {\n to: params.to,\n cc: params.cc,\n bcc: params.bcc,\n from: params.from,\n subject: params.subject,\n headers: params.headers ?? {},\n attachments: params.attachments.map((attachment) => ({\n filename: attachment.filename,\n bytes: Buffer.byteLength(attachment.content),\n })),\n scheduledAt: params.scheduledAt ?? null,\n idempotencyKey: params.idempotencyKey ?? null,\n locale: options.locale ?? null,\n text: params.text ?? null,\n };\n\n await Bun.write(`${base}.json`, `${JSON.stringify(record, null, 2)}\\n`);\n await Bun.write(`${base}.html`, params.html);\n\n return `${base}.html`;\n}\n"
18
18
  ],
19
19
  "mappings": "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",
20
- "debugId": "E1CCA7FC458B054C64756E2164756E21",
20
+ "debugId": "07D6FE61BB44BE4464756E2164756E21",
21
21
  "names": []
22
22
  }
@@ -1,4 +1,4 @@
1
1
  // @bun
2
- import{Id as c,Jd as d,Kd as f,Ld as g,Md as i,Nd as j,Od as k,Pd as l,Qd as m,Rd as n,Sd as o,ae as p,gd as a,oe as q,pe as r,qe as s}from"../chunk-bz5gda3b.js";import"../chunk-zq1bhsdg.js";import"../chunk-fjhnn3de.js";import{Bg as e,Dg as h,cg as b}from"../chunk-299zx9dv.js";import"../chunk-2kegxt0s.js";import"../chunk-4c1npv8k.js";import"../chunk-ct1vwaw7.js";import"../chunk-6pqbsc5y.js";import"../chunk-kkx8a35r.js";import"../chunk-q6a30w8w.js";import"../chunk-c8vttyem.js";import"../chunk-pjz79c2c.js";import"../chunk-fmea4sak.js";import"../chunk-b336h3hj.js";import"../chunk-1p87gdd2.js";import"../chunk-zb8zzf5x.js";import"../chunk-9c5s06gc.js";import"../chunk-nfq127pg.js";import"../chunk-q0djcyj2.js";import"../chunk-0p6mdba6.js";import"../chunk-j5q5ysng.js";export{g as Url,e as Storage,k as Redis,a as Redirect,l as RateLimiter,f as Query,i as Meta,h as Log,m as Lock,d as Lang,q as Features,b as Facade,s as DB,n as Crypt,j as Cookie,o as Connections,r as ConnectionQueries,p as ChangeFeed,c as Auth};
2
+ import{Dd as c,Ed as d,Fd as f,Gd as g,Hd as i,Id as j,Jd as k,Kd as l,Ld as m,Md as n,Nd as o,Xd as p,bd as a,je as q,ke as r,le as s}from"../chunk-b5a5vvkk.js";import"../chunk-65beps2q.js";import"../chunk-m53fgf20.js";import{_f as b,xg as e,zg as h}from"../chunk-4acpw92g.js";import"../chunk-cca0grq3.js";import"../chunk-m83zm86m.js";import"../chunk-1xdrs2hx.js";import"../chunk-19dpzp4y.js";import"../chunk-yds7zwc3.js";import"../chunk-meg8rtr6.js";import"../chunk-h43jp8ws.js";import"../chunk-s07v65x6.js";import"../chunk-gc2dz11k.js";import"../chunk-cskqet01.js";import"../chunk-fenc5tpv.js";import"../chunk-nz8z8jr1.js";import"../chunk-4fx8p02c.js";import"../chunk-er8acmch.js";import"../chunk-2n3pgfnb.js";import"../chunk-d5f1m3d2.js";import"../chunk-rhvc1axc.js";import"../chunk-tewhms9w.js";export{g as Url,e as Storage,k as Redis,a as Redirect,l as RateLimiter,f as Query,i as Meta,h as Log,m as Lock,d as Lang,q as Features,b as Facade,s as DB,n as Crypt,j as Cookie,o as Connections,r as ConnectionQueries,p as ChangeFeed,c as Auth};
3
3
 
4
- //# debugId=A2CC8DCEE739D76664756E2164756E21
4
+ //# debugId=5365EC3F2E88CB7564756E2164756E21
@@ -4,6 +4,6 @@
4
4
  "sourcesContent": [
5
5
  ],
6
6
  "mappings": "",
7
- "debugId": "A2CC8DCEE739D76664756E2164756E21",
7
+ "debugId": "5365EC3F2E88CB7564756E2164756E21",
8
8
  "names": []
9
9
  }
@@ -1,4 +1,4 @@
1
1
  // @bun
2
- import{Si as o,Ti as r}from"../chunk-zb8zzf5x.js";import"../chunk-9c5s06gc.js";import"../chunk-j5q5ysng.js";export{r as app,o as Application};
2
+ import{Oi as o,Pi as r}from"../chunk-nz8z8jr1.js";import"../chunk-4fx8p02c.js";import"../chunk-tewhms9w.js";export{r as app,o as Application};
3
3
 
4
- //# debugId=FA68D1ADB69FDBB764756E2164756E21
4
+ //# debugId=9145FA3B14B90BCB64756E2164756E21
@@ -4,6 +4,6 @@
4
4
  "sourcesContent": [
5
5
  ],
6
6
  "mappings": "",
7
- "debugId": "FA68D1ADB69FDBB764756E2164756E21",
7
+ "debugId": "9145FA3B14B90BCB64756E2164756E21",
8
8
  "names": []
9
9
  }
@@ -153,6 +153,39 @@ export interface StaticViewOptions {
153
153
  * `Origin` check) needs nothing from the page.
154
154
  */
155
155
  csrf?: boolean;
156
+ /**
157
+ * Client-side navigation between static pages (#865). Off by default, and
158
+ * then the document is exactly what it was without it.
159
+ *
160
+ * On, the page ships a small runtime (about 2.5 KB gzip, with the island
161
+ * loader it replaces; no React unless the page has islands) that follows
162
+ * same-origin links by fetching the next page and swapping it in: title,
163
+ * the head tags `Head`/`Meta` render and the body, re-hydrating the new
164
+ * page's islands and unmounting the old ones. When the next page has
165
+ * another layout, build, `version` or stylesheet, or anything fails, it is
166
+ * an ordinary full page load. Without JavaScript, links are plain links.
167
+ *
168
+ * `true` is `{}`: the defaults below.
169
+ */
170
+ navigation?: boolean | StaticNavigationOptions;
171
+ }
172
+ /** `.static({ navigation: { … } })`. */
173
+ export interface StaticNavigationOptions {
174
+ /**
175
+ * Any string identifying what the page is built from beyond gemi's build:
176
+ * a page whose version differs from the current one is loaded in full
177
+ * rather than swapped in (a new publication with its own assets or theme,
178
+ * say). Called per request, after the handler. Defaults to `""`, so only the
179
+ * layout and the build decide.
180
+ */
181
+ version?: (req: HttpRequest<any, any>) => string | Promise<string>;
182
+ /**
183
+ * `"intent"` (default): fetch a link's page ahead when the pointer rests on
184
+ * it (65 ms), it gets focus or a touch starts, into a small cache (10 pages,
185
+ * 30 s), which the navigation then uses. Off when the visitor asked to save
186
+ * data. `"none"`: fetch on click only.
187
+ */
188
+ prefetch?: "intent" | "none";
156
189
  }
157
190
  export declare class ViewRoute<Input, Output, Params> {
158
191
  viewPath: string;
@@ -186,8 +219,9 @@ export declare class ViewRoute<Input, Output, Params> {
186
219
  * add one small loader plus each used island's own module.
187
220
  *
188
221
  * Because nothing hydrates, event handlers, effects and state in the view
189
- * never run in the browser. Links are plain `<a>`s, and a client-side
190
- * navigation from a hydrated page to this route becomes a full page load.
222
+ * never run in the browser. Links are plain `<a>`s (followed client-side
223
+ * between static pages with `navigation`), and a client-side navigation
224
+ * from a hydrated page to this route becomes a full page load.
191
225
  *
192
226
  * Returns `this`, so the route's type (and its `ViewPaths` entry) is
193
227
  * unchanged.
@@ -1 +1 @@
1
- {"version":3,"file":"ViewRouter.d.ts","sourceRoot":"","sources":["../../http/ViewRouter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ViewRouter.d.ts","sourceRoot":"","sources":["../../http/ViewRouter.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ export { Controller, ResourceController } from "./Controller";
2
2
  export { ApiRouter, type ControllerRouteHandler, type CreateRPC } from "./ApiRouter";
3
3
  export { McpRouter, McpRouteDeclaration, type McpFileBinder, type McpMethod, McpModelParam, type McpModelParamOptions, type McpModelParamResolver, type McpParamBinder, type McpParamDeclaration, type McpRouteMeta, type McpRoutes, type McpToolInput, type McpToolOutput, } from "./McpRouter";
4
4
  export type { McpGrant, ProgressUpdate } from "./modelOriginated";
5
- export { createFileResponse, ViewRouter, type CreateViewRPC, type FileOutput, type ViewHandler, type StaticViewOptions, } from "./ViewRouter";
5
+ export { createFileResponse, ViewRouter, type CreateViewRPC, type FileOutput, type ViewHandler, type StaticViewOptions, type StaticNavigationOptions, } from "./ViewRouter";
6
6
  export { toMiddlewareList, type MiddlewareInput } from "./middlewareList";
7
7
  export { createStreamResponse, createUnsatisfiableResponse, type StreamOutput, type StreamDescriptor, type StreamReadResult, } from "./createStreamResponse";
8
8
  export { formatContentRange, formatUnsatisfiedContentRange, parseContentRange, parseRangeHeader, resolveRange, toRangeHeaderValue, type ByteRange, type ContentRange, type ResolvedRange, } from "./range";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../http/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../http/index.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  // @bun
2
- import{$c as p,$e as ka,Gd as M,Hd as N,Se as ba,Te as ca,Ue as da,Ve as ea,We as fa,Xe as ga,Ye as ha,Zc as n,Ze as ia,_c as o,_e as ja,ad as q,af as la,bd as r,bf as ma,cd as y,dd as z,ed as A,fd as B,hd as C,id as D,jd as E,kd as F,ld as G,md as H,nd as I,sd as J,td as K,ud as L,ye as aa}from"../chunk-bz5gda3b.js";import"../chunk-zq1bhsdg.js";import"../chunk-fjhnn3de.js";import{$f as v,Bf as a,Cf as b,Df as d,If as e,Jf as f,Kf as g,Lf as h,Mf as i,Nf as j,Sf as k,Tf as l,Xf as m,Yf as s,Zf as t,_f as u,ag as w,bg as x,lg as O,mg as P,ng as Q,og as R,pg as S,qg as T,rg as U,sg as V,tg as W,ug as X,vg as Y,wg as Z,xg as _,yg as $}from"../chunk-299zx9dv.js";import{Lg as c}from"../chunk-2kegxt0s.js";import"../chunk-4c1npv8k.js";import"../chunk-ct1vwaw7.js";import"../chunk-6pqbsc5y.js";import"../chunk-kkx8a35r.js";import"../chunk-q6a30w8w.js";import"../chunk-c8vttyem.js";import"../chunk-pjz79c2c.js";import"../chunk-fmea4sak.js";import"../chunk-b336h3hj.js";import"../chunk-1p87gdd2.js";import"../chunk-zb8zzf5x.js";import"../chunk-9c5s06gc.js";import"../chunk-nfq127pg.js";import"../chunk-q0djcyj2.js";import"../chunk-0p6mdba6.js";import"../chunk-j5q5ysng.js";export{g as toRangeHeaderValue,n as toMiddlewareList,$ as safeFetch,f as resolveRange,e as parseRangeHeader,h as parseContentRange,r as parseByteSize,I as middlewareConfigDefaults,D as httpError,d as getCookies,j as formatUnsatisfiedContentRange,i as formatContentRange,ia as defineResourcePolicy,H as defineMiddlewareConfig,o as createUnsatisfiableResponse,p as createStreamResponse,E as createFileResponse,L as clientIp,Z as classifyAddress,F as ViewRouter,k as ValidationError,W as TooManyRedirectsError,U as TooLargeError,T as TimeoutError,ja as SitemapError,ka as Sitemap,N as SameSiteBounceMiddleware,_ as SafeResponse,O as SafeFetchError,M as SAME_SITE_BOUNCE_PARAM,la as RobotsTxt,ma as Robots,ha as ResourcePolicy,b as ResourceController,c as RequestBreakerError,K as RateLimitMiddleware,J as RateLimitExceededError,u as RangeNotSatisfiableError,fa as PoliciesServiceProvider,ga as Policies,q as PayloadTooLargeError,v as NotFoundError,X as NetworkError,G as Middleware,B as McpRouter,A as McpRouteDeclaration,z as McpModelParam,l as InvalidValidationRuleError,P as InvalidUrlError,t as InsufficientPermissionsError,Y as HttpStatusError,C as HttpResponse,m as HttpRequest,w as FileNotFoundError,S as DnsError,da as CorsMiddleware,a as Controller,V as ContentTypeError,ca as CacheMiddleware,ea as CSRFMiddleware,aa as BodyLimitMiddleware,Q as BlockedHostError,R as BlockedAddressError,s as AuthorizationError,ba as AuthenticationMiddleware,x as AuthenticationError,y as ApiRouter};
2
+ import{$c as A,Bd as M,Cd as N,Oe as ba,Pe as ca,Qe as da,Re as ea,Se as fa,Te as ga,Uc as n,Ue as ha,Vc as o,Ve as ia,Wc as p,We as ja,Xc as q,Xe as ka,Yc as r,Ye as la,Zc as y,Ze as ma,_c as z,ad as B,cd as C,dd as D,ed as E,fd as F,gd as G,hd as H,id as I,nd as J,od as K,pd as L,te as aa}from"../chunk-b5a5vvkk.js";import"../chunk-65beps2q.js";import"../chunk-m53fgf20.js";import{Ef as e,Ff as f,Gf as g,Hf as h,If as i,Jf as j,Of as k,Pf as l,Tf as m,Uf as s,Vf as t,Wf as u,Xf as v,Yf as w,Zf as x,hg as O,ig as P,jg as Q,kg as R,lg as S,mg as T,ng as U,og as V,pg as W,qg as X,rg as Y,sg as Z,tg as _,ug as $,xf as a,yf as b,zf as d}from"../chunk-4acpw92g.js";import{Hg as c}from"../chunk-cca0grq3.js";import"../chunk-m83zm86m.js";import"../chunk-1xdrs2hx.js";import"../chunk-19dpzp4y.js";import"../chunk-yds7zwc3.js";import"../chunk-meg8rtr6.js";import"../chunk-h43jp8ws.js";import"../chunk-s07v65x6.js";import"../chunk-gc2dz11k.js";import"../chunk-cskqet01.js";import"../chunk-fenc5tpv.js";import"../chunk-nz8z8jr1.js";import"../chunk-4fx8p02c.js";import"../chunk-er8acmch.js";import"../chunk-2n3pgfnb.js";import"../chunk-d5f1m3d2.js";import"../chunk-rhvc1axc.js";import"../chunk-tewhms9w.js";export{g as toRangeHeaderValue,n as toMiddlewareList,$ as safeFetch,f as resolveRange,e as parseRangeHeader,h as parseContentRange,r as parseByteSize,I as middlewareConfigDefaults,D as httpError,d as getCookies,j as formatUnsatisfiedContentRange,i as formatContentRange,ia as defineResourcePolicy,H as defineMiddlewareConfig,o as createUnsatisfiableResponse,p as createStreamResponse,E as createFileResponse,L as clientIp,Z as classifyAddress,F as ViewRouter,k as ValidationError,W as TooManyRedirectsError,U as TooLargeError,T as TimeoutError,ja as SitemapError,ka as Sitemap,N as SameSiteBounceMiddleware,_ as SafeResponse,O as SafeFetchError,M as SAME_SITE_BOUNCE_PARAM,la as RobotsTxt,ma as Robots,ha as ResourcePolicy,b as ResourceController,c as RequestBreakerError,K as RateLimitMiddleware,J as RateLimitExceededError,u as RangeNotSatisfiableError,fa as PoliciesServiceProvider,ga as Policies,q as PayloadTooLargeError,v as NotFoundError,X as NetworkError,G as Middleware,B as McpRouter,A as McpRouteDeclaration,z as McpModelParam,l as InvalidValidationRuleError,P as InvalidUrlError,t as InsufficientPermissionsError,Y as HttpStatusError,C as HttpResponse,m as HttpRequest,w as FileNotFoundError,S as DnsError,da as CorsMiddleware,a as Controller,V as ContentTypeError,ca as CacheMiddleware,ea as CSRFMiddleware,aa as BodyLimitMiddleware,Q as BlockedHostError,R as BlockedAddressError,s as AuthorizationError,ba as AuthenticationMiddleware,x as AuthenticationError,y as ApiRouter};
3
3
 
4
- //# debugId=0C8A9EF31E6F7B6464756E2164756E21
4
+ //# debugId=61D42EE3DDB4162764756E2164756E21
@@ -4,6 +4,6 @@
4
4
  "sourcesContent": [
5
5
  ],
6
6
  "mappings": "",
7
- "debugId": "0C8A9EF31E6F7B6464756E2164756E21",
7
+ "debugId": "61D42EE3DDB4162764756E2164756E21",
8
8
  "names": []
9
9
  }
@@ -1,4 +1,4 @@
1
1
  // @bun
2
- import{ca as y,da as p}from"../chunk-620yeafr.js";import{ua as c,va as d,xa as l}from"../chunk-epvpmakp.js";import{Ai as o,Bi as n,Ci as a,Di as s,vi as e,wi as i,yi as t,zi as r}from"../chunk-b336h3hj.js";import"../chunk-j5q5ysng.js";export{o as setActiveLocale,r as seedDictionaries,t as preloadDictionaries,d as localeStrings,i as loadDictionary,n as getActiveLocale,e as dictionaryRegistrationMark,c as dictionaryLocales,l as dictionaryId,y as defineDictionary,s as createDictionarySink,a as __resetDictionaryRegistry,p as __gemi_dict__};
2
+ import{ca as y,da as p}from"../chunk-7ftj43vp.js";import{ua as c,va as d,xa as l}from"../chunk-epvpmakp.js";import{ri as e,si as i,ui as t,vi as r,wi as o,xi as n,yi as a,zi as s}from"../chunk-cskqet01.js";import"../chunk-tewhms9w.js";export{o as setActiveLocale,r as seedDictionaries,t as preloadDictionaries,d as localeStrings,i as loadDictionary,n as getActiveLocale,e as dictionaryRegistrationMark,c as dictionaryLocales,l as dictionaryId,y as defineDictionary,s as createDictionarySink,a as __resetDictionaryRegistry,p as __gemi_dict__};
3
3
 
4
- //# debugId=5774A15A8DF6B20E64756E2164756E21
4
+ //# debugId=8AD80A70A87EFC9564756E2164756E21
@@ -4,6 +4,6 @@
4
4
  "sourcesContent": [
5
5
  ],
6
6
  "mappings": "",
7
- "debugId": "5774A15A8DF6B20E64756E2164756E21",
7
+ "debugId": "8AD80A70A87EFC9564756E2164756E21",
8
8
  "names": []
9
9
  }
@@ -1,4 +1,4 @@
1
1
  // @bun
2
- import{ca as T}from"../chunk-620yeafr.js";import"../chunk-epvpmakp.js";import{fb as D}from"../chunk-15v719sq.js";import{Wc as b,Xc as w}from"../chunk-7pxdvvrz.js";import"../chunk-30xxc6r7.js";import{Jd as j}from"../chunk-bz5gda3b.js";import"../chunk-zq1bhsdg.js";import"../chunk-fjhnn3de.js";import"../chunk-299zx9dv.js";import"../chunk-2kegxt0s.js";import"../chunk-4c1npv8k.js";import"../chunk-ct1vwaw7.js";import"../chunk-6pqbsc5y.js";import"../chunk-kkx8a35r.js";import"../chunk-q6a30w8w.js";import"../chunk-c8vttyem.js";import"../chunk-pjz79c2c.js";import"../chunk-fmea4sak.js";import"../chunk-b336h3hj.js";import{Ki as V,Li as X,Mi as E,Ni as L,Oi as R,Pi as S}from"../chunk-1p87gdd2.js";import"../chunk-zb8zzf5x.js";import"../chunk-9c5s06gc.js";import"../chunk-nfq127pg.js";import"../chunk-q0djcyj2.js";import"../chunk-0p6mdba6.js";import"../chunk-j5q5ysng.js";import{createElement as J,Fragment as M,isValidElement as U}from"react";function $(q,B){let G=Object.values(B).some((z)=>typeof z==="function"&&U(z(""))),Q=/{{([^{}]+?)(?::([^{}\[\]]+?))?(?:\[(.*?)\])?}}/g;if(!G)return q.replace(Q,(W,O,_,Z)=>{let C=O.includes(":")?O.split(":")[0]:O,H=B[C];if(H===void 0)return W;if(typeof H==="function"){let K=H(Z!==void 0?Z:"");if(U(K))throw Error("JSX returned in string context");return String(K)}if(_)switch(_.toLowerCase()){case"number":return Number(H).toString();case"string":return String(H);case"boolean":return Boolean(H).toString();default:return String(H)}return String(H)});else{let z=[],W=0,O=null;while((O=Q.exec(q))!==null){let[_,Z,C,H]=O,F=O.index,K=Z.includes(":")?Z.split(":")[0]:Z;if(F>W)z.push(q.substring(W,F));let Y=B[K];if(Y===void 0)z.push(_);else if(typeof Y==="function"){let A=Y(H!==void 0?H:"");z.push(A)}else if(C)switch(C.toLowerCase()){case"number":z.push(Number(Y).toString());break;case"string":z.push(String(Y));break;case"boolean":z.push(Boolean(Y).toString());break;default:z.push(String(Y))}else z.push(String(Y));W=F+_.length}if(W<q.length)z.push(q.substring(W));return J(M,{},...z)}}class P{name;dictionary;constructor(q,B){this.name=q;this.dictionary=B}reference(q){if(typeof window<"u")throw Error("Cannot use reference in the browser");if(!this.dictionary?.[q])throw Error(`Translation not found for ${String(q)}`);return this.dictionary[q]}render(q,...B){let{locale:G=j.locale(),params:Q}={params:{},...B[0]};if(typeof window<"u")throw Error("Cannot use render in the browser");if(!this.dictionary?.[q]?.[G])throw Error(`Translation not found for ${String(q)} in ${String(G)}`);return $(this.dictionary[q][G],Q??{})}static create(q,B){return new P(q,B)}static text(q,...B){let{locale:G=j.locale(),params:Q}={params:{},...B?.[0]};if(!q?.[G])throw Error(`Translation not found for ${String(G)}`);return $(q[G],Q??{})}}async function N(q,B,...G){let{locale:Q=j.locale(),params:z}={params:{},...G[0]},O=(await q.load(String(Q)))[B];if(typeof O!=="string")throw Error(`Translation not found for "${B}" in "${String(Q)}" (dictionary ${q.id})`);return $(O,z??{})}export{w as translationConfigDefaults,N as translate,V as resolveLocale,X as negotiateLocale,L as isValidTimeZone,b as defineTranslationConfig,T as defineDictionary,R as createFormatter,S as Translator,D as TranslationServiceProvider,P as Dictionary,E as DEFAULT_TIME_ZONE};
2
+ import{ca as T}from"../chunk-7ftj43vp.js";import"../chunk-epvpmakp.js";import{ab as D}from"../chunk-htgmy3x7.js";import{Rc as b,Sc as w}from"../chunk-tk135gmj.js";import"../chunk-9xyxbxgk.js";import{Ed as j}from"../chunk-b5a5vvkk.js";import"../chunk-65beps2q.js";import"../chunk-m53fgf20.js";import"../chunk-4acpw92g.js";import"../chunk-cca0grq3.js";import"../chunk-m83zm86m.js";import"../chunk-1xdrs2hx.js";import"../chunk-19dpzp4y.js";import"../chunk-yds7zwc3.js";import"../chunk-meg8rtr6.js";import"../chunk-h43jp8ws.js";import"../chunk-s07v65x6.js";import"../chunk-gc2dz11k.js";import"../chunk-cskqet01.js";import{Gi as V,Hi as X,Ii as E,Ji as L,Ki as R,Li as S}from"../chunk-fenc5tpv.js";import"../chunk-nz8z8jr1.js";import"../chunk-4fx8p02c.js";import"../chunk-er8acmch.js";import"../chunk-2n3pgfnb.js";import"../chunk-d5f1m3d2.js";import"../chunk-rhvc1axc.js";import"../chunk-tewhms9w.js";import{createElement as J,Fragment as M,isValidElement as U}from"react";function $(q,B){let G=Object.values(B).some((z)=>typeof z==="function"&&U(z(""))),Q=/{{([^{}]+?)(?::([^{}\[\]]+?))?(?:\[(.*?)\])?}}/g;if(!G)return q.replace(Q,(W,O,_,Z)=>{let C=O.includes(":")?O.split(":")[0]:O,H=B[C];if(H===void 0)return W;if(typeof H==="function"){let K=H(Z!==void 0?Z:"");if(U(K))throw Error("JSX returned in string context");return String(K)}if(_)switch(_.toLowerCase()){case"number":return Number(H).toString();case"string":return String(H);case"boolean":return Boolean(H).toString();default:return String(H)}return String(H)});else{let z=[],W=0,O=null;while((O=Q.exec(q))!==null){let[_,Z,C,H]=O,F=O.index,K=Z.includes(":")?Z.split(":")[0]:Z;if(F>W)z.push(q.substring(W,F));let Y=B[K];if(Y===void 0)z.push(_);else if(typeof Y==="function"){let A=Y(H!==void 0?H:"");z.push(A)}else if(C)switch(C.toLowerCase()){case"number":z.push(Number(Y).toString());break;case"string":z.push(String(Y));break;case"boolean":z.push(Boolean(Y).toString());break;default:z.push(String(Y))}else z.push(String(Y));W=F+_.length}if(W<q.length)z.push(q.substring(W));return J(M,{},...z)}}class P{name;dictionary;constructor(q,B){this.name=q;this.dictionary=B}reference(q){if(typeof window<"u")throw Error("Cannot use reference in the browser");if(!this.dictionary?.[q])throw Error(`Translation not found for ${String(q)}`);return this.dictionary[q]}render(q,...B){let{locale:G=j.locale(),params:Q}={params:{},...B[0]};if(typeof window<"u")throw Error("Cannot use render in the browser");if(!this.dictionary?.[q]?.[G])throw Error(`Translation not found for ${String(q)} in ${String(G)}`);return $(this.dictionary[q][G],Q??{})}static create(q,B){return new P(q,B)}static text(q,...B){let{locale:G=j.locale(),params:Q}={params:{},...B?.[0]};if(!q?.[G])throw Error(`Translation not found for ${String(G)}`);return $(q[G],Q??{})}}async function N(q,B,...G){let{locale:Q=j.locale(),params:z}={params:{},...G[0]},O=(await q.load(String(Q)))[B];if(typeof O!=="string")throw Error(`Translation not found for "${B}" in "${String(Q)}" (dictionary ${q.id})`);return $(O,z??{})}export{w as translationConfigDefaults,N as translate,V as resolveLocale,X as negotiateLocale,L as isValidTimeZone,b as defineTranslationConfig,T as defineDictionary,R as createFormatter,S as Translator,D as TranslationServiceProvider,P as Dictionary,E as DEFAULT_TIME_ZONE};
3
3
 
4
- //# debugId=9BE351899A47E1A364756E2164756E21
4
+ //# debugId=C4E0D7821CC396B264756E2164756E21
@@ -6,7 +6,7 @@
6
6
  "// The module, not the `../facades` barrel. A dictionary is the one server-side\n// artifact a *component* test has to import — `<Page dictionaries={[…]}>` takes\n// the app's real `app/i18n/index.ts` — and the barrel drags the whole facade\n// set in behind it, including `Redis` and its `import { RedisClient } from\n// \"bun\"`. Under a browser-targeted runner (vitest/jsdom) that specifier does\n// not resolve, so importing the app's dictionaries failed to collect before it\n// rendered anything. `Lang` itself only needs the translator and the request\n// context.\nimport { Lang } from \"../facades/Lang\";\nimport { parseTranslation } from \"../utils/parseTranslation\";\nimport type {\n ParseTranslationParams,\n ParseTranslationParamsServer,\n Prettify,\n} from \"../utils/type\";\n\ntype Translations = Record<string, Record<string, string>>;\n\nexport class Dictionary<T extends Translations> {\n constructor(\n public name: string,\n public dictionary: T,\n ) {}\n\n reference(key: keyof T) {\n if (typeof window !== \"undefined\") {\n throw new Error(\"Cannot use reference in the browser\");\n }\n if (!this.dictionary?.[key]) {\n throw new Error(`Translation not found for ${String(key)}`);\n }\n return this.dictionary[key];\n }\n\n render<\n K extends keyof T,\n U extends keyof T[K],\n R = Prettify<ParseTranslationParams<T[K][U]>>,\n >(\n key: K,\n ...args: R extends Record<string, never>\n ? [args?: { locale?: U | (string & {}) }]\n : [args: { locale?: U | (string & {}); params: R }]\n ) {\n const { locale = Lang.locale(), params } = {\n params: {},\n ...args[0],\n };\n\n if (typeof window !== \"undefined\") {\n throw new Error(\"Cannot use render in the browser\");\n }\n\n if (!this.dictionary?.[key]?.[locale]) {\n throw new Error(\n `Translation not found for ${String(key)} in ${String(locale)}`,\n );\n }\n return parseTranslation(this.dictionary[key][locale], params ?? {});\n }\n\n /**\n * @deprecated Use `defineDictionary` from `gemi/client`, declared next to the\n * component that reads it. A dictionary made here has to be re-exported from\n * `app/i18n/index.ts` and listed against a route in the `prefetch` config,\n * and every locale of it stays resident whether a page uses it or not. Still\n * supported; see `docs/i18n.md`.\n */\n static create<const T extends Translations>(name: string, translations: T) {\n return new Dictionary<T>(name, translations);\n }\n\n static text<const T extends Record<string, string>, U extends keyof T>(\n content: T,\n ...args: Prettify<ParseTranslationParamsServer<T[U]>> extends Record<\n string,\n never\n >\n ? [args?: { locale?: U | (string & {}) }]\n : [\n args: {\n locale?: U | (string & {});\n params: Prettify<ParseTranslationParamsServer<T[U]>>;\n },\n ]\n ): string {\n const { locale = Lang.locale(), params } = { params: {}, ...args?.[0] };\n\n if (!content?.[locale]) {\n throw new Error(`Translation not found for ${String(locale)}`);\n }\n\n return parseTranslation(content[locale], params ?? {});\n }\n}\n",
7
7
  "import { Lang } from \"../facades\";\nimport { parseTranslation } from \"../utils/parseTranslation\";\nimport type { ParseTranslationParamsServer, Prettify } from \"../utils/type\";\nimport type { DictionaryHandle } from \"./defineDictionary\";\nimport type { DictionaryTranslations } from \"./dictionaryShape\";\n\n/**\n * Read one string from a `defineDictionary` dictionary outside React — a\n * controller, a job, an email template.\n *\n * Async because a bundled dictionary loads its locale on demand. Server code\n * does not go through the bundler, so in practice this resolves without ever\n * yielding; the `await` is what makes the same call work either way.\n *\n * Kept out of `defineDictionary.ts` on purpose: that module is imported by\n * components and has to stay free of the server facades this one needs.\n */\nexport async function translate<\n T extends DictionaryTranslations,\n K extends keyof T & string,\n U extends keyof T[K],\n R = Prettify<ParseTranslationParamsServer<T[K][U] & string>>,\n>(\n dictionary: DictionaryHandle<T>,\n key: K,\n ...args: R extends Record<string, never>\n ? [args?: { locale?: U | (string & {}) }]\n : [args: { locale?: U | (string & {}); params: R }]\n): Promise<string> {\n const { locale = Lang.locale(), params } = { params: {}, ...args[0] };\n const strings = await dictionary.load(String(locale));\n const template = strings[key];\n\n if (typeof template !== \"string\") {\n throw new Error(\n `Translation not found for \"${key}\" in \"${String(locale)}\" (dictionary ${dictionary.id})`,\n );\n }\n\n return parseTranslation(template, (params ?? {}) as any) as string;\n}\n"
8
8
  ],
9
- "mappings": "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",
10
- "debugId": "9BE351899A47E1A364756E2164756E21",
9
+ "mappings": "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",
10
+ "debugId": "C4E0D7821CC396B264756E2164756E21",
11
11
  "names": []
12
12
  }
@@ -42,4 +42,20 @@ export declare function islandEntrySource(file: string): string;
42
42
  export declare const ISLAND_HYDRATE_SOURCE = "function h(marker, Component) {\n if (typeof Component !== \"function\" && (typeof Component !== \"object\" || Component === null)) {\n throw new Error(\"gemi: island module has no component export for \" + marker.outerHTML.slice(0, 80));\n }\n const json = marker.getAttribute(\"data-props\");\n const props = json ? JSON.parse(json) : {};\n let slot = null;\n for (const candidate of marker.querySelectorAll(\"gemi-slot\")) {\n if (candidate.closest(\"gemi-island\") === marker) {\n slot = candidate;\n break;\n }\n }\n const children = slot\n ? [createElement(\"gemi-slot\", {\n style: { display: \"contents\" },\n suppressHydrationWarning: true,\n dangerouslySetInnerHTML: { __html: slot.innerHTML },\n })]\n : [];\n return hydrateRoot(marker, createElement(Component, props, ...children), {\n identifierPrefix: marker.getAttribute(\"data-uid\") || undefined,\n });\n}";
43
43
  /** The runtime module's source, as the plugin serves and builds it. */
44
44
  export declare const ISLAND_RUNTIME_SOURCE = "import { createElement } from \"react\";\nimport { hydrateRoot } from \"react-dom/client\";\nexport function h(marker, Component) {\n if (typeof Component !== \"function\" && (typeof Component !== \"object\" || Component === null)) {\n throw new Error(\"gemi: island module has no component export for \" + marker.outerHTML.slice(0, 80));\n }\n const json = marker.getAttribute(\"data-props\");\n const props = json ? JSON.parse(json) : {};\n let slot = null;\n for (const candidate of marker.querySelectorAll(\"gemi-slot\")) {\n if (candidate.closest(\"gemi-island\") === marker) {\n slot = candidate;\n break;\n }\n }\n const children = slot\n ? [createElement(\"gemi-slot\", {\n style: { display: \"contents\" },\n suppressHydrationWarning: true,\n dangerouslySetInnerHTML: { __html: slot.innerHTML },\n })]\n : [];\n return hydrateRoot(marker, createElement(Component, props, ...children), {\n identifierPrefix: marker.getAttribute(\"data-uid\") || undefined,\n });\n}\n";
45
+ /**
46
+ * The island loader, inlined into a static document that uses islands.
47
+ *
48
+ * Kept byte-for-byte constant (the per-page island table travels in a
49
+ * separate `<script type="application/json">`, which a Content Security Policy
50
+ * does not treat as script), so a strict policy can allow it by hash:
51
+ * `script-src 'sha256-…'` with `ISLAND_LOADER_CSP_HASH`. Everything it loads
52
+ * is a plain `import()` of a same-origin (or asset-base) file.
53
+ *
54
+ * The table is `{ i: [{ s: entry URL, e: export, l: load }] }` and each
55
+ * marker's `data-island` indexes `i`. Per marker, on its schedule: import the
56
+ * island's entry (the module as `m`, the runtime's `h`), then
57
+ * `h(marker, m[export])`, which calls `hydrateRoot`. A failure is logged and
58
+ * leaves the server-rendered markup in place.
59
+ */
60
+ export declare const ISLAND_LOADER_SOURCE: string;
45
61
  //# sourceMappingURL=islandRuntime.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"islandRuntime.d.ts","sourceRoot":"","sources":["../../internal/islandRuntime.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,gCAAgC,CAAC;AAE/D,0FAA0F;AAC1F,eAAO,MAAM,0BAA0B,kCAA2B,CAAC;AAEnE;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,iBAAiB,CAAC;AAEjD,oFAAoF;AACpF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,UAK7C;AAED;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,qBAAqB,66BAuBhC,CAAC;AAEH,uEAAuE;AACvE,eAAO,MAAM,qBAAqB,mhCAGjC,CAAC"}
1
+ {"version":3,"file":"islandRuntime.d.ts","sourceRoot":"","sources":["../../internal/islandRuntime.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,gCAAgC,CAAC;AAE/D,0FAA0F;AAC1F,eAAO,MAAM,0BAA0B,kCAA2B,CAAC;AAEnE;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,iBAAiB,CAAC;AAEjD,oFAAoF;AACpF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,UAK7C;AAED;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,qBAAqB,66BAuBhC,CAAC;AAEH,uEAAuE;AACvE,eAAO,MAAM,qBAAqB,mhCAGjC,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,oBAAoB,QAM8G,CAAC"}
@@ -0,0 +1,8 @@
1
+ /** The sha-256 of the source this was built from, so a test can tell it is stale. */
2
+ export declare const STATIC_NAVIGATION_SOURCE_HASH = "38d6cb0484aa686a8b39adf41de1992d084fe0e504fbc0a1da2f066187451bce";
3
+ /**
4
+ * The navigation runtime (with the island loader) a static view with
5
+ * `.static({ navigation })` inlines. Byte-for-byte constant.
6
+ */
7
+ export declare const STATIC_NAVIGATION_SOURCE = "var r=document,i=window,a=history;i.__gemi_nav?.d();var L=new AbortController,h=(t,e,n,s)=>t.addEventListener(e,n,{signal:L.signal,...s}),q=i.__gemi_nav={d:()=>L.abort()},v=(t,e)=>{if(!t.g)t.g=1,import(e.s).then((n)=>{if(t.isConnected)t.r=n.h(t,n.m[e.e])}).catch((n)=>console.error(n))},D=(t)=>{let e=t.getElementById(\"gemi-islands\");return e?JSON.parse(e.textContent):{i:[]}},R=(t,e)=>{for(let n of t.querySelectorAll(\"gemi-island\")){let s=e.i[n.dataset.island];if(!s||n.o)continue;if(s.l==\"eager\")v(n,s);else if(s.l==\"idle\"||!i.IntersectionObserver||!n.children.length)(i.requestIdleCallback||setTimeout)(()=>v(n,s));else{let l=new IntersectionObserver((m)=>{if(m.some((d)=>d.isIntersecting))l.disconnect(),v(n,s)});for(let m of n.children)l.observe(m)}}},O='meta[name=\"gemi-static\"]',A=\"style:not([data-gemi-fonts])\",T=A+\",link[rel=stylesheet]\",K=`head>${A},body>${A},link[rel=stylesheet]`,I='meta[name]:not([name=viewport]),meta[property],link[rel~=canonical],link[rel~=alternate],link[rel~=icon],link[rel=preload][as=font],style[data-gemi-fonts],script[type=\"application/ld+json\"]',w=(t)=>t.querySelector(O)?.content,C=(t)=>[...t.querySelectorAll(K)].map((e)=>e.outerHTML).join(),c=(t)=>t.href.split(\"#\")[0],p=r.createElement(\"div\");p.setAttribute(\"aria-live\",\"polite\");p.style.cssText=\"position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap\";r.body.append(p);var _=(t)=>{q.p={url:location.href,title:r.title,initial:t},r.dispatchEvent(new CustomEvent(\"gemi:page-load\",{detail:q.p}))},f=new Map,k=(t)=>{let e=f.get(t);if(!e||Date.now()-e[0]>30000){let n=fetch(t,{headers:{accept:\"text/html\",\"x-gemi-navigate\":\"1\"},signal:AbortSignal.timeout(1e4)}).then((s)=>{if(!s.ok||!/^text\\/html/.test(s.headers.get(\"content-type\"))||new URL(s.url||t).origin!=location.origin)throw s;return s.text().then((l)=>[s.url||t,l])});e=[Date.now(),n],n.catch(()=>f.get(t)==e&&f.delete(t))}if(f.delete(t),f.set(t,e),f.size>10)f.delete(f.keys().next().value);return e[1]},M=(t)=>{let e=t.target.closest?.(\"a[href]\"),n=e?.getAttribute(\"target\");if(!e||n&&n!=\"_self\"||e.hasAttribute(\"download\")||/(^|\\s)external(\\s|$)/i.test(e.getAttribute(\"rel\"))||e.closest(\"[data-gemi-reload]\"))return;let s=new URL(e.getAttribute(\"href\"),r.baseURI);if(s.origin==location.origin&&!(s.href.includes(\"#\")&&c(s)==c(location)))return s},y={},U=()=>Math.random().toString(36).slice(2),E=()=>a.state?.g||a.replaceState({...a.state,g:U()},\"\"),P=c(location),b=0,N=(t)=>{if(!t.hasAttribute(\"tabindex\"))t.setAttribute(\"tabindex\",\"-1\"),t.addEventListener(\"blur\",()=>t.removeAttribute(\"tabindex\"),{once:!0});t.focus({preventScroll:!0})},Y=(t)=>{let e=r.body,n=t.body,s=D(t),l=r.documentElement;r.title=t.title;for(let o of[\"lang\",\"dir\"]){let u=t.documentElement.getAttribute(o);if(u==null)l.removeAttribute(o);else l.setAttribute(o,u)}for(let o of r.head.querySelectorAll(I))o.remove();let m=new Set([...r.querySelectorAll(\"link[rel=modulepreload]\")].map((o)=>o.getAttribute(\"href\")));r.head.append(...t.head.querySelectorAll(I),...[...t.head.querySelectorAll(\"link[rel=modulepreload]\")].filter((o)=>!m.has(o.getAttribute(\"href\"))));let d=new Map([...e.querySelectorAll(\"[data-gemi-persist]\")].map((o)=>[o.dataset.gemiPersist,o])),g=[...n.querySelectorAll(\"[data-gemi-persist]\")].map((o)=>[o,d.get(o.dataset.gemiPersist)]).filter((o)=>o[1]);for(let o of[...e.querySelectorAll(\"gemi-island\")].reverse())if(o.o=1,!g.some((u)=>u[1].contains(o)))try{o.r?.unmount()}catch(u){console.error(u)}for(let[o,u]of g)o.replaceWith(u);for(let o of[...e.childNodes])if(!o.matches?.(T))o.remove();for(let o of[...n.children])if(o.matches(T))o.remove();for(let o of[...e.attributes])e.removeAttribute(o.name);for(let o of n.attributes)e.setAttribute(o.name,o.value);e.append(...n.childNodes,p),R(e,s)},H=async(t,e)=>{let n=++b,s=!e&&y[a.state?.g];a.scrollRestoration=\"manual\";try{let[l,m]=await k(c(t));if(n!=b)return;let d=new DOMParser().parseFromString(m,\"text/html\");if(w(d)==null||w(d)!=w(r)||C(d)!=C(r))throw 0;if(e){let o=new URL(l);o.hash=t.hash,a.pushState({g:U()},\"\",o.href)}P=c(location),Y(d);let g=e&&t.hash&&r.getElementById(decodeURIComponent(t.hash.slice(1)));if(g)g.scrollIntoView({behavior:\"instant\"});else i.scrollTo({left:s?.[0]||0,top:s?.[1]||0,behavior:\"instant\"});if(e)N(g||r.querySelector(\"h1\")||r.querySelector(\"main\")||r.body);p.textContent=r.title,_(!1)}catch{if(n!=b)return;if(e)location.assign(t.href);else location.reload()}};h(r,\"click\",(t)=>{if(t.defaultPrevented||t.button||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey)return;let e=M(t);if(e&&r.dispatchEvent(new CustomEvent(\"gemi:before-navigate\",{cancelable:!0,detail:{url:e.href}})))t.preventDefault(),E(),y[a.state.g]=[i.scrollX,i.scrollY],H(e,1)});h(i,\"popstate\",()=>{if(b++,c(location)==P){let t=y[a.state?.g];if(t)i.scrollTo({left:t[0],top:t[1],behavior:\"instant\"})}else if(a.state?.g)H(new URL(location.href),0);else location.reload()});h(i,\"hashchange\",E);h(i,\"scroll\",()=>a.state?.g&&(y[a.state.g]=[i.scrollX,i.scrollY]),{passive:!0});var S,x=(t)=>{if(r.querySelector(O)?.dataset.prefetch==\"none\"||navigator.connection?.saveData)return;let e=M(t);if(e&&c(e)!=c(location))k(c(e))};h(r,\"pointerover\",(t)=>{clearTimeout(S),S=setTimeout(()=>x(t),65)});h(r,\"pointerout\",()=>clearTimeout(S));h(r,\"focusin\",x);h(r,\"touchstart\",x,{passive:!0});E();R(r,D(r));_(!0);";
8
+ //# sourceMappingURL=staticNavigationRuntime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"staticNavigationRuntime.d.ts","sourceRoot":"","sources":["../../internal/staticNavigationRuntime.ts"],"names":[],"mappings":"AAIA,qFAAqF;AACrF,eAAO,MAAM,6BAA6B,qEAAqE,CAAC;AAEhH;;;GAGG;AACH,eAAO,MAAM,wBAAwB,y0KACmyK,CAAC"}