effect-start 0.26.0 → 0.28.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (654) hide show
  1. package/dist/ChildProcess.d.ts +60 -0
  2. package/dist/ChildProcess.d.ts.map +1 -0
  3. package/dist/ChildProcess.js +30 -0
  4. package/dist/ChildProcess.js.map +1 -0
  5. package/dist/Commander.d.ts +101 -0
  6. package/dist/Commander.d.ts.map +1 -0
  7. package/dist/Commander.js +327 -0
  8. package/dist/Commander.js.map +1 -0
  9. package/dist/ContentNegotiation.d.ts +13 -0
  10. package/dist/ContentNegotiation.d.ts.map +1 -0
  11. package/dist/ContentNegotiation.js +360 -0
  12. package/dist/ContentNegotiation.js.map +1 -0
  13. package/dist/Cookies.d.ts +78 -0
  14. package/dist/Cookies.d.ts.map +1 -0
  15. package/dist/Cookies.js +303 -0
  16. package/dist/Cookies.js.map +1 -0
  17. package/dist/Development.d.ts +42 -0
  18. package/dist/Development.d.ts.map +1 -0
  19. package/dist/Development.js +60 -0
  20. package/dist/Development.js.map +1 -0
  21. package/dist/Docker.d.ts +51 -0
  22. package/dist/Docker.d.ts.map +1 -0
  23. package/dist/Docker.js +88 -0
  24. package/dist/Docker.js.map +1 -0
  25. package/dist/Effectify.d.ts +210 -0
  26. package/dist/Effectify.d.ts.map +1 -0
  27. package/dist/Effectify.js +20 -0
  28. package/dist/Effectify.js.map +1 -0
  29. package/dist/Entity.d.ts +48 -0
  30. package/dist/Entity.d.ts.map +1 -0
  31. package/dist/Entity.js +235 -0
  32. package/dist/Entity.js.map +1 -0
  33. package/dist/Fetch.d.ts +50 -0
  34. package/dist/Fetch.d.ts.map +1 -0
  35. package/dist/Fetch.js +136 -0
  36. package/dist/Fetch.js.map +1 -0
  37. package/dist/FilePathPattern.d.ts +30 -0
  38. package/dist/FilePathPattern.d.ts.map +1 -0
  39. package/dist/FilePathPattern.js +87 -0
  40. package/dist/FilePathPattern.js.map +1 -0
  41. package/dist/FileRouter.d.ts +57 -0
  42. package/dist/FileRouter.d.ts.map +1 -0
  43. package/dist/FileRouter.js +149 -0
  44. package/dist/FileRouter.js.map +1 -0
  45. package/dist/FileRouterCodegen.d.ts +19 -0
  46. package/dist/FileRouterCodegen.d.ts.map +1 -0
  47. package/dist/FileRouterCodegen.js +228 -0
  48. package/dist/FileRouterCodegen.js.map +1 -0
  49. package/dist/FileSystem.d.ts +159 -0
  50. package/dist/FileSystem.d.ts.map +1 -0
  51. package/dist/FileSystem.js +71 -0
  52. package/dist/FileSystem.js.map +1 -0
  53. package/dist/GlobalLayer.d.ts +4 -0
  54. package/dist/GlobalLayer.d.ts.map +1 -0
  55. package/dist/GlobalLayer.js +51 -0
  56. package/dist/GlobalLayer.js.map +1 -0
  57. package/dist/Http.d.ts +38 -0
  58. package/dist/Http.d.ts.map +1 -0
  59. package/dist/Http.js +89 -0
  60. package/dist/Http.js.map +1 -0
  61. package/dist/PathPattern.d.ts +135 -0
  62. package/dist/PathPattern.d.ts.map +1 -0
  63. package/dist/PathPattern.js +414 -0
  64. package/dist/PathPattern.js.map +1 -0
  65. package/dist/PlatformError.d.ts +39 -0
  66. package/dist/PlatformError.d.ts.map +1 -0
  67. package/dist/PlatformError.js +26 -0
  68. package/dist/PlatformError.js.map +1 -0
  69. package/dist/PlatformRuntime.d.ts +30 -0
  70. package/dist/PlatformRuntime.d.ts.map +1 -0
  71. package/dist/PlatformRuntime.js +50 -0
  72. package/dist/PlatformRuntime.js.map +1 -0
  73. package/dist/Route.d.ts +98 -0
  74. package/dist/Route.d.ts.map +1 -0
  75. package/dist/Route.js +101 -0
  76. package/dist/Route.js.map +1 -0
  77. package/dist/RouteBody.d.ts +48 -0
  78. package/dist/RouteBody.d.ts.map +1 -0
  79. package/dist/RouteBody.js +68 -0
  80. package/dist/RouteBody.js.map +1 -0
  81. package/dist/RouteError.d.ts +99 -0
  82. package/dist/RouteError.d.ts.map +1 -0
  83. package/dist/RouteError.js +56 -0
  84. package/dist/RouteError.js.map +1 -0
  85. package/dist/RouteHook.d.ts +13 -0
  86. package/dist/RouteHook.d.ts.map +1 -0
  87. package/dist/RouteHook.js +40 -0
  88. package/dist/RouteHook.js.map +1 -0
  89. package/dist/RouteHttp.d.ts +22 -0
  90. package/dist/RouteHttp.d.ts.map +1 -0
  91. package/dist/RouteHttp.js +259 -0
  92. package/dist/RouteHttp.js.map +1 -0
  93. package/dist/RouteHttpTracer.d.ts +11 -0
  94. package/dist/RouteHttpTracer.d.ts.map +1 -0
  95. package/dist/RouteHttpTracer.js +63 -0
  96. package/dist/RouteHttpTracer.js.map +1 -0
  97. package/dist/RouteMount.d.ts +87 -0
  98. package/dist/RouteMount.d.ts.map +1 -0
  99. package/dist/RouteMount.js +64 -0
  100. package/dist/RouteMount.js.map +1 -0
  101. package/dist/RouteSchema.d.ts +87 -0
  102. package/dist/RouteSchema.d.ts.map +1 -0
  103. package/dist/RouteSchema.js +189 -0
  104. package/dist/RouteSchema.js.map +1 -0
  105. package/dist/RouteSse.d.ts +22 -0
  106. package/dist/RouteSse.d.ts.map +1 -0
  107. package/dist/RouteSse.js +80 -0
  108. package/dist/RouteSse.js.map +1 -0
  109. package/dist/RouteTree.d.ts +58 -0
  110. package/dist/RouteTree.d.ts.map +1 -0
  111. package/dist/RouteTree.js +94 -0
  112. package/dist/RouteTree.js.map +1 -0
  113. package/dist/RouteTrie.d.ts +21 -0
  114. package/dist/RouteTrie.d.ts.map +1 -0
  115. package/dist/RouteTrie.js +153 -0
  116. package/dist/RouteTrie.js.map +1 -0
  117. package/dist/SchemaExtra.d.ts +8 -0
  118. package/dist/SchemaExtra.d.ts.map +1 -0
  119. package/dist/SchemaExtra.js +75 -0
  120. package/dist/SchemaExtra.js.map +1 -0
  121. package/dist/Socket.d.ts +28 -0
  122. package/dist/Socket.d.ts.map +1 -0
  123. package/dist/Socket.js +30 -0
  124. package/dist/Socket.js.map +1 -0
  125. package/dist/SqlIntrospect.d.ts +92 -0
  126. package/dist/SqlIntrospect.d.ts.map +1 -0
  127. package/dist/SqlIntrospect.js +478 -0
  128. package/dist/SqlIntrospect.js.map +1 -0
  129. package/dist/Start.d.ts +90 -0
  130. package/dist/Start.d.ts.map +1 -0
  131. package/dist/Start.js +91 -0
  132. package/dist/Start.js.map +1 -0
  133. package/dist/StartApp.d.ts +13 -0
  134. package/dist/StartApp.d.ts.map +1 -0
  135. package/dist/StartApp.js +4 -0
  136. package/dist/StartApp.js.map +1 -0
  137. package/dist/StreamExtra.d.ts +29 -0
  138. package/dist/StreamExtra.d.ts.map +1 -0
  139. package/dist/StreamExtra.js +101 -0
  140. package/dist/StreamExtra.js.map +1 -0
  141. package/dist/System.d.ts +9 -0
  142. package/dist/System.d.ts.map +1 -0
  143. package/dist/System.js +61 -0
  144. package/dist/System.js.map +1 -0
  145. package/dist/TuplePathPattern.d.ts +10 -0
  146. package/dist/TuplePathPattern.d.ts.map +1 -0
  147. package/dist/TuplePathPattern.js +69 -0
  148. package/dist/TuplePathPattern.js.map +1 -0
  149. package/dist/Unique.d.ts +68 -0
  150. package/dist/Unique.d.ts.map +1 -0
  151. package/dist/Unique.js +225 -0
  152. package/dist/Unique.js.map +1 -0
  153. package/dist/Values.d.ts +30 -0
  154. package/dist/Values.d.ts.map +1 -0
  155. package/dist/Values.js +46 -0
  156. package/dist/Values.js.map +1 -0
  157. package/dist/bun/BunBundle.d.ts +12 -0
  158. package/dist/bun/BunBundle.d.ts.map +1 -0
  159. package/dist/bun/BunBundle.js +138 -0
  160. package/dist/bun/BunBundle.js.map +1 -0
  161. package/dist/bun/BunChildProcessSpawner.d.ts +4 -0
  162. package/dist/bun/BunChildProcessSpawner.d.ts.map +1 -0
  163. package/dist/bun/BunChildProcessSpawner.js +99 -0
  164. package/dist/bun/BunChildProcessSpawner.js.map +1 -0
  165. package/dist/bun/BunImportTrackerPlugin.d.ts +14 -0
  166. package/dist/bun/BunImportTrackerPlugin.d.ts.map +1 -0
  167. package/dist/bun/BunImportTrackerPlugin.js +70 -0
  168. package/dist/bun/BunImportTrackerPlugin.js.map +1 -0
  169. package/dist/bun/BunRoute.d.ts +49 -0
  170. package/dist/bun/BunRoute.d.ts.map +1 -0
  171. package/dist/bun/BunRoute.js +122 -0
  172. package/dist/bun/BunRoute.js.map +1 -0
  173. package/dist/bun/BunRuntime.d.ts +3 -0
  174. package/dist/bun/BunRuntime.d.ts.map +1 -0
  175. package/dist/bun/BunRuntime.js +30 -0
  176. package/dist/bun/BunRuntime.js.map +1 -0
  177. package/dist/bun/BunServer.d.ts +52 -0
  178. package/dist/bun/BunServer.d.ts.map +1 -0
  179. package/dist/bun/BunServer.js +262 -0
  180. package/dist/bun/BunServer.js.map +1 -0
  181. package/dist/bun/BunVirtualFilesPlugin.d.ts +5 -0
  182. package/dist/bun/BunVirtualFilesPlugin.d.ts.map +1 -0
  183. package/dist/bun/BunVirtualFilesPlugin.js +41 -0
  184. package/dist/bun/BunVirtualFilesPlugin.js.map +1 -0
  185. package/dist/bun/_BunEnhancedResolve.d.ts +46 -0
  186. package/dist/bun/_BunEnhancedResolve.d.ts.map +1 -0
  187. package/dist/bun/_BunEnhancedResolve.js +103 -0
  188. package/dist/bun/_BunEnhancedResolve.js.map +1 -0
  189. package/dist/bun/index.d.ts +6 -0
  190. package/dist/bun/index.d.ts.map +1 -0
  191. package/dist/bun/index.js +6 -0
  192. package/dist/bun/index.js.map +1 -0
  193. package/dist/bundler/Bundle.d.ts +62 -0
  194. package/dist/bundler/Bundle.d.ts.map +1 -0
  195. package/dist/bundler/Bundle.js +49 -0
  196. package/dist/bundler/Bundle.js.map +1 -0
  197. package/dist/bundler/BundleFiles.d.ts +14 -0
  198. package/dist/bundler/BundleFiles.d.ts.map +1 -0
  199. package/dist/bundler/BundleFiles.js +97 -0
  200. package/dist/bundler/BundleFiles.js.map +1 -0
  201. package/dist/bundler/BundleRoute.d.ts +27 -0
  202. package/dist/bundler/BundleRoute.d.ts.map +1 -0
  203. package/dist/bundler/BundleRoute.js +52 -0
  204. package/dist/bundler/BundleRoute.js.map +1 -0
  205. package/dist/client/Overlay.d.ts +3 -0
  206. package/dist/client/Overlay.d.ts.map +1 -0
  207. package/dist/client/Overlay.js +33 -0
  208. package/dist/client/Overlay.js.map +1 -0
  209. package/dist/client/ScrollState.d.ts +7 -0
  210. package/dist/client/ScrollState.d.ts.map +1 -0
  211. package/dist/client/ScrollState.js +95 -0
  212. package/dist/client/ScrollState.js.map +1 -0
  213. package/dist/client/index.d.ts +7 -0
  214. package/dist/client/index.d.ts.map +1 -0
  215. package/dist/client/index.js +80 -0
  216. package/dist/client/index.js.map +1 -0
  217. package/dist/datastar/actions/fetch.d.ts +31 -0
  218. package/dist/datastar/actions/fetch.d.ts.map +1 -0
  219. package/dist/datastar/actions/fetch.js +404 -0
  220. package/dist/datastar/actions/fetch.js.map +1 -0
  221. package/dist/datastar/actions/peek.d.ts +2 -0
  222. package/dist/datastar/actions/peek.d.ts.map +1 -0
  223. package/dist/datastar/actions/peek.js +14 -0
  224. package/dist/datastar/actions/peek.js.map +1 -0
  225. package/dist/datastar/actions/setAll.d.ts +2 -0
  226. package/dist/datastar/actions/setAll.d.ts.map +1 -0
  227. package/dist/datastar/actions/setAll.js +13 -0
  228. package/dist/datastar/actions/setAll.js.map +1 -0
  229. package/dist/datastar/actions/toggleAll.d.ts +2 -0
  230. package/dist/datastar/actions/toggleAll.d.ts.map +1 -0
  231. package/dist/datastar/actions/toggleAll.js +13 -0
  232. package/dist/datastar/actions/toggleAll.js.map +1 -0
  233. package/dist/datastar/attributes/attr.d.ts +2 -0
  234. package/dist/datastar/attributes/attr.d.ts.map +1 -0
  235. package/dist/datastar/attributes/attr.js +49 -0
  236. package/dist/datastar/attributes/attr.js.map +1 -0
  237. package/dist/datastar/attributes/bind.d.ts +2 -0
  238. package/dist/datastar/attributes/bind.d.ts.map +1 -0
  239. package/dist/datastar/attributes/bind.js +176 -0
  240. package/dist/datastar/attributes/bind.js.map +1 -0
  241. package/dist/datastar/attributes/class.d.ts +2 -0
  242. package/dist/datastar/attributes/class.d.ts.map +1 -0
  243. package/dist/datastar/attributes/class.js +48 -0
  244. package/dist/datastar/attributes/class.js.map +1 -0
  245. package/dist/datastar/attributes/computed.d.ts +2 -0
  246. package/dist/datastar/attributes/computed.d.ts.map +1 -0
  247. package/dist/datastar/attributes/computed.js +27 -0
  248. package/dist/datastar/attributes/computed.js.map +1 -0
  249. package/dist/datastar/attributes/effect.d.ts +2 -0
  250. package/dist/datastar/attributes/effect.d.ts.map +1 -0
  251. package/dist/datastar/attributes/effect.js +10 -0
  252. package/dist/datastar/attributes/effect.js.map +1 -0
  253. package/dist/datastar/attributes/indicator.d.ts +2 -0
  254. package/dist/datastar/attributes/indicator.d.ts.map +1 -0
  255. package/dist/datastar/attributes/indicator.js +31 -0
  256. package/dist/datastar/attributes/indicator.js.map +1 -0
  257. package/dist/datastar/attributes/init.d.ts +2 -0
  258. package/dist/datastar/attributes/init.d.ts.map +1 -0
  259. package/dist/datastar/attributes/init.js +27 -0
  260. package/dist/datastar/attributes/init.js.map +1 -0
  261. package/dist/datastar/attributes/jsonSignals.d.ts +2 -0
  262. package/dist/datastar/attributes/jsonSignals.d.ts.map +1 -0
  263. package/dist/datastar/attributes/jsonSignals.js +31 -0
  264. package/dist/datastar/attributes/jsonSignals.js.map +1 -0
  265. package/dist/datastar/attributes/on.d.ts +2 -0
  266. package/dist/datastar/attributes/on.d.ts.map +1 -0
  267. package/dist/datastar/attributes/on.js +79 -0
  268. package/dist/datastar/attributes/on.js.map +1 -0
  269. package/dist/datastar/attributes/onIntersect.d.ts +2 -0
  270. package/dist/datastar/attributes/onIntersect.d.ts.map +1 -0
  271. package/dist/datastar/attributes/onIntersect.js +54 -0
  272. package/dist/datastar/attributes/onIntersect.js.map +1 -0
  273. package/dist/datastar/attributes/onInterval.d.ts +2 -0
  274. package/dist/datastar/attributes/onInterval.d.ts.map +1 -0
  275. package/dist/datastar/attributes/onInterval.js +31 -0
  276. package/dist/datastar/attributes/onInterval.js.map +1 -0
  277. package/dist/datastar/attributes/onSignalPatch.d.ts +2 -0
  278. package/dist/datastar/attributes/onSignalPatch.d.ts.map +1 -0
  279. package/dist/datastar/attributes/onSignalPatch.js +43 -0
  280. package/dist/datastar/attributes/onSignalPatch.js.map +1 -0
  281. package/dist/datastar/attributes/ref.d.ts +2 -0
  282. package/dist/datastar/attributes/ref.d.ts.map +1 -0
  283. package/dist/datastar/attributes/ref.js +11 -0
  284. package/dist/datastar/attributes/ref.js.map +1 -0
  285. package/dist/datastar/attributes/show.d.ts +2 -0
  286. package/dist/datastar/attributes/show.d.ts.map +1 -0
  287. package/dist/datastar/attributes/show.js +32 -0
  288. package/dist/datastar/attributes/show.js.map +1 -0
  289. package/dist/datastar/attributes/signals.d.ts +2 -0
  290. package/dist/datastar/attributes/signals.d.ts.map +1 -0
  291. package/dist/datastar/attributes/signals.js +18 -0
  292. package/dist/datastar/attributes/signals.js.map +1 -0
  293. package/dist/datastar/attributes/style.d.ts +2 -0
  294. package/dist/datastar/attributes/style.d.ts.map +1 -0
  295. package/dist/datastar/attributes/style.js +51 -0
  296. package/dist/datastar/attributes/style.js.map +1 -0
  297. package/dist/datastar/attributes/text.d.ts +2 -0
  298. package/dist/datastar/attributes/text.d.ts.map +1 -0
  299. package/dist/datastar/attributes/text.js +27 -0
  300. package/dist/datastar/attributes/text.js.map +1 -0
  301. package/dist/datastar/engine.d.ts +163 -0
  302. package/dist/datastar/engine.d.ts.map +1 -0
  303. package/dist/datastar/engine.js +1000 -0
  304. package/dist/datastar/engine.js.map +1 -0
  305. package/dist/datastar/index.d.ts +25 -0
  306. package/dist/datastar/index.d.ts.map +1 -0
  307. package/dist/datastar/index.js +25 -0
  308. package/dist/datastar/index.js.map +1 -0
  309. package/dist/datastar/utils.d.ts +52 -0
  310. package/dist/datastar/utils.d.ts.map +1 -0
  311. package/dist/datastar/utils.js +203 -0
  312. package/dist/datastar/utils.js.map +1 -0
  313. package/dist/datastar/watchers/patchElements.d.ts +2 -0
  314. package/dist/datastar/watchers/patchElements.d.ts.map +1 -0
  315. package/dist/datastar/watchers/patchElements.js +398 -0
  316. package/dist/datastar/watchers/patchElements.js.map +1 -0
  317. package/dist/datastar/watchers/patchSignals.d.ts +2 -0
  318. package/dist/datastar/watchers/patchSignals.d.ts.map +1 -0
  319. package/dist/datastar/watchers/patchSignals.js +15 -0
  320. package/dist/datastar/watchers/patchSignals.js.map +1 -0
  321. package/dist/experimental/EncryptedCookies.d.ts +49 -0
  322. package/dist/experimental/EncryptedCookies.d.ts.map +1 -0
  323. package/dist/experimental/EncryptedCookies.js +213 -0
  324. package/dist/experimental/EncryptedCookies.js.map +1 -0
  325. package/dist/experimental/index.d.ts +2 -0
  326. package/dist/experimental/index.d.ts.map +1 -0
  327. package/dist/experimental/index.js +2 -0
  328. package/dist/experimental/index.js.map +1 -0
  329. package/dist/hyper/Hyper.d.ts +26 -0
  330. package/dist/hyper/Hyper.d.ts.map +1 -0
  331. package/dist/hyper/Hyper.js +24 -0
  332. package/dist/hyper/Hyper.js.map +1 -0
  333. package/dist/hyper/HyperHtml.d.ts +24 -0
  334. package/dist/hyper/HyperHtml.d.ts.map +1 -0
  335. package/dist/hyper/HyperHtml.js +153 -0
  336. package/dist/hyper/HyperHtml.js.map +1 -0
  337. package/dist/hyper/HyperHtml.test.d.ts +2 -0
  338. package/dist/hyper/HyperHtml.test.d.ts.map +1 -0
  339. package/dist/hyper/HyperHtml.test.js +283 -0
  340. package/dist/hyper/HyperHtml.test.js.map +1 -0
  341. package/dist/hyper/HyperNode.d.ts +15 -0
  342. package/dist/hyper/HyperNode.d.ts.map +1 -0
  343. package/dist/hyper/HyperNode.js +12 -0
  344. package/dist/hyper/HyperNode.js.map +1 -0
  345. package/dist/hyper/HyperRoute.d.ts +9 -0
  346. package/dist/hyper/HyperRoute.d.ts.map +1 -0
  347. package/dist/hyper/HyperRoute.js +33 -0
  348. package/dist/hyper/HyperRoute.js.map +1 -0
  349. package/dist/hyper/HyperRoute.test.d.ts +2 -0
  350. package/dist/hyper/HyperRoute.test.d.ts.map +1 -0
  351. package/dist/hyper/HyperRoute.test.js +86 -0
  352. package/dist/hyper/HyperRoute.test.js.map +1 -0
  353. package/dist/hyper/html.d.ts +11 -0
  354. package/dist/hyper/html.d.ts.map +1 -0
  355. package/dist/hyper/html.js +31 -0
  356. package/dist/hyper/html.js.map +1 -0
  357. package/dist/hyper/index.d.ts +7 -0
  358. package/dist/hyper/index.d.ts.map +1 -0
  359. package/dist/hyper/index.js +6 -0
  360. package/dist/hyper/index.js.map +1 -0
  361. package/dist/hyper/jsx-runtime.d.ts +8 -0
  362. package/dist/hyper/jsx-runtime.d.ts.map +1 -0
  363. package/dist/hyper/jsx-runtime.js +9 -0
  364. package/dist/hyper/jsx-runtime.js.map +1 -0
  365. package/dist/index.d.ts +9 -0
  366. package/dist/index.d.ts.map +1 -0
  367. package/dist/index.js +9 -0
  368. package/dist/index.js.map +1 -0
  369. package/dist/lint/plugin.d.ts +121 -0
  370. package/dist/lint/plugin.d.ts.map +1 -0
  371. package/dist/lint/plugin.js +537 -0
  372. package/dist/lint/plugin.js.map +1 -0
  373. package/dist/node/NodeFileSystem.d.ts +8 -0
  374. package/dist/node/NodeFileSystem.d.ts.map +1 -0
  375. package/dist/node/NodeFileSystem.js +411 -0
  376. package/dist/node/NodeFileSystem.js.map +1 -0
  377. package/dist/node/NodeUtils.d.ts +3 -0
  378. package/dist/node/NodeUtils.d.ts.map +1 -0
  379. package/dist/node/NodeUtils.js +21 -0
  380. package/dist/node/NodeUtils.js.map +1 -0
  381. package/dist/sql/SqlCache.d.ts +18 -0
  382. package/dist/sql/SqlCache.d.ts.map +1 -0
  383. package/dist/sql/SqlCache.js +31 -0
  384. package/dist/sql/SqlCache.js.map +1 -0
  385. package/dist/sql/SqlClient.d.ts +88 -0
  386. package/dist/sql/SqlClient.d.ts.map +1 -0
  387. package/dist/sql/SqlClient.js +171 -0
  388. package/dist/sql/SqlClient.js.map +1 -0
  389. package/dist/sql/bun/index.d.ts +6 -0
  390. package/dist/sql/bun/index.d.ts.map +1 -0
  391. package/dist/sql/bun/index.js +132 -0
  392. package/dist/sql/bun/index.js.map +1 -0
  393. package/dist/sql/index.d.ts +3 -0
  394. package/dist/sql/index.d.ts.map +1 -0
  395. package/dist/sql/index.js +3 -0
  396. package/dist/sql/index.js.map +1 -0
  397. package/dist/sql/libsql/index.d.ts +15 -0
  398. package/dist/sql/libsql/index.d.ts.map +1 -0
  399. package/dist/sql/libsql/index.js +132 -0
  400. package/dist/sql/libsql/index.js.map +1 -0
  401. package/dist/sql/mssql/index.d.ts +8 -0
  402. package/dist/sql/mssql/index.d.ts.map +1 -0
  403. package/dist/sql/mssql/index.js +145 -0
  404. package/dist/sql/mssql/index.js.map +1 -0
  405. package/dist/sql/postgres/index.d.ts +7 -0
  406. package/dist/sql/postgres/index.d.ts.map +1 -0
  407. package/dist/sql/postgres/index.js +136 -0
  408. package/dist/sql/postgres/index.js.map +1 -0
  409. package/dist/testing/TestLogger.d.ts +14 -0
  410. package/dist/testing/TestLogger.d.ts.map +1 -0
  411. package/dist/testing/TestLogger.js +33 -0
  412. package/dist/testing/TestLogger.js.map +1 -0
  413. package/dist/testing/index.d.ts +3 -0
  414. package/dist/testing/index.d.ts.map +1 -0
  415. package/dist/testing/index.js +3 -0
  416. package/dist/testing/index.js.map +1 -0
  417. package/dist/testing/utils.d.ts +10 -0
  418. package/dist/testing/utils.d.ts.map +1 -0
  419. package/dist/testing/utils.js +40 -0
  420. package/dist/testing/utils.js.map +1 -0
  421. package/dist/tower/Simulation.d.ts +3 -0
  422. package/dist/tower/Simulation.d.ts.map +1 -0
  423. package/dist/tower/Simulation.js +606 -0
  424. package/dist/tower/Simulation.js.map +1 -0
  425. package/dist/tower/Tower.d.ts +11 -0
  426. package/dist/tower/Tower.d.ts.map +1 -0
  427. package/dist/tower/Tower.js +30 -0
  428. package/dist/tower/Tower.js.map +1 -0
  429. package/dist/tower/TowerErrors.d.ts +4 -0
  430. package/dist/tower/TowerErrors.d.ts.map +1 -0
  431. package/dist/tower/TowerErrors.js +200 -0
  432. package/dist/tower/TowerErrors.js.map +1 -0
  433. package/dist/tower/TowerLogger.d.ts +2 -0
  434. package/dist/tower/TowerLogger.d.ts.map +1 -0
  435. package/dist/tower/TowerLogger.js +46 -0
  436. package/dist/tower/TowerLogger.js.map +1 -0
  437. package/dist/tower/TowerMetrics.d.ts +4 -0
  438. package/dist/tower/TowerMetrics.d.ts.map +1 -0
  439. package/dist/tower/TowerMetrics.js +62 -0
  440. package/dist/tower/TowerMetrics.js.map +1 -0
  441. package/dist/tower/TowerProcess.d.ts +4 -0
  442. package/dist/tower/TowerProcess.d.ts.map +1 -0
  443. package/dist/tower/TowerProcess.js +50 -0
  444. package/dist/tower/TowerProcess.js.map +1 -0
  445. package/dist/tower/TowerStore.d.ts +199 -0
  446. package/dist/tower/TowerStore.d.ts.map +1 -0
  447. package/dist/tower/TowerStore.js +307 -0
  448. package/dist/tower/TowerStore.js.map +1 -0
  449. package/dist/tower/TowerTracer.d.ts +4 -0
  450. package/dist/tower/TowerTracer.d.ts.map +1 -0
  451. package/dist/tower/TowerTracer.js +111 -0
  452. package/dist/tower/TowerTracer.js.map +1 -0
  453. package/dist/tower/index.d.ts +4 -0
  454. package/dist/tower/index.d.ts.map +1 -0
  455. package/dist/tower/index.js +4 -0
  456. package/dist/tower/index.js.map +1 -0
  457. package/dist/tower/routes/errors/route.d.ts +11 -0
  458. package/dist/tower/routes/errors/route.d.ts.map +1 -0
  459. package/dist/tower/routes/errors/route.js +47 -0
  460. package/dist/tower/routes/errors/route.js.map +1 -0
  461. package/dist/tower/routes/fiberDetail.d.ts +17 -0
  462. package/dist/tower/routes/fiberDetail.d.ts.map +1 -0
  463. package/dist/tower/routes/fiberDetail.js +35 -0
  464. package/dist/tower/routes/fiberDetail.js.map +1 -0
  465. package/dist/tower/routes/fibers/route.d.ts +11 -0
  466. package/dist/tower/routes/fibers/route.d.ts.map +1 -0
  467. package/dist/tower/routes/fibers/route.js +27 -0
  468. package/dist/tower/routes/fibers/route.js.map +1 -0
  469. package/dist/tower/routes/layout.d.ts +10 -0
  470. package/dist/tower/routes/layout.d.ts.map +1 -0
  471. package/dist/tower/routes/layout.js +4 -0
  472. package/dist/tower/routes/layout.js.map +1 -0
  473. package/dist/tower/routes/logs/route.d.ts +11 -0
  474. package/dist/tower/routes/logs/route.d.ts.map +1 -0
  475. package/dist/tower/routes/logs/route.js +36 -0
  476. package/dist/tower/routes/logs/route.js.map +1 -0
  477. package/dist/tower/routes/metrics/route.d.ts +11 -0
  478. package/dist/tower/routes/metrics/route.d.ts.map +1 -0
  479. package/dist/tower/routes/metrics/route.js +20 -0
  480. package/dist/tower/routes/metrics/route.js.map +1 -0
  481. package/dist/tower/routes/route.d.ts +7 -0
  482. package/dist/tower/routes/route.d.ts.map +1 -0
  483. package/dist/tower/routes/route.js +6 -0
  484. package/dist/tower/routes/route.js.map +1 -0
  485. package/dist/tower/routes/routes/route.d.ts +7 -0
  486. package/dist/tower/routes/routes/route.d.ts.map +1 -0
  487. package/dist/tower/routes/routes/route.js +23 -0
  488. package/dist/tower/routes/routes/route.js.map +1 -0
  489. package/dist/tower/routes/services/route.d.ts +7 -0
  490. package/dist/tower/routes/services/route.d.ts.map +1 -0
  491. package/dist/tower/routes/services/route.js +15 -0
  492. package/dist/tower/routes/services/route.js.map +1 -0
  493. package/dist/tower/routes/system/route.d.ts +11 -0
  494. package/dist/tower/routes/system/route.d.ts.map +1 -0
  495. package/dist/tower/routes/system/route.js +21 -0
  496. package/dist/tower/routes/system/route.js.map +1 -0
  497. package/dist/tower/routes/traceDetail.d.ts +17 -0
  498. package/dist/tower/routes/traceDetail.d.ts.map +1 -0
  499. package/dist/tower/routes/traceDetail.js +20 -0
  500. package/dist/tower/routes/traceDetail.js.map +1 -0
  501. package/dist/tower/routes/traces/route.d.ts +11 -0
  502. package/dist/tower/routes/traces/route.d.ts.map +1 -0
  503. package/dist/tower/routes/traces/route.js +36 -0
  504. package/dist/tower/routes/traces/route.js.map +1 -0
  505. package/dist/tower/routes/tree.d.ts +142 -0
  506. package/dist/tower/routes/tree.d.ts.map +1 -0
  507. package/dist/tower/routes/tree.js +28 -0
  508. package/dist/tower/routes/tree.js.map +1 -0
  509. package/dist/tower/ui/Errors.d.ts +5 -0
  510. package/dist/tower/ui/Errors.d.ts.map +1 -0
  511. package/dist/tower/ui/Errors.js +30 -0
  512. package/dist/tower/ui/Errors.js.map +1 -0
  513. package/dist/tower/ui/Fibers.d.ts +25 -0
  514. package/dist/tower/ui/Fibers.d.ts.map +1 -0
  515. package/dist/tower/ui/Fibers.js +157 -0
  516. package/dist/tower/ui/Fibers.js.map +1 -0
  517. package/dist/tower/ui/Logs.d.ts +5 -0
  518. package/dist/tower/ui/Logs.d.ts.map +1 -0
  519. package/dist/tower/ui/Logs.js +28 -0
  520. package/dist/tower/ui/Logs.js.map +1 -0
  521. package/dist/tower/ui/Metrics.d.ts +5 -0
  522. package/dist/tower/ui/Metrics.d.ts.map +1 -0
  523. package/dist/tower/ui/Metrics.js +34 -0
  524. package/dist/tower/ui/Metrics.js.map +1 -0
  525. package/dist/tower/ui/Routes.d.ts +9 -0
  526. package/dist/tower/ui/Routes.d.ts.map +1 -0
  527. package/dist/tower/ui/Routes.js +79 -0
  528. package/dist/tower/ui/Routes.js.map +1 -0
  529. package/dist/tower/ui/Services.d.ts +11 -0
  530. package/dist/tower/ui/Services.d.ts.map +1 -0
  531. package/dist/tower/ui/Services.js +254 -0
  532. package/dist/tower/ui/Services.js.map +1 -0
  533. package/dist/tower/ui/Shell.d.ts +11 -0
  534. package/dist/tower/ui/Shell.d.ts.map +1 -0
  535. package/dist/tower/ui/Shell.js +12 -0
  536. package/dist/tower/ui/Shell.js.map +1 -0
  537. package/dist/tower/ui/System.d.ts +5 -0
  538. package/dist/tower/ui/System.d.ts.map +1 -0
  539. package/dist/tower/ui/System.js +65 -0
  540. package/dist/tower/ui/System.js.map +1 -0
  541. package/dist/tower/ui/Traces.d.ts +13 -0
  542. package/dist/tower/ui/Traces.d.ts.map +1 -0
  543. package/dist/tower/ui/Traces.js +219 -0
  544. package/dist/tower/ui/Traces.js.map +1 -0
  545. package/dist/x/cloudflare/CloudflareTunnel.d.ts +11 -0
  546. package/dist/x/cloudflare/CloudflareTunnel.d.ts.map +1 -0
  547. package/dist/x/cloudflare/CloudflareTunnel.js +31 -0
  548. package/dist/x/cloudflare/CloudflareTunnel.js.map +1 -0
  549. package/dist/x/cloudflare/index.d.ts +2 -0
  550. package/dist/x/cloudflare/index.d.ts.map +1 -0
  551. package/dist/x/cloudflare/index.js +2 -0
  552. package/dist/x/cloudflare/index.js.map +1 -0
  553. package/dist/x/tailscale/TailscaleTunnel.d.ts +16 -0
  554. package/dist/x/tailscale/TailscaleTunnel.d.ts.map +1 -0
  555. package/dist/x/tailscale/TailscaleTunnel.js +66 -0
  556. package/dist/x/tailscale/TailscaleTunnel.js.map +1 -0
  557. package/dist/x/tailscale/index.d.ts +2 -0
  558. package/dist/x/tailscale/index.d.ts.map +1 -0
  559. package/dist/x/tailscale/index.js +2 -0
  560. package/dist/x/tailscale/index.js.map +1 -0
  561. package/dist/x/tailwind/TailwindPlugin.d.ts +24 -0
  562. package/dist/x/tailwind/TailwindPlugin.d.ts.map +1 -0
  563. package/dist/x/tailwind/TailwindPlugin.js +220 -0
  564. package/dist/x/tailwind/TailwindPlugin.js.map +1 -0
  565. package/dist/x/tailwind/compile.d.ts +20 -0
  566. package/dist/x/tailwind/compile.d.ts.map +1 -0
  567. package/dist/x/tailwind/compile.js +155 -0
  568. package/dist/x/tailwind/compile.js.map +1 -0
  569. package/dist/x/tailwind/plugin.d.ts +3 -0
  570. package/dist/x/tailwind/plugin.d.ts.map +1 -0
  571. package/dist/x/tailwind/plugin.js +16 -0
  572. package/dist/x/tailwind/plugin.js.map +1 -0
  573. package/package.json +104 -21
  574. package/src/ChildProcess.ts +3 -6
  575. package/src/Docker.ts +190 -0
  576. package/src/Effectify.ts +7 -10
  577. package/src/Entity.ts +6 -6
  578. package/src/FileRouterCodegen.ts +4 -4
  579. package/src/FileSystem.ts +4 -11
  580. package/src/GlobalLayer.ts +85 -0
  581. package/src/PlatformRuntime.ts +8 -1
  582. package/src/RouteHook.ts +2 -2
  583. package/src/RouteSse.ts +3 -3
  584. package/src/SqlIntrospect.ts +13 -11
  585. package/src/Start.ts +112 -1
  586. package/src/System.ts +60 -3
  587. package/src/Unique.ts +59 -0
  588. package/src/Values.ts +11 -0
  589. package/src/bun/BunChildProcessSpawner.ts +1 -8
  590. package/src/bun/BunRoute.ts +2 -1
  591. package/src/bun/BunRuntime.ts +6 -12
  592. package/src/bun/BunServer.ts +54 -2
  593. package/src/datastar/watchers/patchElements.ts +0 -1
  594. package/src/hyper/HyperHtml.ts +11 -7
  595. package/src/hyper/jsx.d.ts +1 -1
  596. package/src/lint/plugin.js +239 -4
  597. package/src/sql/SqlCache.ts +50 -0
  598. package/src/sql/SqlClient.ts +400 -0
  599. package/src/sql/bun/index.ts +126 -57
  600. package/src/sql/index.ts +2 -1
  601. package/src/sql/libsql/index.ts +133 -85
  602. package/src/sql/libsql/libsql.d.ts +4 -1
  603. package/src/sql/mssql/index.ts +149 -120
  604. package/src/sql/mssql/mssql.d.ts +1 -0
  605. package/src/sql/postgres/index.ts +254 -0
  606. package/src/testing/TestLogger.ts +4 -4
  607. package/src/{console → tower}/Simulation.ts +10 -48
  608. package/src/tower/Tower.ts +47 -0
  609. package/src/{console/ConsoleErrors.ts → tower/TowerErrors.ts} +34 -23
  610. package/src/tower/TowerLogger.ts +52 -0
  611. package/src/{console/ConsoleMetrics.ts → tower/TowerMetrics.ts} +5 -5
  612. package/src/{console/ConsoleProcess.ts → tower/TowerProcess.ts} +4 -4
  613. package/src/tower/TowerStore.ts +505 -0
  614. package/src/tower/TowerTracer.ts +128 -0
  615. package/src/tower/index.ts +3 -0
  616. package/src/{console → tower}/routes/errors/route.tsx +26 -33
  617. package/src/{console → tower}/routes/fiberDetail.tsx +12 -15
  618. package/src/tower/routes/fibers/route.tsx +46 -0
  619. package/src/{console/console.html → tower/routes/layout.html} +1 -1
  620. package/src/{console → tower}/routes/layout.tsx +1 -1
  621. package/src/{console → tower}/routes/logs/route.tsx +12 -16
  622. package/src/{console → tower}/routes/metrics/route.tsx +5 -5
  623. package/src/tower/routes/route.tsx +8 -0
  624. package/src/{console → tower}/routes/routes/route.tsx +2 -2
  625. package/src/{console → tower}/routes/services/route.tsx +2 -2
  626. package/src/{console → tower}/routes/system/route.tsx +5 -5
  627. package/src/tower/routes/traceDetail.tsx +30 -0
  628. package/src/{console → tower}/routes/traces/route.tsx +25 -34
  629. package/src/{console → tower}/routes/tree.ts +0 -2
  630. package/src/{console → tower}/ui/Errors.tsx +19 -15
  631. package/src/{console → tower}/ui/Fibers.tsx +83 -68
  632. package/src/{console → tower}/ui/Logs.tsx +20 -16
  633. package/src/{console → tower}/ui/Metrics.tsx +18 -18
  634. package/src/{console → tower}/ui/Routes.tsx +14 -14
  635. package/src/{console → tower}/ui/Services.tsx +9 -9
  636. package/src/tower/ui/Shell.tsx +74 -0
  637. package/src/{console → tower}/ui/System.tsx +40 -30
  638. package/src/{console → tower}/ui/Traces.tsx +73 -80
  639. package/src/x/cloudflare/CloudflareTunnel.ts +1 -1
  640. package/src/x/tailscale/TailscaleTunnel.ts +3 -3
  641. package/src/x/tailwind/compile.ts +11 -14
  642. package/src/console/Console.ts +0 -42
  643. package/src/console/ConsoleLogger.ts +0 -56
  644. package/src/console/ConsoleStore.ts +0 -187
  645. package/src/console/ConsoleTracer.ts +0 -107
  646. package/src/console/index.ts +0 -3
  647. package/src/console/routes/fibers/route.tsx +0 -45
  648. package/src/console/routes/git/route.tsx +0 -64
  649. package/src/console/routes/route.tsx +0 -8
  650. package/src/console/routes/traceDetail.tsx +0 -22
  651. package/src/console/ui/Git.tsx +0 -182
  652. package/src/console/ui/Shell.tsx +0 -62
  653. package/src/sql/Sql.ts +0 -51
  654. package/src/sql/mssql/docker.ts +0 -117
