@timber-js/app 0.2.0-alpha.12 → 0.2.0-alpha.120

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 (758) hide show
  1. package/dist/_chunks/actions-Cw-7NfJJ.js +1101 -0
  2. package/dist/_chunks/actions-Cw-7NfJJ.js.map +1 -0
  3. package/dist/_chunks/build-output-helper-DhxiT18k.js +61 -0
  4. package/dist/_chunks/build-output-helper-DhxiT18k.js.map +1 -0
  5. package/dist/_chunks/cli-schema-sync-XV0I47Gj.js +2 -0
  6. package/dist/_chunks/cli-schema-sync-q2wB0DyJ.js +358 -0
  7. package/dist/_chunks/cli-schema-sync-q2wB0DyJ.js.map +1 -0
  8. package/dist/_chunks/codec-registry-V7ARyeLN.js +21 -0
  9. package/dist/_chunks/codec-registry-V7ARyeLN.js.map +1 -0
  10. package/dist/_chunks/define-8zQ8Vm7x.js +195 -0
  11. package/dist/_chunks/define-8zQ8Vm7x.js.map +1 -0
  12. package/dist/_chunks/define-zQX6e1tN.js +124 -0
  13. package/dist/_chunks/define-zQX6e1tN.js.map +1 -0
  14. package/dist/_chunks/format-CR6v1pWE.js +14 -0
  15. package/dist/_chunks/format-CR6v1pWE.js.map +1 -0
  16. package/dist/_chunks/handler-store-iqnt2ghN.js +54 -0
  17. package/dist/_chunks/handler-store-iqnt2ghN.js.map +1 -0
  18. package/dist/_chunks/logger-DDmK5skc.js +291 -0
  19. package/dist/_chunks/logger-DDmK5skc.js.map +1 -0
  20. package/dist/_chunks/merge-search-params-CwxJzBLS.js +41 -0
  21. package/dist/_chunks/merge-search-params-CwxJzBLS.js.map +1 -0
  22. package/dist/_chunks/navigation-root-DKsJ5Di7.js +96 -0
  23. package/dist/_chunks/navigation-root-DKsJ5Di7.js.map +1 -0
  24. package/dist/_chunks/registry-Dp_hJL4s.js +20 -0
  25. package/dist/_chunks/registry-Dp_hJL4s.js.map +1 -0
  26. package/dist/_chunks/resolve-schema-23Mc8aLi.js +65 -0
  27. package/dist/_chunks/resolve-schema-23Mc8aLi.js.map +1 -0
  28. package/dist/_chunks/router-ref-sektkr-t.js +28 -0
  29. package/dist/_chunks/router-ref-sektkr-t.js.map +1 -0
  30. package/dist/_chunks/scanner-DmfoB7iK.js +336 -0
  31. package/dist/_chunks/scanner-DmfoB7iK.js.map +1 -0
  32. package/dist/_chunks/schema-bridge-eL5vQDSA.js +86 -0
  33. package/dist/_chunks/schema-bridge-eL5vQDSA.js.map +1 -0
  34. package/dist/_chunks/segment-classify-CnfLLvir.js +137 -0
  35. package/dist/_chunks/segment-classify-CnfLLvir.js.map +1 -0
  36. package/dist/_chunks/segment-context-Bg0pFbLT.js +34 -0
  37. package/dist/_chunks/segment-context-Bg0pFbLT.js.map +1 -0
  38. package/dist/_chunks/{ssr-data-MjmprTmO.js → ssr-data-BO5OvEvg.js} +1 -1
  39. package/dist/_chunks/ssr-data-BO5OvEvg.js.map +1 -0
  40. package/dist/_chunks/stale-reload-BCPRG0Cv.js +64 -0
  41. package/dist/_chunks/stale-reload-BCPRG0Cv.js.map +1 -0
  42. package/dist/_chunks/tracing-DvKLzCFa.js +329 -0
  43. package/dist/_chunks/tracing-DvKLzCFa.js.map +1 -0
  44. package/dist/_chunks/{use-query-states-D5KaffOK.js → use-query-states-D9SBlAfp.js} +7 -20
  45. package/dist/_chunks/use-query-states-D9SBlAfp.js.map +1 -0
  46. package/dist/_chunks/use-segment-params-CskiK-59.js +185 -0
  47. package/dist/_chunks/use-segment-params-CskiK-59.js.map +1 -0
  48. package/dist/_chunks/validation-Bm3Je-09.js +84 -0
  49. package/dist/_chunks/validation-Bm3Je-09.js.map +1 -0
  50. package/dist/_chunks/walkers-DgOXkTts.js +609 -0
  51. package/dist/_chunks/walkers-DgOXkTts.js.map +1 -0
  52. package/dist/_chunks/{format-DviM89f0.js → warnings-B30wpfaS.js} +6 -45
  53. package/dist/_chunks/warnings-B30wpfaS.js.map +1 -0
  54. package/dist/adapters/build-output-helper.d.ts +28 -0
  55. package/dist/adapters/build-output-helper.d.ts.map +1 -0
  56. package/dist/adapters/cloudflare-dev.d.ts +109 -0
  57. package/dist/adapters/cloudflare-dev.d.ts.map +1 -0
  58. package/dist/adapters/cloudflare-dev.js +73 -0
  59. package/dist/adapters/cloudflare-dev.js.map +1 -0
  60. package/dist/adapters/cloudflare-kv-cache.d.ts +64 -0
  61. package/dist/adapters/cloudflare-kv-cache.d.ts.map +1 -0
  62. package/dist/adapters/cloudflare-kv-cache.js +95 -0
  63. package/dist/adapters/cloudflare-kv-cache.js.map +1 -0
  64. package/dist/adapters/cloudflare.d.ts +148 -12
  65. package/dist/adapters/cloudflare.d.ts.map +1 -1
  66. package/dist/adapters/cloudflare.js +142 -38
  67. package/dist/adapters/cloudflare.js.map +1 -1
  68. package/dist/adapters/compress-module.d.ts.map +1 -1
  69. package/dist/adapters/nitro.d.ts +17 -1
  70. package/dist/adapters/nitro.d.ts.map +1 -1
  71. package/dist/adapters/nitro.js +143 -45
  72. package/dist/adapters/nitro.js.map +1 -1
  73. package/dist/adapters/shared.d.ts +16 -0
  74. package/dist/adapters/shared.d.ts.map +1 -0
  75. package/dist/cache/cache-api.d.ts +24 -0
  76. package/dist/cache/cache-api.d.ts.map +1 -0
  77. package/dist/cache/handler-store.d.ts +31 -0
  78. package/dist/cache/handler-store.d.ts.map +1 -0
  79. package/dist/cache/index.d.ts +23 -7
  80. package/dist/cache/index.d.ts.map +1 -1
  81. package/dist/cache/index.js +151 -81
  82. package/dist/cache/index.js.map +1 -1
  83. package/dist/cache/singleflight.d.ts +18 -1
  84. package/dist/cache/singleflight.d.ts.map +1 -1
  85. package/dist/cache/sizeof.d.ts +22 -0
  86. package/dist/cache/sizeof.d.ts.map +1 -0
  87. package/dist/cache/timber-cache.d.ts +1 -1
  88. package/dist/cache/timber-cache.d.ts.map +1 -1
  89. package/dist/cli-schema-sync.d.ts +37 -0
  90. package/dist/cli-schema-sync.d.ts.map +1 -0
  91. package/dist/cli.d.ts +14 -2
  92. package/dist/cli.d.ts.map +1 -1
  93. package/dist/cli.js +42 -6
  94. package/dist/cli.js.map +1 -1
  95. package/dist/client/browser-dev.d.ts +34 -1
  96. package/dist/client/browser-dev.d.ts.map +1 -1
  97. package/dist/client/browser-entry/action-dispatch.d.ts +17 -0
  98. package/dist/client/browser-entry/action-dispatch.d.ts.map +1 -0
  99. package/dist/client/browser-entry/hmr.d.ts +21 -0
  100. package/dist/client/browser-entry/hmr.d.ts.map +1 -0
  101. package/dist/client/browser-entry/hydrate.d.ts +46 -0
  102. package/dist/client/browser-entry/hydrate.d.ts.map +1 -0
  103. package/dist/client/browser-entry/index.d.ts +30 -0
  104. package/dist/client/browser-entry/index.d.ts.map +1 -0
  105. package/dist/client/browser-entry/post-hydration.d.ts +26 -0
  106. package/dist/client/browser-entry/post-hydration.d.ts.map +1 -0
  107. package/dist/client/browser-entry/router-init.d.ts +23 -0
  108. package/dist/client/browser-entry/router-init.d.ts.map +1 -0
  109. package/dist/client/browser-entry/rsc-stream.d.ts +24 -0
  110. package/dist/client/browser-entry/rsc-stream.d.ts.map +1 -0
  111. package/dist/client/browser-entry/scroll.d.ts +19 -0
  112. package/dist/client/browser-entry/scroll.d.ts.map +1 -0
  113. package/dist/client/error-boundary.d.ts +12 -5
  114. package/dist/client/error-boundary.d.ts.map +1 -1
  115. package/dist/client/error-boundary.js +29 -6
  116. package/dist/client/error-boundary.js.map +1 -1
  117. package/dist/client/error-reconstituter.d.ts +54 -0
  118. package/dist/client/error-reconstituter.d.ts.map +1 -0
  119. package/dist/client/form.d.ts +16 -27
  120. package/dist/client/form.d.ts.map +1 -1
  121. package/dist/client/history.d.ts +19 -4
  122. package/dist/client/history.d.ts.map +1 -1
  123. package/dist/client/index.d.ts +9 -24
  124. package/dist/client/index.d.ts.map +1 -1
  125. package/dist/client/index.js +172 -1100
  126. package/dist/client/index.js.map +1 -1
  127. package/dist/client/internal.d.ts +19 -0
  128. package/dist/client/internal.d.ts.map +1 -0
  129. package/dist/client/internal.js +964 -0
  130. package/dist/client/internal.js.map +1 -0
  131. package/dist/client/link-pending-store.d.ts +63 -0
  132. package/dist/client/link-pending-store.d.ts.map +1 -0
  133. package/dist/client/link.d.ts +62 -55
  134. package/dist/client/link.d.ts.map +1 -1
  135. package/dist/client/nav-link-store.d.ts +36 -0
  136. package/dist/client/nav-link-store.d.ts.map +1 -0
  137. package/dist/client/navigation-api-types.d.ts +90 -0
  138. package/dist/client/navigation-api-types.d.ts.map +1 -0
  139. package/dist/client/navigation-api.d.ts +115 -0
  140. package/dist/client/navigation-api.d.ts.map +1 -0
  141. package/dist/client/navigation-context.d.ts +13 -2
  142. package/dist/client/navigation-context.d.ts.map +1 -1
  143. package/dist/client/{transition-root.d.ts → navigation-root.d.ts} +42 -8
  144. package/dist/client/navigation-root.d.ts.map +1 -0
  145. package/dist/client/nuqs-adapter.d.ts.map +1 -1
  146. package/dist/client/router-ref.d.ts +1 -1
  147. package/dist/client/router.d.ts +70 -4
  148. package/dist/client/router.d.ts.map +1 -1
  149. package/dist/client/rsc-fetch.d.ts +38 -3
  150. package/dist/client/rsc-fetch.d.ts.map +1 -1
  151. package/dist/client/segment-cache.d.ts +1 -1
  152. package/dist/client/segment-cache.d.ts.map +1 -1
  153. package/dist/client/segment-outlet.d.ts +63 -0
  154. package/dist/client/segment-outlet.d.ts.map +1 -0
  155. package/dist/client/ssr-data.d.ts +13 -4
  156. package/dist/client/ssr-data.d.ts.map +1 -1
  157. package/dist/client/stale-reload.d.ts +15 -0
  158. package/dist/client/stale-reload.d.ts.map +1 -1
  159. package/dist/client/state.d.ts +1 -1
  160. package/dist/client/top-loader.d.ts +5 -5
  161. package/dist/client/top-loader.d.ts.map +1 -1
  162. package/dist/client/use-cookie.d.ts +12 -0
  163. package/dist/client/use-cookie.d.ts.map +1 -1
  164. package/dist/client/use-link-status.d.ts +5 -5
  165. package/dist/client/use-link-status.d.ts.map +1 -1
  166. package/dist/client/{use-navigation-pending.d.ts → use-pending-navigation.d.ts} +4 -4
  167. package/dist/client/use-pending-navigation.d.ts.map +1 -0
  168. package/dist/client/use-query-states.d.ts +1 -1
  169. package/dist/client/use-query-states.d.ts.map +1 -1
  170. package/dist/client/use-router.d.ts +1 -1
  171. package/dist/client/{use-params.d.ts → use-segment-params.d.ts} +8 -6
  172. package/dist/client/use-segment-params.d.ts.map +1 -0
  173. package/dist/codec.d.ts +51 -0
  174. package/dist/codec.d.ts.map +1 -0
  175. package/dist/codec.js +46 -0
  176. package/dist/codec.js.map +1 -0
  177. package/dist/config-types.d.ts +294 -0
  178. package/dist/config-types.d.ts.map +1 -0
  179. package/dist/config-validation.d.ts +51 -0
  180. package/dist/config-validation.d.ts.map +1 -0
  181. package/dist/content/index.d.ts +1 -10
  182. package/dist/content/index.d.ts.map +1 -1
  183. package/dist/content/index.js +0 -2
  184. package/dist/cookies/define-cookie.d.ts +58 -25
  185. package/dist/cookies/define-cookie.d.ts.map +1 -1
  186. package/dist/cookies/index.d.ts +2 -1
  187. package/dist/cookies/index.d.ts.map +1 -1
  188. package/dist/cookies/index.js +251 -36
  189. package/dist/cookies/index.js.map +1 -1
  190. package/dist/cookies/json-cookie.d.ts +64 -0
  191. package/dist/cookies/json-cookie.d.ts.map +1 -0
  192. package/dist/cookies/validation.d.ts +46 -0
  193. package/dist/cookies/validation.d.ts.map +1 -0
  194. package/dist/dev-tools/404-page.d.ts +46 -0
  195. package/dist/dev-tools/404-page.d.ts.map +1 -0
  196. package/dist/dev-tools/browser-logs.d.ts +84 -0
  197. package/dist/dev-tools/browser-logs.d.ts.map +1 -0
  198. package/dist/dev-tools/error-page.d.ts +58 -0
  199. package/dist/dev-tools/error-page.d.ts.map +1 -0
  200. package/dist/dev-tools/holding-server.d.ts +54 -0
  201. package/dist/dev-tools/holding-server.d.ts.map +1 -0
  202. package/dist/dev-tools/index.d.ts +31 -0
  203. package/dist/dev-tools/index.d.ts.map +1 -0
  204. package/dist/{server/dev-span-processor.d.ts → dev-tools/instrumentation.d.ts} +26 -6
  205. package/dist/dev-tools/instrumentation.d.ts.map +1 -0
  206. package/dist/{server/dev-logger.d.ts → dev-tools/logger.d.ts} +1 -1
  207. package/dist/dev-tools/logger.d.ts.map +1 -0
  208. package/dist/{plugins/dev-logs.d.ts → dev-tools/logs.d.ts} +2 -2
  209. package/dist/dev-tools/logs.d.ts.map +1 -0
  210. package/dist/dev-tools/overlay.d.ts +91 -0
  211. package/dist/dev-tools/overlay.d.ts.map +1 -0
  212. package/dist/dev-tools/stack-classifier.d.ts +34 -0
  213. package/dist/dev-tools/stack-classifier.d.ts.map +1 -0
  214. package/dist/dev-tools/terminal.d.ts +28 -0
  215. package/dist/dev-tools/terminal.d.ts.map +1 -0
  216. package/dist/{server/dev-warnings.d.ts → dev-tools/warnings.d.ts} +2 -22
  217. package/dist/dev-tools/warnings.d.ts.map +1 -0
  218. package/dist/fonts/ast.d.ts +98 -6
  219. package/dist/fonts/ast.d.ts.map +1 -1
  220. package/dist/fonts/bundle.d.ts +48 -0
  221. package/dist/fonts/bundle.d.ts.map +1 -0
  222. package/dist/fonts/dev-middleware.d.ts +22 -0
  223. package/dist/fonts/dev-middleware.d.ts.map +1 -0
  224. package/dist/fonts/local.d.ts +1 -1
  225. package/dist/fonts/pipeline.d.ts +167 -0
  226. package/dist/fonts/pipeline.d.ts.map +1 -0
  227. package/dist/fonts/transform.d.ts +78 -0
  228. package/dist/fonts/transform.d.ts.map +1 -0
  229. package/dist/fonts/types.d.ts +45 -1
  230. package/dist/fonts/types.d.ts.map +1 -1
  231. package/dist/fonts/virtual-modules.d.ts +94 -0
  232. package/dist/fonts/virtual-modules.d.ts.map +1 -0
  233. package/dist/index.d.ts +46 -190
  234. package/dist/index.d.ts.map +1 -1
  235. package/dist/index.js +4799 -12730
  236. package/dist/index.js.map +1 -1
  237. package/dist/params/codec-registry.d.ts +26 -0
  238. package/dist/params/codec-registry.d.ts.map +1 -0
  239. package/dist/params/define-schema.d.ts +53 -0
  240. package/dist/params/define-schema.d.ts.map +1 -0
  241. package/dist/params/index.d.ts +5 -0
  242. package/dist/params/index.d.ts.map +1 -0
  243. package/dist/params/index.js +34 -0
  244. package/dist/params/index.js.map +1 -0
  245. package/dist/params/resolve-schema.d.ts +34 -0
  246. package/dist/params/resolve-schema.d.ts.map +1 -0
  247. package/dist/plugin-context.d.ts +107 -0
  248. package/dist/plugin-context.d.ts.map +1 -0
  249. package/dist/plugins/adapter-build.d.ts +1 -1
  250. package/dist/plugins/adapter-build.d.ts.map +1 -1
  251. package/dist/plugins/build-manifest.d.ts +2 -2
  252. package/dist/plugins/build-manifest.d.ts.map +1 -1
  253. package/dist/plugins/build-report.d.ts +9 -7
  254. package/dist/plugins/build-report.d.ts.map +1 -1
  255. package/dist/plugins/client-chunks.d.ts +32 -0
  256. package/dist/plugins/client-chunks.d.ts.map +1 -0
  257. package/dist/plugins/content.d.ts +1 -1
  258. package/dist/plugins/content.d.ts.map +1 -1
  259. package/dist/plugins/dev-server.d.ts +1 -1
  260. package/dist/plugins/dev-server.d.ts.map +1 -1
  261. package/dist/plugins/entries.d.ts +1 -1
  262. package/dist/plugins/entries.d.ts.map +1 -1
  263. package/dist/plugins/fonts.d.ts +17 -73
  264. package/dist/plugins/fonts.d.ts.map +1 -1
  265. package/dist/plugins/mdx.d.ts +1 -1
  266. package/dist/plugins/mdx.d.ts.map +1 -1
  267. package/dist/plugins/routing.d.ts +1 -1
  268. package/dist/plugins/routing.d.ts.map +1 -1
  269. package/dist/plugins/server-bundle.d.ts.map +1 -1
  270. package/dist/plugins/shims.d.ts +6 -5
  271. package/dist/plugins/shims.d.ts.map +1 -1
  272. package/dist/plugins/static-build.d.ts +5 -26
  273. package/dist/plugins/static-build.d.ts.map +1 -1
  274. package/dist/routing/codegen-shared.d.ts +63 -0
  275. package/dist/routing/codegen-shared.d.ts.map +1 -0
  276. package/dist/routing/codegen-types.d.ts +60 -0
  277. package/dist/routing/codegen-types.d.ts.map +1 -0
  278. package/dist/routing/codegen.d.ts +7 -2
  279. package/dist/routing/codegen.d.ts.map +1 -1
  280. package/dist/routing/convention-lint.d.ts +41 -0
  281. package/dist/routing/convention-lint.d.ts.map +1 -0
  282. package/dist/routing/index.d.ts +5 -1
  283. package/dist/routing/index.d.ts.map +1 -1
  284. package/dist/routing/index.js +4 -2
  285. package/dist/routing/link-codegen.d.ts +90 -0
  286. package/dist/routing/link-codegen.d.ts.map +1 -0
  287. package/dist/routing/scanner.d.ts +1 -10
  288. package/dist/routing/scanner.d.ts.map +1 -1
  289. package/dist/routing/segment-classify.d.ts +75 -0
  290. package/dist/routing/segment-classify.d.ts.map +1 -0
  291. package/dist/routing/segment-codegen.d.ts +38 -0
  292. package/dist/routing/segment-codegen.d.ts.map +1 -0
  293. package/dist/routing/types.d.ts +77 -25
  294. package/dist/routing/types.d.ts.map +1 -1
  295. package/dist/routing/walkers.d.ts +51 -0
  296. package/dist/routing/walkers.d.ts.map +1 -0
  297. package/dist/rsc-runtime/rsc.d.ts +1 -1
  298. package/dist/rsc-runtime/rsc.d.ts.map +1 -1
  299. package/dist/rsc-runtime/ssr.d.ts +12 -0
  300. package/dist/rsc-runtime/ssr.d.ts.map +1 -1
  301. package/dist/schema-bridge.d.ts +76 -0
  302. package/dist/schema-bridge.d.ts.map +1 -0
  303. package/dist/search-params/define.d.ts +157 -0
  304. package/dist/search-params/define.d.ts.map +1 -0
  305. package/dist/search-params/index.d.ts +4 -7
  306. package/dist/search-params/index.d.ts.map +1 -1
  307. package/dist/search-params/index.js +34 -441
  308. package/dist/search-params/index.js.map +1 -1
  309. package/dist/search-params/registry.d.ts +2 -2
  310. package/dist/search-params/registry.d.ts.map +1 -1
  311. package/dist/search-params/wrappers.d.ts +53 -0
  312. package/dist/search-params/wrappers.d.ts.map +1 -0
  313. package/dist/segment-params/define.d.ts +95 -0
  314. package/dist/segment-params/define.d.ts.map +1 -0
  315. package/dist/segment-params/index.d.ts +3 -0
  316. package/dist/segment-params/index.d.ts.map +1 -0
  317. package/dist/segment-params/index.js +2 -0
  318. package/dist/server/access-gate.d.ts +8 -3
  319. package/dist/server/access-gate.d.ts.map +1 -1
  320. package/dist/server/action-client.d.ts +41 -6
  321. package/dist/server/action-client.d.ts.map +1 -1
  322. package/dist/server/action-encryption.d.ts +76 -0
  323. package/dist/server/action-encryption.d.ts.map +1 -0
  324. package/dist/server/action-handler.d.ts +35 -1
  325. package/dist/server/action-handler.d.ts.map +1 -1
  326. package/dist/server/actions.d.ts +3 -6
  327. package/dist/server/actions.d.ts.map +1 -1
  328. package/dist/server/als-registry.d.ts +53 -5
  329. package/dist/server/als-registry.d.ts.map +1 -1
  330. package/dist/server/asset-headers.d.ts +1 -15
  331. package/dist/server/asset-headers.d.ts.map +1 -1
  332. package/dist/server/build-manifest.d.ts +2 -2
  333. package/dist/server/build-manifest.d.ts.map +1 -1
  334. package/dist/server/coalesce-tick.d.ts +40 -0
  335. package/dist/server/coalesce-tick.d.ts.map +1 -0
  336. package/dist/server/cookie-context.d.ts +170 -0
  337. package/dist/server/cookie-context.d.ts.map +1 -0
  338. package/dist/server/cookie-parsing.d.ts +51 -0
  339. package/dist/server/cookie-parsing.d.ts.map +1 -0
  340. package/dist/server/debug.d.ts +1 -1
  341. package/dist/server/default-logger.d.ts +22 -0
  342. package/dist/server/default-logger.d.ts.map +1 -0
  343. package/dist/server/deny-boundary.d.ts +90 -0
  344. package/dist/server/deny-boundary.d.ts.map +1 -0
  345. package/dist/server/deny-renderer.d.ts.map +1 -1
  346. package/dist/server/dev-source-map.d.ts +22 -0
  347. package/dist/server/dev-source-map.d.ts.map +1 -0
  348. package/dist/server/early-hints-sender.d.ts.map +1 -1
  349. package/dist/server/early-hints.d.ts +13 -5
  350. package/dist/server/early-hints.d.ts.map +1 -1
  351. package/dist/server/error-boundary-wrapper.d.ts +7 -1
  352. package/dist/server/error-boundary-wrapper.d.ts.map +1 -1
  353. package/dist/server/fallback-error.d.ts +12 -7
  354. package/dist/server/fallback-error.d.ts.map +1 -1
  355. package/dist/server/flight-injection-state.d.ts +66 -0
  356. package/dist/server/flight-injection-state.d.ts.map +1 -0
  357. package/dist/server/flight-scripts.d.ts +42 -0
  358. package/dist/server/flight-scripts.d.ts.map +1 -0
  359. package/dist/server/flush.d.ts.map +1 -1
  360. package/dist/server/form-data.d.ts +29 -0
  361. package/dist/server/form-data.d.ts.map +1 -1
  362. package/dist/server/html-injector-core.d.ts +213 -0
  363. package/dist/server/html-injector-core.d.ts.map +1 -0
  364. package/dist/server/html-injectors.d.ts +81 -41
  365. package/dist/server/html-injectors.d.ts.map +1 -1
  366. package/dist/server/index.d.ts +10 -46
  367. package/dist/server/index.d.ts.map +1 -1
  368. package/dist/server/index.js +155 -2905
  369. package/dist/server/index.js.map +1 -1
  370. package/dist/server/internal.d.ts +48 -0
  371. package/dist/server/internal.d.ts.map +1 -0
  372. package/dist/server/internal.js +2947 -0
  373. package/dist/server/internal.js.map +1 -0
  374. package/dist/server/logger.d.ts +39 -7
  375. package/dist/server/logger.d.ts.map +1 -1
  376. package/dist/server/middleware-runner.d.ts +36 -4
  377. package/dist/server/middleware-runner.d.ts.map +1 -1
  378. package/dist/server/node-stream-transforms.d.ts +112 -0
  379. package/dist/server/node-stream-transforms.d.ts.map +1 -0
  380. package/dist/server/param-coercion.d.ts +54 -0
  381. package/dist/server/param-coercion.d.ts.map +1 -0
  382. package/dist/server/pipeline-helpers.d.ts +95 -0
  383. package/dist/server/pipeline-helpers.d.ts.map +1 -0
  384. package/dist/server/pipeline-interception.d.ts +1 -1
  385. package/dist/server/pipeline-interception.d.ts.map +1 -1
  386. package/dist/server/pipeline-metadata.d.ts +6 -0
  387. package/dist/server/pipeline-metadata.d.ts.map +1 -1
  388. package/dist/server/pipeline-outcome.d.ts +49 -0
  389. package/dist/server/pipeline-outcome.d.ts.map +1 -0
  390. package/dist/server/pipeline-phases.d.ts +52 -0
  391. package/dist/server/pipeline-phases.d.ts.map +1 -0
  392. package/dist/server/pipeline.d.ts +118 -23
  393. package/dist/server/pipeline.d.ts.map +1 -1
  394. package/dist/server/port-resolution.d.ts +117 -0
  395. package/dist/server/port-resolution.d.ts.map +1 -0
  396. package/dist/server/primitives.d.ts +69 -18
  397. package/dist/server/primitives.d.ts.map +1 -1
  398. package/dist/server/render-timeout.d.ts +51 -0
  399. package/dist/server/render-timeout.d.ts.map +1 -0
  400. package/dist/server/request-context.d.ts +62 -107
  401. package/dist/server/request-context.d.ts.map +1 -1
  402. package/dist/server/route-element-builder.d.ts +27 -1
  403. package/dist/server/route-element-builder.d.ts.map +1 -1
  404. package/dist/server/route-handler.d.ts.map +1 -1
  405. package/dist/server/route-matcher.d.ts +21 -34
  406. package/dist/server/route-matcher.d.ts.map +1 -1
  407. package/dist/server/rsc-entry/action-middleware-runner.d.ts +66 -0
  408. package/dist/server/rsc-entry/action-middleware-runner.d.ts.map +1 -0
  409. package/dist/server/rsc-entry/api-handler.d.ts +2 -2
  410. package/dist/server/rsc-entry/api-handler.d.ts.map +1 -1
  411. package/dist/server/rsc-entry/error-renderer.d.ts +26 -13
  412. package/dist/server/rsc-entry/error-renderer.d.ts.map +1 -1
  413. package/dist/server/rsc-entry/helpers.d.ts +49 -6
  414. package/dist/server/rsc-entry/helpers.d.ts.map +1 -1
  415. package/dist/server/rsc-entry/index.d.ts +19 -8
  416. package/dist/server/rsc-entry/index.d.ts.map +1 -1
  417. package/dist/server/rsc-entry/render-route.d.ts +50 -0
  418. package/dist/server/rsc-entry/render-route.d.ts.map +1 -0
  419. package/dist/server/rsc-entry/rsc-payload.d.ts +3 -3
  420. package/dist/server/rsc-entry/rsc-payload.d.ts.map +1 -1
  421. package/dist/server/rsc-entry/rsc-stream.d.ts +17 -1
  422. package/dist/server/rsc-entry/rsc-stream.d.ts.map +1 -1
  423. package/dist/server/rsc-entry/ssr-bridge.d.ts +1 -1
  424. package/dist/server/rsc-entry/ssr-bridge.d.ts.map +1 -1
  425. package/dist/server/rsc-entry/ssr-renderer.d.ts +19 -4
  426. package/dist/server/rsc-entry/ssr-renderer.d.ts.map +1 -1
  427. package/dist/server/rsc-entry/wrap-action-dispatch.d.ts +119 -0
  428. package/dist/server/rsc-entry/wrap-action-dispatch.d.ts.map +1 -0
  429. package/dist/server/safe-load.d.ts +46 -0
  430. package/dist/server/safe-load.d.ts.map +1 -0
  431. package/dist/server/sensitive-fields.d.ts +74 -0
  432. package/dist/server/sensitive-fields.d.ts.map +1 -0
  433. package/dist/server/sitemap-generator.d.ts +129 -0
  434. package/dist/server/sitemap-generator.d.ts.map +1 -0
  435. package/dist/server/sitemap-handler.d.ts +22 -0
  436. package/dist/server/sitemap-handler.d.ts.map +1 -0
  437. package/dist/server/slot-resolver.d.ts +1 -1
  438. package/dist/server/slot-resolver.d.ts.map +1 -1
  439. package/dist/server/ssr-entry.d.ts +30 -0
  440. package/dist/server/ssr-entry.d.ts.map +1 -1
  441. package/dist/server/ssr-render.d.ts +39 -21
  442. package/dist/server/ssr-render.d.ts.map +1 -1
  443. package/dist/server/ssr-wrappers.d.ts +50 -0
  444. package/dist/server/ssr-wrappers.d.ts.map +1 -0
  445. package/dist/server/state-tree-diff.d.ts.map +1 -1
  446. package/dist/server/status-code-resolver.d.ts +16 -11
  447. package/dist/server/status-code-resolver.d.ts.map +1 -1
  448. package/dist/server/stream-utils.d.ts +36 -0
  449. package/dist/server/stream-utils.d.ts.map +1 -0
  450. package/dist/server/tracing.d.ts +5 -5
  451. package/dist/server/tracing.d.ts.map +1 -1
  452. package/dist/server/tree-builder.d.ts +62 -30
  453. package/dist/server/tree-builder.d.ts.map +1 -1
  454. package/dist/server/tree-match.d.ts +41 -0
  455. package/dist/server/tree-match.d.ts.map +1 -0
  456. package/dist/server/types.d.ts +49 -4
  457. package/dist/server/types.d.ts.map +1 -1
  458. package/dist/server/utils/escape-html.d.ts +14 -0
  459. package/dist/server/utils/escape-html.d.ts.map +1 -0
  460. package/dist/server/version-skew.d.ts +61 -0
  461. package/dist/server/version-skew.d.ts.map +1 -0
  462. package/dist/shared/merge-search-params.d.ts +22 -0
  463. package/dist/shared/merge-search-params.d.ts.map +1 -0
  464. package/dist/shims/font-google.d.ts +1 -1
  465. package/dist/shims/font-google.d.ts.map +1 -1
  466. package/dist/shims/font-google.js +42 -0
  467. package/dist/shims/font-google.js.map +1 -0
  468. package/dist/shims/font-local.d.ts +26 -0
  469. package/dist/shims/font-local.d.ts.map +1 -0
  470. package/dist/shims/font-local.js +20 -0
  471. package/dist/shims/font-local.js.map +1 -0
  472. package/dist/shims/headers.d.ts +2 -1
  473. package/dist/shims/headers.d.ts.map +1 -1
  474. package/dist/shims/navigation-client.d.ts +3 -1
  475. package/dist/shims/navigation-client.d.ts.map +1 -1
  476. package/dist/shims/navigation.d.ts +11 -5
  477. package/dist/shims/navigation.d.ts.map +1 -1
  478. package/dist/utils/state-machine.d.ts +80 -0
  479. package/dist/utils/state-machine.d.ts.map +1 -0
  480. package/package.json +56 -16
  481. package/src/adapters/build-output-helper.ts +77 -0
  482. package/src/adapters/cloudflare-dev.ts +177 -0
  483. package/src/adapters/cloudflare-kv-cache.ts +142 -0
  484. package/src/adapters/cloudflare.ts +350 -76
  485. package/src/adapters/compress-module.ts +24 -4
  486. package/src/adapters/nitro.ts +142 -59
  487. package/src/adapters/shared.ts +40 -0
  488. package/src/adapters/wrangler.d.ts +7 -0
  489. package/src/cache/cache-api.ts +38 -0
  490. package/src/cache/handler-store.ts +68 -0
  491. package/src/cache/index.ts +81 -18
  492. package/src/cache/singleflight.ts +62 -4
  493. package/src/cache/sizeof.ts +33 -0
  494. package/src/cache/timber-cache.ts +25 -20
  495. package/src/cli-schema-sync.ts +207 -0
  496. package/src/cli.ts +65 -8
  497. package/src/client/browser-dev.ts +153 -1
  498. package/src/client/browser-entry/action-dispatch.ts +126 -0
  499. package/src/client/browser-entry/hmr.ts +81 -0
  500. package/src/client/browser-entry/hydrate.ts +145 -0
  501. package/src/client/browser-entry/index.ts +149 -0
  502. package/src/client/browser-entry/post-hydration.ts +119 -0
  503. package/src/client/browser-entry/router-init.ts +193 -0
  504. package/src/client/browser-entry/rsc-stream.ts +157 -0
  505. package/src/client/browser-entry/scroll.ts +27 -0
  506. package/src/client/error-boundary.tsx +99 -22
  507. package/src/client/error-reconstituter.tsx +65 -0
  508. package/src/client/form.tsx +31 -32
  509. package/src/client/history.ts +26 -4
  510. package/src/client/index.ts +69 -44
  511. package/src/client/internal.ts +58 -0
  512. package/src/client/link-pending-store.ts +111 -0
  513. package/src/client/link.tsx +366 -113
  514. package/src/client/nav-link-store.ts +47 -0
  515. package/src/client/navigation-api-types.ts +112 -0
  516. package/src/client/navigation-api.ts +332 -0
  517. package/src/client/navigation-context.ts +31 -6
  518. package/src/client/navigation-root.tsx +342 -0
  519. package/src/client/nuqs-adapter.tsx +16 -3
  520. package/src/client/router-ref.ts +1 -1
  521. package/src/client/router.ts +300 -73
  522. package/src/client/rsc-fetch.ts +112 -8
  523. package/src/client/segment-cache.ts +1 -1
  524. package/src/client/segment-outlet.tsx +86 -0
  525. package/src/client/ssr-data.ts +13 -5
  526. package/src/client/stale-reload.ts +72 -3
  527. package/src/client/state.ts +2 -2
  528. package/src/client/top-loader.tsx +18 -6
  529. package/src/client/use-cookie.ts +31 -2
  530. package/src/client/use-link-status.ts +7 -7
  531. package/src/client/{use-navigation-pending.ts → use-pending-navigation.ts} +6 -6
  532. package/src/client/use-query-states.ts +9 -3
  533. package/src/client/use-router.ts +1 -1
  534. package/src/client/{use-params.ts → use-segment-params.ts} +8 -6
  535. package/src/codec.ts +97 -0
  536. package/src/config-types.ts +292 -0
  537. package/src/config-validation.ts +303 -0
  538. package/src/content/index.ts +5 -13
  539. package/src/cookies/define-cookie.ts +233 -53
  540. package/src/cookies/index.ts +12 -1
  541. package/src/cookies/json-cookie.ts +105 -0
  542. package/src/cookies/validation.ts +134 -0
  543. package/src/dev-tools/404-page.ts +387 -0
  544. package/src/dev-tools/browser-logs.ts +291 -0
  545. package/src/dev-tools/error-page.ts +506 -0
  546. package/src/dev-tools/holding-server.ts +187 -0
  547. package/src/dev-tools/index.ts +90 -0
  548. package/src/dev-tools/instrumentation.ts +176 -0
  549. package/src/{plugins/dev-logs.ts → dev-tools/logs.ts} +9 -5
  550. package/src/dev-tools/overlay.ts +469 -0
  551. package/src/dev-tools/stack-classifier.ts +75 -0
  552. package/src/dev-tools/terminal.ts +183 -0
  553. package/src/{server/dev-warnings.ts → dev-tools/warnings.ts} +5 -50
  554. package/src/fonts/ast.ts +525 -16
  555. package/src/fonts/bundle.ts +142 -0
  556. package/src/fonts/dev-middleware.ts +74 -0
  557. package/src/fonts/local.ts +1 -1
  558. package/src/fonts/pipeline.ts +314 -0
  559. package/src/fonts/transform.ts +317 -0
  560. package/src/fonts/types.ts +50 -1
  561. package/src/fonts/virtual-modules.ts +233 -0
  562. package/src/index.ts +409 -357
  563. package/src/params/codec-registry.ts +34 -0
  564. package/src/params/define-schema.ts +73 -0
  565. package/src/params/index.ts +11 -0
  566. package/src/params/resolve-schema.ts +88 -0
  567. package/src/plugin-context.ts +240 -0
  568. package/src/plugins/adapter-build.ts +12 -4
  569. package/src/plugins/build-manifest.ts +13 -2
  570. package/src/plugins/build-report.ts +16 -25
  571. package/src/plugins/client-chunks.ts +65 -0
  572. package/src/plugins/content.ts +1 -1
  573. package/src/plugins/dev-server.ts +175 -35
  574. package/src/plugins/entries.ts +111 -9
  575. package/src/plugins/fonts.ts +157 -654
  576. package/src/plugins/mdx.ts +47 -10
  577. package/src/plugins/routing.ts +374 -45
  578. package/src/plugins/server-bundle.ts +32 -1
  579. package/src/plugins/shims.ts +136 -35
  580. package/src/plugins/static-build.ts +15 -89
  581. package/src/routing/codegen-shared.ts +109 -0
  582. package/src/routing/codegen-types.ts +61 -0
  583. package/src/routing/codegen.ts +269 -179
  584. package/src/routing/convention-lint.ts +357 -0
  585. package/src/routing/index.ts +5 -1
  586. package/src/routing/interception.ts +1 -1
  587. package/src/routing/link-codegen.ts +308 -0
  588. package/src/routing/scanner.ts +107 -110
  589. package/src/routing/segment-classify.ts +188 -0
  590. package/src/routing/segment-codegen.ts +98 -0
  591. package/src/routing/types.ts +78 -25
  592. package/src/routing/walkers.ts +90 -0
  593. package/src/rsc-runtime/rsc.ts +2 -0
  594. package/src/rsc-runtime/ssr.ts +50 -0
  595. package/src/rsc-runtime/vendor-types.d.ts +7 -0
  596. package/src/{search-params/codecs.ts → schema-bridge.ts} +57 -20
  597. package/src/search-params/define.ts +538 -0
  598. package/src/search-params/index.ts +14 -20
  599. package/src/search-params/registry.ts +2 -2
  600. package/src/search-params/wrappers.ts +92 -0
  601. package/src/segment-params/define.ts +336 -0
  602. package/src/segment-params/index.ts +9 -0
  603. package/src/server/access-gate.tsx +76 -34
  604. package/src/server/action-client.ts +88 -15
  605. package/src/server/action-encryption.ts +144 -0
  606. package/src/server/action-handler.ts +112 -14
  607. package/src/server/actions.ts +10 -9
  608. package/src/server/als-registry.ts +55 -7
  609. package/src/server/asset-headers.ts +8 -34
  610. package/src/server/build-manifest.ts +10 -4
  611. package/src/server/coalesce-tick.ts +75 -0
  612. package/src/server/compress.ts +25 -7
  613. package/src/server/cookie-context.ts +468 -0
  614. package/src/server/cookie-parsing.ts +135 -0
  615. package/src/server/debug.ts +1 -1
  616. package/src/server/default-logger.ts +99 -0
  617. package/src/server/deny-boundary.ts +218 -0
  618. package/src/server/deny-renderer.ts +31 -50
  619. package/src/server/dev-source-map.ts +31 -0
  620. package/src/server/early-hints-sender.ts +3 -2
  621. package/src/server/early-hints.ts +36 -15
  622. package/src/server/error-boundary-wrapper.ts +74 -22
  623. package/src/server/fallback-error.ts +74 -102
  624. package/src/server/flight-injection-state.ts +113 -0
  625. package/src/server/flight-scripts.ts +62 -0
  626. package/src/server/flush.ts +2 -1
  627. package/src/server/form-data.ts +76 -0
  628. package/src/server/html-injector-core.ts +417 -0
  629. package/src/server/html-injectors.ts +235 -223
  630. package/src/server/index.ts +29 -183
  631. package/src/server/internal.ts +176 -0
  632. package/src/server/logger.ts +67 -36
  633. package/src/server/middleware-runner.ts +75 -4
  634. package/src/server/node-stream-transforms.ts +361 -0
  635. package/src/server/param-coercion.ts +206 -0
  636. package/src/server/pipeline-helpers.ts +204 -0
  637. package/src/server/pipeline-interception.ts +17 -16
  638. package/src/server/pipeline-metadata.ts +13 -0
  639. package/src/server/pipeline-outcome.ts +176 -0
  640. package/src/server/pipeline-phases.ts +460 -0
  641. package/src/server/pipeline.ts +154 -394
  642. package/src/server/port-resolution.ts +215 -0
  643. package/src/server/primitives.ts +111 -28
  644. package/src/server/render-timeout.ts +108 -0
  645. package/src/server/request-context.ts +168 -333
  646. package/src/server/route-element-builder.ts +309 -195
  647. package/src/server/route-handler.ts +24 -4
  648. package/src/server/route-matcher.ts +50 -231
  649. package/src/server/rsc-entry/action-middleware-runner.ts +167 -0
  650. package/src/server/rsc-entry/api-handler.ts +16 -17
  651. package/src/server/rsc-entry/error-renderer.ts +305 -89
  652. package/src/server/rsc-entry/helpers.ts +137 -12
  653. package/src/server/rsc-entry/index.ts +316 -352
  654. package/src/server/rsc-entry/render-route.ts +307 -0
  655. package/src/server/rsc-entry/rsc-payload.ts +65 -18
  656. package/src/server/rsc-entry/rsc-stream.ts +85 -13
  657. package/src/server/rsc-entry/ssr-bridge.ts +14 -5
  658. package/src/server/rsc-entry/ssr-renderer.ts +187 -38
  659. package/src/server/rsc-entry/wrap-action-dispatch.ts +449 -0
  660. package/src/server/safe-load.ts +60 -0
  661. package/src/server/sensitive-fields.ts +230 -0
  662. package/src/server/sitemap-generator.ts +338 -0
  663. package/src/server/sitemap-handler.ts +126 -0
  664. package/src/server/slot-resolver.ts +228 -246
  665. package/src/server/ssr-entry.ts +229 -32
  666. package/src/server/ssr-render.ts +289 -67
  667. package/src/server/ssr-wrappers.tsx +139 -0
  668. package/src/server/state-tree-diff.ts +4 -1
  669. package/src/server/status-code-resolver.ts +112 -128
  670. package/src/server/stream-utils.ts +213 -0
  671. package/src/server/tracing.ts +21 -10
  672. package/src/server/tree-builder.ts +202 -90
  673. package/src/server/tree-match.ts +198 -0
  674. package/src/server/types.ts +55 -6
  675. package/src/server/utils/escape-html.ts +20 -0
  676. package/src/server/version-skew.ts +104 -0
  677. package/src/shared/merge-search-params.ts +55 -0
  678. package/src/shims/font-google.ts +1 -1
  679. package/src/shims/font-local.ts +34 -0
  680. package/src/shims/headers.ts +5 -1
  681. package/src/shims/navigation-client.ts +4 -3
  682. package/src/shims/navigation.ts +14 -7
  683. package/src/utils/state-machine.ts +111 -0
  684. package/dist/_chunks/als-registry-B7DbZ2hS.js +0 -41
  685. package/dist/_chunks/als-registry-B7DbZ2hS.js.map +0 -1
  686. package/dist/_chunks/debug-gwlJkDuf.js +0 -108
  687. package/dist/_chunks/debug-gwlJkDuf.js.map +0 -1
  688. package/dist/_chunks/format-DviM89f0.js.map +0 -1
  689. package/dist/_chunks/interception-BOoWmLUA.js +0 -676
  690. package/dist/_chunks/interception-BOoWmLUA.js.map +0 -1
  691. package/dist/_chunks/request-context-DIkVh_jG.js +0 -330
  692. package/dist/_chunks/request-context-DIkVh_jG.js.map +0 -1
  693. package/dist/_chunks/ssr-data-MjmprTmO.js.map +0 -1
  694. package/dist/_chunks/tracing-CemImE6h.js +0 -187
  695. package/dist/_chunks/tracing-CemImE6h.js.map +0 -1
  696. package/dist/_chunks/use-cookie-DX-l1_5E.js +0 -91
  697. package/dist/_chunks/use-cookie-DX-l1_5E.js.map +0 -1
  698. package/dist/_chunks/use-query-states-D5KaffOK.js.map +0 -1
  699. package/dist/cache/register-cached-function.d.ts +0 -17
  700. package/dist/cache/register-cached-function.d.ts.map +0 -1
  701. package/dist/client/browser-entry.d.ts +0 -21
  702. package/dist/client/browser-entry.d.ts.map +0 -1
  703. package/dist/client/link-status-provider.d.ts +0 -11
  704. package/dist/client/link-status-provider.d.ts.map +0 -1
  705. package/dist/client/transition-root.d.ts.map +0 -1
  706. package/dist/client/use-navigation-pending.d.ts.map +0 -1
  707. package/dist/client/use-params.d.ts.map +0 -1
  708. package/dist/plugins/cache-transform.d.ts +0 -36
  709. package/dist/plugins/cache-transform.d.ts.map +0 -1
  710. package/dist/plugins/dev-error-overlay.d.ts +0 -60
  711. package/dist/plugins/dev-error-overlay.d.ts.map +0 -1
  712. package/dist/plugins/dev-logs.d.ts.map +0 -1
  713. package/dist/plugins/dynamic-transform.d.ts +0 -72
  714. package/dist/plugins/dynamic-transform.d.ts.map +0 -1
  715. package/dist/plugins/server-action-exports.d.ts +0 -26
  716. package/dist/plugins/server-action-exports.d.ts.map +0 -1
  717. package/dist/routing/status-file-lint.d.ts +0 -33
  718. package/dist/routing/status-file-lint.d.ts.map +0 -1
  719. package/dist/search-params/analyze.d.ts +0 -54
  720. package/dist/search-params/analyze.d.ts.map +0 -1
  721. package/dist/search-params/builtin-codecs.d.ts +0 -105
  722. package/dist/search-params/builtin-codecs.d.ts.map +0 -1
  723. package/dist/search-params/codecs.d.ts +0 -53
  724. package/dist/search-params/codecs.d.ts.map +0 -1
  725. package/dist/search-params/create.d.ts +0 -106
  726. package/dist/search-params/create.d.ts.map +0 -1
  727. package/dist/server/dev-fetch-instrumentation.d.ts +0 -22
  728. package/dist/server/dev-fetch-instrumentation.d.ts.map +0 -1
  729. package/dist/server/dev-logger.d.ts.map +0 -1
  730. package/dist/server/dev-span-processor.d.ts.map +0 -1
  731. package/dist/server/dev-warnings.d.ts.map +0 -1
  732. package/dist/server/manifest-status-resolver.d.ts +0 -58
  733. package/dist/server/manifest-status-resolver.d.ts.map +0 -1
  734. package/dist/server/prerender.d.ts +0 -77
  735. package/dist/server/prerender.d.ts.map +0 -1
  736. package/dist/server/response-cache.d.ts +0 -54
  737. package/dist/server/response-cache.d.ts.map +0 -1
  738. package/dist/utils/directive-parser.d.ts +0 -70
  739. package/dist/utils/directive-parser.d.ts.map +0 -1
  740. package/src/cache/register-cached-function.ts +0 -103
  741. package/src/client/browser-entry.ts +0 -678
  742. package/src/client/link-status-provider.tsx +0 -30
  743. package/src/client/transition-root.tsx +0 -166
  744. package/src/plugins/cache-transform.ts +0 -199
  745. package/src/plugins/dev-error-overlay.ts +0 -230
  746. package/src/plugins/dynamic-transform.ts +0 -161
  747. package/src/plugins/server-action-exports.ts +0 -220
  748. package/src/routing/status-file-lint.ts +0 -112
  749. package/src/search-params/analyze.ts +0 -192
  750. package/src/search-params/builtin-codecs.ts +0 -228
  751. package/src/search-params/create.ts +0 -321
  752. package/src/server/dev-fetch-instrumentation.ts +0 -96
  753. package/src/server/dev-span-processor.ts +0 -78
  754. package/src/server/manifest-status-resolver.ts +0 -215
  755. package/src/server/prerender.ts +0 -139
  756. package/src/server/response-cache.ts +0 -410
  757. package/src/utils/directive-parser.ts +0 -529
  758. /package/src/{server/dev-logger.ts → dev-tools/logger.ts} +0 -0
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Terminal error formatting — boxed, color-coded error output for dev mode.
3
+ *
4
+ * Produces a visually scannable error block with:
5
+ * - Unicode box-drawing border around the error
6
+ * - Phase badge and error message
7
+ * - First app frame highlighted as the primary action item
8
+ * - OSC 8 clickable file:line links (VSCode terminal, iTerm2, etc.)
9
+ * - Internal/framework frames collapsed with a count
10
+ * - Component stack (for React render errors)
11
+ *
12
+ * Dev-only: this module is only imported by dev-error-overlay.ts.
13
+ *
14
+ * Design doc: 21-dev-server.md §"Error Overlay"
15
+ */
16
+ import { type ErrorPhase } from './overlay.js';
17
+ /**
18
+ * Format an error for terminal output with a boxed layout.
19
+ *
20
+ * The output is designed to be scannable at a glance:
21
+ * 1. Red box with phase badge and error message
22
+ * 2. First app frame as a clickable link (the primary action item)
23
+ * 3. App frames listed normally
24
+ * 4. Internal/framework frames collapsed with count
25
+ * 5. Component stack (if present)
26
+ */
27
+ export declare function formatTerminalError(error: Error, phase: ErrorPhase, projectRoot: string): string;
28
+ //# sourceMappingURL=terminal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminal.d.ts","sourceRoot":"","sources":["../../src/dev-tools/terminal.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EAIL,KAAK,UAAU,EAChB,MAAM,cAAc,CAAC;AA4EtB;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAkEhG"}
@@ -20,7 +20,6 @@ export declare const WarningId: {
20
20
  readonly REDIRECT_IN_SUSPENSE: "REDIRECT_IN_SUSPENSE";
21
21
  readonly REDIRECT_IN_ACCESS: "REDIRECT_IN_ACCESS";
22
22
  readonly STATIC_REQUEST_API: "STATIC_REQUEST_API";
23
- readonly CACHE_REQUEST_PROPS: "CACHE_REQUEST_PROPS";
24
23
  readonly SLOW_SLOT_NO_SUSPENSE: "SLOW_SLOT_NO_SUSPENSE";
25
24
  };
