theokit 0.4.0-beta.0 → 0.5.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 (297) hide show
  1. package/dist/{actions-virtual-module-HWNTIEPI.js → actions-virtual-module-IY46EEEX.js} +2 -2
  2. package/dist/{actions-virtual-module-SEIPACG5.js → actions-virtual-module-XNHDNCZ6.js} +2 -2
  3. package/dist/add-2ZFFGGE4.js +0 -0
  4. package/dist/{app-typed-client-ITIYTBXO.js → app-typed-client-OUJO3V5J.js} +10 -5
  5. package/dist/{app-typed-client-62FYBLVJ.js.map → app-typed-client-OUJO3V5J.js.map} +1 -1
  6. package/dist/{app-typed-client-62FYBLVJ.js → app-typed-client-YOMWSA3F.js} +11 -6
  7. package/dist/{app-typed-client-ITIYTBXO.js.map → app-typed-client-YOMWSA3F.js.map} +1 -1
  8. package/dist/audit-log-BQWM5YLG.d.ts +60 -0
  9. package/dist/{aws-lambda-XYCGZH3I.js → aws-lambda-GKSTX6HD.js} +3 -3
  10. package/dist/body-parser-web-MUWBKZ3F.js +70 -0
  11. package/dist/body-parser-web-MUWBKZ3F.js.map +1 -0
  12. package/dist/broadcast-QOQGUNNK.js +0 -0
  13. package/dist/{build-HIGHJQQV.js → build-D4J7XECU.js} +31 -22
  14. package/dist/build-D4J7XECU.js.map +1 -0
  15. package/dist/build-request-body-preview-II2235E6.js +0 -0
  16. package/dist/{bun-K73TQEWC.js → bun-ISHSNFIO.js} +3 -3
  17. package/dist/{check-PZR67OY5.js → check-NXYPLM6M.js} +2 -2
  18. package/dist/{chunk-WZ7CPVQB.js → chunk-27LWMYNK.js} +28 -24
  19. package/dist/chunk-27LWMYNK.js.map +1 -0
  20. package/dist/{chunk-BIGBFZSU.js → chunk-2F4FROEQ.js} +1689 -1521
  21. package/dist/chunk-2F4FROEQ.js.map +1 -0
  22. package/dist/chunk-4HBI7DHP.js +20 -0
  23. package/dist/chunk-4HBI7DHP.js.map +1 -0
  24. package/dist/{chunk-X4JAX2U3.js → chunk-4S2UCILN.js} +180 -125
  25. package/dist/chunk-4S2UCILN.js.map +1 -0
  26. package/dist/{chunk-C52GSJPF.js → chunk-4S6YHNG2.js} +11 -8
  27. package/dist/chunk-4S6YHNG2.js.map +1 -0
  28. package/dist/chunk-5ODOE6EF.js +0 -0
  29. package/dist/{chunk-KJVEJILQ.js → chunk-5PU65T5W.js} +9 -3
  30. package/dist/chunk-5PU65T5W.js.map +1 -0
  31. package/dist/chunk-5QW7IQQU.js +36 -0
  32. package/dist/chunk-5QW7IQQU.js.map +1 -0
  33. package/dist/chunk-5Z2727GV.js +1324 -0
  34. package/dist/chunk-5Z2727GV.js.map +1 -0
  35. package/dist/{chunk-YLBSSEHX.js → chunk-6NEXVBPY.js} +5 -15
  36. package/dist/chunk-6NEXVBPY.js.map +1 -0
  37. package/dist/chunk-7MQOHNHE.js +36 -0
  38. package/dist/chunk-7MQOHNHE.js.map +1 -0
  39. package/dist/{chunk-TPCT3MXV.js → chunk-ABVITXFH.js} +405 -272
  40. package/dist/chunk-ABVITXFH.js.map +1 -0
  41. package/dist/chunk-ASDXVRJD.js +185 -0
  42. package/dist/chunk-ASDXVRJD.js.map +1 -0
  43. package/dist/chunk-B3L3TJVF.js +406 -0
  44. package/dist/chunk-B3L3TJVF.js.map +1 -0
  45. package/dist/{chunk-PB4GR7EP.js → chunk-C3ZZ56YZ.js} +1 -18
  46. package/dist/chunk-C3ZZ56YZ.js.map +1 -0
  47. package/dist/{chunk-O7335ZGH.js → chunk-CG563V5M.js} +5 -3
  48. package/dist/chunk-CG563V5M.js.map +1 -0
  49. package/dist/{chunk-5OFPQK6N.js → chunk-COXLEZCN.js} +2 -1
  50. package/dist/chunk-COXLEZCN.js.map +1 -0
  51. package/dist/{chunk-O4BLVPML.js → chunk-DNMSV3R3.js} +22 -28
  52. package/dist/chunk-DNMSV3R3.js.map +1 -0
  53. package/dist/chunk-E3JH6YUM.js +1 -0
  54. package/dist/chunk-ESC54TAK.js +220 -0
  55. package/dist/chunk-ESC54TAK.js.map +1 -0
  56. package/dist/chunk-FI7MPTJW.js +77 -0
  57. package/dist/chunk-FI7MPTJW.js.map +1 -0
  58. package/dist/chunk-H4J2LECY.js +201 -0
  59. package/dist/chunk-H4J2LECY.js.map +1 -0
  60. package/dist/chunk-IAJ2JVEH.js +256 -0
  61. package/dist/chunk-IAJ2JVEH.js.map +1 -0
  62. package/dist/{chunk-F3TG5FJV.js → chunk-IEZCAT2I.js} +7 -1
  63. package/dist/{chunk-F3TG5FJV.js.map → chunk-IEZCAT2I.js.map} +1 -1
  64. package/dist/chunk-JHEAWR3L.js +1 -0
  65. package/dist/chunk-JQSKBMXP.js +17 -0
  66. package/dist/chunk-JQSKBMXP.js.map +1 -0
  67. package/dist/{chunk-4QTKSLTO.js → chunk-K4M64WD6.js} +9 -5
  68. package/dist/{chunk-4QTKSLTO.js.map → chunk-K4M64WD6.js.map} +1 -1
  69. package/dist/chunk-KI7OWQUX.js +293 -0
  70. package/dist/chunk-KI7OWQUX.js.map +1 -0
  71. package/dist/chunk-KT3MWNZG.js +0 -0
  72. package/dist/{chunk-ZJW5FFYJ.js → chunk-LC5PYNJP.js} +2 -2
  73. package/dist/{chunk-JAAHOGKI.js → chunk-M2EY7KDR.js} +1223 -1124
  74. package/dist/chunk-M2EY7KDR.js.map +1 -0
  75. package/dist/{chunk-2VQKDRVF.js → chunk-MR7OLIC6.js} +3 -3
  76. package/dist/chunk-NM4WF3XD.js +63 -0
  77. package/dist/chunk-NM4WF3XD.js.map +1 -0
  78. package/dist/chunk-NPMCKOX4.js +1 -0
  79. package/dist/{chunk-VRHXOKRP.js → chunk-NZXH2LQQ.js} +86 -83
  80. package/dist/chunk-NZXH2LQQ.js.map +1 -0
  81. package/dist/{chunk-B6RP57M3.js → chunk-OLPB36O2.js} +4 -4
  82. package/dist/chunk-PIVX3DYW.js +142 -0
  83. package/dist/chunk-PIVX3DYW.js.map +1 -0
  84. package/dist/{chunk-7TOMTMHT.js → chunk-R7OC6UDK.js} +2 -1
  85. package/dist/chunk-R7OC6UDK.js.map +1 -0
  86. package/dist/chunk-RESN62GB.js +269 -0
  87. package/dist/chunk-RESN62GB.js.map +1 -0
  88. package/dist/{chunk-64JI5LTO.js → chunk-RMU7EBRO.js} +2 -2
  89. package/dist/chunk-RMU7EBRO.js.map +1 -0
  90. package/dist/chunk-TQYSPYKU.js +131 -0
  91. package/dist/chunk-TQYSPYKU.js.map +1 -0
  92. package/dist/chunk-TSLSIRBR.js +107 -0
  93. package/dist/chunk-TSLSIRBR.js.map +1 -0
  94. package/dist/{chunk-XP7YXRHO.js → chunk-U6TPSW4L.js} +37 -5
  95. package/dist/chunk-U6TPSW4L.js.map +1 -0
  96. package/dist/chunk-UD3LFGDL.js +45 -0
  97. package/dist/chunk-UD3LFGDL.js.map +1 -0
  98. package/dist/chunk-UUFYP2UM.js +161 -0
  99. package/dist/chunk-UUFYP2UM.js.map +1 -0
  100. package/dist/{chunk-OXIQI2XZ.js → chunk-VBZCVFSA.js} +2 -2
  101. package/dist/chunk-VMEWD57H.js +137 -0
  102. package/dist/chunk-VMEWD57H.js.map +1 -0
  103. package/dist/{chunk-TRH2L3FI.js → chunk-WEGALZEU.js} +3 -3
  104. package/dist/{chunk-ZOXNJV2O.js → chunk-WGHJD6I7.js} +35 -138
  105. package/dist/chunk-WGHJD6I7.js.map +1 -0
  106. package/dist/chunk-XMS5VRIK.js +0 -0
  107. package/dist/chunk-Y4H3JNVK.js +18 -0
  108. package/dist/chunk-Y4H3JNVK.js.map +1 -0
  109. package/dist/chunk-Z5IGLBWE.js +329 -0
  110. package/dist/chunk-Z5IGLBWE.js.map +1 -0
  111. package/dist/chunk-ZEGYW52B.js +26 -0
  112. package/dist/chunk-ZEGYW52B.js.map +1 -0
  113. package/dist/chunk-ZJQ4O76G.js +87 -0
  114. package/dist/chunk-ZJQ4O76G.js.map +1 -0
  115. package/dist/cli/index.js +32 -21
  116. package/dist/cli/index.js.map +1 -1
  117. package/dist/client/index.d.ts +107 -1
  118. package/dist/client/index.js +152 -6
  119. package/dist/client/index.js.map +1 -1
  120. package/dist/{cloudflare-LCAOTRYZ.js → cloudflare-OJGJ7R2D.js} +3 -3
  121. package/dist/configure-agent-registry-6YGTJYBC.js +0 -0
  122. package/dist/cookies-MJKMGJ7N.js +22 -0
  123. package/dist/csrf-BBrEZSBW.d.ts +107 -0
  124. package/dist/csrf-readiness-store-CjIoub3U.d.ts +43 -0
  125. package/dist/define-websocket-CdK94O-D.d.ts +64 -0
  126. package/dist/{deno-deploy-ZN4RE5HF.js → deno-deploy-BHWKFTOW.js} +3 -3
  127. package/dist/{dev-266MVCVA.js → dev-MJVSRZGF.js} +11 -11
  128. package/dist/{dev-emit-RBSFZZNO.js → dev-emit-5VPRCHOD.js} +39 -142
  129. package/dist/dev-emit-5VPRCHOD.js.map +1 -0
  130. package/dist/{dev-emit-NO6OZJOQ.js → dev-emit-HHP2XJXE.js} +5 -5
  131. package/dist/devtools/entry.js +185 -131
  132. package/dist/devtools/entry.js.map +1 -1
  133. package/dist/{dispatcher-AQJGI3HU.js → dispatcher-63LBXYLE.js} +2 -2
  134. package/dist/{dispatcher-E6QV32BO.js → dispatcher-EJME6C6M.js} +5 -2
  135. package/dist/dispatcher-EJME6C6M.js.map +1 -0
  136. package/dist/{dist-5V77Z223.js → dist-KRW6OVD4.js} +7 -7
  137. package/dist/dist-KRW6OVD4.js.map +1 -0
  138. package/dist/docker-EZDA5FT7.js +0 -0
  139. package/dist/error-envelope-BsNzzAV5.d.ts +62 -0
  140. package/dist/{generate-DT4IIAHF.js → generate-AZ2K6Z2Z.js} +75 -2
  141. package/dist/generate-AZ2K6Z2Z.js.map +1 -0
  142. package/dist/index-DWWEdFh5.d.ts +399 -0
  143. package/dist/index.d.ts +161 -1391
  144. package/dist/index.js +20 -8
  145. package/dist/index.js.map +1 -1
  146. package/dist/{info-FJ4NXKTB.js → info-47VB62MV.js} +5 -5
  147. package/dist/job-backend-CgC8Xf33.d.ts +68 -0
  148. package/dist/{lib-NL5JXGEB.js → lib-NST3PNZX.js} +31 -31
  149. package/dist/lib-NST3PNZX.js.map +1 -0
  150. package/dist/module-loader-Cfz7dgCP.d.ts +26 -0
  151. package/dist/{netlify-5VQ22Z2P.js → netlify-GSNSJGMN.js} +3 -3
  152. package/dist/{node-3APTLGWB.js → node-6I5B6RL3.js} +3 -3
  153. package/dist/node-6I5B6RL3.js.map +1 -0
  154. package/dist/{openapi-FNVSWZOL.js → openapi-NFLSNNVQ.js} +10 -10
  155. package/dist/plugin-runner-BGBkzgi0.d.ts +95 -0
  156. package/dist/plugin-types-DNJGxr4Z.d.ts +79 -0
  157. package/dist/{proper-lockfile-4Y3DP3RP.js → proper-lockfile-MVKMQGFK.js} +27 -27
  158. package/dist/proper-lockfile-MVKMQGFK.js.map +1 -0
  159. package/dist/rate-limit-BdNDZ3vt.d.ts +58 -0
  160. package/dist/registry-QHEZ3BWB.js +25 -0
  161. package/dist/router-RGZFX75G.js +0 -0
  162. package/dist/{routes-H4SPLFHJ.js → routes-3A4XGIEJ.js} +6 -6
  163. package/dist/{scan-C2BOKLSY.js → scan-NQFI5S7P.js} +2 -2
  164. package/dist/scan-NQFI5S7P.js.map +1 -0
  165. package/dist/schema-D3v8VB7o.d.ts +76 -0
  166. package/dist/{schema-VR6YNVLQ.js → schema-KZVOV333.js} +5 -3
  167. package/dist/schema-KZVOV333.js.map +1 -0
  168. package/dist/server/agent/index.d.ts +229 -0
  169. package/dist/server/agent/index.js +16 -0
  170. package/dist/server/agent/index.js.map +1 -0
  171. package/dist/server/auth/index.d.ts +46 -1
  172. package/dist/server/auth/index.js +10 -3
  173. package/dist/server/cost/index.d.ts +1 -3
  174. package/dist/server/cost/index.js +1 -1
  175. package/dist/server/cron/index.js +4 -2
  176. package/dist/server/define/index.d.ts +281 -0
  177. package/dist/server/define/index.js +26 -0
  178. package/dist/server/define/index.js.map +1 -0
  179. package/dist/server/http/index.d.ts +10 -0
  180. package/dist/server/http/index.js +74 -0
  181. package/dist/server/http/index.js.map +1 -0
  182. package/dist/server/index.d.ts +151 -1677
  183. package/dist/server/index.js +558 -1102
  184. package/dist/server/index.js.map +1 -1
  185. package/dist/server/jobs/index.d.ts +348 -2
  186. package/dist/server/jobs/index.js +5 -3
  187. package/dist/server/observability/index.d.ts +324 -0
  188. package/dist/server/observability/index.js +48 -0
  189. package/dist/server/observability/index.js.map +1 -0
  190. package/dist/server/plugins/index.d.ts +17 -0
  191. package/dist/server/plugins/index.js +17 -0
  192. package/dist/server/plugins/index.js.map +1 -0
  193. package/dist/server/rate-limit/index.d.ts +105 -0
  194. package/dist/server/rate-limit/index.js +25 -0
  195. package/dist/server/rate-limit/index.js.map +1 -0
  196. package/dist/server/realtime/index.d.ts +15 -0
  197. package/dist/server/realtime/index.js +8 -0
  198. package/dist/server/realtime/index.js.map +1 -0
  199. package/dist/server/scan/index.d.ts +106 -0
  200. package/dist/server/scan/index.js +43 -0
  201. package/dist/server/scan/index.js.map +1 -0
  202. package/dist/server/security/index.d.ts +193 -0
  203. package/dist/server/security/index.js +50 -0
  204. package/dist/server/security/index.js.map +1 -0
  205. package/dist/server/storage/index.d.ts +22 -0
  206. package/dist/server/storage/index.js +14 -0
  207. package/dist/server/storage/index.js.map +1 -0
  208. package/dist/server/webhook/index.d.ts +148 -0
  209. package/dist/server/webhook/index.js +19 -0
  210. package/dist/server/webhook/index.js.map +1 -0
  211. package/dist/server-error-to-envelope-NO4CCAFQ.js +8 -0
  212. package/dist/server-error-to-envelope-NO4CCAFQ.js.map +1 -0
  213. package/dist/server-error-to-envelope-UJK6OWDJ.js +134 -0
  214. package/dist/server-error-to-envelope-UJK6OWDJ.js.map +1 -0
  215. package/dist/server-routes-hmr-GZJGPWMS.js +0 -0
  216. package/dist/services-json-Z2QNGVPW.js +142 -0
  217. package/dist/services-json-Z2QNGVPW.js.map +1 -0
  218. package/dist/{services-typed-client-XWYYBWGW.js → services-typed-client-KK6RHRDG.js} +2 -2
  219. package/dist/{services-typed-client-ZX5JUHH3.js → services-typed-client-T7M5VPBP.js} +2 -2
  220. package/dist/{sqlite-vec-ARPNUBWT.js → sqlite-vec-54KB4RD3.js} +2 -2
  221. package/dist/sqlite-vec-54KB4RD3.js.map +1 -0
  222. package/dist/{start-HX3QUSOS.js → start-CGSZPBAG.js} +23 -23
  223. package/dist/start-CGSZPBAG.js.map +1 -0
  224. package/dist/{static-TZBVBDTB.js → static-QI5NQT2X.js} +6 -6
  225. package/dist/storage-manager-C4jsO0Tp.d.ts +89 -0
  226. package/dist/storage-manager-D5KBXXKB.js +0 -0
  227. package/dist/{storage-types-DtIVejC1.d.ts → storage-types-DsDTCPbp.d.ts} +1 -1
  228. package/dist/{theo-cloud-3K4DGB3S.js → theo-cloud-RSQCBNXL.js} +4 -4
  229. package/dist/theo-cloud-RSQCBNXL.js.map +1 -0
  230. package/dist/upgrade-readiness-GUJBCJIS.js +0 -0
  231. package/dist/{vercel-MWW24ABC.js → vercel-TKPZK62A.js} +3 -3
  232. package/dist/vite-plugin/index.d.ts +3 -1
  233. package/dist/vite-plugin/index.js +20 -8
  234. package/dist/{vite-plugin-IK3NOWXS.js → vite-plugin-CR4JDFUQ.js} +9 -9
  235. package/dist/vite-plugin-CR4JDFUQ.js.map +1 -0
  236. package/package.json +61 -9
  237. package/LICENSE +0 -201
  238. package/dist/build-HIGHJQQV.js.map +0 -1
  239. package/dist/chunk-5OFPQK6N.js.map +0 -1
  240. package/dist/chunk-64JI5LTO.js.map +0 -1
  241. package/dist/chunk-7TOMTMHT.js.map +0 -1
  242. package/dist/chunk-BIGBFZSU.js.map +0 -1
  243. package/dist/chunk-C52GSJPF.js.map +0 -1
  244. package/dist/chunk-CZM6WWWS.js +0 -2450
  245. package/dist/chunk-CZM6WWWS.js.map +0 -1
  246. package/dist/chunk-JAAHOGKI.js.map +0 -1
  247. package/dist/chunk-KJVEJILQ.js.map +0 -1
  248. package/dist/chunk-O4BLVPML.js.map +0 -1
  249. package/dist/chunk-O7335ZGH.js.map +0 -1
  250. package/dist/chunk-PB4GR7EP.js.map +0 -1
  251. package/dist/chunk-TPCT3MXV.js.map +0 -1
  252. package/dist/chunk-VRHXOKRP.js.map +0 -1
  253. package/dist/chunk-WZ7CPVQB.js.map +0 -1
  254. package/dist/chunk-X4JAX2U3.js.map +0 -1
  255. package/dist/chunk-XP7YXRHO.js.map +0 -1
  256. package/dist/chunk-YLBSSEHX.js.map +0 -1
  257. package/dist/chunk-ZOXNJV2O.js.map +0 -1
  258. package/dist/dev-emit-RBSFZZNO.js.map +0 -1
  259. package/dist/dispatcher-E6QV32BO.js.map +0 -1
  260. package/dist/dist-5V77Z223.js.map +0 -1
  261. package/dist/generate-DT4IIAHF.js.map +0 -1
  262. package/dist/index-li83Swxa.d.ts +0 -506
  263. package/dist/lib-NL5JXGEB.js.map +0 -1
  264. package/dist/proper-lockfile-4Y3DP3RP.js.map +0 -1
  265. package/dist/registry-4MZ26TZD.js +0 -25
  266. package/dist/schema-CjVly9c_.d.ts +0 -274
  267. package/dist/sqlite-vec-ARPNUBWT.js.map +0 -1
  268. package/dist/start-HX3QUSOS.js.map +0 -1
  269. package/dist/theo-cloud-3K4DGB3S.js.map +0 -1
  270. /package/dist/{actions-virtual-module-HWNTIEPI.js.map → actions-virtual-module-IY46EEEX.js.map} +0 -0
  271. /package/dist/{actions-virtual-module-SEIPACG5.js.map → actions-virtual-module-XNHDNCZ6.js.map} +0 -0
  272. /package/dist/{aws-lambda-XYCGZH3I.js.map → aws-lambda-GKSTX6HD.js.map} +0 -0
  273. /package/dist/{bun-K73TQEWC.js.map → bun-ISHSNFIO.js.map} +0 -0
  274. /package/dist/{check-PZR67OY5.js.map → check-NXYPLM6M.js.map} +0 -0
  275. /package/dist/{dispatcher-AQJGI3HU.js.map → chunk-E3JH6YUM.js.map} +0 -0
  276. /package/dist/{node-3APTLGWB.js.map → chunk-JHEAWR3L.js.map} +0 -0
  277. /package/dist/{chunk-ZJW5FFYJ.js.map → chunk-LC5PYNJP.js.map} +0 -0
  278. /package/dist/{chunk-2VQKDRVF.js.map → chunk-MR7OLIC6.js.map} +0 -0
  279. /package/dist/{scan-C2BOKLSY.js.map → chunk-NPMCKOX4.js.map} +0 -0
  280. /package/dist/{chunk-B6RP57M3.js.map → chunk-OLPB36O2.js.map} +0 -0
  281. /package/dist/{chunk-OXIQI2XZ.js.map → chunk-VBZCVFSA.js.map} +0 -0
  282. /package/dist/{chunk-TRH2L3FI.js.map → chunk-WEGALZEU.js.map} +0 -0
  283. /package/dist/{cloudflare-LCAOTRYZ.js.map → cloudflare-OJGJ7R2D.js.map} +0 -0
  284. /package/dist/{schema-VR6YNVLQ.js.map → cookies-MJKMGJ7N.js.map} +0 -0
  285. /package/dist/{deno-deploy-ZN4RE5HF.js.map → deno-deploy-BHWKFTOW.js.map} +0 -0
  286. /package/dist/{dev-266MVCVA.js.map → dev-MJVSRZGF.js.map} +0 -0
  287. /package/dist/{dev-emit-NO6OZJOQ.js.map → dev-emit-HHP2XJXE.js.map} +0 -0
  288. /package/dist/{vite-plugin-IK3NOWXS.js.map → dispatcher-63LBXYLE.js.map} +0 -0
  289. /package/dist/{info-FJ4NXKTB.js.map → info-47VB62MV.js.map} +0 -0
  290. /package/dist/{netlify-5VQ22Z2P.js.map → netlify-GSNSJGMN.js.map} +0 -0
  291. /package/dist/{openapi-FNVSWZOL.js.map → openapi-NFLSNNVQ.js.map} +0 -0
  292. /package/dist/{registry-4MZ26TZD.js.map → registry-QHEZ3BWB.js.map} +0 -0
  293. /package/dist/{routes-H4SPLFHJ.js.map → routes-3A4XGIEJ.js.map} +0 -0
  294. /package/dist/{services-typed-client-XWYYBWGW.js.map → services-typed-client-KK6RHRDG.js.map} +0 -0
  295. /package/dist/{services-typed-client-ZX5JUHH3.js.map → services-typed-client-T7M5VPBP.js.map} +0 -0
  296. /package/dist/{static-TZBVBDTB.js.map → static-QI5NQT2X.js.map} +0 -0
  297. /package/dist/{vercel-MWW24ABC.js.map → vercel-TKPZK62A.js.map} +0 -0
