@wular/coder 0.4.1 → 0.4.3

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 (378) hide show
  1. package/README.md +69 -70
  2. package/dist/actions-FzDNxMFf.js +20 -0
  3. package/dist/{adapter-BKVzTDnn.js → adapter-7SEiVsmp.js} +1 -1
  4. package/dist/{adapter-B0oYCI0S.js → adapter-BLEfUqoQ.js} +1 -1
  5. package/dist/{adapter-DPInwbJG.js → adapter-H4GlcKQz.js} +1 -1
  6. package/dist/{add-CE-70LFs.js → add-B50dIJGd.js} +1 -1
  7. package/dist/{add-BxpLHnvD.js → add-D7X3gxap.js} +1 -1
  8. package/dist/{add-ej0X9e3a.js → add-DOEUHIe7.js} +1 -1
  9. package/dist/{add-U-pty9qJ.js → add-QExQhTzi.js} +1 -1
  10. package/dist/{add-json-CEa-6luW.js → add-json-Ck4KIZrT.js} +1 -1
  11. package/dist/{agent-JdtZozvP.js → agent-BPtnEf1q.js} +1 -1
  12. package/dist/{agent-BsYx3Odz.js → agent-BlQ_dNNm.js} +2 -2
  13. package/dist/{alias-DX-Bm86x.js → alias-BwQBovke.js} +1 -1
  14. package/dist/{app-BT5f7zL5.js → app-y6BYm2eH.js} +1 -1
  15. package/dist/{approvals-C-AvFt6s.js → approvals-Cc9cq5T1.js} +2 -2
  16. package/dist/{approve-DOmpQRNd.js → approve-oO9k2fnK.js} +2 -2
  17. package/dist/{apps-CjfrZyM5.js → apps-CU2YalX8.js} +1 -1
  18. package/dist/{archive-BziJ1rQ-.js → archive-C5c_HQS1.js} +2 -2
  19. package/dist/{archive-BUB8gFKD.js → archive-CemlWlVY.js} +2 -2
  20. package/dist/archive-sweep-ehg-fWIt.js +1 -0
  21. package/dist/{args-BOEEdpWk.js → args-DcBCtXhz.js} +1 -1
  22. package/dist/{ask-dE3U3ss2.js → ask-Chu7Twu_.js} +2 -2
  23. package/dist/auth-BOyXPOtu.js +1 -0
  24. package/dist/auth-XbqKSbcD.js +1 -0
  25. package/dist/{chat-bridge-BS9WtP3X.js → chat-bridge-DXgZItGP.js} +1 -1
  26. package/dist/{chat-B_yhNTo0.js → chat-cknlIhVh.js} +1 -1
  27. package/dist/{cli-BilSDkvE.js → cli-B1ObVrL4.js} +5 -5
  28. package/dist/cli.d.ts +1 -1
  29. package/dist/cli.js +1 -1
  30. package/dist/{client-D9IoAuDD.js → client-31YzOj-i.js} +1 -1
  31. package/dist/{config-Da_cwoxI.js → config-DAE_qHYA.js} +1 -1
  32. package/dist/{create-C_iMJV4Y.js → create-CM8B8JxD.js} +1 -1
  33. package/dist/credentials-BXD4Qptk.js +1 -0
  34. package/dist/dash/manifest.json +934 -1014
  35. package/dist/dash/public/assets/chunks/{agent-pills-c9c4ac4d4a10df83.js → agent-pills-b6a6da91c9559d9f.js} +1 -1
  36. package/dist/dash/public/assets/chunks/{agent-settings-form-8be2ddab074aba6d.js → agent-settings-form-b615c677046cd6f2.js} +1 -1
  37. package/dist/dash/public/assets/chunks/agents-grid-f2e7b4ff9e11b6e3.js +1 -0
  38. package/dist/dash/public/assets/chunks/{badge-676b01e0c615bf7b.js → badge-215c7b2631dafc69.js} +1 -1
  39. package/dist/dash/public/assets/chunks/{card-e0901d68b79dfa93.js → card-e86dcc81326d2b14.js} +1 -1
  40. package/dist/dash/public/assets/chunks/{combo-41234c24668b1db1.js → combo-09e246dc9a517fa8.js} +1 -1
  41. package/dist/dash/public/assets/chunks/composer-417166b029f48c47.js +1 -0
  42. package/dist/dash/public/assets/chunks/composer-645ae8fa97a35280.js +1 -0
  43. package/dist/dash/public/assets/chunks/{confirm-f2fe4ba9905a89c6.js → confirm-5ae484241ad888fd.js} +1 -1
  44. package/dist/dash/public/assets/chunks/{connect-apps-aa2a3d82e48ed8c3.js → connect-apps-4147c45f45fde2b1.js} +1 -1
  45. package/dist/dash/public/assets/chunks/{connect-repositories-5389ec8701a3deac.js → connect-repositories-77591110836bdf03.js} +1 -1
  46. package/dist/dash/public/assets/chunks/credentials-list-e005a0783ec93465.js +2 -0
  47. package/dist/dash/public/assets/chunks/{custom-range-4761ab14f05149df.js → custom-range-463e119af4681c61.js} +1 -1
  48. package/dist/dash/public/assets/chunks/{editor-bfe8cd854f8001be.js → editor-804b84f4fe6539cd.js} +4 -4
  49. package/dist/dash/public/assets/chunks/{engines-list-f1191390f5715b39.js → engines-list-ceab51f13c690e8c.js} +1 -1
  50. package/dist/dash/public/assets/chunks/{field-901f1f35c18c39c9.js → field-aa0a4b98a976781e.js} +1 -1
  51. package/dist/dash/public/assets/chunks/filter-91144ac2eec6297f.js +1 -0
  52. package/dist/dash/public/assets/chunks/format-105c706345987fb2.js +1 -0
  53. package/dist/dash/public/assets/chunks/heads-a42817b32d2d7f08.js +1 -0
  54. package/dist/dash/public/assets/chunks/{instructions-052fa45a9daf6db6.js → instructions-3a1dcaff2d868aa5.js} +1 -1
  55. package/dist/dash/public/assets/chunks/instructions-6c6f981fffaa31e4.js +1 -0
  56. package/dist/dash/public/assets/chunks/{list-1d259660d7612c5f.js → list-7270361464fc3c04.js} +1 -1
  57. package/dist/dash/public/assets/chunks/{mcp-list-e3bebbbe831393b8.js → mcp-list-2e715d48666b54ad.js} +1 -1
  58. package/dist/dash/public/assets/chunks/{models-list-44f857a469ca04d5.js → models-list-d3c40f94c761a6e5.js} +1 -1
  59. package/dist/dash/public/assets/chunks/paged-3ddb6077bef42752.js +1 -0
  60. package/dist/dash/public/assets/chunks/{platform-actions-d1426602049926d2.js → platform-actions-271ec3b99a64280b.js} +1 -1
  61. package/dist/dash/public/assets/chunks/runners-list-767e49c7d0ec833a.js +1 -0
  62. package/dist/dash/public/assets/chunks/{segmented-358ff2b4992b8384.js → segmented-de4386ccaac7304d.js} +1 -1
  63. package/dist/dash/public/assets/chunks/{select-7ae25fd8a7d6c338.js → select-a90307706cffa6e0.js} +1 -1
  64. package/dist/dash/public/assets/chunks/{sentinel-c972a33dc69a5135.js → sentinel-b5e032b38604dfd3.js} +1 -1
  65. package/dist/dash/public/assets/chunks/shared-init-7f81ae7bc8c82438.js +2 -0
  66. package/dist/dash/public/assets/chunks/shared-init-933c7f9ee85be766.js +5 -0
  67. package/dist/dash/public/assets/chunks/{tail-7c27aab8ba268bd9.js → tail-4891e727ee526792.js} +1 -1
  68. package/dist/dash/public/assets/chunks/task-actions-ce854925a2dc78fd.js +1 -0
  69. package/dist/dash/public/assets/chunks/task-ddfddeaf07fb684c.js +1 -0
  70. package/dist/dash/public/assets/chunks/task-view-c37dcee08f21a279.js +5 -0
  71. package/dist/dash/public/assets/chunks/tasks-list-baef587999f322d8.js +1 -0
  72. package/dist/dash/public/assets/chunks/{toolbar-a75d2570f07cbb70.js → toolbar-8d98313606ad8a2d.js} +1 -1
  73. package/dist/dash/public/assets/chunks/{versions-list-fc2e0d2a7382e049.js → versions-list-532690efd9f1b0ea.js} +1 -1
  74. package/dist/dash/public/assets/dash-49ca85b59ac65c20.css +1 -0
  75. package/dist/dash/public/assets/dash-account-edc56e85dbaaabe0.css +1 -0
  76. package/dist/dash/public/assets/dash-agents-edba57b67e4005d0.css +1 -0
  77. package/dist/dash/public/assets/dash-agents-new-fe22253fbada2fbf.css +1 -0
  78. package/dist/dash/public/assets/dash-agents-param-slug-adf52e9dacb2d825.css +1 -0
  79. package/dist/dash/public/assets/dash-agents-param-slug-edit-a2937a347689ef29.css +1 -0
  80. package/dist/dash/public/assets/dash-agents-param-slug-platforms-265ba13db32a460d.css +1 -0
  81. package/dist/dash/public/assets/dash-agents-param-slug-settings-8afc52eb0372bc4b.css +1 -0
  82. package/dist/dash/public/assets/dash-agents-param-slug-tasks-6193e646be68dbd2.css +1 -0
  83. package/dist/dash/public/assets/dash-agents-param-slug-usage-ceadb3a1c911c402.css +1 -0
  84. package/dist/dash/public/assets/dash-settings-cf1997cd7f72e518.css +1 -0
  85. package/dist/dash/public/assets/dash-settings-param-tab-b44dac8e79a560e6.css +1 -0
  86. package/dist/dash/public/assets/dash-tasks-916c7100a8058aa3.css +1 -0
  87. package/dist/dash/public/assets/dash-tasks-param-id-194a6ffc20e872f2.css +1 -0
  88. package/dist/dash/public/assets/dash-usage-40940b289f85e0b6.css +1 -0
  89. package/dist/dash/public/assets/pnext-client-13aee92bef5c9e3f.js +1 -0
  90. package/dist/dash/public/assets/pnext-client-1f2686b2044f0df6.js +1 -0
  91. package/dist/dash/public/assets/pnext-client-26130234ebad7067.js +1 -0
  92. package/dist/dash/public/assets/pnext-client-311e35b0076bf406.js +1 -0
  93. package/dist/dash/public/assets/pnext-client-4ade1bf75c9c3d87.js +1 -0
  94. package/dist/dash/public/assets/pnext-client-61cd31b687ede1da.js +1 -0
  95. package/dist/dash/public/assets/pnext-client-61db65dc4223217a.js +1 -0
  96. package/dist/dash/public/assets/pnext-client-6ea656e7705e3f2a.js +1 -0
  97. package/dist/dash/public/assets/pnext-client-7fd0f793f0322cb9.js +1 -0
  98. package/dist/dash/public/assets/pnext-client-88159c0840fcfa4a.js +1 -0
  99. package/dist/dash/public/assets/pnext-client-b03f0c47c066b4f3.js +1 -0
  100. package/dist/dash/public/assets/{pnext-client-1b9ab0963a8ff77b.js → pnext-client-d6478835f543f901.js} +1 -1
  101. package/dist/dash/public/assets/pnext-client-dadb8359021ed590.js +1 -0
  102. package/dist/dash/public/assets/pnext-client-de07532d6aaebf2c.js +1 -0
  103. package/dist/dash/public/assets/pnext-client-f87a31890c8ff224.js +1 -0
  104. package/dist/dash/public/assets/pnext-client-ffe1c123a8e2a350.js +1 -0
  105. package/dist/dash/server/bundle-0.1.6-b29ec45cb963d47f/entry.js +2 -0
  106. package/dist/{default-vYPT26DR.js → default-BMvUMTFp.js} +1 -1
  107. package/dist/default-B_nKaX0-.js +1 -0
  108. package/dist/{delete-D8gEwoOj.js → delete-Bjteibld.js} +2 -2
  109. package/dist/{delete-z1_86nf6.js → delete-riCIKZwj.js} +2 -2
  110. package/dist/{disable-DVKd-0Xb.js → disable-DQC56YFy.js} +1 -1
  111. package/dist/{discover-Dvr_3_Xr.js → discover-Qanr5TEO.js} +1 -1
  112. package/dist/{discover-Df-a8K4R.js → discover-lgTYwoQp.js} +2 -2
  113. package/dist/dispatch-BsW_1m7e.js +14 -0
  114. package/dist/{docs-DKJnqZqt.js → docs-DFs7lOJp.js} +1 -1
  115. package/dist/{docs-BX65z2Iu.js → docs-DKROso-4.js} +2 -2
  116. package/dist/{enable-C8Zf_wpN.js → enable-D2DqZvcU.js} +1 -1
  117. package/dist/{env-CRf6wkM2.js → env-YRY3I60r.js} +1 -1
  118. package/dist/exec-DuUkLMqg.js +11 -0
  119. package/dist/executor-vMppVLB6.js +10 -0
  120. package/dist/flow/builtin/review.js +1 -1
  121. package/dist/flow/index.d.ts +1 -1
  122. package/dist/flow/index.js +1 -1
  123. package/dist/{flow-17k25MHt.js → flow-DmERAnR8.js} +1 -1
  124. package/dist/{github-actions-DwUzm4hC.js → github-actions-C_NkHVJq.js} +1 -1
  125. package/dist/http-D01Udu4u.js +1 -0
  126. package/dist/{index-CZjFX5zV.d.ts → index-B1L4zXZH.d.ts} +2 -1
  127. package/dist/{init-CoMfFxbG.js → init-Bd6JHzBc.js} +1 -1
  128. package/dist/integrations-B2CavXR1.js +5 -0
  129. package/dist/integrations-D1Dwy1kt.js +1 -0
  130. package/dist/lib/broker.js +2 -2
  131. package/dist/{list-DX-z3SBp.js → list-4Uo-0v9s.js} +1 -1
  132. package/dist/{list-BAKvxSbh.js → list-B0ujEZhd.js} +3 -3
  133. package/dist/{list-BYiG8Zav.js → list-B5oa1Bhy.js} +2 -2
  134. package/dist/{list-BxEywhHU.js → list-BjE_l6la.js} +1 -1
  135. package/dist/{list-VToARh3C.js → list-Ck9ibCs1.js} +1 -1
  136. package/dist/{list-CIW2joV1.js → list-DhgK4Zc4.js} +1 -1
  137. package/dist/{list-DpCf4G-H.js → list-KvL7AUhD.js} +2 -2
  138. package/dist/{list-C5w01-8q.js → list-byYLBl1U.js} +1 -1
  139. package/dist/{load-BpEsAn51.js → load-SnZd7xG1.js} +1 -1
  140. package/dist/{local-H3uvqEbq.js → local-BRy1EUq2.js} +1 -1
  141. package/dist/log-view-DeJstSkw.js +3 -0
  142. package/dist/{login-DkkslfBx.js → login-C-ahtDKV.js} +1 -1
  143. package/dist/{login-BFxX4jJy.js → login-zpwke8g1.js} +1 -1
  144. package/dist/{logout-BHAtw4Z8.js → logout-CI6Kf-T6.js} +1 -1
  145. package/dist/{maintenance-C5FklUw3.js → maintenance-BAzr9Jlr.js} +1 -1
  146. package/dist/{match-CXAjDhg7.js → match-DxV1d49D.js} +1 -1
  147. package/dist/{mcp-BgKb2Cdk.js → mcp-CmcL1MCG.js} +1 -1
  148. package/dist/{mcp-CCZOAo06.js → mcp-mhXwtGQT.js} +1 -1
  149. package/dist/{migrate-N-85_N7J.js → migrate-Czh3TEK5.js} +1 -1
  150. package/dist/{migrate-C4vM7DQN.js → migrate-w7KfzUAR.js} +1 -1
  151. package/dist/{model-Bs1StDo3.js → model-JRoTH9QK.js} +1 -1
  152. package/dist/models-C-S7HqSb.js +1 -0
  153. package/dist/{prompt-CEuBMNhk.js → prompt-CMXmt2l9.js} +4 -4
  154. package/dist/{push-CUC55Bqd.js → push-B8BhTyZs.js} +1 -1
  155. package/dist/queue-CirjEskI.js +117 -0
  156. package/dist/refresh-Bmy2r1Ee.js +1 -0
  157. package/dist/{remote-miQNTVRa.js → remote-CxFnEjZl.js} +1 -1
  158. package/dist/{remove-B93LNkZI.js → remove-C15WLaXT.js} +1 -1
  159. package/dist/{remove-C5_xggx7.js → remove-CTZYjjSr.js} +1 -1
  160. package/dist/{remove-eQ8y5C5p.js → remove-CTl-H0f0.js} +1 -1
  161. package/dist/{remove-CuH8a3L9.js → remove-DX2FVo5b.js} +1 -1
  162. package/dist/rename-D1g4TnHQ.js +1 -0
  163. package/dist/{result-BEtQZHaY.js → result-D49VN8PM.js} +3 -3
  164. package/dist/result-DGWyUHYU.js +18 -0
  165. package/dist/{resume-DYzKvyEw.js → resume-ywzc7z6A.js} +2 -2
  166. package/dist/{review-oIBeECZE.js → review-ZC0xG8XY.js} +2 -2
  167. package/dist/{rotate-key-IdMYH7gg.js → rotate-key-Bf8_99ck.js} +1 -1
  168. package/dist/{run-CTtd0Znc.js → run-D7SJ-ieT.js} +2 -2
  169. package/dist/run-DoRQSC_K.js +2 -0
  170. package/dist/{run-CawRGnOg.js → run-ukCf2Mdy.js} +1 -1
  171. package/dist/runner-D-REfOUe.js +1 -0
  172. package/dist/{runner-sUpWJ_k0.js → runner-wDYhkVsM.js} +1 -1
  173. package/dist/schema-DoNO0dPh.js +1 -0
  174. package/dist/sdk.d.ts +4 -2
  175. package/dist/sdk.js +1 -1
  176. package/dist/serve-BJ_Mbm2m.js +8 -0
  177. package/dist/{serve-CPnmrKyf.js → serve-C1MMhM1F.js} +2 -2
  178. package/dist/{serve-GmRO89s5.js → serve-DtrOHaoS.js} +2 -2
  179. package/dist/{serve-CE8YV2e9.js → serve-P9pFkEnE.js} +1 -1
  180. package/dist/{serve-BTeomYxW.js → serve-yjSw0B1a.js} +1 -1
  181. package/dist/{server-Kb22cWfF.js → server-DDWTnmbx.js} +1 -1
  182. package/dist/{setup-host-GFTUzzZJ.js → setup-host-L6Rnn5Cz.js} +1 -1
  183. package/dist/{shared-DVtzWhUT.js → shared-XsUX_ZZb.js} +1 -1
  184. package/dist/{show-COTZEYgc.js → show-CU-jqJ90.js} +1 -1
  185. package/dist/{show-CMUg8SJu.js → show-DVJmB2u-.js} +1 -1
  186. package/dist/{status-D26U--p8.js → status-CBydR7LE.js} +1 -1
  187. package/dist/{steer-C6uARLp5.js → steer-Cm_sHZqs.js} +2 -2
  188. package/dist/{stop-BrGI3hSS.js → stop-DJS7DAPJ.js} +1 -1
  189. package/dist/{stop-ByCAlbmN.js → stop-TrebIIuv.js} +2 -2
  190. package/dist/store-BrNMqJgk.js +42 -0
  191. package/dist/store-j8icrG0v.js +19 -0
  192. package/dist/task-C8lmcNsf.js +1 -0
  193. package/dist/{task-DeglY79z.js → task-CpUI19o2.js} +4 -4
  194. package/dist/task-CvSqiwxo.js +1 -0
  195. package/dist/{test-NEbhlxvo.js → test-CDKz4jY_.js} +1 -1
  196. package/dist/{tools-D0Zfs8Hx.js → tools-DBFeoosk.js} +1 -1
  197. package/dist/{types-I5Cwtl_K.d.ts → types-DMGBYB_K.d.ts} +3 -1
  198. package/dist/{unalias-C9NqmSDq.js → unalias-BfQFBnuK.js} +1 -1
  199. package/dist/{update-BTxYQj7Z.js → update-C4FFOie8.js} +1 -1
  200. package/dist/{upgrade-hA0yWBvx.js → upgrade-DLJqMnUQ.js} +2 -2
  201. package/dist/{usage-BhqoCjvE.js → usage-CSh-xwQ2.js} +1 -1
  202. package/dist/{usage-C4d9X2Uq.js → usage-D8mc4qXK.js} +1 -1
  203. package/dist/{watch-DtRuC0Wc.js → watch-CQu-tJKZ.js} +2 -2
  204. package/dist/{watch-CSdj24ct.js → watch-DmwaEvoi.js} +2 -2
  205. package/dist/{wire-BeT1Axeo.js → wire-DzGLZ3-O.js} +1 -1
  206. package/dist/worker-BLKTMLqa.js +1 -0
  207. package/dist/worker-nHemduM_.js +9 -0
  208. package/dist/{workflow-Dcmdooi8.js → workflow-IrouAus_.js} +1 -1
  209. package/docs/cli.md +145 -0
  210. package/docs/mcp.md +1 -1
  211. package/migrations/0000_initial.sql +8 -0
  212. package/migrations/meta/0000_snapshot.json +75 -1
  213. package/migrations/meta/_journal.json +1 -1
  214. package/package.json +3 -2
  215. package/plugins/agents/skills/coder/SKILL.md +1 -0
  216. package/plugins/claude/.claude-plugin/plugin.json +1 -1
  217. package/plugins/claude/skills/dispatch/SKILL.md +1 -1
  218. package/plugins/cursor/.cursor-plugin/plugin.json +1 -1
  219. package/plugins/cursor/skills/coder/SKILL.md +1 -0
  220. package/src/client/index.ts +10 -2
  221. package/src/client/types.ts +18 -0
  222. package/src/core/defaults.ts +36 -0
  223. package/src/core/task/log-view.ts +120 -6
  224. package/src/server/dash/app/dash/agents/(list)/agent-menu.tsx +4 -0
  225. package/src/server/dash/app/dash/agents/(list)/agents-grid.tsx +18 -35
  226. package/src/server/dash/app/dash/agents/(list)/loading.tsx +7 -1
  227. package/src/server/dash/app/dash/agents/[slug]/(tabs)/layout.tsx +2 -1
  228. package/src/server/dash/app/dash/layout.css +58 -1
  229. package/src/server/dash/app/dash/layout.tsx +29 -7
  230. package/src/server/dash/app/dash/settings/[tab]/credentials-list.tsx +20 -13
  231. package/src/server/dash/app/dash/settings/[tab]/page.tsx +1 -1
  232. package/src/server/dash/app/dash/settings/[tab]/runners-list.tsx +13 -12
  233. package/src/server/dash/app/dash/tasks/[id]/activity.tsx +49 -4
  234. package/src/server/dash/app/dash/tasks/[id]/task-actions.tsx +43 -6
  235. package/src/server/dash/app/dash/tasks/[id]/task-view.css +52 -31
  236. package/src/server/dash/app/dash/tasks/[id]/task-view.tsx +143 -51
  237. package/src/server/dash/app/dash/tasks/composer.css +4 -0
  238. package/src/server/dash/app/dash/tasks/composer.tsx +6 -5
  239. package/src/server/dash/app/dash/tasks/list/task.ts +29 -1
  240. package/src/server/dash/app/dash/tasks/list/tasks-list.css +20 -7
  241. package/src/server/dash/app/dash/tasks/list/tasks-list.tsx +256 -109
  242. package/src/server/dash/app/dash/tasks/list/tasks-section.tsx +9 -13
  243. package/src/server/dash/app/dash/tasks/page.tsx +3 -35
  244. package/src/server/dash/comps/frame/loading-card.tsx +4 -3
  245. package/src/server/dash/comps/frame/page-head.css +10 -0
  246. package/src/server/dash/comps/frame/page-head.tsx +3 -2
  247. package/src/server/dash/comps/frame/task-toasts.tsx +196 -50
  248. package/src/server/dash/comps/nav/side-toggle.tsx +16 -5
  249. package/src/server/dash/comps/ui/card.css +1 -0
  250. package/src/server/dash/comps/ui/filter.css +64 -0
  251. package/src/server/dash/comps/ui/filter.tsx +336 -0
  252. package/src/server/dash/comps/ui/icons.ts +2 -0
  253. package/src/server/dash/comps/ui/menu.tsx +9 -1
  254. package/src/server/dash/comps/ui/select.tsx +2 -2
  255. package/src/server/dash/comps/ui/toast.css +3 -2
  256. package/src/server/dash/comps/ui/toolbar.css +14 -0
  257. package/src/server/dash/utils/client.ts +21 -0
  258. package/src/server/dash/utils/format.ts +12 -4
  259. package/src/server/dash/utils/paged.ts +14 -6
  260. package/dist/actions-Mk3FSlpJ.js +0 -20
  261. package/dist/archive-sweep-CtBcARgN.js +0 -1
  262. package/dist/auth-BFny--17.js +0 -1
  263. package/dist/auth-DWHIzqbA.js +0 -1
  264. package/dist/credentials-B1jv6dkg.js +0 -1
  265. package/dist/dash/public/assets/chunks/agents-grid-951584b6f4c4314e.js +0 -1
  266. package/dist/dash/public/assets/chunks/composer-5534be50bc12385e.js +0 -1
  267. package/dist/dash/public/assets/chunks/composer-d10d4b1d54c4f751.js +0 -1
  268. package/dist/dash/public/assets/chunks/credentials-list-bc5bfcab058176c5.js +0 -2
  269. package/dist/dash/public/assets/chunks/format-eb03fc9d9744d960.js +0 -1
  270. package/dist/dash/public/assets/chunks/heads-f3bcd289663d48fa.js +0 -1
  271. package/dist/dash/public/assets/chunks/instructions-d0a4b0d95009c262.js +0 -1
  272. package/dist/dash/public/assets/chunks/paged-bc6fa0c2b9d52ed7.js +0 -1
  273. package/dist/dash/public/assets/chunks/runners-list-1901af8a5dea1f09.js +0 -1
  274. package/dist/dash/public/assets/chunks/shared-init-88cce66bb3cfe1e5.js +0 -5
  275. package/dist/dash/public/assets/chunks/shared-init-ffb3397e494137c9.js +0 -2
  276. package/dist/dash/public/assets/chunks/task-actions-8e1d93c788d001df.js +0 -1
  277. package/dist/dash/public/assets/chunks/task-fa8b82e95e771c4a.js +0 -1
  278. package/dist/dash/public/assets/chunks/task-view-6d7618d2820a5cb4.js +0 -3
  279. package/dist/dash/public/assets/chunks/tasks-list-f4784e5cbd0ed785.js +0 -1
  280. package/dist/dash/public/assets/dash-9e02d5d1a6d42ee3.css +0 -1
  281. package/dist/dash/public/assets/dash-account-04859899c1838ada.css +0 -1
  282. package/dist/dash/public/assets/dash-agents-9e678137267dec07.css +0 -1
  283. package/dist/dash/public/assets/dash-agents-new-26fa27b17ef9b8d8.css +0 -1
  284. package/dist/dash/public/assets/dash-agents-param-slug-b975c48f8abf3444.css +0 -1
  285. package/dist/dash/public/assets/dash-agents-param-slug-edit-e13fda599bb04843.css +0 -1
  286. package/dist/dash/public/assets/dash-agents-param-slug-platforms-70292932cb27bc96.css +0 -1
  287. package/dist/dash/public/assets/dash-agents-param-slug-settings-71f9a86251723fcc.css +0 -1
  288. package/dist/dash/public/assets/dash-agents-param-slug-tasks-fb8eb2ed71006601.css +0 -1
  289. package/dist/dash/public/assets/dash-agents-param-slug-usage-7c8740f1cdd52c71.css +0 -1
  290. package/dist/dash/public/assets/dash-settings-8eb818da462227e8.css +0 -1
  291. package/dist/dash/public/assets/dash-settings-param-tab-849a1a9542e273f5.css +0 -1
  292. package/dist/dash/public/assets/dash-tasks-81e510e0b6931b42.css +0 -1
  293. package/dist/dash/public/assets/dash-tasks-param-id-bbd2a83342f2ec10.css +0 -1
  294. package/dist/dash/public/assets/dash-usage-8e0259e03eaed1bd.css +0 -1
  295. package/dist/dash/public/assets/pnext-client-03b03b254e525e82.js +0 -1
  296. package/dist/dash/public/assets/pnext-client-1c7859bb888f4ef0.js +0 -1
  297. package/dist/dash/public/assets/pnext-client-3c748afe963fb05d.js +0 -1
  298. package/dist/dash/public/assets/pnext-client-4f47c2cae220f107.js +0 -1
  299. package/dist/dash/public/assets/pnext-client-6ab9fd9b53b794d2.js +0 -1
  300. package/dist/dash/public/assets/pnext-client-6c241786342498e4.js +0 -1
  301. package/dist/dash/public/assets/pnext-client-80b56d420f02b808.js +0 -1
  302. package/dist/dash/public/assets/pnext-client-83135c17bae850a3.js +0 -1
  303. package/dist/dash/public/assets/pnext-client-8e6fa4302ae0396f.js +0 -1
  304. package/dist/dash/public/assets/pnext-client-932c9d8cc0717fc8.js +0 -1
  305. package/dist/dash/public/assets/pnext-client-a42ae63d4de113f9.js +0 -1
  306. package/dist/dash/public/assets/pnext-client-d2ee6f8c1e337032.js +0 -1
  307. package/dist/dash/public/assets/pnext-client-d513f65ec23b7f20.js +0 -1
  308. package/dist/dash/public/assets/pnext-client-ecb88e2a8a109954.js +0 -1
  309. package/dist/dash/public/assets/pnext-client-f1545ee6270bbf9a.js +0 -1
  310. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/boot-B2MFTRO2.js +0 -30
  311. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/build-tier-XJJSL5FR.js +0 -2704
  312. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-2HFY3DQT.js +0 -208
  313. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-2ICEVELW.js +0 -834
  314. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-3UPROT2C.js +0 -35
  315. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-4P5CMIYT.js +0 -1582
  316. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-4TKZKZ3Q.js +0 -131
  317. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-5RDEILQB.js +0 -437
  318. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-62KEQM43.js +0 -25
  319. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-6KQSWT6D.js +0 -831
  320. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-7DCNCW6O.js +0 -724
  321. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-B4THCTQP.js +0 -22
  322. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-C2LIV2MM.js +0 -172
  323. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-CCATPVTW.js +0 -378
  324. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-COXJAPTU.js +0 -89
  325. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-E6IXL2NJ.js +0 -6270
  326. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-FLGRBFAH.js +0 -1198
  327. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-FTJVHFWD.js +0 -61
  328. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-H523KSIH.js +0 -5151
  329. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-HT6KKX6A.js +0 -20
  330. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-JESFYECC.js +0 -438
  331. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-JRPJM2XY.js +0 -17
  332. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-L2IWDUXG.js +0 -107
  333. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-L5P4Y4UC.js +0 -183
  334. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-NQE46AZN.js +0 -647
  335. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-PA4QEARJ.js +0 -129
  336. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-PZ5AXOLW.js +0 -7146
  337. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-SNVPTULL.js +0 -2397
  338. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-T3QZT3PG.js +0 -220
  339. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-VC5O2SDP.js +0 -72
  340. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-WZX4V6CM.js +0 -231
  341. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-XUUIDXY5.js +0 -627
  342. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-ZHFDO3PR.js +0 -265
  343. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/compile-CE2DN7ZA.js +0 -18
  344. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/config-UREY7XJT.js +0 -16
  345. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/config-loader-UI2XE3PZ.js +0 -17
  346. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/entry.js +0 -219
  347. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/generate-I2PPTDFD.js +0 -16
  348. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/modules-UVOCE4C2.js +0 -48
  349. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/pipeline-UW47K537.js +0 -963
  350. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/proxy-ITGOVJBW.js +0 -26
  351. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/register-4SA55SWT.js +0 -12579
  352. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/router-JNKHLBCZ.js +0 -505
  353. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/routes-PD6J2NXW.js +0 -54
  354. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/tsconfig-defaults-ZXEH7RQK.js +0 -15
  355. package/dist/default-Bobztoxf.js +0 -1
  356. package/dist/dispatch-BKeAch9E.js +0 -14
  357. package/dist/exec-RZFLclKX.js +0 -11
  358. package/dist/executor-BvAA7Cgw.js +0 -10
  359. package/dist/http-Bkg_OQ6r.js +0 -1
  360. package/dist/integrations-5xCaXSd-.js +0 -1
  361. package/dist/integrations-BAgdVDhj.js +0 -5
  362. package/dist/log-view-dg0TlKLA.js +0 -1
  363. package/dist/models-_5LVGC3m.js +0 -1
  364. package/dist/queue-6io_NOP3.js +0 -116
  365. package/dist/refresh-BIrmrWYq.js +0 -1
  366. package/dist/rename-CYfy03FE.js +0 -1
  367. package/dist/result-BzaM3inj.js +0 -15
  368. package/dist/run-BDYl0CKl.js +0 -2
  369. package/dist/runner-D7ScbIHJ.js +0 -1
  370. package/dist/schema-CU2iFkp8.js +0 -1
  371. package/dist/serve-CQKZxzFE.js +0 -4
  372. package/dist/store-B94tSate.js +0 -42
  373. package/dist/store-DzqXS2wT.js +0 -8
  374. package/dist/task-C6VAg5WU.js +0 -1
  375. package/dist/task-CgOKgkEG.js +0 -1
  376. package/dist/worker-CXndxmGF.js +0 -9
  377. package/dist/worker-DX7P9kWl.js +0 -1
  378. package/src/server/dash/app/dash/token-from-hash.tsx +0 -17