26
25
  export type WarningId = (typeof WarningId)[keyof typeof WarningId];
@@ -77,7 +76,7 @@ export declare function warnRedirectInSuspense(file: string, line?: number): voi
77
76
  */
78
77
  export declare function warnRedirectInAccess(accessFile: string, line?: number): void;
79
78
  /**
80
- * Warn when cookies() or headers() is called during a static build.
79
+ * Warn when getCookies() or getHeaders() is called during a static build.
81
80
  *
82
81
  * In output: 'static' mode, there is no per-request context — these APIs
83
82
  * read build-time values only. This is almost always a mistake.
@@ -86,19 +85,6 @@ export declare function warnRedirectInAccess(accessFile: string, line?: number):
86
85
  * @param file - Relative path to the file calling the API
87
86
  */
88
87
  export declare function warnStaticRequestApi(api: 'cookies' | 'headers', file: string): void;
89
- /**
90
- * Warn when a "use cache" component receives request-specific props.
91
- *
92
- * Cached components should not depend on per-request data — a userId or
93
- * sessionId in the props means the cache will either be ineffective
94
- * (key per user) or dangerous (serve one user's data to another).
95
- *
96
- * @param componentName - Name of the cached component
97
- * @param propName - Name of the suspicious prop
98
- * @param file - Relative path to the component file
99
- * @param line - Line number
100
- */
101
- export declare function warnCacheRequestProps(componentName: string, propName: string, file: string, line?: number): void;
102
88
  /**
103
89
  * Warn when a parallel slot resolves slowly without a <Suspense> wrapper.
104
90
  *
@@ -110,12 +96,6 @@ export declare function warnCacheRequestProps(componentName: string, propName: s
110
96
  * @param durationMs - How long the slot took to resolve
111
97
  */