@@ -1,4 +1,5 @@
1
1
  import {
2
+ CHANNEL_AGENT_STREAM,
2
3
  CHANNEL_CSRF_WARN,
3
4
  CHANNEL_ERROR,
4
5
  CHANNEL_MANIFEST,
@@ -8,16 +9,95 @@ import {
8
9
  STORAGE_VERSION,
9
10
  dispatcher,
10
11
  initialState
11
- } from "../chunk-KJVEJILQ.js";
12
+ } from "../chunk-5PU65T5W.js";
12
13
  import "../chunk-DGUM43GV.js";
13
14
 
14
- // src/devtools/entry.tsx
15
+ // src/devtools/dom/entry.tsx
15
16
  import { StrictMode } from "react";
16
17
  import { createRoot } from "react-dom/client";
17
18
 
18
- // src/devtools/Overlay.tsx
19
+ // src/devtools/dom/Overlay.tsx
19
20
  import { useEffect as useEffect6, useInsertionEffect, useMemo, useReducer } from "react";
20
21
 
22
+ // src/devtools/bridge/hmr-bridge.ts
23
+ function getHot() {
24
+ try {
25
+ const hot = import.meta.hot;
26
+ if (hot) return hot;
27
+ } catch {
28
+ }
29
+ const g = globalThis.__theoViteHotForTests;
30
+ return g ?? null;
31
+ }
32
+ function wrap(label, fn) {
33
+ return (data) => {
34
+ try {
35
+ fn(data);
36
+ } catch (err) {
37
+ console.error(`[theo devtools] ${label} callback failed`, err);
38
+ }
39
+ };
40
+ }
41
+ function subscribeToServerEvents(dispatcher2) {
42
+ const hot = getHot();
43
+ if (!hot) {
44
+ return {
45
+ unsubscribe() {
46
+ }
47
+ };
48
+ }
49
+ const reqHandler = wrap("request", (req) => {
50
+ dispatcher2.onRequest(req);
51
+ });
52
+ const errHandler = wrap("error", (err) => {
53
+ dispatcher2.onError(err);
54
+ });
55
+ const csrfHandler = wrap("csrf.warn", (p) => {
56
+ dispatcher2.onCsrfWarn(p);
57
+ });
58
+ const manifestHandler = wrap("manifest", (m) => {
59
+ dispatcher2.onManifestUpdated(m);
60
+ });
61
+ const routeMatchedHandler = wrap(
62
+ "route-matched",
63
+ ({ path, chain }) => {
64
+ dispatcher2.onRouteMatched(path, chain);
65
+ }
66
+ );
67
+ const agentStreamHandler = wrap("agent-stream", (event) => {
68
+ dispatcher2.onAgentStreamEvent(event);
69
+ });
70
+ hot.on(CHANNEL_REQUEST, reqHandler);
71
+ hot.on(CHANNEL_ERROR, errHandler);
72
+ hot.on(CHANNEL_CSRF_WARN, csrfHandler);
73
+ hot.on(CHANNEL_MANIFEST, manifestHandler);
74
+ hot.on(CHANNEL_ROUTE_MATCHED, routeMatchedHandler);
75
+ hot.on(CHANNEL_AGENT_STREAM, agentStreamHandler);
76
+ try {
77
+ hot.send?.("theo:devtools:request-manifest", null);
78
+ } catch {
79
+ }
80
+ return {
81
+ unsubscribe() {
82
+ hot.off?.(CHANNEL_REQUEST, reqHandler);
83
+ hot.off?.(CHANNEL_ERROR, errHandler);
84
+ hot.off?.(CHANNEL_CSRF_WARN, csrfHandler);
85
+ hot.off?.(CHANNEL_MANIFEST, manifestHandler);
86
+ hot.off?.(CHANNEL_ROUTE_MATCHED, routeMatchedHandler);
87
+ }
88
+ };
89
+ }
90
+
91
+ // src/devtools/bridge/install-global.ts
92
+ function noopCleanup() {
93
+ }
94
+ function installDispatcherGlobal() {
95
+ if (typeof window === "undefined") return noopCleanup;
96
+ const w = window;
97
+ w.__theoDevtoolsDispatcher = dispatcher;
98
+ return noopCleanup;
99
+ }
100
+
21
101
  // src/devtools/hooks/useDevtoolsContext.ts
