@agegr/pi-web 0.2.3 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (260) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +4 -4
  3. package/.next/build-manifest.json +13 -14
  4. package/.next/next-minimal-server.js.nft.json +1 -1
  5. package/.next/next-server.js.nft.json +1 -1
  6. package/.next/react-loadable-manifest.json +8 -0
  7. package/.next/required-server-files.js +2 -0
  8. package/.next/required-server-files.json +2 -0
  9. package/.next/server/app/_global-error/page.js +32 -10
  10. package/.next/server/app/_global-error/page.js.nft.json +1 -1
  11. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -3
  12. package/.next/server/app/_global-error.html +1 -1
  13. package/.next/server/app/_global-error.meta +2 -1
  14. package/.next/server/app/_global-error.rsc +8 -9
  15. package/.next/server/app/_global-error.segments/_full.segment.rsc +8 -9
  16. package/.next/server/app/_global-error.segments/{__PAGE__.segment.rsc → _global-error/__PAGE__.segment.rsc} +2 -2
  17. package/.next/server/app/_global-error.segments/_global-error.segment.rsc +5 -0
  18. package/.next/server/app/_global-error.segments/_head.segment.rsc +3 -4
  19. package/.next/server/app/_global-error.segments/_index.segment.rsc +3 -3
  20. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  21. package/.next/server/app/_not-found/page.js +2 -13
  22. package/.next/server/app/_not-found/page.js.nft.json +1 -1
  23. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -3
  24. package/.next/server/app/_not-found.html +1 -1
  25. package/.next/server/app/_not-found.rsc +10 -10
  26. package/.next/server/app/_not-found.segments/_full.segment.rsc +10 -10
  27. package/.next/server/app/_not-found.segments/_head.segment.rsc +4 -4
  28. package/.next/server/app/_not-found.segments/_index.segment.rsc +4 -4
  29. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
  30. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
  31. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  32. package/.next/server/app/api/agent/[id]/events/route.js +6 -6
  33. package/.next/server/app/api/agent/[id]/events/route.js.nft.json +1 -1
  34. package/.next/server/app/api/agent/[id]/events/route_client-reference-manifest.js +1 -3
  35. package/.next/server/app/api/agent/[id]/route.js +4 -7
  36. package/.next/server/app/api/agent/[id]/route.js.nft.json +1 -1
  37. package/.next/server/app/api/agent/[id]/route_client-reference-manifest.js +1 -3
  38. package/.next/server/app/api/agent/new/route.js +2 -7
  39. package/.next/server/app/api/agent/new/route.js.nft.json +1 -1
  40. package/.next/server/app/api/agent/new/route_client-reference-manifest.js +1 -3
  41. package/.next/server/app/api/files/[...path]/route.js +3 -7
  42. package/.next/server/app/api/files/[...path]/route.js.nft.json +1 -1
  43. package/.next/server/app/api/files/[...path]/route_client-reference-manifest.js +1 -3
  44. package/.next/server/app/api/models/route.js +3 -6
  45. package/.next/server/app/api/models/route.js.nft.json +1 -1
  46. package/.next/server/app/api/models/route_client-reference-manifest.js +1 -3
  47. package/.next/server/app/api/models-config/route.js +1 -7
  48. package/.next/server/app/api/models-config/route.js.nft.json +1 -1
  49. package/.next/server/app/api/models-config/route_client-reference-manifest.js +1 -3
  50. package/.next/server/app/api/sessions/[id]/context/route.js +3 -7
  51. package/.next/server/app/api/sessions/[id]/context/route.js.nft.json +1 -1
  52. package/.next/server/app/api/sessions/[id]/context/route_client-reference-manifest.js +1 -3
  53. package/.next/server/app/api/sessions/[id]/route.js +3 -7
  54. package/.next/server/app/api/sessions/[id]/route.js.nft.json +1 -1
  55. package/.next/server/app/api/sessions/[id]/route_client-reference-manifest.js +1 -3
  56. package/.next/server/app/api/sessions/new/route.js +1 -6
  57. package/.next/server/app/api/sessions/new/route.js.nft.json +1 -1
  58. package/.next/server/app/api/sessions/new/route_client-reference-manifest.js +1 -3
  59. package/.next/server/app/api/sessions/route.js +3 -7
  60. package/.next/server/app/api/sessions/route.js.nft.json +1 -1
  61. package/.next/server/app/api/sessions/route_client-reference-manifest.js +1 -3
  62. package/.next/server/app/favicon.ico/route.js +1 -8
  63. package/.next/server/app/favicon.ico/route.js.nft.json +1 -1
  64. package/.next/server/app/index.html +1 -1
  65. package/.next/server/app/index.rsc +11 -11
  66. package/.next/server/app/index.segments/__PAGE__.segment.rsc +3 -3
  67. package/.next/server/app/index.segments/_full.segment.rsc +11 -11
  68. package/.next/server/app/index.segments/_head.segment.rsc +4 -4
  69. package/.next/server/app/index.segments/_index.segment.rsc +4 -4
  70. package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  71. package/.next/server/app/page.js +2 -14
  72. package/.next/server/app/page.js.nft.json +1 -1
  73. package/.next/server/app/page_client-reference-manifest.js +1 -3
  74. package/.next/server/app-paths-manifest.json +4 -4
  75. package/.next/server/chunks/573.js +3 -0
  76. package/.next/server/chunks/63.js +45 -0
  77. package/.next/server/chunks/65.js +1 -0
  78. package/.next/server/chunks/741.js +18 -0
  79. package/.next/server/chunks/813.js +1 -0
  80. package/.next/server/chunks/918.js +1 -0
  81. package/.next/server/middleware-build-manifest.js +1 -21
  82. package/.next/server/middleware-manifest.json +2 -2
  83. package/.next/server/middleware-react-loadable-manifest.js +1 -0
  84. package/.next/server/next-font-manifest.js +1 -1
  85. package/.next/server/next-font-manifest.json +1 -6
  86. package/.next/server/pages/404.html +1 -1
  87. package/.next/server/pages/500.html +1 -1
  88. package/.next/server/server-reference-manifest.js +1 -1
  89. package/.next/server/server-reference-manifest.json +1 -5
  90. package/.next/server/webpack-runtime.js +1 -0
  91. package/.next/static/UW-CKcK5B6AAyNf06F5iF/_buildManifest.js +1 -0
  92. package/.next/static/chunks/110-fff6e5d8c205420b.js +1 -0
  93. package/.next/static/chunks/451.1247b87def61e309.js +1 -0
  94. package/.next/static/chunks/4bd1b696-215e5051988c3dde.js +1 -0
  95. package/.next/static/chunks/794-4d0b7b700451cc43.js +32 -0
  96. package/.next/static/chunks/app/_global-error/page-957de1f71e826217.js +1 -0
  97. package/.next/static/chunks/app/_not-found/page-e294ec8de846ea31.js +1 -0
  98. package/.next/static/chunks/app/api/agent/[id]/events/route-957de1f71e826217.js +1 -0
  99. package/.next/static/chunks/app/api/agent/[id]/route-957de1f71e826217.js +1 -0
  100. package/.next/static/chunks/app/api/agent/new/route-957de1f71e826217.js +1 -0
  101. package/.next/static/chunks/app/api/files/[...path]/route-957de1f71e826217.js +1 -0
  102. package/.next/static/chunks/app/api/models/route-957de1f71e826217.js +1 -0
  103. package/.next/static/chunks/app/api/models-config/route-957de1f71e826217.js +1 -0
  104. package/.next/static/chunks/app/api/sessions/[id]/context/route-957de1f71e826217.js +1 -0
  105. package/.next/static/chunks/app/api/sessions/[id]/route-957de1f71e826217.js +1 -0
  106. package/.next/static/chunks/app/api/sessions/new/route-957de1f71e826217.js +1 -0
  107. package/.next/static/chunks/app/api/sessions/route-957de1f71e826217.js +1 -0
  108. package/.next/static/chunks/app/layout-7c348314be580c6a.js +1 -0
  109. package/.next/static/chunks/app/page-bb92671a9b83a367.js +1 -0
  110. package/.next/static/chunks/framework-93cda6578f6c76ec.js +1 -0
  111. package/.next/static/chunks/main-0525ed1bd1807a80.js +5 -0
  112. package/.next/static/chunks/main-app-bd11c9df37a8ab8e.js +1 -0
  113. package/.next/static/chunks/next/dist/client/components/builtin/app-error-957de1f71e826217.js +1 -0
  114. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-957de1f71e826217.js +1 -0
  115. package/.next/static/chunks/next/dist/client/components/builtin/global-error-0dd2035d6f688008.js +1 -0
  116. package/.next/static/chunks/next/dist/client/components/builtin/not-found-957de1f71e826217.js +1 -0
  117. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-957de1f71e826217.js +1 -0
  118. package/.next/static/chunks/webpack-f15a3bb2c3a9cba9.js +1 -0
  119. package/.next/static/css/db181498dfd5fef0.css +1 -0
  120. package/.next/trace +3 -1
  121. package/.next/trace-build +1 -1
  122. package/.next/types/app/api/agent/[id]/events/route.ts +351 -0
  123. package/.next/types/app/api/agent/[id]/route.ts +351 -0
  124. package/.next/types/app/api/agent/new/route.ts +351 -0
  125. package/.next/types/app/api/files/[...path]/route.ts +351 -0
  126. package/.next/types/app/api/models/route.ts +351 -0
  127. package/.next/types/app/api/models-config/route.ts +351 -0
  128. package/.next/types/app/api/sessions/[id]/context/route.ts +351 -0
  129. package/.next/types/app/api/sessions/[id]/route.ts +351 -0
  130. package/.next/types/app/api/sessions/new/route.ts +351 -0
  131. package/.next/types/app/api/sessions/route.ts +351 -0
  132. package/.next/types/app/layout.ts +87 -0
  133. package/.next/types/app/page.ts +87 -0
  134. package/.next/types/package.json +1 -0
  135. package/README.md +8 -7
  136. package/package.json +4 -3
  137. package/.next/build/chunks/[root-of-the-server]__0d-m0h0._.js +0 -206
  138. package/.next/build/chunks/[root-of-the-server]__0ubbtyl._.js +0 -500
  139. package/.next/build/chunks/[turbopack-node]_transforms_postcss_ts_06e.r3r._.js +0 -13
  140. package/.next/build/chunks/[turbopack]_runtime.js +0 -890
  141. package/.next/build/chunks/node_modules_13sb.px._.js +0 -6765
  142. package/.next/build/package.json +0 -1
  143. package/.next/build/postcss.js +0 -6
  144. package/.next/diagnostics/route-bundle-stats.json +0 -28
  145. package/.next/fallback-build-manifest.json +0 -13
  146. package/.next/server/app/_global-error/page/app-paths-manifest.json +0 -3
  147. package/.next/server/app/_global-error/page/build-manifest.json +0 -17
  148. package/.next/server/app/_global-error/page/next-font-manifest.json +0 -6
  149. package/.next/server/app/_global-error/page/react-loadable-manifest.json +0 -1
  150. package/.next/server/app/_global-error/page/server-reference-manifest.json +0 -4
  151. package/.next/server/app/_not-found/page/app-paths-manifest.json +0 -3
  152. package/.next/server/app/_not-found/page/build-manifest.json +0 -17
  153. package/.next/server/app/_not-found/page/next-font-manifest.json +0 -6
  154. package/.next/server/app/_not-found/page/react-loadable-manifest.json +0 -1
  155. package/.next/server/app/_not-found/page/server-reference-manifest.json +0 -4
  156. package/.next/server/app/api/agent/[id]/events/route/app-paths-manifest.json +0 -3
  157. package/.next/server/app/api/agent/[id]/events/route/build-manifest.json +0 -9
  158. package/.next/server/app/api/agent/[id]/events/route/server-reference-manifest.json +0 -4
  159. package/.next/server/app/api/agent/[id]/route/app-paths-manifest.json +0 -3
  160. package/.next/server/app/api/agent/[id]/route/build-manifest.json +0 -9
  161. package/.next/server/app/api/agent/[id]/route/server-reference-manifest.json +0 -4
  162. package/.next/server/app/api/agent/new/route/app-paths-manifest.json +0 -3
  163. package/.next/server/app/api/agent/new/route/build-manifest.json +0 -9
  164. package/.next/server/app/api/agent/new/route/server-reference-manifest.json +0 -4
  165. package/.next/server/app/api/files/[...path]/route/app-paths-manifest.json +0 -3
  166. package/.next/server/app/api/files/[...path]/route/build-manifest.json +0 -9
  167. package/.next/server/app/api/files/[...path]/route/server-reference-manifest.json +0 -4
  168. package/.next/server/app/api/models/route/app-paths-manifest.json +0 -3
  169. package/.next/server/app/api/models/route/build-manifest.json +0 -9
  170. package/.next/server/app/api/models/route/server-reference-manifest.json +0 -4
  171. package/.next/server/app/api/models-config/route/app-paths-manifest.json +0 -3
  172. package/.next/server/app/api/models-config/route/build-manifest.json +0 -9
  173. package/.next/server/app/api/models-config/route/server-reference-manifest.json +0 -4
  174. package/.next/server/app/api/sessions/[id]/context/route/app-paths-manifest.json +0 -3
  175. package/.next/server/app/api/sessions/[id]/context/route/build-manifest.json +0 -9
  176. package/.next/server/app/api/sessions/[id]/context/route/server-reference-manifest.json +0 -4
  177. package/.next/server/app/api/sessions/[id]/route/app-paths-manifest.json +0 -3
  178. package/.next/server/app/api/sessions/[id]/route/build-manifest.json +0 -9
  179. package/.next/server/app/api/sessions/[id]/route/server-reference-manifest.json +0 -4
  180. package/.next/server/app/api/sessions/new/route/app-paths-manifest.json +0 -3
  181. package/.next/server/app/api/sessions/new/route/build-manifest.json +0 -9
  182. package/.next/server/app/api/sessions/new/route/server-reference-manifest.json +0 -4
  183. package/.next/server/app/api/sessions/route/app-paths-manifest.json +0 -3
  184. package/.next/server/app/api/sessions/route/build-manifest.json +0 -9
  185. package/.next/server/app/api/sessions/route/server-reference-manifest.json +0 -4
  186. package/.next/server/app/favicon.ico/route/app-paths-manifest.json +0 -3
  187. package/.next/server/app/favicon.ico/route/build-manifest.json +0 -9
  188. package/.next/server/app/page/app-paths-manifest.json +0 -3
  189. package/.next/server/app/page/build-manifest.json +0 -17
  190. package/.next/server/app/page/next-font-manifest.json +0 -6
  191. package/.next/server/app/page/react-loadable-manifest.json +0 -1
  192. package/.next/server/app/page/server-reference-manifest.json +0 -4
  193. package/.next/server/chunks/[externals]_next_dist_0h.fyd6._.js +0 -3
  194. package/.next/server/chunks/[root-of-the-server]__002d92q._.js +0 -6
  195. package/.next/server/chunks/[root-of-the-server]__00a-~o4._.js +0 -3
  196. package/.next/server/chunks/[root-of-the-server]__06qx74m._.js +0 -5
  197. package/.next/server/chunks/[root-of-the-server]__0_ehal9._.js +0 -5
  198. package/.next/server/chunks/[root-of-the-server]__0a-p9wd._.js +0 -3
  199. package/.next/server/chunks/[root-of-the-server]__0b0kii6._.js +0 -8
  200. package/.next/server/chunks/[root-of-the-server]__0cw6f~v._.js +0 -5
  201. package/.next/server/chunks/[root-of-the-server]__0llo_uy._.js +0 -5
  202. package/.next/server/chunks/[root-of-the-server]__0rr3q~-._.js +0 -5
  203. package/.next/server/chunks/[root-of-the-server]__0y7g-4j._.js +0 -4
  204. package/.next/server/chunks/[root-of-the-server]__11j~5mn._.js +0 -3
  205. package/.next/server/chunks/[turbopack]_runtime.js +0 -903
  206. package/.next/server/chunks/_next-internal_server_app_api_agent_[id]_events_route_actions_05o7blz.js +0 -3
  207. package/.next/server/chunks/_next-internal_server_app_api_agent_[id]_route_actions_0kr98j0.js +0 -3
  208. package/.next/server/chunks/_next-internal_server_app_api_agent_new_route_actions_0w3r5tj.js +0 -3
  209. package/.next/server/chunks/_next-internal_server_app_api_files_[___path]_route_actions_0_g4akf.js +0 -3
  210. package/.next/server/chunks/_next-internal_server_app_api_models-config_route_actions_0ipr5cq.js +0 -3
  211. package/.next/server/chunks/_next-internal_server_app_api_models_route_actions_0vfccm4.js +0 -3
  212. package/.next/server/chunks/_next-internal_server_app_api_sessions_[id]_context_route_actions_0d0pnzf.js +0 -3
  213. package/.next/server/chunks/_next-internal_server_app_api_sessions_[id]_route_actions_0eo4u5w.js +0 -3
  214. package/.next/server/chunks/_next-internal_server_app_api_sessions_new_route_actions_093p~n-.js +0 -3
  215. package/.next/server/chunks/_next-internal_server_app_api_sessions_route_actions_0y1t9w0.js +0 -3
  216. package/.next/server/chunks/_next-internal_server_app_favicon_ico_route_actions_095lj93.js +0 -3
  217. package/.next/server/chunks/lib_session-reader_ts_07kvkqq._.js +0 -5
  218. package/.next/server/chunks/node_modules_next_04~_e52._.js +0 -13
  219. package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0yubv2d.js +0 -3
  220. package/.next/server/chunks/ssr/[root-of-the-server]__00d4x5d._.js +0 -3
  221. package/.next/server/chunks/ssr/[root-of-the-server]__02hi65f._.js +0 -3
  222. package/.next/server/chunks/ssr/[root-of-the-server]__06-2p1a._.js +0 -33
  223. package/.next/server/chunks/ssr/[root-of-the-server]__09z7o2x._.js +0 -19
  224. package/.next/server/chunks/ssr/[root-of-the-server]__0jag6jd._.js +0 -3
  225. package/.next/server/chunks/ssr/[root-of-the-server]__0pr3cat._.js +0 -33
  226. package/.next/server/chunks/ssr/[root-of-the-server]__0pspq~2._.js +0 -6
  227. package/.next/server/chunks/ssr/[root-of-the-server]__0w~zl.s._.js +0 -3
  228. package/.next/server/chunks/ssr/[turbopack]_runtime.js +0 -903
  229. package/.next/server/chunks/ssr/_next-internal_server_app__global-error_page_actions_0k77kol.js +0 -3
  230. package/.next/server/chunks/ssr/_next-internal_server_app__not-found_page_actions_0eq97pa.js +0 -3
  231. package/.next/server/chunks/ssr/_next-internal_server_app_page_actions_09-gtaw.js +0 -3
  232. package/.next/server/chunks/ssr/app_layout_tsx_13yf0ls._.js +0 -3
  233. package/.next/server/chunks/ssr/components_ToolPanel_tsx_0r3vloj._.js +0 -3
  234. package/.next/server/chunks/ssr/components_ToolPanel_tsx_0ybdq6k._.js +0 -3
  235. package/.next/server/chunks/ssr/node_modules_09w7yel._.js +0 -33
  236. package/.next/server/chunks/ssr/node_modules_0vtdjw7._.js +0 -3
  237. package/.next/server/chunks/ssr/node_modules_next_dist_09y1ibj._.js +0 -6
  238. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_0inhx6q._.js +0 -3
  239. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_forbidden_0ghu-f7.js +0 -3
  240. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_global-error_0lgvd_..js +0 -3
  241. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_unauthorized_0cjv-23.js +0 -3
  242. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_002l7yi.js +0 -4
  243. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_02suzhc.js +0 -4
  244. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0nsg22r.js +0 -4
  245. package/.next/static/chunks/0-j.wjqnc6zff.js +0 -1
  246. package/.next/static/chunks/02i7dfk78~t~2.js +0 -4
  247. package/.next/static/chunks/02p06lvcsni3l.js +0 -1
  248. package/.next/static/chunks/09dho1gmydle0.js +0 -1
  249. package/.next/static/chunks/0_mdnxjv887c..css +0 -1
  250. package/.next/static/chunks/0cj37tl-sc0gx.js +0 -2
  251. package/.next/static/chunks/0h4bblvd1oiwg.js +0 -1
  252. package/.next/static/chunks/0j-yjan8jn-8-.js +0 -31
  253. package/.next/static/chunks/0lpjxrppxb_hc.js +0 -1
  254. package/.next/static/chunks/turbopack-04u~j1o-remaj.js +0 -1
  255. package/.next/static/h_DPSqE34dYtPmxavamVm/_buildManifest.js +0 -11
  256. package/.next/static/h_DPSqE34dYtPmxavamVm/_clientMiddlewareManifest.js +0 -1
  257. package/.next/static/media/favicon.0~uco8ba8mwit.ico +0 -0
  258. package/.next/turbopack +0 -0
  259. /package/.next/static/{h_DPSqE34dYtPmxavamVm → UW-CKcK5B6AAyNf06F5iF}/_ssgManifest.js +0 -0
  260. /package/.next/static/chunks/{03~yq9q893hmn.js → polyfills-42372ed130431b0a.js} +0 -0