112
98
  export declare function warnSlowSlotWithoutSuspense(slotName: string, durationMs: number): void;
113
- /** @deprecated Use warnStaticRequestApi instead */
114
- export declare const warnDynamicApiInStaticBuild: typeof warnStaticRequestApi;
115
- /** @deprecated Use warnRedirectInAccess instead */
116
- export declare function warnRedirectInSlotAccess(slotName: string): void;
117
- /** @deprecated Use warnDenyInSuspense / warnRedirectInSuspense instead */
118
- export declare function warnDenyAfterFlush(signal: 'deny' | 'redirect'): void;
119
99
  /**
120
100
  * Reset emitted warnings. For testing only.
121
101
  * @internal
@@ -126,4 +106,4 @@ export declare function _resetWarnings(): void;
126
106
  * @internal
127
107
  */
128
108
  export declare function _getEmitted(): ReadonlySet<string>;
129
- //# sourceMappingURL=dev-warnings.d.ts.map
109
+ //# sourceMappingURL=warnings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"warnings.d.ts","sourceRoot":"","sources":["../../src/dev-tools/warnings.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,MAAM,CAAC;AAK1C,eAAO,MAAM,SAAS;;;;;;;CAOZ,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,OAAO,SAAS,CAAC,CAAC;AAInE,8CAA8C;AAC9C,MAAM,WAAW,gBAAgB;IAC/B,8DAA8D;IAC9D,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AASD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,GAAG,IAAI,CAEhE;AA0CD;;;;;;;;;GASG;AACH,wBAAgB,4BAA4B,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CASrE;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAUpE;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CASxE;AAED;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAU5E;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,SAAS,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAQnF;AAKD;;;;;;;;;GASG;AACH,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAQtF;AAID;;;GAGG;AACH,wBAAgB,cAAc,IAAI,IAAI,CAErC;AAED;;;GAGG;AACH,wBAAgB,WAAW,IAAI,WAAW,CAAC,MAAM,CAAC,CAEjD"}
@@ -1,15 +1,26 @@
1
1
  /**
2
- * Acorn-based AST utilities for extracting static font configs from source code.
2
+ * AST utilities for extracting static font configs from source code.
3
+ * Uses OXC via Vite's `parseAst` — handles JS/JSX/TS/TSX natively.
3
4
  *
4
- * Replaces the fragile regex-based extraction in fonts.ts and local.ts.
5
- * Uses acorn (already a Vite dependency) for robust parsing that handles
6
- * comments, trailing commas, multi-line configs, and other edge cases
7
- * the regex approach missed.
5
+ * Provides two tiers of API:
6
+ *
7
+ * 1. **Source-text helpers** (`extractFontConfigAst`, `extractLocalFontConfigAst`,
8
+ * `detectDynamicFontCallAst`) — parse a snippet and return extracted config.
9
+ * Still used by tests and callers that have only a string.
10
+ *
11
+ * 2. **AST-node helpers** (`extractGoogleFontConfigFromNode`,
12
+ * `extractLocalFontConfigFromNode`, `findFontCallSites`) — operate on
13
+ * nodes from an already-parsed Program so the transform hook can share
14
+ * one parse with all analysis steps.
8
15
  *
9
16
  * Design doc: 24-fonts.md §"Step 1: Static Analysis"
10
17
  */