22
102
  import { createContext, useContext } from "react";
23
103
  var DevtoolsContext = createContext(null);
@@ -447,18 +527,7 @@ function Indicator() {
447
527
  // src/devtools/components/Tabs/ActionsTab.tsx
448
528
  import { useState } from "react";
449
529
 
450
- // src/devtools/actions-row-state.ts
451
- function toggleExpandedIds(prev, id) {
452
- const next = new Set(prev);
453
- if (next.has(id)) {
454
- next.delete(id);
455
- } else {
456
- next.add(id);
457
- }
458
- return next;
459
- }
460
-
461
- // src/devtools/pii-mask.ts
530
+ // src/devtools/format/pii-mask.ts
462
531
  var SENSITIVE_KEY_PATTERN = /(password|token|secret|api_?key|apikey|credit_?card|ssn|cpf|cnpj)/i;
463
532
  function isSensitiveKey(key) {
464
533
  return SENSITIVE_KEY_PATTERN.test(key);
@@ -480,6 +549,17 @@ function maskPiiFields(value) {
480
549
  return out;
481
550
  }
482
551
 
552
+ // src/devtools/state/actions-row-state.ts
553
+ function toggleExpandedIds(prev, id) {
554
+ const next = new Set(prev);
555
+ if (next.has(id)) {
556
+ next.delete(id);
557
+ } else {
558
+ next.add(id);
559
+ }
560
+ return next;
561
+ }
562
+
483
563
  // src/devtools/components/Tabs/ActionsTab.tsx
484
564
  import { jsx as jsx3, jsxs } from "react/jsx-runtime";
485
565
  function formatTime(ts) {
@@ -711,7 +791,7 @@ function ActionDetailError({ error }) {
711
791
  }
712
792
 
713
793
  // src/devtools/components/Tabs/AgentsTab.tsx
714
- import { jsx as jsx4, jsxs as jsxs2 } from "react/jsx-runtime";
794
+ import { Fragment, jsx as jsx4, jsxs as jsxs2 } from "react/jsx-runtime";
715
795
  function formatTime2(ts) {
716
796
  const d = new Date(ts);
717
797
  return d.toLocaleTimeString(void 0, { hour: "2-digit", minute: "2-digit", second: "2-digit" });
@@ -818,6 +898,29 @@ function AgentsTab() {
818
898
  /* @__PURE__ */ jsx4("td", { children: formatCost(run.costUsd) }),
819
899
  /* @__PURE__ */ jsx4("td", { children: run.status })
820
900
  ] }, run.id)) })
