@qelos/aidev 1.0.3 → 1.2.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 (201) hide show
  1. package/README.md +42 -1
  2. package/dist/commands/run.d.ts +1 -0
  3. package/dist/commands/run.d.ts.map +1 -1
  4. package/dist/commands/run.js +27 -1
  5. package/dist/commands/run.js.map +1 -1
  6. package/dist/commands/ui.d.ts.map +1 -1
  7. package/dist/commands/ui.js +17 -0
  8. package/dist/commands/ui.js.map +1 -1
  9. package/dist/config.d.ts +4 -0
  10. package/dist/config.d.ts.map +1 -1
  11. package/dist/config.js +22 -1
  12. package/dist/config.js.map +1 -1
  13. package/dist/providers/base.d.ts +6 -1
  14. package/dist/providers/base.d.ts.map +1 -1
  15. package/dist/providers/clickup.d.ts +13 -1
  16. package/dist/providers/clickup.d.ts.map +1 -1
  17. package/dist/providers/clickup.js +115 -8
  18. package/dist/providers/clickup.js.map +1 -1
  19. package/dist/providers/jira.d.ts +2 -0
  20. package/dist/providers/jira.d.ts.map +1 -1
  21. package/dist/providers/jira.js +56 -13
  22. package/dist/providers/jira.js.map +1 -1
  23. package/dist/providers/linear.d.ts +21 -2
  24. package/dist/providers/linear.d.ts.map +1 -1
  25. package/dist/providers/linear.js +71 -21
  26. package/dist/providers/linear.js.map +1 -1
  27. package/dist/providers/local.d.ts +2 -2
  28. package/dist/providers/local.d.ts.map +1 -1
  29. package/dist/providers/local.js +11 -5
  30. package/dist/providers/local.js.map +1 -1
  31. package/dist/providers/monday.d.ts +11 -0
  32. package/dist/providers/monday.d.ts.map +1 -1
  33. package/dist/providers/monday.js +74 -1
  34. package/dist/providers/monday.js.map +1 -1
  35. package/dist/providers/notion.d.ts +1 -0
  36. package/dist/providers/notion.d.ts.map +1 -1
  37. package/dist/providers/notion.js +44 -0
  38. package/dist/providers/notion.js.map +1 -1
  39. package/dist/providers/trello.d.ts +1 -0
  40. package/dist/providers/trello.d.ts.map +1 -1
  41. package/dist/providers/trello.js +60 -3
  42. package/dist/providers/trello.js.map +1 -1
  43. package/dist/types.d.ts +24 -0
  44. package/dist/types.d.ts.map +1 -1
  45. package/package.json +1 -1
  46. package/ui/.output/nitro.json +1 -1
  47. package/ui/.output/public/_nuxt/3LZdFtk_.js +5 -0
  48. package/ui/.output/public/_nuxt/{DL7l9XXk.js → B8sr5ZW-.js} +1 -1
  49. package/ui/.output/public/_nuxt/B93YYUZf.js +1 -0
  50. package/ui/.output/public/_nuxt/BAs1isOw.js +1 -0
  51. package/ui/.output/public/_nuxt/{CjYvNw4D.js → BGlShnpS.js} +1 -1
  52. package/ui/.output/public/_nuxt/BMTHyzVP.js +1 -0
  53. package/ui/.output/public/_nuxt/BTfAgCfF.js +1 -0
  54. package/ui/.output/public/_nuxt/BrZL2iQr.js +1 -0
  55. package/ui/.output/public/_nuxt/{m0N__S0x.js → BtD1YBwM.js} +1 -1
  56. package/ui/.output/public/_nuxt/Bv6Ws9vz.js +1 -0
  57. package/ui/.output/public/_nuxt/C2WdrjFS.js +1 -0
  58. package/ui/.output/public/_nuxt/CO4XMBYO.js +70 -0
  59. package/ui/.output/public/_nuxt/CVTgFccA.js +2 -0
  60. package/ui/.output/public/_nuxt/{CgEeSDUJ.js → CWjftssB.js} +1 -1
  61. package/ui/.output/public/_nuxt/Ceb2855t.js +1 -0
  62. package/ui/.output/public/_nuxt/{CnlcD-w9.js → Cg55PjEy.js} +2 -2
  63. package/ui/.output/public/_nuxt/D0ZgktSu.js +1 -0
  64. package/ui/.output/public/_nuxt/DZIUG6ZX.js +1 -0
  65. package/ui/.output/public/_nuxt/{B2vj_HiW.js → DZd8Jv5H.js} +1 -1
  66. package/ui/.output/public/_nuxt/{DKIXA6Zt.js → DihqGT4A.js} +1 -1
  67. package/ui/.output/public/_nuxt/{bW-720fM.js → LzHPbXPK.js} +1 -1
  68. package/ui/.output/public/_nuxt/MzK2TZ-I.js +16 -0
  69. package/ui/.output/public/_nuxt/TJXLPQOj.js +1 -0
  70. package/ui/.output/public/_nuxt/VuiIFQtE.js +1 -0
  71. package/ui/.output/public/_nuxt/config.C19X1GwO.css +1 -0
  72. package/ui/.output/public/_nuxt/index.Dg-YgThY.css +1 -0
  73. package/ui/.output/public/_nuxt/logs.PK6CTQHM.css +1 -0
  74. package/ui/.output/public/_nuxt/run.Cn-2vl5h.css +1 -0
  75. package/ui/.output/public/_nuxt/{tasks.C3nyxPxf.css → tasks.BeNnACNw.css} +1 -1
  76. package/ui/.output/server/chunks/build/{Badge-2SB8hHdz.mjs → Badge-YPOjmkfv.mjs} +2 -3
  77. package/ui/.output/server/chunks/build/Badge-YPOjmkfv.mjs.map +1 -0
  78. package/ui/.output/server/chunks/build/{Button-Dgqz5RR8.mjs → Button-CZHl6fpI.mjs} +157 -6
  79. package/ui/.output/server/chunks/build/Button-CZHl6fpI.mjs.map +1 -0
  80. package/ui/.output/server/chunks/build/{Card-BkfpdQZ7.mjs → Card--ibiHV_r.mjs} +2 -2
  81. package/ui/.output/server/chunks/build/{Card-BkfpdQZ7.mjs.map → Card--ibiHV_r.mjs.map} +1 -1
  82. package/ui/.output/server/chunks/build/DashboardExecutedCard-styles.DXJjgycv.mjs +8 -0
  83. package/ui/.output/server/chunks/build/DashboardExecutedCard-styles.DXJjgycv.mjs.map +1 -0
  84. package/ui/.output/server/chunks/build/DashboardRunActions-styles.CEKdhvfj.mjs +8 -0
  85. package/ui/.output/server/chunks/build/DashboardRunActions-styles.CEKdhvfj.mjs.map +1 -0
  86. package/ui/.output/server/chunks/build/DashboardStatCard-styles.CiuzFOyH.mjs +8 -0
  87. package/ui/.output/server/chunks/build/DashboardStatCard-styles.CiuzFOyH.mjs.map +1 -0
  88. package/ui/.output/server/chunks/build/{FormGroup-UXO0FHfr.mjs → FormGroup-CX5VmH8y.mjs} +2 -2
  89. package/ui/.output/server/chunks/build/{FormGroup-UXO0FHfr.mjs.map → FormGroup-CX5VmH8y.mjs.map} +1 -1
  90. package/ui/.output/server/chunks/build/{Input-ckU7qZlb.mjs → Input-kmqS1oY_.mjs} +2 -3
  91. package/ui/.output/server/chunks/build/Input-kmqS1oY_.mjs.map +1 -0
  92. package/ui/.output/server/chunks/build/{Modal-KQ_hNOLI.mjs → Modal-DmZs0Ekg.mjs} +2 -2
  93. package/ui/.output/server/chunks/build/{Modal-KQ_hNOLI.mjs.map → Modal-DmZs0Ekg.mjs.map} +1 -1
  94. package/ui/.output/server/chunks/build/{Select-ByGZz9s4.mjs → Select-n4_YfXfk.mjs} +3 -4
  95. package/ui/.output/server/chunks/build/Select-n4_YfXfk.mjs.map +1 -0
  96. package/ui/.output/server/chunks/build/client.precomputed.mjs +1 -1
  97. package/ui/.output/server/chunks/build/client.precomputed.mjs.map +1 -1
  98. package/ui/.output/server/chunks/build/{config-QZGfNfGJ.mjs → config-Bkb2wy7R.mjs} +36 -38
  99. package/ui/.output/server/chunks/build/config-Bkb2wy7R.mjs.map +1 -0
  100. package/ui/.output/server/chunks/build/config-styles.B4mTchgT.mjs +8 -0
  101. package/ui/.output/server/chunks/build/config-styles.B4mTchgT.mjs.map +1 -0
  102. package/ui/.output/server/chunks/build/{default-DiZbTfNE.mjs → default-DmD3qBXZ.mjs} +2 -3
  103. package/ui/.output/server/chunks/build/default-DmD3qBXZ.mjs.map +1 -0
  104. package/ui/.output/server/chunks/build/entry-styles.Cg1Sndbr.mjs +11 -0
  105. package/ui/.output/server/chunks/build/entry-styles.Cg1Sndbr.mjs.map +1 -0
  106. package/ui/.output/server/chunks/build/index-BvfXQQ2n.mjs +447 -0
  107. package/ui/.output/server/chunks/build/index-BvfXQQ2n.mjs.map +1 -0
  108. package/ui/.output/server/chunks/build/index-styles-1.mjs-Kwz6Al0B.mjs +4 -0
  109. package/ui/.output/server/chunks/build/index-styles-1.mjs-Kwz6Al0B.mjs.map +1 -0
  110. package/ui/.output/server/chunks/build/index-styles-2.mjs-C-CZohsU.mjs +4 -0
  111. package/ui/.output/server/chunks/build/index-styles-2.mjs-C-CZohsU.mjs.map +1 -0
  112. package/ui/.output/server/chunks/build/index-styles-3.mjs-Cr0fTIrx.mjs +4 -0
  113. package/ui/.output/server/chunks/build/index-styles-3.mjs-Cr0fTIrx.mjs.map +1 -0
  114. package/ui/.output/server/chunks/build/index-styles.CHXoMimT.mjs +15 -0
  115. package/ui/.output/server/chunks/build/index-styles.CHXoMimT.mjs.map +1 -0
  116. package/ui/.output/server/chunks/build/{interval-Dye37XM9.mjs → interval-DHZqEf-n.mjs} +3 -3
  117. package/ui/.output/server/chunks/build/{interval-Dye37XM9.mjs.map → interval-DHZqEf-n.mjs.map} +1 -1
  118. package/ui/.output/server/chunks/build/{login-cekfLp5n.mjs → login-B5YkLJCV.mjs} +4 -5
  119. package/ui/.output/server/chunks/build/login-B5YkLJCV.mjs.map +1 -0
  120. package/ui/.output/server/chunks/build/{logs-hZKOhIqF.mjs → logs-BvD1Y3HI.mjs} +44 -41
  121. package/ui/.output/server/chunks/build/logs-BvD1Y3HI.mjs.map +1 -0
  122. package/ui/.output/server/chunks/build/logs-styles.CU5b1wKf.mjs +8 -0
  123. package/ui/.output/server/chunks/build/logs-styles.CU5b1wKf.mjs.map +1 -0
  124. package/ui/.output/server/chunks/build/nuxt-link-B3UD8izG.mjs +1 -1
  125. package/ui/.output/server/chunks/build/{run-CfSa6qTR.mjs → run-BStPkbGg.mjs} +13 -13
  126. package/ui/.output/server/chunks/build/run-BStPkbGg.mjs.map +1 -0
  127. package/ui/.output/server/chunks/build/run-styles.D0ITxcgL.mjs +8 -0
  128. package/ui/.output/server/chunks/build/run-styles.D0ITxcgL.mjs.map +1 -0
  129. package/ui/.output/server/chunks/build/{schedule-Pz7_wUvq.mjs → schedule-B2UKsnRW.mjs} +8 -9
  130. package/ui/.output/server/chunks/build/schedule-B2UKsnRW.mjs.map +1 -0
  131. package/ui/.output/server/chunks/build/server.mjs +9 -9
  132. package/ui/.output/server/chunks/build/styles.mjs +11 -7
  133. package/ui/.output/server/chunks/build/styles.mjs.map +1 -1
  134. package/ui/.output/server/chunks/build/{tasks-Bc5VRFpY.mjs → tasks-DBH3Z6lg.mjs} +35 -27
  135. package/ui/.output/server/chunks/build/{tasks-Bc5VRFpY.mjs.map → tasks-DBH3Z6lg.mjs.map} +1 -1
  136. package/ui/.output/server/chunks/build/{tasks-styles.C7XECkUG.mjs → tasks-styles.Bv3Rwofl.mjs} +5 -5
  137. package/ui/.output/server/chunks/build/{tasks-styles.C7XECkUG.mjs.map → tasks-styles.Bv3Rwofl.mjs.map} +1 -1
  138. package/ui/.output/server/chunks/build/{useApi-CFWxoIea.mjs → useApi-Bqajqsuz.mjs} +2 -3
  139. package/ui/.output/server/chunks/build/useApi-Bqajqsuz.mjs.map +1 -0
  140. package/ui/.output/server/chunks/build/useInitialLoading-Dvjk3xOV.mjs +20 -0
  141. package/ui/.output/server/chunks/build/useInitialLoading-Dvjk3xOV.mjs.map +1 -0
  142. package/ui/.output/server/chunks/nitro/nitro.mjs +179 -176
  143. package/ui/.output/server/chunks/nitro/nitro.mjs.map +1 -1
  144. package/ui/.output/server/chunks/routes/api/config/test.post.mjs +8 -12
  145. package/ui/.output/server/chunks/routes/api/config/test.post.mjs.map +1 -1
  146. package/ui/.output/server/chunks/routes/api/config.put.mjs +1 -1
  147. package/ui/.output/server/chunks/routes/api/dashboard/stats.get.mjs +184 -0
  148. package/ui/.output/server/chunks/routes/api/dashboard/stats.get.mjs.map +1 -0
  149. package/ui/.output/server/chunks/routes/api/logs.delete.mjs +1 -1
  150. package/ui/.output/server/chunks/routes/api/logs.get.mjs +1 -1
  151. package/ui/.output/server/chunks/routes/api/run.post.mjs +1 -1
  152. package/ui/.output/server/chunks/routes/api/schedule.post.mjs +1 -1
  153. package/ui/.output/server/chunks/routes/api/tasks/_id/execute.post.mjs +1 -1
  154. package/ui/.output/server/chunks/routes/api/tasks/statuses.get.mjs +1 -1
  155. package/ui/.output/server/chunks/routes/api/tasks.get.mjs +1 -1
  156. package/ui/.output/server/chunks/routes/renderer.mjs +1 -13
  157. package/ui/package.json +1 -1
  158. package/ui/.output/public/_nuxt/2bKOvQ0d.js +0 -1
  159. package/ui/.output/public/_nuxt/B9AVA2DP.js +0 -1
  160. package/ui/.output/public/_nuxt/Bwm-qAEx.js +0 -1
  161. package/ui/.output/public/_nuxt/C2BUFUls.js +0 -1
  162. package/ui/.output/public/_nuxt/C7JnlssT.js +0 -1
  163. package/ui/.output/public/_nuxt/C9wM2XOU.js +0 -70
  164. package/ui/.output/public/_nuxt/CLsTGSNv.js +0 -1
  165. package/ui/.output/public/_nuxt/CYtbVgsc.js +0 -1
  166. package/ui/.output/public/_nuxt/Czg20gUb.js +0 -1
  167. package/ui/.output/public/_nuxt/D7LY3N47.js +0 -16
  168. package/ui/.output/public/_nuxt/DCp3GJQW.js +0 -1
  169. package/ui/.output/public/_nuxt/DWD1xjy0.js +0 -2
  170. package/ui/.output/public/_nuxt/DWMhLzME.js +0 -1
  171. package/ui/.output/public/_nuxt/Daca6CiN.js +0 -5
  172. package/ui/.output/public/_nuxt/DehGGwZq.js +0 -1
  173. package/ui/.output/public/_nuxt/DqW9UKXb.js +0 -1
  174. package/ui/.output/public/_nuxt/builds/latest.json +0 -1
  175. package/ui/.output/public/_nuxt/builds/meta/201c9849-97b7-4436-b6e4-26a47cf05d53.json +0 -1
  176. package/ui/.output/public/_nuxt/config.ClyHUYof.css +0 -1
  177. package/ui/.output/public/_nuxt/logs.BmDpUxtf.css +0 -1
  178. package/ui/.output/public/_nuxt/run.ByHLIFjd.css +0 -1
  179. package/ui/.output/server/chunks/build/Badge-2SB8hHdz.mjs.map +0 -1
  180. package/ui/.output/server/chunks/build/Button-Dgqz5RR8.mjs.map +0 -1
  181. package/ui/.output/server/chunks/build/Input-ckU7qZlb.mjs.map +0 -1
  182. package/ui/.output/server/chunks/build/Select-ByGZz9s4.mjs.map +0 -1
  183. package/ui/.output/server/chunks/build/config-QZGfNfGJ.mjs.map +0 -1
  184. package/ui/.output/server/chunks/build/config-styles.DjqRFF9g.mjs +0 -8
  185. package/ui/.output/server/chunks/build/config-styles.DjqRFF9g.mjs.map +0 -1
  186. package/ui/.output/server/chunks/build/default-DiZbTfNE.mjs.map +0 -1
  187. package/ui/.output/server/chunks/build/entry-styles.D33dgEBj.mjs +0 -11
  188. package/ui/.output/server/chunks/build/entry-styles.D33dgEBj.mjs.map +0 -1
  189. package/ui/.output/server/chunks/build/index-DZrzYTcX.mjs +0 -89
  190. package/ui/.output/server/chunks/build/index-DZrzYTcX.mjs.map +0 -1
  191. package/ui/.output/server/chunks/build/login-cekfLp5n.mjs.map +0 -1
  192. package/ui/.output/server/chunks/build/logs-hZKOhIqF.mjs.map +0 -1
  193. package/ui/.output/server/chunks/build/logs-styles.jGthmQxA.mjs +0 -8
  194. package/ui/.output/server/chunks/build/logs-styles.jGthmQxA.mjs.map +0 -1
  195. package/ui/.output/server/chunks/build/run-CfSa6qTR.mjs.map +0 -1
  196. package/ui/.output/server/chunks/build/run-styles.PsIyKaYb.mjs +0 -8
  197. package/ui/.output/server/chunks/build/run-styles.PsIyKaYb.mjs.map +0 -1
  198. package/ui/.output/server/chunks/build/schedule-Pz7_wUvq.mjs.map +0 -1
  199. package/ui/.output/server/chunks/build/selectMenu-B2FUotwL.mjs +0 -158
  200. package/ui/.output/server/chunks/build/selectMenu-B2FUotwL.mjs.map +0 -1
  201. package/ui/.output/server/chunks/build/useApi-CFWxoIea.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"nitro.mjs","sources":["../../../../node_modules/destr/dist/index.mjs","../../../../node_modules/ufo/dist/index.mjs","../../../../node_modules/radix3/dist/index.mjs","../../../../node_modules/defu/dist/defu.mjs","../../../../node_modules/node-mock-http/dist/index.mjs","../../../../node_modules/h3/dist/index.mjs","../../../../node_modules/hookable/dist/index.mjs","../../../../node_modules/node-fetch-native/dist/native.mjs","../../../../node_modules/ofetch/dist/shared/ofetch.CWycOUEr.mjs","../../../../node_modules/ofetch/dist/node.mjs","../../../../node_modules/unstorage/dist/shared/unstorage.zVDD2mZo.mjs","../../../../node_modules/unstorage/dist/index.mjs","../../../../node_modules/unstorage/drivers/utils/index.mjs","../../../../node_modules/unstorage/drivers/utils/node-fs.mjs","../../../../node_modules/unstorage/drivers/fs-lite.mjs","../../../../node_modules/nitropack/dist/runtime/internal/storage.mjs","../../../../node_modules/ohash/dist/shared/ohash.D__AXeF1.mjs","../../../../node_modules/ohash/dist/crypto/node/index.mjs","../../../../node_modules/ohash/dist/index.mjs","../../../../node_modules/nitropack/dist/runtime/internal/hash.mjs","../../../../node_modules/nitropack/dist/runtime/internal/cache.mjs","../../../../node_modules/klona/dist/index.mjs","../../../../node_modules/scule/dist/index.mjs","../../../../node_modules/nitropack/dist/runtime/internal/utils.env.mjs","../../../../node_modules/nitropack/dist/runtime/internal/config.mjs","../../../../node_modules/unctx/dist/index.mjs","../../../../node_modules/nitropack/dist/runtime/internal/context.mjs","../../../../node_modules/nitropack/dist/runtime/internal/route-rules-utils.mjs","../../../../node_modules/nitropack/dist/runtime/internal/route-rules.mjs","../../../../node_modules/nitropack/dist/runtime/internal/utils.mjs","../../../../node_modules/@nuxt/nitro-server/dist/runtime/utils/error.mjs","../../../../node_modules/@nuxt/nitro-server/dist/runtime/handlers/error.mjs","../../../../node_modules/nitropack/dist/runtime/internal/error/utils.mjs","../../../../node_modules/nitropack/dist/runtime/internal/error/prod.mjs","../../../../node_modules/@nuxtjs/color-mode/dist/runtime/nitro-plugin.js","../../../../node_modules/pathe/dist/shared/pathe.M-eThtNZ.mjs","../../../../node_modules/nitropack/dist/runtime/internal/static.mjs","../../../../server/utils/loopback.ts","../../../../server/middleware/auth.ts","../../../../node_modules/nitropack/dist/runtime/internal/renderer.mjs","../../../../node_modules/@nuxt/nitro-server/dist/runtime/utils/paths.mjs","../../../../server/utils/currentRun.ts","../../../../server/utils/activeTask.ts","../../../../server/utils/envFile.ts","../../../../server/utils/provider.ts","../../../../server/utils/boardTasks.ts","../../../../server/utils/logFile.ts","../../../../server/utils/schedule.ts","../../../../.nuxt/nuxt-icon-server-bundle.mjs","../../../../node_modules/@nuxt/icon/dist/runtime/server/api.js","../../../../node_modules/nitropack/dist/runtime/internal/app.mjs","../../../../node_modules/nitropack/dist/runtime/internal/lib/http-graceful-shutdown.mjs","../../../../node_modules/nitropack/dist/runtime/internal/shutdown.mjs","../../../../node_modules/nitropack/dist/presets/node/runtime/node-server.mjs"],"names":["getQuery","createRouter","f","h","c","i","l","createError","mergeHeaders","s","nodeFetch","Headers","Headers$1","AbortController$1","$fetch","normalizeKey","defineDriver","DRIVER_NAME","dirname","fsPromises","resolve","fsp","serialize","hash","_inlineAppConfig","createRadixRouter","path","getDistDir","nitroApp","callNodeRequestHandler","fetchNodeRequestHandler","gracefulShutdown","HttpsServer","HttpServer"],"mappings":"","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,39,40,49,50,51,52,53]}