11
18
  import type { GoogleFontConfig } from './types.js';
12
19
  import type { LocalFontConfig } from './types.js';
20
+ interface AstNode {
21
+ type: string;
22
+ [key: string]: unknown;
23
+ }
13
24
  /**
14
25
  * Extract a GoogleFontConfig from the source text of a font function call's
15
26
  * object argument.
@@ -31,8 +42,89 @@ export declare function extractLocalFontConfigAst(callSource: string): LocalFont
31
42
  * Detect if source code contains dynamic/computed font function calls
32
43
  * that cannot be statically analyzed.
33
44
  *
34
- * Uses acorn to parse the full source and inspect CallExpression nodes.
45
+ * Uses OXC (via vite.parseAst) to parse the full source and inspect CallExpression nodes.
35
46
  * Returns the offending expression string if found, null if all calls are static.
36
47
  */
37
48
  export declare function detectDynamicFontCallAst(source: string, importedNames: string[]): string | null;
49
+ /**
50
+ * Extract a GoogleFontConfig from an ObjectExpression AST node.
51
+ *
52
+ * This is the node-level equivalent of `extractFontConfigAst` — it skips
53
+ * the parse step because the caller already has a parsed Program.
54
+ */
55
+ export declare function extractGoogleFontConfigFromNode(node: AstNode): GoogleFontConfig | null;
56
+ /**
57
+ * Extract a LocalFontConfig from an ObjectExpression AST node.
58
+ */
59
+ export declare function extractLocalFontConfigFromNode(node: AstNode): LocalFontConfig | null;
60
+ /** A font import binding discovered from an ImportDeclaration. */
61
+ export interface FontBinding {
62
+ /** The local name used in the module (after `as`, if present). */
63
+ localName: string;
64
+ /**
65
+ * The original exported name (before `as`). For Google fonts this is
66
+ * the PascalCase_With_Underscores name that maps to the family. For
67
+ * local fonts (`default` import), this is `'default'`.
68
+ */
69
+ importedName: string;
70
+ /** `'google'` or `'local'`. */
71
+ provider: 'google' | 'local';
72
+ /** The AST node of the ImportDeclaration (for removal via magic-string). */
73
+ importNode: AstNode & {
74
+ start: number;
75
+ end: number;
76
+ };
77
+ }
78
+ /** A font function call site discovered from a CallExpression. */
79
+ export interface FontCallSite {
80
+ /** The binding that this call references. */
81
+ binding: FontBinding;
82
+ /**
83
+ * The variable name this call is assigned to, if the call appears in a
84
+ * VariableDeclarator. `null` for bare expression statements.
85
+ */
86
+ assignedName: string | null;
87
+ /** The first argument AST node (expected to be an ObjectExpression). */
88
+ configNode: AstNode;
89
+ /**
90
+ * The outermost AST node to replace. For a VariableDeclaration with a
91
+ * single declarator this is the full declaration; for a bare expression
92
+ * statement it is the ExpressionStatement. The transform replaces
93
+ * `source[replaceStart..replaceEnd]`.
94
+ */
95
+ replaceStart: number;
96
+ replaceEnd: number;
97
+ /** Line number (1-based) of the call for error messages. */
98
+ line: number;
99
+ /** Column (0-based) of the call for error messages. */
100
+ column: number;
101
+ }
102
+ /** Result of `findFontCallSites` — everything the transform needs. */
103
+ export interface FontAnalysis {
104
+ bindings: FontBinding[];
105
+ callSites: FontCallSite[];
106
+ /** Import nodes that should be removed (deduplicated). */
107
+ importNodesToRemove: Array<{
108
+ start: number;
109
+ end: number;
110
+ }>;
111
+ /** First dynamic call expression text, or `null`. */
112
+ dynamicCall: string | null;
113
+ /**
114
+ * Font calls found in nested scopes (functions, if-blocks, etc.).
115
+ * These are errors — font calls must be module-level.
116
+ */
117
+ nestedCalls: Array<{
118
+ name: string;
119
+ line: number;
120
+ column: number;
121
+ }>;
122
+ }
123
+ /**
124
+ * Parse a full source file and find all font imports and call sites.
125
+ *
126
+ * Returns `null` if the source has no font-related imports.
127
+ */
128
+ export declare function findFontCallSites(source: string): FontAnalysis | null;
129
+ export {};
38
130
  //# sourceMappingURL=ast.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ast.d.ts","sourceRoot":"","sources":["../../src/fonts/ast.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,KAAK,EAAE,eAAe,EAAgB,MAAM,YAAY,CAAC;AA0HhE;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CA4DhF;AAiCD;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,UAAU,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CA4CpF;AAID;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,IAAI,CAiB/F"}