901
+ ] }),
902
+ state.agentStreamEvents.length > 0 && /* @__PURE__ */ jsxs2(Fragment, { children: [
903
+ /* @__PURE__ */ jsxs2("div", { className: headerClass, style: { marginTop: 12 }, children: [
904
+ /* @__PURE__ */ jsxs2("span", { children: [
905
+ "\u{1F534} Live Stream (",
906
+ state.agentStreamEvents.length,
907
+ " events)"
908
+ ] }),
909
+ /* @__PURE__ */ jsx4("button", { type: "button", className: clearBtn, onClick: () => dispatch({ type: "RESET_AGENT_STREAM" }), children: "clear" })
910
+ ] }),
911
+ /* @__PURE__ */ jsx4("div", { style: { maxHeight: 200, overflow: "auto", fontSize: tokens.font.sizeXs, fontFamily: "monospace" }, children: state.agentStreamEvents.slice(-30).map((e, i) => /* @__PURE__ */ jsxs2("div", { style: { padding: "2px 4px", borderBottom: `1px solid ${tokens.colors.border}` }, children: [
912
+ /* @__PURE__ */ jsx4("span", { style: { color: tokens.colors.textDim }, children: new Date(e.timestamp).toLocaleTimeString() }),
913
+ " ",
914
+ /* @__PURE__ */ jsx4("span", { style: { color: e.type === "error" ? "#c92a2a" : tokens.colors.accent }, children: e.type }),
915
+ e.content && /* @__PURE__ */ jsxs2("span", { style: { color: tokens.colors.text }, children: [
916
+ " ",
917
+ e.content.substring(0, 80)
918
+ ] }),
919
+ e.toolName && /* @__PURE__ */ jsxs2("span", { style: { color: tokens.colors.textMuted }, children: [
920
+ " \u2192 ",
921
+ e.toolName
922
+ ] })
923
+ ] }, i)) })
821
924
  ] })