@@ -1,42 +0,0 @@
1
- import * as Effect from "effect/Effect"
2
- import * as Layer from "effect/Layer"
3
- import * as Route from "../Route.ts"
4
- import * as RouteTree from "../RouteTree.ts"
5
- import * as ConsoleErrors from "./ConsoleErrors.ts"
6
- import * as ConsoleLogger from "./ConsoleLogger.ts"
7
- import * as ConsoleMetrics from "./ConsoleMetrics.ts"
8
- import * as ConsoleProcess from "./ConsoleProcess.ts"
9
- import * as ConsoleStore from "./ConsoleStore.ts"
10
- import * as ConsoleTracer from "./ConsoleTracer.ts"
11
- import consoleRoutes from "./routes/tree.ts"
12
-
13
- export { ConsoleStore } from "./ConsoleStore.ts"
14
-
15
- export function layer(
16
- options?: ConsoleStore.ConsoleStoreOptions,
17
- ): Layer.Layer<ConsoleStore.ConsoleStore> {
18
- const store = ConsoleStore.layer(options)
19
- return Layer.mergeAll(
20
- ConsoleTracer.layer,
21
- ConsoleLogger.layer,
22
- ConsoleMetrics.layer,
23
- ConsoleErrors.layer,
24
- ConsoleProcess.layer,
25
- ).pipe(Layer.provideMerge(store))
26
- }
27
-
28
- export function routeLayer(
29
- prefix: string,
30
- ): Layer.Layer<Route.Routes, never, Route.Routes | ConsoleStore.ConsoleStore> {
31
- return Layer.effect(
32
- Route.Routes,
33
- Effect.gen(function* () {
34
- const existing = yield* Route.Routes
35
- ConsoleStore.store.prefix = prefix
36
- const tree = Route.tree({
37
- [prefix as "/"]: consoleRoutes,
38
- })
39
- return RouteTree.merge(existing, tree)
40
- }),
41
- )
42
- }
@@ -1,56 +0,0 @@
1
- import * as Cause from "effect/Cause"
2
- import * as Effect from "effect/Effect"
3
- import * as FiberId from "effect/FiberId"
4
- import * as FiberRef from "effect/FiberRef"
5
- import * as HashMap from "effect/HashMap"
6
- import * as HashSet from "effect/HashSet"
7
- import * as Layer from "effect/Layer"
8
- import * as List from "effect/List"
9
- import * as Logger from "effect/Logger"
10
- import * as PubSub from "effect/PubSub"
11
- import * as ConsoleStore from "./ConsoleStore.ts"
12
-
13
- let logId = 0
14
-
15
- export const layer: Layer.Layer<never, never, ConsoleStore.ConsoleStore> = Layer.effectDiscard(
16
- Effect.gen(function* () {
17
- const store = yield* ConsoleStore.ConsoleStore
18
-
19
- const logger = Logger.make(
20
- ({ message, logLevel, cause, fiberId, spans, annotations, date }) => {
21
- const levelMap: Record<string, ConsoleStore.ConsoleLog["level"]> = {
22
- Debug: "DEBUG",
23
- Info: "INFO",
24
- Warning: "WARNING",
25
- Error: "ERROR",
26
- Fatal: "FATAL",
27
- }
28
- const level = levelMap[logLevel._tag] ?? "INFO"
29
- const causeStr = !Cause.isEmpty(cause)
30
- ? Cause.pretty(cause, { renderErrorCause: true })
31
- : undefined
32
- const spanNames: Array<string> = []
33
- List.forEach(spans, (s) => spanNames.push(s.label))
34
- const ann: Record<string, unknown> = {}
35
- HashMap.forEach(annotations, (v, k) => {
36
- ann[k] = v
37
- })
38
-
39
- const log: ConsoleStore.ConsoleLog = {
40
- id: String(++logId),
41
- date,
42
- level,
43
- message: String(message),
44
- fiberId: FiberId.threadName(fiberId),
45
- cause: causeStr,
46
- spans: spanNames,
47
- annotations: ann,
48
- }
49
- store.logs.push(log)
50
- Effect.runSync(PubSub.publish(store.events, { _tag: "Log", log }))
51
- },
52
- )
53
-
54
- yield* FiberRef.update(FiberRef.currentLoggers, (loggers) => HashSet.add(loggers, logger))
55
- }),
56
- )
@@ -1,187 +0,0 @@
1
- import * as Context from "effect/Context"
2
- import * as Effect from "effect/Effect"
3
- import * as GlobalValue from "effect/GlobalValue"
4
- import * as Layer from "effect/Layer"
5
- import * as MutableRef from "effect/MutableRef"
6
- import * as PubSub from "effect/PubSub"
7
-
8
- export const store: ConsoleStoreShape = GlobalValue.globalValue(
9
- Symbol.for("effect-start/ConsoleStore"),
10
- () => ({
11
- prefix: "/console",
12
- spans: new CircularBuffer<ConsoleSpan>(1000),
13
- logs: new CircularBuffer<ConsoleLog>(5000),
14
- errors: new CircularBuffer<ConsoleError>(1000),
15
- metrics: [] as Array<ConsoleMetricSnapshot>,
16
- process: undefined as ProcessStats | undefined,
17
- events: Effect.runSync(PubSub.unbounded<ConsoleEvent>()),
18
- fiberParents: new Map<string, string>(),
19
- fiberContexts: new Map<string, FiberContext>(),
20
- }),
21
- )
22
-
23
- export interface ConsoleSpan {
24
- readonly spanId: string
25
- readonly traceId: string
26
- readonly name: string
27
- readonly kind: string
28
- readonly parentSpanId: string | undefined
29
- startTime: bigint
30
- endTime: bigint | undefined
31
- durationMs: number | undefined
32
- status: "started" | "ok" | "error"
33
- readonly attributes: Record<string, unknown>
34
- readonly events: Array<{ name: string; startTime: bigint; attributes?: Record<string, unknown> }>
35
- }
36
-
37
- export interface ConsoleLog {
38
- readonly id: string
39
- readonly date: Date
40
- readonly level: "DEBUG" | "INFO" | "WARNING" | "ERROR" | "FATAL"
41
- readonly message: string
42
- readonly fiberId: string
43
- readonly cause: string | undefined
44
- readonly spans: Array<string>
45
- readonly annotations: Record<string, unknown>
46
- }
47
-
48
- export interface ProcessStats {
49
- readonly pid: number
50
- readonly uptime: number
51
- readonly memory: {
52
- readonly rss: number
53
- readonly heapUsed: number
54
- readonly heapTotal: number
55
- readonly external: number
56
- readonly arrayBuffers: number
57
- }
58
- readonly cpu: { readonly user: number; readonly system: number }
59
- readonly resourceUsage: {
60
- readonly maxRSS: number
61
- readonly minorPageFault: number
62
- readonly majorPageFault: number
63
- readonly fsRead: number
64
- readonly fsWrite: number
65
- readonly voluntaryContextSwitches: number
66
- readonly involuntaryContextSwitches: number
67
- }
68
- readonly system: {
69
- readonly loadavg: readonly [number, number, number]
70
- readonly freemem: number
71
- readonly totalmem: number
72
- readonly cpuCount: number
73
- readonly platform: string
74
- readonly arch: string
75
- }
76
- }
77
-
78
- export interface ConsoleErrorDetail {
79
- readonly kind: "fail" | "die"
80
- readonly tag: string | undefined
81
- readonly message: string
82
- readonly properties: Record<string, unknown>
83
- readonly span: string | undefined
84
- }
85
-
86
- export interface ConsoleError {
87
- readonly id: string
88
- readonly date: Date
89
- readonly fiberId: string
90
- readonly interrupted: boolean
91
- readonly prettyPrint: string
92
- readonly details: Array<ConsoleErrorDetail>
93
- }
94
-
95
- export interface ConsoleMetricSnapshot {
96
- readonly name: string
97
- readonly type: "counter" | "gauge" | "histogram" | "summary" | "frequency"
98
- readonly value: unknown
99
- readonly tags: ReadonlyArray<{ key: string; value: string }>
100
- readonly timestamp: number
101
- }
102
-
103
- export type ConsoleEvent =
104
- | { readonly _tag: "SpanStart"; readonly span: ConsoleSpan }
105
- | { readonly _tag: "SpanEnd"; readonly span: ConsoleSpan }
106
- | { readonly _tag: "Log"; readonly log: ConsoleLog }
107
- | { readonly _tag: "Error"; readonly error: ConsoleError }
108
- | { readonly _tag: "MetricsSnapshot"; readonly metrics: Array<ConsoleMetricSnapshot> }
109
- | { readonly _tag: "ProcessSnapshot"; readonly stats: ProcessStats }
110
-
111
- export class CircularBuffer<T> {
112
- private buffer: Array<T | undefined>
113
- private head = 0
114
- private count = 0
115
- capacity: number
116
-
117
- constructor(capacity: number) {
118
- this.capacity = capacity
119
- this.buffer = Array.from({ length: capacity })
120
- }
121
-
122
- push(item: T): void {
123
- this.buffer[this.head] = item
124
- this.head = (this.head + 1) % this.capacity
125
- if (this.count < this.capacity) this.count++
126
- }
127
-
128
- toArray(): Array<T> {
129
- if (this.count === 0) return []
130
- const result: Array<T> = []
131
- const start = this.count < this.capacity ? 0 : this.head
132
- for (let i = 0; i < this.count; i++) {
133
- result.push(this.buffer[(start + i) % this.capacity]!)
134
- }
135
- return result
136
- }
137
-
138
- get size(): number {
139
- return this.count
140
- }
141
- }
142
-
143
- export interface FiberContext {
144
- readonly spanName: string | undefined
145
- readonly traceId: string | undefined
146
- readonly annotations: Record<string, unknown>
147
- }
148
-
149
- export interface ConsoleStoreShape {
150
- prefix: string
151
- readonly spans: CircularBuffer<ConsoleSpan>
152
- readonly logs: CircularBuffer<ConsoleLog>
153
- readonly errors: CircularBuffer<ConsoleError>
154
- metrics: Array<ConsoleMetricSnapshot>
155
- process: ProcessStats | undefined
156
- readonly events: PubSub.PubSub<ConsoleEvent>
157
- readonly fiberParents: Map<string, string>
158
- readonly fiberContexts: Map<string, FiberContext>
159
- }
160
-
161
- export function fiberIdCounter(): number {
162
- const counter = GlobalValue.globalValue(Symbol.for("effect/Fiber/Id/_fiberCounter"), () =>
163
- MutableRef.make(0),
164
- )
165
- return MutableRef.get(counter)
166
- }
167
-
168
- export class ConsoleStore extends Context.Tag("effect-start/ConsoleStore")<
169
- ConsoleStore,
170
- ConsoleStoreShape
171
- >() {}
172
-
173
- export interface ConsoleStoreOptions {
174
- readonly spanCapacity?: number
175
- readonly logCapacity?: number
176
- readonly errorCapacity?: number
177
- }
178
-
179
- export function layer(options?: ConsoleStoreOptions): Layer.Layer<ConsoleStore> {
180
- if (options?.spanCapacity)
181
- (store as any).spans = new CircularBuffer<ConsoleSpan>(options.spanCapacity)
182
- if (options?.logCapacity)
183
- (store as any).logs = new CircularBuffer<ConsoleLog>(options.logCapacity)
184
- if (options?.errorCapacity)
185
- (store as any).errors = new CircularBuffer<ConsoleError>(options.errorCapacity)
186
- return Layer.sync(ConsoleStore, () => store)
187
- }
@@ -1,107 +0,0 @@
1
- import * as Effect from "effect/Effect"
2
- import * as Exit from "effect/Exit"
3
- import * as Fiber from "effect/Fiber"
4
- import * as FiberId from "effect/FiberId"
5
- import * as Layer from "effect/Layer"
6
- import * as Option from "effect/Option"
7
- import * as PubSub from "effect/PubSub"
8
- import * as Tracer from "effect/Tracer"
9
- import * as ConsoleStore from "./ConsoleStore.ts"
10
-
11
- const publish = (store: ConsoleStore.ConsoleStoreShape, event: ConsoleStore.ConsoleEvent) =>
12
- Effect.runSync(PubSub.publish(store.events, event))
13
-
14
- const make = (store: ConsoleStore.ConsoleStoreShape): Tracer.Tracer =>
15
- Tracer.make({
16
- span(name, parent, context, links, startTime, kind, options) {
17
- const parentSpanId =
18
- Option.isSome(parent) && parent.value._tag === "Span" ? parent.value.spanId : undefined
19
- const traceId = Option.isSome(parent)
20
- ? parent.value.traceId
21
- : Math.random().toString(36).slice(2) + Math.random().toString(36).slice(2)
22
- const spanId = Math.random().toString(36).slice(2)
23
-
24
- const attributes: Record<string, unknown> = {}
25
- const currentFiber = Fiber.getCurrentFiber()
26
- if (Option.isSome(currentFiber)) {
27
- attributes["fiber.id"] = FiberId.threadName(currentFiber.value.id())
28
- }
29
- if (typeof options?.captureStackTrace === "function") {
30
- const stacktrace = options.captureStackTrace()
31
- if (stacktrace) {
32
- attributes["code.stacktrace"] = stacktrace
33
- }
34
- }
35
-
36
- const consoleSpan: ConsoleStore.ConsoleSpan = {
37
- spanId,
38
- traceId,
39
- name,
40
- kind,
41
- parentSpanId,
42
- startTime,
43
- endTime: undefined,
44
- durationMs: undefined,
45
- status: "started",
46
- attributes,
47
- events: [],
48
- }
49
-
50
- store.spans.push(consoleSpan)
51
- publish(store, { _tag: "SpanStart", span: consoleSpan })
52
-
53
- const attrs = new Map<string, unknown>(Object.entries(attributes))
54
- const spanLinks = [...links]
55
-
56
- const span: Tracer.Span = {
57
- _tag: "Span",
58
- name,
59
- spanId,
60
- traceId,
61
- parent,
62
- context,
63
- get status(): Tracer.SpanStatus {
64
- if (consoleSpan.endTime != null) {
65
- return {
66
- _tag: "Ended",
67
- startTime: consoleSpan.startTime,
68
- endTime: consoleSpan.endTime,
69
- exit: Exit.void,
70
- }
71
- }
72
- return { _tag: "Started", startTime: consoleSpan.startTime }
73
- },
74
- attributes: attrs,
75
- links: spanLinks,
76
- sampled: true,
77
- kind,
78
- end(endTime, exit) {
79
- consoleSpan.endTime = endTime
80
- consoleSpan.durationMs = Number(endTime - consoleSpan.startTime) / 1_000_000
81
- consoleSpan.status = Exit.isSuccess(exit) ? "ok" : "error"
82
- publish(store, { _tag: "SpanEnd", span: consoleSpan })
83
- },
84
- attribute(key, value) {
85
- attrs.set(key, value)
86
- ;(consoleSpan.attributes as Record<string, unknown>)[key] = value
87
- },
88
- event(name, startTime, attributes) {
89
- consoleSpan.events.push({ name, startTime, attributes })
90
- },
91
- addLinks(newLinks) {
92
- spanLinks.push(...newLinks)
93
- },
94
- }
95
- return span
96
- },
97
- context(f) {
98
- return f()
99
- },
100
- })
101
-
102
- export const layer: Layer.Layer<never, never, ConsoleStore.ConsoleStore> = Layer.unwrapEffect(
103
- Effect.gen(function* () {
104
- const store = yield* ConsoleStore.ConsoleStore
105
- return Layer.setTracer(make(store))
106
- }),
107
- )
@@ -1,3 +0,0 @@
1
- export * as Console from "./Console.ts"
2
- export * as ConsoleStore from "./ConsoleStore.ts"
3
- export * as Simulation from "./Simulation.ts"
@@ -1,45 +0,0 @@
1
- import * as Stream from "effect/Stream"
2
- import * as Route from "../../../Route.ts"
3
- import * as HyperHtml from "../../../hyper/HyperHtml.ts"
4
- import * as HyperRoute from "../../../hyper/HyperRoute.ts"
5
- import * as ConsoleStore from "../../ConsoleStore.ts"
6
- import * as Fibers from "../../ui/Fibers.tsx"
7
- import * as Shell from "../../ui/Shell.tsx"
8
-
9
- export default Route.get(
10
- HyperRoute.html(function* () {
11
- const fibers = Fibers.collectFibers(
12
- ConsoleStore.store.logs.toArray(),
13
- ConsoleStore.store.spans.toArray(),
14
- )
15
- return (
16
- <Shell.Shell prefix={ConsoleStore.store.prefix} active="fibers">
17
- <div style="display:flex;flex-direction:column;flex:1;overflow:hidden">
18
- <div class="tab-header">Fibers</div>
19
- <div id="fibers-container" class="tab-body">
20
- <Fibers.FiberList fibers={fibers} prefix={ConsoleStore.store.prefix} />
21
- </div>
22
- <div data-init={`@get('${ConsoleStore.store.prefix}/fibers')`} />
23
- </div>
24
- </Shell.Shell>
25
- )
26
- }),
27
- Route.sse(
28
- Stream.fromPubSub(ConsoleStore.store.events).pipe(
29
- Stream.filter((e) => e._tag === "SpanStart" || e._tag === "SpanEnd" || e._tag === "Log"),
30
- Stream.map(() => {
31
- const fibers = Fibers.collectFibers(
32
- ConsoleStore.store.logs.toArray(),
33
- ConsoleStore.store.spans.toArray(),
34
- )
35
- const html = HyperHtml.renderToString(
36
- <Fibers.FiberList fibers={fibers} prefix={ConsoleStore.store.prefix} />,
37
- ).replace(/\n/g, "")
38
- return {
39
- event: "datastar-patch-elements",
40
- data: `selector #fibers-container\nmode inner\nelements ${html}`,
41
- }
42
- }),
43
- ),
44
- ),
45
- )
@@ -1,64 +0,0 @@
1
- import * as Effect from "effect/Effect"
2
- import * as Schedule from "effect/Schedule"
3
- import * as Stream from "effect/Stream"
4
- import * as ChildProcess from "../../../ChildProcess.ts"
5
- import * as Route from "../../../Route.ts"
6
- import * as HyperHtml from "../../../hyper/HyperHtml.ts"
7
- import * as HyperRoute from "../../../hyper/HyperRoute.ts"
8
- import * as ConsoleStore from "../../ConsoleStore.ts"
9
- import * as Git from "../../ui/Git.tsx"
10
- import * as Shell from "../../ui/Shell.tsx"
11
-
12
- const exec = (args: Array<string>, cwd?: string) =>
13
- Effect.gen(function* () {
14
- const handle = yield* ChildProcess.make("git", args, cwd ? { cwd } : undefined)
15
- return yield* handle.stdout.pipe(Stream.decodeText("utf-8"), Stream.mkString)
16
- }).pipe(Effect.catchAll(() => Effect.succeed("")))
17
-
18
- const gitStatus = exec(["rev-parse", "--show-toplevel"]).pipe(
19
- Effect.flatMap((root) => {
20
- const cwd = root.trim()
21
- return Effect.all(
22
- {
23
- porcelain: exec(["status", "--porcelain=v2", "--branch"], cwd),
24
- tag: exec(["describe", "--tags", "--abbrev=0"], cwd),
25
- tagDistance: exec(["rev-list", "--count", "HEAD", "--not", "--tags"], cwd),
26
- },
27
- { concurrency: "unbounded" },
28
- )
29
- }),
30
- Effect.map(({ porcelain, tag, tagDistance }) =>
31
- Git.parseGitStatus(porcelain, `${tag.trim()}\n${tagDistance.trim()}`),
32
- ),
33
- )
34
-
35
- export default Route.get(
36
- HyperRoute.html(function* () {
37
- const status = yield* gitStatus
38
- return (
39
- <Shell.Shell prefix={ConsoleStore.store.prefix} active="git">
40
- <div class="tab-header">Git</div>
41
- <div id="git-container" class="tab-body">
42
- <Git.GitStatusView status={status} />
43
- </div>
44
- <div data-init={`@get('${ConsoleStore.store.prefix}/git')`} />
45
- </Shell.Shell>
46
- )
47
- }),
48
- Route.sse(
49
- Stream.repeatEffect(
50
- gitStatus.pipe(
51
- Effect.map((status) => {
52
- const html = HyperHtml.renderToString(<Git.GitStatusView status={status} />).replace(
53
- /\n/g,
54
- "",
55
- )
56
- return {
57
- event: "datastar-patch-elements" as const,
58
- data: `selector #git-container\nmode inner\nelements ${html}`,
59
- }
60
- }),
61
- ),
62
- ).pipe(Stream.schedule(Schedule.spaced("2 seconds"))),
63
- ),
64
- )
@@ -1,8 +0,0 @@
1
- import * as Route from "../../Route.ts"
2
- import * as ConsoleStore from "../ConsoleStore.ts"
3
-
4
- export default Route.get(
5
- Route.render(function* () {
6
- return Route.redirect(`${ConsoleStore.store.prefix}/traces`)
7
- }),
8
- )
@@ -1,22 +0,0 @@
1
- import * as Schema from "effect/Schema"
2
- import * as Route from "../../Route.ts"
3
- import * as RouteSchema from "../../RouteSchema.ts"
4
- import * as HyperRoute from "../../hyper/HyperRoute.ts"
5
- import * as ConsoleStore from "../ConsoleStore.ts"
6
- import * as Shell from "../ui/Shell.tsx"
7
- import * as Traces from "../ui/Traces.tsx"
8
-
9
- export default Route.get(
10
- RouteSchema.schemaPathParams(Schema.Struct({ id: Schema.String })),
11
- HyperRoute.html(function* (ctx) {
12
- const allSpans = ConsoleStore.store.spans.toArray()
13
- const groups = Traces.groupByTraceId(allSpans)
14
- const spans = groups.get(ctx.pathParams.id) ?? []
15
-
16
- return (
17
- <Shell.Shell prefix={ConsoleStore.store.prefix} active="traces">
18
- <Traces.TraceDetail prefix={ConsoleStore.store.prefix} spans={spans} />
19
- </Shell.Shell>
20
- )
21
- }),
22
- )