@@ -1,505 +0,0 @@
1
- import { createRequire as __coderRequire } from "node:module";
2
- const __pnextRoot = __coderRequire(import.meta.url).resolve("@wular/pnext").replace(/\/src\/index\.ts$/, "");
3
- import { createRequire as __pnextCreateRequire } from "node:module";
4
- const require = __pnextCreateRequire(("file://" + __pnextRoot + "/package.json"));
5
- import {
6
- getNextConfig
7
- } from "./chunk-2ICEVELW.js";
8
- import {
9
- hasUseClientDirective
10
- } from "./chunk-L2IWDUXG.js";
11
- import "./chunk-JESFYECC.js";
12
- import "./chunk-5RDEILQB.js";
13
- import "./chunk-NQE46AZN.js";
14
- import {
15
- listFiles,
16
- listFilesSync,
17
- toPosixPath
18
- } from "./chunk-2HFY3DQT.js";
19
- import "./chunk-4P5CMIYT.js";
20
- import "./chunk-FTJVHFWD.js";
21
- import "./chunk-3UPROT2C.js";
22
-
23
- // ../node_modules/.bun/@wular+pnext@0.1.5+62547eec5a2188e3/node_modules/@wular/pnext/src/compat/pages/router.ts
24
- import { createHash } from "node:crypto";
25
- import { existsSync, statSync } from "node:fs";
26
- import {
27
- copyFile,
28
- mkdir,
29
- readdir,
30
- readFile,
31
- rename,
32
- rm,
33
- symlink,
34
- writeFile
35
- } from "node:fs/promises";
36
- import path from "node:path";
37
- import { tmpdir } from "node:os";
38
- import { fileURLToPath } from "node:url";
39
- var basePageExtensions = ["tsx", "ts", "jsx", "js", "mjs"];
40
- function materializeExtensions() {
41
- const configured = getNextConfig().pageExtensions;
42
- const extras = Array.isArray(configured) ? configured.filter((ext) => typeof ext === "string" && ext.length > 0) : [];
43
- return [.../* @__PURE__ */ new Set([...basePageExtensions, ...extras])];
44
- }
45
- var appConventions = /* @__PURE__ */ new Set([
46
- "default",
47
- "error",
48
- "forbidden",
49
- "global-error",
50
- "layout",
51
- "loading",
52
- "not-found",
53
- "page",
54
- "route",
55
- "template",
56
- "unauthorized"
57
- ]);
58
- var metadataConventionPattern = /^(robots|sitemap|manifest|icon\d*|apple-icon\d*|opengraph-image\d*|twitter-image\d*)$/;
59
- function isAppConvention(name) {
60
- return appConventions.has(name) || metadataConventionPattern.test(name);
61
- }
62
- async function materializePagesApp(root) {
63
- const pagesPath = path.join(root, "pages");
64
- if (!existsSync(pagesPath)) return void 0;
65
- const nativeApp = path.join(root, "app");
66
- const pages = await discoverPages(pagesPath);
67
- const apiRoutes = await discoverPagesApi(pagesPath);
68
- if (pages.length === 0 && apiRoutes.length === 0) return void 0;
69
- const generatedRoot = path.join(
70
- tmpdir(),
71
- "pnext-pages-compat",
72
- materializationKey(root, nativeApp, pages, apiRoutes)
73
- );
74
- const appPath = path.join(generatedRoot, "app");
75
- if (existsSync(appPath)) return appPath;
76
- const staging = `${generatedRoot}.${process.pid.toString(36)}.staging`;
77
- await buildMaterializedApp(staging, root, pagesPath, nativeApp, pages, apiRoutes);
78
- try {
79
- await rename(staging, generatedRoot);
80
- } catch {
81
- await rm(staging, { recursive: true, force: true });
82
- if (!existsSync(appPath)) throw new Error(`pnext: could not materialize ${root}/pages`);
83
- }
84
- void sweepStaleMaterializations(path.dirname(generatedRoot));
85
- return appPath;
86
- }
87
- function materializationKey(root, nativeApp, pages, apiRoutes) {
88
- const stamp = (file) => {
89
- const info = statSync(file, { throwIfNoEntry: false });
90
- return info ? `${info.size}:${info.mtimeMs}` : "";
91
- };
92
- const nativeFiles = existsSync(nativeApp) ? listFilesSync(nativeApp).map((file) => `${toPosixPath(path.relative(nativeApp, file))}\0${stamp(file)}`).sort() : [];
93
- const byRelative = (routes) => [...routes].sort((a, b) => a.relative.localeCompare(b.relative));
94
- return createHash("sha256").update(
95
- JSON.stringify([
96
- root,
97
- materializeExtensions(),
98
- byRelative(pages),
99
- byRelative(apiRoutes),
100
- nativeFiles,
101
- stamp(fileURLToPath(("file://" + __pnextRoot + "/src/compat/pages/router.ts")))
102
- ])
103
- ).digest("hex").slice(0, 16);
104
- }
105
- var STALE_MATERIALIZATION_MS = 7 * 24 * 60 * 6e4;
106
- async function sweepStaleMaterializations(base) {
107
- try {
108
- const cutoff = Date.now() - STALE_MATERIALIZATION_MS;
109
- for (const entry of await readdir(base)) {
110
- const dir = path.join(base, entry);
111
- const info = statSync(dir, { throwIfNoEntry: false });
112
- if (info && info.mtimeMs < cutoff) await rm(dir, { recursive: true, force: true });
113
- }
114
- } catch {
115
- }
116
- }
117
- async function buildMaterializedApp(generatedRoot, root, pagesPath, nativeApp, pages, apiRoutes) {
118
- const appPath = path.join(generatedRoot, "app");
119
- const sourcePages = path.join(generatedRoot, "source-pages");
120
- const sourceApp = path.join(generatedRoot, "source-app");
121
- await rm(generatedRoot, { recursive: true, force: true });
122
- await mkdir(appPath, { recursive: true });
123
- await symlink(pagesPath, sourcePages, "dir");
124
- const nodeModules = path.join(root, "node_modules");
125
- if (existsSync(nodeModules))
126
- await symlink(nodeModules, path.join(generatedRoot, "node_modules"), "dir");
127
- const publicDir = path.join(root, "public");
128
- if (existsSync(publicDir)) await symlink(publicDir, path.join(generatedRoot, "public"), "dir");
129
- if (existsSync(nativeApp)) {
130
- await symlink(nativeApp, sourceApp, "dir");
131
- await materializeNativeApp(sourceApp, appPath);
132
- }
133
- if (!existsSync(path.join(appPath, "layout.js"))) {
134
- await writeFile(
135
- path.join(appPath, "layout.js"),
136
- "export default function PagesLayout({ children }) {\n return <html><body>{children}</body></html>\n}\n"
137
- );
138
- }
139
- for (const page of pages) {
140
- const destination = path.join(appPath, ...encodePrivateSegments(page.segments), "page.js");
141
- if (existsSync(destination)) continue;
142
- await mkdir(path.dirname(destination), { recursive: true });
143
- const pagesPattern = `/${page.segments.join("/")}`.replace(/\/+$/, "") || "/";
144
- const sourceSpecifier = relativeImport(destination, path.join(sourcePages, page.relative));
145
- let clientSpecifier;
146
- if (page.hasStaticProps || page.hasServerSideProps) {
147
- const clientDestination = path.join(path.dirname(destination), "pnext-page-client.js");
148
- await writeFile(
149
- clientDestination,
150
- `'use client';
151
- export { default } from ${JSON.stringify(sourceSpecifier)};
152
- `
153
- );
154
- clientSpecifier = "./pnext-page-client.js";
155
- }
156
- await writeFile(
157
- destination,
158
- wrapperSource(
159
- sourceSpecifier,
160
- // A pages-router component is implicitly a client module: it SSRs AND
161
- // hydrates (hooks, event handlers, next/router). Without the client
162
- // wrapper it renders as a server component and never becomes
163
- // interactive. Data functions keep a server wrapper and pass their
164
- // props into the page's client facade.
165
- !page.hasServerSideProps && !page.hasStaticProps,
166
- page.hasServerSideProps,
167
- page.hasStaticProps,
168
- clientSpecifier,
169
- page.runtime,
170
- page.maxDuration,
171
- pagesPattern
172
- )
173
- );
174
- }
175
- for (const apiRoute of apiRoutes) {
176
- const destination = path.join(appPath, "api", ...apiRoute.segments, "route.js");
177
- if (existsSync(destination)) continue;
178
- await mkdir(path.dirname(destination), { recursive: true });
179
- await writeFile(
180
- destination,
181
- pagesApiWrapperSource(
182
- relativeImport(destination, path.join(sourcePages, apiRoute.relative)),
183
- apiRoute.runtime
184
- )
185
- );
186
- }
187
- }
188
- async function materializeNativeApp(sourceApp, appPath) {
189
- for (const file of await listFiles(sourceApp)) {
190
- const relative = toPosixPath(path.relative(sourceApp, file));
191
- const parsed = path.parse(relative);
192
- if (!materializeExtensions().includes(parsed.ext.slice(1))) {
193
- const destination2 = path.join(appPath, relative);
194
- await mkdir(path.dirname(destination2), { recursive: true });
195
- await copyFile(file, destination2);
196
- continue;
197
- }
198
- if (!isAppConvention(parsed.name)) continue;
199
- const destination = path.join(appPath, parsed.dir, `${parsed.name}.js`);
200
- await mkdir(path.dirname(destination), { recursive: true });
201
- const source = await readFile(file, "utf8");
202
- const client = hasUseClientDirective(source) || await defaultExportImportsClientModule(file, source);
203
- await writeFile(
204
- destination,
205
- wrapperSource(
206
- relativeImport(destination, file),
207
- client,
208
- false,
209
- false,
210
- void 0,
211
- runtimeFromSource(source)
212
- )
213
- );
214
- }
215
- }
216
- async function defaultExportImportsClientModule(file, source) {
217
- const defaultExport = /export\s+default\s+([A-Za-z_$][\w$]*)\s*;?/.exec(source);
218
- if (!defaultExport?.[1]) return false;
219
- const binding = defaultExport[1];
220
- const imports = /import\s*\{([^}]*)\}\s*from\s*['"]([^'"]+)['"]/g;
221
- let match;
222
- while (match = imports.exec(source)) {
223
- const importsBinding = (match[1] ?? "").split(",").some((value) => {
224
- const names = /^\s*([A-Za-z_$][\w$]*)(?:\s+as\s+([A-Za-z_$][\w$]*))?\s*$/.exec(value);
225
- return (names?.[2] ?? names?.[1]) === binding;
226
- });
227
- if (!importsBinding || !match[2]?.startsWith(".")) continue;
228
- const imported = resolveSourceImport(file, match[2]);
229
- if (imported && hasUseClientDirective(await readFile(imported, "utf8"))) return true;
230
- }
231
- return false;
232
- }
233
- function resolveSourceImport(file, specifier) {
234
- const base = path.resolve(path.dirname(file), specifier);
235
- for (const candidate of [
236
- base,
237
- ...materializeExtensions().flatMap((extension) => [
238
- `${base}.${extension}`,
239
- path.join(base, `index.${extension}`)
240
- ])
241
- ]) {
242
- if (existsSync(candidate) && statSync(candidate).isFile()) return candidate;
243
- }
244
- return void 0;
245
- }
246
- function encodePrivateSegments(segments) {
247
- return segments.map((segment) => segment.startsWith("_") ? `%5F${segment.slice(1)}` : segment);
248
- }
249
- async function discoverPages(pagesPath) {
250
- const routes = /* @__PURE__ */ new Map();
251
- const files = await listFiles(pagesPath);
252
- for (const extension of materializeExtensions()) {
253
- for (const file of files) {
254
- if (!file.endsWith(`.${extension}`)) continue;
255
- const relative = toPosixPath(path.relative(pagesPath, file));
256
- const withoutExtension = relative.slice(0, -extension.length - 1);
257
- const sourceSegments = withoutExtension.split("/");
258
- if (sourceSegments[0] === "api") continue;
259
- if (sourceSegments.length === 1 && (sourceSegments[0] === "_app" || sourceSegments[0] === "_document" || sourceSegments[0] === "_error")) {
260
- continue;
261
- }
262
- const segments = sourceSegments.at(-1) === "index" ? sourceSegments.slice(0, -1) : sourceSegments;
263
- const key = segments.join("/");
264
- if (!routes.has(key)) {
265
- const source = await readFile(file, "utf8");
266
- routes.set(key, {
267
- relative,
268
- segments,
269
- hasServerSideProps: /\bgetServerSideProps\b/.test(source),
270
- hasStaticProps: /\bgetStaticProps\b/.test(source),
271
- runtime: runtimeFromSource(source),
272
- maxDuration: maxDurationFromSource(source)
273
- });
274
- }
275
- }
276
- }
277
- return [...routes.values()];
278
- }
279
- async function discoverPagesApi(pagesPath) {
280
- const routes = /* @__PURE__ */ new Map();
281
- const files = await listFiles(path.join(pagesPath, "api"));
282
- for (const extension of materializeExtensions()) {
283
- for (const file of files) {
284
- if (!file.endsWith(`.${extension}`)) continue;
285
- const relative = toPosixPath(path.relative(pagesPath, file));
286
- const segments = relative.slice(0, -extension.length - 1).split("/").slice(1);
287
- if (segments.some((segment) => segment.startsWith("_"))) continue;
288
- const key = segments.join("/");
289
- if (routes.has(key)) continue;
290
- routes.set(key, {
291
- relative,
292
- segments,
293
- runtime: runtimeFromSource(await readFile(file, "utf8"))
294
- });
295
- }
296
- }
297
- return [...routes.values()];
298
- }
299
- function routerStateModulePath() {
300
- return path.join((__pnextRoot + "/src/compat/pages"), "router-state.ts");
301
- }
302
- function routerStateSnippet(pagesPattern) {
303
- if (!pagesPattern) {
304
- return { imports: "", render: "return createElement(Page, result?.props ?? {});" };
305
- }
306
- return {
307
- imports: `import { pagesRouterSsrState, serializePagesRouterState } from ${JSON.stringify(
308
- routerStateModulePath()
309
- )};
310
- `,
311
- render: `const routerState = pagesRouterSsrState(${JSON.stringify(pagesPattern)}, resolvedParams);
312
- return createElement(
313
- Fragment,
314
- null,
315
- createElement('script', {
316
- type: 'application/json',
317
- id: '__PNEXT_PAGES_DATA__',
318
- dangerouslySetInnerHTML: { __html: serializePagesRouterState(routerState) },
319
- }),
320
- createElement(Page, result?.props ?? {}),
321
- );`
322
- };
323
- }
324
- function wrapperSource(specifier, client = false, hasServerSideProps = false, hasStaticProps = false, clientSpecifier, runtime, maxDuration, pagesPattern) {
325
- const runtimeExport = runtime ? `export const runtime = ${JSON.stringify(runtime)};
326
- ` : "";
327
- const maxDurationExport = maxDuration === void 0 ? "" : `export const maxDuration = ${maxDuration};
328
- `;
329
- const routerState = routerStateSnippet(pagesPattern);
330
- if (hasStaticProps && clientSpecifier) {
331
- return `import { createElement, Fragment } from 'react';
332
- import { notFound, redirect } from 'next/navigation';
333
- import Page from ${JSON.stringify(clientSpecifier)};
334
- import * as pageModule from ${JSON.stringify(specifier)};
335
- ${routerState.imports}export * from ${JSON.stringify(specifier)};
336
- ${runtimeExport}${maxDurationExport}export default async function PagesCompatStaticPage({ params }) {
337
- // The otel compat exposes a span wrapper (Render.getStaticProps) at runtime.
338
- const withSpan = globalThis.__PNEXT_PAGES_DATA_SPAN__ ?? ((kind, fn) => fn());
339
- const resolvedParams = await params;
340
- const invoke = async () => pageModule.getStaticProps?.({ params: resolvedParams });
341
- const result = await withSpan('getStaticProps', invoke);
342
- if (result?.notFound) notFound();
343
- if (result?.redirect) redirect(result.redirect.destination);
344
- ${routerState.render}
345
- }
346
- `;
347
- }
348
- if (!hasServerSideProps) {
349
- if (client) {
350
- return `'use client';
351
- export { default } from ${JSON.stringify(specifier)};
352
- ${runtimeExport}${maxDurationExport}`;
353
- }
354
- return `import * as __pnext_page_ns from ${JSON.stringify(specifier)};
355
- export default __pnext_page_ns.default;
356
- export * from ${JSON.stringify(specifier)};
357
- ${runtimeExport}${maxDurationExport}`;
358
- }
359
- return `import { createElement, Fragment } from 'react';
360
- import { notFound, redirect } from 'next/navigation';
361
- import { cookies, headers } from 'next/headers';
362
- import Page from ${JSON.stringify(clientSpecifier)};
363
- import * as pageModule from ${JSON.stringify(specifier)};
364
- ${routerState.imports}export * from ${JSON.stringify(specifier)};
365
- export const dynamic = 'force-dynamic';
366
- ${runtimeExport}${maxDurationExport}export default async function PagesCompatPage({ params, searchParams }) {
367
- // The otel compat exposes a span wrapper (Render.getServerSideProps) at runtime.
368
- const withSpan = globalThis.__PNEXT_PAGES_DATA_SPAN__ ?? ((kind, fn) => fn());
369
- const resolvedParams = await params;
370
- // getServerSideProps reads a node-shaped \`req\`/\`res\`. This page is
371
- // force-dynamic, so headers()/cookies() are available; \`method\` is always
372
- // 'GET' and \`res\` is inert (writes are dropped) \u2014 a workable baseline until
373
- // the pages layer threads the real request through.
374
- const requestHeaders = Object.fromEntries((await headers()).entries());
375
- const requestCookies = Object.fromEntries(
376
- (await cookies()).getAll().map(cookie => [cookie.name, cookie.value]),
377
- );
378
- const invoke = async () => pageModule.getServerSideProps?.({
379
- params: resolvedParams,
380
- query: (await searchParams) ?? {},
381
- req: {
382
- headers: requestHeaders,
383
- cookies: requestCookies,
384
- method: 'GET',
385
- url: ${JSON.stringify(pagesPattern ?? "/")},
386
- },
387
- res: {
388
- statusCode: 200,
389
- setHeader() {},
390
- getHeader() {},
391
- getHeaders() { return {}; },
392
- removeHeader() {},
393
- end() {},
394
- write() { return true; },
395
- },
396
- resolvedUrl: ${JSON.stringify(pagesPattern ?? "/")},
397
- preview: false,
398
- previewData: undefined,
399
- draftMode: false,
400
- });
401
- const result = await withSpan('getServerSideProps', invoke);
402
- if (result?.notFound) notFound();
403
- if (result?.redirect) redirect(result.redirect.destination);
404
- ${routerState.render}
405
- }
406
- `;
407
- }
408
- function runtimeFromSource(source) {
409
- const runtime = /\bruntime\b\s*[:=]\s*(['"`])(edge|nodejs|experimental-edge)\1/.exec(source)?.[2];
410
- return runtime === "experimental-edge" ? "edge" : runtime;
411
- }
412
- function maxDurationFromSource(source) {
413
- const value = /\bmaxDuration\s*:\s*(\d+)\b/.exec(source)?.[1];
414
- return value === void 0 ? void 0 : Number(value);
415
- }
416
- function pagesApiWrapperSource(specifier, runtime) {
417
- const runtimeExport = runtime ? `export const runtime = ${JSON.stringify(runtime)};
418
- ` : "";
419
- return `import handler from ${JSON.stringify(specifier)};
420
- import { NextRequest } from 'next/server';
421
- import { Writable } from 'node:stream';
422
- ${runtimeExport}export async function GET(request) {
423
- return run(handler, request);
424
- }
425
- export async function POST(request) {
426
- return run(handler, request);
427
- }
428
- export async function PUT(request) {
429
- return run(handler, request);
430
- }
431
- export async function PATCH(request) {
432
- return run(handler, request);
433
- }
434
- export async function DELETE(request) {
435
- return run(handler, request);
436
- }
437
- // Bridge a pages-API handler onto the app-route Response contract. Edge-style
438
- // handlers (request-only, return a Response) pass through; node-style handlers
439
- // get a real Writable \`res\` whose bytes stream into the Response body, with
440
- // client disconnects surfaced as res 'close'/destroy (stream cancellation).
441
- async function run(handler, request) {
442
- const nextRequest = request instanceof NextRequest ? request : new NextRequest(request);
443
- const state = { status: 200, headers: new Headers() };
444
- let controller;
445
- let started = false;
446
- let notifyStarted = () => {};
447
- const startedPromise = new Promise(resolve => { notifyStarted = resolve; });
448
- const start = () => {
449
- if (!started) {
450
- started = true;
451
- notifyStarted();
452
- }
453
- };
454
- const body = new ReadableStream({
455
- start(c) { controller = c; },
456
- cancel() { res.destroy(); },
457
- });
458
- const enqueue = chunk => {
459
- try {
460
- controller.enqueue(typeof chunk === 'string' ? new TextEncoder().encode(chunk) : new Uint8Array(chunk));
461
- } catch {}
462
- };
463
- const res = new Writable({
464
- write(chunk, _encoding, callback) { start(); enqueue(chunk); callback(); },
465
- final(callback) { start(); try { controller.close(); } catch {} callback(); },
466
- destroy(error, callback) { try { controller.close(); } catch {} callback(error); },
467
- });
468
- Object.defineProperty(res, 'statusCode', {
469
- get: () => state.status,
470
- set: value => { state.status = value; },
471
- });
472
- res.setHeader = (name, value) => { state.headers.set(name, String(value)); return res; };
473
- res.getHeader = name => state.headers.get(name) ?? undefined;
474
- res.removeHeader = name => { state.headers.delete(name); };
475
- res.status = code => { state.status = code; return res; };
476
- res.json = value => { state.headers.set('content-type', 'application/json'); res.end(JSON.stringify(value)); };
477
- res.send = value => { res.end(value); };
478
- // A client disconnect aborts the request signal; pages handlers observe it
479
- // as the response closing (res.on('close') per Node semantics).
480
- request.signal?.addEventListener?.('abort', () => res.destroy(), { once: true });
481
- const finished = Promise.resolve()
482
- .then(() => handler(nextRequest, res))
483
- .catch(error => {
484
- if (!started) throw error;
485
- try { controller.error(error); } catch {}
486
- });
487
- const outcome = await Promise.race([
488
- startedPromise.then(() => 'started'),
489
- finished.then(() => 'done'),
490
- ]);
491
- if (outcome === 'done' && !started) {
492
- const result = await finished;
493
- return result instanceof Response ? result : new Response(null, { status: state.status, headers: state.headers });
494
- }
495
- return new Response(body, { status: state.status, headers: state.headers });
496
- }
497
- `;
498
- }
499
- function relativeImport(fromFile, targetFile) {
500
- const relative = toPosixPath(path.relative(path.dirname(fromFile), targetFile));
501
- return relative.startsWith(".") ? relative : `./${relative}`;
502
- }
503
- export {
504
- materializePagesApp
505
- };
@@ -1,54 +0,0 @@
1
- import { createRequire as __coderRequire } from "node:module";
2
- const __pnextRoot = __coderRequire(import.meta.url).resolve("@wular/pnext").replace(/\/src\/index\.ts$/, "");
3
- import { createRequire as __pnextCreateRequire } from "node:module";
4
- const require = __pnextCreateRequire(("file://" + __pnextRoot + "/package.json"));
5
- import {
6
- addClientEntryReason,
7
- assertNoServerActionsWithoutCompat,
8
- collectFileCss,
9
- collectNotFoundCss,
10
- findConventionFiles,
11
- findGlobalError,
12
- findLayouts,
13
- matchInterception,
14
- matchRoute,
15
- materializeRouteFacts,
16
- materializeRouteFactsPaced,
17
- normalizePathname,
18
- parseNavState,
19
- routeFactsResolved,
20
- routeFactsVersion,
21
- scanRoutes,
22
- selectRouteForRequest,
23
- serverActionsUnsupportedMessage,
24
- setRouteFactsStore
25
- } from "./chunk-SNVPTULL.js";
26
- import "./chunk-JRPJM2XY.js";
27
- import "./chunk-CCATPVTW.js";
28
- import "./chunk-HT6KKX6A.js";
29
- import "./chunk-NQE46AZN.js";
30
- import "./chunk-2HFY3DQT.js";
31
- import "./chunk-4P5CMIYT.js";
32
- import "./chunk-FTJVHFWD.js";
33
- import "./chunk-3UPROT2C.js";
34
- export {
35
- addClientEntryReason,
36
- assertNoServerActionsWithoutCompat,
37
- collectFileCss,
38
- collectNotFoundCss,
39
- findConventionFiles,
40
- findGlobalError,
41
- findLayouts,
42
- matchInterception,
43
- matchRoute,
44
- materializeRouteFacts,
45
- materializeRouteFactsPaced,
46
- normalizePathname,
47
- parseNavState,
48
- routeFactsResolved,
49
- routeFactsVersion,
50
- scanRoutes,
51
- selectRouteForRequest,
52
- serverActionsUnsupportedMessage,
53
- setRouteFactsStore
54
- };
@@ -1,15 +0,0 @@
1
- import { createRequire as __coderRequire } from "node:module";
2
- const __pnextRoot = __coderRequire(import.meta.url).resolve("@wular/pnext").replace(/\/src\/index\.ts$/, "");
3
- import { createRequire as __pnextCreateRequire } from "node:module";
4
- const require = __pnextCreateRequire(("file://" + __pnextRoot + "/package.json"));
5
- import {
6
- writeTsconfigDefaults
7
- } from "./chunk-T3QZT3PG.js";
8
- import "./chunk-2ICEVELW.js";
9
- import "./chunk-5RDEILQB.js";
10
- import "./chunk-2HFY3DQT.js";
11
- import "./chunk-FTJVHFWD.js";
12
- import "./chunk-3UPROT2C.js";
13
- export {
14
- writeTsconfigDefaults
15
- };
@@ -1 +0,0 @@
1
- import{xt as e}from"./dispatch-BKeAch9E.js";import{i as t,t as n}from"./cli-BilSDkvE.js";import{runnerOptions as r}from"./remove-B93LNkZI.js";import i from"node:process";const a=t({name:`runner default`,globalFlags:{cwd:!1},args:1,help:{usage:`coder runner default <id> [--server [url]] [--json]`,summary:`Use this runner by default within its scope.`,flags:[n]},options:r,async run({options:t,args:[n]}){if(!n)throw new e(`invalid-option`,`Missing runner id.`);let{updateRunner:r}=await import(`./runner-sUpWJ_k0.js`).then(e=>e.a);return r(n,{default:!0},t)},print:e=>i.stdout.write(`Default runner ${e.name}.\n`)});export{a as commandRunnerDefault};