822
925
  ] });
823
926
  }
@@ -825,7 +928,7 @@ function AgentsTab() {
825
928
  // src/devtools/components/Tabs/CsrfReadinessTab.tsx
826
929
  import { useEffect as useEffect2, useState as useState2, useCallback as useCallback2 } from "react";
827
930
 
828
- // src/devtools/csrf-readiness-classify.ts
931
+ // src/devtools/format/csrf-readiness-classify.ts
829
932
  var NETWORK_ERROR_PATTERN = /failed to fetch|networkerror|network request failed/i;
830
933
  function classifyCsrfReadinessError(input) {
831
934
  if (input.kind === "http") {
@@ -1570,36 +1673,58 @@ function RoutesTab() {
1570
1673
  console.warn("[theo devtools] Editor not configured");
1571
1674
  });
1572
1675
  }
1573
- return /* @__PURE__ */ jsx11("div", { "data-testid": "devtools-routes-tab", children: state.routeManifest.routes.map((route) => {
1574
- const active = state.activeRoutePath === route.path || state.activeChain.includes(route.absoluteFilePath);
1575
- return /* @__PURE__ */ jsxs9(
1576
- "button",
1676
+ return /* @__PURE__ */ jsxs9("div", { "data-testid": "devtools-routes-tab", children: [
1677
+ /* @__PURE__ */ jsx11(
1678
+ "a",
1577
1679
  {
1578
- type: "button",
1579
- className: rowClass,
1580
- "data-active": active,
1581
- onClick: () => {
1582
- openInEditor(route.absoluteFilePath);
1680
+ href: "/__theo/openapi/docs",
1681
+ target: "_blank",
1682
+ rel: "noopener noreferrer",
1683
+ className: styles.css`
1684
+ display: inline-block;
1685
+ margin-bottom: 8px;
1686
+ padding: 4px 10px;
1687
+ font-size: ${tokens.font.sizeSm};
1688
+ color: ${tokens.colors.accent};
1689
+ border: 1px solid ${tokens.colors.accent};
1690
+ border-radius: 4px;
1691
+ text-decoration: none;
1692
+ &:hover { background: ${tokens.colors.accent}22; }
1693
+ `,
1694
+ children: "\u{1F4D6} View API Docs"
1695
+ }
1696
+ ),
1697
+ state.routeManifest.routes.map((route) => {
1698
+ const active = state.activeRoutePath === route.path || state.activeChain.includes(route.absoluteFilePath);
1699
+ return /* @__PURE__ */ jsxs9(
1700
+ "button",
1701
+ {
1702
+ type: "button",
1703
+ className: rowClass,
1704
+ "data-active": active,
1705
+ onClick: () => {
1706
+ openInEditor(route.absoluteFilePath);
1707
+ },
1708
+ title: `Open ${route.absoluteFilePath} in editor`,
1709
+ children: [
1710
+ /* @__PURE__ */ jsx11(
1711
+ "span",
1712
+ {
1713
+ style: {
1714
+ color: active ? tokens.colors.accent : tokens.colors.textMuted,
1715
+ minWidth: 12
1716
+ },
1717
+ children: active ? "\u25B8" : " "
1718
+ }
1719
+ ),
1720
+ /* @__PURE__ */ jsx11("span", { style: { flex: 1 }, children: route.path }),
1721
+ /* @__PURE__ */ jsx11("span", { style: { color: tokens.colors.textDim, fontSize: tokens.font.sizeXs }, children: route.absoluteFilePath.split("/").slice(-2).join("/") })
1722
+ ]
1583
1723
  },
1584
- title: `Open ${route.absoluteFilePath} in editor`,
1585
- children: [
1586
- /* @__PURE__ */ jsx11(
1587
- "span",
1588
- {
1589
- style: {
1590
- color: active ? tokens.colors.accent : tokens.colors.textMuted,
1591
- minWidth: 12
1592
- },
1593
- children: active ? "\u25B8" : " "
1594
- }
1595
- ),
1596
- /* @__PURE__ */ jsx11("span", { style: { flex: 1 }, children: route.path }),
1597
- /* @__PURE__ */ jsx11("span", { style: { color: tokens.colors.textDim, fontSize: tokens.font.sizeXs }, children: route.absoluteFilePath.split("/").slice(-2).join("/") })
1598
- ]
1599
- },
1600
- route.absoluteFilePath
1601
- );
1602
- }) });
1724
+ route.absoluteFilePath
1725
+ );
1726
+ })
1727
+ ] });
1603
1728
  }