1
+ {"version":3,"file":"ast.d.ts","sourceRoot":"","sources":["../../src/fonts/ast.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,KAAK,EAAE,eAAe,EAAgB,MAAM,YAAY,CAAC;AAIhE,UAAU,OAAO;IACf,IAAI,EAAE,MAAM,CAAC;IACb,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAiID;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CA4DhF;AAiCD;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,UAAU,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CA4CpF;AAID;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,IAAI,CAc/F;AAmDD;;;;;GAKG;AACH,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,OAAO,GAAG,gBAAgB,GAAG,IAAI,CAGtF;AAED;;GAEG;AACH,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,OAAO,GAAG,eAAe,GAAG,IAAI,CAGpF;AA8GD,kEAAkE;AAClE,MAAM,WAAW,WAAW;IAC1B,kEAAkE;IAClE,SAAS,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB,+BAA+B;IAC/B,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC7B,4EAA4E;IAC5E,UAAU,EAAE,OAAO,GAAG;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;CACtD;AAED,kEAAkE;AAClE,MAAM,WAAW,YAAY;IAC3B,6CAA6C;IAC7C,OAAO,EAAE,WAAW,CAAC;IACrB;;;OAGG;IACH,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,wEAAwE;IACxE,UAAU,EAAE,OAAO,CAAC;IACpB;;;;;OAKG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,4DAA4D;IAC5D,IAAI,EAAE,MAAM,CAAC;IACb,uDAAuD;IACvD,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,sEAAsE;AACtE,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,SAAS,EAAE,YAAY,EAAE,CAAC;IAC1B,0DAA0D;IAC1D,mBAAmB,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC3D,qDAAqD;IACrD,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B;;;OAGG;IACH,WAAW,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACpE;AAkFD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAgIrE"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Build-output emission for the timber-fonts plugin.
3
+ *
4
+ * Splits the `generateBundle` hook into pure helpers so the plugin shell
5
+ * can stay focused on Vite wiring. The functions here are deliberately
6
+ * Rollup-agnostic — they take an `EmitFile` callback so the plugin can
7
+ * pass `this.emitFile` from the `generateBundle` context.
8
+ *
9
+ * Design doc: 24-fonts.md
10
+ */
11
+ import type { BuildManifest } from '../server/build-manifest.js';
12
+ /**
13
+ * Minimal shape of the asset descriptor accepted by Rollup's `emitFile`.
14
+ * Declared inline rather than importing from `rollup` to keep `bundle.ts`
15
+ * Rollup-agnostic and avoid pulling the type into the build graph.
16
+ */
17
+ interface EmittedAsset {
18
+ type: 'asset';
19
+ fileName: string;
20
+ source: string | Uint8Array;
21
+ }
22
+ import type { FontPipeline } from './pipeline.js';
23
+ import type { CachedFont } from './google.js';
24
+ type EmitFile = (asset: EmittedAsset) => string;
25
+ type EmitWarning = (msg: string) => void;
26
+ /** Group cached Google Font binaries by lowercase family name. */
27
+ export declare function groupCachedFontsByFamily(cachedFonts: readonly CachedFont[]): Map<string, CachedFont[]>;
28
+ /**
29
+ * Emit cached Google Font binaries and local font files into the build
30
+ * output under `_timber/fonts/`. Local files missing on disk produce a
31
+ * warning rather than an error so the build still succeeds.
32
+ *
33
+ * Cached Google Font binaries are deduplicated by `hashedFilename` so
34
+ * each unique file is written exactly once even when multiple font
35
+ * entries share a family (and therefore share `CachedFont` references).
36
+ */
37
+ export declare function emitFontAssets(pipeline: FontPipeline, emitFile: EmitFile, warn: EmitWarning): void;
38
+ /**
39
+ * Populate `buildManifest.fonts` with `ManifestFontEntry[]` keyed by the
40
+ * importer module path (relative to the project root, matching how Vite's
41
+ * `manifest.json` keys css/js).
42
+ *
43
+ * Google fonts use the content-hashed filenames produced during
44
+ * `buildStart`. Local fonts use the source basename.
45
+ */
46
+ export declare function writeFontManifest(pipeline: FontPipeline, buildManifest: BuildManifest, rootDir: string): void;
47
+ export {};
48
+ //# sourceMappingURL=bundle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../../src/fonts/bundle.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,OAAO,KAAK,EAAqB,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAEpF;;;;GAIG;AACH,UAAU,YAAY;IACpB,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,GAAG,UAAU,CAAC;CAC7B;AACD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAG9C,KAAK,QAAQ,GAAG,CAAC,KAAK,EAAE,YAAY,KAAK,MAAM,CAAC;AAChD,KAAK,WAAW,GAAG,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;AAEzC,kEAAkE;AAClE,wBAAgB,wBAAwB,CACtC,WAAW,EAAE,SAAS,UAAU,EAAE,GACjC,GAAG,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC,CAS3B;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,YAAY,EACtB,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,WAAW,GAChB,IAAI,CA4BN;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,YAAY,EACtB,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE,MAAM,GACd,IAAI,CAwCN"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Dev-mode middleware that serves local font binaries under
3
+ * `/_timber/fonts/<basename>`.
4
+ *
5
+ * Only files registered in the FontPipeline are served, and only by
6
+ * basename — directory traversal and path separators in the requested
7
+ * filename are rejected up front. Font CSS is no longer served here; it
8
+ * goes through Vite's CSS pipeline via virtual modules.
9
+ *
10
+ * Design doc: 24-fonts.md
11
+ */
12
+ import type { ViteDevServer } from 'vite';
13
+ import type { FontPipeline } from './pipeline.js';
14
+ /**
15
+ * Wire the timber-fonts dev middleware onto a Vite dev server.
16
+ *
17
+ * Returns synchronously after registering the middleware. The pipeline is
18
+ * captured by reference so that fonts registered after `configureServer`
19
+ * runs (during transform) are still resolvable.
20
+ */
21
+ export declare function installFontDevMiddleware(server: ViteDevServer, pipeline: FontPipeline): void;
22
+ //# sourceMappingURL=dev-middleware.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev-middleware.d.ts","sourceRoot":"","sources":["../../src/fonts/dev-middleware.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,MAAM,CAAC;AAG1C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAUlD;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,YAAY,GAAG,IAAI,CAyC5F"}
@@ -71,7 +71,7 @@ export declare function processLocalFont(config: LocalFontConfig, importerPath:
71
71
  *
72
72
  * Returns null if the call cannot be statically analyzed.
73
73
  *
74
- * Uses acorn AST parsing for robust handling of comments, trailing commas,
74
+ * Uses OXC (via vite.parseAst) AST parsing for robust handling of comments, trailing commas,
75
75
  * and multi-line configs.
76
76
  */
77
77
  export declare function extractLocalFontConfig(callSource: string): LocalFontConfig | null;
@@ -0,0 +1,167 @@
1
+ /**
2
+ * FontPipeline — owns all per-font state for the timber-fonts plugin.
3
+ *
4
+ * Before TIM-829, font state was spread across three parallel mutable maps:
5
+ *
6
+ * - `registry: Map<string, ExtractedFont>`
7
+ * - `googleFontFacesMap: Map<string, FontFaceDescriptor[]>`
8
+ * - `cachedFonts: CachedFont[]`
9
+ *
10
+ * Every plugin hook had to remember which map(s) it owned and which it
11
+ * read. The TIM-824 bug existed because `transform` could write to
12
+ * `registry` multiple times for the same `(importer, family)` pair without
13
+ * a corresponding cleanup of the entries that `buildStart` / `load` would
14
+ * later use. The fix in TIM-824 added prune calls in `transform` for the
15
+ * registry, but the parallel maps still had the same hazard latent in
16
+ * them: any future code path that ran `buildStart`-equivalent logic on
17
+ * HMR could re-introduce a stale-entry leak in a different map.
18
+ *
19
+ * TIM-829 collapses the three maps into a single `Map<string, FontEntry>`
20
+ * keyed by font ID. Mutation goes through a small set of methods that
21
+ * maintain the core invariant: **every piece of state belonging to a font
22
+ * lives on its `FontEntry`, and `pruneFor` removes the entry along with
23
+ * everything attached to it in one call.** No code path inside the plugin
24
+ * touches the underlying map directly.
25
+ *
26
+ * Design doc: 24-fonts.md
27
+ */
28
+ import type { ExtractedFont, FontEntry, FontFaceDescriptor } from './types.js';
29
+ import type { CachedFont } from './google.js';
30
+ import { VirtualFontCssIdMap } from './virtual-modules.js';
31
+ /**
32
+ * Backwards-compatible alias for the registry shape that the standalone
33
+ * `pruneRegistryEntries` and `generateAllFontCss` helpers operate on.
34
+ *
35
+ * The `FontPipeline` itself stores `Map<string, FontEntry>` internally and
36
+ * never exposes its underlying map. Tests and external callers that build
37
+ * their own font registries (e.g. fixtures in `tests/fonts-hmr-prune.test.ts`)
38
+ * still pass plain `Map<string, ExtractedFont>` instances to the standalone
39
+ * helpers, which is why the alias survives.
40
+ */
41
+ export type FontRegistry = Map<string, ExtractedFont>;
42
+ export declare class FontPipeline {
43
+ /**
44
+ * The single per-font store. Keyed by `FontEntry.id` (which is itself
45
+ * derived from `family + weights + styles + subsets + display`, so any
46
+ * config change produces a new key).
47
+ *
48
+ * Marked `readonly` so the field reference can never be reassigned, but
49
+ * the map contents are mutable through the methods below.
50
+ */
51
+ private readonly _entries;
52
+ /**
53
+ * Per-importer virtual CSS module id registry. Populated by the
54
+ * transform hook when it inlines a font function call, read by the
55
+ * plugin's `load` hook when Vite asks for the module's CSS source.
56
+ *
57
+ * Lives on the pipeline (rather than a module-level singleton) so
58
+ * multiple parallel plugin instances — e.g. in the test suite — cannot
59
+ * collide on the hash-to-importer map. Also makes `clear()` reset the
60
+ * id map alongside the font entries so test fixtures start clean.
61
+ */
62
+ readonly cssIdMap: VirtualFontCssIdMap;
63
+ /** Number of registered fonts. */
64
+ size(): number;
65
+ /** Iterate every entry as a `FontEntry` (with `faces` / `cachedFiles`). */
66
+ entries(): IterableIterator<FontEntry>;
67
+ /** Iterate every entry typed as the narrower `ExtractedFont` shape. */
68
+ fonts(): IterableIterator<ExtractedFont>;
69
+ /** Iterate every Google-provider entry. */
70
+ googleFonts(): IterableIterator<FontEntry>;
71
+ /** Lookup an entry by font ID. */
72
+ getEntry(id: string): FontEntry | undefined;
73
+ /**
74
+ * True if `attachFaces()` has been called for `fontId` — even with an
75
+ * empty array. This intentionally treats an empty resolution as
76
+ * "already processed" so the dev `load()` path doesn't keep retrying
77
+ * `resolveDevFontFaces()` on every request when Google returns no
78
+ * matching faces for the requested subset(s). Mirrors the previous
79
+ * `Map.has()` semantics this method replaced. (Codex review on PR #596.)
80
+ *
81
+ * Failures inside `resolveDevFontFaces` do not call `attachFaces` at
82
+ * all, so they correctly stay retryable on the next request — see the
83
+ * TIM-636 comment in `plugins/fonts.ts`.
84
+ */
85
+ hasFaces(fontId: string): boolean;
86
+ /**
87
+ * True if `attachCachedFiles()` has been called for `fontId` — even
88
+ * with an empty array. Same presence-vs-content rationale as
89
+ * `hasFaces`: an empty resolution is a deterministic outcome, not a
90
+ * "not yet processed" signal.
91
+ */
92
+ hasCachedFiles(fontId: string): boolean;
93
+ /**
94
+ * Register an extracted font under its content-derived ID.
95
+ *
96
+ * If an entry with the same ID already exists it is replaced wholesale,
97
+ * dropping any previously-attached `faces` and `cachedFiles`. Callers
98
+ * must call `pruneFor(importer, family)` first to ensure that any
99
+ * previous registration from the same `(importer, family)` pair has been
100
+ * dropped (TIM-824).
101
+ */
102
+ register(extracted: ExtractedFont): void;
103
+ /** Attach pre-resolved `@font-face` descriptors to a font entry. */
104
+ attachFaces(fontId: string, faces: FontFaceDescriptor[]): void;
105
+ /** Attach downloaded Google Font binaries to a font entry. */
106
+ attachCachedFiles(fontId: string, files: CachedFont[]): void;
107
+ /**
108
+ * Drop every registry entry that originated from `importer` and shares
109
+ * `family` (case-insensitive), **along with all of its attached state**.
110
+ *
111
+ * This is the single chokepoint that guarantees stale `@font-face`
112
+ * descriptors and orphaned cached binaries cannot leak across HMR edits.
113
+ * Because every piece of per-font state lives on the `FontEntry`,
114
+ * deleting the entry from the underlying map drops everything in one
115
+ * operation — no parallel maps to keep in sync.
116
+ *
117
+ * See TIM-824 (the original prune fix) and TIM-829 (single-store
118
+ * refactor that made this guarantee structural).
119
+ */
120
+ pruneFor(importer: string, family: string): void;
121
+ /** Drop every registered font. Used by tests and rebuild flows. */
122
+ clear(): void;
123
+ /**
124
+ * Iterate every cached Google Font binary across all registered entries,
125
+ * deduplicated by `hashedFilename`. Multiple entries that share the same
126
+ * family hold references to the same `CachedFont` objects, so this
127
+ * iterator yields each unique binary exactly once.
128
+ */
129
+ uniqueCachedFiles(): IterableIterator<CachedFont>;
130
+ /**
131
+ * Generate the combined CSS output for every registered font.
132
+ *
133
+ * Includes `@font-face` rules for local and Google fonts, fallback
134
+ * `@font-face` rules, and scoped class rules. Google fonts use the
135
+ * `faces` attached via `attachFaces()` (in `buildStart` for production
136
+ * or lazily in `load` for dev).
137
+ */
138
+ getCss(): string;
139
+ /**
140
+ * Render the combined CSS for every font registered from a specific
141
+ * importer file. This is the anchor point for the per-importer virtual
142
+ * CSS module (`virtual:timber-font-css/<hash>.css`) that the transform
143
+ * hook injects as a side-effect import.
144
+ *
145
+ * Scoping by importer means two concurrent requests rendering different
146
+ * routes cannot see each other's font CSS: each importer's virtual
147
+ * module only contains CSS for fonts that module registered. It also
148
+ * means Vite's CSS HMR can surgically reload just the affected importer
149
+ * when a single file changes, rather than rebuilding one giant blob.
150
+ *
151
+ * Returns an empty string when no fonts are registered under `importer`.
152
+ * The empty string is semantically equivalent to "no CSS" — Vite's CSS
153
+ * pipeline handles it as a valid empty CSS module.
154
+ */
155
+ getCssForSegment(importer: string): string;
156
+ }
157
+ /**
158
+ * Drop every registry entry that originated from `importer` and shares
159
+ * `family`. Standalone helper retained as a public export for the test
160
+ * suite (`tests/fonts-hmr-prune.test.ts`) and any external callers that
161
+ * still build their own `FontRegistry` maps.
162
+ *
163
+ * Prefer `FontPipeline#pruneFor` inside the plugin itself — it also drops
164
+ * attached `faces` and `cachedFiles` in the same operation.
165
+ */
166
+ export declare function pruneRegistryEntries(registry: FontRegistry, importer: string, family: string): void;
167
+ //# sourceMappingURL=pipeline.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../src/fonts/pipeline.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAC/E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAI9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D;;;;;;;;;GASG;AACH,MAAM,MAAM,YAAY,GAAG,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;AAEtD,qBAAa,YAAY;IACvB;;;;;;;OAOG;IACH,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgC;IAEzD;;;;;;;;;OASG;IACH,QAAQ,CAAC,QAAQ,sBAA6B;IAI9C,kCAAkC;IAClC,IAAI,IAAI,MAAM;IAId,2EAA2E;IAC3E,OAAO,IAAI,gBAAgB,CAAC,SAAS,CAAC;IAItC,uEAAuE;IACvE,KAAK,IAAI,gBAAgB,CAAC,aAAa,CAAC;IAIxC,2CAA2C;IAC1C,WAAW,IAAI,gBAAgB,CAAC,SAAS,CAAC;IAM3C,kCAAkC;IAClC,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAI3C;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAKjC;;;;;OAKG;IACH,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAOvC;;;;;;;;OAQG;IACH,QAAQ,CAAC,SAAS,EAAE,aAAa,GAAG,IAAI;IAOxC,oEAAoE;IACpE,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,kBAAkB,EAAE,GAAG,IAAI;IAW9D,8DAA8D;IAC9D,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,IAAI;IAW5D;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAShD,mEAAmE;IACnE,KAAK,IAAI,IAAI;IAOb;;;;;OAKG;IACF,iBAAiB,IAAI,gBAAgB,CAAC,UAAU,CAAC;IAYlD;;;;;;;OAOG;IACH,MAAM,IAAI,MAAM;IAQhB;;;;;;;;;;;;;;;OAeG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;CAQ3C;AAoCD;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,YAAY,EACtB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,IAAI,CAON"}
@@ -0,0 +1,78 @@
1
+ /**
2
+ * Transform-hook logic for the timber-fonts plugin.
3
+ *
4
+ * Scans source files for font function calls (`Inter({...})`,
5
+ * `localFont({...})`), validates that they are statically analysable,
6
+ * registers the extracted fonts in the `FontPipeline`, and rewrites the
7
+ * call sites to static `FontResult` literals so the runtime never has to
8
+ * evaluate the font function.
9
+ *
10
+ * Uses a single OXC (via vite.parseAst) parse of the source file (via `findFontCallSites`)
11
+ * and magic-string for precise source rewrites with source maps.
12
+ *
13
+ * Design doc: 24-fonts.md
14
+ */
15
+ import MagicString from 'magic-string';
16
+ import type { GoogleFontConfig } from './types.js';
17
+ import type { FontPipeline } from './pipeline.js';
18
+ /**
19
+ * Generate a unique font ID from family + config hash.
20
+ *
21
+ * The ID intentionally includes every property that affects the rendered
22
+ * `@font-face` output (`weight`, `style`, `subsets`, `display`) so that an
23
+ * HMR edit changing any of those produces a new ID and the registry is
24
+ * forced to re-emit fresh CSS.
25
+ */
26
+ export declare function generateFontId(family: string, config: GoogleFontConfig): string;
27
+ /**
28
+ * Extract static font config from a font function call source.
29
+ *
30
+ * Returns `null` if the call cannot be statically analysed.
31
+ */
32
+ export declare function extractFontConfig(callSource: string): GoogleFontConfig | null;
33
+ /**
34
+ * Detect dynamic/computed font function calls that cannot be statically
35
+ * analysed. Returns the offending expression text, or `null` if all calls
36
+ * are static.
37
+ */
38
+ export declare function detectDynamicFontCall(source: string, importedNames: string[]): string | null;
39
+ /**
40
+ * Parse the local names imported from `@timber/fonts/google` /
41
+ * `next/font/google`. e.g. `import { Inter, JetBrains_Mono as Mono }` →
42
+ * `['Inter', 'Mono']`.
43
+ */
44
+ export declare function parseGoogleFontImports(source: string): string[];
45
+ /**
46
+ * Parse Google font imports into a `localName → familyName` map.
47
+ *
48
+ * e.g. `import { JetBrains_Mono as Mono }` → `{ Mono: 'JetBrains Mono' }`.
49
+ * The original (pre-`as`) name is converted from PascalCase-with-underscores
50
+ * to the human-readable family name by replacing `_` with a space.
51
+ */
52
+ export declare function parseGoogleFontFamilies(source: string): Map<string, string>;
53
+ /**
54
+ * Parse the local name used for the default import of `@timber/fonts/local`.
55
+ *
56
+ * Handles either spelling and arbitrary local names:
57
+ * import localFont from '@timber/fonts/local'
58
+ * import myLoader from 'next/font/local'
59
+ */
60
+ export declare function parseLocalFontImportName(source: string): string | null;
61
+ /** Type for the Vite plugin's `this.error` callback. */
62
+ type EmitError = (msg: string) => never;
63
+ /**
64
+ * Run the timber-fonts transform pass on a single source file.
65
+ *
66
+ * Parses the source once with OXC (via vite.parseAst), walks the AST to find font imports
67
+ * and call sites, then uses magic-string to rewrite call sites to static
68
+ * `FontResult` literals and strip the import declarations. Returns a
69
+ * source map alongside the transformed code.
70
+ *
71
+ * Returns `null` if the file does not import from any font virtual module.
72
+ */
73
+ export declare function runFontsTransform(code: string, id: string, pipeline: FontPipeline, emitError: EmitError): {
74
+ code: string;
75
+ map: ReturnType<MagicString['generateMap']>;
76
+ } | null;
77
+ export {};
78
+ //# sourceMappingURL=transform.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transform.d.ts","sourceRoot":"","sources":["../../src/fonts/transform.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,WAAW,MAAM,cAAc,CAAC;AACvC,OAAO,KAAK,EAAiB,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAUlE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAsBlD;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAM/E;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAE7E;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,IAAI,CAE5F;AAOD;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAI/D;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAU3E;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAKtE;AASD,wDAAwD;AACxD,KAAK,SAAS,GAAG,CAAC,GAAG,EAAE,MAAM,KAAK,KAAK,CAAC;AA4BxC;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,YAAY,EACtB,SAAS,EAAE,SAAS,GACnB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAA;CAAE,GAAG,IAAI,CAsItE"}
@@ -6,6 +6,7 @@
6
6
  *
7
7
  * Design doc: 24-fonts.md
8
8
  */
9
+ import type { CachedFont } from './google.js';
9
10
  /** Configuration passed to a Google font function (e.g. `Inter({ ... })`). */
10
11
  export interface GoogleFontConfig {
11
12
  weight?: string | string[];
@@ -44,7 +45,16 @@ export interface FontResult {
44
45
  /** CSS custom property name when `variable` is specified (e.g. `--font-sans`). */
45
46
  variable?: string;
46
47
  }
47
- /** Internal representation of a font extracted during static analysis. */
48
+ /**
49
+ * Internal representation of a font extracted during static analysis.
50
+ *
51
+ * `ExtractedFont` is the **registration input** to `FontPipeline.register()`.
52
+ * Once a font has been registered the pipeline stores a `FontEntry` (which
53
+ * extends `ExtractedFont` with optional resolved `@font-face` descriptors
54
+ * and cached binary files). External code that needs to model a font that
55
+ * is not yet inside a pipeline (e.g. test fixtures) should use
56
+ * `ExtractedFont` directly.
57
+ */
48
58
  export interface ExtractedFont {
49
59
  /** Unique identifier for this font instance (e.g. `inter-400-normal-latin`). */
50
60
  id: string;
@@ -82,4 +92,38 @@ export interface FontFaceDescriptor {
82
92
  display?: string;
83
93
  unicodeRange?: string;
84
94
  }
95
+ /**
96
+ * The unified per-font store entry held inside `FontPipeline`.
97
+ *
98
+ * Combines what used to live in three parallel maps:
99
+ *
100
+ * - `registry: Map<string, ExtractedFont>` → the base extracted config
101
+ * - `googleFontFacesMap: Map<string, FontFaceDescriptor[]>` → `faces`
102
+ * - `cachedFonts: CachedFont[]` (flat, family-grouped) → `cachedFiles`
103
+ *
104
+ * `pruneFor` drops the entry **and** all of its attached state in one
105
+ * operation, so future code paths cannot reintroduce a TIM-824-style
106
+ * desync between parallel maps.
107
+ *
108
+ * See TIM-829.
109
+ */
110
+ export interface FontEntry extends ExtractedFont {
111
+ /**
112
+ * Pre-resolved `@font-face` descriptors. Populated in `buildStart`
113
+ * (production) or lazily in `load` (dev). For local fonts the descriptors
114
+ * are derived from the source list at CSS-generation time and are not
115
+ * stored here.
116
+ */
117
+ faces?: FontFaceDescriptor[];
118
+ /**
119
+ * Downloaded Google Font binaries that back this entry's `@font-face`
120
+ * declarations. Empty for local fonts and in dev mode (where Google fonts
121
+ * are served straight from the CDN).
122
+ *
123
+ * Multiple entries that share the same `family` will hold references to
124
+ * the same `CachedFont` objects. The bundle emitter dedupes by
125
+ * `hashedFilename` so each binary is written exactly once.
126
+ */
127
+ cachedFiles?: CachedFont[];
128
+ }
85
129
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/fonts/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,8EAA8E;AAC9E,MAAM,WAAW,gBAAgB;IAC/B,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,UAAU,GAAG,UAAU,CAAC;IAC9D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,uDAAuD;AACvD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,6CAA6C;AAC7C,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,GAAG,YAAY,EAAE,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,UAAU,GAAG,UAAU,CAAC;IAC9D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB,4EAA4E;IAC5E,SAAS,EAAE,MAAM,CAAC;IAClB,iEAAiE;IACjE,KAAK,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9B,kFAAkF;IAClF,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,0EAA0E;AAC1E,MAAM,WAAW,aAAa;IAC5B,gFAAgF;IAChF,EAAE,EAAE,MAAM,CAAC;IACX,2CAA2C;IAC3C,MAAM,EAAE,MAAM,CAAC;IACf,qCAAqC;IACrC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC7B,+CAA+C;IAC/C,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,oDAAoD;IACpD,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,6DAA6D;IAC7D,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,0BAA0B;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yCAAyC;IACzC,YAAY,CAAC,EAAE,YAAY,EAAE,CAAC;IAC9B,oEAAoE;IACpE,QAAQ,EAAE,MAAM,CAAC;IACjB,mCAAmC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,0CAA0C;IAC1C,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/fonts/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,8EAA8E;AAC9E,MAAM,WAAW,gBAAgB;IAC/B,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,UAAU,GAAG,UAAU,CAAC;IAC9D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,uDAAuD;AACvD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,6CAA6C;AAC7C,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,GAAG,YAAY,EAAE,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,UAAU,GAAG,UAAU,CAAC;IAC9D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB,4EAA4E;IAC5E,SAAS,EAAE,MAAM,CAAC;IAClB,iEAAiE;IACjE,KAAK,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9B,kFAAkF;IAClF,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,aAAa;IAC5B,gFAAgF;IAChF,EAAE,EAAE,MAAM,CAAC;IACX,2CAA2C;IAC3C,MAAM,EAAE,MAAM,CAAC;IACf,qCAAqC;IACrC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC7B,+CAA+C;IAC/C,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,oDAAoD;IACpD,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,6DAA6D;IAC7D,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,0BAA0B;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yCAAyC;IACzC,YAAY,CAAC,EAAE,YAAY,EAAE,CAAC;IAC9B,oEAAoE;IACpE,QAAQ,EAAE,MAAM,CAAC;IACjB,mCAAmC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,0CAA0C;IAC1C,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,SAAU,SAAQ,aAAa;IAC9C;;;;;OAKG;IACH,KAAK,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAE7B;;;;;;;;OAQG;IACH,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;CAC5B"}