@@ -0,0 +1,351 @@
1
+ // File: /Users/alex/Documents/Workspace/pi-web/app/api/sessions/route.ts
2
+ import * as entry from '../../../../../app/api/sessions/route.js'
3
+ import type { NextRequest } from 'next/server.js'
4
+
5
+ import type { InstantConfigForTypeCheckInternal } from 'next/dist/build/segment-config/app/app-segment-config.js'
6
+
7
+ type TEntry = typeof import('../../../../../app/api/sessions/route.js')
8
+
9
+ type SegmentParams<T extends Object = any> = T extends Record<string, any>
10
+ ? { [K in keyof T]: T[K] extends string ? string | string[] | undefined : never }
11
+ : T
12
+
13
+ // Check that the entry is a valid entry
14
+ checkFields<Diff<{
15
+ GET?: Function
16
+ HEAD?: Function
17
+ OPTIONS?: Function
18
+ POST?: Function
19
+ PUT?: Function
20
+ DELETE?: Function
21
+ PATCH?: Function
22
+ config?: {}
23
+ generateStaticParams?: Function
24
+ unstable_instant?: InstantConfigForTypeCheckInternal
25
+ unstable_dynamicStaleTime?: number
26
+ revalidate?: RevalidateRange<TEntry> | false
27
+ dynamic?: 'auto' | 'force-dynamic' | 'error' | 'force-static'
28
+ dynamicParams?: boolean
29
+ fetchCache?: 'auto' | 'force-no-store' | 'only-no-store' | 'default-no-store' | 'default-cache' | 'only-cache' | 'force-cache'
30
+ preferredRegion?: 'auto' | 'global' | 'home' | string | string[]
31
+ runtime?: 'nodejs' | 'experimental-edge' | 'edge'
32
+ maxDuration?: number
33
+
34
+ }, TEntry, ''>>()
35
+
36
+ type RouteContext = { params: Promise<SegmentParams> }
37
+ // Check the prop type of the entry function
38
+ if ('GET' in entry) {
39
+ checkFields<
40
+ Diff<
41
+ ParamCheck<Request | NextRequest>,
42
+ {
43
+ __tag__: 'GET'
44
+ __param_position__: 'first'
45
+ __param_type__: FirstArg<MaybeField<TEntry, 'GET'>>
46
+ },
47
+ 'GET'
48
+ >
49
+ >()
50
+ checkFields<
51
+ Diff<
52
+ ParamCheck<RouteContext>,
53
+ {
54
+ __tag__: 'GET'
55
+ __param_position__: 'second'
56
+ __param_type__: SecondArg<MaybeField<TEntry, 'GET'>>
57
+ },
58
+ 'GET'
59
+ >
60
+ >()
61
+
62
+ checkFields<
63
+ Diff<
64
+ {
65
+ __tag__: 'GET',
66
+ __return_type__: Response | void | never | Promise<Response | void | never>
67
+ },
68
+ {
69
+ __tag__: 'GET',
70
+ __return_type__: ReturnType<MaybeField<TEntry, 'GET'>>
71
+ },
72
+ 'GET'
73
+ >
74
+ >()
75
+ }
76
+ // Check the prop type of the entry function
77
+ if ('HEAD' in entry) {
78
+ checkFields<
79
+ Diff<
80
+ ParamCheck<Request | NextRequest>,
81
+ {
82
+ __tag__: 'HEAD'
83
+ __param_position__: 'first'
84
+ __param_type__: FirstArg<MaybeField<TEntry, 'HEAD'>>
85
+ },
86
+ 'HEAD'
87
+ >
88
+ >()
89
+ checkFields<
90
+ Diff<
91
+ ParamCheck<RouteContext>,
92
+ {
93
+ __tag__: 'HEAD'
94
+ __param_position__: 'second'
95
+ __param_type__: SecondArg<MaybeField<TEntry, 'HEAD'>>
96
+ },
97
+ 'HEAD'
98
+ >
99
+ >()
100
+
101
+ checkFields<
102
+ Diff<
103
+ {
104
+ __tag__: 'HEAD',
105
+ __return_type__: Response | void | never | Promise<Response | void | never>
106
+ },
107
+ {
108
+ __tag__: 'HEAD',
109
+ __return_type__: ReturnType<MaybeField<TEntry, 'HEAD'>>
110
+ },
111
+ 'HEAD'
112
+ >
113
+ >()
114
+ }
115
+ // Check the prop type of the entry function
116
+ if ('OPTIONS' in entry) {
117
+ checkFields<
118
+ Diff<
119
+ ParamCheck<Request | NextRequest>,
120
+ {
121
+ __tag__: 'OPTIONS'
122
+ __param_position__: 'first'
123
+ __param_type__: FirstArg<MaybeField<TEntry, 'OPTIONS'>>
124
+ },
125
+ 'OPTIONS'
126
+ >
127
+ >()
128
+ checkFields<
129
+ Diff<
130
+ ParamCheck<RouteContext>,
131
+ {
132
+ __tag__: 'OPTIONS'
133
+ __param_position__: 'second'
134
+ __param_type__: SecondArg<MaybeField<TEntry, 'OPTIONS'>>
135
+ },
136
+ 'OPTIONS'
137
+ >
138
+ >()
139
+
140
+ checkFields<
141
+ Diff<
142
+ {
143
+ __tag__: 'OPTIONS',
144
+ __return_type__: Response | void | never | Promise<Response | void | never>
145
+ },
146
+ {
147
+ __tag__: 'OPTIONS',
148
+ __return_type__: ReturnType<MaybeField<TEntry, 'OPTIONS'>>
149
+ },
150
+ 'OPTIONS'
151
+ >
152
+ >()
153
+ }
154
+ // Check the prop type of the entry function
155
+ if ('POST' in entry) {
156
+ checkFields<
157
+ Diff<
158
+ ParamCheck<Request | NextRequest>,
159
+ {
160
+ __tag__: 'POST'
161
+ __param_position__: 'first'
162
+ __param_type__: FirstArg<MaybeField<TEntry, 'POST'>>
163
+ },
164
+ 'POST'
165
+ >
166
+ >()
167
+ checkFields<
168
+ Diff<
169
+ ParamCheck<RouteContext>,
170
+ {
171
+ __tag__: 'POST'
172
+ __param_position__: 'second'
173
+ __param_type__: SecondArg<MaybeField<TEntry, 'POST'>>
174
+ },
175
+ 'POST'
176
+ >
177
+ >()
178
+
179
+ checkFields<
180
+ Diff<
181
+ {
182
+ __tag__: 'POST',
183
+ __return_type__: Response | void | never | Promise<Response | void | never>
184
+ },
185
+ {
186
+ __tag__: 'POST',
187
+ __return_type__: ReturnType<MaybeField<TEntry, 'POST'>>
188
+ },
189
+ 'POST'
190
+ >
191
+ >()
192
+ }
193
+ // Check the prop type of the entry function
194
+ if ('PUT' in entry) {
195
+ checkFields<
196
+ Diff<
197
+ ParamCheck<Request | NextRequest>,
198
+ {
199
+ __tag__: 'PUT'
200
+ __param_position__: 'first'
201
+ __param_type__: FirstArg<MaybeField<TEntry, 'PUT'>>
202
+ },
203
+ 'PUT'
204
+ >
205
+ >()
206
+ checkFields<
207
+ Diff<
208
+ ParamCheck<RouteContext>,
209
+ {
210
+ __tag__: 'PUT'
211
+ __param_position__: 'second'
212
+ __param_type__: SecondArg<MaybeField<TEntry, 'PUT'>>
213
+ },
214
+ 'PUT'
215
+ >
216
+ >()
217
+
218
+ checkFields<
219
+ Diff<
220
+ {
221
+ __tag__: 'PUT',
222
+ __return_type__: Response | void | never | Promise<Response | void | never>
223
+ },
224
+ {
225
+ __tag__: 'PUT',
226
+ __return_type__: ReturnType<MaybeField<TEntry, 'PUT'>>
227
+ },
228
+ 'PUT'
229
+ >
230
+ >()
231
+ }
232
+ // Check the prop type of the entry function
233
+ if ('DELETE' in entry) {
234
+ checkFields<
235
+ Diff<
236
+ ParamCheck<Request | NextRequest>,
237
+ {
238
+ __tag__: 'DELETE'
239
+ __param_position__: 'first'
240
+ __param_type__: FirstArg<MaybeField<TEntry, 'DELETE'>>
241
+ },
242
+ 'DELETE'
243
+ >
244
+ >()
245
+ checkFields<
246
+ Diff<
247
+ ParamCheck<RouteContext>,
248
+ {
249
+ __tag__: 'DELETE'
250
+ __param_position__: 'second'
251
+ __param_type__: SecondArg<MaybeField<TEntry, 'DELETE'>>
252
+ },
253
+ 'DELETE'
254
+ >
255
+ >()
256
+
257
+ checkFields<
258
+ Diff<
259
+ {
260
+ __tag__: 'DELETE',
261
+ __return_type__: Response | void | never | Promise<Response | void | never>
262
+ },
263
+ {
264
+ __tag__: 'DELETE',
265
+ __return_type__: ReturnType<MaybeField<TEntry, 'DELETE'>>
266
+ },
267
+ 'DELETE'
268
+ >
269
+ >()
270
+ }
271
+ // Check the prop type of the entry function
272
+ if ('PATCH' in entry) {
273
+ checkFields<
274
+ Diff<
275
+ ParamCheck<Request | NextRequest>,
276
+ {
277
+ __tag__: 'PATCH'
278
+ __param_position__: 'first'
279
+ __param_type__: FirstArg<MaybeField<TEntry, 'PATCH'>>
280
+ },
281
+ 'PATCH'
282
+ >
283
+ >()
284
+ checkFields<
285
+ Diff<
286
+ ParamCheck<RouteContext>,
287
+ {
288
+ __tag__: 'PATCH'
289
+ __param_position__: 'second'
290
+ __param_type__: SecondArg<MaybeField<TEntry, 'PATCH'>>
291
+ },
292
+ 'PATCH'
293
+ >
294
+ >()
295
+
296
+ checkFields<
297
+ Diff<
298
+ {
299
+ __tag__: 'PATCH',
300
+ __return_type__: Response | void | never | Promise<Response | void | never>
301
+ },
302
+ {
303
+ __tag__: 'PATCH',
304
+ __return_type__: ReturnType<MaybeField<TEntry, 'PATCH'>>
305
+ },
306
+ 'PATCH'
307
+ >
308
+ >()
309
+ }
310
+
311
+ // Check the arguments and return type of the generateStaticParams function
312
+ if ('generateStaticParams' in entry) {
313
+ checkFields<Diff<{ params: SegmentParams }, FirstArg<MaybeField<TEntry, 'generateStaticParams'>>, 'generateStaticParams'>>()
314
+ checkFields<Diff<{ __tag__: 'generateStaticParams', __return_type__: any[] | Promise<any[]> }, { __tag__: 'generateStaticParams', __return_type__: ReturnType<MaybeField<TEntry, 'generateStaticParams'>> }>>()
315
+ }
316
+
317
+ export interface PageProps {
318
+ params?: Promise<SegmentParams>
319
+ searchParams?: Promise<any>
320
+ }
321
+ export interface LayoutProps {
322
+ children?: React.ReactNode
323
+
324
+ params?: Promise<SegmentParams>
325
+ }
326
+
327
+ // =============
328
+ // Utility types
329
+ type RevalidateRange<T> = T extends { revalidate: any } ? NonNegative<T['revalidate']> : never
330
+
331
+ // If T is unknown or any, it will be an empty {} type. Otherwise, it will be the same as Omit<T, keyof Base>.
332
+ type OmitWithTag<T, K extends keyof any, _M> = Omit<T, K>
333
+ type Diff<Base, T extends Base, Message extends string = ''> = 0 extends (1 & T) ? {} : OmitWithTag<T, keyof Base, Message>
334
+
335
+ type FirstArg<T extends Function> = T extends (...args: [infer T, any]) => any ? unknown extends T ? any : T : never
336
+ type SecondArg<T extends Function> = T extends (...args: [any, infer T]) => any ? unknown extends T ? any : T : never
337
+ type MaybeField<T, K extends string> = T extends { [k in K]: infer G } ? G extends Function ? G : never : never
338
+
339
+ type ParamCheck<T> = {
340
+ __tag__: string
341
+ __param_position__: string
342
+ __param_type__: T
343
+ }
344
+
345
+ function checkFields<_ extends { [k in keyof any]: never }>() {}
346
+
347
+ // https://github.com/sindresorhus/type-fest
348
+ type Numeric = number | bigint
349
+ type Zero = 0 | 0n
350
+ type Negative<T extends Numeric> = T extends Zero ? never : `${T}` extends `-${string}` ? T : never
351
+ type NonNegative<T extends Numeric> = T extends Zero ? T : Negative<T> extends never ? T : '__invalid_negative_number__'
@@ -0,0 +1,87 @@
1
+ // File: /Users/alex/Documents/Workspace/pi-web/app/layout.tsx
2
+ import * as entry from '../../../app/layout.js'
3
+ import type { ResolvingMetadata, ResolvingViewport } from 'next/dist/lib/metadata/types/metadata-interface.js'
4
+
5
+ import type { InstantConfigForTypeCheckInternal } from 'next/dist/build/segment-config/app/app-segment-config.js'
6
+
7
+ type TEntry = typeof import('../../../app/layout.js')
8
+
9
+ type SegmentParams<T extends Object = any> = T extends Record<string, any>
10
+ ? { [K in keyof T]: T[K] extends string ? string | string[] | undefined : never }
11
+ : T
12
+
13
+ // Check that the entry is a valid entry
14
+ checkFields<Diff<{
15
+ default: Function
16
+ config?: {}
17
+ generateStaticParams?: Function
18
+ unstable_instant?: InstantConfigForTypeCheckInternal
19
+ unstable_dynamicStaleTime?: number
20
+ revalidate?: RevalidateRange<TEntry> | false
21
+ dynamic?: 'auto' | 'force-dynamic' | 'error' | 'force-static'
22
+ dynamicParams?: boolean
23
+ fetchCache?: 'auto' | 'force-no-store' | 'only-no-store' | 'default-no-store' | 'default-cache' | 'only-cache' | 'force-cache'
24
+ preferredRegion?: 'auto' | 'global' | 'home' | string | string[]
25
+ runtime?: 'nodejs' | 'experimental-edge' | 'edge'
26
+ maxDuration?: number
27
+
28
+ metadata?: any
29
+ generateMetadata?: Function
30
+ viewport?: any
31
+ generateViewport?: Function
32
+
33
+ }, TEntry, ''>>()
34
+
35
+
36
+ // Check the prop type of the entry function
37
+ checkFields<Diff<LayoutProps, FirstArg<TEntry['default']>, 'default'>>()
38
+
39
+ // Check the arguments and return type of the generateMetadata function
40
+ if ('generateMetadata' in entry) {
41
+ checkFields<Diff<LayoutProps, FirstArg<MaybeField<TEntry, 'generateMetadata'>>, 'generateMetadata'>>()
42
+ checkFields<Diff<ResolvingMetadata, SecondArg<MaybeField<TEntry, 'generateMetadata'>>, 'generateMetadata'>>()
43
+ }
44
+
45
+ // Check the arguments and return type of the generateViewport function
46
+ if ('generateViewport' in entry) {
47
+ checkFields<Diff<LayoutProps, FirstArg<MaybeField<TEntry, 'generateViewport'>>, 'generateViewport'>>()
48
+ checkFields<Diff<ResolvingViewport, SecondArg<MaybeField<TEntry, 'generateViewport'>>, 'generateViewport'>>()
49
+ }
50
+
51
+ // Check the arguments and return type of the generateStaticParams function
52
+ if ('generateStaticParams' in entry) {
53
+ checkFields<Diff<{ params: SegmentParams }, FirstArg<MaybeField<TEntry, 'generateStaticParams'>>, 'generateStaticParams'>>()
54
+ checkFields<Diff<{ __tag__: 'generateStaticParams', __return_type__: any[] | Promise<any[]> }, { __tag__: 'generateStaticParams', __return_type__: ReturnType<MaybeField<TEntry, 'generateStaticParams'>> }>>()
55
+ }
56
+
57
+ export interface PageProps {
58
+ params?: Promise<SegmentParams>
59
+ searchParams?: Promise<any>
60
+ }
61
+ export interface LayoutProps {
62
+ children?: React.ReactNode
63
+
64
+ params?: Promise<SegmentParams>
65
+ }
66
+
67
+ // =============
68
+ // Utility types
69
+ type RevalidateRange<T> = T extends { revalidate: any } ? NonNegative<T['revalidate']> : never
70
+
71
+ // If T is unknown or any, it will be an empty {} type. Otherwise, it will be the same as Omit<T, keyof Base>.
72
+ type OmitWithTag<T, K extends keyof any, _M> = Omit<T, K>
73
+ type Diff<Base, T extends Base, Message extends string = ''> = 0 extends (1 & T) ? {} : OmitWithTag<T, keyof Base, Message>
74
+
75
+ type FirstArg<T extends Function> = T extends (...args: [infer T, any]) => any ? unknown extends T ? any : T : never
76
+ type SecondArg<T extends Function> = T extends (...args: [any, infer T]) => any ? unknown extends T ? any : T : never
77
+ type MaybeField<T, K extends string> = T extends { [k in K]: infer G } ? G extends Function ? G : never : never
78
+
79
+
80
+
81
+ function checkFields<_ extends { [k in keyof any]: never }>() {}
82
+
83
+ // https://github.com/sindresorhus/type-fest
84
+ type Numeric = number | bigint
85
+ type Zero = 0 | 0n
86
+ type Negative<T extends Numeric> = T extends Zero ? never : `${T}` extends `-${string}` ? T : never
87
+ type NonNegative<T extends Numeric> = T extends Zero ? T : Negative<T> extends never ? T : '__invalid_negative_number__'
@@ -0,0 +1,87 @@
1
+ // File: /Users/alex/Documents/Workspace/pi-web/app/page.tsx
2
+ import * as entry from '../../../app/page.js'
3
+ import type { ResolvingMetadata, ResolvingViewport } from 'next/dist/lib/metadata/types/metadata-interface.js'
4
+
5
+ import type { InstantConfigForTypeCheckInternal } from 'next/dist/build/segment-config/app/app-segment-config.js'
6
+
7
+ type TEntry = typeof import('../../../app/page.js')
8
+
9
+ type SegmentParams<T extends Object = any> = T extends Record<string, any>
10
+ ? { [K in keyof T]: T[K] extends string ? string | string[] | undefined : never }
11
+ : T
12
+
13
+ // Check that the entry is a valid entry
14
+ checkFields<Diff<{
15
+ default: Function
16
+ config?: {}
17
+ generateStaticParams?: Function
18
+ unstable_instant?: InstantConfigForTypeCheckInternal
19
+ unstable_dynamicStaleTime?: number
20
+ revalidate?: RevalidateRange<TEntry> | false
21
+ dynamic?: 'auto' | 'force-dynamic' | 'error' | 'force-static'
22
+ dynamicParams?: boolean
23
+ fetchCache?: 'auto' | 'force-no-store' | 'only-no-store' | 'default-no-store' | 'default-cache' | 'only-cache' | 'force-cache'
24
+ preferredRegion?: 'auto' | 'global' | 'home' | string | string[]
25
+ runtime?: 'nodejs' | 'experimental-edge' | 'edge'
26
+ maxDuration?: number
27
+
28
+ metadata?: any
29
+ generateMetadata?: Function
30
+ viewport?: any
31
+ generateViewport?: Function
32
+
33
+ }, TEntry, ''>>()
34
+
35
+
36
+ // Check the prop type of the entry function
37
+ checkFields<Diff<PageProps, FirstArg<TEntry['default']>, 'default'>>()
38
+
39
+ // Check the arguments and return type of the generateMetadata function
40
+ if ('generateMetadata' in entry) {
41
+ checkFields<Diff<PageProps, FirstArg<MaybeField<TEntry, 'generateMetadata'>>, 'generateMetadata'>>()
42
+ checkFields<Diff<ResolvingMetadata, SecondArg<MaybeField<TEntry, 'generateMetadata'>>, 'generateMetadata'>>()
43
+ }
44
+
45
+ // Check the arguments and return type of the generateViewport function
46
+ if ('generateViewport' in entry) {
47
+ checkFields<Diff<PageProps, FirstArg<MaybeField<TEntry, 'generateViewport'>>, 'generateViewport'>>()
48
+ checkFields<Diff<ResolvingViewport, SecondArg<MaybeField<TEntry, 'generateViewport'>>, 'generateViewport'>>()
49
+ }
50
+
51
+ // Check the arguments and return type of the generateStaticParams function
52
+ if ('generateStaticParams' in entry) {
53
+ checkFields<Diff<{ params: SegmentParams }, FirstArg<MaybeField<TEntry, 'generateStaticParams'>>, 'generateStaticParams'>>()
54
+ checkFields<Diff<{ __tag__: 'generateStaticParams', __return_type__: any[] | Promise<any[]> }, { __tag__: 'generateStaticParams', __return_type__: ReturnType<MaybeField<TEntry, 'generateStaticParams'>> }>>()
55
+ }
56
+
57
+ export interface PageProps {
58
+ params?: Promise<SegmentParams>
59
+ searchParams?: Promise<any>
60
+ }
61
+ export interface LayoutProps {
62
+ children?: React.ReactNode
63
+
64
+ params?: Promise<SegmentParams>
65
+ }
66
+
67
+ // =============
68
+ // Utility types
69
+ type RevalidateRange<T> = T extends { revalidate: any } ? NonNegative<T['revalidate']> : never
70
+
71
+ // If T is unknown or any, it will be an empty {} type. Otherwise, it will be the same as Omit<T, keyof Base>.
72
+ type OmitWithTag<T, K extends keyof any, _M> = Omit<T, K>
73
+ type Diff<Base, T extends Base, Message extends string = ''> = 0 extends (1 & T) ? {} : OmitWithTag<T, keyof Base, Message>
74
+
75
+ type FirstArg<T extends Function> = T extends (...args: [infer T, any]) => any ? unknown extends T ? any : T : never
76
+ type SecondArg<T extends Function> = T extends (...args: [any, infer T]) => any ? unknown extends T ? any : T : never
77
+ type MaybeField<T, K extends string> = T extends { [k in K]: infer G } ? G extends Function ? G : never : never
78
+
79
+
80
+
81
+ function checkFields<_ extends { [k in keyof any]: never }>() {}
82
+
83
+ // https://github.com/sindresorhus/type-fest
84
+ type Numeric = number | bigint
85
+ type Zero = 0 | 0n
86
+ type Negative<T extends Numeric> = T extends Zero ? never : `${T}` extends `-${string}` ? T : never
87
+ type NonNegative<T extends Numeric> = T extends Zero ? T : Negative<T> extends never ? T : '__invalid_negative_number__'
@@ -0,0 +1 @@
1
+ {"type": "module"}
package/README.md CHANGED
@@ -53,15 +53,16 @@ git clone https://github.com/agegr/working-chat.git
53
53
  ```
54
54
  app/
55
55
  api/
56
- sessions/ # read session files
57
- agent/ # send commands, stream events
58
- files/ # browse and open files in the current cwd
59
- models/ # list available models
56
+ sessions/ # read/write session files
57
+ agent/ # send commands, stream events via SSE
58
+ files/ # read file contents for the in-app viewer
59
+ models/ # list available models + default model
60
60
  models-config/ # read and write models.json
61
- components/ # UI components
61
+ components/ # UI components
62
62
  lib/
63
- session-reader.ts # parse .jsonl session files
64
- rpc-manager.ts # manage AgentSession lifecycle
63
+ session-reader.ts # parse .jsonl session files
64
+ rpc-manager.ts # manage AgentSession lifecycle
65
+ normalize.ts # normalize toolCall field names (file vs. stream format)
65
66
  types.ts
66
67
  ```
67
68
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agegr/pi-web",
3
- "version": "0.2.3",
3
+ "version": "0.3.1",
4
4
  "description": "Web UI for the pi coding agent",
5
5
  "bin": {
6
6
  "pi-web": "bin/pi-web.js"
@@ -17,9 +17,10 @@
17
17
  ],
18
18
  "scripts": {
19
19
  "dev": "next dev -p 3030",
20
- "build": "next build",
20
+ "build": "next build --webpack",
21
21
  "start": "next start -p 3030",
22
- "lint": "eslint ."
22
+ "lint": "eslint .",
23
+ "release": "npm version patch --no-git-tag-version && npm run build && npm publish --access public"
23
24
  },
24
25
  "dependencies": {
25
26
  "@mariozechner/pi-coding-agent": "^0.62.0",