1604
1729
 
1605
1730
  // src/devtools/components/Tabs/SettingsTab.tsx
@@ -1825,71 +1950,6 @@ function Panel() {
1825
1950
  );
1826
1951
  }
1827
1952
 
1828
- // src/devtools/hmr-bridge.ts
1829
- function getHot() {
1830
- try {
1831
- const hot = import.meta.hot;
1832
- if (hot) return hot;
1833
- } catch {
1834
- }
1835
- const g = globalThis.__theoViteHotForTests;
1836
- return g ?? null;
1837
- }
1838
- function wrap(label, fn) {
1839
- return (data) => {
1840
- try {
1841
- fn(data);
1842
- } catch (err) {
1843
- console.error(`[theo devtools] ${label} callback failed`, err);
1844
- }
1845
- };
1846
- }
1847
- function subscribeToServerEvents(dispatcher2) {
1848
- const hot = getHot();
1849
- if (!hot) {
1850
- return {
1851
- unsubscribe() {
1852
- }
1853
- };
1854
- }
1855
- const reqHandler = wrap("request", (req) => {
1856
- dispatcher2.onRequest(req);
1857
- });
1858
- const errHandler = wrap("error", (err) => {
1859
- dispatcher2.onError(err);
1860
- });
1861
- const csrfHandler = wrap("csrf.warn", (p) => {
1862
- dispatcher2.onCsrfWarn(p);
1863
- });
1864
- const manifestHandler = wrap("manifest", (m) => {
1865
- dispatcher2.onManifestUpdated(m);
1866
- });
1867
- const routeMatchedHandler = wrap(
1868
- "route-matched",
1869
- ({ path, chain }) => {
1870
- dispatcher2.onRouteMatched(path, chain);
1871
- }
1872
- );
1873
- hot.on(CHANNEL_REQUEST, reqHandler);
1874
- hot.on(CHANNEL_ERROR, errHandler);
1875
- hot.on(CHANNEL_CSRF_WARN, csrfHandler);
1876
- hot.on(CHANNEL_MANIFEST, manifestHandler);
1877
- hot.on(CHANNEL_ROUTE_MATCHED, routeMatchedHandler);
1878
- try {
1879
- hot.send?.("theo:devtools:request-manifest", null);
1880
- } catch {
1881
- }
1882
- return {
1883
- unsubscribe() {
1884
- hot.off?.(CHANNEL_REQUEST, reqHandler);
1885
- hot.off?.(CHANNEL_ERROR, errHandler);
1886
- hot.off?.(CHANNEL_CSRF_WARN, csrfHandler);
1887
- hot.off?.(CHANNEL_MANIFEST, manifestHandler);
1888
- hot.off?.(CHANNEL_ROUTE_MATCHED, routeMatchedHandler);
1889
- }
1890
- };
1891
- }
1892
-
1893
1953
  // src/devtools/hooks/useActiveRoute.ts