1
+ {"version":3,"file":"nitro.mjs","sources":["../../../../node_modules/destr/dist/index.mjs","../../../../node_modules/ufo/dist/index.mjs","../../../../node_modules/radix3/dist/index.mjs","../../../../node_modules/defu/dist/defu.mjs","../../../../node_modules/node-mock-http/dist/index.mjs","../../../../node_modules/h3/dist/index.mjs","../../../../node_modules/hookable/dist/index.mjs","../../../../node_modules/node-fetch-native/dist/native.mjs","../../../../node_modules/ofetch/dist/shared/ofetch.CWycOUEr.mjs","../../../../node_modules/ofetch/dist/node.mjs","../../../../node_modules/unstorage/dist/shared/unstorage.zVDD2mZo.mjs","../../../../node_modules/unstorage/dist/index.mjs","../../../../node_modules/unstorage/drivers/utils/index.mjs","../../../../node_modules/unstorage/drivers/utils/node-fs.mjs","../../../../node_modules/unstorage/drivers/fs-lite.mjs","../../../../node_modules/nitropack/dist/runtime/internal/storage.mjs","../../../../node_modules/ohash/dist/shared/ohash.D__AXeF1.mjs","../../../../node_modules/ohash/dist/crypto/node/index.mjs","../../../../node_modules/ohash/dist/index.mjs","../../../../node_modules/nitropack/dist/runtime/internal/hash.mjs","../../../../node_modules/nitropack/dist/runtime/internal/cache.mjs","../../../../node_modules/klona/dist/index.mjs","../../../../node_modules/scule/dist/index.mjs","../../../../node_modules/nitropack/dist/runtime/internal/utils.env.mjs","../../../../node_modules/nitropack/dist/runtime/internal/config.mjs","../../../../node_modules/unctx/dist/index.mjs","../../../../node_modules/nitropack/dist/runtime/internal/context.mjs","../../../../node_modules/nitropack/dist/runtime/internal/route-rules-utils.mjs","../../../../node_modules/nitropack/dist/runtime/internal/route-rules.mjs","../../../../node_modules/nitropack/dist/runtime/internal/utils.mjs","../../../../node_modules/@nuxt/nitro-server/dist/runtime/utils/error.mjs","../../../../node_modules/@nuxt/nitro-server/dist/runtime/handlers/error.mjs","../../../../node_modules/nitropack/dist/runtime/internal/error/utils.mjs","../../../../node_modules/nitropack/dist/runtime/internal/error/prod.mjs","../../../../node_modules/@nuxtjs/color-mode/dist/runtime/nitro-plugin.js","../../../../node_modules/pathe/dist/shared/pathe.M-eThtNZ.mjs","../../../../node_modules/nitropack/dist/runtime/internal/static.mjs","../../../../server/utils/loopback.ts","../../../../server/middleware/auth.ts","../../../../node_modules/nitropack/dist/runtime/internal/renderer.mjs","../../../../node_modules/@nuxt/nitro-server/dist/runtime/utils/paths.mjs","../../../../server/utils/currentRun.ts","../../../../server/utils/activeTask.ts","../../../../server/utils/envFile.ts","../../../../server/utils/provider.ts","../../../../server/utils/boardTasks.ts","../../../../server/utils/doneStatus.ts","../../../../server/utils/logFile.ts","../../../../server/utils/schedule.ts","../../../../.nuxt/nuxt-icon-server-bundle.mjs","../../../../node_modules/@nuxt/icon/dist/runtime/server/api.js","../../../../node_modules/nitropack/dist/runtime/internal/app.mjs","../../../../node_modules/nitropack/dist/runtime/internal/lib/http-graceful-shutdown.mjs","../../../../node_modules/nitropack/dist/runtime/internal/shutdown.mjs","../../../../node_modules/nitropack/dist/presets/node/runtime/node-server.mjs"],"names":["getQuery","createRouter","f","h","c","i","l","createError","mergeHeaders","s","nodeFetch","Headers","Headers$1","AbortController$1","$fetch","normalizeKey","defineDriver","DRIVER_NAME","dirname","fsPromises","resolve","fsp","serialize","hash","_inlineAppConfig","createRadixRouter","path","getDistDir","nitroApp","callNodeRequestHandler","fetchNodeRequestHandler","gracefulShutdown","HttpsServer","HttpServer"],"mappings":"","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,39,40,50,51,52,53,54]}
@@ -24,11 +24,11 @@ const AGENT_CLI = {
24
24
  windsurf: ["windsurf", ["--version"]]
25
25
  };
26
26
  function getDistDir() {
27
- const cwd = process.env.AIDEV_CWD;
28
- if (!cwd) {
29
- throw createError({ statusCode: 500, statusMessage: "AIDEV_CWD not set" });
27
+ const pkgDir = process.env.AIDEV_PACKAGE_DIR;
28
+ if (!pkgDir) {
29
+ throw createError({ statusCode: 500, statusMessage: "AIDEV_PACKAGE_DIR not set" });
30
30
  }
31
- const dist = path.join(cwd, "dist");
31
+ const dist = path.join(pkgDir, "dist");
32
32
  if (!fs.existsSync(dist)) {
33
33
  throw createError({
34
34
  statusCode: 503,
@@ -38,9 +38,9 @@ function getDistDir() {
38
38
  return dist;
39
39
  }
40
40
  function loadAidev(rel) {
41
- const cwd = process.env.AIDEV_CWD;
41
+ const pkgDir = process.env.AIDEV_PACKAGE_DIR;
42
42
  const dist = getDistDir();
43
- const req = createRequire(path.join(cwd, "package.json"));
43
+ const req = createRequire(path.join(pkgDir, "package.json"));
44
44
  return req(path.join(dist, rel));
45
45
  }
46
46
  async function testProvider() {
@@ -49,10 +49,8 @@ async function testProvider() {
49
49
  if (!env.exists) {
50
50
  return { ok: false, message: `.env.aidev not found at ${env.path}` };
51
51
  }
52
- for (const key of env.keys) {
53
- delete process.env[key];
54
- }
55
52
  const configMod = loadAidev("config");
53
+ configMod.clearEnvFiles(env.path);
56
54
  const providersMod = loadAidev("providers");
57
55
  const config = configMod.loadConfig(env.path);
58
56
  const provider = providersMod.createProvider(config);
@@ -76,10 +74,8 @@ function testAnthropicSdk() {
76
74
  if (!env.exists) {
77
75
  return { ok: false, message: `.env.aidev not found at ${env.path}` };
78
76
  }
79
- for (const key of env.keys) {
80
- delete process.env[key];
81
- }
82
77
  const configMod = loadAidev("config");
78
+ configMod.clearEnvFiles(env.path);
83
79
  configMod.loadConfig(env.path);
84
80
  const tokens = configMod.parseAnthropicTokens((_a = process.env.ANTHROPIC_API_KEY) != null ? _a : "");
85
81
  return tokens.length > 0 ? {
@@ -1 +1 @@
1
- {"version":3,"file":"test.post.mjs","sources":["../../../../../../server/api/config/test.post.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test.post.mjs","sources":["../../../../../../server/api/config/test.post.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { i as defineEventHandler, e as createError, K as readBody, Z as writeEnvFile, L as readEnvFile } from '../../nitro/nitro.mjs';
1
+ import { i as defineEventHandler, e as createError, K as readBody, _ as writeEnvFile, L as readEnvFile } from '../../nitro/nitro.mjs';
2
2
  import 'node:path';
3
3
  import 'node:module';
4
4
  import 'node:fs';
@@ -0,0 +1,184 @@
1
+ import { i as defineEventHandler, t as getProvider, u as getQuery, U as statusesForFilter, O as resolveDoneStatuses, o as fetchBoardTasks, F as mergeTasksById } from '../../../nitro/nitro.mjs';
2
+ import 'node:path';
3
+ import 'node:module';
4
+ import 'node:fs';
5
+ import 'node:os';
6
+ import 'dotenv';
7
+ import 'node:http';
8
+ import 'node:https';
9
+ import 'node:events';
10
+ import 'node:buffer';
11
+ import 'node:crypto';
12
+ import 'node:async_hooks';
13
+ import 'node:url';
14
+ import 'node:net';
15
+ import '@iconify/utils';
16
+ import 'consola';
17
+
18
+ const PERIOD_MS = {
19
+ week: 7 * 24 * 60 * 60 * 1e3,
20
+ month: 30 * 24 * 60 * 60 * 1e3,
21
+ "3months": 90 * 24 * 60 * 60 * 1e3
22
+ };
23
+ const BOARD_OPTS = { skipAttachments: true, omitDescription: true };
24
+ const ZERO_COUNTS = {
25
+ open: 0,
26
+ pending: 0,
27
+ inReview: 0,
28
+ allTimeDone: 0,
29
+ executedCurrent: 0,
30
+ executedPrevious: 0
31
+ };
32
+ function addCounts(a, b) {
33
+ return {
34
+ open: a.open + b.open,
35
+ pending: a.pending + b.pending,
36
+ inReview: a.inReview + b.inReview,
37
+ allTimeDone: a.allTimeDone + b.allTimeDone,
38
+ executedCurrent: a.executedCurrent + b.executedCurrent,
39
+ executedPrevious: a.executedPrevious + b.executedPrevious
40
+ };
41
+ }
42
+ function countByStatuses(tasks, statuses) {
43
+ if (!statuses.length) return 0;
44
+ const set = new Set(statuses.map((s) => s.toLowerCase()));
45
+ return tasks.filter((t) => set.has(t.status.toLowerCase())).length;
46
+ }
47
+ async function fetchMergedBoardTasks(config, provider, nonCodeProvider) {
48
+ let tasks = await fetchBoardTasks(config, provider);
49
+ if (nonCodeProvider) {
50
+ tasks = mergeTasksById(tasks, await fetchBoardTasks(config, nonCodeProvider));
51
+ }
52
+ return tasks;
53
+ }
54
+ async function fetchMergedByStatus(config, provider, nonCodeProvider, statuses, options) {
55
+ if (!statuses.length) return [];
56
+ let tasks = await provider.fetchTasksByStatus(statuses, options);
57
+ if (nonCodeProvider) {
58
+ tasks = mergeTasksById(tasks, await nonCodeProvider.fetchTasksByStatus(statuses, options));
59
+ }
60
+ return tasks;
61
+ }
62
+ async function fetchOptimizedCounts(provider, nonCodeProvider, params) {
63
+ const fetches = [];
64
+ if (typeof provider.fetchDashboardCounts === "function") {
65
+ fetches.push(provider.fetchDashboardCounts(params));
66
+ }
67
+ if (nonCodeProvider && typeof nonCodeProvider.fetchDashboardCounts === "function") {
68
+ fetches.push(nonCodeProvider.fetchDashboardCounts(params));
69
+ }
70
+ if (!fetches.length) return ZERO_COUNTS;
71
+ const parts = await Promise.all(fetches);
72
+ return parts.reduce(addCounts, ZERO_COUNTS);
73
+ }
74
+ async function fetchLegacyStats(config, provider, nonCodeProvider, openStatuses, pendingStatuses, reviewStatuses, inProgressStatuses, doneStatuses, currentPeriodStart, previousPeriodStart) {
75
+ const boardTasks = await fetchMergedBoardTasks(config, provider, nonCodeProvider);
76
+ const open = countByStatuses(boardTasks, openStatuses);
77
+ const pending = countByStatuses(boardTasks, pendingStatuses);
78
+ const inReview = countByStatuses(boardTasks, reviewStatuses);
79
+ const doneTasks = await fetchMergedByStatus(
80
+ config,
81
+ provider,
82
+ nonCodeProvider,
83
+ doneStatuses,
84
+ { ...BOARD_OPTS, includeClosed: true }
85
+ );
86
+ const executedStatuses = [...reviewStatuses, ...inProgressStatuses, ...doneStatuses];
87
+ const executedOpts = { ...BOARD_OPTS, includeClosed: true };
88
+ const errors = [];
89
+ let executedCurrent = 0;
90
+ let executedCombined = 0;
91
+ if (executedStatuses.length) {
92
+ try {
93
+ const [currentTasks, combinedTasks] = await Promise.all([
94
+ fetchMergedByStatus(config, provider, nonCodeProvider, executedStatuses, {
95
+ ...executedOpts,
96
+ updatedAfter: currentPeriodStart
97
+ }),
98
+ fetchMergedByStatus(config, provider, nonCodeProvider, executedStatuses, {
99
+ ...executedOpts,
100
+ updatedAfter: previousPeriodStart
101
+ })
102
+ ]);
103
+ executedCurrent = currentTasks.length;
104
+ executedCombined = combinedTasks.length;
105
+ } catch (err) {
106
+ const msg = err instanceof Error ? err.message : String(err);
107
+ console.error(`[dashboard/stats] executed fetch failed (provider=${config.provider}): ${msg}`);
108
+ errors.push(`Executed stats unavailable: ${msg}`);
109
+ }
110
+ }
111
+ return {
112
+ counts: {
113
+ open,
114
+ pending,
115
+ inReview,
116
+ allTimeDone: doneTasks.length,
117
+ executedCurrent,
118
+ executedPrevious: Math.max(0, executedCombined - executedCurrent)
119
+ },
120
+ errors
121
+ };
122
+ }
123
+ const stats_get = defineEventHandler(async (event) => {
124
+ var _a, _b, _c, _d;
125
+ const { config, provider, nonCodeProvider } = getProvider(event);
126
+ const q = getQuery(event);
127
+ const periodKey = typeof q.period === "string" && q.period in PERIOD_MS ? q.period : "week";
128
+ const now = Date.now();
129
+ const periodMs = PERIOD_MS[periodKey];
130
+ const currentPeriodStart = now - periodMs;
131
+ const previousPeriodStart = now - 2 * periodMs;
132
+ const openStatuses = (_a = statusesForFilter(config, "open")) != null ? _a : [];
133
+ const pendingStatuses = (_b = statusesForFilter(config, "pending")) != null ? _b : [];
134
+ const reviewStatuses = (_c = statusesForFilter(config, "review")) != null ? _c : [];
135
+ const inProgressStatuses = (_d = statusesForFilter(config, "inprogress")) != null ? _d : [];
136
+ const doneStatuses = await resolveDoneStatuses(config, provider);
137
+ const statsParams = {
138
+ openStatuses,
139
+ pendingStatuses,
140
+ reviewStatuses,
141
+ inProgressStatuses,
142
+ doneStatuses,
143
+ currentPeriodStart,
144
+ previousPeriodStart
145
+ };
146
+ let counts;
147
+ let errors = [];
148
+ if (typeof provider.fetchDashboardCounts === "function") {
149
+ counts = await fetchOptimizedCounts(provider, nonCodeProvider, statsParams);
150
+ } else {
151
+ const legacy = await fetchLegacyStats(
152
+ config,
153
+ provider,
154
+ nonCodeProvider,
155
+ openStatuses,
156
+ pendingStatuses,
157
+ reviewStatuses,
158
+ inProgressStatuses,
159
+ doneStatuses,
160
+ currentPeriodStart,
161
+ previousPeriodStart
162
+ );
163
+ counts = legacy.counts;
164
+ errors = legacy.errors;
165
+ }
166
+ const changeAmount = counts.executedCurrent - counts.executedPrevious;
167
+ const changePercent = counts.executedPrevious > 0 ? Math.round(changeAmount / counts.executedPrevious * 100) : null;
168
+ return {
169
+ open: counts.open,
170
+ pending: counts.pending,
171
+ inReview: counts.inReview,
172
+ allTimeDone: counts.allTimeDone,
173
+ executed: {
174
+ current: counts.executedCurrent,
175
+ previous: counts.executedPrevious,
176
+ changeAmount,
177
+ changePercent
178
+ },
179
+ ...errors.length ? { errors } : {}
180
+ };
181
+ });
182
+
183
+ export { stats_get as default };
184
+ //# sourceMappingURL=stats.get.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stats.get.mjs","sources":["../../../../../../server/api/dashboard/stats.get.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { i as defineEventHandler, e as createError, O as resolveLogPath } from '../../nitro/nitro.mjs';
1
+ import { i as defineEventHandler, e as createError, P as resolveLogPath } from '../../nitro/nitro.mjs';
2
2
  import * as fs from 'node:fs';
3
3
  import 'node:path';
4
4
  import 'node:module';
@@ -1,4 +1,4 @@
1
- import { i as defineEventHandler, e as createError, O as resolveLogPath, u as getQuery } from '../../nitro/nitro.mjs';
1
+ import { i as defineEventHandler, e as createError, P as resolveLogPath, u as getQuery } from '../../nitro/nitro.mjs';
2
2
  import * as fs from 'node:fs';
3
3
  import 'node:path';
4
4
  import 'node:module';
@@ -1,4 +1,4 @@
1
- import { i as defineEventHandler, K as readBody, e as createError, r as getActiveRun, f as createEventStream, c as clearActiveRun, R as setActiveRun } from '../../nitro/nitro.mjs';
1
+ import { i as defineEventHandler, K as readBody, e as createError, r as getActiveRun, f as createEventStream, c as clearActiveRun, S as setActiveRun } from '../../nitro/nitro.mjs';
2
2
  import { spawn } from 'node:child_process';
3
3
  import * as fs from 'node:fs';
4
4
  import * as path from 'node:path';
@@ -1,4 +1,4 @@
1
- import { i as defineEventHandler, K as readBody, e as createError, S as setSchedule } from '../../nitro/nitro.mjs';
1
+ import { i as defineEventHandler, K as readBody, e as createError, T as setSchedule } from '../../nitro/nitro.mjs';
2
2
  import 'node:path';
3
3
  import 'node:module';
4
4
  import 'node:fs';
@@ -1,4 +1,4 @@
1
- import { i as defineEventHandler, y as getRouterParam, e as createError, r as getActiveRun, f as createEventStream, c as clearActiveRun, R as setActiveRun } from '../../../../nitro/nitro.mjs';
1
+ import { i as defineEventHandler, y as getRouterParam, e as createError, r as getActiveRun, f as createEventStream, c as clearActiveRun, S as setActiveRun } from '../../../../nitro/nitro.mjs';
2
2
  import { spawn } from 'node:child_process';
3
3
  import * as fs from 'node:fs';
4
4
  import * as path from 'node:path';
@@ -1,4 +1,4 @@
1
- import { i as defineEventHandler, t as getProvider, T as statusesForFilter } from '../../../nitro/nitro.mjs';
1
+ import { i as defineEventHandler, t as getProvider, U as statusesForFilter } from '../../../nitro/nitro.mjs';
2
2
  import 'node:path';
3
3
  import 'node:module';
4
4
  import 'node:fs';
@@ -1,4 +1,4 @@
1
- import { i as defineEventHandler, t as getProvider, u as getQuery, o as fetchBoardTasks, T as statusesForFilter, F as mergeTasksById, N as resolveActiveTaskId } from '../../nitro/nitro.mjs';
1
+ import { i as defineEventHandler, t as getProvider, u as getQuery, o as fetchBoardTasks, U as statusesForFilter, F as mergeTasksById, N as resolveActiveTaskId } from '../../nitro/nitro.mjs';
2
2
  import 'node:path';
3
3
  import 'node:module';
4
4
  import 'node:fs';
@@ -1,5 +1,5 @@
1
1
  import { createRenderer, getRequestDependencies, getPreloadLinks, getPrefetchLinks } from 'vue-bundle-renderer/runtime';
2
- import { a as buildAssetsURL, J as publicAssetsURL, V as useRuntimeConfig, w as getResponseStatusText, v as getResponseStatus, m as encodePath, j as defineRenderHandler, u as getQuery, e as createError, x as getRouteRules, D as joinURL, U as useNitroApp } from '../nitro/nitro.mjs';
2
+ import { a as buildAssetsURL, J as publicAssetsURL, W as useRuntimeConfig, w as getResponseStatusText, v as getResponseStatus, m as encodePath, j as defineRenderHandler, u as getQuery, e as createError, x as getRouteRules, D as joinURL, V as useNitroApp } from '../nitro/nitro.mjs';
3
3
  import { renderToString } from 'vue/server-renderer';
4
4
  import { createHead as createHead$1, propsToString, renderSSRHead } from 'unhead/server';
5
5
  import { stringify, uneval } from 'devalue';
@@ -369,18 +369,6 @@ async function renderRoute(event, ssrError) {
369
369
  href: payloadURL
370
370
  } ] }, headEntryOptions);
371
371
  }
372
- if (ssrContext["~preloadManifest"] && !NO_SCRIPTS) {
373
- ssrContext.head.push({ link: [{
374
- rel: "preload",
375
- as: "fetch",
376
- fetchpriority: "low",
377
- crossorigin: "anonymous",
378
- href: buildAssetsURL(`builds/meta/${ssrContext.runtimeConfig.app.buildId}.json`)
379
- }] }, {
380
- ...headEntryOptions,
381
- tagPriority: "low"
382
- });
383
- }
384
372
 
385
373
  if (inlinedStyles.length) {
386
374
  ssrContext.head.push({ style: inlinedStyles });
package/ui/package.json CHANGED
@@ -5,7 +5,7 @@
5
5
  "type": "module",
6
6
  "description": "Web dashboard for aidev — manages .env.aidev, logs, tasks, and run controls",
7
7
  "scripts": {
8
- "dev": "nuxi dev",
8
+ "dev": "nuxi prepare && nuxi dev",
9
9
  "build": "nuxi build",
10
10
  "preview": "nuxi preview",
11
11
  "start": "node .output/server/index.mjs",
@@ -1 +0,0 @@
1
- import{_ as v}from"./CYtbVgsc.js";import{a as g}from"./DCp3GJQW.js";import{c as h}from"./m0N__S0x.js";import{l as k,ac as w,i as e,f as s,F as x,V as C,a5 as l,a0 as t,k as c,ah as i,W as N,j as B,e as L,N as r,ad as V}from"./D7LY3N47.js";import{_ as y}from"./DlAUqK2U.js";import"./DL7l9XXk.js";import"./DqW9UKXb.js";const R={class:"app-shell"},S={class:"sidebar"},T={class:"nav-icon","aria-hidden":"true"},D={class:"main"},F={class:"topbar"},j=["title"],z={class:"cwd-value"},A={class:"content"},E=k({__name:"default",setup(I){const d=w(),_=V(),n=L(()=>_.public.aidevCwd),u=[{to:"/",label:"Dashboard",icon:"◇"},{to:"/config",label:"Config",icon:"⚙"},{to:"/schedule",label:"Schedule",icon:"⏱"},{to:"/logs",label:"Logs",icon:"≡"},{to:"/tasks",label:"Tasks",icon:"☰"},{to:"/run",label:"Run",icon:"▶"}];function p(){h(),d.replace("/login")}return(m,o)=>{const f=v,b=g;return r(),e("div",R,[s("aside",S,[o[0]||(o[0]=s("div",{class:"brand"},[s("span",{class:"brand-mark"},"aidev"),s("span",{class:"brand-sub"},"dashboard")],-1)),s("nav",null,[(r(),e(x,null,C(u,a=>c(f,{key:a.to,to:a.to,class:"nav-link","active-class":"nav-link--active"},{default:i(()=>[s("span",T,t(a.icon),1),s("span",null,t(a.label),1)]),_:2},1032,["to"])),64))])]),s("div",D,[s("header",F,[s("div",{class:"cwd",title:l(n)},[o[1]||(o[1]=s("span",{class:"cwd-label"},"cwd",-1)),s("code",z,t(l(n)||"—"),1)],8,j),c(b,{size:"sm",color:"gray",variant:"ghost",onClick:p},{default:i(()=>[...o[2]||(o[2]=[B(" Logout ",-1)])]),_:1})]),s("main",A,[N(m.$slots,"default",{},void 0,!0)])])])}}}),K=y(E,[["__scopeId","data-v-6cf41085"]]);export{K as default};
@@ -1 +0,0 @@
1
- import{a as P}from"./DCp3GJQW.js";import{_ as W}from"./CLsTGSNv.js";import{_ as q}from"./C2BUFUls.js";import{_ as H}from"./B2vj_HiW.js";import{_ as J}from"./DWMhLzME.js";import{_ as Q}from"./DKIXA6Zt.js";import{_ as X}from"./C7JnlssT.js";import{u as Y}from"./m0N__S0x.js";import{l as Z,K as ee,i as m,k as u,ah as n,U as i,e as j,N as r,a5 as s,g as v,h as c,f as a,j as d,v as B,a0 as f,F as te,V as se,D as ae}from"./D7LY3N47.js";import{_ as le}from"./DlAUqK2U.js";import"./DL7l9XXk.js";import"./CYtbVgsc.js";import"./DqW9UKXb.js";const oe={class:"schedule-page"},ne={class:"flex items-center justify-between gap-3 flex-wrap"},re={class:"text-xs text-gray-500 mt-1"},ie={key:0,class:"ml-2 text-gray-400"},de={class:"flex items-center gap-2"},ue={class:"grid gap-4 md:grid-cols-2"},ce={class:"mt-4 flex items-center gap-2"},me={key:0,class:"text-sm text-gray-600"},fe={key:1,class:"overflow-x-auto"},pe={class:"schedule-table w-full text-sm text-gray-900 dark:text-gray-100"},ge={class:"cwd-cell text-gray-800 dark:text-gray-200"},ve={class:"text-gray-800 dark:text-gray-200"},_e={key:0,class:"text-gray-800 dark:text-gray-200"},he={key:1,class:"text-gray-500 dark:text-gray-400"},xe={class:"text-right"},ye=Z({__name:"schedule",setup(be){const b=Y(),l=i(null),k=i(!1),C=i(!1),F=i(!1),S=i(null),A=i(!1),U=i(""),_=i(""),O=i(!1),p=i(""),h=i(""),D=j(()=>(l.value?.presets??[]).map(t=>({label:`${t.label} (${t.cron})`,value:t.cron}))),V=j(()=>l.value?.entries.find(t=>t.current)??null),L=j(()=>{const t=l.value?.backend;return t==="launchd"?"LaunchAgent":t==="schtasks"?"Task Scheduler":"cron"});function M(t){if(t?.cron){p.value=t.cron;const e=t.extraArgs.indexOf("-e");h.value=e>=0&&t.extraArgs[e+1]?t.extraArgs[e+1]:""}else l.value?.presets[0]&&(p.value=l.value.presets[0].cron,h.value="")}async function y(){k.value=!0,U.value="";try{l.value=await b("/api/schedule"),M(V.value)}catch(t){const e=t?.data?.statusMessage??t?.message??"Failed to load schedules";U.value=e}finally{k.value=!1}}function x(t,e){O.value=t,_.value=e}async function N(){C.value=!0,_.value="";try{const t=await b("/api/schedule",{method:"POST",body:{cron:p.value,envFile:h.value||void 0}});x(!0,t.message),await y()}catch(t){const e=t?.data?.statusMessage??t?.message??"Failed to set schedule";x(!1,e)}finally{C.value=!1}}async function z(t){S.value=t,_.value="";try{const e=await b(`/api/schedule/${t}`,{method:"DELETE"});x(!0,e.message),await y()}catch(e){const g=e?.data?.statusMessage??e?.message??"Failed to remove schedule";x(!1,g)}finally{S.value=null}}async function R(){const t=V.value;if(t){A.value=!0;try{await z(t.id)}finally{A.value=!1}}}async function T(){F.value=!0,_.value="";try{const t=await b("/api/schedule/fix",{method:"POST"});x(!0,t.message),await y()}catch(t){const e=t?.data?.statusMessage??t?.message??"Failed to fix schedules";x(!1,e)}finally{F.value=!1}}return ee(()=>{y()}),(t,e)=>{const g=P,w=W,$=q,E=H,G=J,I=Q,K=X;return r(),m("div",oe,[u(I,null,{header:n(()=>[a("div",ne,[a("div",null,[e[5]||(e[5]=a("h1",{class:"text-lg font-semibold"},"Schedule",-1)),a("p",re,[e[2]||(e[2]=d(" Automatic ",-1)),e[3]||(e[3]=a("code",null,"aidev run",-1)),e[4]||(e[4]=d(" for ",-1)),a("code",null,f(s(l)?.currentCwd||"—"),1),s(l)?(r(),m("span",ie," via "+f(s(L)),1)):c("",!0)])]),a("div",de,[u(g,{color:"gray",variant:"ghost",size:"sm",loading:s(k),disabled:s(k),onClick:y},{default:n(()=>[...e[6]||(e[6]=[d(" Refresh ",-1)])]),_:1},8,["loading","disabled"]),s(l)?.fixSupported?(r(),v(g,{key:0,color:"gray",variant:"soft",size:"sm",loading:s(F),disabled:s(F)||!s(l)?.entries.length,onClick:T},{default:n(()=>[...e[7]||(e[7]=[d(" Fix paths ",-1)])]),_:1},8,["loading","disabled"])):c("",!0)])])]),default:n(()=>[s(U)?(r(),v(w,{key:0,color:"red",variant:"soft",title:s(U),class:"mb-4"},null,8,["title"])):c("",!0),s(_)?(r(),v(w,{key:1,color:s(O)?"green":"red",variant:"soft",title:s(O)?"Done":"Failed",description:s(_),class:"mb-4"},null,8,["color","title","description"])):c("",!0),u(I,{class:"mb-4",ui:{body:{padding:"p-4"}}},{header:n(()=>[...e[8]||(e[8]=[a("h2",{class:"text-base font-semibold"},"Schedule this project",-1)])]),default:n(()=>[e[10]||(e[10]=a("p",{class:"text-sm text-gray-600 mb-4"},[d(" Sets or replaces the schedule for the connected working directory. Only preset intervals are supported (same as "),a("code",null,"aidev schedule set"),d("). ")],-1)),a("div",ue,[u(E,{label:"Interval"},{default:n(()=>[u($,{modelValue:s(p),"onUpdate:modelValue":e[0]||(e[0]=o=>B(p)?p.value=o:null),options:s(D)},null,8,["modelValue","options"])]),_:1}),u(E,{label:"Custom env file",help:"Optional — passed as -e to the scheduled run (same as CLI)."},{default:n(()=>[u(G,{modelValue:s(h),"onUpdate:modelValue":e[1]||(e[1]=o=>B(h)?h.value=o:null),placeholder:"/path/to/.env.aidev",autocomplete:"off"},null,8,["modelValue"])]),_:1})]),a("div",ce,[u(g,{color:"primary",size:"sm",loading:s(C),disabled:s(C)||!s(p),onClick:N},{default:n(()=>[d(f(s(V)?"Update schedule":"Enable schedule"),1)]),_:1},8,["loading","disabled"]),s(V)?(r(),v(g,{key:0,color:"red",variant:"soft",size:"sm",loading:s(A),disabled:s(A),onClick:R},{default:n(()=>[...e[9]||(e[9]=[d(" Remove for this project ",-1)])]),_:1},8,["loading","disabled"])):c("",!0)])]),_:1}),u(I,null,{header:n(()=>[...e[11]||(e[11]=[a("h2",{class:"text-base font-semibold"},"All schedules",-1)])]),default:n(()=>[s(l)&&!s(l).entries.length?(r(),m("p",me," No aidev schedules are configured on this machine. ")):s(l)?(r(),m("div",fe,[a("table",pe,[e[14]||(e[14]=a("thead",null,[a("tr",null,[a("th",null,"ID"),a("th",null,"Directory"),a("th",null,"Schedule"),a("th",null,"Cron"),a("th",null,"Args"),a("th")])],-1)),a("tbody",null,[(r(!0),m(te,null,se(s(l).entries,o=>(r(),m("tr",{key:o.id,class:ae(o.current?"bg-green-50 dark:bg-green-950/50":void 0)},[a("td",null,f(o.id),1),a("td",null,[a("code",ge,f(o.cwd),1),o.current?(r(),v(K,{key:0,color:"green",variant:"soft",size:"xs",class:"ml-2"},{default:n(()=>[...e[12]||(e[12]=[d(" this project ",-1)])]),_:1})):c("",!0)]),a("td",null,f(o.label),1),a("td",null,[a("code",ve,f(o.cron||"—"),1)]),a("td",null,[o.extraArgs.length?(r(),m("code",_e,f(o.extraArgs.join(" ")),1)):(r(),m("span",he,"—"))]),a("td",xe,[u(g,{color:"red",variant:"ghost",size:"xs",loading:s(S)===o.id,disabled:s(S)!==null,onClick:ke=>z(o.id)},{default:n(()=>[...e[13]||(e[13]=[d(" Remove ",-1)])]),_:1},8,["loading","disabled","onClick"])])],2))),128))])])])):c("",!0)]),_:1}),s(l)&&!s(l).fixSupported?(r(),v(w,{key:2,color:"amber",variant:"soft",title:"Fix paths unavailable on Windows",description:"Re-run schedule set for each project if binaries or paths changed.",class:"mt-4"})):c("",!0),s(l)?.backend==="launchd"?(r(),v(w,{key:3,color:"blue",variant:"soft",title:"macOS uses LaunchAgents",class:"mt-4"},{description:n(()=>[...e[15]||(e[15]=[d(" Schedules run in your GUI session so AI tools can access the login Keychain. Cron is not used on macOS. ",-1)])]),_:1})):c("",!0)]),_:1})])}}}),De=le(ye,[["__scopeId","data-v-a7d25770"]]);export{De as default};
@@ -1 +0,0 @@
1
- import{_ as a}from"./DKIXA6Zt.js";import{l as r,g as l,ah as o,N as d,f as t,j as e}from"./D7LY3N47.js";import"./DqW9UKXb.js";import"./DlAUqK2U.js";const c=r({__name:"index",setup(u){return(i,s)=>{const n=a;return d(),l(n,null,{header:o(()=>[...s[0]||(s[0]=[t("h1",{class:"text-lg font-semibold"},"Dashboard",-1)])]),default:o(()=>[s[1]||(s[1]=t("p",{class:"text-sm text-gray-600"},[e(" Welcome to the aidev dashboard. Use the sidebar to navigate to "),t("strong",null,"Config"),e(", "),t("strong",null,"Schedule"),e(", "),t("strong",null,"Logs"),e(", "),t("strong",null,"Tasks"),e(", or "),t("strong",null,"Run"),e(". ")],-1)),s[2]||(s[2]=t("p",{class:"text-xs text-gray-400 mt-3"},[e(" Screens are stubbed in step 2; functionality lands in subsequent steps — see "),t("code",null,"ui/docs/handover/"),e(". ")],-1))]),_:1})}}});export{c as default};
@@ -1 +0,0 @@
1
- import{_ as F,u as X}from"./DCp3GJQW.js";import{N as o,i as d,f as Y,F as A,V as p,a0 as B,A as Z,D as g,W as N,k as O,h as j,l as _,b as m,e as i,z as x,a1 as W,a4 as ee,a3 as v,o as w}from"./D7LY3N47.js";import{u as ae,s as le}from"./DqW9UKXb.js";import{u as ne}from"./DWMhLzME.js";import{_ as te}from"./DlAUqK2U.js";const u=x(m.ui.strategy,m.ui.select,le),ie=_({components:{UIcon:F},inheritAttrs:!1,props:{modelValue:{type:[String,Number,Object],default:""},id:{type:String,default:null},name:{type:String,default:null},placeholder:{type:String,default:null},required:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},icon:{type:String,default:null},loadingIcon:{type:String,default:()=>u.default.loadingIcon},leadingIcon:{type:String,default:null},trailingIcon:{type:String,default:()=>u.default.trailingIcon},trailing:{type:Boolean,default:!1},leading:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},padded:{type:Boolean,default:!0},options:{type:Array,default:()=>[]},size:{type:String,default:null,validator(e){return Object.keys(u.size).includes(e)}},color:{type:String,default:()=>u.default.color,validator(e){return[...m.ui.colors,...Object.keys(u.color)].includes(e)}},variant:{type:String,default:()=>u.default.variant,validator(e){return[...Object.keys(u.variant),...Object.values(u.color).flatMap(r=>Object.keys(r))].includes(e)}},optionAttribute:{type:String,default:"label"},valueAttribute:{type:String,default:"value"},selectClass:{type:String,default:null},class:{type:[String,Object,Array],default:()=>""},ui:{type:Object,default:()=>({})}},emits:["update:modelValue","change"],setup(e,{emit:r,slots:y}){const{ui:a,attrs:C}=ae("select",W(e,"ui"),u,W(e,"class")),{size:z,rounded:f}=X({ui:a,props:e}),{emitFormChange:n,inputId:c,color:t,size:I,name:q}=ne(e,u),s=i(()=>z.value??I.value),G=l=>{r("update:modelValue",l.target.value)},L=l=>{r("change",l.target.value),n()},M=l=>w(l,e.valueAttribute,""),P=l=>w(l,e.optionAttribute,""),h=l=>["string","number","boolean"].includes(typeof l)?{[e.valueAttribute]:l,[e.optionAttribute]:l}:{...l,[e.valueAttribute]:M(l),[e.optionAttribute]:P(l)},S=i(()=>e.options.map(l=>h(l))),V=i(()=>e.placeholder?[{[e.valueAttribute]:"",[e.optionAttribute]:e.placeholder,disabled:!0},...S.value]:S.value),T=i(()=>{const l=h(e.modelValue),k=V.value.find(Q=>Q[e.valueAttribute]===l[e.valueAttribute]);return k?k[e.valueAttribute]:""}),U=i(()=>{const l=a.value.color?.[t.value]?.[e.variant]||a.value.variant[e.variant];return ee(v(a.value.base,a.value.form,f.value,a.value.size[s.value],e.padded?a.value.padding[s.value]:"p-0",l?.replaceAll("{color}",t.value),(b.value||y.leading)&&a.value.leading.padding[s.value],($.value||y.trailing)&&a.value.trailing.padding[s.value]),e.placeholder&&!e.modelValue&&a.value.placeholder,e.selectClass)}),b=i(()=>e.icon&&e.leading||e.icon&&!e.trailing||e.loading&&!e.trailing||e.leadingIcon),$=i(()=>e.icon&&e.trailing||e.loading&&e.trailing||e.trailingIcon),D=i(()=>e.loading?e.loadingIcon:e.leadingIcon||e.icon),E=i(()=>e.loading&&!b.value?e.loadingIcon:e.trailingIcon||e.icon),J=i(()=>v(a.value.icon.leading.wrapper,a.value.icon.leading.pointer,a.value.icon.leading.padding[s.value])),R=i(()=>v(a.value.icon.base,t.value&&m.ui.colors.includes(t.value)&&a.value.icon.color.replaceAll("{color}",t.value),a.value.icon.size[s.value],e.loading&&a.value.icon.loading)),H=i(()=>v(a.value.icon.trailing.wrapper,a.value.icon.trailing.pointer,a.value.icon.trailing.padding[s.value])),K=i(()=>v(a.value.icon.base,t.value&&m.ui.colors.includes(t.value)&&a.value.icon.color.replaceAll("{color}",t.value),a.value.icon.size[s.value],e.loading&&!b.value&&a.value.icon.loading));return{ui:a,attrs:C,name:q,inputId:c,normalizedOptionsWithPlaceholder:V,normalizedValue:T,isLeading:b,isTrailing:$,selectClass:U,leadingIconName:D,leadingIconClass:R,leadingWrapperIconClass:J,trailingIconName:E,trailingIconClass:K,trailingWrapperIconClass:H,onInput:G,onChange:L}}}),ue=["id","name","value","required","disabled"],re=["value","label"],oe=["value","selected","disabled","textContent"],de=["value","selected","disabled","textContent"];function se(e,r,y,a,C,z){const f=F;return o(),d("div",{class:g(e.ui.wrapper)},[Y("select",Z({id:e.inputId,name:e.name,value:e.modelValue,required:e.required,disabled:e.disabled,class:e.selectClass},e.attrs,{onInput:r[0]||(r[0]=(...n)=>e.onInput&&e.onInput(...n)),onChange:r[1]||(r[1]=(...n)=>e.onChange&&e.onChange(...n))}),[(o(!0),d(A,null,p(e.normalizedOptionsWithPlaceholder,(n,c)=>(o(),d(A,null,[n.children?(o(),d("optgroup",{key:`${n[e.valueAttribute]}-optgroup-${c}`,value:n[e.valueAttribute],label:n[e.optionAttribute]},[(o(!0),d(A,null,p(n.children,(t,I)=>(o(),d("option",{key:`${t[e.valueAttribute]}-${c}-${I}`,value:t[e.valueAttribute],selected:t[e.valueAttribute]===e.normalizedValue,disabled:t.disabled,textContent:B(t[e.optionAttribute])},null,8,oe))),128))],8,re)):(o(),d("option",{key:`${n[e.valueAttribute]}-${c}`,value:n[e.valueAttribute],selected:n[e.valueAttribute]===e.normalizedValue,disabled:n.disabled,textContent:B(n[e.optionAttribute])},null,8,de))],64))),256))],16,ue),e.isLeading&&e.leadingIconName||e.$slots.leading?(o(),d("span",{key:0,class:g(e.leadingWrapperIconClass)},[N(e.$slots,"leading",{disabled:e.disabled,loading:e.loading},()=>[O(f,{name:e.leadingIconName,class:g(e.leadingIconClass)},null,8,["name","class"])],!0)],2)):j("",!0),e.isTrailing&&e.trailingIconName||e.$slots.trailing?(o(),d("span",{key:1,class:g(e.trailingWrapperIconClass)},[N(e.$slots,"trailing",{disabled:e.disabled,loading:e.loading},()=>[O(f,{name:e.trailingIconName,class:g(e.trailingIconClass),"aria-hidden":"true"},null,8,["name","class"])],!0)],2)):j("",!0)],2)}const be=te(ie,[["render",se],["__scopeId","data-v-cbc9516f"]]);export{be as _};
@@ -1 +0,0 @@
1
- import{_ as k,u as z}from"./DCp3GJQW.js";import{z as C,b as c,N as l,i as y,W as o,g as b,D as f,h as s,a0 as S,A as N,l as j,e as n,a1 as O,a4 as _,a3 as g}from"./D7LY3N47.js";import{u as $}from"./DqW9UKXb.js";import{_ as B}from"./DlAUqK2U.js";const A={base:"inline-flex items-center",rounded:"rounded-md",font:"font-medium",size:{xs:"text-xs px-1.5 py-0.5",sm:"text-xs px-2 py-1",md:"text-sm px-2 py-1",lg:"text-sm px-2.5 py-1.5"},gap:{xs:"gap-0.5",sm:"gap-1",md:"gap-1",lg:"gap-1.5"},color:{white:{solid:"ring-1 ring-inset ring-gray-300 dark:ring-gray-700 text-gray-900 dark:text-white bg-white dark:bg-gray-900"},gray:{solid:"ring-1 ring-inset ring-gray-300 dark:ring-gray-700 text-gray-700 dark:text-gray-200 bg-gray-50 dark:bg-gray-800"},black:{solid:"text-white dark:text-gray-900 bg-gray-900 dark:bg-white"}},variant:{solid:"bg-{color}-500 dark:bg-{color}-400 text-white dark:text-gray-900",outline:"text-{color}-500 dark:text-{color}-400 ring-1 ring-inset ring-{color}-500 dark:ring-{color}-400",soft:"bg-{color}-50 dark:bg-{color}-400 dark:bg-opacity-10 text-{color}-500 dark:text-{color}-400",subtle:"bg-{color}-50 dark:bg-{color}-400 dark:bg-opacity-10 text-{color}-500 dark:text-{color}-400 ring-1 ring-inset ring-{color}-500 dark:ring-{color}-400 ring-opacity-25 dark:ring-opacity-25"},icon:{base:"flex-shrink-0",size:{xs:"h-4 w-4",sm:"h-4 w-4",md:"h-5 w-5",lg:"h-5 w-5"}},default:{size:"sm",variant:"solid",color:"primary"}},t=C(c.ui.strategy,c.ui.badge,A),U=j({components:{UIcon:k},inheritAttrs:!1,props:{size:{type:String,default:()=>t.default.size,validator(a){return Object.keys(t.size).includes(a)}},color:{type:String,default:()=>t.default.color,validator(a){return[...c.ui.colors,...Object.keys(t.color)].includes(a)}},variant:{type:String,default:()=>t.default.variant,validator(a){return[...Object.keys(t.variant),...Object.values(t.color).flatMap(e=>Object.keys(e))].includes(a)}},label:{type:[String,Number],default:null},icon:{type:String,default:null},leadingIcon:{type:String,default:null},trailingIcon:{type:String,default:null},trailing:{type:Boolean,default:!1},leading:{type:Boolean,default:!1},class:{type:[String,Object,Array],default:()=>""},ui:{type:Object,default:()=>({})}},setup(a){const{ui:e,attrs:d}=$("badge",O(a,"ui"),t),{size:r,rounded:u}=z({ui:e,props:a}),m=n(()=>a.icon&&a.leading||a.icon&&!a.trailing||!a.trailing||a.leadingIcon),i=n(()=>a.icon&&a.trailing||a.trailing||a.trailingIcon),v=n(()=>{const w=e.value.color?.[a.color]?.[a.variant]||e.value.variant[a.variant];return _(g(e.value.base,e.value.font,u.value,e.value.size[r.value],e.value.gap[r.value],w?.replaceAll("{color}",a.color)),a.class)}),I=n(()=>a.leadingIcon||a.icon),p=n(()=>a.trailingIcon||a.icon),x=n(()=>g(e.value.icon.base,e.value.icon.size[r.value])),h=n(()=>g(e.value.icon.base,e.value.icon.size[r.value]));return{attrs:d,isLeading:m,isTrailing:i,badgeClass:v,leadingIconName:I,trailingIconName:p,leadingIconClass:x,trailingIconClass:h}}}),D={key:0};function L(a,e,d,r,u,m){const i=k;return l(),y("span",N({class:a.badgeClass},a.attrs),[o(a.$slots,"leading",{},()=>[a.isLeading&&a.leadingIconName?(l(),b(i,{key:0,name:a.leadingIconName,class:f(a.leadingIconClass),"aria-hidden":"true"},null,8,["name","class"])):s("",!0)]),o(a.$slots,"default",{},()=>[a.label!==void 0&&a.label!==null?(l(),y("span",D,S(a.label),1)):s("",!0)]),o(a.$slots,"trailing",{},()=>[a.isTrailing&&a.trailingIconName?(l(),b(i,{key:0,name:a.trailingIconName,class:f(a.trailingIconClass),"aria-hidden":"true"},null,8,["name","class"])):s("",!0)])],16)}const J=B(U,[["render",L]]);export{J as _};