1894
1954
  import { useEffect as useEffect3 } from "react";
1895
1955
  var LOCATION_CHANGE_EVENT = "theo:devtools:locationchange";
@@ -2017,17 +2077,7 @@ function useShortcuts() {
2017
2077
  }, [dispatch, state.open]);
2018
2078
  }
2019
2079
 
2020
- // src/devtools/install-global.ts
2021
- function noopCleanup() {
2022
- }
2023
- function installDispatcherGlobal() {
2024
- if (typeof window === "undefined") return noopCleanup;
2025
- const w = window;
2026
- w.__theoDevtoolsDispatcher = dispatcher;
2027
- return noopCleanup;
2028
- }
2029
-
2030
- // src/devtools/persistence.ts
2080
+ // src/devtools/state/persistence.ts
2031
2081
  var STORAGE_KEYS = {
2032
2082
  version: "theo-devtools-storage-version",
2033
2083
  position: "theo-devtools-position",
@@ -2114,7 +2164,7 @@ function writeToStorage(s) {
2114
2164
  writeKey(STORAGE_KEYS.visible, s.visible);
2115
2165
  }
2116
2166
 
2117
- // src/devtools/reducer.ts
2167
+ // src/devtools/state/reducer.ts
2118
2168
  function appendCapped(arr, item, cap = RING_BUFFER_CAP) {
2119
2169
  return [item, ...arr].slice(0, cap);
2120
2170
  }
@@ -2128,6 +2178,8 @@ function reduceAppend(state, action) {
2128
2178
  return { ...state, agentRuns: appendCapped(state.agentRuns, action.run) };
2129
2179
  case "ACTION_CALL_ADD":
2130
2180
  return { ...state, actionCalls: appendCapped(state.actionCalls, action.record) };
2181
+ case "AGENT_STREAM_EVENT":
2182
+ return { ...state, agentStreamEvents: appendCapped(state.agentStreamEvents, action.event) };
2131
2183
  default:
2132
2184
  return null;
2133
2185
  }
@@ -2142,6 +2194,8 @@ function reduceReset(state, action) {
2142
2194
  return { ...state, agentRuns: [] };
2143
2195
  case "RESET_ACTION_CALLS":
2144
2196
  return { ...state, actionCalls: [] };
2197
+ case "RESET_AGENT_STREAM":
2198
+ return { ...state, agentStreamEvents: [] };
2145
2199
  default:
2146
2200
  return null;
2147
2201
  }
@@ -2180,13 +2234,6 @@ function devtoolsReducer(state, action) {
2180
2234
  }
2181
2235
  }
2182
2236
 
2183
- // src/devtools/shadow-portal.tsx
2184
- import { createPortal } from "react-dom";
2185
- function ShadowPortal({ children }) {
2186
- const { shadowRoot } = useDevtoolsContext();
2187
- return createPortal(children, shadowRoot);
2188
- }
2189
-
2190
2237
  // src/devtools/styles/styles.ts
2191
2238
  import { css as gooberCss, setup as gooberSetup } from "goober";
2192
2239
  var _initialized = null;
@@ -2206,7 +2253,14 @@ function createStyles(shadowRoot) {
2206
2253
  return { css: bound };
2207
2254
  }
2208
2255
 
2209
- // src/devtools/Overlay.tsx
2256
+ // src/devtools/dom/shadow-portal.tsx
2257
+ import { createPortal } from "react-dom";
2258
+ function ShadowPortal({ children }) {
2259
+ const { shadowRoot } = useDevtoolsContext();
2260
+ return createPortal(children, shadowRoot);
2261
+ }
2262
+
2263
+ // src/devtools/dom/Overlay.tsx
2210
2264
  import { jsx as jsx14, jsxs as jsxs12 } from "react/jsx-runtime";
2211
2265
  function ActiveRouteTracker() {
2212
2266
  useActiveRoute();
@@ -2261,7 +2315,7 @@ function Overlay({ shadowRoot }) {
2261
2315
  ] }) });
2262
2316
  }
2263
2317
 
2264
- // src/devtools/entry.tsx
2318
+ // src/devtools/dom/entry.tsx
2265
2319
  import { jsx as jsx15 } from "react/jsx-runtime";
2266
2320
  var PORTAL_TAG = "theo-devtools-portal";
2267
2321
  function definePortalElement() {