@mndrk/agx 2.0.55 → 2.1.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 (762) hide show
  1. package/README.md +5 -0
  2. package/cloud-runtime/standalone/apps/local/.next/BUILD_ID +1 -1
  3. package/cloud-runtime/standalone/apps/local/.next/app-path-routes-manifest.json +3 -0
  4. package/cloud-runtime/standalone/apps/local/.next/build-manifest.json +3 -3
  5. package/cloud-runtime/standalone/apps/local/.next/prerender-manifest.json +3 -3
  6. package/cloud-runtime/standalone/apps/local/.next/required-server-files.json +5 -0
  7. package/cloud-runtime/standalone/apps/local/.next/routes-manifest.json +23 -0
  8. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error/page.js +1 -1
  9. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error/page.js.nft.json +1 -1
  10. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.html +1 -1
  11. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.rsc +1 -1
  12. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  13. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  14. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  15. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  16. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  17. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found/page.js +1 -1
  18. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found/page.js.nft.json +1 -1
  19. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  20. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.html +2 -2
  21. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.rsc +2 -2
  22. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  23. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  24. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  25. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  26. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  27. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  28. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page.js +1 -1
  29. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page.js.nft.json +1 -1
  30. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page_client-reference-manifest.js +1 -1
  31. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page.js +1 -1
  32. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page.js.nft.json +1 -1
  33. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page_client-reference-manifest.js +1 -1
  34. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.html +2 -2
  35. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.rsc +3 -3
  36. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_full.segment.rsc +3 -3
  37. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_head.segment.rsc +1 -1
  38. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_index.segment.rsc +2 -2
  39. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_tree.segment.rsc +2 -2
  40. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/agents/__PAGE__.segment.rsc +2 -2
  41. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/agents.segment.rsc +1 -1
  42. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agent-specs/route.js +1 -1
  43. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agent-specs/route.js.nft.json +1 -1
  44. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/[id]/profile/route.js +4 -3
  45. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/[id]/profile/route.js.nft.json +1 -1
  46. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/export/route.js +1 -1
  47. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/export/route.js.nft.json +1 -1
  48. package/cloud-runtime/standalone/apps/local/.next/server/app/api/automations/create/route.js +1 -1
  49. package/cloud-runtime/standalone/apps/local/.next/server/app/api/automations/create/route.js.nft.json +1 -1
  50. package/cloud-runtime/standalone/apps/local/.next/server/app/api/automations/route.js +1 -1
  51. package/cloud-runtime/standalone/apps/local/.next/server/app/api/automations/route.js.nft.json +1 -1
  52. package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat/route.js +2 -2
  53. package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat/route.js.nft.json +1 -1
  54. package/cloud-runtime/standalone/apps/local/.next/server/app/api/daemon/route.js +2 -2
  55. package/cloud-runtime/standalone/apps/local/.next/server/app/api/daemon/route.js.nft.json +1 -1
  56. package/cloud-runtime/standalone/apps/local/.next/server/app/api/file-search/route.js.nft.json +1 -1
  57. package/cloud-runtime/standalone/apps/local/.next/server/app/api/filesystem/analyze/route.js +1 -1
  58. package/cloud-runtime/standalone/apps/local/.next/server/app/api/filesystem/analyze/route.js.nft.json +1 -1
  59. package/cloud-runtime/standalone/apps/local/.next/server/app/api/graphs/[graphId]/nodes/[nodeId]/route.js +1 -1
  60. package/cloud-runtime/standalone/apps/local/.next/server/app/api/graphs/[graphId]/nodes/[nodeId]/route.js.nft.json +1 -1
  61. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/[id]/route.js.nft.json +1 -1
  62. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/context/route.js.nft.json +1 -1
  63. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/route.js.nft.json +1 -1
  64. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/options/route.js.nft.json +1 -1
  65. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/runs/scripted/route.js +5 -4
  66. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/runs/scripted/route.js.nft.json +1 -1
  67. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/status/route.js.nft.json +1 -1
  68. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route/app-paths-manifest.json +3 -0
  69. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route/build-manifest.json +9 -0
  70. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route/server-reference-manifest.json +4 -0
  71. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route.js +13 -0
  72. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route.js.map +5 -0
  73. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route.js.nft.json +1 -0
  74. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route_client-reference-manifest.js +3 -0
  75. package/cloud-runtime/standalone/apps/local/.next/server/app/api/participants/route.js +1 -1
  76. package/cloud-runtime/standalone/apps/local/.next/server/app/api/participants/route.js.nft.json +1 -1
  77. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/activities/route.js +4 -4
  78. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/activities/route.js.nft.json +1 -1
  79. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/linear-issues/route.js +4 -4
  80. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/linear-issues/route.js.nft.json +1 -1
  81. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/notes/[noteId]/route.js +2 -2
  82. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/notes/[noteId]/route.js.nft.json +1 -1
  83. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/notes/route.js +2 -2
  84. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/notes/route.js.nft.json +1 -1
  85. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/route.js +3 -3
  86. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/route.js.nft.json +1 -1
  87. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/scheduled-tasks/route.js +19 -8
  88. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/scheduled-tasks/route.js.nft.json +1 -1
  89. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/validate/route.js +3 -3
  90. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/validate/route.js.nft.json +1 -1
  91. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route/app-paths-manifest.json +3 -0
  92. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route/build-manifest.json +9 -0
  93. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route/server-reference-manifest.json +4 -0
  94. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route.js +28 -0
  95. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route.js.map +5 -0
  96. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route.js.nft.json +1 -0
  97. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route_client-reference-manifest.js +3 -0
  98. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/route.js +9 -5
  99. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/route.js.nft.json +1 -1
  100. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/search/route.js +1 -1
  101. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/search/route.js.nft.json +1 -1
  102. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/teams/route.js.nft.json +1 -1
  103. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/route.js +4 -4
  104. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/route.js.nft.json +1 -1
  105. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/cancel/route.js +1 -1
  106. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/cancel/route.js.nft.json +1 -1
  107. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/route.js +1 -1
  108. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/route.js.nft.json +1 -1
  109. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/runs/route.js +1 -1
  110. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/runs/route.js.nft.json +1 -1
  111. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/poll/route.js +16 -15
  112. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/poll/route.js.nft.json +1 -1
  113. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/route.js +5 -5
  114. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/route.js.nft.json +1 -1
  115. package/cloud-runtime/standalone/apps/local/.next/server/app/api/providers/check/[id]/route.js.nft.json +1 -1
  116. package/cloud-runtime/standalone/apps/local/.next/server/app/api/providers/route.js.nft.json +1 -1
  117. package/cloud-runtime/standalone/apps/local/.next/server/app/api/queue/route.js +2 -2
  118. package/cloud-runtime/standalone/apps/local/.next/server/app/api/queue/route.js.nft.json +1 -1
  119. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/debug/route.js +1 -1
  120. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/debug/route.js.nft.json +1 -1
  121. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/poll/route.js +1 -1
  122. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/poll/route.js.nft.json +1 -1
  123. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/route.js +1 -1
  124. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/route.js.nft.json +1 -1
  125. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/assign/route.js.nft.json +1 -1
  126. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/available/route.js.nft.json +1 -1
  127. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/detail/route.js.nft.json +1 -1
  128. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/history/route.js.nft.json +1 -1
  129. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/learn/route.js.nft.json +1 -1
  130. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/route.js.nft.json +1 -1
  131. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/unlearn/route.js.nft.json +1 -1
  132. package/cloud-runtime/standalone/apps/local/.next/server/app/api/status/route.js.nft.json +1 -1
  133. package/cloud-runtime/standalone/apps/local/.next/server/app/api/summarize/route.js.nft.json +1 -1
  134. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/comments/[commentId]/route.js.nft.json +1 -1
  135. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/comments/route.js.nft.json +1 -1
  136. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/events/route.js.nft.json +1 -1
  137. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/history/route.js.nft.json +1 -1
  138. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/metrics/route.js.nft.json +1 -1
  139. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/pause/route.js.nft.json +1 -1
  140. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/replan/route.js.nft.json +1 -1
  141. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/restart/route.js.nft.json +1 -1
  142. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/resume/route.js.nft.json +1 -1
  143. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/rollback/route.js.nft.json +1 -1
  144. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/route.js.nft.json +1 -1
  145. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/schedule/route.js.nft.json +1 -1
  146. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/stop/route.js.nft.json +1 -1
  147. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/logs/route.js.nft.json +1 -1
  148. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/comments/route.js.nft.json +1 -1
  149. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/complete/route.js.nft.json +1 -1
  150. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/fail/route.js.nft.json +1 -1
  151. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/resume/route.js.nft.json +1 -1
  152. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/start/route.js.nft.json +1 -1
  153. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/stop/route.js.nft.json +1 -1
  154. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/verify/route.js.nft.json +1 -1
  155. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/route.js.nft.json +1 -1
  156. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/extract/route.js.nft.json +1 -1
  157. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/route.js +9 -8
  158. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/route.js.nft.json +1 -1
  159. package/cloud-runtime/standalone/apps/local/.next/server/app/api/terminal/sessions/[id]/route.js +1 -1
  160. package/cloud-runtime/standalone/apps/local/.next/server/app/api/terminal/sessions/[id]/route.js.nft.json +1 -1
  161. package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/knowledge/route.js +1 -1
  162. package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/knowledge/route.js.nft.json +1 -1
  163. package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/route.js +1 -1
  164. package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/route.js.nft.json +1 -1
  165. package/cloud-runtime/standalone/apps/local/.next/server/app/automations/page/react-loadable-manifest.json +2 -2
  166. package/cloud-runtime/standalone/apps/local/.next/server/app/automations/page.js +1 -1
  167. package/cloud-runtime/standalone/apps/local/.next/server/app/automations/page.js.nft.json +1 -1
  168. package/cloud-runtime/standalone/apps/local/.next/server/app/automations/page_client-reference-manifest.js +1 -1
  169. package/cloud-runtime/standalone/apps/local/.next/server/app/automations.html +2 -2
  170. package/cloud-runtime/standalone/apps/local/.next/server/app/automations.rsc +15 -15
  171. package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/_full.segment.rsc +15 -15
  172. package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/_head.segment.rsc +1 -1
  173. package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/_index.segment.rsc +2 -2
  174. package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/_tree.segment.rsc +3 -3
  175. package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/automations/__PAGE__.segment.rsc +3 -3
  176. package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/automations.segment.rsc +1 -1
  177. package/cloud-runtime/standalone/apps/local/.next/server/app/board/page.js +1 -1
  178. package/cloud-runtime/standalone/apps/local/.next/server/app/board/page.js.nft.json +1 -1
  179. package/cloud-runtime/standalone/apps/local/.next/server/app/board/page_client-reference-manifest.js +1 -1
  180. package/cloud-runtime/standalone/apps/local/.next/server/app/board.html +2 -2
  181. package/cloud-runtime/standalone/apps/local/.next/server/app/board.rsc +2 -2
  182. package/cloud-runtime/standalone/apps/local/.next/server/app/board.segments/_full.segment.rsc +2 -2
  183. package/cloud-runtime/standalone/apps/local/.next/server/app/board.segments/_head.segment.rsc +1 -1
  184. package/cloud-runtime/standalone/apps/local/.next/server/app/board.segments/_index.segment.rsc +2 -2
  185. package/cloud-runtime/standalone/apps/local/.next/server/app/board.segments/_tree.segment.rsc +2 -2
  186. package/cloud-runtime/standalone/apps/local/.next/server/app/board.segments/board/__PAGE__.segment.rsc +1 -1
  187. package/cloud-runtime/standalone/apps/local/.next/server/app/board.segments/board.segment.rsc +1 -1
  188. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph/page.js +1 -1
  189. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph/page.js.nft.json +1 -1
  190. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph/page_client-reference-manifest.js +1 -1
  191. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.html +2 -2
  192. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.rsc +3 -3
  193. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.segments/_full.segment.rsc +3 -3
  194. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.segments/_head.segment.rsc +1 -1
  195. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.segments/_index.segment.rsc +2 -2
  196. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.segments/_tree.segment.rsc +2 -2
  197. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.segments/execution-graph/__PAGE__.segment.rsc +2 -2
  198. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.segments/execution-graph.segment.rsc +1 -1
  199. package/cloud-runtime/standalone/apps/local/.next/server/app/folders/page.js +1 -1
  200. package/cloud-runtime/standalone/apps/local/.next/server/app/folders/page.js.nft.json +1 -1
  201. package/cloud-runtime/standalone/apps/local/.next/server/app/folders/page_client-reference-manifest.js +1 -1
  202. package/cloud-runtime/standalone/apps/local/.next/server/app/folders.html +2 -2
  203. package/cloud-runtime/standalone/apps/local/.next/server/app/folders.rsc +3 -3
  204. package/cloud-runtime/standalone/apps/local/.next/server/app/folders.segments/_full.segment.rsc +3 -3
  205. package/cloud-runtime/standalone/apps/local/.next/server/app/folders.segments/_head.segment.rsc +1 -1
  206. package/cloud-runtime/standalone/apps/local/.next/server/app/folders.segments/_index.segment.rsc +2 -2
  207. package/cloud-runtime/standalone/apps/local/.next/server/app/folders.segments/_tree.segment.rsc +2 -2
  208. package/cloud-runtime/standalone/apps/local/.next/server/app/folders.segments/folders/__PAGE__.segment.rsc +2 -2
  209. package/cloud-runtime/standalone/apps/local/.next/server/app/folders.segments/folders.segment.rsc +1 -1
  210. package/cloud-runtime/standalone/apps/local/.next/server/app/index.html +2 -2
  211. package/cloud-runtime/standalone/apps/local/.next/server/app/index.rsc +2 -2
  212. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  213. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_full.segment.rsc +2 -2
  214. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_head.segment.rsc +1 -1
  215. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_index.segment.rsc +2 -2
  216. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  217. package/cloud-runtime/standalone/apps/local/.next/server/app/page.js +1 -1
  218. package/cloud-runtime/standalone/apps/local/.next/server/app/page.js.nft.json +1 -1
  219. package/cloud-runtime/standalone/apps/local/.next/server/app/page_client-reference-manifest.js +1 -1
  220. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page/react-loadable-manifest.json +2 -2
  221. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page.js +1 -1
  222. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page.js.nft.json +1 -1
  223. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page_client-reference-manifest.js +1 -1
  224. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page.js +1 -1
  225. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page.js.nft.json +1 -1
  226. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page_client-reference-manifest.js +1 -1
  227. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page/app-paths-manifest.json +3 -0
  228. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page/build-manifest.json +18 -0
  229. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page/next-font-manifest.json +11 -0
  230. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page/react-loadable-manifest.json +1 -0
  231. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page/server-reference-manifest.json +4 -0
  232. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page.js +14 -0
  233. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page.js.map +5 -0
  234. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page.js.nft.json +1 -0
  235. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page_client-reference-manifest.js +3 -0
  236. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page.js +1 -1
  237. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page.js.nft.json +1 -1
  238. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page_client-reference-manifest.js +1 -1
  239. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/knowledge/page.js +1 -1
  240. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/knowledge/page.js.nft.json +1 -1
  241. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/knowledge/page_client-reference-manifest.js +1 -1
  242. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/linear/page/react-loadable-manifest.json +8 -2
  243. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/linear/page.js +1 -1
  244. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/linear/page.js.nft.json +1 -1
  245. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/linear/page_client-reference-manifest.js +1 -1
  246. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page.js +1 -1
  247. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page.js.nft.json +1 -1
  248. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page_client-reference-manifest.js +1 -1
  249. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page.js +1 -1
  250. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page.js.nft.json +1 -1
  251. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page_client-reference-manifest.js +1 -1
  252. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page.js +1 -1
  253. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page.js.nft.json +1 -1
  254. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
  255. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/settings/page.js +1 -1
  256. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/settings/page.js.nft.json +1 -1
  257. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/settings/page_client-reference-manifest.js +1 -1
  258. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page.js +1 -1
  259. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page.js.nft.json +1 -1
  260. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page_client-reference-manifest.js +1 -1
  261. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page.js +1 -1
  262. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page.js.nft.json +1 -1
  263. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page_client-reference-manifest.js +1 -1
  264. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page.js +1 -1
  265. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page.js.nft.json +1 -1
  266. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page_client-reference-manifest.js +1 -1
  267. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page.js +1 -1
  268. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page.js.nft.json +1 -1
  269. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page_client-reference-manifest.js +1 -1
  270. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page.js +1 -1
  271. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page.js.nft.json +1 -1
  272. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page_client-reference-manifest.js +1 -1
  273. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page.js +1 -1
  274. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page.js.nft.json +1 -1
  275. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page_client-reference-manifest.js +1 -1
  276. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page.js +1 -1
  277. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page.js.nft.json +1 -1
  278. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page_client-reference-manifest.js +1 -1
  279. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page.js +1 -1
  280. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page.js.nft.json +1 -1
  281. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page_client-reference-manifest.js +1 -1
  282. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans/page.js +1 -1
  283. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans/page.js.nft.json +1 -1
  284. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans/page_client-reference-manifest.js +1 -1
  285. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.html +2 -2
  286. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.rsc +3 -3
  287. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/_full.segment.rsc +3 -3
  288. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/_head.segment.rsc +1 -1
  289. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/_index.segment.rsc +2 -2
  290. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/_tree.segment.rsc +2 -2
  291. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/projects/orphans/__PAGE__.segment.rsc +2 -2
  292. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/projects/orphans.segment.rsc +1 -1
  293. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/projects.segment.rsc +1 -1
  294. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page.js +1 -1
  295. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page.js.nft.json +1 -1
  296. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  297. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.html +2 -2
  298. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.rsc +3 -3
  299. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_full.segment.rsc +3 -3
  300. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_head.segment.rsc +1 -1
  301. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_index.segment.rsc +2 -2
  302. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_tree.segment.rsc +2 -2
  303. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/projects/__PAGE__.segment.rsc +2 -2
  304. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/projects.segment.rsc +1 -1
  305. package/cloud-runtime/standalone/apps/local/.next/server/app/settings/page.js +1 -1
  306. package/cloud-runtime/standalone/apps/local/.next/server/app/settings/page.js.nft.json +1 -1
  307. package/cloud-runtime/standalone/apps/local/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  308. package/cloud-runtime/standalone/apps/local/.next/server/app/settings.html +2 -2
  309. package/cloud-runtime/standalone/apps/local/.next/server/app/settings.rsc +2 -2
  310. package/cloud-runtime/standalone/apps/local/.next/server/app/settings.segments/_full.segment.rsc +2 -2
  311. package/cloud-runtime/standalone/apps/local/.next/server/app/settings.segments/_head.segment.rsc +1 -1
  312. package/cloud-runtime/standalone/apps/local/.next/server/app/settings.segments/_index.segment.rsc +2 -2
  313. package/cloud-runtime/standalone/apps/local/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
  314. package/cloud-runtime/standalone/apps/local/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +1 -1
  315. package/cloud-runtime/standalone/apps/local/.next/server/app/settings.segments/settings.segment.rsc +1 -1
  316. package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page.js +1 -1
  317. package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page.js.nft.json +1 -1
  318. package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page_client-reference-manifest.js +1 -1
  319. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.html +2 -2
  320. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.rsc +3 -3
  321. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_full.segment.rsc +3 -3
  322. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_head.segment.rsc +1 -1
  323. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_index.segment.rsc +2 -2
  324. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_tree.segment.rsc +2 -2
  325. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/setup/__PAGE__.segment.rsc +2 -2
  326. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/setup.segment.rsc +1 -1
  327. package/cloud-runtime/standalone/apps/local/.next/server/app/skills/page.js +1 -1
  328. package/cloud-runtime/standalone/apps/local/.next/server/app/skills/page.js.nft.json +1 -1
  329. package/cloud-runtime/standalone/apps/local/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  330. package/cloud-runtime/standalone/apps/local/.next/server/app/skills.html +2 -2
  331. package/cloud-runtime/standalone/apps/local/.next/server/app/skills.rsc +2 -2
  332. package/cloud-runtime/standalone/apps/local/.next/server/app/skills.segments/_full.segment.rsc +2 -2
  333. package/cloud-runtime/standalone/apps/local/.next/server/app/skills.segments/_head.segment.rsc +1 -1
  334. package/cloud-runtime/standalone/apps/local/.next/server/app/skills.segments/_index.segment.rsc +2 -2
  335. package/cloud-runtime/standalone/apps/local/.next/server/app/skills.segments/_tree.segment.rsc +2 -2
  336. package/cloud-runtime/standalone/apps/local/.next/server/app/skills.segments/skills/__PAGE__.segment.rsc +1 -1
  337. package/cloud-runtime/standalone/apps/local/.next/server/app/skills.segments/skills.segment.rsc +1 -1
  338. package/cloud-runtime/standalone/apps/local/.next/server/app/status/page.js +1 -1
  339. package/cloud-runtime/standalone/apps/local/.next/server/app/status/page.js.nft.json +1 -1
  340. package/cloud-runtime/standalone/apps/local/.next/server/app/status/page_client-reference-manifest.js +1 -1
  341. package/cloud-runtime/standalone/apps/local/.next/server/app/status.html +2 -2
  342. package/cloud-runtime/standalone/apps/local/.next/server/app/status.rsc +3 -3
  343. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_full.segment.rsc +3 -3
  344. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_head.segment.rsc +1 -1
  345. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_index.segment.rsc +2 -2
  346. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_tree.segment.rsc +2 -2
  347. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/status/__PAGE__.segment.rsc +2 -2
  348. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/status.segment.rsc +1 -1
  349. package/cloud-runtime/standalone/apps/local/.next/server/app/thread/[id]/page.js +1 -1
  350. package/cloud-runtime/standalone/apps/local/.next/server/app/thread/[id]/page.js.nft.json +1 -1
  351. package/cloud-runtime/standalone/apps/local/.next/server/app/thread/[id]/page_client-reference-manifest.js +1 -1
  352. package/cloud-runtime/standalone/apps/local/.next/server/app-paths-manifest.json +3 -0
  353. package/cloud-runtime/standalone/apps/local/.next/server/chunks/0jps_app_api_projects_[id]_objectives_[objectiveId]_worker_route_actions_0v8q3zz.js +3 -0
  354. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[externals]__0_au5u1._.js +3 -0
  355. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[externals]__13x93ar._.js +3 -0
  356. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0_10qfd._.js → [root-of-the-server]__0.6yz1u._.js} +2 -2
  357. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__01lsgl~._.js +4 -0
  358. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0205scg._.js → [root-of-the-server]__03.9arn._.js} +2 -2
  359. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__01ol22y._.js → [root-of-the-server]__03h0gqp._.js} +2 -2
  360. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__094z9yf._.js → [root-of-the-server]__08jo91s._.js} +2 -2
  361. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__09j9jpf._.js +3 -0
  362. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0-nye63._.js → [root-of-the-server]__09jghbu._.js} +2 -2
  363. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0_7hiof._.js +43 -0
  364. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0.jam.l._.js → [root-of-the-server]__0a0cq38._.js} +2 -2
  365. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0asvfdo._.js +54 -0
  366. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0c86535._.js +3 -0
  367. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0cj1krd._.js +3 -0
  368. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0aa-88e._.js → [root-of-the-server]__0dy3h2i._.js} +2 -2
  369. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0touqng._.js → [root-of-the-server]__0e8-2k_._.js} +2 -2
  370. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0enhv5p._.js +3 -0
  371. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0f9byr.._.js +1 -1
  372. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0g7hc1-._.js +18 -0
  373. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0g7p6pw._.js +55 -0
  374. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__019q25b._.js → [root-of-the-server]__0gj~dap._.js} +7 -7
  375. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0e6cj2y._.js → [root-of-the-server]__0hc45jw._.js} +2 -2
  376. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0avz575._.js → [root-of-the-server]__0hkcw03._.js} +2 -2
  377. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0hmw36u._.js +1 -1
  378. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0l53ok5._.js +54 -0
  379. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0n.momw._.js +8 -0
  380. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0tjo9we._.js +7 -0
  381. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0-~t2br._.js → [root-of-the-server]__0v7jjvl._.js} +2 -2
  382. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0x6w64i._.js +3 -0
  383. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__11nke7t._.js → [root-of-the-server]__0y3qxv1._.js} +2 -2
  384. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__10z8f9h._.js → [root-of-the-server]__0ygidxe._.js} +2 -2
  385. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0z82z0-._.js +49 -0
  386. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0zsv-tb._.js +8 -0
  387. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0~nnfjr._.js +3 -0
  388. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0~x4jbk._.js +3 -0
  389. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__10d.dhd._.js +229 -0
  390. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__12qy318._.js +3 -0
  391. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_039.xxy._.js +1 -1
  392. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_06oeti1._.js +49 -0
  393. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0dyy7h.._.js +3 -0
  394. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0gi7c9x._.js +2 -2
  395. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0gr.psg._.js +1 -1
  396. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0sd8z0i._.js +21 -0
  397. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0y42h_~._.js +2 -2
  398. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0~ah49q._.js +1 -1
  399. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_01kqgle._.js +11 -0
  400. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_06qet8g._.js +36 -0
  401. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0_0m2ly._.js +397 -0
  402. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0_a~bj0._.js +25 -0
  403. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0a15wtk._.js +397 -0
  404. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0bjdpen._.js +29 -0
  405. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0fr1qq6._.js +1 -1
  406. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0g.q2r6._.js +41 -0
  407. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0h7wd0e._.js +29 -0
  408. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0i7fs.i._.js +397 -0
  409. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0ipg-p6._.js +3 -0
  410. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0npxy21._.js +11 -0
  411. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0uhfa93._.js +21 -0
  412. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_12wpldq._.js +25 -0
  413. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_linear_worker_route_actions_116303i.js +3 -0
  414. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_01hd2_5._.js +3 -0
  415. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_01pvj2g._.js +34 -0
  416. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_0ik933l._.js +55 -0
  417. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_0o1v.j4._.js +79 -0
  418. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_0pxj122._.js +55 -0
  419. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_automations_index_ts_0_8ch28._.js +10 -0
  420. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_graph_082u-ls._.js +41 -0
  421. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_prompt-scheduler_0.xgxyl._.js +4 -0
  422. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_prompt-scheduler_0yu3--n._.js +4 -0
  423. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_prompt-scheduler_0ze8hzc._.js +4 -0
  424. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_prompt-scheduler_get-store_ts_0p0aod1._.js +5 -5
  425. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_prompt-scheduler_linear-worker_ts_0ycjwem._.js +5 -0
  426. package/cloud-runtime/standalone/apps/local/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0gips_c.js +1 -1
  427. package/cloud-runtime/standalone/apps/local/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0u_5kfo.js +1 -1
  428. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/02dz_local__next-internal_server_app_projects_[slug]_folders_page_actions_03fg4j9.js +3 -0
  429. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/0rhn_lucide-react_dist_esm_0tvwux2._.js +3 -0
  430. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/0rhn_lucide-react_dist_esm_icons_0e2_v_.._.js +3 -0
  431. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/0rhn_lucide-react_dist_esm_icons_0hvpc.y._.js +3 -0
  432. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/0rhn_lucide-react_dist_esm_icons_0w3hl3p._.js +3 -0
  433. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__006vr7.._.js +3 -0
  434. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__08d5c~o._.js +3 -0
  435. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0_n~ybp._.js +3 -0
  436. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0d18x53._.js +18 -0
  437. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0fl7_-o._.js +18 -0
  438. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0h~rb5r._.js +3 -0
  439. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0j9m72.._.js +18 -0
  440. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{[root-of-the-server]__02.r909._.js → [root-of-the-server]__0n5g8ml._.js} +2 -2
  441. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0w.zmt6._.js +3 -0
  442. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0z7nw_r._.js +3 -0
  443. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__10h_7t0._.js +3 -0
  444. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_00trrg8._.js +3 -0
  445. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{_0s~0ump._.js → _064h43p._.js} +2 -2
  446. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0742x_.._.js +3 -0
  447. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0ejzn1e._.js +3 -0
  448. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0fwy5tm._.js +7 -0
  449. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0sjchy6._.js +3 -0
  450. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0ufdu.z._.js +7 -0
  451. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0wk3skw._.js +3 -0
  452. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0yeuuy1._.js +25 -0
  453. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_03z24q2._.js +3 -0
  454. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0_ac-.f._.js +1 -1
  455. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0a-8i4p._.js +3 -0
  456. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0h3mfm7._.js +3 -0
  457. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{apps_local_075cq2j._.js → apps_local_0k4~c1x._.js} +2 -2
  458. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{_0n80y4_._.js → apps_local_0nvzo3y._.js} +2 -2
  459. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0t6p.qm._.js +3 -0
  460. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0v~bvwg._.js +3 -0
  461. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_11k_-8~._.js +1 -1
  462. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_agents_[id]_page_tsx_06n47n~._.js +1 -1
  463. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_execution-graph_page_tsx_0tn2sx9._.js +2 -2
  464. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_folders_page_tsx_0ju618z._.js +3 -0
  465. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_graph_[taskId]_page_tsx_0bctfd-._.js +1 -1
  466. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_layout_tsx_0aaa3~t._.js +1 -1
  467. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_linear_page_tsx_0a~n5y8._.js +2 -2
  468. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_page_tsx_0kcaeqi._.js +1 -1
  469. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_teams_new_page_tsx_0yqd0a5._.js +3 -0
  470. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_teams_page_tsx_06czvz-._.js +3 -0
  471. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_terminal_page_tsx_01n9qk.._.js +12 -12
  472. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_orphans_page_tsx_0sdv.11._.js +4 -4
  473. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_setup_page_tsx_0ql2qmr._.js +1 -1
  474. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_PromptJobBoard_tsx_06zob36._.js +8 -0
  475. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_TaskCard_tsx_0e35_z5._.js +6 -6
  476. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_chat-ui_ChatContainer_tsx_0c9fjtl._.js +3 -3
  477. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_projects_ProjectObjectivesWorkspace_tsx_0k4tfip._.js +6 -6
  478. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_thread_WorkspaceSidebar_tsx_0unv2xp._.js +1 -1
  479. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0mk0s0o.js +4 -0
  480. package/cloud-runtime/standalone/apps/local/.next/server/functions-config-manifest.json +2 -0
  481. package/cloud-runtime/standalone/apps/local/.next/server/middleware-build-manifest.js +3 -3
  482. package/cloud-runtime/standalone/apps/local/.next/server/middleware-manifest.json +5 -5
  483. package/cloud-runtime/standalone/apps/local/.next/server/next-font-manifest.js +1 -1
  484. package/cloud-runtime/standalone/apps/local/.next/server/next-font-manifest.json +4 -0
  485. package/cloud-runtime/standalone/apps/local/.next/server/pages/404.html +2 -2
  486. package/cloud-runtime/standalone/apps/local/.next/server/pages/500.html +1 -1
  487. package/cloud-runtime/standalone/apps/local/.next/server/server-reference-manifest.js +1 -1
  488. package/cloud-runtime/standalone/apps/local/.next/server/server-reference-manifest.json +1 -1
  489. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0-_ukhpeg429c.js +16 -0
  490. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0-olq~7zw3wjy.js +1 -0
  491. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0142ce0jj3j7r.js → 0-vo_x2cxmjm3.js} +1 -1
  492. package/cloud-runtime/standalone/apps/local/.next/static/chunks/003q-y3exxalk.js +1 -0
  493. package/cloud-runtime/standalone/apps/local/.next/static/chunks/00po4v2x~0x_z.js +1 -0
  494. package/cloud-runtime/standalone/apps/local/.next/static/chunks/013gtut17~fne.js +23 -0
  495. package/cloud-runtime/standalone/apps/local/.next/static/chunks/014z_yruiincl.js +1 -0
  496. package/cloud-runtime/standalone/apps/local/.next/static/chunks/041-dhls9zkl1.js +1 -0
  497. package/cloud-runtime/standalone/apps/local/.next/static/chunks/04yoml2rqnuot.js +16 -0
  498. package/cloud-runtime/standalone/apps/local/.next/static/chunks/07646a0h94826.js +3 -0
  499. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0_mrpyqcoyb_5.js +1 -0
  500. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0rm7v.1y6qcni.js → 0aewbg0i704w7.js} +1 -1
  501. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0px65ynyk3t1d.js → 0bchtyu6m.2yv.js} +7 -7
  502. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0dnw31436wd~..js +5 -0
  503. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0e307b-0c2jbx.js +1 -0
  504. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0edewt9l~cs~k.css +1 -0
  505. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0f7i3ae1ynhf3.css +1 -0
  506. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0fonouj2i9qnb.js +5 -0
  507. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0gj98094p~zn4.js +1 -0
  508. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0jrkacz_dyem6.js +37 -0
  509. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0l3v45kd.9is_.js +1 -0
  510. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0lgb.0~i1xvv-.js +1 -0
  511. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0lkal3uvr6_~2.js +1 -0
  512. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0mig99af4~uos.js +28 -0
  513. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0pdrpsy-zdxp0.js +5 -0
  514. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0p~l5ap6qqx2o.js +1 -0
  515. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0r0c9y6.8.m5p.js +1 -0
  516. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0stvi5btlxl4m.js +20 -0
  517. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0h_bwlg~kk8lz.js → 0tt1oh112yv-l.js} +2 -2
  518. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0uve8xrt~0a2e.js +1 -0
  519. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0w94x-v00osq0.js +1 -0
  520. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0wh6p5~ft5rma.js +5 -0
  521. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0x_pewz9npq~q.js +1 -0
  522. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0xwny92a.ad_i.js +1 -0
  523. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0zw85-xl9ysjs.js +1 -0
  524. package/cloud-runtime/standalone/apps/local/.next/static/chunks/119v0-idpg-cv.js +16 -0
  525. package/cloud-runtime/standalone/apps/local/.next/static/chunks/11l2tww5f0hsk.js +20 -0
  526. package/cloud-runtime/standalone/apps/local/.next/static/chunks/14v~9vx3tdv85.js +1 -0
  527. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0826uh6nmsi5l.js → 1503vb7lb6.g1.js} +1 -1
  528. package/cloud-runtime/standalone/apps/local/.next/static/chunks/16d~es6h6k~rj.js +6 -0
  529. package/cloud-runtime/standalone/apps/local/.next/static/chunks/177-q0wwdi0qe.js +1 -0
  530. package/cloud-runtime/standalone/apps/local/agx-server.js +4055 -0
  531. package/cloud-runtime/standalone/apps/local/app/agents/[id]/page.tsx +40 -5
  532. package/cloud-runtime/standalone/apps/local/app/api/agents/[id]/profile/route.ts +10 -0
  533. package/cloud-runtime/standalone/apps/local/app/api/automations/route.ts +10 -2
  534. package/cloud-runtime/standalone/apps/local/app/api/linear/worker/route.ts +151 -0
  535. package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/objectives/[objectiveId]/route.ts +0 -8
  536. package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/objectives/[objectiveId]/scheduled-tasks/route.ts +22 -27
  537. package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/objectives/[objectiveId]/worker/route.ts +89 -0
  538. package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/route.ts +13 -0
  539. package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/search/route.ts +4 -4
  540. package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/teams/route.ts +5 -3
  541. package/cloud-runtime/standalone/apps/local/app/api/prompt-jobs/route.ts +15 -5
  542. package/cloud-runtime/standalone/apps/local/app/globals.css +67 -5
  543. package/cloud-runtime/standalone/apps/local/app/projects/[slug]/folders/page.tsx +25 -0
  544. package/cloud-runtime/standalone/apps/local/app/projects/[slug]/layout.tsx +19 -5
  545. package/cloud-runtime/standalone/apps/local/app/projects/[slug]/objectives/[objectiveId]/page.tsx +7 -2
  546. package/cloud-runtime/standalone/apps/local/app/projects/[slug]/teams/new/page.tsx +236 -10
  547. package/cloud-runtime/standalone/apps/local/app/setup/page.tsx +9 -1
  548. package/cloud-runtime/standalone/apps/local/bundled-server.ts +45 -0
  549. package/cloud-runtime/standalone/apps/local/components/ActionToolbar.tsx +5 -2
  550. package/cloud-runtime/standalone/apps/local/components/AutomationsBoard.tsx +35 -3
  551. package/cloud-runtime/standalone/apps/local/components/ContextMenu.tsx +2 -2
  552. package/cloud-runtime/standalone/apps/local/components/FloatingPanel.tsx +70 -20
  553. package/cloud-runtime/standalone/apps/local/components/IconButton.tsx +10 -2
  554. package/cloud-runtime/standalone/apps/local/components/KanbanBoard.tsx +84 -3
  555. package/cloud-runtime/standalone/apps/local/components/LinearBoard.tsx +434 -36
  556. package/cloud-runtime/standalone/apps/local/components/LogTimeline.tsx +4 -1
  557. package/cloud-runtime/standalone/apps/local/components/NowRunningPanel.tsx +3 -1
  558. package/cloud-runtime/standalone/apps/local/components/PromptJobBoard.tsx +119 -6
  559. package/cloud-runtime/standalone/apps/local/components/SearchCombo.tsx +3 -3
  560. package/cloud-runtime/standalone/apps/local/components/SortableTaskCard.tsx +21 -3
  561. package/cloud-runtime/standalone/apps/local/components/StatusCircle.tsx +3 -3
  562. package/cloud-runtime/standalone/apps/local/components/TaskCard.tsx +51 -1
  563. package/cloud-runtime/standalone/apps/local/components/chat-ui/ChatContainer.tsx +15 -2
  564. package/cloud-runtime/standalone/apps/local/components/chat-ui/Composer.tsx +3 -3
  565. package/cloud-runtime/standalone/apps/local/components/chat-ui/ParticipantBar.tsx +76 -9
  566. package/cloud-runtime/standalone/apps/local/components/graph/ExecutionGraphPanel.tsx +4 -1
  567. package/cloud-runtime/standalone/apps/local/components/graph/GraphFirstView.tsx +6 -2
  568. package/cloud-runtime/standalone/apps/local/components/graph/NodeDetailPanel.tsx +45 -25
  569. package/cloud-runtime/standalone/apps/local/components/graph/NodeInspector.tsx +9 -6
  570. package/cloud-runtime/standalone/apps/local/components/linear/LinearSettingsModal.tsx +105 -0
  571. package/cloud-runtime/standalone/apps/local/components/linear/LinearWorkerConfig.tsx +367 -0
  572. package/cloud-runtime/standalone/apps/local/components/projects/FoldersSummaryCard.tsx +16 -16
  573. package/cloud-runtime/standalone/apps/local/components/projects/FoldersView.tsx +856 -0
  574. package/cloud-runtime/standalone/apps/local/components/projects/ObjectiveActivityTimeline.tsx +40 -32
  575. package/cloud-runtime/standalone/apps/local/components/projects/ObjectiveHealthTrend.tsx +215 -0
  576. package/cloud-runtime/standalone/apps/local/components/projects/ObjectiveScheduledTasksPanel.tsx +338 -91
  577. package/cloud-runtime/standalone/apps/local/components/projects/ProjectHome.tsx +12 -6
  578. package/cloud-runtime/standalone/apps/local/components/projects/ProjectObjectivesWorkspace.tsx +489 -467
  579. package/cloud-runtime/standalone/apps/local/components/projects/ProjectSearchBar.tsx +4 -2
  580. package/cloud-runtime/standalone/apps/local/components/projects/RecentlyCompletedCard.tsx +213 -0
  581. package/cloud-runtime/standalone/apps/local/components/projects/ScheduledTasksSummaryCard.tsx +19 -19
  582. package/cloud-runtime/standalone/apps/local/components/projects/TeamsSummaryCard.tsx +10 -10
  583. package/cloud-runtime/standalone/apps/local/components/projects/TeamsView.tsx +171 -56
  584. package/cloud-runtime/standalone/apps/local/components/projects/WorkingNowCard.tsx +12 -12
  585. package/cloud-runtime/standalone/apps/local/components/projects/home/ObjectiveCard.tsx +13 -10
  586. package/cloud-runtime/standalone/apps/local/components/projects/home/ObjectivesSection.tsx +7 -7
  587. package/cloud-runtime/standalone/apps/local/components/projects/home/ToolPathCard.tsx +2 -2
  588. package/cloud-runtime/standalone/apps/local/components/projects/home/ToolPathsSection.tsx +9 -9
  589. package/cloud-runtime/standalone/apps/local/components/scheduling/ScheduleConditionPicker.tsx +4 -4
  590. package/cloud-runtime/standalone/apps/local/components/setup/McpSetupStep.tsx +242 -0
  591. package/cloud-runtime/standalone/apps/local/components/setup/ProjectStep.tsx +2 -2
  592. package/cloud-runtime/standalone/apps/local/components/setup/ProviderStep.tsx +1 -1
  593. package/cloud-runtime/standalone/apps/local/components/setup/TeamsStep.tsx +288 -15
  594. package/cloud-runtime/standalone/apps/local/components/terminal/ProjectTerminal.tsx +233 -89
  595. package/cloud-runtime/standalone/apps/local/components/terminal/TerminalSessionList.tsx +3 -1
  596. package/cloud-runtime/standalone/apps/local/components/thread/WorkspaceSidebar.tsx +72 -21
  597. package/cloud-runtime/standalone/apps/local/hooks/useInputCapabilities.ts +74 -0
  598. package/cloud-runtime/standalone/apps/local/hooks/useSetupFlow.ts +16 -2
  599. package/cloud-runtime/standalone/apps/local/lib/app-config.ts +35 -0
  600. package/cloud-runtime/standalone/apps/local/lib/objective-health-history.ts +198 -0
  601. package/cloud-runtime/standalone/apps/local/lib/project-objective-context.ts +10 -0
  602. package/cloud-runtime/standalone/apps/local/lib/project-objectives.ts +0 -9
  603. package/cloud-runtime/standalone/apps/local/lib/pty-manager.ts +5 -1
  604. package/cloud-runtime/standalone/apps/local/lib/terminal-server.ts +182 -0
  605. package/cloud-runtime/standalone/apps/local/next.config.ts +2 -1
  606. package/cloud-runtime/standalone/apps/local/package.json +2 -2
  607. package/cloud-runtime/standalone/apps/local/playwright.config.ts +8 -0
  608. package/cloud-runtime/standalone/apps/local/server.js +1 -1
  609. package/cloud-runtime/standalone/apps/local/server.ts +14 -158
  610. package/cloud-runtime/standalone/apps/local/skills-lock.json +20 -0
  611. package/cloud-runtime/standalone/apps/local/src/automations/adapters.ts +5 -0
  612. package/cloud-runtime/standalone/apps/local/src/automations/types.ts +5 -0
  613. package/cloud-runtime/standalone/apps/local/src/automations/validation.ts +12 -5
  614. package/cloud-runtime/standalone/apps/local/src/graph/types.ts +2 -0
  615. package/cloud-runtime/standalone/apps/local/src/objectives/parser.ts +0 -2
  616. package/cloud-runtime/standalone/apps/local/src/objectives/serializer.ts +0 -2
  617. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/cron.ts +11 -0
  618. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/linear-worker-constants.ts +38 -0
  619. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/linear-worker-job.ts +47 -0
  620. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/linear-worker.ts +482 -0
  621. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/objective-worker-job.ts +47 -0
  622. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/objective-worker.ts +511 -0
  623. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/processor.ts +239 -368
  624. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/store.ts +19 -4
  625. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/types.ts +32 -8
  626. package/cloud-runtime/standalone/apps/local/state/terminalTabs.ts +182 -106
  627. package/cloud-runtime/standalone/apps/local/state/windowState.ts +11 -0
  628. package/cloud-runtime/standalone/apps/local/styles/workspaceSidebar.css +65 -0
  629. package/cloud-runtime/standalone/apps/local/worker/index.js +9 -14
  630. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/darwin-arm64/pty.node +0 -0
  631. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/darwin-arm64/spawn-helper +0 -0
  632. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/darwin-x64/pty.node +0 -0
  633. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/darwin-x64/spawn-helper +0 -0
  634. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/conpty/OpenConsole.exe +0 -0
  635. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/conpty/conpty.dll +0 -0
  636. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/conpty.node +0 -0
  637. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/conpty.pdb +0 -0
  638. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/conpty_console_list.node +0 -0
  639. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/conpty_console_list.pdb +0 -0
  640. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/pty.node +0 -0
  641. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/pty.pdb +0 -0
  642. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/winpty-agent.exe +0 -0
  643. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/winpty-agent.pdb +0 -0
  644. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/winpty.dll +0 -0
  645. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/winpty.pdb +0 -0
  646. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/conpty/OpenConsole.exe +0 -0
  647. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/conpty/conpty.dll +0 -0
  648. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/conpty.node +0 -0
  649. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/conpty.pdb +0 -0
  650. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/conpty_console_list.node +0 -0
  651. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/conpty_console_list.pdb +0 -0
  652. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/pty.node +0 -0
  653. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/pty.pdb +0 -0
  654. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/winpty-agent.exe +0 -0
  655. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/winpty-agent.pdb +0 -0
  656. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/winpty.dll +0 -0
  657. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/winpty.pdb +0 -0
  658. package/lib/cli/daemon.js +13 -2
  659. package/lib/cli/onboarding.js +5 -6
  660. package/lib/cli/runCli.js +1 -1
  661. package/lib/cloud/client.js +1 -1
  662. package/lib/commands/chat.js +37 -11
  663. package/lib/commands/daemonBoard.js +19 -13
  664. package/lib/config/cloudConfig.js +1 -1
  665. package/lib/orchestrator/httpClient.js +1 -1
  666. package/lib/prompts/templates.js +8 -9
  667. package/package.json +1 -1
  668. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0-0479y._.js +0 -54
  669. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__088h0r2._.js +0 -3
  670. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__08oj_ky._.js +0 -49
  671. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__08y2lkj._.js +0 -3
  672. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__09joc_o._.js +0 -3
  673. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0gtv0rq._.js +0 -8
  674. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0gvjvx7._.js +0 -237
  675. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0ksbs9p._.js +0 -3
  676. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0o315az._.js +0 -3
  677. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0pz~m67._.js +0 -3
  678. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0q93mk3._.js +0 -7
  679. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0t2jk2r._.js +0 -18
  680. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0vhcrdv._.js +0 -229
  681. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__11s20j6._.js +0 -3
  682. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__12xhcor._.js +0 -54
  683. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_01rag2f._.js +0 -49
  684. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_03y4xss._.js +0 -21
  685. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0cm4i3i._.js +0 -3
  686. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0ijzgnb._.js +0 -3
  687. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_03q7_.q._.js +0 -21
  688. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0m3e2d~._.js +0 -30
  689. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0r-oiga._.js +0 -30
  690. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_00cwfvi._.js +0 -34
  691. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_0hx7xyz._.js +0 -34
  692. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_0rqcat4._.js +0 -55
  693. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_0sc_lek._.js +0 -79
  694. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_135ddsu._.js +0 -55
  695. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_graph_store_ts_0h.2qy9._.js +0 -43
  696. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_prompt-scheduler_processor_ts_0i1av_r._.js +0 -474
  697. package/cloud-runtime/standalone/apps/local/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0xxf2a0.js +0 -3
  698. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/0rhn_lucide-react_dist_esm_0xd_mxu._.js +0 -3
  699. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__044xm0q._.js +0 -3
  700. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__066ay_e._.js +0 -3
  701. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__09smg3p._.js +0 -18
  702. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0bf346q._.js +0 -3
  703. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0hd2vo4._.js +0 -18
  704. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0iix1sf._.js +0 -3
  705. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0r54zr9._.js +0 -3
  706. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0s8z2_c._.js +0 -18
  707. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0wq3ukc._.js +0 -3
  708. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_03-mlx0._.js +0 -7
  709. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_03rf_sb._.js +0 -3
  710. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_09b42z9._.js +0 -3
  711. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0ag3.tl._.js +0 -7
  712. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0dh_hx0._.js +0 -3
  713. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0h8cbsi._.js +0 -3
  714. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0i1ffhz._.js +0 -3
  715. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0ndrb_0._.js +0 -8
  716. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0nlki7b._.js +0 -3
  717. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0ut3k~7._.js +0 -3
  718. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0vibfch._.js +0 -3
  719. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0yffwm4._.js +0 -8
  720. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0_q01av._.js +0 -3
  721. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0eh.4j7._.js +0 -3
  722. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0qaowqy._.js +0 -3
  723. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0s0iy2_._.js +0 -3
  724. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0zr-_na._.js +0 -3
  725. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_10qsqky._.js +0 -3
  726. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0.a4-dh~x9sa3.js +0 -6
  727. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0.bv3h68wo33z.js +0 -1
  728. package/cloud-runtime/standalone/apps/local/.next/static/chunks/016.x9zt9~rsh.js +0 -16
  729. package/cloud-runtime/standalone/apps/local/.next/static/chunks/027-6dwgpb0cy.js +0 -1
  730. package/cloud-runtime/standalone/apps/local/.next/static/chunks/031720jijg_th.js +0 -1
  731. package/cloud-runtime/standalone/apps/local/.next/static/chunks/03m1xs0rztynh.js +0 -16
  732. package/cloud-runtime/standalone/apps/local/.next/static/chunks/051-7k0nnm-vm.js +0 -1
  733. package/cloud-runtime/standalone/apps/local/.next/static/chunks/07o~9mm~xds_b.js +0 -1
  734. package/cloud-runtime/standalone/apps/local/.next/static/chunks/08zgoptetnxjj.css +0 -1
  735. package/cloud-runtime/standalone/apps/local/.next/static/chunks/09-_2lcshmjl5.js +0 -1
  736. package/cloud-runtime/standalone/apps/local/.next/static/chunks/09_yj-9nfh48m.js +0 -1
  737. package/cloud-runtime/standalone/apps/local/.next/static/chunks/09c7ssmgohk7l.js +0 -1
  738. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0awbe2r3qazge.css +0 -1
  739. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0dro-bz6f72z0.js +0 -1
  740. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0gbunx8z.~i4x.js +0 -5
  741. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0ge81r~ap.u7n.js +0 -28
  742. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0ghg5160qeazw.js +0 -5
  743. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0gl_8hdxl5qnd.js +0 -37
  744. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0g~v8p6_pc46-.js +0 -1
  745. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0jb4f8425s.-2.js +0 -1
  746. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0kukkarp4un0o.js +0 -1
  747. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0m.2b-cekea8b.js +0 -1
  748. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0o0hwfzwwty4b.js +0 -6
  749. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0ov5lu0tz2o2e.js +0 -1
  750. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0pt8_y9asrg~7.js +0 -1
  751. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0wyg4lymaq0hg.js +0 -3
  752. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0xl~1ux2f~rcu.js +0 -1
  753. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0y7-eze-w7~b4.js +0 -5
  754. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0y8e--tok1214.js +0 -5
  755. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0yy~0bgsz~o6-.js +0 -1
  756. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0~apd0q5_i88z.js +0 -16
  757. package/cloud-runtime/standalone/apps/local/.next/static/chunks/100xrwo-45nrg.js +0 -20
  758. package/cloud-runtime/standalone/apps/local/.next/static/chunks/14h3qxwuo~1q9.js +0 -20
  759. package/cloud-runtime/standalone/apps/local/.next/static/chunks/17oesq5eds3xi.js +0 -1
  760. /package/cloud-runtime/standalone/apps/local/.next/static/{z8XjY2Aj-ox_Dro192i4I → RnYHmEXBwXJjVrVVx2CuP}/_buildManifest.js +0 -0
  761. /package/cloud-runtime/standalone/apps/local/.next/static/{z8XjY2Aj-ox_Dro192i4I → RnYHmEXBwXJjVrVVx2CuP}/_clientMiddlewareManifest.js +0 -0
  762. /package/cloud-runtime/standalone/apps/local/.next/static/{z8XjY2Aj-ox_Dro192i4I → RnYHmEXBwXJjVrVVx2CuP}/_ssgManifest.js +0 -0
@@ -0,0 +1,23 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,667585,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"BailoutToCSR",{enumerable:!0,get:function(){return s}});let n=e.r(132061);function s({reason:e,children:t}){if("u"<typeof window)throw Object.defineProperty(new n.BailoutToCSRError(e),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return t}},309885,(e,t,r)=>{"use strict";function n(e){return e.split("/").map(e=>encodeURIComponent(e)).join("/")}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"encodeURIPath",{enumerable:!0,get:function(){return n}})},652157,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"PreloadChunks",{enumerable:!0,get:function(){return l}});let n=e.r(843476),s=e.r(174080),i=e.r(563599),a=e.r(309885),o=e.r(543369);function l({moduleIds:e}){if("u">typeof window)return null;let t=i.workAsyncStorage.getStore();if(void 0===t)return null;let r=[];if(t.reactLoadableManifest&&e){let n=t.reactLoadableManifest;for(let t of e){if(!n[t])continue;let e=n[t].files;r.push(...e)}}if(0===r.length)return null;let u=(0,o.getAssetTokenQuery)();return(0,n.jsx)(n.Fragment,{children:r.map(e=>{let r=`${t.assetPrefix}/_next/${(0,a.encodeURIPath)(e)}${u}`;return e.endsWith(".css")?(0,n.jsx)("link",{precedence:"dynamic",href:r,rel:"stylesheet",as:"style",nonce:t.nonce},e):((0,s.preload)(r,{as:"script",fetchPriority:"low",nonce:t.nonce}),null)})})}},869093,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return u}});let n=e.r(843476),s=e.r(271645),i=e.r(667585),a=e.r(652157);function o(e){return{default:e&&"default"in e?e.default:e}}let l={loader:()=>Promise.resolve(o(()=>null)),loading:null,ssr:!0},u=function(e){let t={...l,...e},r=(0,s.lazy)(()=>t.loader().then(o)),u=t.loading;function d(e){let o=u?(0,n.jsx)(u,{isLoading:!0,pastDelay:!0,error:null}):null,l=!t.ssr||!!t.loading,d=l?s.Suspense:s.Fragment,c=t.ssr?(0,n.jsxs)(n.Fragment,{children:["u"<typeof window?(0,n.jsx)(a.PreloadChunks,{moduleIds:t.modules}):null,(0,n.jsx)(r,{...e})]}):(0,n.jsx)(i.BailoutToCSR,{reason:"next/dynamic",children:(0,n.jsx)(r,{...e})});return(0,n.jsx)(d,{...l?{fallback:o}:{},children:c})}return d.displayName="LoadableComponent",d}},770703,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return s}});let n=e.r(555682)._(e.r(869093));function s(e,t){let r={};"function"==typeof e&&(r.loader=e);let s={...r,...t};return(0,n.default)({...s,modules:s.loadableGenerated?.modules})}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},873022,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0})},146478,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.CronField=void 0;class n{#e=!1;#t=!1;#r=!1;#n=[];options={rawValue:""};static get min(){throw Error("min must be overridden")}static get max(){throw Error("max must be overridden")}static get chars(){return Object.freeze([])}static get validChars(){return/^[?,*\dH/-]+$|^.*H\(\d+-\d+\)\/\d+.*$|^.*H\(\d+-\d+\).*$|^.*H\/\d+.*$/}static get constraints(){return{min:this.min,max:this.max,chars:this.chars,validChars:this.validChars}}constructor(e,t={rawValue:""}){if(!Array.isArray(e))throw Error(`${this.constructor.name} Validation error, values is not an array`);if(!(e.length>0))throw Error(`${this.constructor.name} Validation error, values contains no values`);this.options={...t,rawValue:t.rawValue??""},this.#n=e.sort(n.sorter),this.#r=void 0!==this.options.wildcard?this.options.wildcard:this.#s(),this.#e=this.options.rawValue.includes("L")||e.includes("L"),this.#t=this.options.rawValue.includes("?")||e.includes("?")}get min(){return this.constructor.min}get max(){return this.constructor.max}get chars(){return this.constructor.chars}get hasLastChar(){return this.#e}get hasQuestionMarkChar(){return this.#t}get isWildcard(){return this.#r}get values(){return this.#n}static sorter(e,t){let r="number"==typeof e,n="number"==typeof t;return r&&n?e-t:r||n?r?-1:1:e.localeCompare(t)}static findNearestValueInList(e,t,r=!1){if(r){for(let r=e.length-1;r>=0;r--)if(e[r]<t)return e[r];return null}for(let r=0;r<e.length;r++)if(e[r]>t)return e[r];return null}findNearestValue(e,t=!1){return this.constructor.findNearestValueInList(this.values,e,t)}serialize(){return{wildcard:this.#r,values:this.#n}}validate(){let e,t=this.chars.length>0?` or chars ${this.chars.join("")}`:"",r=t=>(e=t,"number"==typeof t?t>=this.min&&t<=this.max:this.chars.some(e=>RegExp(`^\\d{0,2}${e}$`).test(t)));if(!this.#n.every(r))throw Error(`${this.constructor.name} Validation error, got value ${e} expected range ${this.min}-${this.max}${t}`);let n=this.#n.find((e,t)=>this.#n.indexOf(e)!==t);if(n)throw Error(`${this.constructor.name} Validation error, duplicate values found: ${n}`)}#s(){return this.options.rawValue.length>0?["*","?"].includes(this.options.rawValue):Array.from({length:this.max-this.min+1},(e,t)=>t+this.min).every(e=>this.#n.includes(e))}}r.CronField=n},783636,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.CronDayOfMonth=void 0;let n=e.r(146478),s=Object.freeze(["L"]);class i extends n.CronField{static get min(){return 1}static get max(){return 31}static get chars(){return s}static get validChars(){return/^[?,*\dLH/-]+$|^.*H\(\d+-\d+\)\/\d+.*$|^.*H\(\d+-\d+\).*$|^.*H\/\d+.*$/}constructor(e,t){super(e,t),this.validate()}get values(){return super.values}}r.CronDayOfMonth=i},268638,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.CronDayOfWeek=void 0;let n=e.r(146478),s=Object.freeze(["L"]);class i extends n.CronField{static get min(){return 0}static get max(){return 7}static get chars(){return s}static get validChars(){return/^[?,*\dLH#/-]+$|^.*H\(\d+-\d+\)\/\d+.*$|^.*H\(\d+-\d+\).*$|^.*H\/\d+.*$/}constructor(e,t){super(e,t),this.validate()}get values(){return super.values}get nthDay(){return this.options.nthDayOfWeek??0}}r.CronDayOfWeek=i},559039,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.CronHour=void 0;let n=e.r(146478),s=Object.freeze([]);class i extends n.CronField{static get min(){return 0}static get max(){return 23}static get chars(){return s}constructor(e,t){super(e,t),this.validate()}get values(){return super.values}}r.CronHour=i},369031,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.CronMinute=void 0;let n=e.r(146478),s=Object.freeze([]);class i extends n.CronField{static get min(){return 0}static get max(){return 59}static get chars(){return s}constructor(e,t){super(e,t),this.validate()}get values(){return super.values}}r.CronMinute=i},737689,(e,t,r)=>{"use strict";let n;Object.defineProperty(r,"__esModule",{value:!0});class s extends Error{}class i extends s{constructor(e){super(`Invalid DateTime: ${e.toMessage()}`)}}class a extends s{constructor(e){super(`Invalid Interval: ${e.toMessage()}`)}}class o extends s{constructor(e){super(`Invalid Duration: ${e.toMessage()}`)}}class l extends s{}class u extends s{constructor(e){super(`Invalid unit ${e}`)}}class d extends s{}class c extends s{constructor(){super("Zone is an abstract class")}}let h="numeric",m="short",f="long",y={year:h,month:h,day:h},g={year:h,month:m,day:h},p={year:h,month:m,day:h,weekday:m},v={year:h,month:f,day:h},w={year:h,month:f,day:h,weekday:f},b={hour:h,minute:h},O={hour:h,minute:h,second:h},k={hour:h,minute:h,second:h,timeZoneName:m},M={hour:h,minute:h,second:h,timeZoneName:f},S={hour:h,minute:h,hourCycle:"h23"},D={hour:h,minute:h,second:h,hourCycle:"h23"},x={hour:h,minute:h,second:h,hourCycle:"h23",timeZoneName:m},T={hour:h,minute:h,second:h,hourCycle:"h23",timeZoneName:f},N={year:h,month:h,day:h,hour:h,minute:h},C={year:h,month:h,day:h,hour:h,minute:h,second:h},E={year:h,month:m,day:h,hour:h,minute:h},$={year:h,month:m,day:h,hour:h,minute:h,second:h},I={year:h,month:m,day:h,weekday:m,hour:h,minute:h},j={year:h,month:f,day:h,hour:h,minute:h,timeZoneName:m},F={year:h,month:f,day:h,hour:h,minute:h,second:h,timeZoneName:m},V={year:h,month:f,day:h,weekday:f,hour:h,minute:h,timeZoneName:f},_={year:h,month:f,day:h,weekday:f,hour:h,minute:h,second:h,timeZoneName:f};class W{get type(){throw new c}get name(){throw new c}get ianaName(){return this.name}get isUniversal(){throw new c}offsetName(e,t){throw new c}formatOffset(e,t){throw new c}offset(e){throw new c}equals(e){throw new c}get isValid(){throw new c}}let L=null;class P extends W{static get instance(){return null===L&&(L=new P),L}get type(){return"system"}get name(){return new Intl.DateTimeFormat().resolvedOptions().timeZone}get isUniversal(){return!1}offsetName(e,{format:t,locale:r}){return e6(e,t,r)}formatOffset(e,t){return e9(this.offset(e),t)}offset(e){return-new Date(e).getTimezoneOffset()}equals(e){return"system"===e.type}get isValid(){return!0}}let R=new Map,A={year:0,month:1,day:2,era:3,hour:4,minute:5,second:6},U=new Map;class z extends W{static create(e){let t=U.get(e);return void 0===t&&U.set(e,t=new z(e)),t}static resetCache(){U.clear(),R.clear()}static isValidSpecifier(e){return this.isValidZone(e)}static isValidZone(e){if(!e)return!1;try{return new Intl.DateTimeFormat("en-US",{timeZone:e}).format(),!0}catch(e){return!1}}constructor(e){super(),this.zoneName=e,this.valid=z.isValidZone(e)}get type(){return"iana"}get name(){return this.zoneName}get isUniversal(){return!1}offsetName(e,{format:t,locale:r}){return e6(e,t,r,this.name)}formatOffset(e,t){return e9(this.offset(e),t)}offset(e){var t;let r;if(!this.valid)return NaN;let n=new Date(e);if(isNaN(n))return NaN;let s=(t=this.name,void 0===(r=R.get(t))&&(r=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:t,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",era:"short"}),R.set(t,r)),r),[i,a,o,l,u,d,c]=s.formatToParts?function(e,t){let r=e.formatToParts(t),n=[];for(let e=0;e<r.length;e++){let{type:t,value:s}=r[e],i=A[t];"era"===t?n[i]=s:eW(i)||(n[i]=parseInt(s,10))}return n}(s,n):function(e,t){let r=e.format(t).replace(/\u200E/g,""),[,n,s,i,a,o,l,u]=/(\d+)\/(\d+)\/(\d+) (AD|BC),? (\d+):(\d+):(\d+)/.exec(r);return[i,n,s,a,o,l,u]}(s,n);"BC"===l&&(i=-Math.abs(i)+1);let h=e0({year:i,month:a,day:o,hour:24===u?0:u,minute:d,second:c,millisecond:0}),m=+n,f=m%1e3;return(h-(m-=f>=0?f:1e3+f))/6e4}equals(e){return"iana"===e.type&&e.name===this.name}get isValid(){return this.valid}}let Z={},H=new Map;function q(e,t={}){let r=JSON.stringify([e,t]),n=H.get(r);return void 0===n&&(n=new Intl.DateTimeFormat(e,t),H.set(r,n)),n}let Y=new Map,J=new Map,G=null,B=new Map;function Q(e){let t=B.get(e);return void 0===t&&(t=new Intl.DateTimeFormat(e).resolvedOptions(),B.set(e,t)),t}let K=new Map;function X(e,t,r,n){let s=e.listingMode();return"error"===s?null:"en"===s?r(t):n(t)}class ee{constructor(e,t,r){this.padTo=r.padTo||0,this.floor=r.floor||!1;const{padTo:n,floor:s,...i}=r;if(!t||Object.keys(i).length>0){const t={useGrouping:!1,...r};r.padTo>0&&(t.minimumIntegerDigits=r.padTo),this.inf=function(e,t={}){let r=JSON.stringify([e,t]),n=Y.get(r);return void 0===n&&(n=new Intl.NumberFormat(e,t),Y.set(r,n)),n}(e,t)}}format(e){if(!this.inf)return eq(this.floor?Math.floor(e):eB(e,3),this.padTo);{let t=this.floor?Math.floor(e):e;return this.inf.format(t)}}}class et{constructor(e,t,r){let n;if(this.opts=r,this.originalZone=void 0,this.opts.timeZone)this.dt=e;else if("fixed"===e.zone.type){const t=-1*(e.offset/60),r=t>=0?`Etc/GMT+${t}`:`Etc/GMT${t}`;0!==e.offset&&z.create(r).valid?(n=r,this.dt=e):(n="UTC",this.dt=0===e.offset?e:e.setZone("UTC").plus({minutes:e.offset}),this.originalZone=e.zone)}else"system"===e.zone.type?this.dt=e:"iana"===e.zone.type?(this.dt=e,n=e.zone.name):(n="UTC",this.dt=e.setZone("UTC").plus({minutes:e.offset}),this.originalZone=e.zone);const s={...this.opts};s.timeZone=s.timeZone||n,this.dtf=q(t,s)}format(){return this.originalZone?this.formatToParts().map(({value:e})=>e).join(""):this.dtf.format(this.dt.toJSDate())}formatToParts(){let e=this.dtf.formatToParts(this.dt.toJSDate());return this.originalZone?e.map(e=>{if("timeZoneName"!==e.type)return e;{let t=this.originalZone.offsetName(this.dt.ts,{locale:this.dt.locale,format:this.opts.timeZoneName});return{...e,value:t}}}):e}resolvedOptions(){return this.dtf.resolvedOptions()}}class er{constructor(e,t,r){this.opts={style:"long",...r},!t&&eR()&&(this.rtf=function(e,t={}){let{base:r,...n}=t,s=JSON.stringify([e,n]),i=J.get(s);return void 0===i&&(i=new Intl.RelativeTimeFormat(e,t),J.set(s,i)),i}(e,r))}format(e,t){return this.rtf?this.rtf.format(e,t):function(e,t,r="always",n=!1){let s={years:["year","yr."],quarters:["quarter","qtr."],months:["month","mo."],weeks:["week","wk."],days:["day","day","days"],hours:["hour","hr."],minutes:["minute","min."],seconds:["second","sec."]},i=-1===["hours","minutes","seconds"].indexOf(e);if("auto"===r&&i){let r="days"===e;switch(t){case 1:return r?"tomorrow":`next ${s[e][0]}`;case -1:return r?"yesterday":`last ${s[e][0]}`;case 0:return r?"today":`this ${s[e][0]}`}}let a=Object.is(t,-0)||t<0,o=Math.abs(t),l=1===o,u=s[e],d=n?l?u[1]:u[2]||u[1]:l?s[e][0]:e;return a?`${o} ${d} ago`:`in ${o} ${d}`}(t,e,this.opts.numeric,"long"!==this.opts.style)}formatToParts(e,t){return this.rtf?this.rtf.formatToParts(e,t):[]}}let en={firstDay:1,minimalDays:4,weekend:[6,7]};class es{static fromOpts(e){return es.create(e.locale,e.numberingSystem,e.outputCalendar,e.weekSettings,e.defaultToEN)}static create(e,t,r,n,s=!1){let i=e||ek.defaultLocale;return new es(i||(s?"en-US":G||(G=new Intl.DateTimeFormat().resolvedOptions().locale)),t||ek.defaultNumberingSystem,r||ek.defaultOutputCalendar,eZ(n)||ek.defaultWeekSettings,i)}static resetCache(){G=null,H.clear(),Y.clear(),J.clear(),B.clear(),K.clear()}static fromObject({locale:e,numberingSystem:t,outputCalendar:r,weekSettings:n}={}){return es.create(e,t,r,n)}constructor(e,t,r,n,s){const[i,a,o]=function(e){let t=e.indexOf("-x-");-1!==t&&(e=e.substring(0,t));let r=e.indexOf("-u-");if(-1===r)return[e];{let t,n;try{t=q(e).resolvedOptions(),n=e}catch(i){let s=e.substring(0,r);t=q(s).resolvedOptions(),n=s}let{numberingSystem:s,calendar:i}=t;return[n,s,i]}}(e);this.locale=i,this.numberingSystem=t||a||null,this.outputCalendar=r||o||null,this.weekSettings=n,this.intl=function(e,t,r){return(r||t)&&(e.includes("-u-")||(e+="-u"),r&&(e+=`-ca-${r}`),t&&(e+=`-nu-${t}`)),e}(this.locale,this.numberingSystem,this.outputCalendar),this.weekdaysCache={format:{},standalone:{}},this.monthsCache={format:{},standalone:{}},this.meridiemCache=null,this.eraCache={},this.specifiedLocale=s,this.fastNumbersCached=null}get fastNumbers(){return null==this.fastNumbersCached&&(this.fastNumbersCached=(!this.numberingSystem||"latn"===this.numberingSystem)&&("latn"===this.numberingSystem||!this.locale||this.locale.startsWith("en")||"latn"===Q(this.locale).numberingSystem)),this.fastNumbersCached}listingMode(){let e=this.isEnglish(),t=(null===this.numberingSystem||"latn"===this.numberingSystem)&&(null===this.outputCalendar||"gregory"===this.outputCalendar);return e&&t?"en":"intl"}clone(e){return e&&0!==Object.getOwnPropertyNames(e).length?es.create(e.locale||this.specifiedLocale,e.numberingSystem||this.numberingSystem,e.outputCalendar||this.outputCalendar,eZ(e.weekSettings)||this.weekSettings,e.defaultToEN||!1):this}redefaultToEN(e={}){return this.clone({...e,defaultToEN:!0})}redefaultToSystem(e={}){return this.clone({...e,defaultToEN:!1})}months(e,t=!1){return X(this,e,tn,()=>{let r="ja"===this.intl||this.intl.startsWith("ja-"),n=(t&=!r)?{month:e,day:"numeric"}:{month:e},s=t?"format":"standalone";if(!this.monthsCache[s][e]){let t=r?e=>this.dtFormatter(e,n).format():e=>this.extract(e,n,"month");this.monthsCache[s][e]=function(e){let t=[];for(let r=1;r<=12;r++){let n=rJ.utc(2009,r,1);t.push(e(n))}return t}(t)}return this.monthsCache[s][e]})}weekdays(e,t=!1){return X(this,e,to,()=>{let r=t?{weekday:e,year:"numeric",month:"long",day:"numeric"}:{weekday:e},n=t?"format":"standalone";return this.weekdaysCache[n][e]||(this.weekdaysCache[n][e]=function(e){let t=[];for(let r=1;r<=7;r++){let n=rJ.utc(2016,11,13+r);t.push(e(n))}return t}(e=>this.extract(e,r,"weekday"))),this.weekdaysCache[n][e]})}meridiems(){return X(this,void 0,()=>tl,()=>{if(!this.meridiemCache){let e={hour:"numeric",hourCycle:"h12"};this.meridiemCache=[rJ.utc(2016,11,13,9),rJ.utc(2016,11,13,19)].map(t=>this.extract(t,e,"dayperiod"))}return this.meridiemCache})}eras(e){return X(this,e,th,()=>{let t={era:e};return this.eraCache[e]||(this.eraCache[e]=[rJ.utc(-40,1,1),rJ.utc(2017,1,1)].map(e=>this.extract(e,t,"era"))),this.eraCache[e]})}extract(e,t,r){let n=this.dtFormatter(e,t).formatToParts().find(e=>e.type.toLowerCase()===r);return n?n.value:null}numberFormatter(e={}){return new ee(this.intl,e.forceSimple||this.fastNumbers,e)}dtFormatter(e,t={}){return new et(e,this.intl,t)}relFormatter(e={}){return new er(this.intl,this.isEnglish(),e)}listFormatter(e={}){return function(e,t={}){let r=JSON.stringify([e,t]),n=Z[r];return n||(n=new Intl.ListFormat(e,t),Z[r]=n),n}(this.intl,e)}isEnglish(){return"en"===this.locale||"en-us"===this.locale.toLowerCase()||Q(this.intl).locale.startsWith("en-us")}getWeekSettings(){if(this.weekSettings)return this.weekSettings;if(!eA())return en;var e=this.locale;let t=K.get(e);if(!t){let r=new Intl.Locale(e);"minimalDays"in(t="getWeekInfo"in r?r.getWeekInfo():r.weekInfo)||(t={...en,...t}),K.set(e,t)}return t}getStartOfWeek(){return this.getWeekSettings().firstDay}getMinDaysInFirstWeek(){return this.getWeekSettings().minimalDays}getWeekendDays(){return this.getWeekSettings().weekend}equals(e){return this.locale===e.locale&&this.numberingSystem===e.numberingSystem&&this.outputCalendar===e.outputCalendar}toString(){return`Locale(${this.locale}, ${this.numberingSystem}, ${this.outputCalendar})`}}let ei=null;class ea extends W{static get utcInstance(){return null===ei&&(ei=new ea(0)),ei}static instance(e){return 0===e?ea.utcInstance:new ea(e)}static parseSpecifier(e){if(e){let t=e.match(/^utc(?:([+-]\d{1,2})(?::(\d{2}))?)?$/i);if(t)return new ea(e4(t[1],t[2]))}return null}constructor(e){super(),this.fixed=e}get type(){return"fixed"}get name(){return 0===this.fixed?"UTC":`UTC${e9(this.fixed,"narrow")}`}get ianaName(){return 0===this.fixed?"Etc/UTC":`Etc/GMT${e9(-this.fixed,"narrow")}`}offsetName(){return this.name}formatOffset(e,t){return e9(this.fixed,t)}get isUniversal(){return!0}offset(){return this.fixed}equals(e){return"fixed"===e.type&&e.fixed===this.fixed}get isValid(){return!0}}class eo extends W{constructor(e){super(),this.zoneName=e}get type(){return"invalid"}get name(){return this.zoneName}get isUniversal(){return!1}offsetName(){return null}formatOffset(){return""}offset(){return NaN}equals(){return!1}get isValid(){return!1}}function el(e,t){if(eW(e)||null===e)return t;if(e instanceof W)return e;if("string"==typeof e){let r=e.toLowerCase();return"default"===r?t:"local"===r||"system"===r?P.instance:"utc"===r||"gmt"===r?ea.utcInstance:ea.parseSpecifier(r)||z.create(e)}if(eL(e))return ea.instance(e);if("object"==typeof e&&"offset"in e&&"function"==typeof e.offset)return e;else return new eo(e)}let eu={arab:"[٠-٩]",arabext:"[۰-۹]",bali:"[᭐-᭙]",beng:"[০-৯]",deva:"[०-९]",fullwide:"[0-9]",gujr:"[૦-૯]",hanidec:"[〇|一|二|三|四|五|六|七|八|九]",khmr:"[០-៩]",knda:"[೦-೯]",laoo:"[໐-໙]",limb:"[᥆-᥏]",mlym:"[൦-൯]",mong:"[᠐-᠙]",mymr:"[၀-၉]",orya:"[୦-୯]",tamldec:"[௦-௯]",telu:"[౦-౯]",thai:"[๐-๙]",tibt:"[༠-༩]",latn:"\\d"},ed={arab:[1632,1641],arabext:[1776,1785],bali:[6992,7001],beng:[2534,2543],deva:[2406,2415],fullwide:[65296,65303],gujr:[2790,2799],khmr:[6112,6121],knda:[3302,3311],laoo:[3792,3801],limb:[6470,6479],mlym:[3430,3439],mong:[6160,6169],mymr:[4160,4169],orya:[2918,2927],tamldec:[3046,3055],telu:[3174,3183],thai:[3664,3673],tibt:[3872,3881]},ec=eu.hanidec.replace(/[\[|\]]/g,"").split(""),eh=new Map;function em({numberingSystem:e},t=""){let r=e||"latn",n=eh.get(r);void 0===n&&(n=new Map,eh.set(r,n));let s=n.get(t);return void 0===s&&(s=RegExp(`${eu[r]}${t}`),n.set(t,s)),s}let ef=()=>Date.now(),ey="system",eg=null,ep=null,ev=null,ew=60,eb,eO=null;class ek{static get now(){return ef}static set now(e){ef=e}static set defaultZone(e){ey=e}static get defaultZone(){return el(ey,P.instance)}static get defaultLocale(){return eg}static set defaultLocale(e){eg=e}static get defaultNumberingSystem(){return ep}static set defaultNumberingSystem(e){ep=e}static get defaultOutputCalendar(){return ev}static set defaultOutputCalendar(e){ev=e}static get defaultWeekSettings(){return eO}static set defaultWeekSettings(e){eO=eZ(e)}static get twoDigitCutoffYear(){return ew}static set twoDigitCutoffYear(e){ew=e%100}static get throwOnInvalid(){return eb}static set throwOnInvalid(e){eb=e}static resetCaches(){es.resetCache(),z.resetCache(),rJ.resetCache(),eh.clear()}}class eM{constructor(e,t){this.reason=e,this.explanation=t}toMessage(){return this.explanation?`${this.reason}: ${this.explanation}`:this.reason}}let eS=[0,31,59,90,120,151,181,212,243,273,304,334],eD=[0,31,60,91,121,152,182,213,244,274,305,335];function ex(e,t){return new eM("unit out of range",`you specified ${t} (of type ${typeof t}) as a ${e}, which is invalid`)}function eT(e,t,r){let n=new Date(Date.UTC(e,t-1,r));e<100&&e>=0&&n.setUTCFullYear(n.getUTCFullYear()-1900);let s=n.getUTCDay();return 0===s?7:s}function eN(e,t){let r=eQ(e)?eD:eS,n=r.findIndex(e=>e<t),s=t-r[n];return{month:n+1,day:s}}function eC(e,t){return(e-t+7)%7+1}function eE(e,t=4,r=1){let{year:n,month:s,day:i}=e,a=i+(eQ(n)?eD:eS)[s-1],o=eC(eT(n,s,i),r),l=Math.floor((a-o+14-t)/7),u;return l<1?l=e2(u=n-1,t,r):l>e2(n,t,r)?(u=n+1,l=1):u=n,{weekYear:u,weekNumber:l,weekday:o,...e8(e)}}function e$(e,t=4,r=1){let{weekYear:n,weekNumber:s,weekday:i}=e,a=eC(eT(n,1,t),r),o=eK(n),l=7*s+i-a-7+t,u;l<1?l+=eK(u=n-1):l>o?(u=n+1,l-=eK(n)):u=n;let{month:d,day:c}=eN(u,l);return{year:u,month:d,day:c,...e8(e)}}function eI(e){let{year:t,month:r,day:n}=e,s=n+(eQ(t)?eD:eS)[r-1];return{year:t,ordinal:s,...e8(e)}}function ej(e){let{year:t,ordinal:r}=e,{month:n,day:s}=eN(t,r);return{year:t,month:n,day:s,...e8(e)}}function eF(e,t){if(!(!eW(e.localWeekday)||!eW(e.localWeekNumber)||!eW(e.localWeekYear)))return{minDaysInFirstWeek:4,startOfWeek:1};if(!eW(e.weekday)||!eW(e.weekNumber)||!eW(e.weekYear))throw new l("Cannot mix locale-based week fields with ISO-based week fields");return eW(e.localWeekday)||(e.weekday=e.localWeekday),eW(e.localWeekNumber)||(e.weekNumber=e.localWeekNumber),eW(e.localWeekYear)||(e.weekYear=e.localWeekYear),delete e.localWeekday,delete e.localWeekNumber,delete e.localWeekYear,{minDaysInFirstWeek:t.getMinDaysInFirstWeek(),startOfWeek:t.getStartOfWeek()}}function eV(e){let t=eP(e.year),r=eH(e.month,1,12),n=eH(e.day,1,eX(e.year,e.month));return t?r?!n&&ex("day",e.day):ex("month",e.month):ex("year",e.year)}function e_(e){let{hour:t,minute:r,second:n,millisecond:s}=e,i=eH(t,0,23)||24===t&&0===r&&0===n&&0===s,a=eH(r,0,59),o=eH(n,0,59),l=eH(s,0,999);return i?a?o?!l&&ex("millisecond",s):ex("second",n):ex("minute",r):ex("hour",t)}function eW(e){return void 0===e}function eL(e){return"number"==typeof e}function eP(e){return"number"==typeof e&&e%1==0}function eR(){try{return"u">typeof Intl&&!!Intl.RelativeTimeFormat}catch(e){return!1}}function eA(){try{return"u">typeof Intl&&!!Intl.Locale&&("weekInfo"in Intl.Locale.prototype||"getWeekInfo"in Intl.Locale.prototype)}catch(e){return!1}}function eU(e,t,r){if(0!==e.length)return e.reduce((e,n)=>{let s=[t(n),n];return e&&r(e[0],s[0])===e[0]?e:s},null)[1]}function ez(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function eZ(e){if(null==e)return null;if("object"!=typeof e)throw new d("Week settings must be an object");if(!eH(e.firstDay,1,7)||!eH(e.minimalDays,1,7)||!Array.isArray(e.weekend)||e.weekend.some(e=>!eH(e,1,7)))throw new d("Invalid week settings");return{firstDay:e.firstDay,minimalDays:e.minimalDays,weekend:Array.from(e.weekend)}}function eH(e,t,r){return eP(e)&&e>=t&&e<=r}function eq(e,t=2){return e<0?"-"+(""+-e).padStart(t,"0"):(""+e).padStart(t,"0")}function eY(e){if(!eW(e)&&null!==e&&""!==e)return parseInt(e,10)}function eJ(e){if(!eW(e)&&null!==e&&""!==e)return parseFloat(e)}function eG(e){if(!eW(e)&&null!==e&&""!==e)return Math.floor(1e3*parseFloat("0."+e))}function eB(e,t,r="round"){let n=10**t;switch(r){case"expand":return e>0?Math.ceil(e*n)/n:Math.floor(e*n)/n;case"trunc":return Math.trunc(e*n)/n;case"round":return Math.round(e*n)/n;case"floor":return Math.floor(e*n)/n;case"ceil":return Math.ceil(e*n)/n;default:throw RangeError(`Value rounding ${r} is out of range`)}}function eQ(e){return e%4==0&&(e%100!=0||e%400==0)}function eK(e){return eQ(e)?366:365}function eX(e,t){var r;let n=(r=t-1)-12*Math.floor(r/12)+1;return 2===n?eQ(e+(t-n)/12)?29:28:[31,null,31,30,31,30,31,31,30,31,30,31][n-1]}function e0(e){let t=Date.UTC(e.year,e.month-1,e.day,e.hour,e.minute,e.second,e.millisecond);return e.year<100&&e.year>=0&&(t=new Date(t)).setUTCFullYear(e.year,e.month-1,e.day),+t}function e1(e,t,r){return-eC(eT(e,1,t),r)+t-1}function e2(e,t=4,r=1){let n=e1(e,t,r),s=e1(e+1,t,r);return(eK(e)-n+s)/7}function e3(e){return e>99?e:e>ek.twoDigitCutoffYear?1900+e:2e3+e}function e6(e,t,r,n=null){let s=new Date(e),i={hourCycle:"h23",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"};n&&(i.timeZone=n);let a={timeZoneName:t,...i},o=new Intl.DateTimeFormat(r,a).formatToParts(s).find(e=>"timezonename"===e.type.toLowerCase());return o?o.value:null}function e4(e,t){let r=parseInt(e,10);Number.isNaN(r)&&(r=0);let n=parseInt(t,10)||0,s=r<0||Object.is(r,-0)?-n:n;return 60*r+s}function e5(e){let t=Number(e);if("boolean"==typeof e||""===e||!Number.isFinite(t))throw new d(`Invalid unit value ${e}`);return t}function e7(e,t){let r={};for(let n in e)if(ez(e,n)){let s=e[n];if(null==s)continue;r[t(n)]=e5(s)}return r}function e9(e,t){let r=Math.trunc(Math.abs(e/60)),n=Math.trunc(Math.abs(e%60)),s=e>=0?"+":"-";switch(t){case"short":return`${s}${eq(r,2)}:${eq(n,2)}`;case"narrow":return`${s}${r}${n>0?`:${n}`:""}`;case"techie":return`${s}${eq(r,2)}${eq(n,2)}`;default:throw RangeError(`Value format ${t} is out of range for property format`)}}function e8(e){return["hour","minute","second","millisecond"].reduce((t,r)=>(t[r]=e[r],t),{})}let te=["January","February","March","April","May","June","July","August","September","October","November","December"],tt=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],tr=["J","F","M","A","M","J","J","A","S","O","N","D"];function tn(e){switch(e){case"narrow":return[...tr];case"short":return[...tt];case"long":return[...te];case"numeric":return["1","2","3","4","5","6","7","8","9","10","11","12"];case"2-digit":return["01","02","03","04","05","06","07","08","09","10","11","12"];default:return null}}let ts=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],ti=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],ta=["M","T","W","T","F","S","S"];function to(e){switch(e){case"narrow":return[...ta];case"short":return[...ti];case"long":return[...ts];case"numeric":return["1","2","3","4","5","6","7"];default:return null}}let tl=["AM","PM"],tu=["Before Christ","Anno Domini"],td=["BC","AD"],tc=["B","A"];function th(e){switch(e){case"narrow":return[...tc];case"short":return[...td];case"long":return[...tu];default:return null}}function tm(e,t){let r="";for(let n of e)n.literal?r+=n.val:r+=t(n.val);return r}let tf={D:y,DD:g,DDD:v,DDDD:w,t:b,tt:O,ttt:k,tttt:M,T:S,TT:D,TTT:x,TTTT:T,f:N,ff:E,fff:j,ffff:V,F:C,FF:$,FFF:F,FFFF:_};class ty{static create(e,t={}){return new ty(e,t)}static parseFormat(e){let t=null,r="",n=!1,s=[];for(let i=0;i<e.length;i++){let a=e.charAt(i);"'"===a?((r.length>0||n)&&s.push({literal:n||/^\s+$/.test(r),val:""===r?"'":r}),t=null,r="",n=!n):n||a===t?r+=a:(r.length>0&&s.push({literal:/^\s+$/.test(r),val:r}),r=a,t=a)}return r.length>0&&s.push({literal:n||/^\s+$/.test(r),val:r}),s}static macroTokenToFormatOpts(e){return tf[e]}constructor(e,t){this.opts=t,this.loc=e,this.systemLoc=null}formatWithSystemDefault(e,t){return null===this.systemLoc&&(this.systemLoc=this.loc.redefaultToSystem()),this.systemLoc.dtFormatter(e,{...this.opts,...t}).format()}dtFormatter(e,t={}){return this.loc.dtFormatter(e,{...this.opts,...t})}formatDateTime(e,t){return this.dtFormatter(e,t).format()}formatDateTimeParts(e,t){return this.dtFormatter(e,t).formatToParts()}formatInterval(e,t){return this.dtFormatter(e.start,t).dtf.formatRange(e.start.toJSDate(),e.end.toJSDate())}resolvedOptions(e,t){return this.dtFormatter(e,t).resolvedOptions()}num(e,t=0,r){if(this.opts.forceSimple)return eq(e,t);let n={...this.opts};return t>0&&(n.padTo=t),r&&(n.signDisplay=r),this.loc.numberFormatter(n).format(e)}formatDateTimeFromString(e,t){let r="en"===this.loc.listingMode(),n=this.loc.outputCalendar&&"gregory"!==this.loc.outputCalendar,s=(t,r)=>this.loc.extract(e,t,r),i=t=>e.isOffsetFixed&&0===e.offset&&t.allowZ?"Z":e.isValid?e.zone.formatOffset(e.ts,t.format):"",a=(t,n)=>r?tn(t)[e.month-1]:s(n?{month:t}:{month:t,day:"numeric"},"month"),o=(t,n)=>r?to(t)[e.weekday-1]:s(n?{weekday:t}:{weekday:t,month:"long",day:"numeric"},"weekday"),l=t=>{let r=ty.macroTokenToFormatOpts(t);return r?this.formatWithSystemDefault(e,r):t},u=t=>r?th(t)[e.year<0?0:1]:s({era:t},"era"),d=t=>{switch(t){case"S":return this.num(e.millisecond);case"u":case"SSS":return this.num(e.millisecond,3);case"s":return this.num(e.second);case"ss":return this.num(e.second,2);case"uu":return this.num(Math.floor(e.millisecond/10),2);case"uuu":return this.num(Math.floor(e.millisecond/100));case"m":return this.num(e.minute);case"mm":return this.num(e.minute,2);case"h":return this.num(e.hour%12==0?12:e.hour%12);case"hh":return this.num(e.hour%12==0?12:e.hour%12,2);case"H":return this.num(e.hour);case"HH":return this.num(e.hour,2);case"Z":return i({format:"narrow",allowZ:this.opts.allowZ});case"ZZ":return i({format:"short",allowZ:this.opts.allowZ});case"ZZZ":return i({format:"techie",allowZ:this.opts.allowZ});case"ZZZZ":return e.zone.offsetName(e.ts,{format:"short",locale:this.loc.locale});case"ZZZZZ":return e.zone.offsetName(e.ts,{format:"long",locale:this.loc.locale});case"z":return e.zoneName;case"a":return r?tl[e.hour<12?0:1]:s({hour:"numeric",hourCycle:"h12"},"dayperiod");case"d":return n?s({day:"numeric"},"day"):this.num(e.day);case"dd":return n?s({day:"2-digit"},"day"):this.num(e.day,2);case"c":case"E":return this.num(e.weekday);case"ccc":return o("short",!0);case"cccc":return o("long",!0);case"ccccc":return o("narrow",!0);case"EEE":return o("short",!1);case"EEEE":return o("long",!1);case"EEEEE":return o("narrow",!1);case"L":return n?s({month:"numeric",day:"numeric"},"month"):this.num(e.month);case"LL":return n?s({month:"2-digit",day:"numeric"},"month"):this.num(e.month,2);case"LLL":return a("short",!0);case"LLLL":return a("long",!0);case"LLLLL":return a("narrow",!0);case"M":return n?s({month:"numeric"},"month"):this.num(e.month);case"MM":return n?s({month:"2-digit"},"month"):this.num(e.month,2);case"MMM":return a("short",!1);case"MMMM":return a("long",!1);case"MMMMM":return a("narrow",!1);case"y":return n?s({year:"numeric"},"year"):this.num(e.year);case"yy":return n?s({year:"2-digit"},"year"):this.num(e.year.toString().slice(-2),2);case"yyyy":return n?s({year:"numeric"},"year"):this.num(e.year,4);case"yyyyyy":return n?s({year:"numeric"},"year"):this.num(e.year,6);case"G":return u("short");case"GG":return u("long");case"GGGGG":return u("narrow");case"kk":return this.num(e.weekYear.toString().slice(-2),2);case"kkkk":return this.num(e.weekYear,4);case"W":return this.num(e.weekNumber);case"WW":return this.num(e.weekNumber,2);case"n":return this.num(e.localWeekNumber);case"nn":return this.num(e.localWeekNumber,2);case"ii":return this.num(e.localWeekYear.toString().slice(-2),2);case"iiii":return this.num(e.localWeekYear,4);case"o":return this.num(e.ordinal);case"ooo":return this.num(e.ordinal,3);case"q":return this.num(e.quarter);case"qq":return this.num(e.quarter,2);case"X":return this.num(Math.floor(e.ts/1e3));case"x":return this.num(e.ts);default:return l(t)}};return tm(ty.parseFormat(t),d)}formatDurationFromString(e,t){let r="negativeLargestOnly"===this.opts.signMode?-1:1,n=e=>{switch(e[0]){case"S":return"milliseconds";case"s":return"seconds";case"m":return"minutes";case"h":return"hours";case"d":return"days";case"w":return"weeks";case"M":return"months";case"y":return"years";default:return null}},s=(e,t)=>s=>{let i=n(s);if(!i)return s;{let n,a=t.isNegativeDuration&&i!==t.largestUnit?r:1;return n="negativeLargestOnly"===this.opts.signMode&&i!==t.largestUnit?"never":"all"===this.opts.signMode?"always":"auto",this.num(e.get(i)*a,s.length,n)}},i=ty.parseFormat(t),a=i.reduce((e,{literal:t,val:r})=>t?e:e.concat(r),[]),o=e.shiftTo(...a.map(n).filter(e=>e)),l={isNegativeDuration:o<0,largestUnit:Object.keys(o.values)[0]};return tm(i,s(o,l))}}let tg=/[A-Za-z_+-]{1,256}(?::?\/[A-Za-z0-9_+-]{1,256}(?:\/[A-Za-z0-9_+-]{1,256})?)?/;function tp(...e){let t=e.reduce((e,t)=>e+t.source,"");return RegExp(`^${t}$`)}function tv(...e){return t=>e.reduce(([e,r,n],s)=>{let[i,a,o]=s(t,n);return[{...e,...i},a||r,o]},[{},null,1]).slice(0,2)}function tw(e,...t){if(null==e)return[null,null];for(let[r,n]of t){let t=r.exec(e);if(t)return n(t)}return[null,null]}function tb(...e){return(t,r)=>{let n,s={};for(n=0;n<e.length;n++)s[e[n]]=eY(t[r+n]);return[s,null,r+n]}}let tO=/(?:([Zz])|([+-]\d\d)(?::?(\d\d))?)/,tk=`(?:${tO.source}?(?:\\[(${tg.source})\\])?)?`,tM=/(\d\d)(?::?(\d\d)(?::?(\d\d)(?:[.,](\d{1,30}))?)?)?/,tS=RegExp(`${tM.source}${tk}`),tD=RegExp(`(?:[Tt]${tS.source})?`),tx=tb("weekYear","weekNumber","weekDay"),tT=tb("year","ordinal"),tN=RegExp(`${tM.source} ?(?:${tO.source}|(${tg.source}))?`),tC=RegExp(`(?: ${tN.source})?`);function tE(e,t,r){let n=e[t];return eW(n)?r:eY(n)}function t$(e,t){return[{hours:tE(e,t,0),minutes:tE(e,t+1,0),seconds:tE(e,t+2,0),milliseconds:eG(e[t+3])},null,t+4]}function tI(e,t){let r=!e[t]&&!e[t+1],n=e4(e[t+1],e[t+2]);return[{},r?null:ea.instance(n),t+3]}function tj(e,t){return[{},e[t]?z.create(e[t]):null,t+1]}let tF=RegExp(`^T?${tM.source}$`),tV=/^-?P(?:(?:(-?\d{1,20}(?:\.\d{1,20})?)Y)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20}(?:\.\d{1,20})?)W)?(?:(-?\d{1,20}(?:\.\d{1,20})?)D)?(?:T(?:(-?\d{1,20}(?:\.\d{1,20})?)H)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20})(?:[.,](-?\d{1,20}))?S)?)?)$/;function t_(e){let[t,r,n,s,i,a,o,l,u]=e,d="-"===t[0],c=l&&"-"===l[0],h=(e,t=!1)=>void 0!==e&&(t||e&&d)?-e:e;return[{years:h(eJ(r)),months:h(eJ(n)),weeks:h(eJ(s)),days:h(eJ(i)),hours:h(eJ(a)),minutes:h(eJ(o)),seconds:h(eJ(l),"-0"===l),milliseconds:h(eG(u),c)}]}let tW={GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function tL(e,t,r,n,s,i,a){let o={year:2===t.length?e3(eY(t)):eY(t),month:tt.indexOf(r)+1,day:eY(n),hour:eY(s),minute:eY(i)};return a&&(o.second=eY(a)),e&&(o.weekday=e.length>3?ts.indexOf(e)+1:ti.indexOf(e)+1),o}let tP=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|(?:([+-]\d\d)(\d\d)))$/;function tR(e){let[,t,r,n,s,i,a,o,l,u,d,c]=e;return[tL(t,s,n,r,i,a,o),new ea(l?tW[l]:u?0:e4(d,c))]}let tA=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d\d) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d\d):(\d\d):(\d\d) GMT$/,tU=/^(Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d\d)-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d\d) (\d\d):(\d\d):(\d\d) GMT$/,tz=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( \d|\d\d) (\d\d):(\d\d):(\d\d) (\d{4})$/;function tZ(e){let[,t,r,n,s,i,a,o]=e;return[tL(t,s,n,r,i,a,o),ea.utcInstance]}function tH(e){let[,t,r,n,s,i,a,o]=e;return[tL(t,o,r,n,s,i,a),ea.utcInstance]}let tq=tp(/([+-]\d{6}|\d{4})(?:-?(\d\d)(?:-?(\d\d))?)?/,tD),tY=tp(/(\d{4})-?W(\d\d)(?:-?(\d))?/,tD),tJ=tp(/(\d{4})-?(\d{3})/,tD),tG=tp(tS),tB=tv(function(e,t){return[{year:tE(e,t),month:tE(e,t+1,1),day:tE(e,t+2,1)},null,t+3]},t$,tI,tj),tQ=tv(tx,t$,tI,tj),tK=tv(tT,t$,tI,tj),tX=tv(t$,tI,tj),t0=tv(t$),t1=tp(/(\d{4})-(\d\d)-(\d\d)/,tC),t2=tp(tN),t3=tv(t$,tI,tj),t6="Invalid Duration",t4={weeks:{days:7,hours:168,minutes:10080,seconds:604800,milliseconds:6048e5},days:{hours:24,minutes:1440,seconds:86400,milliseconds:864e5},hours:{minutes:60,seconds:3600,milliseconds:36e5},minutes:{seconds:60,milliseconds:6e4},seconds:{milliseconds:1e3}},t5={years:{quarters:4,months:12,weeks:52,days:365,hours:8760,minutes:525600,seconds:31536e3,milliseconds:31536e6},quarters:{months:3,weeks:13,days:91,hours:2184,minutes:131040,seconds:7862400,milliseconds:78624e5},months:{weeks:4,days:30,hours:720,minutes:43200,seconds:2592e3,milliseconds:2592e6},...t4},t7={years:{quarters:4,months:12,weeks:52.1775,days:365.2425,hours:8765.82,minutes:525949.2,seconds:0x1e18558,milliseconds:31556952e3},quarters:{months:3,weeks:13.044375,days:91.310625,hours:2191.455,minutes:131487.3,seconds:7889238,milliseconds:7889238e3},months:{weeks:30.436875/7,days:30.436875,hours:730.485,minutes:43829.1,seconds:2629746,milliseconds:2629746e3},...t4},t9=["years","quarters","months","weeks","days","hours","minutes","seconds","milliseconds"],t8=t9.slice(0).reverse();function re(e,t,r=!1){return new rs({values:r?t.values:{...e.values,...t.values||{}},loc:e.loc.clone(t.loc),conversionAccuracy:t.conversionAccuracy||e.conversionAccuracy,matrix:t.matrix||e.matrix})}function rt(e,t){var r;let n=null!=(r=t.milliseconds)?r:0;for(let r of t8.slice(1))t[r]&&(n+=t[r]*e[r].milliseconds);return n}function rr(e,t){let r=0>rt(e,t)?-1:1;t9.reduceRight((n,s)=>{if(eW(t[s]))return n;if(n){let i=t[n]*r,a=e[s][n],o=Math.floor(i/a);t[s]+=o*r,t[n]-=o*a*r}return s},null),t9.reduce((r,n)=>{if(eW(t[n]))return r;if(r){let s=t[r]%1;t[r]-=s,t[n]+=s*e[r][n]}return n},null)}function rn(e){let t={};for(let[r,n]of Object.entries(e))0!==n&&(t[r]=n);return t}class rs{constructor(e){const t="longterm"===e.conversionAccuracy;let r=t?t7:t5;e.matrix&&(r=e.matrix),this.values=e.values,this.loc=e.loc||es.create(),this.conversionAccuracy=t?"longterm":"casual",this.invalid=e.invalid||null,this.matrix=r,this.isLuxonDuration=!0}static fromMillis(e,t){return rs.fromObject({milliseconds:e},t)}static fromObject(e,t={}){if(null==e||"object"!=typeof e)throw new d(`Duration.fromObject: argument expected to be an object, got ${null===e?"null":typeof e}`);return new rs({values:e7(e,rs.normalizeUnit),loc:es.fromObject(t),conversionAccuracy:t.conversionAccuracy,matrix:t.matrix})}static fromDurationLike(e){if(eL(e))return rs.fromMillis(e);if(rs.isDuration(e))return e;if("object"==typeof e)return rs.fromObject(e);throw new d(`Unknown duration argument ${e} of type ${typeof e}`)}static fromISO(e,t){let[r]=tw(e,[tV,t_]);return r?rs.fromObject(r,t):rs.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static fromISOTime(e,t){let[r]=tw(e,[tF,t0]);return r?rs.fromObject(r,t):rs.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static invalid(e,t=null){if(!e)throw new d("need to specify a reason the Duration is invalid");let r=e instanceof eM?e:new eM(e,t);if(!ek.throwOnInvalid)return new rs({invalid:r});throw new o(r)}static normalizeUnit(e){let t={year:"years",years:"years",quarter:"quarters",quarters:"quarters",month:"months",months:"months",week:"weeks",weeks:"weeks",day:"days",days:"days",hour:"hours",hours:"hours",minute:"minutes",minutes:"minutes",second:"seconds",seconds:"seconds",millisecond:"milliseconds",milliseconds:"milliseconds"}[e?e.toLowerCase():e];if(!t)throw new u(e);return t}static isDuration(e){return e&&e.isLuxonDuration||!1}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}toFormat(e,t={}){let r={...t,floor:!1!==t.round&&!1!==t.floor};return this.isValid?ty.create(this.loc,r).formatDurationFromString(this,e):t6}toHuman(e={}){if(!this.isValid)return t6;let t=!1!==e.showZeros,r=t9.map(r=>{let n=this.values[r];return eW(n)||0===n&&!t?null:this.loc.numberFormatter({style:"unit",unitDisplay:"long",...e,unit:r.slice(0,-1)}).format(n)}).filter(e=>e);return this.loc.listFormatter({type:"conjunction",style:e.listStyle||"narrow",...e}).format(r)}toObject(){return this.isValid?{...this.values}:{}}toISO(){if(!this.isValid)return null;let e="P";return 0!==this.years&&(e+=this.years+"Y"),(0!==this.months||0!==this.quarters)&&(e+=this.months+3*this.quarters+"M"),0!==this.weeks&&(e+=this.weeks+"W"),0!==this.days&&(e+=this.days+"D"),(0!==this.hours||0!==this.minutes||0!==this.seconds||0!==this.milliseconds)&&(e+="T"),0!==this.hours&&(e+=this.hours+"H"),0!==this.minutes&&(e+=this.minutes+"M"),(0!==this.seconds||0!==this.milliseconds)&&(e+=eB(this.seconds+this.milliseconds/1e3,3)+"S"),"P"===e&&(e+="T0S"),e}toISOTime(e={}){if(!this.isValid)return null;let t=this.toMillis();return t<0||t>=864e5?null:(e={suppressMilliseconds:!1,suppressSeconds:!1,includePrefix:!1,format:"extended",...e,includeOffset:!1},rJ.fromMillis(t,{zone:"UTC"}).toISOTime(e))}toJSON(){return this.toISO()}toString(){return this.toISO()}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`Duration { values: ${JSON.stringify(this.values)} }`:`Duration { Invalid, reason: ${this.invalidReason} }`}toMillis(){return this.isValid?rt(this.matrix,this.values):NaN}valueOf(){return this.toMillis()}plus(e){if(!this.isValid)return this;let t=rs.fromDurationLike(e),r={};for(let e of t9)(ez(t.values,e)||ez(this.values,e))&&(r[e]=t.get(e)+this.get(e));return re(this,{values:r},!0)}minus(e){if(!this.isValid)return this;let t=rs.fromDurationLike(e);return this.plus(t.negate())}mapUnits(e){if(!this.isValid)return this;let t={};for(let r of Object.keys(this.values))t[r]=e5(e(this.values[r],r));return re(this,{values:t},!0)}get(e){return this[rs.normalizeUnit(e)]}set(e){return this.isValid?re(this,{values:{...this.values,...e7(e,rs.normalizeUnit)}}):this}reconfigure({locale:e,numberingSystem:t,conversionAccuracy:r,matrix:n}={}){return re(this,{loc:this.loc.clone({locale:e,numberingSystem:t}),matrix:n,conversionAccuracy:r})}as(e){return this.isValid?this.shiftTo(e).get(e):NaN}normalize(){if(!this.isValid)return this;let e=this.toObject();return rr(this.matrix,e),re(this,{values:e},!0)}rescale(){return this.isValid?re(this,{values:rn(this.normalize().shiftToAll().toObject())},!0):this}shiftTo(...e){let t;if(!this.isValid||0===e.length)return this;e=e.map(e=>rs.normalizeUnit(e));let r={},n={},s=this.toObject();for(let i of t9)if(e.indexOf(i)>=0){t=i;let e=0;for(let t in n)e+=this.matrix[t][i]*n[t],n[t]=0;eL(s[i])&&(e+=s[i]);let a=Math.trunc(e);r[i]=a,n[i]=(1e3*e-1e3*a)/1e3}else eL(s[i])&&(n[i]=s[i]);for(let e in n)0!==n[e]&&(r[t]+=e===t?n[e]:n[e]/this.matrix[t][e]);return rr(this.matrix,r),re(this,{values:r},!0)}shiftToAll(){return this.isValid?this.shiftTo("years","months","weeks","days","hours","minutes","seconds","milliseconds"):this}negate(){if(!this.isValid)return this;let e={};for(let t of Object.keys(this.values))e[t]=0===this.values[t]?0:-this.values[t];return re(this,{values:e},!0)}removeZeros(){return this.isValid?re(this,{values:rn(this.values)},!0):this}get years(){return this.isValid?this.values.years||0:NaN}get quarters(){return this.isValid?this.values.quarters||0:NaN}get months(){return this.isValid?this.values.months||0:NaN}get weeks(){return this.isValid?this.values.weeks||0:NaN}get days(){return this.isValid?this.values.days||0:NaN}get hours(){return this.isValid?this.values.hours||0:NaN}get minutes(){return this.isValid?this.values.minutes||0:NaN}get seconds(){return this.isValid?this.values.seconds||0:NaN}get milliseconds(){return this.isValid?this.values.milliseconds||0:NaN}get isValid(){return null===this.invalid}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}equals(e){if(!this.isValid||!e.isValid||!this.loc.equals(e.loc))return!1;for(let n of t9){var t,r;if(t=this.values[n],r=e.values[n],void 0===t||0===t?void 0!==r&&0!==r:t!==r)return!1}return!0}}let ri="Invalid Interval";class ra{constructor(e){this.s=e.start,this.e=e.end,this.invalid=e.invalid||null,this.isLuxonInterval=!0}static invalid(e,t=null){if(!e)throw new d("need to specify a reason the Interval is invalid");let r=e instanceof eM?e:new eM(e,t);if(!ek.throwOnInvalid)return new ra({invalid:r});throw new a(r)}static fromDateTimes(e,t){var r,n;let s=rG(e),i=rG(t),a=(r=s,n=i,r&&r.isValid?n&&n.isValid?n<r?ra.invalid("end before start",`The end of an interval must be after its start, but you had start=${r.toISO()} and end=${n.toISO()}`):null:ra.invalid("missing or invalid end"):ra.invalid("missing or invalid start"));return null==a?new ra({start:s,end:i}):a}static after(e,t){let r=rs.fromDurationLike(t),n=rG(e);return ra.fromDateTimes(n,n.plus(r))}static before(e,t){let r=rs.fromDurationLike(t),n=rG(e);return ra.fromDateTimes(n.minus(r),n)}static fromISO(e,t){let[r,n]=(e||"").split("/",2);if(r&&n){let e,s,i,a;try{s=(e=rJ.fromISO(r,t)).isValid}catch(e){s=!1}try{a=(i=rJ.fromISO(n,t)).isValid}catch(e){a=!1}if(s&&a)return ra.fromDateTimes(e,i);if(s){let r=rs.fromISO(n,t);if(r.isValid)return ra.after(e,r)}else if(a){let e=rs.fromISO(r,t);if(e.isValid)return ra.before(i,e)}}return ra.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static isInterval(e){return e&&e.isLuxonInterval||!1}get start(){return this.isValid?this.s:null}get end(){return this.isValid?this.e:null}get lastDateTime(){return this.isValid&&this.e?this.e.minus(1):null}get isValid(){return null===this.invalidReason}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}length(e="milliseconds"){return this.isValid?this.toDuration(e).get(e):NaN}count(e="milliseconds",t){let r;if(!this.isValid)return NaN;let n=this.start.startOf(e,t);return Math.floor((r=(r=null!=t&&t.useLocaleWeeks?this.end.reconfigure({locale:n.locale}):this.end).startOf(e,t)).diff(n,e).get(e))+(r.valueOf()!==this.end.valueOf())}hasSame(e){return!!this.isValid&&(this.isEmpty()||this.e.minus(1).hasSame(this.s,e))}isEmpty(){return this.s.valueOf()===this.e.valueOf()}isAfter(e){return!!this.isValid&&this.s>e}isBefore(e){return!!this.isValid&&this.e<=e}contains(e){return!!this.isValid&&this.s<=e&&this.e>e}set({start:e,end:t}={}){return this.isValid?ra.fromDateTimes(e||this.s,t||this.e):this}splitAt(...e){if(!this.isValid)return[];let t=e.map(rG).filter(e=>this.contains(e)).sort((e,t)=>e.toMillis()-t.toMillis()),r=[],{s:n}=this,s=0;for(;n<this.e;){let e=t[s]||this.e,i=+e>+this.e?this.e:e;r.push(ra.fromDateTimes(n,i)),n=i,s+=1}return r}splitBy(e){let t=rs.fromDurationLike(e);if(!this.isValid||!t.isValid||0===t.as("milliseconds"))return[];let{s:r}=this,n=1,s,i=[];for(;r<this.e;){let e=this.start.plus(t.mapUnits(e=>e*n));s=+e>+this.e?this.e:e,i.push(ra.fromDateTimes(r,s)),r=s,n+=1}return i}divideEqually(e){return this.isValid?this.splitBy(this.length()/e).slice(0,e):[]}overlaps(e){return this.e>e.s&&this.s<e.e}abutsStart(e){return!!this.isValid&&+this.e==+e.s}abutsEnd(e){return!!this.isValid&&+e.e==+this.s}engulfs(e){return!!this.isValid&&this.s<=e.s&&this.e>=e.e}equals(e){return!!this.isValid&&!!e.isValid&&this.s.equals(e.s)&&this.e.equals(e.e)}intersection(e){if(!this.isValid)return this;let t=this.s>e.s?this.s:e.s,r=this.e<e.e?this.e:e.e;return t>=r?null:ra.fromDateTimes(t,r)}union(e){if(!this.isValid)return this;let t=this.s<e.s?this.s:e.s,r=this.e>e.e?this.e:e.e;return ra.fromDateTimes(t,r)}static merge(e){let[t,r]=e.sort((e,t)=>e.s-t.s).reduce(([e,t],r)=>t?t.overlaps(r)||t.abutsStart(r)?[e,t.union(r)]:[e.concat([t]),r]:[e,r],[[],null]);return r&&t.push(r),t}static xor(e){let t=null,r=0,n=[],s=e.map(e=>[{time:e.s,type:"s"},{time:e.e,type:"e"}]);for(let e of Array.prototype.concat(...s).sort((e,t)=>e.time-t.time))1===(r+="s"===e.type?1:-1)?t=e.time:(t&&+t!=+e.time&&n.push(ra.fromDateTimes(t,e.time)),t=null);return ra.merge(n)}difference(...e){return ra.xor([this].concat(e)).map(e=>this.intersection(e)).filter(e=>e&&!e.isEmpty())}toString(){return this.isValid?`[${this.s.toISO()} – ${this.e.toISO()})`:ri}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`Interval { start: ${this.s.toISO()}, end: ${this.e.toISO()} }`:`Interval { Invalid, reason: ${this.invalidReason} }`}toLocaleString(e=y,t={}){return this.isValid?ty.create(this.s.loc.clone(t),e).formatInterval(this):ri}toISO(e){return this.isValid?`${this.s.toISO(e)}/${this.e.toISO(e)}`:ri}toISODate(){return this.isValid?`${this.s.toISODate()}/${this.e.toISODate()}`:ri}toISOTime(e){return this.isValid?`${this.s.toISOTime(e)}/${this.e.toISOTime(e)}`:ri}toFormat(e,{separator:t=" – "}={}){return this.isValid?`${this.s.toFormat(e)}${t}${this.e.toFormat(e)}`:ri}toDuration(e,t){return this.isValid?this.e.diff(this.s,e,t):rs.invalid(this.invalidReason)}mapEndpoints(e){return ra.fromDateTimes(e(this.s),e(this.e))}}class ro{static hasDST(e=ek.defaultZone){let t=rJ.now().setZone(e).set({month:12});return!e.isUniversal&&t.offset!==t.set({month:6}).offset}static isValidIANAZone(e){return z.isValidZone(e)}static normalizeZone(e){return el(e,ek.defaultZone)}static getStartOfWeek({locale:e=null,locObj:t=null}={}){return(t||es.create(e)).getStartOfWeek()}static getMinimumDaysInFirstWeek({locale:e=null,locObj:t=null}={}){return(t||es.create(e)).getMinDaysInFirstWeek()}static getWeekendWeekdays({locale:e=null,locObj:t=null}={}){return(t||es.create(e)).getWeekendDays().slice()}static months(e="long",{locale:t=null,numberingSystem:r=null,locObj:n=null,outputCalendar:s="gregory"}={}){return(n||es.create(t,r,s)).months(e)}static monthsFormat(e="long",{locale:t=null,numberingSystem:r=null,locObj:n=null,outputCalendar:s="gregory"}={}){return(n||es.create(t,r,s)).months(e,!0)}static weekdays(e="long",{locale:t=null,numberingSystem:r=null,locObj:n=null}={}){return(n||es.create(t,r,null)).weekdays(e)}static weekdaysFormat(e="long",{locale:t=null,numberingSystem:r=null,locObj:n=null}={}){return(n||es.create(t,r,null)).weekdays(e,!0)}static meridiems({locale:e=null}={}){return es.create(e).meridiems()}static eras(e="short",{locale:t=null}={}){return es.create(t,null,"gregory").eras(e)}static features(){return{relative:eR(),localeWeek:eA()}}}function rl(e,t){let r=e=>e.toUTC(0,{keepLocalTime:!0}).startOf("day").valueOf(),n=r(t)-r(e);return Math.floor(rs.fromMillis(n).as("days"))}function ru(e,t=e=>e){return{regex:e,deser:([e])=>t(function(e){let t=parseInt(e,10);if(!isNaN(t))return t;t="";for(let r=0;r<e.length;r++){let n=e.charCodeAt(r);if(-1!==e[r].search(eu.hanidec))t+=ec.indexOf(e[r]);else for(let e in ed){let[r,s]=ed[e];n>=r&&n<=s&&(t+=n-r)}}return parseInt(t,10)}(e))}}let rd=String.fromCharCode(160),rc=`[ ${rd}]`,rh=RegExp(rc,"g");function rm(e){return e.replace(/\./g,"\\.?").replace(rh,rc)}function rf(e){return e.replace(/\./g,"").replace(rh," ").toLowerCase()}function ry(e,t){return null===e?null:{regex:RegExp(e.map(rm).join("|")),deser:([r])=>e.findIndex(e=>rf(r)===rf(e))+t}}function rg(e,t){return{regex:e,deser:([,e,t])=>e4(e,t),groups:t}}function rp(e){return{regex:e,deser:([e])=>e}}let rv={year:{"2-digit":"yy",numeric:"yyyyy"},month:{numeric:"M","2-digit":"MM",short:"MMM",long:"MMMM"},day:{numeric:"d","2-digit":"dd"},weekday:{short:"EEE",long:"EEEE"},dayperiod:"a",dayPeriod:"a",hour12:{numeric:"h","2-digit":"hh"},hour24:{numeric:"H","2-digit":"HH"},minute:{numeric:"m","2-digit":"mm"},second:{numeric:"s","2-digit":"ss"},timeZoneName:{long:"ZZZZZ",short:"ZZZ"}},rw=null;function rb(e,t){return Array.prototype.concat(...e.map(e=>(function(e,t){if(e.literal)return e;let r=rM(ty.macroTokenToFormatOpts(e.val),t);return null==r||r.includes(void 0)?e:r})(e,t)))}class rO{constructor(e,t){if(this.locale=e,this.format=t,this.tokens=rb(ty.parseFormat(t),e),this.units=this.tokens.map(t=>{let r,n,s,i,a,o,l,u,d,c,h,m,f;return r=em(e),n=em(e,"{2}"),s=em(e,"{3}"),i=em(e,"{4}"),a=em(e,"{6}"),o=em(e,"{1,2}"),l=em(e,"{1,3}"),u=em(e,"{1,6}"),d=em(e,"{1,9}"),c=em(e,"{2,4}"),h=em(e,"{4,6}"),m=e=>({regex:RegExp(e.val.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")),deser:([e])=>e,literal:!0}),(f=(f=>{if(t.literal)return m(f);switch(f.val){case"G":return ry(e.eras("short"),0);case"GG":return ry(e.eras("long"),0);case"y":return ru(u);case"yy":case"kk":return ru(c,e3);case"yyyy":case"kkkk":return ru(i);case"yyyyy":return ru(h);case"yyyyyy":return ru(a);case"M":case"L":case"d":case"H":case"h":case"m":case"q":case"s":case"W":return ru(o);case"MM":case"LL":case"dd":case"HH":case"hh":case"mm":case"qq":case"ss":case"WW":return ru(n);case"MMM":return ry(e.months("short",!0),1);case"MMMM":return ry(e.months("long",!0),1);case"LLL":return ry(e.months("short",!1),1);case"LLLL":return ry(e.months("long",!1),1);case"o":case"S":return ru(l);case"ooo":case"SSS":return ru(s);case"u":return rp(d);case"uu":return rp(o);case"uuu":case"E":case"c":return ru(r);case"a":return ry(e.meridiems(),0);case"EEE":return ry(e.weekdays("short",!1),1);case"EEEE":return ry(e.weekdays("long",!1),1);case"ccc":return ry(e.weekdays("short",!0),1);case"cccc":return ry(e.weekdays("long",!0),1);case"Z":case"ZZ":return rg(RegExp(`([+-]${o.source})(?::(${n.source}))?`),2);case"ZZZ":return rg(RegExp(`([+-]${o.source})(${n.source})?`),2);case"z":return rp(/[a-z_+-/]{1,256}?/i);case" ":return rp(/[^\S\n\r]/);default:return m(f)}})(t)||{invalidReason:"missing Intl.DateTimeFormat.formatToParts support"}).token=t,f}),this.disqualifyingUnit=this.units.find(e=>e.invalidReason),!this.disqualifyingUnit){const[e,t]=function(e){let t=e.map(e=>e.regex).reduce((e,t)=>`${e}(${t.source})`,"");return[`^${t}$`,e]}(this.units);this.regex=RegExp(e,"i"),this.handlers=t}}explainFromTokens(e){if(!this.isValid)return{input:e,tokens:this.tokens,invalidReason:this.invalidReason};{let t,r,[n,s]=function(e,t,r){let n=e.match(t);if(!n)return[n,{}];{let e={},t=1;for(let s in r)if(ez(r,s)){let i=r[s],a=i.groups?i.groups+1:1;!i.literal&&i.token&&(e[i.token.val[0]]=i.deser(n.slice(t,t+a))),t+=a}return[n,e]}}(e,this.regex,this.handlers),[i,a,o]=s?(r=null,eW(s.z)||(r=z.create(s.z)),eW(s.Z)||(r||(r=new ea(s.Z)),t=s.Z),eW(s.q)||(s.M=(s.q-1)*3+1),eW(s.h)||(s.h<12&&1===s.a?s.h+=12:12===s.h&&0===s.a&&(s.h=0)),0===s.G&&s.y&&(s.y=-s.y),eW(s.u)||(s.S=eG(s.u)),[Object.keys(s).reduce((e,t)=>{let r=(e=>{switch(e){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":case"H":return"hour";case"d":return"day";case"o":return"ordinal";case"L":case"M":return"month";case"y":return"year";case"E":case"c":return"weekday";case"W":return"weekNumber";case"k":return"weekYear";case"q":return"quarter";default:return null}})(t);return r&&(e[r]=s[t]),e},{}),r,t]):[null,null,void 0];if(ez(s,"a")&&ez(s,"H"))throw new l("Can't include meridiem when specifying 24-hour format");return{input:e,tokens:this.tokens,regex:this.regex,rawMatches:n,matches:s,result:i,zone:a,specificOffset:o}}}get isValid(){return!this.disqualifyingUnit}get invalidReason(){return this.disqualifyingUnit?this.disqualifyingUnit.invalidReason:null}}function rk(e,t,r){return new rO(e,r).explainFromTokens(t)}function rM(e,t){if(!e)return null;let r=ty.create(t,e).dtFormatter((rw||(rw=rJ.fromMillis(0x16a2e5618e3)),rw)),n=r.formatToParts(),s=r.resolvedOptions();return n.map(t=>(function(e,t,r){let{type:n,value:s}=e;if("literal"===n){let e=/^\s+$/.test(s);return{literal:!e,val:e?" ":s}}let i=t[n],a=n;"hour"===n&&(a=null!=t.hour12?t.hour12?"hour12":"hour24":null!=t.hourCycle?"h11"===t.hourCycle||"h12"===t.hourCycle?"hour12":"hour24":r.hour12?"hour12":"hour24");let o=rv[a];if("object"==typeof o&&(o=o[i]),o)return{literal:!1,val:o}})(t,e,s))}let rS="Invalid DateTime";function rD(e){return new eM("unsupported zone",`the zone "${e.name}" is not supported`)}function rx(e){return null===e.weekData&&(e.weekData=eE(e.c)),e.weekData}function rT(e){return null===e.localWeekData&&(e.localWeekData=eE(e.c,e.loc.getMinDaysInFirstWeek(),e.loc.getStartOfWeek())),e.localWeekData}function rN(e,t){let r={ts:e.ts,zone:e.zone,c:e.c,o:e.o,loc:e.loc,invalid:e.invalid};return new rJ({...r,...t,old:r})}function rC(e,t,r){let n=e-60*t*1e3,s=r.offset(n);if(t===s)return[n,t];n-=(s-t)*6e4;let i=r.offset(n);return s===i?[n,s]:[e-60*Math.min(s,i)*1e3,Math.max(s,i)]}function rE(e,t){let r=new Date(e+=60*t*1e3);return{year:r.getUTCFullYear(),month:r.getUTCMonth()+1,day:r.getUTCDate(),hour:r.getUTCHours(),minute:r.getUTCMinutes(),second:r.getUTCSeconds(),millisecond:r.getUTCMilliseconds()}}function r$(e,t){let r=e.o,n=e.c.year+Math.trunc(t.years),s=e.c.month+Math.trunc(t.months)+3*Math.trunc(t.quarters),i={...e.c,year:n,month:s,day:Math.min(e.c.day,eX(n,s))+Math.trunc(t.days)+7*Math.trunc(t.weeks)},a=rs.fromObject({years:t.years-Math.trunc(t.years),quarters:t.quarters-Math.trunc(t.quarters),months:t.months-Math.trunc(t.months),weeks:t.weeks-Math.trunc(t.weeks),days:t.days-Math.trunc(t.days),hours:t.hours,minutes:t.minutes,seconds:t.seconds,milliseconds:t.milliseconds}).as("milliseconds"),[o,l]=rC(e0(i),r,e.zone);return 0!==a&&(o+=a,l=e.zone.offset(o)),{ts:o,o:l}}function rI(e,t,r,n,s,i){let{setZone:a,zone:o}=r;if((!e||0===Object.keys(e).length)&&!t)return rJ.invalid(new eM("unparsable",`the input "${s}" can't be parsed as ${n}`));{let n=rJ.fromObject(e,{...r,zone:t||o,specificOffset:i});return a?n:n.setZone(o)}}function rj(e,t,r=!0){return e.isValid?ty.create(es.create("en-US"),{allowZ:r,forceSimple:!0}).formatDateTimeFromString(e,t):null}function rF(e,t,r){let n=e.c.year>9999||e.c.year<0,s="";if(n&&e.c.year>=0&&(s+="+"),s+=eq(e.c.year,n?6:4),"year"===r)return s;if(t){if(s+="-",s+=eq(e.c.month),"month"===r)return s;s+="-"}else if(s+=eq(e.c.month),"month"===r)return s;return s+eq(e.c.day)}function rV(e,t,r,n,s,i,a){let o=!r||0!==e.c.millisecond||0!==e.c.second,l="";switch(a){case"day":case"month":case"year":break;default:if(l+=eq(e.c.hour),"hour"===a)break;if(t){if(l+=":",l+=eq(e.c.minute),"minute"===a)break;o&&(l+=":",l+=eq(e.c.second))}else{if(l+=eq(e.c.minute),"minute"===a)break;o&&(l+=eq(e.c.second))}if("second"===a)break;o&&(!n||0!==e.c.millisecond)&&(l+=".",l+=eq(e.c.millisecond,3))}return s&&(e.isOffsetFixed&&0===e.offset&&!i?l+="Z":e.o<0?(l+="-",l+=eq(Math.trunc(-e.o/60)),l+=":",l+=eq(Math.trunc(-e.o%60))):(l+="+",l+=eq(Math.trunc(e.o/60)),l+=":",l+=eq(Math.trunc(e.o%60)))),i&&(l+="["+e.zone.ianaName+"]"),l}let r_={month:1,day:1,hour:0,minute:0,second:0,millisecond:0},rW={weekNumber:1,weekday:1,hour:0,minute:0,second:0,millisecond:0},rL={ordinal:1,hour:0,minute:0,second:0,millisecond:0},rP=["year","month","day","hour","minute","second","millisecond"],rR=["weekYear","weekNumber","weekday","hour","minute","second","millisecond"],rA=["year","ordinal","hour","minute","second","millisecond"];function rU(e){let t={year:"year",years:"year",month:"month",months:"month",day:"day",days:"day",hour:"hour",hours:"hour",minute:"minute",minutes:"minute",quarter:"quarter",quarters:"quarter",second:"second",seconds:"second",millisecond:"millisecond",milliseconds:"millisecond",weekday:"weekday",weekdays:"weekday",weeknumber:"weekNumber",weeksnumber:"weekNumber",weeknumbers:"weekNumber",weekyear:"weekYear",weekyears:"weekYear",ordinal:"ordinal"}[e.toLowerCase()];if(!t)throw new u(e);return t}function rz(e){switch(e.toLowerCase()){case"localweekday":case"localweekdays":return"localWeekday";case"localweeknumber":case"localweeknumbers":return"localWeekNumber";case"localweekyear":case"localweekyears":return"localWeekYear";default:return rU(e)}}function rZ(e,t){let r,s,i=el(t.zone,ek.defaultZone);if(!i.isValid)return rJ.invalid(rD(i));let a=es.fromObject(t);if(eW(e.year))r=ek.now();else{for(let t of rP)eW(e[t])&&(e[t]=r_[t]);let t=eV(e)||e_(e);if(t)return rJ.invalid(t);let a=function(e){if(void 0===n&&(n=ek.now()),"iana"!==e.type)return e.offset(n);let t=e.name,r=rY.get(t);return void 0===r&&(r=e.offset(n),rY.set(t,r)),r}(i);[r,s]=rC(e0(e),a,i)}return new rJ({ts:r,zone:i,loc:a,o:s})}function rH(e,t,r){let n=!!eW(r.round)||r.round,s=eW(r.rounding)?"trunc":r.rounding,i=(e,i)=>(e=eB(e,n||r.calendary?0:2,r.calendary?"round":s),t.loc.clone(r).relFormatter(r).format(e,i)),a=n=>r.calendary?t.hasSame(e,n)?0:t.startOf(n).diff(e.startOf(n),n).get(n):t.diff(e,n).get(n);if(r.unit)return i(a(r.unit),r.unit);for(let e of r.units){let t=a(e);if(Math.abs(t)>=1)return i(t,e)}return i(e>t?-0:0,r.units[r.units.length-1])}function rq(e){let t={},r;return e.length>0&&"object"==typeof e[e.length-1]?(t=e[e.length-1],r=Array.from(e).slice(0,e.length-1)):r=Array.from(e),[t,r]}let rY=new Map;class rJ{constructor(e){const t=e.zone||ek.defaultZone;let r=e.invalid||(Number.isNaN(e.ts)?new eM("invalid input"):null)||(t.isValid?null:rD(t));this.ts=eW(e.ts)?ek.now():e.ts;let n=null,s=null;if(!r)if(e.old&&e.old.ts===this.ts&&e.old.zone.equals(t))[n,s]=[e.old.c,e.old.o];else{const i=eL(e.o)&&!e.old?e.o:t.offset(this.ts);n=(r=Number.isNaN((n=rE(this.ts,i)).year)?new eM("invalid input"):null)?null:n,s=r?null:i}this._zone=t,this.loc=e.loc||es.create(),this.invalid=r,this.weekData=null,this.localWeekData=null,this.c=n,this.o=s,this.isLuxonDateTime=!0}static now(){return new rJ({})}static local(){let[e,t]=rq(arguments),[r,n,s,i,a,o,l]=t;return rZ({year:r,month:n,day:s,hour:i,minute:a,second:o,millisecond:l},e)}static utc(){let[e,t]=rq(arguments),[r,n,s,i,a,o,l]=t;return e.zone=ea.utcInstance,rZ({year:r,month:n,day:s,hour:i,minute:a,second:o,millisecond:l},e)}static fromJSDate(e,t={}){let r="[object Date]"===Object.prototype.toString.call(e)?e.valueOf():NaN;if(Number.isNaN(r))return rJ.invalid("invalid input");let n=el(t.zone,ek.defaultZone);return n.isValid?new rJ({ts:r,zone:n,loc:es.fromObject(t)}):rJ.invalid(rD(n))}static fromMillis(e,t={}){if(eL(e))if(e<-864e13||e>864e13)return rJ.invalid("Timestamp out of range");else return new rJ({ts:e,zone:el(t.zone,ek.defaultZone),loc:es.fromObject(t)});throw new d(`fromMillis requires a numerical input, but received a ${typeof e} with value ${e}`)}static fromSeconds(e,t={}){if(eL(e))return new rJ({ts:1e3*e,zone:el(t.zone,ek.defaultZone),loc:es.fromObject(t)});throw new d("fromSeconds requires a numerical input")}static fromObject(e,t={}){var r;let n,s;e=e||{};let i=el(t.zone,ek.defaultZone);if(!i.isValid)return rJ.invalid(rD(i));let a=es.fromObject(t),o=e7(e,rz),{minDaysInFirstWeek:u,startOfWeek:d}=eF(o,a),c=ek.now(),h=eW(t.specificOffset)?i.offset(c):t.specificOffset,m=!eW(o.ordinal),f=!eW(o.year),y=!eW(o.month)||!eW(o.day),g=f||y,p=o.weekYear||o.weekNumber;if((g||m)&&p)throw new l("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(y&&m)throw new l("Can't mix ordinal dates with month/day");let v=p||o.weekday&&!g,w,b,O=rE(c,h);v?(w=rR,b=rW,O=eE(O,u,d)):m?(w=rA,b=rL,O=eI(O)):(w=rP,b=r_);let k=!1;for(let e of w)eW(o[e])?k?o[e]=b[e]:o[e]=O[e]:k=!0;let M=(v?function(e,t=4,r=1){let n=eP(e.weekYear),s=eH(e.weekNumber,1,e2(e.weekYear,t,r)),i=eH(e.weekday,1,7);return n?s?!i&&ex("weekday",e.weekday):ex("week",e.weekNumber):ex("weekYear",e.weekYear)}(o,u,d):m?(n=eP(o.year),s=eH(o.ordinal,1,eK(o.year)),n?!s&&ex("ordinal",o.ordinal):ex("year",o.year)):eV(o))||e_(o);if(M)return rJ.invalid(M);let[S,D]=(r=v?e$(o,u,d):m?ej(o):o,rC(e0(r),h,i)),x=new rJ({ts:S,zone:i,o:D,loc:a});return o.weekday&&g&&e.weekday!==x.weekday?rJ.invalid("mismatched weekday",`you can't specify both a weekday of ${o.weekday} and a date of ${x.toISO()}`):x.isValid?x:rJ.invalid(x.invalid)}static fromISO(e,t={}){let[r,n]=tw(e,[tq,tB],[tY,tQ],[tJ,tK],[tG,tX]);return rI(r,n,t,"ISO 8601",e)}static fromRFC2822(e,t={}){let[r,n]=tw(e.replace(/\([^()]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").trim(),[tP,tR]);return rI(r,n,t,"RFC 2822",e)}static fromHTTP(e,t={}){let[r,n]=tw(e,[tA,tZ],[tU,tZ],[tz,tH]);return rI(r,n,t,"HTTP",t)}static fromFormat(e,t,r={}){if(eW(e)||eW(t))throw new d("fromFormat requires an input string and a format");let{locale:n=null,numberingSystem:s=null}=r,[i,a,o,l]=function(e,t,r){let{result:n,zone:s,specificOffset:i,invalidReason:a}=rk(e,t,r);return[n,s,i,a]}(es.fromOpts({locale:n,numberingSystem:s,defaultToEN:!0}),e,t);return l?rJ.invalid(l):rI(i,a,r,`format ${t}`,e,o)}static fromString(e,t,r={}){return rJ.fromFormat(e,t,r)}static fromSQL(e,t={}){let[r,n]=tw(e,[t1,tB],[t2,t3]);return rI(r,n,t,"SQL",e)}static invalid(e,t=null){if(!e)throw new d("need to specify a reason the DateTime is invalid");let r=e instanceof eM?e:new eM(e,t);if(!ek.throwOnInvalid)return new rJ({invalid:r});throw new i(r)}static isDateTime(e){return e&&e.isLuxonDateTime||!1}static parseFormatForOpts(e,t={}){let r=rM(e,es.fromObject(t));return r?r.map(e=>e?e.val:null).join(""):null}static expandFormat(e,t={}){return rb(ty.parseFormat(e),es.fromObject(t)).map(e=>e.val).join("")}static resetCache(){n=void 0,rY.clear()}get(e){return this[e]}get isValid(){return null===this.invalid}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}get outputCalendar(){return this.isValid?this.loc.outputCalendar:null}get zone(){return this._zone}get zoneName(){return this.isValid?this.zone.name:null}get year(){return this.isValid?this.c.year:NaN}get quarter(){return this.isValid?Math.ceil(this.c.month/3):NaN}get month(){return this.isValid?this.c.month:NaN}get day(){return this.isValid?this.c.day:NaN}get hour(){return this.isValid?this.c.hour:NaN}get minute(){return this.isValid?this.c.minute:NaN}get second(){return this.isValid?this.c.second:NaN}get millisecond(){return this.isValid?this.c.millisecond:NaN}get weekYear(){return this.isValid?rx(this).weekYear:NaN}get weekNumber(){return this.isValid?rx(this).weekNumber:NaN}get weekday(){return this.isValid?rx(this).weekday:NaN}get isWeekend(){return this.isValid&&this.loc.getWeekendDays().includes(this.weekday)}get localWeekday(){return this.isValid?rT(this).weekday:NaN}get localWeekNumber(){return this.isValid?rT(this).weekNumber:NaN}get localWeekYear(){return this.isValid?rT(this).weekYear:NaN}get ordinal(){return this.isValid?eI(this.c).ordinal:NaN}get monthShort(){return this.isValid?ro.months("short",{locObj:this.loc})[this.month-1]:null}get monthLong(){return this.isValid?ro.months("long",{locObj:this.loc})[this.month-1]:null}get weekdayShort(){return this.isValid?ro.weekdays("short",{locObj:this.loc})[this.weekday-1]:null}get weekdayLong(){return this.isValid?ro.weekdays("long",{locObj:this.loc})[this.weekday-1]:null}get offset(){return this.isValid?+this.o:NaN}get offsetNameShort(){return this.isValid?this.zone.offsetName(this.ts,{format:"short",locale:this.locale}):null}get offsetNameLong(){return this.isValid?this.zone.offsetName(this.ts,{format:"long",locale:this.locale}):null}get isOffsetFixed(){return this.isValid?this.zone.isUniversal:null}get isInDST(){return!this.isOffsetFixed&&(this.offset>this.set({month:1,day:1}).offset||this.offset>this.set({month:5}).offset)}getPossibleOffsets(){if(!this.isValid||this.isOffsetFixed)return[this];let e=e0(this.c),t=this.zone.offset(e-864e5),r=this.zone.offset(e+864e5),n=this.zone.offset(e-6e4*t),s=this.zone.offset(e-6e4*r);if(n===s)return[this];let i=e-6e4*n,a=e-6e4*s,o=rE(i,n),l=rE(a,s);return o.hour===l.hour&&o.minute===l.minute&&o.second===l.second&&o.millisecond===l.millisecond?[rN(this,{ts:i}),rN(this,{ts:a})]:[this]}get isInLeapYear(){return eQ(this.year)}get daysInMonth(){return eX(this.year,this.month)}get daysInYear(){return this.isValid?eK(this.year):NaN}get weeksInWeekYear(){return this.isValid?e2(this.weekYear):NaN}get weeksInLocalWeekYear(){return this.isValid?e2(this.localWeekYear,this.loc.getMinDaysInFirstWeek(),this.loc.getStartOfWeek()):NaN}resolvedLocaleOptions(e={}){let{locale:t,numberingSystem:r,calendar:n}=ty.create(this.loc.clone(e),e).resolvedOptions(this);return{locale:t,numberingSystem:r,outputCalendar:n}}toUTC(e=0,t={}){return this.setZone(ea.instance(e),t)}toLocal(){return this.setZone(ek.defaultZone)}setZone(e,{keepLocalTime:t=!1,keepCalendarTime:r=!1}={}){if((e=el(e,ek.defaultZone)).equals(this.zone))return this;{if(!e.isValid)return rJ.invalid(rD(e));let s=this.ts;if(t||r){var n;let t=e.offset(this.ts),r=this.toObject();[s]=(n=e,rC(e0(r),t,n))}return rN(this,{ts:s,zone:e})}}reconfigure({locale:e,numberingSystem:t,outputCalendar:r}={}){return rN(this,{loc:this.loc.clone({locale:e,numberingSystem:t,outputCalendar:r})})}setLocale(e){return this.reconfigure({locale:e})}set(e){var t,r,n;let s;if(!this.isValid)return this;let i=e7(e,rz),{minDaysInFirstWeek:a,startOfWeek:o}=eF(i,this.loc),u=!eW(i.weekYear)||!eW(i.weekNumber)||!eW(i.weekday),d=!eW(i.ordinal),c=!eW(i.year),h=!eW(i.month)||!eW(i.day),m=i.weekYear||i.weekNumber;if((c||h||d)&&m)throw new l("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(h&&d)throw new l("Can't mix ordinal dates with month/day");u?s=e$({...eE(this.c,a,o),...i},a,o):eW(i.ordinal)?(s={...this.toObject(),...i},eW(i.day)&&(s.day=Math.min(eX(s.year,s.month),s.day))):s=ej({...eI(this.c),...i});let[f,y]=(t=s,r=this.o,n=this.zone,rC(e0(t),r,n));return rN(this,{ts:f,o:y})}plus(e){return this.isValid?rN(this,r$(this,rs.fromDurationLike(e))):this}minus(e){return this.isValid?rN(this,r$(this,rs.fromDurationLike(e).negate())):this}startOf(e,{useLocaleWeeks:t=!1}={}){if(!this.isValid)return this;let r={},n=rs.normalizeUnit(e);switch(n){case"years":r.month=1;case"quarters":case"months":r.day=1;case"weeks":case"days":r.hour=0;case"hours":r.minute=0;case"minutes":r.second=0;case"seconds":r.millisecond=0}if("weeks"===n)if(t){let e=this.loc.getStartOfWeek(),{weekday:t}=this;t<e&&(r.weekNumber=this.weekNumber-1),r.weekday=e}else r.weekday=1;return"quarters"===n&&(r.month=(Math.ceil(this.month/3)-1)*3+1),this.set(r)}endOf(e,t){return this.isValid?this.plus({[e]:1}).startOf(e,t).minus(1):this}toFormat(e,t={}){return this.isValid?ty.create(this.loc.redefaultToEN(t)).formatDateTimeFromString(this,e):rS}toLocaleString(e=y,t={}){return this.isValid?ty.create(this.loc.clone(t),e).formatDateTime(this):rS}toLocaleParts(e={}){return this.isValid?ty.create(this.loc.clone(e),e).formatDateTimeParts(this):[]}toISO({format:e="extended",suppressSeconds:t=!1,suppressMilliseconds:r=!1,includeOffset:n=!0,extendedZone:s=!1,precision:i="milliseconds"}={}){if(!this.isValid)return null;i=rU(i);let a="extended"===e,o=rF(this,a,i);return rP.indexOf(i)>=3&&(o+="T"),o+=rV(this,a,t,r,n,s,i)}toISODate({format:e="extended",precision:t="day"}={}){return this.isValid?rF(this,"extended"===e,rU(t)):null}toISOWeekDate(){return rj(this,"kkkk-'W'WW-c")}toISOTime({suppressMilliseconds:e=!1,suppressSeconds:t=!1,includeOffset:r=!0,includePrefix:n=!1,extendedZone:s=!1,format:i="extended",precision:a="milliseconds"}={}){return this.isValid?(a=rU(a),(n&&rP.indexOf(a)>=3?"T":"")+rV(this,"extended"===i,t,e,r,s,a)):null}toRFC2822(){return rj(this,"EEE, dd LLL yyyy HH:mm:ss ZZZ",!1)}toHTTP(){return rj(this.toUTC(),"EEE, dd LLL yyyy HH:mm:ss 'GMT'")}toSQLDate(){return this.isValid?rF(this,!0):null}toSQLTime({includeOffset:e=!0,includeZone:t=!1,includeOffsetSpace:r=!0}={}){let n="HH:mm:ss.SSS";return(t||e)&&(r&&(n+=" "),t?n+="z":e&&(n+="ZZ")),rj(this,n,!0)}toSQL(e={}){return this.isValid?`${this.toSQLDate()} ${this.toSQLTime(e)}`:null}toString(){return this.isValid?this.toISO():rS}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`DateTime { ts: ${this.toISO()}, zone: ${this.zone.name}, locale: ${this.locale} }`:`DateTime { Invalid, reason: ${this.invalidReason} }`}valueOf(){return this.toMillis()}toMillis(){return this.isValid?this.ts:NaN}toSeconds(){return this.isValid?this.ts/1e3:NaN}toUnixInteger(){return this.isValid?Math.floor(this.ts/1e3):NaN}toJSON(){return this.toISO()}toBSON(){return this.toJSDate()}toObject(e={}){if(!this.isValid)return{};let t={...this.c};return e.includeConfig&&(t.outputCalendar=this.outputCalendar,t.numberingSystem=this.loc.numberingSystem,t.locale=this.loc.locale),t}toJSDate(){return new Date(this.isValid?this.ts:NaN)}diff(e,t="milliseconds",r={}){if(!this.isValid||!e.isValid)return rs.invalid("created by diffing an invalid DateTime");let n={locale:this.locale,numberingSystem:this.numberingSystem,...r},s=(Array.isArray(t)?t:[t]).map(rs.normalizeUnit),i=e.valueOf()>this.valueOf(),a=function(e,t,r,n){let[s,i,a,o]=function(e,t,r){let n,s,i={},a=e;for(let[o,l]of[["years",(e,t)=>t.year-e.year],["quarters",(e,t)=>t.quarter-e.quarter+(t.year-e.year)*4],["months",(e,t)=>t.month-e.month+(t.year-e.year)*12],["weeks",(e,t)=>{let r=rl(e,t);return(r-r%7)/7}],["days",rl]])r.indexOf(o)>=0&&(n=o,i[o]=l(e,t),(s=a.plus(i))>t?(i[o]--,(e=a.plus(i))>t&&(s=e,i[o]--,e=a.plus(i))):e=s);return[e,i,s,n]}(e,t,r),l=t-s,u=r.filter(e=>["hours","minutes","seconds","milliseconds"].indexOf(e)>=0);0===u.length&&(a<t&&(a=s.plus({[o]:1})),a!==s&&(i[o]=(i[o]||0)+l/(a-s)));let d=rs.fromObject(i,n);return u.length>0?rs.fromMillis(l,n).shiftTo(...u).plus(d):d}(i?this:e,i?e:this,s,n);return i?a.negate():a}diffNow(e="milliseconds",t={}){return this.diff(rJ.now(),e,t)}until(e){return this.isValid?ra.fromDateTimes(this,e):this}hasSame(e,t,r){if(!this.isValid)return!1;let n=e.valueOf(),s=this.setZone(e.zone,{keepLocalTime:!0});return s.startOf(t,r)<=n&&n<=s.endOf(t,r)}equals(e){return this.isValid&&e.isValid&&this.valueOf()===e.valueOf()&&this.zone.equals(e.zone)&&this.loc.equals(e.loc)}toRelative(e={}){if(!this.isValid)return null;let t=e.base||rJ.fromObject({},{zone:this.zone}),r=e.padding?this<t?-e.padding:e.padding:0,n=["years","months","days","hours","minutes","seconds"],s=e.unit;return Array.isArray(e.unit)&&(n=e.unit,s=void 0),rH(t,this.plus(r),{...e,numeric:"always",units:n,unit:s})}toRelativeCalendar(e={}){return this.isValid?rH(e.base||rJ.fromObject({},{zone:this.zone}),this,{...e,numeric:"auto",units:["years","months","days"],calendary:!0}):null}static min(...e){if(!e.every(rJ.isDateTime))throw new d("min requires all arguments be DateTimes");return eU(e,e=>e.valueOf(),Math.min)}static max(...e){if(!e.every(rJ.isDateTime))throw new d("max requires all arguments be DateTimes");return eU(e,e=>e.valueOf(),Math.max)}static fromFormatExplain(e,t,r={}){let{locale:n=null,numberingSystem:s=null}=r;return rk(es.fromOpts({locale:n,numberingSystem:s,defaultToEN:!0}),e,t)}static fromStringExplain(e,t,r={}){return rJ.fromFormatExplain(e,t,r)}static buildFormatParser(e,t={}){let{locale:r=null,numberingSystem:n=null}=t;return new rO(es.fromOpts({locale:r,numberingSystem:n,defaultToEN:!0}),e)}static fromFormatParser(e,t,r={}){if(eW(e)||eW(t))throw new d("fromFormatParser requires an input string and a format parser");let{locale:n=null,numberingSystem:s=null}=r,i=es.fromOpts({locale:n,numberingSystem:s,defaultToEN:!0});if(!i.equals(t.locale))throw new d(`fromFormatParser called with a locale of ${i}, but the format parser was created for ${t.locale}`);let{result:a,zone:o,specificOffset:l,invalidReason:u}=t.explainFromTokens(e);return u?rJ.invalid(u):rI(a,o,r,`format ${t.format}`,e,l)}static get DATE_SHORT(){return y}static get DATE_MED(){return g}static get DATE_MED_WITH_WEEKDAY(){return p}static get DATE_FULL(){return v}static get DATE_HUGE(){return w}static get TIME_SIMPLE(){return b}static get TIME_WITH_SECONDS(){return O}static get TIME_WITH_SHORT_OFFSET(){return k}static get TIME_WITH_LONG_OFFSET(){return M}static get TIME_24_SIMPLE(){return S}static get TIME_24_WITH_SECONDS(){return D}static get TIME_24_WITH_SHORT_OFFSET(){return x}static get TIME_24_WITH_LONG_OFFSET(){return T}static get DATETIME_SHORT(){return N}static get DATETIME_SHORT_WITH_SECONDS(){return C}static get DATETIME_MED(){return E}static get DATETIME_MED_WITH_SECONDS(){return $}static get DATETIME_MED_WITH_WEEKDAY(){return I}static get DATETIME_FULL(){return j}static get DATETIME_FULL_WITH_SECONDS(){return F}static get DATETIME_HUGE(){return V}static get DATETIME_HUGE_WITH_SECONDS(){return _}}function rG(e){if(rJ.isDateTime(e))return e;if(e&&e.valueOf&&eL(e.valueOf()))return rJ.fromJSDate(e);if(e&&"object"==typeof e)return rJ.fromObject(e);throw new d(`Unknown datetime argument: ${e}, of type ${typeof e}`)}r.DateTime=rJ,r.Duration=rs,r.FixedOffsetZone=ea,r.IANAZone=z,r.Info=ro,r.Interval=ra,r.InvalidZone=eo,r.Settings=ek,r.SystemZone=P,r.VERSION="3.7.2",r.Zone=W},697554,(e,t,r)=>{"use strict";var n,s,i,a;Object.defineProperty(r,"__esModule",{value:!0}),r.CronDate=r.DAYS_IN_MONTH=r.DateMathOp=r.TimeUnit=void 0;let o=e.r(737689);(i=n||(r.TimeUnit=n={})).Second="Second",i.Minute="Minute",i.Hour="Hour",i.Day="Day",i.Month="Month",i.Year="Year",(a=s||(r.DateMathOp=s={})).Add="Add",a.Subtract="Subtract",r.DAYS_IN_MONTH=Object.freeze([31,29,31,30,31,30,31,31,30,31,30,31]);class l{#i;#a=null;#o=null;#l={add:{[n.Year]:this.addYear.bind(this),[n.Month]:this.addMonth.bind(this),[n.Day]:this.addDay.bind(this),[n.Hour]:this.addHour.bind(this),[n.Minute]:this.addMinute.bind(this),[n.Second]:this.addSecond.bind(this)},subtract:{[n.Year]:this.subtractYear.bind(this),[n.Month]:this.subtractMonth.bind(this),[n.Day]:this.subtractDay.bind(this),[n.Hour]:this.subtractHour.bind(this),[n.Minute]:this.subtractMinute.bind(this),[n.Second]:this.subtractSecond.bind(this)}};constructor(e,t){const r={zone:t};if(e?e instanceof l?(this.#i=e.#i,this.#a=e.#a,this.#o=e.#o):e instanceof Date?this.#i=o.DateTime.fromJSDate(e,r):"number"==typeof e?this.#i=o.DateTime.fromMillis(e,r):(this.#i=o.DateTime.fromISO(e,r),this.#i.isValid||(this.#i=o.DateTime.fromRFC2822(e,r)),this.#i.isValid||(this.#i=o.DateTime.fromSQL(e,r)),this.#i.isValid||(this.#i=o.DateTime.fromFormat(e,"EEE, d MMM yyyy HH:mm:ss",r))):this.#i=o.DateTime.local(),!this.#i.isValid)throw Error(`CronDate: unhandled timestamp: ${e}`);t&&t!==this.#i.zoneName&&(this.#i=this.#i.setZone(t))}static #u(e){return e%4==0&&e%100!=0||e%400==0}get dstStart(){return this.#a}set dstStart(e){this.#a=e}get dstEnd(){return this.#o}set dstEnd(e){this.#o=e}addYear(){this.#i=this.#i.plus({years:1})}addMonth(){this.#i=this.#i.plus({months:1}).startOf("month")}addDay(){this.#i=this.#i.plus({days:1}).startOf("day")}addHour(){this.#i=this.#i.plus({hours:1}).startOf("hour")}addMinute(){this.#i=this.#i.plus({minutes:1}).startOf("minute")}addSecond(){this.#i=this.#i.plus({seconds:1})}subtractYear(){this.#i=this.#i.minus({years:1})}subtractMonth(){this.#i=this.#i.minus({months:1}).endOf("month").startOf("second")}subtractDay(){this.#i=this.#i.minus({days:1}).endOf("day").startOf("second")}subtractHour(){this.#i=this.#i.minus({hours:1}).endOf("hour").startOf("second")}subtractMinute(){this.#i=this.#i.minus({minutes:1}).endOf("minute").startOf("second")}subtractSecond(){this.#i=this.#i.minus({seconds:1})}addUnit(e){this.#l.add[e]()}subtractUnit(e){this.#l.subtract[e]()}invokeDateOperation(e,t){if(e===s.Add)return void this.addUnit(t);if(e===s.Subtract)return void this.subtractUnit(t);throw Error(`Invalid verb: ${e}`)}getDate(){return this.#i.day}getFullYear(){return this.#i.year}getDay(){let e=this.#i.weekday;return 7===e?0:e}getMonth(){return this.#i.month-1}getHours(){return this.#i.hour}getMinutes(){return this.#i.minute}getSeconds(){return this.#i.second}getMilliseconds(){return this.#i.millisecond}getUTCOffset(){return this.#i.offset}setStartOfDay(){this.#i=this.#i.startOf("day")}setEndOfDay(){this.#i=this.#i.endOf("day")}getTime(){return this.#i.valueOf()}getUTCDate(){return this.#d().day}getUTCFullYear(){return this.#d().year}getUTCDay(){let e=this.#d().weekday;return 7===e?0:e}getUTCMonth(){return this.#d().month-1}getUTCHours(){return this.#d().hour}getUTCMinutes(){return this.#d().minute}getUTCSeconds(){return this.#d().second}toISOString(){return this.#i.toUTC().toISO()}toJSON(){return this.#i.toJSON()}setDate(e){this.#i=this.#i.set({day:e})}setFullYear(e){this.#i=this.#i.set({year:e})}setDay(e){this.#i=this.#i.set({weekday:e})}setMonth(e){this.#i=this.#i.set({month:e+1})}setHours(e){this.#i=this.#i.set({hour:e})}setMinutes(e){this.#i=this.#i.set({minute:e})}setSeconds(e){this.#i=this.#i.set({second:e})}setMilliseconds(e){this.#i=this.#i.set({millisecond:e})}toString(){return this.toDate().toString()}toDate(){return this.#i.toJSDate()}isLastDayOfMonth(){let{day:e,month:t}=this.#i;if(2===t){let n=l.#u(this.#i.year);return e===r.DAYS_IN_MONTH[t-1]-!n}return e===r.DAYS_IN_MONTH[t-1]}isLastWeekdayOfMonth(){let{day:e,month:t}=this.#i;return e>(2===t?r.DAYS_IN_MONTH[t-1]-!l.#u(this.#i.year):r.DAYS_IN_MONTH[t-1])-7}applyDateOperation(e,t,r){if(t===n.Month||t===n.Day)return void this.invokeDateOperation(e,t);let s=this.getHours();this.invokeDateOperation(e,t);let i=this.getHours(),a=i-s;2===a?24!==r&&(this.dstStart=i):0===a&&0===this.getMinutes()&&0===this.getSeconds()&&24!==r&&(this.dstEnd=i)}#d(){return this.#i.toUTC()}}r.CronDate=l,r.default=l},885830,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.CronMonth=void 0;let n=e.r(697554),s=e.r(146478),i=Object.freeze([]);class a extends s.CronField{static get min(){return 1}static get max(){return 12}static get chars(){return i}static get daysInMonth(){return n.DAYS_IN_MONTH}constructor(e,t){super(e,t),this.validate()}get values(){return super.values}}r.CronMonth=a},52997,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.CronSecond=void 0;let n=e.r(146478),s=Object.freeze([]);class i extends n.CronField{static get min(){return 0}static get max(){return 59}static get chars(){return s}constructor(e,t){super(e,t),this.validate()}get values(){return super.values}}r.CronSecond=i},976495,(e,t,r)=>{"use strict";var n=e.e&&e.e.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),s=e.e&&e.e.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(r,"__esModule",{value:!0}),s(e.r(873022),r),s(e.r(783636),r),s(e.r(268638),r),s(e.r(146478),r),s(e.r(559039),r),s(e.r(369031),r),s(e.r(885830),r),s(e.r(52997),r)},596143,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.CronFieldCollection=void 0;let n=e.r(976495);class s{#c;#h;#m;#f;#y;#g;static from(e,t){return new s({second:this.resolveField(n.CronSecond,e.second,t.second),minute:this.resolveField(n.CronMinute,e.minute,t.minute),hour:this.resolveField(n.CronHour,e.hour,t.hour),dayOfMonth:this.resolveField(n.CronDayOfMonth,e.dayOfMonth,t.dayOfMonth),month:this.resolveField(n.CronMonth,e.month,t.month),dayOfWeek:this.resolveField(n.CronDayOfWeek,e.dayOfWeek,t.dayOfWeek)})}static resolveField(e,t,r){return r?r instanceof n.CronField?r:new e(r):t}constructor({second:e,minute:t,hour:r,dayOfMonth:s,month:i,dayOfWeek:a}){if(!e)throw Error("Validation error, Field second is missing");if(!t)throw Error("Validation error, Field minute is missing");if(!r)throw Error("Validation error, Field hour is missing");if(!s)throw Error("Validation error, Field dayOfMonth is missing");if(!i)throw Error("Validation error, Field month is missing");if(!a)throw Error("Validation error, Field dayOfWeek is missing");if(1===i.values.length&&!s.hasLastChar&&!(parseInt(s.values[0],10)<=n.CronMonth.daysInMonth[i.values[0]-1]))throw Error("Invalid explicit day of month definition");this.#c=e,this.#h=t,this.#m=r,this.#y=i,this.#g=a,this.#f=s}get second(){return this.#c}get minute(){return this.#h}get hour(){return this.#m}get dayOfMonth(){return this.#f}get month(){return this.#y}get dayOfWeek(){return this.#g}static compactField(e){let t;if(0===e.length)return[];let r=[];return e.forEach((e,n,s)=>{if(void 0===t){t={start:e,count:1};return}let i=s[n-1]||t.start,a=s[n+1];if("L"===e||"W"===e){r.push(t),r.push({start:e,count:1}),t=void 0;return}if(void 0===t.step&&void 0!==a){let r=e-i;if(r<=a-e){t={...t,count:2,end:e,step:r};return}t.step=1}e-(t.end??0)===t.step?(t.count++,t.end=e):(1===t.count?r.push({start:t.start,count:1}):2===t.count?(r.push({start:t.start,count:1}),r.push({start:t.end??i,count:1})):r.push(t),t={start:e,count:1})}),t&&r.push(t),r}static #p(e,t,r){let n=t.step;return n?1===n&&t.start===e.min&&t.end&&t.end>=r?e.hasQuestionMarkChar?"?":"*":1!==n&&t.start===e.min&&t.end&&t.end>=r-n+1?`*/${n}`:null:null}static #v(e,t){let r=e.step;if(1===r)return`${e.start}-${e.end}`;let n=0===e.start?e.count-1:e.count;if(!r)throw Error("Unexpected range step");if(!e.end)throw Error("Unexpected range end");if(r*n>e.end){if("number"!=typeof e.start)throw Error("Unexpected range start");return Array.from({length:e.end-e.start+1},(t,n)=>{if("number"!=typeof e.start)throw Error("Unexpected range start");return n%r==0?e.start+n:null}).filter(e=>null!==e).join(",")}return e.end===t-r+1?`${e.start}/${r}`:`${e.start}-${e.end}/${r}`}stringifyField(e){let t=e.max,r=e.values;if(e instanceof n.CronDayOfWeek){t=6;let e=this.#g.values;r=7===e[e.length-1]?e.slice(0,-1):e}e instanceof n.CronDayOfMonth&&(t=1===this.#y.values.length?n.CronMonth.daysInMonth[this.#y.values[0]-1]:e.max);let i=s.compactField(r);if(1===i.length){let r=s.#p(e,i[0],t);if(r)return r}return i.map(r=>{let i=1===r.count?r.start.toString():s.#v(r,t);return e instanceof n.CronDayOfWeek&&e.nthDay>0?`${i}#${e.nthDay}`:i}).join(",")}stringify(e=!1){let t=[];return e&&t.push(this.stringifyField(this.#c)),t.push(this.stringifyField(this.#h),this.stringifyField(this.#m),this.stringifyField(this.#f),this.stringifyField(this.#y),this.stringifyField(this.#g)),t.join(" ")}serialize(){return{second:this.#c.serialize(),minute:this.#h.serialize(),hour:this.#m.serialize(),dayOfMonth:this.#f.serialize(),month:this.#y.serialize(),dayOfWeek:this.#g.serialize()}}}r.CronFieldCollection=s},995565,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.CronExpression=r.LOOPS_LIMIT_EXCEEDED_ERROR_MESSAGE=r.TIME_SPAN_OUT_OF_BOUNDS_ERROR_MESSAGE=void 0;let n=e.r(697554);r.TIME_SPAN_OUT_OF_BOUNDS_ERROR_MESSAGE="Out of the time span range",r.LOOPS_LIMIT_EXCEEDED_ERROR_MESSAGE="Invalid expression, loop limit exceeded";class s{#w;#b;#O;#k;#M;#S;#D=null;#x=!1;constructor(e,t){this.#w=t,this.#b=t.tz,this.#k=t.startDate?new n.CronDate(t.startDate,this.#b):null,this.#M=t.endDate?new n.CronDate(t.endDate,this.#b):null;let r=t.currentDate??t.startDate;if(r){const e=new n.CronDate(r,this.#b);this.#k&&e.getTime()<this.#k.getTime()?r=this.#k:this.#M&&e.getTime()>this.#M.getTime()&&(r=this.#M)}this.#O=new n.CronDate(r,this.#b),this.#S=e}get fields(){return this.#S}static fieldsToExpression(e,t){return new s(e,t||{})}static #T(e,t){return t.some(t=>t===e)}#N(e,t){return e[t?e.length-1:0]}#C(e){let t=`${e.getFullYear()}-${e.getMonth()+1}-${e.getDate()}`;if(this.#D===t)return this.#x;let r=new n.CronDate(e);r.setStartOfDay();let s=new n.CronDate(e);return s.setEndOfDay(),this.#D=t,this.#x=r.getUTCOffset()!==s.getUTCOffset(),this.#x}#E(e,t,r){let s=this.#S.second.values,i=e.getSeconds(),a=this.#S.second.findNearestValue(i,r);null!==a?e.setSeconds(a):(e.applyDateOperation(t,n.TimeUnit.Minute,this.#S.hour.values.length),e.setSeconds(this.#N(s,r)))}#$(e,t,r){let s=this.#S.minute.values,i=this.#S.second.values,a=e.getMinutes(),o=this.#S.minute.findNearestValue(a,r);if(null!==o){e.setMinutes(o),e.setSeconds(this.#N(i,r));return}e.applyDateOperation(t,n.TimeUnit.Hour,this.#S.hour.values.length),e.setMinutes(this.#N(s,r)),e.setSeconds(this.#N(i,r))}static #I(e,t){let r=t.isLastWeekdayOfMonth();return e.some(e=>{let n=parseInt(e.toString().charAt(0),10)%7;if(Number.isNaN(n))throw Error(`Invalid last weekday of the month expression: ${e}`);return t.getDay()===n&&r})}next(){return this.#j()}prev(){return this.#j(!0)}hasNext(){let e=this.#O;try{return this.#j(),!0}catch{return!1}finally{this.#O=e}}hasPrev(){let e=this.#O;try{return this.#j(!0),!0}catch{return!1}finally{this.#O=e}}take(e){let t=[];if(e>=0)for(let r=0;r<e;r++)try{t.push(this.next())}catch{break}else for(let r=0;r>e;r--)try{t.push(this.prev())}catch{break}return t}reset(e){this.#O=new n.CronDate(e||this.#w.currentDate)}stringify(e=!1){return this.#S.stringify(e)}includesDate(e){let{second:t,minute:r,hour:s,month:i}=this.#S,a=new n.CronDate(e,this.#b);return!!t.values.includes(a.getSeconds())&&!!r.values.includes(a.getMinutes())&&!!s.values.includes(a.getHours())&&!!i.values.includes(a.getMonth()+1)&&!!this.#F(a)&&(!(this.#S.dayOfWeek.nthDay>0)||Math.ceil(a.getDate()/7)===this.#S.dayOfWeek.nthDay)&&!0}toString(){return this.#w.expression||this.stringify(!0)}#F(e){let t=this.#S.dayOfMonth.isWildcard,r=this.#S.dayOfWeek.isWildcard,n=!r,i=s.#T(e.getDate(),this.#S.dayOfMonth.values)||this.#S.dayOfMonth.hasLastChar&&e.isLastDayOfMonth(),a=s.#T(e.getDay(),this.#S.dayOfWeek.values)||this.#S.dayOfWeek.hasLastChar&&s.#I(this.#S.dayOfWeek.values,e);return!t&&!!n&&(!!i||!!a)||!!i&&!n||!!t&&!r&&!!a}#V(e,t,r){let i=this.#S.hour.values,a=e.getHours(),o=s.#T(a,i),l=e.dstStart===a,u=e.dstEnd===a;if(l)return!!s.#T(a-1,i)||(e.invokeDateOperation(t,n.TimeUnit.Hour),!1);if(u&&!r)return e.dstEnd=null,e.applyDateOperation(n.DateMathOp.Add,n.TimeUnit.Hour,i.length),!1;if(o)return!0;e.dstStart=null;let d=this.#S.hour.findNearestValue(a,r);if(null===d)return e.applyDateOperation(t,n.TimeUnit.Day,i.length),!1;if(this.#C(e)){let s=r?a-d:d-a;for(let r=0;r<s;r++)e.applyDateOperation(t,n.TimeUnit.Hour,i.length)}else e.setHours(d);return e.setMinutes(this.#N(this.#S.minute.values,r)),e.setSeconds(this.#N(this.#S.second.values,r)),!1}#_(e){if(!this.#k&&!this.#M)return;let t=e.getTime();if(this.#k&&t<this.#k.getTime()||this.#M&&t>this.#M.getTime())throw Error(r.TIME_SPAN_OUT_OF_BOUNDS_ERROR_MESSAGE)}#j(e=!1){let t=e?n.DateMathOp.Subtract:n.DateMathOp.Add,i=new n.CronDate(this.#O),a=i.getTime(),o=0;for(;++o<1e4;){if(this.#_(i),!this.#F(i)||!(this.#S.dayOfWeek.nthDay<=0||Math.ceil(i.getDate()/7)===this.#S.dayOfWeek.nthDay)){i.applyDateOperation(t,n.TimeUnit.Day,this.#S.hour.values.length);continue}if(!s.#T(i.getMonth()+1,this.#S.month.values)){i.applyDateOperation(t,n.TimeUnit.Month,this.#S.hour.values.length);continue}if(this.#V(i,t,e)){if(!s.#T(i.getMinutes(),this.#S.minute.values)){this.#$(i,t,e);continue}if(!s.#T(i.getSeconds(),this.#S.second.values)){this.#E(i,t,e);continue}if(a===i.getTime()){("Add"===t||0===i.getMilliseconds())&&i.applyDateOperation(t,n.TimeUnit.Second,this.#S.hour.values.length);continue}break}}if(o>1e4)throw Error(r.LOOPS_LIMIT_EXCEEDED_ERROR_MESSAGE);return 0!==i.getMilliseconds()&&i.setMilliseconds(0),this.#O=i,i}[Symbol.iterator](){return{next:()=>({value:this.#j(),done:!this.hasNext()})}}}r.CronExpression=s,r.default=s},409296,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.seededRandom=function(e){var t;return t=e?(function(e){let t=0x811c9dc5;for(let r=0;r<e.length;r++)t^=e.charCodeAt(r),t=Math.imul(t,0x1000193);return()=>t>>>0})(e)():Math.floor(1e10*Math.random()),()=>{let e=t+=0x6d2b79f5;return e=Math.imul(e^e>>>15,1|e),(((e^=e+Math.imul(e^e>>>7,61|e))^e>>>14)>>>0)/0x100000000}}},933324,(e,t,r)=>{"use strict";var n,s,i,a,o,l,u,d;Object.defineProperty(r,"__esModule",{value:!0}),r.CronExpressionParser=r.DayOfWeek=r.Months=r.CronUnit=r.PredefinedExpressions=void 0;let c=e.r(596143),h=e.r(995565),m=e.r(409296),f=e.r(976495);(o=n||(r.PredefinedExpressions=n={}))["@yearly"]="0 0 0 1 1 *",o["@annually"]="0 0 0 1 1 *",o["@monthly"]="0 0 0 1 * *",o["@weekly"]="0 0 0 * * 0",o["@daily"]="0 0 0 * * *",o["@hourly"]="0 0 * * * *",o["@minutely"]="0 * * * * *",o["@secondly"]="* * * * * *",o["@weekdays"]="0 0 0 * * 1-5",o["@weekends"]="0 0 0 * * 0,6",(l=s||(r.CronUnit=s={})).Second="Second",l.Minute="Minute",l.Hour="Hour",l.DayOfMonth="DayOfMonth",l.Month="Month",l.DayOfWeek="DayOfWeek",(u=i||(r.Months=i={}))[u.jan=1]="jan",u[u.feb=2]="feb",u[u.mar=3]="mar",u[u.apr=4]="apr",u[u.may=5]="may",u[u.jun=6]="jun",u[u.jul=7]="jul",u[u.aug=8]="aug",u[u.sep=9]="sep",u[u.oct=10]="oct",u[u.nov=11]="nov",u[u.dec=12]="dec",(d=a||(r.DayOfWeek=a={}))[d.sun=0]="sun",d[d.mon=1]="mon",d[d.tue=2]="tue",d[d.wed=3]="wed",d[d.thu=4]="thu",d[d.fri=5]="fri",d[d.sat=6]="sat";class y{static parse(e,t={}){let{strict:r=!1,hashSeed:i}=t,a=(0,m.seededRandom)(i);e=n[e]||e;let o=y.#W(e,r);if(!("*"===o.dayOfMonth||"*"===o.dayOfWeek||!r))throw Error("Cannot use both dayOfMonth and dayOfWeek together in strict mode!");let l=y.#L(s.Second,o.second,f.CronSecond.constraints,a),u=y.#L(s.Minute,o.minute,f.CronMinute.constraints,a),d=y.#L(s.Hour,o.hour,f.CronHour.constraints,a),g=y.#L(s.Month,o.month,f.CronMonth.constraints,a),p=y.#L(s.DayOfMonth,o.dayOfMonth,f.CronDayOfMonth.constraints,a),{dayOfWeek:v,nthDayOfWeek:w}=y.#P(o.dayOfWeek),b=y.#L(s.DayOfWeek,v,f.CronDayOfWeek.constraints,a),O=new c.CronFieldCollection({second:new f.CronSecond(l,{rawValue:o.second}),minute:new f.CronMinute(u,{rawValue:o.minute}),hour:new f.CronHour(d,{rawValue:o.hour}),dayOfMonth:new f.CronDayOfMonth(p,{rawValue:o.dayOfMonth}),month:new f.CronMonth(g,{rawValue:o.month}),dayOfWeek:new f.CronDayOfWeek(b,{rawValue:o.dayOfWeek,nthDayOfWeek:w})});return new h.CronExpression(O,{...t,expression:e})}static #W(e,t){if(t&&!e.length)throw Error("Invalid cron expression");let r=(e=e||"0 * * * * *").trim().split(/\s+/);if(t&&r.length<6)throw Error("Invalid cron expression, expected 6 fields");if(r.length>6)throw Error("Invalid cron expression, too many fields");let n=["*","*","*","*","*","0"];r.length<n.length&&r.unshift(...n.slice(r.length));let[s,i,a,o,l,u]=r;return{second:s,minute:i,hour:a,dayOfMonth:o,month:l,dayOfWeek:u}}static #L(e,t,r,n){if((e===s.Month||e===s.DayOfWeek)&&(t=t.replace(/[a-z]{3}/gi,e=>{let t=i[e=e.toLowerCase()]||a[e];if(void 0===t)throw Error(`Validation error, cannot resolve alias "${e}"`);return t.toString()})),!r.validChars.test(t))throw Error(`Invalid characters, got value: ${t}`);return t=this.#R(t,r),t=this.#A(t,r,n),this.#U(e,t,r)}static #R(e,t){return e.replace(/[*?]/g,t.min+"-"+t.max)}static #A(e,t,r){let n=r();return e.replace(/H(?:\((\d+)-(\d+)\))?(?:\/(\d+))?/g,(e,r,s,i)=>{if(r&&s&&i){let e=parseInt(r,10),a=parseInt(s,10),o=parseInt(i,10);if(e>a)throw Error(`Invalid range: ${e}-${a}, min > max`);if(o<=0)throw Error(`Invalid step: ${o}, must be positive`);let l=Math.max(e,t.min),u=Math.floor(n*o),d=[];for(let e=Math.floor(l/o)*o+u;e<=a;e+=o)e>=l&&d.push(e);return d.join(",")}if(r&&s){let e=parseInt(r,10),t=parseInt(s,10);if(e>t)throw Error(`Invalid range: ${e}-${t}, min > max`);return String(Math.floor(n*(t-e+1))+e)}if(!i)return String(Math.floor(n*(t.max-t.min+1)+t.min));{let e=parseInt(i,10);if(e<=0)throw Error(`Invalid step: ${e}, must be positive`);let r=Math.floor(n*e),s=[];for(let n=Math.floor(t.min/e)*e+r;n<=t.max;n+=e)n>=t.min&&s.push(n);return s.join(",")}})}static #U(e,t,r){let n=[];return t.split(",").forEach(t=>{if(!(t.length>0))throw Error("Invalid list value format");var i=y.#z(e,t,r);if(Array.isArray(i))n.push(...i);else if(y.#Z(r,i))n.push(i);else{let t=parseInt(i.toString(),10);if(!(t>=r.min&&t<=r.max))throw Error(`Constraint error, got value ${i} expected range ${r.min}-${r.max}`);n.push(e===s.DayOfWeek?t%7:i)}}),n}static #z(e,t,r){let n=t.split("/");if(n.length>2)throw Error(`Invalid repeat: ${t}`);return 2===n.length?(isNaN(parseInt(n[0],10))||(n[0]=`${n[0]}-${r.max}`),y.#H(e,n[0],parseInt(n[1],10),r)):y.#H(e,t,1,r)}static #q(e,t,r){if(!(!isNaN(e)&&!isNaN(t)&&e>=r.min&&t<=r.max))throw Error(`Constraint error, got range ${e}-${t} expected range ${r.min}-${r.max}`);if(e>t)throw Error(`Invalid range: ${e}-${t}, min(${e}) > max(${t})`)}static #Y(e){if(!(!isNaN(e)&&e>0))throw Error(`Constraint error, cannot repeat at every ${e} time.`)}static #J(e,t,r,n){let i=[];e===s.DayOfWeek&&r%7==0&&i.push(0);for(let e=t;e<=r;e+=n)-1===i.indexOf(e)&&i.push(e);return i}static #H(e,t,r,n){let s=t.split("-");if(s.length<=1)return isNaN(+t)?t:+t;let[i,a]=s.map(e=>parseInt(e,10));return this.#q(i,a,n),this.#Y(r),this.#J(e,i,a,r)}static #P(e){let t=e.split("#");if(t.length<=1)return{dayOfWeek:t[0]};let r=+t[t.length-1],n=e.match(/([,-/])/);if(null!==n)throw Error(`Constraint error, invalid dayOfWeek \`#\` and \`${n?.[0]}\` special characters are incompatible`);if(!(t.length<=2&&!isNaN(r)&&r>=1&&r<=5))throw Error("Constraint error, invalid dayOfWeek occurrence number (#)");return{dayOfWeek:t[0],nthDayOfWeek:r}}static #Z(e,t){return e.chars.some(e=>t.toString().includes(e))}}r.CronExpressionParser=y},417856,(e,t,r)=>{"use strict";var n,s=e.e&&e.e.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=e.e&&e.e.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=e.e&&e.e.__importStar||(n=function(e){return(n=Object.getOwnPropertyNames||function(e){var t=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[t.length]=r);return t})(e)},function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r=n(e),a=0;a<r.length;a++)"default"!==r[a]&&s(t,e,r[a]);return i(t,e),t});Object.defineProperty(r,"__esModule",{value:!0}),r.CronFileParser=void 0;let o=e.r(933324);class l{static async parseFile(e){let{readFile:t}=await Promise.resolve().then(()=>a({})),r=await t(e,"utf8");return l.#G(r)}static parseFileSync(e){let{readFileSync:t}={},r=t(e,"utf8");return l.#G(r)}static #G(e){let t=e.split("\n"),r={variables:{},expressions:[],errors:{}};for(let e of t){let t=e.trim();if(0===t.length||t.startsWith("#"))continue;let n=t.match(/^(.*)=(.*)$/);if(n){let[,e,t]=n;r.variables[e]=t.replace(/["']/g,"");continue}try{let e=l.#B(t);r.expressions.push(e.interval)}catch(e){r.errors[t]=e}}return r}static #B(e){let t=e.split(" ");return{interval:o.CronExpressionParser.parse(t.slice(0,5).join(" ")),command:t.slice(5,t.length)}}}r.CronFileParser=l},85106,(e,t,r)=>{"use strict";var n=e.e&&e.e.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),s=e.e&&e.e.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(r,"__esModule",{value:!0}),r.CronFileParser=r.CronExpressionParser=r.CronExpression=r.CronFieldCollection=r.CronDate=void 0;let i=e.r(933324);var a=e.r(697554);Object.defineProperty(r,"CronDate",{enumerable:!0,get:function(){return a.CronDate}});var o=e.r(596143);Object.defineProperty(r,"CronFieldCollection",{enumerable:!0,get:function(){return o.CronFieldCollection}});var l=e.r(995565);Object.defineProperty(r,"CronExpression",{enumerable:!0,get:function(){return l.CronExpression}});var u=e.r(933324);Object.defineProperty(r,"CronExpressionParser",{enumerable:!0,get:function(){return u.CronExpressionParser}});var d=e.r(417856);Object.defineProperty(r,"CronFileParser",{enumerable:!0,get:function(){return d.CronFileParser}}),s(e.r(976495),r),r.default=i.CronExpressionParser},667480,553069,154248,e=>{"use strict";var t=e.i(843476),r=e.i(271645),n=e.i(498027);let s=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];function i(e,t){return`${0===e?12:e>12?e-12:e}${t>0?":"+String(t).padStart(2,"0"):""} ${e>=12?"PM":"AM"}`}function a(e){return`${e} minute${1===e?"":"s"} past`}function o(e){let t=e.trim().split(/\s+/);if(5!==t.length)return;let[r,n,o,l,u]=t;if("*"===r&&"*"===n&&"*"===o&&"*"===l&&"*"===u)return"Every minute";if(/^\*\/\d+$/.test(r)&&"*"===n&&"*"===o&&"*"===l&&"*"===u)return`Every ${r.slice(2)} minutes`;if(/^\d+$/.test(r)&&"*"===n&&"*"===o&&"*"===l&&"*"===u){let e=parseInt(r);return 0===e?"Every hour":`${a(e)} every hour`}if(/^\d+$/.test(r)&&/^\*\/\d+$/.test(n)&&"*"===o&&"*"===l&&"*"===u){let e=parseInt(r);return 0===e?`Every ${n.slice(2)} hours`:`${a(e)} every ${n.slice(2)} hours`}if(/^\d+$/.test(r)&&/^\d+$/.test(n)&&"*"===o&&"*"===l&&"*"===u){let e=parseInt(n),t=parseInt(r);return 0===e&&0===t?"Daily at midnight":12===e&&0===t?"Daily at noon":`Daily at ${i(e,t)}`}if(/^\d+$/.test(r)&&/^\d+$/.test(n)&&"*"===o&&"*"===l&&"1-5"===u){let e=parseInt(n),t=parseInt(r);return`Weekdays at ${i(e,t)}`}if(/^\d+$/.test(r)&&/^\d+$/.test(n)&&"*"===o&&"*"===l&&/^\d$/.test(u)){let e=parseInt(n),t=parseInt(r),a=s[parseInt(u)]||u;return`${a}s at ${i(e,t)}`}if(/^\d+$/.test(r)&&/^\d+$/.test(n)&&/^\*\/\d+$/.test(o)&&"*"===l&&"*"===u)return`Every ${o.slice(2)} days`}e.s(["cronToHuman",0,o],553069);var l=e.i(85106);let u=[{label:"Sun",short:"S",full:"Sunday",value:0},{label:"Mon",short:"M",full:"Monday",value:1},{label:"Tue",short:"T",full:"Tuesday",value:2},{label:"Wed",short:"W",full:"Wednesday",value:3},{label:"Thu",short:"T",full:"Thursday",value:4},{label:"Fri",short:"F",full:"Friday",value:5},{label:"Sat",short:"S",full:"Saturday",value:6}],d=[{id:"minutes",label:"Minutes"},{id:"hourly",label:"Hourly"},{id:"daily",label:"Daily"},{id:"weekly",label:"Weekly"},{id:"monthly",label:"Monthly"},{id:"custom",label:"Custom"}],c={tab:"daily",minuteInterval:5,hourInterval:1,minute:0,hour:9,selectedDays:[1,2,3,4,5],dayOfMonth:1,customCron:"* * * * *"};function h({children:e}){return(0,t.jsx)("label",{className:"block text-[10px] font-semibold text-[var(--muted-foreground)] uppercase tracking-widest mb-2",children:e})}function m(e){return String(e).padStart(2,"0")}function f(e){return[...new Set(e)].filter(e=>e>=0&&e<=6).sort((e,t)=>e-t)}function y(e){let t=e.trim();if(!t)return c;let r=t.match(/^\*\/(\d{1,2}) \* \* \* \*$/);if(r)return{...c,tab:"minutes",minuteInterval:Number(r[1])};let n=t.match(/^(\d{1,2}) \*\/(\d{1,2}) \* \* \*$/);if(n)return{...c,tab:"hourly",minute:Number(n[1]),hourInterval:Number(n[2])};let s=t.match(/^(\d{1,2}) \* \* \* \*$/);if(s)return{...c,tab:"hourly",minute:Number(s[1]),hourInterval:1};let i=t.match(/^(\d{1,2}) (\d{1,2}) \* \* ([0-6](?:,[0-6])*)$/);if(i)return{...c,tab:"weekly",minute:Number(i[1]),hour:Number(i[2]),selectedDays:i[3].split(",").map(e=>Number(e))};let a=t.match(/^(\d{1,2}) (\d{1,2}) \* \* \*$/);if(a)return{...c,tab:"daily",minute:Number(a[1]),hour:Number(a[2])};let o=t.match(/^(\d{1,2}) (\d{1,2}) (\d{1,2}) \* \*$/);return o?{...c,tab:"monthly",minute:Number(o[1]),hour:Number(o[2]),dayOfMonth:Number(o[3])}:{...c,tab:"custom",customCron:t}}function g({value:e,options:s,onChange:i,ariaLabel:a,buttonClassName:o="w-full"}){let[l,u]=(0,r.useState)(!1),d=(0,r.useRef)(null),c=s.find(t=>t.value===e)??s[0];return(0,r.useEffect)(()=>{if(!l)return;let e=e=>{d.current?.contains(e.target)||u(!1)};return document.addEventListener("pointerdown",e),()=>document.removeEventListener("pointerdown",e)},[l]),(0,t.jsxs)("div",{ref:d,className:`relative ${o}`,children:[(0,t.jsxs)("button",{type:"button","aria-label":a,"aria-expanded":l,onClick:()=>u(e=>!e),className:"w-full flex items-center gap-2 rounded-lg border border-[var(--card-border)] bg-[var(--muted)] px-3 py-2 text-left text-sm font-medium text-[var(--foreground)] transition-colors hover:border-[var(--muted-foreground)]",children:[(0,t.jsx)("span",{className:"min-w-0 flex-1 truncate",children:c?.label??String(e)}),(0,t.jsx)(n.ChevronDown,{size:14,className:`shrink-0 text-[var(--muted-foreground)] transition-transform ${l?"rotate-180":""}`})]}),l&&(0,t.jsx)("div",{className:"absolute z-30 mt-1 max-h-64 w-full overflow-y-auto rounded-lg border border-[var(--card-border)] bg-[var(--card-bg)] shadow-lg",children:s.map(r=>{let n=r.value===e;return(0,t.jsx)("button",{type:"button",onClick:()=>{i(r.value),u(!1)},className:`w-full px-3 py-2 text-left text-sm transition-colors hover:bg-[var(--muted)] ${n?"bg-[var(--muted)] text-[var(--foreground)]":"text-[var(--muted-foreground)]"}`,children:r.label},String(r.value))})})]})}e.s(["ScheduleConditionPicker",0,function({value:e,onChange:n,allowEmptySchedule:s=!1,scheduleLabel:i="Schedule",conditionLabel:a="Condition",conditionHelpText:c="Scheduled runs and Run now will check this condition before executing."}){let[p,v]=(0,r.useState)(()=>y(e.cadence)),[w,b]=(0,r.useState)(e.condition),[O,k]=(0,r.useState)(e.condition.trim()?"gated":"always"),[M,S]=(0,r.useState)(s&&!e.cadence.trim()?"unset":"scheduled"),D=(0,r.useEffectEvent)(n),x=(0,r.useRef)({cadence:e.cadence.trim(),condition:e.condition.trim()}),T=(0,r.useRef)({cadence:e.cadence.trim(),condition:e.condition.trim(),isScheduleValid:!0}),N=function(e){let t=f(e.selectedDays);switch(e.tab){case"minutes":return`*/${e.minuteInterval} * * * *`;case"hourly":return 1===e.hourInterval?`${e.minute} * * * *`:`${e.minute} */${e.hourInterval} * * *`;case"daily":default:return`${e.minute} ${e.hour} * * *`;case"weekly":return`${e.minute} ${e.hour} * * ${0===t.length||7===t.length?"*":t.join(",")}`;case"monthly":return`${e.minute} ${e.hour} ${e.dayOfMonth} * *`;case"custom":return e.customCron.trim()}}(p),C=function(e){let t=f(e.selectedDays),r=`${m(e.hour)}:${m(e.minute)}`;switch(e.tab){case"minutes":return`Every ${e.minuteInterval} minute${1===e.minuteInterval?"":"s"}`;case"hourly":return 1===e.hourInterval?`Every hour at minute ${m(e.minute)}`:`Every ${e.hourInterval} hours at minute ${m(e.minute)}`;case"daily":default:return`Every day at ${r}`;case"weekly":if(0===t.length||7===t.length)return`Every day at ${r}`;return`Every ${t.map(e=>u.find(t=>t.value===e)?.full??e).join(", ")} at ${r}`;case"monthly":return`On day ${e.dayOfMonth} of the month at ${r}`;case"custom":return o(e.customCron.trim())??"Custom cron expression"}}(p),E="unset"===M||"custom"!==p.tab||function(e){if(5!==e.split(/\s+/).length)return!1;try{return l.CronExpressionParser.parse(e),!0}catch{return!1}}(N);(0,r.useEffect)(()=>{let t=e.cadence.trim(),r=e.condition.trim();(t!==x.current.cadence||r!==x.current.condition)&&(x.current={cadence:t,condition:r},v(y(t)),b(e.condition),k(r?"gated":"always"),s&&S(t?"scheduled":"unset"))},[s,e.cadence,e.condition]),(0,r.useEffect)(()=>{let e={cadence:"scheduled"===M?N:"",condition:"scheduled"===M&&"gated"===O?w.trim():""};(e.cadence!==T.current.cadence||e.condition!==T.current.condition||E!==T.current.isScheduleValid)&&(x.current={cadence:e.cadence.trim(),condition:e.condition.trim()},T.current={cadence:e.cadence.trim(),condition:e.condition.trim(),isScheduleValid:E},D(e,{isScheduleValid:E}))},[w,O,D,N,E,M]);let $=Array.from({length:59},(e,t)=>({value:t+1,label:String(t+1)})),I=Array.from({length:23},(e,t)=>({value:t+1,label:String(t+1)})),j=Array.from({length:24},(e,t)=>({value:t,label:m(t)})),F=Array.from({length:60},(e,t)=>({value:t,label:m(t)}));return(0,t.jsxs)("div",{className:"space-y-6",children:[(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsx)(h,{children:i}),s?(0,t.jsx)(g,{value:M,onChange:e=>S(e),options:[{value:"unset",label:"Not set"},{value:"scheduled",label:"Scheduled"}],ariaLabel:"Schedule mode"}):null,"scheduled"===M?(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsx)(g,{value:p.tab,onChange:e=>v(t=>({...t,tab:e})),options:d.map(e=>({value:e.id,label:e.label})),ariaLabel:"Schedule type"}),"minutes"===p.tab&&(0,t.jsxs)("div",{className:"flex items-center gap-3 rounded-lg border border-[var(--card-border)] bg-[var(--muted)] px-3 py-3",children:[(0,t.jsx)("span",{className:"text-sm text-[var(--muted-foreground)]",children:"Every"}),(0,t.jsx)(g,{value:p.minuteInterval,onChange:e=>v(t=>({...t,minuteInterval:e})),options:$,ariaLabel:"Minute interval",buttonClassName:"w-20"}),(0,t.jsx)("span",{className:"text-sm text-[var(--muted-foreground)]",children:"minute(s)"})]}),"hourly"===p.tab&&(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(h,{children:"Hourly Schedule"}),(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2 rounded-lg border border-[var(--card-border)] bg-[var(--muted)] px-3 py-3",children:[(0,t.jsx)("span",{className:"text-sm text-[var(--muted-foreground)]",children:"Every"}),(0,t.jsx)(g,{value:p.hourInterval,onChange:e=>v(t=>({...t,hourInterval:e})),options:I,ariaLabel:"Hour interval",buttonClassName:"w-20"}),(0,t.jsx)("span",{className:"text-sm text-[var(--muted-foreground)]",children:"hour(s) at minute"}),(0,t.jsx)(g,{value:p.minute,onChange:e=>v(t=>({...t,minute:e})),options:F,ariaLabel:"Minute",buttonClassName:"w-24"})]})]}),("daily"===p.tab||"weekly"===p.tab||"monthly"===p.tab)&&(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(h,{children:"Time"}),(0,t.jsxs)("div",{className:"flex items-center gap-2 rounded-lg border border-[var(--card-border)] bg-[var(--muted)] px-3 py-3",children:[(0,t.jsx)(g,{value:p.hour,onChange:e=>v(t=>({...t,hour:e})),options:j,ariaLabel:"Hour",buttonClassName:"w-24"}),(0,t.jsx)("span",{className:"text-sm font-bold text-[var(--muted-foreground)]",children:":"}),(0,t.jsx)(g,{value:p.minute,onChange:e=>v(t=>({...t,minute:e})),options:F,ariaLabel:"Minute",buttonClassName:"w-24"})]})]}),"weekly"===p.tab&&(0,t.jsxs)("div",{children:[(0,t.jsx)(h,{children:"Repeat On"}),(0,t.jsx)("div",{className:"flex flex-wrap gap-1.5",children:u.map(e=>(0,t.jsx)("button",{type:"button",onClick:()=>{let t;return t=e.value,v(e=>({...e,selectedDays:e.selectedDays.includes(t)?e.selectedDays.filter(e=>e!==t):[...e.selectedDays,t]}))},className:`size-8 rounded-full flex items-center justify-center text-[10px] font-bold transition-all ${p.selectedDays.includes(e.value)?"bg-[var(--foreground)] text-[var(--background)]":"bg-[var(--muted)] text-[var(--muted-foreground)] hover:bg-[var(--card-border)]"}`,title:e.full,children:e.short},e.value))})]}),"monthly"===p.tab&&(0,t.jsxs)("div",{children:[(0,t.jsx)(h,{children:"On Day"}),(0,t.jsx)("div",{className:"grid grid-cols-7 gap-1",children:Array.from({length:31}).map((e,r)=>{let n=r+1;return(0,t.jsx)("button",{type:"button",onClick:()=>v(e=>({...e,dayOfMonth:n})),className:`size-7 rounded-lg flex items-center justify-center text-[10px] font-medium transition-all ${p.dayOfMonth===n?"bg-[var(--foreground)] text-[var(--background)]":"bg-[var(--muted)] text-[var(--muted-foreground)] hover:bg-[var(--card-border)]"}`,children:n},n)})})]}),"custom"===p.tab&&(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(h,{children:"Custom Cron"}),(0,t.jsx)("textarea",{value:p.customCron,onChange:e=>v(t=>({...t,customCron:e.target.value})),rows:3,spellCheck:!1,className:"w-full resize-none rounded-lg border border-[var(--card-border)] bg-[var(--muted)] px-3 py-2 font-mono text-sm text-[var(--foreground)] focus:outline-none focus:border-[var(--foreground)] transition-colors",placeholder:"* * * * *"}),!E&&(0,t.jsx)("p",{className:"text-[10px] text-red-400",children:"Enter a valid 5-field cron expression in the format minute hour day-of-month month day-of-week."})]}),(0,t.jsx)("p",{className:"text-[10px] text-[var(--muted-foreground)]",children:C})]}):(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)]",children:"Leave this unset if the objective does not need a recurring wake-up schedule."})]}),"scheduled"===M?(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsx)(h,{children:a}),(0,t.jsx)(g,{value:O,onChange:e=>k(e),options:[{value:"always",label:"Always run"},{value:"gated",label:"Only run if"}],ariaLabel:"Condition mode"}),"gated"===O?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("textarea",{value:w,onChange:e=>b(e.target.value),placeholder:"there are unread emails in my inbox",rows:3,className:"w-full resize-none rounded-lg border border-[var(--card-border)] bg-[var(--muted)] px-3 py-2 text-sm text-[var(--foreground)] placeholder:text-[var(--muted-foreground)] focus:outline-none focus:border-[var(--foreground)] transition-colors"}),(0,t.jsx)("p",{className:"text-[10px] text-[var(--muted-foreground)]",children:c})]}):(0,t.jsx)("p",{className:"text-[10px] text-[var(--muted-foreground)]",children:"Runs without checking any additional condition."})]}):null]})},"SimpleDropdown",0,g],667480);let p=`Pick the highest-priority actionable ticket. Prefer tickets that:
2
+ 1. Are already started (existing branches, PRs, or prior comments) — continue where you left off.
3
+ 2. Are assigned to you or unassigned.
4
+ 3. Have the most urgent priority or earliest due date.
5
+
6
+ Skip tickets with the \`active-session\` label — another agent is already working on them.`,v=`Work on {{ticket.identifier}}: {{ticket.title}}
7
+
8
+ ## Workflow
9
+
10
+ 1. **Read the ticket** — Read the full issue and comment thread via Linear MCP before acting.
11
+ 2. **Resume existing work** — Check for existing branches, PRs, knowledge-base notes, or prior discussion. Continue where things left off.
12
+ 3. **If unclear** — Post a clarifying comment on the ticket and stop. Don't guess.
13
+ 4. **If fresh** — Investigate the codebase, draft a plan, post it as a comment. Stop and wait for approval.
14
+ 5. **If plan is approved** — Create a git worktree, implement the fix, run tests, commit, push, and create a PR linking the ticket.
15
+ 6. **If PR exists** — Check CI, address review feedback, or confirm merge. Don't start over.
16
+
17
+ ## Rules
18
+
19
+ - Work in an isolated git worktree — never modify the main checkout directly.
20
+ - Keep Linear accurate: update status, post comments, link PRs.
21
+ - Add the \`active-session\` label when starting. Remove it when done.
22
+ - Leave everything in a resumable state. Clean up worktrees when finished.
23
+ - One ticket per session.`;e.s(["LINEAR_WORKER_DEFAULT_PROMPT",0,p,"LINEAR_WORKER_DEFAULT_SCRIPT_PROMPT",0,v,"LINEAR_WORKER_JOB_NAME",0,"Linear worker"],154248)}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,794731,e=>{"use strict";let t=(0,e.i(363732).default)("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]]);e.s(["Trash2",0,t],794731)},640481,e=>{"use strict";let t=(0,e.i(363732).default)("pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]);e.s(["Pencil",0,t],640481)},580873,e=>{"use strict";let t=(0,e.i(363732).default)("clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 6v6l4 2",key:"mmk7yg"}]]);e.s(["Clock",0,t],580873)},958164,e=>{"use strict";let t=(0,e.i(363732).default)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);e.s(["AlertTriangle",0,t],958164)},807087,e=>{"use strict";let t=(0,e.i(363732).default)("circle-check",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);e.s(["CheckCircle2",0,t],807087)},716436,e=>{"use strict";let t=(0,e.i(363732).default)("activity",[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]]);e.s(["Activity",0,t],716436)},417442,e=>{"use strict";let t=(0,e.i(363732).default)("arrow-right",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]]);e.s(["ArrowRight",0,t],417442)},33887,e=>{"use strict";var t=e.i(271645);e.s(["useLinearConnection",0,function(){let[e,r]=(0,t.useState)(!1),[a,s]=(0,t.useState)(!0),[n,l]=(0,t.useState)(null),[d,i]=(0,t.useState)({claude:!1,codex:!1,gemini:!1}),[o,c]=(0,t.useState)({}),u=(0,t.useRef)(null),m=(0,t.useCallback)(async()=>{try{let e=await fetch("/api/linear/mcp-setup"),t=await e.json();c(t.configured??{})}catch{}},[]),x=(0,t.useCallback)(async()=>{try{let[e,t]=await Promise.all([fetch("/api/linear/status"),fetch("/api/linear/mcp-setup")]),a=await e.json(),s=await t.json();return r(a.connected),l(a.user??null),i(a.clis??{claude:!1,codex:!1,gemini:!1}),c(s.configured??{}),a.connected}catch{return r(!1),!1}finally{s(!1)}},[]);(0,t.useEffect)(()=>(x(),()=>{u.current&&clearInterval(u.current)}),[x]);let p=(0,t.useCallback)(()=>{window.open("/api/linear/auth","_blank","noopener"),u.current&&clearInterval(u.current),u.current=setInterval(async()=>{await x()&&u.current&&(clearInterval(u.current),u.current=null)},2e3)},[x]),h=(0,t.useCallback)(async e=>{try{let t=await fetch("/api/linear/token",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({accessToken:e})});if(!t.ok){let e=await t.json().catch(()=>({}));return{ok:!1,error:e.error||"Failed to save token"}}return await x(),{ok:!0}}catch{return{ok:!1,error:"Failed to connect"}}},[x]);return{connected:e,loading:a,user:n,clis:d,mcpConfigured:o,connect:p,connectWithKey:h,disconnect:(0,t.useCallback)(async()=>{await fetch("/api/linear/status",{method:"DELETE"}),r(!1),l(null)},[]),configureMcp:(0,t.useCallback)(async e=>{try{let t=await fetch("/api/linear/mcp-setup",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cli:e})});if(!t.ok){let e=await t.json().catch(()=>({}));return{ok:!1,error:e.error||"Failed to configure MCP"}}return await m(),{ok:!0}}catch{return{ok:!1,error:"Failed to configure MCP"}}},[m]),refresh:x}}])},317389,e=>{"use strict";var t=e.i(843476),r=e.i(271645),a=e.i(618566),s=e.i(716436);function n({projectSlug:e,projectThreadIds:l=[]}){let d=(0,a.useRouter)(),[i,o]=(0,r.useState)([]),[c,u]=(0,r.useState)([]),m=(0,r.useCallback)(async()=>{try{let e=await fetch("/api/participants");if(!e.ok)return;let t=await e.json();u(Array.isArray(t)?t:t.participants??[])}catch{}},[]);(0,r.useEffect)(()=>{m()},[m]),(0,r.useEffect)(()=>{let t=!1,r=e.trim().toLowerCase(),a=new Set(l.map(e=>e.trim()).filter(Boolean)),s=async()=>{try{let e=await fetch("/api/processes?enrich=1");if(!e.ok||t)return;let s=await e.json();if(t)return;let n=s.filter(e=>"spawning"===e.state||"running"===e.state).filter(e=>{let t=e.projectSlug.trim().toLowerCase();return!!t&&t===r||a.has(e.workspaceId)||a.has(e.threadId)}).sort((e,t)=>t.lastActivity-e.lastActivity);o(n)}catch{}};s();let n=setInterval(s,3e3);return()=>{t=!0,clearInterval(n)}},[e,l]);let x=new Map(c.map(e=>[e.id,e.name])),p=e=>x.get(e)||e.slice(0,8),h=[],f=new Map;for(let e of i){let t=f.get(e.agentId);t||(t={agentId:e.agentId,agentName:p(e.agentId),activities:[]},f.set(e.agentId,t),h.push(t)),t.activities.push({key:`${e.workspaceId}-${e.threadId}-${e.agentId}`,workspaceId:e.workspaceId,threadId:e.threadId,state:e.state,threadLabel:e.threadTitle?.trim()?e.threadTitle.trim():e.threadId?.trim()?`Thread ${e.threadId.slice(0,12)}...`:"Main thread",lastActiveLabel:function(e){let t=Math.max(0,Math.floor((Date.now()-e)/1e3));if(t<5)return"Just now";if(t<60)return`${t}s ago`;let r=Math.floor(t/60);if(r<60)return`${r}m ago`;let a=Math.floor(r/60);if(a<24)return`${a}h ago`;let s=Math.floor(a/24);return`${s}d ago`}(e.lastActivity),lastActivity:e.lastActivity,linearIssueId:e.linearIssueId,linearRunId:e.linearRunId})}if(0===h.length)return null;let g=i.length;return(0,t.jsxs)("section",{className:"col-span-full overflow-hidden rounded-2xl border border-[var(--card-border)] bg-[var(--card-bg)]",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-3 border-b border-[var(--border)] px-4 py-3",children:[(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 text-xs uppercase tracking-[0.18em] text-[var(--muted-foreground)]",children:[(0,t.jsx)(s.Activity,{className:"h-3.5 w-3.5"}),"Working Now"]}),(0,t.jsxs)("p",{className:"mt-1 text-xs text-[var(--muted-foreground)]",children:[h.length," ",1===h.length?"agent":"agents"," active across"," ",g," ",1===g?"thread":"threads","."]})]}),(0,t.jsxs)("span",{className:"rounded-full border border-[var(--status-completed-border)] bg-[var(--status-completed-bg)] px-2.5 py-1 text-[10px] font-medium uppercase tracking-wider text-[var(--status-completed-text)]",children:[g," live ",1===g?"entry":"entries"]})]}),(0,t.jsx)("div",{className:"divide-y divide-[var(--border)]",children:h.map(r=>(0,t.jsxs)("div",{className:"px-4 py-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 mb-2",children:[(0,t.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-sm font-medium text-[var(--foreground)]",children:[(0,t.jsx)("span",{className:"h-2 w-2 rounded-full bg-emerald-400 animate-pulse"}),r.agentName]}),r.activities.length>1&&(0,t.jsxs)("span",{className:"rounded-full bg-[var(--secondary)] px-2 py-0.5 text-[10px] text-[var(--muted-foreground)]",children:[r.activities.length," threads"]})]}),(0,t.jsx)("div",{className:"space-y-1 ml-4",children:r.activities.map(r=>(0,t.jsxs)("div",{className:"mx-[-0.5rem] flex cursor-pointer items-center gap-3 rounded-lg px-2 py-1.5 text-sm transition-colors hover:bg-[var(--secondary)]",onClick:()=>d.push(r.linearIssueId&&r.linearRunId?`/projects/${e}/linear?issue=${encodeURIComponent(r.linearIssueId)}&run=${encodeURIComponent(r.linearRunId)}`:`/projects/${e}/thread/${encodeURIComponent(r.workspaceId)}${r.threadId?`?open=${encodeURIComponent(r.threadId)}`:""}`),children:[(0,t.jsxs)("span",{className:"inline-flex shrink-0 items-center gap-1.5 rounded-full border border-[var(--status-completed-border)] bg-[var(--status-completed-bg)] px-2 py-0.5 text-[11px] font-medium text-[var(--status-completed-text)]",children:[(0,t.jsx)("span",{className:"h-1.5 w-1.5 rounded-full bg-emerald-400"}),"spawning"===r.state?"Starting":"Working"]}),(0,t.jsx)("span",{className:"min-w-0 flex-1 truncate text-[var(--foreground)]",children:r.threadLabel}),(0,t.jsx)("span",{className:"shrink-0 text-xs text-[var(--muted-foreground)]",children:r.lastActiveLabel})]},r.key))})]},r.agentId))})]})}var l=e.i(807087);function d({projectId:e,projectSlug:s,projectThreadIds:n=[]}){let i=(0,a.useRouter)(),[o,c]=(0,r.useState)([]),[u,m]=(0,r.useState)([]),[x,p]=(0,r.useState)([]),h=(0,r.useCallback)(async()=>{try{let e=await fetch("/api/participants");if(!e.ok)return;let t=await e.json();m(Array.isArray(t)?t:t.participants??[])}catch{}},[]),f=(0,r.useCallback)(async()=>{try{let t=await fetch(`/api/projects/${e}/teams`);if(!t.ok)return;let r=await t.json();p(Array.isArray(r)?r:[])}catch{}},[e]);(0,r.useEffect)(()=>{h(),f()},[h,f]),(0,r.useEffect)(()=>{let e=!1,t=s.trim().toLowerCase(),r=new Set(n.map(e=>e.trim()).filter(Boolean)),a=async()=>{try{let a=await fetch("/api/processes?enrich=1");if(!a.ok||e)return;let s=await a.json();if(e)return;let n=s.filter(e=>"done"===e.state).filter(e=>{let a=e.projectSlug.trim().toLowerCase();return!!a&&a===t||r.has(e.workspaceId)||r.has(e.threadId)}).sort((e,t)=>t.lastActivity-e.lastActivity).slice(0,10);c(n)}catch{}};a();let l=setInterval(a,1e4);return()=>{e=!0,clearInterval(l)}},[s,n]);let g=new Map(u.map(e=>[e.id,e.name])),v=new Map;for(let e of x)for(let t of e.agents)v.set(t.agent_id,{id:e.id,name:e.name});return 0===o.length?null:(0,t.jsxs)("section",{className:"col-span-full overflow-hidden rounded-2xl border border-[var(--card-border)] bg-[var(--card-bg)]",children:[(0,t.jsx)("div",{className:"flex items-center justify-between gap-3 border-b border-[var(--border)] px-4 py-3",children:(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 text-xs uppercase tracking-[0.18em] text-[var(--muted-foreground)]",children:[(0,t.jsx)(l.CheckCircle2,{className:"h-3.5 w-3.5"}),"Recently Completed"]}),(0,t.jsxs)("p",{className:"mt-1 text-xs text-[var(--muted-foreground)]",children:["Last ",o.length," completed"," ",1===o.length?"task":"tasks","."]})]})}),(0,t.jsx)("div",{className:"overflow-x-auto",children:(0,t.jsxs)("table",{className:"min-w-full text-sm",children:[(0,t.jsx)("thead",{className:"bg-[var(--secondary)]",children:(0,t.jsxs)("tr",{className:"text-left text-[11px] uppercase tracking-[0.18em] text-[var(--muted-foreground)]",children:[(0,t.jsx)("th",{className:"px-4 py-3 font-medium",children:"Team"}),(0,t.jsx)("th",{className:"px-4 py-3 font-medium",children:"Agent"}),(0,t.jsx)("th",{className:"px-4 py-3 font-medium",children:"Status"}),(0,t.jsx)("th",{className:"px-4 py-3 font-medium",children:"Thread"}),(0,t.jsx)("th",{className:"px-4 py-3 font-medium",children:"Last active"})]})}),(0,t.jsx)("tbody",{children:o.map(e=>{let r;return(0,t.jsxs)("tr",{className:"cursor-pointer border-t border-[var(--border)] text-[var(--foreground)] transition-colors hover:bg-[var(--secondary)]",onClick:()=>i.push(e.linearIssueId&&e.linearRunId?`/projects/${s}/linear?issue=${encodeURIComponent(e.linearIssueId)}&run=${encodeURIComponent(e.linearRunId)}`:`/projects/${s}/thread/${encodeURIComponent(e.workspaceId)}${e.threadId?`?open=${encodeURIComponent(e.threadId)}`:""}`),children:[(0,t.jsx)("td",{className:"px-4 py-3",children:v.has(e.agentId)?(0,t.jsx)("button",{onClick:t=>{t.stopPropagation(),i.push(`/projects/${s}/teams/${v.get(e.agentId).id}`)},className:"text-left font-medium text-[var(--foreground)] transition-colors hover:text-[var(--primary)]",children:v.get(e.agentId).name}):(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"Unassigned"})}),(0,t.jsx)("td",{className:"px-4 py-3 text-[var(--foreground)]",children:(r=e.agentId,g.get(r)||r.slice(0,8))}),(0,t.jsx)("td",{className:"px-4 py-3",children:(0,t.jsxs)("span",{className:"inline-flex items-center gap-1.5 rounded-full border border-[var(--border)] bg-[var(--secondary)] px-2 py-0.5 text-[11px] font-medium text-[var(--muted-foreground)]",children:[(0,t.jsx)(l.CheckCircle2,{className:"h-3 w-3"}),"Done"]})}),(0,t.jsx)("td",{className:"max-w-[24rem] px-4 py-3 text-[var(--muted-foreground)]",children:(0,t.jsx)("span",{className:"block truncate",children:e.threadTitle?.trim()?e.threadTitle.trim():e.threadId?.trim()?`Thread ${e.threadId.slice(0,12)}...`:"Main thread"})}),(0,t.jsx)("td",{className:"px-4 py-3 text-[var(--muted-foreground)]",children:function(e){let t=Math.max(0,Math.floor((Date.now()-e)/1e3));if(t<5)return"Just now";if(t<60)return`${t}s ago`;let r=Math.floor(t/60);if(r<60)return`${r}m ago`;let a=Math.floor(r/60);if(a<24)return`${a}h ago`;let s=Math.floor(a/24);return`${s}d ago`}(e.lastActivity)})]},`${e.workspaceId}-${e.threadId}-${e.agentId}`)})})]})})]})}var i=e.i(572665),o=e.i(417442);function c({projectId:e,onViewAll:a}){let[s,n]=(0,r.useState)([]),[l,d]=(0,r.useState)(!0);return(0,r.useEffect)(()=>{fetch(`/api/projects/${e}/teams`).then(e=>e.ok?e.json():{teams:[]}).then(e=>n(e.teams??[])).catch(()=>n([])).finally(()=>d(!1))},[e]),(0,t.jsxs)("div",{className:"rounded-2xl border border-[var(--card-border)] bg-[var(--card-bg)] p-4",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(i.Users,{className:"h-4 w-4 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"text-sm font-medium text-[var(--foreground)]",children:"Teams"}),!l&&s.length>0&&(0,t.jsx)("span",{className:"rounded-full bg-[var(--secondary)] px-2 py-0.5 text-xs text-[var(--muted-foreground)]",children:s.length})]}),a&&(0,t.jsxs)("button",{onClick:a,className:"flex items-center gap-1 text-xs text-[var(--muted-foreground)] transition-colors hover:text-[var(--foreground)]",children:["View all ",(0,t.jsx)(o.ArrowRight,{className:"w-3 h-3"})]})]}),l?(0,t.jsx)("div",{className:"space-y-2",children:[1,2,3].map(e=>(0,t.jsx)("div",{className:"h-5 animate-pulse rounded bg-[var(--muted)]"},e))}):0===s.length?(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"No teams yet"}):(0,t.jsx)("div",{className:"space-y-2",children:s.slice(0,5).map(e=>(0,t.jsxs)("div",{className:"flex items-center gap-2 text-sm",children:[(0,t.jsx)(i.Users,{className:"h-4 w-4 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"text-[var(--foreground)]",children:e.name}),(0,t.jsxs)("span",{className:"text-[var(--muted-foreground)]",children:[e.agents.length," agents"]})]},e.id))})]})}var u=e.i(580873);function m({projectId:e,projectSlug:s,onViewAll:n}){let l=(0,a.useRouter)(),[d,i]=(0,r.useState)([]),[c,x]=(0,r.useState)([]),[p,h]=(0,r.useState)({}),[f,g]=(0,r.useState)(!0),[v,j]=(0,r.useState)(()=>Date.now());(0,r.useEffect)(()=>{let e=window.setInterval(()=>{j(Date.now())},3e4);return()=>{window.clearInterval(e)}},[]),(0,r.useEffect)(()=>{let t=!1,r=async()=>{try{let[r,a]=await Promise.all([fetch("/api/automations"),fetch(`/api/prompt-jobs?projectId=${encodeURIComponent(e)}`)]),s=r.ok?await r.json():{automations:[]},n=a.ok?await a.json():{jobs:[]};if(t)return;let l=(s.automations??[]).filter(t=>t.projectId===e).slice(0,20),d=(n.jobs??[]).filter(t=>t.projectId===e).slice(0,20);i(l),x(d);let o=Object.fromEntries(await Promise.all(d.map(async e=>{try{let t=await fetch(`/api/prompt-jobs/${encodeURIComponent(e.id)}/runs`);if(!t.ok)return[e.id,null];let r=((await t.json()).runs??[])[0]??null;return[e.id,r]}catch{return[e.id,null]}})));if(t)return;h(o)}catch{if(t)return;i([]),x([]),h({})}finally{t||g(!1)}};return g(!0),r(),()=>{t=!0}},[e]);let b=e=>{if(!s||"prompt"!==e.kind)return;let t=new URLSearchParams({job:e.jobId});e.runId&&t.set("run",e.runId),l.push(`/projects/${s}/automations?${t.toString()}`)},y=[...c.filter(e=>{let t=p[e.id];return t?.status==="queued"||t?.status==="running"}).map(e=>({id:`prompt:${e.id}`,title:e.name,kind:"prompt",jobId:e.id,runId:p[e.id]?.id??null,updatedAt:p[e.id]?.createdAt??e.updatedAt})),...d.filter(e=>"running"===e.executionState||e.schedule?.tickInProgress).map(e=>({id:`automation:${e.graphId}`,title:e.title,kind:"automation",updatedAt:e.updatedAt}))].sort((e,t)=>Date.parse(t.updatedAt)-Date.parse(e.updatedAt)),N=new Set(y.map(e=>e.id)),w=[...c.filter(e=>"active"===e.state&&"number"==typeof e.nextRunAt).map(e=>({id:`prompt:${e.id}`,title:e.name,kind:"prompt",jobId:e.id,runId:null,nextRunAt:e.nextRunAt})),...d.filter(e=>e.schedule?.state==="active"&&"number"==typeof e.schedule?.nextTickAt).map(e=>({id:`automation:${e.graphId}`,title:e.title,kind:"automation",nextRunAt:e.schedule.nextTickAt}))].filter(e=>!N.has(e.id)).sort((e,t)=>e.nextRunAt-t.nextRunAt),k=c.length+d.length;return(0,t.jsxs)("div",{className:"rounded-2xl border border-[var(--card-border)] bg-[var(--card-bg)] p-4",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(u.Clock,{className:"h-4 w-4 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"text-sm font-medium text-[var(--foreground)]",children:"Scheduled Tasks"}),!f&&k>0&&(0,t.jsx)("span",{className:"rounded-full bg-[var(--secondary)] px-2 py-0.5 text-xs text-[var(--muted-foreground)]",children:k})]}),n&&(0,t.jsxs)("button",{onClick:n,className:"flex items-center gap-1 text-xs text-[var(--muted-foreground)] transition-colors hover:text-[var(--foreground)]",children:["View all ",(0,t.jsx)(o.ArrowRight,{className:"w-3 h-3"})]})]}),f?(0,t.jsx)("div",{className:"space-y-2",children:[1,2,3].map(e=>(0,t.jsx)("div",{className:"h-5 animate-pulse rounded bg-[var(--muted)]"},e))}):0===k?(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"No scheduled tasks"}):(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between text-xs uppercase tracking-wide text-[var(--muted-foreground)]",children:[(0,t.jsx)("span",{children:"Currently running"}),(0,t.jsx)("span",{children:y.length})]}),0===y.length?(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"Nothing running right now"}):(0,t.jsx)("div",{className:"space-y-2",children:y.slice(0,3).map(e=>(0,t.jsxs)("button",{type:"button",onClick:()=>b(e),disabled:"prompt"!==e.kind||!s,className:`flex w-full items-center gap-2 rounded-md px-1 py-1 text-left text-sm transition-colors ${"prompt"===e.kind&&s?"cursor-pointer hover:bg-[var(--secondary)]":"cursor-default"}`,children:[(0,t.jsx)("span",{className:"h-2 w-2 shrink-0 rounded-full bg-emerald-400"}),(0,t.jsx)("span",{className:"truncate text-[var(--foreground)]",children:e.title}),(0,t.jsx)("span",{className:"ml-auto shrink-0 text-xs text-[var(--status-completed-text)]",children:"running"})]},e.id))})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between text-xs uppercase tracking-wide text-[var(--muted-foreground)]",children:[(0,t.jsx)("span",{children:"Upcoming runs"}),(0,t.jsx)("span",{children:w.length})]}),0===w.length?(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"No upcoming runs"}):(0,t.jsx)("div",{className:"space-y-2",children:w.slice(0,3).map(e=>{var r;return(0,t.jsxs)("button",{type:"button",onClick:()=>b(e),disabled:"prompt"!==e.kind||!s,className:`flex w-full items-center gap-2 rounded-md px-1 py-1 text-left text-sm transition-colors ${"prompt"===e.kind&&s?"cursor-pointer hover:bg-[var(--secondary)]":"cursor-default"}`,children:[(0,t.jsx)(u.Clock,{className:"h-3.5 w-3.5 shrink-0 text-[var(--muted-foreground)]"}),(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsx)("div",{className:"truncate text-[var(--foreground)]",children:e.title}),(0,t.jsxs)("div",{className:"text-xs text-[var(--muted-foreground)]",children:["number"!=typeof(r=e.nextRunAt)?"No next run":new Intl.DateTimeFormat(void 0,{month:"short",day:"numeric",hour:"numeric",minute:"2-digit"}).format(new Date(r))," ",(0,t.jsxs)("span",{className:"text-[var(--app-shell-soft-text)]",children:["• ",(e=>{if("number"!=typeof e)return"";let t=e-v;if(t<=0)return"now";let r=Math.ceil(t/6e4);if(r<60)return`in ${r}m`;let a=Math.floor(r/60),s=r%60;if(a<24)return 0===s?`in ${a}h`:`in ${a}h ${s}m`;let n=Math.floor(a/24),l=a%24;return 0===l?`in ${n}d`:`in ${n}d ${l}h`})(e.nextRunAt)]})]})]})]},e.id)})})]})]})]})}var x=e.i(196630),p=e.i(640481),h=e.i(929870),f=e.i(794731),g=e.i(797167),v=e.i(524123);function j({projectId:e,repos:a,onViewAll:s}){let{updateProject:n}=(0,v.useProjects)(),[l,d]=(0,r.useState)(a),[i,c]=(0,r.useState)(!1),[u,m]=(0,r.useState)(null),[b,y]=(0,r.useState)(""),[N,w]=(0,r.useState)(""),[k,I]=(0,r.useState)(null);(0,r.useEffect)(()=>{d(a)},[a]);let C=e=>{I(e),window.setTimeout(()=>I(null),2500)},$=e=>e.map(e=>({id:e.id,name:e.name,path:e.path,git_url:e.git_url})),A=()=>{y(""),w(""),m(null),c(!1)},S=async()=>{let t=b.trim(),r=N.trim();if(t&&r){d([...l,{id:`tmp-${Date.now()}`,name:t,path:r}]),A();try{await n(e,{repos:[...$(l),{name:t,path:r}]}),C("Folder added")}catch{d(l),C("Failed to add folder")}}},R=async t=>{let r=b.trim(),a=N.trim();if(!r||!a)return;let s=l.map(e=>e.id===t?{...e,name:r,path:a}:e);d(s),A();try{await n(e,{repos:$(s)}),C("Folder updated")}catch{d(l),C("Failed to update folder")}},M=async t=>{let r=l.filter(e=>e.id!==t);d(r),u===t&&A();try{await n(e,{repos:$(r)}),C("Folder deleted")}catch{d(l),C("Failed to delete folder")}};return(0,t.jsxs)("div",{className:"rounded-2xl border border-[var(--card-border)] bg-[var(--card-bg)] p-4",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(x.FolderGit2,{className:"h-4 w-4 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"text-sm font-medium text-[var(--foreground)]",children:"Folders"}),l.length>0&&(0,t.jsx)("span",{className:"rounded-full bg-[var(--secondary)] px-2 py-0.5 text-xs text-[var(--muted-foreground)]",children:l.length})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsxs)("button",{type:"button",onClick:()=>{m(null),y(""),w(""),c(!0)},className:"flex items-center gap-1 text-xs text-[var(--muted-foreground)] transition-colors hover:text-[var(--foreground)]",children:[(0,t.jsx)(h.Plus,{className:"w-3 h-3"}),"Add"]}),s&&(0,t.jsxs)("button",{onClick:s,className:"flex items-center gap-1 text-xs text-[var(--muted-foreground)] transition-colors hover:text-[var(--foreground)]",children:["View all ",(0,t.jsx)(o.ArrowRight,{className:"w-3 h-3"})]})]})]}),k&&(0,t.jsx)("p",{className:"mb-3 text-xs text-[var(--muted-foreground)]",children:k}),(i||u)&&(0,t.jsxs)("div",{className:"mb-3 space-y-2 rounded-xl border border-[var(--border)] bg-[var(--secondary)] p-3",children:[(0,t.jsx)("input",{value:b,onChange:e=>y(e.target.value),className:"input w-full text-sm",placeholder:"Folder name",autoFocus:!0}),(0,t.jsx)("input",{value:N,onChange:e=>w(e.target.value),className:"input w-full text-sm",placeholder:"Local path"}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("button",{type:"button",onClick:()=>{u?R(u):S()},disabled:!b.trim()||!N.trim(),className:"rounded-lg bg-[var(--foreground)] px-3 py-1.5 text-xs font-medium text-[var(--background)] disabled:opacity-40",children:"Save"}),(0,t.jsxs)("button",{type:"button",onClick:A,className:"flex items-center gap-1 rounded-lg px-2 py-1.5 text-xs text-[var(--muted-foreground)] transition-colors hover:text-[var(--foreground)]",children:[(0,t.jsx)(g.X,{className:"w-3 h-3"}),"Cancel"]})]})]}),0===l.length?(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"No folders linked"}):(0,t.jsx)("div",{className:"space-y-2",children:l.slice(0,5).map(e=>(0,t.jsxs)("div",{className:"flex items-center gap-2 text-sm",children:[(0,t.jsx)(x.FolderGit2,{className:"h-4 w-4 shrink-0 text-[var(--muted-foreground)]"}),(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsx)("div",{className:"truncate text-[var(--foreground)]",children:e.name}),e.path&&(0,t.jsx)("div",{className:"truncate text-xs text-[var(--muted-foreground)]",children:e.path})]}),(0,t.jsx)("button",{type:"button",onClick:()=>{c(!1),m(e.id),y(e.name),w(e.path??"")},className:"p-1 text-[var(--muted-foreground)] transition-colors hover:text-[var(--foreground)]","aria-label":`Edit ${e.name}`,children:(0,t.jsx)(p.Pencil,{className:"w-3 h-3"})}),(0,t.jsx)("button",{type:"button",onClick:()=>void M(e.id),className:"p-1 text-[var(--muted-foreground)] transition-colors hover:text-[var(--destructive)]","aria-label":`Delete ${e.name}`,children:(0,t.jsx)(f.Trash2,{className:"w-3 h-3"})})]},e.id))})]})}var b=e.i(938201),y=e.i(902572),N=e.i(958164);let w={on_track:{label:"On Track",dot:"bg-[var(--status-completed)]",badge:"border-[var(--status-completed-border)] bg-[var(--status-completed-bg)] text-[var(--status-completed-text)]"},at_risk:{label:"At Risk",dot:"bg-[var(--status-blocked)]",badge:"border-[var(--status-blocked-border)] bg-[var(--status-blocked-bg)] text-[var(--status-blocked-text)]"},off_track:{label:"Off Track",dot:"bg-[var(--status-failed)]",badge:"border-[var(--status-failed-border)] bg-[var(--status-failed-bg)] text-[var(--status-failed-text)]"},done:{label:"Done",dot:"bg-[var(--muted-foreground)]",badge:"border-[var(--border)] bg-[var(--secondary)] text-[var(--muted-foreground)]"}};function k({objective:e,teamName:r,onClick:a}){let s=w[e.status]??w.on_track,n="done"===e.status;return(0,t.jsxs)("button",{type:"button",onClick:a,className:`w-full rounded-2xl border border-[var(--card-border)] bg-[var(--card-bg)] p-4 text-left transition-colors hover:bg-[var(--secondary)] ${n?"opacity-60":""}`,children:[(0,t.jsxs)("div",{className:"flex items-start justify-between gap-2 mb-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 min-w-0",children:[(0,t.jsx)("span",{className:`h-2 w-2 shrink-0 rounded-full ${s.dot}`}),(0,t.jsx)("span",{className:"truncate text-sm font-medium text-[var(--foreground)]",children:e.title})]}),(0,t.jsx)("span",{className:`shrink-0 rounded-full border px-2 py-0.5 text-[11px] font-medium ${s.badge}`,children:s.label})]}),(0,t.jsx)("div",{className:"mb-2",children:(0,t.jsx)("div",{className:"h-1.5 overflow-hidden rounded-full bg-[var(--muted)]",children:(0,t.jsx)("div",{className:"h-full rounded-full bg-emerald-500/70 transition-all",style:{width:`${Math.min(e.progress,100)}%`}})})}),(0,t.jsxs)("div",{className:"flex items-center justify-between text-xs text-[var(--muted-foreground)]",children:[(0,t.jsxs)("span",{className:r?"":"flex items-center gap-1 text-[var(--status-blocked-text)]",children:[!r&&(0,t.jsx)(N.AlertTriangle,{className:"h-3 w-3"}),r??"No team"]}),(0,t.jsxs)("span",{children:[e.progress,"%"]})]})]})}function I({projectId:e,projectSlug:s}){let n=(0,a.useRouter)(),{projects:l,isLoading:d}=(0,v.useProjects)(),i=(0,r.useMemo)(()=>l.find(e=>e.slug===s),[l,s]),c=(0,r.useMemo)(()=>(0,y.readProjectObjectivesWorkspace)(i?.metadata).objectives,[i?.metadata]),[u,m]=(0,r.useState)([]);(0,r.useEffect)(()=>{fetch(`/api/projects/${e}/teams`).then(e=>e.ok?e.json():{teams:[]}).then(e=>m(e.teams??[])).catch(()=>m([]))},[e]);let x=(0,r.useMemo)(()=>new Map(u.map(e=>[e.id,e.name])),[u]),p=c.filter(e=>e.progress>=100).length;return d?(0,t.jsx)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[1,2].map(e=>(0,t.jsx)("div",{className:"h-28 animate-pulse rounded-2xl bg-[var(--muted)]"},e))}):0===c.length?(0,t.jsxs)("button",{type:"button",onClick:()=>n.push(`/projects/${s}/objectives`),className:"w-full rounded-2xl border border-dashed border-[var(--border)] bg-[var(--card-bg)] p-6 text-center transition-colors hover:border-[var(--card-hover-border)] hover:bg-[var(--secondary)]",children:[(0,t.jsx)(b.Target,{className:"mx-auto mb-2 h-5 w-5 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"text-sm text-[var(--muted-foreground)]",children:"Add your first objective"})]}):(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3 text-xs text-[var(--muted-foreground)]",children:[(0,t.jsxs)("span",{children:[c.length," ",1===c.length?"objective":"objectives"]}),(0,t.jsx)("span",{className:"text-[var(--border)]",children:"|"}),(0,t.jsxs)("span",{children:[p,"/",c.length," complete"]})]}),(0,t.jsxs)("button",{onClick:()=>n.push(`/projects/${s}/objectives`),className:"flex items-center gap-1 text-xs text-[var(--muted-foreground)] transition-colors hover:text-[var(--foreground)]",children:["View all ",(0,t.jsx)(o.ArrowRight,{className:"w-3 h-3"})]})]}),(0,t.jsx)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:c.map(e=>(0,t.jsx)(k,{objective:e,teamName:x.get(e.teamId)??null,onClick:()=>n.push(`/projects/${s}/objectives/${encodeURIComponent(e.id)}`)},e.id))})]})}var C=e.i(597628),$=e.i(99296),A=e.i(33887),S=e.i(644660);function R({icon:e,title:r,accentClass:a,onClick:s,badge:n,children:l}){return(0,t.jsxs)("button",{type:"button",onClick:s,className:"w-full rounded-2xl border border-[var(--card-border)] bg-[var(--card-bg)] p-4 text-left transition-colors hover:bg-[var(--secondary)]",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:a,children:e}),(0,t.jsx)("span",{className:"text-sm font-medium text-[var(--foreground)]",children:r})]}),n]}),l&&(0,t.jsx)("div",{className:"text-sm",children:l})]})}function M({projectId:e,projectSlug:s,primaryThreadId:n}){let l=(0,a.useRouter)(),{connected:d,loading:i}=(0,A.useLinearConnection)(),[o,c]=(0,r.useState)(null),[u,m]=(0,r.useState)(0);return(0,r.useEffect)(()=>{let t=!1;return fetch(`/api/threads?projectId=${encodeURIComponent(e)}&limit=3&format=json`).then(e=>e.ok?e.json():{threads:{},total:0}).then(e=>{if(t)return;let r=Object.values(e.threads??{}).flatMap(e=>e.threads??[]).slice(0,3);c(r),m("number"==typeof e.total?e.total:r.length)}).catch(()=>{t||(c([]),m(0))}),()=>{t=!0}},[e]),(0,t.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-4",children:[(0,t.jsx)(R,{icon:(0,t.jsx)(C.MessageSquare,{className:"w-4 h-4"}),title:"Chat",accentClass:"text-indigo-400",onClick:()=>{n&&l.push(`/projects/${s}/thread/${encodeURIComponent(n)}`)},badge:u>0?(0,t.jsx)("span",{className:"rounded-full bg-[var(--secondary)] px-2 py-0.5 text-xs text-[var(--muted-foreground)]",children:u}):void 0,children:null===o?(0,t.jsx)("div",{className:"space-y-1.5",children:[1,2].map(e=>(0,t.jsx)("div",{className:"h-5 animate-pulse rounded bg-[var(--muted)]"},e))}):0===o.length?(0,t.jsx)("p",{className:"text-[var(--muted-foreground)]",children:"No threads yet"}):(0,t.jsx)("div",{className:"space-y-1",children:o.map(e=>(0,t.jsxs)("div",{className:"flex items-center gap-2 truncate text-[var(--foreground)]",children:[(0,t.jsx)(C.MessageSquare,{className:"h-3 w-3 shrink-0 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"truncate",children:e.title})]},e.id))})}),(0,t.jsx)(R,{icon:(0,t.jsx)($.TerminalSquare,{className:"w-4 h-4"}),title:"Terminal",accentClass:"text-emerald-400",onClick:()=>l.push(`/projects/${s}/terminal`),children:(0,t.jsx)("p",{className:"text-[var(--muted-foreground)]",children:"No sessions yet"})}),(0,t.jsx)(R,{icon:(0,t.jsx)(S.LinearIcon,{className:"w-4 h-4"}),title:"Linear",accentClass:"text-blue-400",onClick:()=>l.push(`/projects/${s}/linear`),badge:i?void 0:d?(0,t.jsx)("span",{className:"rounded-full border border-[var(--status-completed-border)] bg-[var(--status-completed-bg)] px-2 py-0.5 text-[11px] text-[var(--status-completed-text)]",children:"Connected"}):(0,t.jsx)("span",{className:"rounded-full border border-[var(--border)] bg-[var(--secondary)] px-2 py-0.5 text-[11px] text-[var(--muted-foreground)]",children:"Connect"}),children:!i&&!d&&(0,t.jsx)("p",{className:"text-[var(--muted-foreground)]",children:"Connect to see issues"})})]})}function T({projectId:e,projectSlug:r,projectName:s,projectDescription:l,projectMetadata:i,repos:o,threadIds:u}){let x=(0,a.useRouter)(),p=u[0]??null;return(0,t.jsx)("div",{className:"h-full overflow-y-auto",children:(0,t.jsxs)("div",{className:"max-w-5xl mx-auto px-6 py-8 space-y-8",children:[l&&(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:l}),(0,t.jsxs)("section",{children:[(0,t.jsx)("h2",{className:"mb-3 text-sm text-[var(--muted-foreground)]",children:"What you're working toward"}),(0,t.jsx)(I,{projectId:e,projectSlug:r})]}),(0,t.jsxs)("section",{children:[(0,t.jsx)("h2",{className:"mb-3 text-sm text-[var(--muted-foreground)]",children:"Start working"}),(0,t.jsx)(M,{projectId:e,projectSlug:r,primaryThreadId:p})]}),(0,t.jsxs)("section",{children:[(0,t.jsx)("h2",{className:"mb-3 text-sm text-[var(--muted-foreground)]",children:"What's happening now"}),(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsx)(m,{projectId:e,projectSlug:r,onViewAll:()=>x.push(`/projects/${r}/automations`)}),(0,t.jsx)(n,{projectSlug:r,projectThreadIds:u}),(0,t.jsx)(d,{projectId:e,projectSlug:r,projectThreadIds:u})]})]}),(0,t.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[(0,t.jsx)(j,{projectId:e,repos:o}),(0,t.jsx)(c,{projectId:e,onViewAll:()=>x.push(`/projects/${r}/teams`)})]})]})})}e.s(["default",0,function({params:e}){let{slug:a}=(0,r.use)(e),{projects:s}=(0,v.useProjectsWithAgents)(),n=s.find(e=>e.slug===a);return n?(0,t.jsx)(T,{projectId:n.id,projectSlug:n.slug,projectName:n.name,projectDescription:n.description,projectMetadata:n.metadata,repos:n.repos,threadIds:n.thread_ids}):(0,t.jsx)("div",{className:"flex items-center justify-center h-full text-sm text-zinc-500",children:"Loading project..."})}],317389)}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,318634,e=>{"use strict";var t=e.i(843476),r=e.i(271645);function a(e){return null===e.installed?"checking":e.installed?!e.authenticated&&e.authCmd?"needs-auth":"ready":"not-installed"}let s=[{id:"claude",label:"Claude Code",bin:"claude",description:"Recommended for the fastest AGX setup.",installCmd:"npm install -g @anthropic-ai/claude-code",docsUrl:"https://docs.anthropic.com/en/docs/claude-code/quickstart",recommended:!0,statusLabel:"Installed",authCheck:{cmd:'claude -p "say yes" 2>/dev/null',timeout:15e3},authCmd:{cmd:"claude",description:"Opens browser for Anthropic login"}},{id:"codex",label:"Codex",bin:"codex",description:"OpenAI's terminal coding agent.",installCmd:"npm install -g @openai/codex",docsUrl:"https://github.com/openai/codex",statusLabel:"Installed",authCheck:{cmd:"codex --version 2>/dev/null",timeout:5e3},authCmd:{cmd:"codex login --device-auth",description:"Device auth flow for OpenAI"}},{id:"gemini",label:"Gemini CLI",bin:"gemini",description:"Google's CLI for Gemini workflows.",installCmd:"npm install -g @google/gemini-cli",docsUrl:"https://github.com/google-gemini/gemini-cli",statusLabel:"Installed",authCheck:{cmd:'echo "hi" | gemini 2>/dev/null',timeout:15e3},authCmd:{cmd:"gemini",description:"Opens browser for Google login"}},{id:"ollama",label:"Ollama",bin:"ollama",description:"Run local models on your machine.",installCmd:"curl -fsSL https://ollama.com/install.sh | sh",docsUrl:"https://ollama.com/download",statusLabel:"Installed",authCheck:{cmd:"ollama list 2>/dev/null",timeout:5e3}},{id:"zai",label:"Z.AI",bin:"claude",description:"Use the Claude CLI with your Z.AI API key.",installCmd:"npm install -g @anthropic-ai/claude-code",docsUrl:"https://z.ai/",installNote:"Requires Claude Code plus a configured Z.AI API key.",statusLabel:"Via Claude CLI",authCheck:{cmd:'test -n "$ANTHROPIC_API_KEY"',timeout:5e3},authCmd:{cmd:"export ANTHROPIC_API_KEY=<your-key>",description:"Set your Z.AI API key"}}].map(e=>({id:e.id,name:e.label,description:e.description,installCmd:e.installCmd,docsUrl:e.docsUrl,installNote:e.installNote,recommended:e.recommended,authCmd:e.authCmd}));var n=e.i(618566),d=e.i(529471),l=e.i(211464),o=e.i(19035),i=e.i(498027),c=e.i(245110),m=e.i(558201),u=e.i(906724);function x({currentStep:e,totalSteps:r}){return(0,t.jsx)("div",{className:"flex items-center gap-0",role:"progressbar","aria-valuenow":e,"aria-valuemin":1,"aria-valuemax":r,"aria-label":`Step ${e} of ${r}`,children:Array.from({length:r},(r,a)=>{let s=a+1,n=s===e,d=s<e;return(0,t.jsxs)("div",{className:"flex items-center",children:[a>0&&(0,t.jsx)("div",{className:`w-8 h-[2px] ${d?"bg-[var(--foreground)]":"bg-[var(--border)]"}`}),(0,t.jsx)("div",{className:`w-2.5 h-2.5 rounded-full transition-colors ${n?"bg-[var(--foreground)] ring-4 ring-[var(--foreground)]/10":d?"bg-[var(--foreground)]":"bg-[var(--border)]"}`})]},s)})})}function p({currentStep:e,totalSteps:r,children:a,footer:s}){return(0,t.jsxs)("div",{className:"h-screen w-full flex flex-col bg-[var(--background)]",children:[(0,t.jsx)("div",{className:"flex items-center justify-center pt-8 pb-4",children:(0,t.jsx)(x,{currentStep:e,totalSteps:r})}),(0,t.jsx)("div",{className:"flex-1 overflow-y-auto px-4",children:(0,t.jsx)("div",{className:"max-w-2xl mx-auto w-full py-6",children:a})}),s&&(0,t.jsx)("div",{className:"border-t border-[var(--border)] bg-[var(--background)] px-4 py-4",children:(0,t.jsx)("div",{className:"max-w-2xl mx-auto w-full",children:s})})]})}function h({text:e}){let[a,s]=(0,r.useState)(!1),n=(0,r.useCallback)(()=>{navigator.clipboard.writeText(e).then(()=>{s(!0),setTimeout(()=>s(!1),2e3)})},[e]);return(0,t.jsx)("button",{type:"button",onClick:n,className:"p-1.5 rounded-md hover:bg-[var(--muted)] transition-colors text-[var(--muted-foreground)] hover:text-[var(--foreground)]",title:"Copy command",children:a?(0,t.jsx)(d.Check,{className:"w-3.5 h-3.5 text-emerald-500"}):(0,t.jsx)(o.Copy,{className:"w-3.5 h-3.5"})})}function g({cli:e,onVerify:s}){let n=a(e),[o,x]=(0,r.useState)("needs-auth"===n),[p,f]=(0,r.useState)(!1),[v,b]=(0,r.useState)(null),j="not-installed"===n||"needs-auth"===n,N=(0,r.useCallback)(async()=>{f(!0),b(null);try{let t=await fetch(`/api/providers/check/${e.id}`,{cache:"no-store"});if(!t.ok)return void b("Check failed");(await t.json()).authenticated?s?.(e.id):b("Not authenticated yet")}catch{b("Check failed")}finally{f(!1)}},[e.id,s]);return(0,t.jsxs)("div",{className:"border border-[var(--card-border)] rounded-lg overflow-hidden",children:[(0,t.jsxs)("button",{type:"button",onClick:()=>j&&x(!o),className:`w-full flex items-center gap-3 px-4 py-3 transition-colors text-left ${j?"hover:bg-[var(--item-hover-bg)] cursor-pointer":"cursor-default"}`,children:[(0,t.jsx)("div",{className:"shrink-0",children:"checking"===n?(0,t.jsx)(l.Circle,{className:"w-4 h-4 text-[var(--muted-foreground)] animate-pulse"}):"ready"===n?(0,t.jsx)("div",{className:"w-5 h-5 rounded-full bg-emerald-100 dark:bg-emerald-900/30 flex items-center justify-center",children:(0,t.jsx)(d.Check,{className:"w-3 h-3 text-emerald-600 dark:text-emerald-400"})}):"needs-auth"===n?(0,t.jsx)("div",{className:"w-5 h-5 rounded-full bg-amber-100 dark:bg-amber-900/30 flex items-center justify-center",children:(0,t.jsx)(l.Circle,{className:"w-3 h-3 text-amber-600 dark:text-amber-400"})}):(0,t.jsx)(l.Circle,{className:"w-4 h-4 text-[var(--muted-foreground)]"})}),(0,t.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"text-[14px] font-semibold text-[var(--foreground)]",children:e.name}),e.recommended&&"not-installed"===n&&(0,t.jsx)("span",{className:"text-[11px] font-medium text-[var(--foreground)] bg-[var(--secondary)] px-1.5 py-0.5 rounded",children:"Recommended"}),"ready"===n&&(0,t.jsx)("span",{className:"text-[11px] font-medium text-emerald-600 dark:text-emerald-400 bg-emerald-50 dark:bg-emerald-900/20 px-1.5 py-0.5 rounded",children:"Ready"}),"needs-auth"===n&&(0,t.jsx)("span",{className:"text-[11px] font-medium text-amber-600 dark:text-amber-400 bg-amber-50 dark:bg-amber-900/20 px-1.5 py-0.5 rounded",children:"Needs auth"})]}),(0,t.jsx)("p",{className:"text-[12px] text-[var(--muted-foreground)]",children:e.description})]}),j&&(0,t.jsx)(i.ChevronDown,{className:`w-4 h-4 text-[var(--muted-foreground)] transition-transform ${o?"rotate-180":""}`})]}),o&&"not-installed"===n&&(0,t.jsxs)("div",{className:"px-4 pb-3 border-t border-[var(--card-border)]",children:[(0,t.jsxs)("div",{className:"mt-3 flex items-center gap-2 bg-[var(--secondary)] rounded-md px-3 py-2 font-mono text-[13px] text-[var(--foreground)]",children:[(0,t.jsx)(m.Terminal,{className:"w-3.5 h-3.5 text-[var(--muted-foreground)] shrink-0"}),(0,t.jsx)("code",{className:"flex-1 overflow-x-auto whitespace-nowrap",children:e.installCmd}),(0,t.jsx)(h,{text:e.installCmd})]}),(0,t.jsxs)("a",{href:e.docsUrl,target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-1 mt-2 text-[12px] text-[var(--primary)] hover:underline",children:["Documentation ",(0,t.jsx)(c.ExternalLink,{className:"w-3 h-3"})]}),e.installNote&&(0,t.jsx)("p",{className:"mt-2 text-[12px] text-[var(--muted-foreground)]",children:e.installNote})]}),o&&"needs-auth"===n&&e.authCmd&&(0,t.jsxs)("div",{className:"px-4 pb-3 border-t border-[var(--card-border)]",children:[(0,t.jsx)("p",{className:"mt-3 text-[12px] text-[var(--muted-foreground)]",children:e.authCmd.description}),(0,t.jsxs)("div",{className:"mt-2 flex items-center gap-2 bg-[var(--secondary)] rounded-md px-3 py-2 font-mono text-[13px] text-[var(--foreground)]",children:[(0,t.jsx)(m.Terminal,{className:"w-3.5 h-3.5 text-[var(--muted-foreground)] shrink-0"}),(0,t.jsx)("code",{className:"flex-1 overflow-x-auto whitespace-nowrap",children:e.authCmd.cmd}),(0,t.jsx)(h,{text:e.authCmd.cmd})]}),(0,t.jsxs)("div",{className:"mt-3 flex items-center gap-2",children:[(0,t.jsxs)("button",{type:"button",onClick:N,disabled:p,className:"inline-flex items-center gap-1.5 px-3 py-1.5 text-[12px] font-medium rounded-md bg-[var(--foreground)] text-[var(--background)] hover:opacity-90 transition-colors disabled:opacity-60",children:[p&&(0,t.jsx)(u.Loader2,{className:"w-3 h-3 animate-spin"}),p?"Checking...":"Verify"]}),v&&(0,t.jsx)("span",{className:"text-[12px] text-amber-600 dark:text-amber-400",children:v})]})]})]})}function f({clis:e,readyState:r,authenticatedCount:a,totalCount:s,onVerifySuccess:n,onNext:d}){let l="ready"===r,o=e.find(e=>e.recommended)??e[0]??null,i=e.filter(e=>!e.recommended);return(0,t.jsxs)(p,{currentStep:1,totalSteps:4,footer:(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsx)("span",{className:"text-[13px] text-[var(--muted-foreground)]",children:(0,t.jsxs)("span",{className:l?"text-emerald-600 dark:text-emerald-400":"",children:[a,"/",s," providers ready"]})}),(0,t.jsx)("button",{type:"button",onClick:d,disabled:!l,className:"inline-flex items-center gap-2 px-6 py-2.5 bg-[var(--foreground)] text-[var(--background)] text-[14px] font-semibold rounded-lg hover:opacity-90 transition-all disabled:opacity-40 disabled:cursor-not-allowed",children:"Next"})]}),children:[(0,t.jsxs)("div",{className:"text-center mb-8",children:[(0,t.jsx)("h1",{className:"text-[24px] font-bold text-[var(--foreground)] tracking-tight",children:"Connect a Provider"}),(0,t.jsxs)("p",{className:"mt-2 text-[14px] text-[var(--muted-foreground)] leading-relaxed",children:["AGX orchestrates AI agents across multiple providers.",(0,t.jsx)("br",{}),"Connect at least one to get started."]})]}),"checking"===r&&(0,t.jsxs)("div",{className:"text-center py-8",children:[(0,t.jsx)(u.Loader2,{className:"w-6 h-6 animate-spin text-[var(--muted-foreground)] mx-auto"}),(0,t.jsx)("p",{className:"mt-3 text-[13px] text-[var(--muted-foreground)]",children:"Detecting installed providers..."})]}),"error"===r&&(0,t.jsx)("div",{className:"text-center py-8",children:(0,t.jsx)("p",{className:"text-[14px] text-[var(--muted-foreground)]",children:"Could not detect providers. Please reload."})}),("needs-setup"===r||"ready"===r)&&(0,t.jsxs)("div",{className:"space-y-4",children:[!e.some(e=>e.installed)&&o&&(0,t.jsxs)("div",{className:"rounded-xl border border-[var(--card-border)] bg-[var(--secondary)] p-4 mb-2",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-wide text-[var(--muted-foreground)]",children:"Start Here"}),(0,t.jsx)("span",{className:"rounded bg-[var(--background)] px-2 py-0.5 text-[11px] font-medium text-[var(--foreground)]",children:o.name})]}),(0,t.jsx)("p",{className:"mt-2 text-[13px] text-[var(--foreground)]",children:"Install Claude Code first if you want the shortest path into AGX."})]}),(0,t.jsx)("div",{className:"space-y-2",children:o&&(0,t.jsx)(g,{cli:o,onVerify:n})}),i.length>0&&(0,t.jsxs)("div",{className:"mt-4",children:[(0,t.jsx)("h3",{className:"mb-2 text-[12px] font-semibold uppercase tracking-wide text-[var(--muted-foreground)]",children:"Other Options"}),(0,t.jsx)("div",{className:"space-y-2",children:i.map(e=>(0,t.jsx)(g,{cli:e,onVerify:n},e.id))})]})]})]})}var v=e.i(363732);let b=(0,v.default)("plug",[["path",{d:"M12 22v-5",key:"1ega77"}],["path",{d:"M15 8V2",key:"18g5xt"}],["path",{d:"M17 8a1 1 0 0 1 1 1v4a4 4 0 0 1-4 4h-4a4 4 0 0 1-4-4V9a1 1 0 0 1 1-1z",key:"1xoxul"}],["path",{d:"M9 8V2",key:"14iosj"}]]),j=[{id:"linear",name:"Linear",description:"Read and update tickets so agents can track work in Linear during execution.",docsUrl:"https://linear.app/docs/mcp"}],N=[{id:"claude",label:"Claude Code"},{id:"codex",label:"Codex"},{id:"gemini",label:"Gemini CLI"}];function y({onNext:e,onBack:a}){let[s,n]=(0,r.useState)(!0),[l,o]=(0,r.useState)({}),[i,m]=(0,r.useState)({}),[x,h]=(0,r.useState)(null),[g,f]=(0,r.useState)(null),v=(0,r.useCallback)(async()=>{try{let[e,t]=await Promise.all([fetch("/api/linear/status"),fetch("/api/linear/mcp-setup")]),r=await e.json(),a=await t.json();o(r.clis??{}),m(a.configured??{})}catch{}finally{n(!1)}},[]);(0,r.useEffect)(()=>{v()},[v]);let k=(0,r.useCallback)(async e=>{h(e),f(null);try{let t=await fetch("/api/linear/mcp-setup",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cli:e})});if(t.ok)await v();else{let e=await t.json().catch(()=>({}));f(e.error||"Failed to configure MCP")}}catch{f("Failed to configure MCP")}finally{h(null)}},[v]),C=N.filter(e=>l[e.id]),w=C.some(e=>i[e.id]);return(0,t.jsxs)(p,{currentStep:2,totalSteps:4,footer:(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsx)("button",{type:"button",onClick:a,className:"text-[14px] text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Back"}),(0,t.jsx)("button",{type:"button",onClick:e,className:"inline-flex items-center gap-2 px-6 py-2.5 bg-[var(--foreground)] text-[var(--background)] text-[14px] font-semibold rounded-lg hover:opacity-90 transition-all",children:w?"Next":"Skip"})]}),children:[(0,t.jsxs)("div",{className:"text-center mb-8",children:[(0,t.jsx)("h1",{className:"text-[24px] font-bold text-[var(--foreground)] tracking-tight",children:"Configure MCP Servers"}),(0,t.jsxs)("p",{className:"mt-2 text-[14px] text-[var(--muted-foreground)] leading-relaxed",children:["MCP servers let your agents interact with external tools.",(0,t.jsx)("br",{}),"Set them up so agents can read and update tickets automatically."]})]}),s?(0,t.jsxs)("div",{className:"text-center py-8",children:[(0,t.jsx)(u.Loader2,{className:"w-6 h-6 animate-spin text-[var(--muted-foreground)] mx-auto"}),(0,t.jsx)("p",{className:"mt-3 text-[13px] text-[var(--muted-foreground)]",children:"Checking MCP configuration..."})]}):(0,t.jsxs)("div",{className:"space-y-6",children:[j.map(e=>(0,t.jsxs)("div",{className:"border border-[var(--card-border)] rounded-lg overflow-hidden",children:[(0,t.jsxs)("div",{className:"px-4 py-3 flex items-center gap-3",children:[(0,t.jsx)("div",{className:"w-8 h-8 rounded-lg bg-[var(--secondary)] flex items-center justify-center",children:(0,t.jsx)(b,{className:"w-4 h-4 text-[var(--foreground)]"})}),(0,t.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"text-[14px] font-semibold text-[var(--foreground)]",children:e.name}),w&&(0,t.jsx)("span",{className:"text-[11px] font-medium text-emerald-600 dark:text-emerald-400 bg-emerald-50 dark:bg-emerald-900/20 px-1.5 py-0.5 rounded",children:"Configured"})]}),(0,t.jsx)("p",{className:"text-[12px] text-[var(--muted-foreground)]",children:e.description})]})]}),(0,t.jsxs)("div",{className:"border-t border-[var(--card-border)] px-4 py-3 space-y-2",children:[(0,t.jsx)("p",{className:"text-[11px] font-semibold uppercase tracking-wide text-[var(--muted-foreground)] mb-2",children:"Configure for your CLI"}),N.map(e=>{let r=l[e.id],a=i[e.id],s=x===e.id;return(0,t.jsxs)("div",{className:`flex items-center justify-between rounded-md border border-[var(--card-border)] px-3 py-2.5 ${!r?"opacity-40":""}`,children:[(0,t.jsx)("span",{className:"text-[13px] text-[var(--foreground)]",children:e.label}),r?a?(0,t.jsxs)("span",{className:"flex items-center gap-1 text-[11px] text-emerald-600 dark:text-emerald-400",children:[(0,t.jsx)(d.Check,{className:"w-3.5 h-3.5"}),"Configured"]}):(0,t.jsx)("button",{type:"button",onClick:()=>k(e.id),disabled:s,className:"inline-flex items-center gap-1.5 px-3 py-1 text-[12px] font-medium rounded-md border border-[var(--card-border)] hover:bg-[var(--secondary)] transition-colors disabled:opacity-50",children:s?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(u.Loader2,{className:"w-3 h-3 animate-spin"}),"Setting up..."]}):"Set up"}):(0,t.jsx)("span",{className:"text-[11px] text-[var(--muted-foreground)]",children:"Not installed"})]},e.id)}),g&&(0,t.jsx)("p",{className:"text-[12px] text-red-500 dark:text-red-400 mt-1",children:g})]}),(0,t.jsx)("div",{className:"border-t border-[var(--card-border)] px-4 py-2.5",children:(0,t.jsxs)("a",{href:e.docsUrl,target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-1 text-[12px] text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:["Learn more about ",e.name," MCP",(0,t.jsx)(c.ExternalLink,{className:"w-3 h-3"})]})})]},e.id)),0===C.length&&(0,t.jsx)("div",{className:"text-center py-4",children:(0,t.jsx)("p",{className:"text-[13px] text-[var(--muted-foreground)]",children:"No CLI providers detected. Go back and install a provider first, or skip this step."})})]})]})}var k=e.i(55236),C=e.i(129463);let w=(0,v.default)("file-code",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 12.5 8 15l2 2.5",key:"1tg20x"}],["path",{d:"m14 12.5 2 2.5-2 2.5",key:"yinavb"}]]);var S=e.i(797167);function I({folderPath:e}){let{analysis:a,loading:s}=function(e){let[t,a]=(0,r.useState)(null),[s,n]=(0,r.useState)(!1);return(0,r.useEffect)(()=>{if(!e)return void a(null);let t=!1;return n(!0),(async()=>{try{let r=await fetch("/api/filesystem/analyze",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:e})});if(t)return;if(r.ok){let e=await r.json();a(e.analysis)}}catch{}finally{t||n(!1)}})(),()=>{t=!0}},[e]),{analysis:t,loading:s}}(e);if(s)return(0,t.jsxs)("div",{className:"flex items-center gap-2 mt-2 text-[12px] text-[var(--muted-foreground)]",children:[(0,t.jsx)(u.Loader2,{className:"w-3 h-3 animate-spin"})," Analyzing..."]});if(!a)return null;let n=Object.entries(a.languages).sort(([,e],[,t])=>t-e).slice(0,5);return(0,t.jsxs)("div",{className:"mt-2 flex flex-wrap items-center gap-3 text-[12px] text-[var(--muted-foreground)]",children:[a.isGit&&a.branch&&(0,t.jsxs)("span",{className:"inline-flex items-center gap-1",children:[(0,t.jsx)(C.GitBranch,{className:"w-3 h-3"})," ",a.branch]}),a.isGit&&a.status&&(0,t.jsxs)("span",{children:[a.status.modified,"M ",a.status.untracked,"? ",a.status.staged,"S"]}),n.map(([e,r])=>(0,t.jsxs)("span",{className:"inline-flex items-center gap-1",children:[(0,t.jsx)(w,{className:"w-3 h-3"})," ",e," (",r,")"]},e))]})}function P({data:e,onChange:a,onNext:s,onBack:n}){let[d,l]=(0,r.useState)(!1),o=(0,r.useCallback)(async()=>{l(!0);try{let t=await fetch("/api/filesystem/pick-folder",{method:"POST"});if(!t.ok)return;let r=await t.json();if(r.cancelled||!r.path)return;let s=r.path.split("/").filter(Boolean).pop()||r.path;if(e.folders.some(e=>e.path===r.path))return;a({...e,name:e.name||s,folders:[...e.folders,{name:s,path:r.path}]})}catch{}finally{l(!1)}},[e,a]),i=(0,r.useCallback)(t=>{a({...e,folders:e.folders.filter(e=>e.path!==t)})},[e,a]),c=e.name.trim().length>0;return(0,t.jsxs)(p,{currentStep:3,totalSteps:4,footer:(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsx)("button",{type:"button",onClick:n,className:"text-[14px] text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Back"}),(0,t.jsx)("button",{type:"button",onClick:s,disabled:!c,className:"inline-flex items-center gap-2 px-6 py-2.5 bg-[var(--foreground)] text-[var(--background)] text-[14px] font-semibold rounded-lg hover:opacity-90 transition-all disabled:opacity-40 disabled:cursor-not-allowed",children:"Next"})]}),children:[(0,t.jsxs)("div",{className:"text-center mb-8",children:[(0,t.jsx)("h1",{className:"text-[24px] font-bold text-[var(--foreground)] tracking-tight",children:"Create Your Project"}),(0,t.jsx)("p",{className:"mt-2 text-[14px] text-[var(--muted-foreground)]",children:"Name your project and attach folders your agents will work in."})]}),(0,t.jsxs)("div",{className:"space-y-6",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{htmlFor:"project-name",className:"block text-[13px] font-medium text-[var(--foreground)] mb-1.5",children:"Project name"}),(0,t.jsx)("input",{id:"project-name",type:"text",value:e.name,onChange:t=>a({...e,name:t.target.value}),placeholder:"My Project",className:"w-full px-3 py-2.5 rounded-lg border border-[var(--border)] bg-[var(--background)] text-[14px] text-[var(--foreground)] placeholder:text-[var(--muted-foreground)] focus:outline-none focus:ring-2 focus:ring-[var(--foreground)]/20",autoFocus:!0})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("label",{htmlFor:"project-desc",className:"block text-[13px] font-medium text-[var(--foreground)] mb-1.5",children:["Description ",(0,t.jsx)("span",{className:"text-[var(--muted-foreground)] font-normal",children:"(optional)"})]}),(0,t.jsx)("input",{id:"project-desc",type:"text",value:e.description,onChange:t=>a({...e,description:t.target.value}),placeholder:"What this project is about",className:"w-full px-3 py-2.5 rounded-lg border border-[var(--border)] bg-[var(--background)] text-[14px] text-[var(--foreground)] placeholder:text-[var(--muted-foreground)] focus:outline-none focus:ring-2 focus:ring-[var(--foreground)]/20"})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,t.jsx)("label",{className:"text-[13px] font-medium text-[var(--foreground)]",children:"Folders"}),(0,t.jsxs)("button",{type:"button",onClick:o,disabled:d,className:"inline-flex items-center gap-1.5 px-3 py-1.5 text-[12px] font-medium rounded-md border border-[var(--border)] hover:bg-[var(--secondary)] transition-colors disabled:opacity-60",children:[d?(0,t.jsx)(u.Loader2,{className:"w-3 h-3 animate-spin"}):(0,t.jsx)(k.Folder,{className:"w-3 h-3"}),"Browse"]})]}),0===e.folders.length?(0,t.jsx)("p",{className:"text-[13px] text-[var(--muted-foreground)] py-4 text-center border border-dashed border-[var(--border)] rounded-lg",children:"No folders attached yet. Click Browse to add one."}):(0,t.jsx)("div",{className:"space-y-2",children:e.folders.map(e=>(0,t.jsxs)("div",{className:"border border-[var(--card-border)] rounded-lg px-4 py-3",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 min-w-0",children:[(0,t.jsx)(k.Folder,{className:"w-4 h-4 text-[var(--muted-foreground)] shrink-0"}),(0,t.jsxs)("div",{className:"min-w-0",children:[(0,t.jsx)("p",{className:"text-[13px] font-medium text-[var(--foreground)] truncate",children:e.name}),(0,t.jsx)("p",{className:"text-[11px] text-[var(--muted-foreground)] truncate",children:e.path})]})]}),(0,t.jsx)("button",{type:"button",onClick:()=>i(e.path),className:"p-1 rounded hover:bg-[var(--secondary)] text-[var(--muted-foreground)] hover:text-[var(--foreground)]",children:(0,t.jsx)(S.X,{className:"w-3.5 h-3.5"})})]}),(0,t.jsx)(I,{folderPath:e.path})]},e.path))})]})]})]})}var A=e.i(367859),L=e.i(572665),O=e.i(780004);let T=[{id:"gemini",label:"Gemini"},{id:"claude",label:"Claude"},{id:"ollama",label:"Ollama"},{id:"codex",label:"Codex"},{id:"zai",label:"Z.AI"}],M={claude:["claude-opus-4-20250514","claude-sonnet-4-20250514","claude-haiku-4-20250514"],codex:["o4-mini","o3","gpt-4.1","gpt-4.1-mini","gpt-4.1-nano"],gemini:["gemini-2.5-pro","gemini-2.5-flash","gemini-2.0-flash"],ollama:["qwen3:8b","devstral","qwen2.5-coder:14b","llama3.3:70b","deepseek-coder-v2:16b"],zai:["claude-opus-4-20250514","claude-sonnet-4-20250514"]},E={balanced:"bg-blue-100 dark:bg-blue-900/30 text-blue-700 dark:text-blue-300",specialist:"bg-purple-100 dark:bg-purple-900/30 text-purple-700 dark:text-purple-300",creative:"bg-amber-100 dark:bg-amber-900/30 text-amber-700 dark:text-amber-300",analytical:"bg-green-100 dark:bg-green-900/30 text-green-700 dark:text-green-300"};function $({value:e,onChange:a,suggestions:s,placeholder:n="Model name..."}){let[d,l]=(0,r.useState)(!1),[o,i]=(0,r.useState)(""),c=(0,r.useRef)(null);(0,r.useEffect)(()=>{function e(e){c.current&&!c.current.contains(e.target)&&l(!1)}return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[]);let m=s.filter(t=>t.toLowerCase().includes((o||e).toLowerCase()));return(0,t.jsxs)("div",{ref:c,className:"relative flex-1",children:[(0,t.jsx)("input",{type:"text",value:e,placeholder:n,onChange:e=>{a(e.target.value),i(e.target.value),l(!0)},onFocus:()=>l(!0),className:"w-full h-8 px-2.5 text-[12px] rounded-md border border-[var(--card-border)] bg-[var(--background)] text-[var(--foreground)] placeholder:text-[var(--muted-foreground)] focus:outline-none focus:border-[var(--foreground)]/40 transition-colors"}),d&&m.length>0&&(0,t.jsx)("div",{className:"absolute z-50 top-full left-0 right-0 mt-1 max-h-[160px] overflow-y-auto rounded-md border border-[var(--card-border)] bg-[var(--background)] shadow-lg",children:m.map(r=>(0,t.jsx)("button",{type:"button",onClick:()=>{a(r),i(""),l(!1)},className:`w-full text-left px-2.5 py-1.5 text-[12px] transition-colors hover:bg-[var(--secondary)] ${r===e?"text-[var(--foreground)] font-medium":"text-[var(--muted-foreground)]"}`,children:r},r))})]})}function B({provider:e,model:r,onProviderChange:a,onModelChange:s,providers:n,label:d}){let l=M[e]??[];return(0,t.jsxs)("div",{className:"space-y-1.5",children:[d&&(0,t.jsx)("span",{className:"text-[11px] font-medium text-[var(--muted-foreground)] uppercase tracking-wide",children:d}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsxs)("select",{value:e,onChange:e=>{a(e.target.value),s("")},className:"h-8 px-2 text-[12px] rounded-md border border-[var(--card-border)] bg-[var(--background)] text-[var(--foreground)] focus:outline-none focus:border-[var(--foreground)]/40 transition-colors appearance-none cursor-pointer pr-6",style:{backgroundImage:"url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E\")",backgroundRepeat:"no-repeat",backgroundPosition:"right 6px center"},children:[(0,t.jsx)("option",{value:"",children:"Provider..."}),n.map(e=>(0,t.jsx)("option",{value:e.id,children:e.label},e.id))]}),(0,t.jsx)($,{value:r,onChange:s,suggestions:l,placeholder:e?"Select or type model...":"Select a provider first"})]})]})}function R({agent:e,override:a,teamProvider:s,teamModel:n,providers:d,onOverrideChange:l}){let o=E[e.style]??E.balanced,i=a&&(a.provider||a.model),[c,m]=(0,r.useState)(!!i);a?.provider;let u=a?.model||n||"";return(0,t.jsxs)("div",{className:"py-1.5",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("div",{className:"w-7 h-7 rounded-full bg-[var(--secondary)] flex items-center justify-center text-[12px] font-semibold text-[var(--foreground)]",children:e.name.charAt(0)}),(0,t.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"text-[13px] font-medium text-[var(--foreground)]",children:e.name}),(0,t.jsx)("span",{className:`text-[10px] px-1.5 py-0.5 rounded font-medium ${o}`,children:e.style}),i&&(0,t.jsx)("span",{className:"text-[10px] px-1.5 py-0.5 rounded font-medium bg-violet-100 dark:bg-violet-900/30 text-violet-700 dark:text-violet-300",children:"custom"})]}),(0,t.jsxs)("div",{className:"flex items-center gap-1",children:[(0,t.jsx)("p",{className:"text-[11px] text-[var(--muted-foreground)] truncate",children:e.title}),(s||n)&&!i&&u&&(0,t.jsxs)("span",{className:"text-[10px] text-[var(--muted-foreground)] opacity-60 shrink-0",children:["(",u,")"]})]})]}),(0,t.jsx)("button",{type:"button",onClick:()=>{c?(l(e.id,void 0),m(!1)):m(!0)},className:"p-1 rounded hover:bg-[var(--background)] text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",title:c?"Remove override":"Override provider/model",children:(0,t.jsx)(A.ChevronRight,{className:`w-3 h-3 transition-transform ${c?"rotate-90":""}`})})]}),c&&(0,t.jsx)("div",{className:"mt-1.5 ml-9",children:(0,t.jsx)(B,{provider:a?.provider||"",model:a?.model||"",onProviderChange:t=>l(e.id,{agentId:e.id,provider:t||void 0,model:a?.model}),onModelChange:t=>l(e.id,{agentId:e.id,provider:a?.provider,model:t||void 0}),providers:d})})]})}function U({template:e,isSelected:r,onSelect:a}){return(0,t.jsxs)("button",{type:"button",onClick:()=>a(e),className:`w-full text-left p-4 rounded-lg border transition-all ${r?"border-[var(--foreground)] bg-[var(--secondary)]":"border-[var(--card-border)] hover:border-[var(--foreground)]/30 hover:bg-[var(--secondary)]/50"}`,children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"text-lg",children:e.icon}),(0,t.jsx)("span",{className:"text-[14px] font-semibold text-[var(--foreground)]",children:e.name})]}),r&&(0,t.jsx)("div",{className:"w-5 h-5 rounded-full bg-[var(--foreground)] flex items-center justify-center",children:(0,t.jsx)(d.Check,{className:"w-3 h-3 text-[var(--background)]"})})]}),(0,t.jsx)("p",{className:"mt-1 text-[12px] text-[var(--muted-foreground)]",children:e.description}),(0,t.jsxs)("p",{className:"mt-2 text-[11px] text-[var(--muted-foreground)]",children:[e.agents.length," agent",1!==e.agents.length?"s":"",e.variants&&e.variants.length>0?` \xb7 ${e.variants.length} variants`:""]})]})}function z({selectedTeams:e,onChange:a,onNext:s,onBack:n}){let d=(0,O.listTeamTemplates)(),{providers:l}=function(){let[e,t]=(0,r.useState)(T),[a,s]=(0,r.useState)(!0);(0,r.useEffect)(()=>{let e=!1;return(async()=>{try{let r=await fetch("/api/providers"),a=await r.json().catch(()=>({}));if(!r.ok)throw Error(a?.error||`HTTP ${r.status}`);let s=(Array.isArray(a?.providers)?a.providers:[]).filter(e=>e&&"string"==typeof e.id&&"string"==typeof e.label&&!1!==e.installed).map(e=>({id:e.id,label:e.label}));!e&&s.length>0&&t(s)}catch{}finally{e||s(!1)}})(),()=>{e=!0}},[]);let n=(0,r.useMemo)(()=>e.map(e=>e.id),[e]);return{providers:e,providerIds:n,loading:a}}(),[o,i]=(0,r.useState)(null),[c,m]=(0,r.useState)({}),u=(0,r.useCallback)(t=>e.some(e=>e.templateId===t),[e]),x=(0,r.useCallback)(t=>{if(u(t.id)){a(e.filter(e=>e.templateId!==t.id)),i(null);return}t.variants&&t.variants.length>0?i(o===t.id?null:t.id):a([...e,{templateId:t.id,name:t.name,agents:t.agents}])},[e,a,o,u]),h=(0,r.useCallback)((t,r)=>{m(e=>({...e,[t]:r.id})),a([...e.filter(e=>e.templateId!==t),{templateId:t,variantId:r.id,name:r.name,agents:r.agents}]),i(null)},[e,a]),g=(0,r.useCallback)(t=>{a(e.filter(e=>e.templateId!==t))},[e,a]),f=(0,r.useCallback)((t,r)=>{a(e.map(e=>e.templateId===t?{...e,provider:r||void 0}:e))},[e,a]),v=(0,r.useCallback)((t,r)=>{a(e.map(e=>e.templateId===t?{...e,model:r||void 0}:e))},[e,a]),b=(0,r.useCallback)((t,r,s)=>{a(e.map(e=>{if(e.templateId!==t)return e;let a=(e.agentOverrides??[]).filter(e=>e.agentId!==r);return s&&(s.provider||s.model)&&a.push(s),{...e,agentOverrides:a.length>0?a:void 0}}))},[e,a]);return(0,t.jsxs)(p,{currentStep:4,totalSteps:4,footer:(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsx)("button",{type:"button",onClick:n,className:"text-[14px] text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Back"}),(0,t.jsx)("button",{type:"button",onClick:s,className:"inline-flex items-center gap-2 px-6 py-2.5 bg-[var(--foreground)] text-[var(--background)] text-[14px] font-semibold rounded-lg hover:opacity-90 transition-all",children:e.length>0?"Create Project":"Skip & Create Project"})]}),children:[(0,t.jsxs)("div",{className:"text-center mb-8",children:[(0,t.jsx)("h1",{className:"text-[24px] font-bold text-[var(--foreground)] tracking-tight",children:"Add Teams"}),(0,t.jsx)("p",{className:"mt-2 text-[14px] text-[var(--muted-foreground)]",children:"Pick team templates to populate your project with agents. You can customize them later."})]}),e.length>0&&(0,t.jsx)("div",{className:"mb-6 space-y-2",children:e.map(e=>(0,t.jsxs)("div",{className:"border border-[var(--foreground)]/20 bg-[var(--secondary)] rounded-lg p-3",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(L.Users,{className:"w-4 h-4 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"text-[13px] font-semibold text-[var(--foreground)]",children:e.name}),(0,t.jsxs)("span",{className:"text-[11px] text-[var(--muted-foreground)]",children:[e.agents.length," agents"]})]}),(0,t.jsx)("button",{type:"button",onClick:()=>g(e.templateId),className:"p-1 rounded hover:bg-[var(--background)] text-[var(--muted-foreground)] hover:text-[var(--foreground)]",children:(0,t.jsx)(S.X,{className:"w-3.5 h-3.5"})})]}),(0,t.jsx)("div",{className:"pl-6 mb-2",children:(0,t.jsx)(B,{provider:e.provider||"",model:e.model||"",onProviderChange:t=>f(e.templateId,t),onModelChange:t=>v(e.templateId,t),providers:l,label:"Default provider & model"})}),(0,t.jsx)("div",{className:"pl-6 space-y-0.5",children:e.agents.map(r=>(0,t.jsx)(R,{agent:r,override:e.agentOverrides?.find(e=>e.agentId===r.id),teamProvider:e.provider,teamModel:e.model,providers:l,onOverrideChange:(t,r)=>b(e.templateId,t,r)},r.id))})]},e.templateId))}),(0,t.jsx)("div",{className:"grid grid-cols-2 gap-3",children:d.map(e=>(0,t.jsxs)("div",{children:[(0,t.jsx)(U,{template:e,isSelected:u(e.id),onSelect:x}),o===e.id&&e.variants&&e.variants.length>0&&(0,t.jsx)("div",{className:"mt-2 ml-2 border-l-2 border-[var(--border)] pl-3 space-y-1",children:e.variants.map(r=>(0,t.jsxs)("button",{type:"button",onClick:()=>h(e.id,r),className:`w-full text-left px-3 py-2 rounded-md text-[13px] transition-colors ${c[e.id]===r.id?"bg-[var(--secondary)] font-medium text-[var(--foreground)]":"text-[var(--muted-foreground)] hover:bg-[var(--secondary)]/50 hover:text-[var(--foreground)]"}`,children:[r.name,(0,t.jsxs)("span",{className:"ml-2 text-[11px] text-[var(--muted-foreground)]",children:[r.agents.length," agents"]})]},r.id))})]},e.id))})]})}var G=e.i(741746);e.s(["default",0,function(){let e=function(){let[e,t]=(0,r.useState)("checking"),[n,d]=(0,r.useState)(s.map(e=>({...e,installed:null,authenticated:null})));(0,r.useEffect)(()=>{let e=!1;return(async()=>{try{let r=await fetch("/api/providers",{cache:"no-store"});if(e)return;if(!r.ok)return void t("error");let n=await r.json(),l=Array.isArray(n?.providers)?n.providers:[],o=s.map(e=>{let t=l.find(t=>t?.id===e.id);return{...e,installed:t?.installed??!1,authenticated:t?.authenticated??!1}});e||(d(o),t(o.some(e=>"ready"===a(e))?"ready":"needs-setup"))}catch{e||t("error")}})(),()=>{e=!0}},[]);let l=(0,r.useCallback)(e=>{d(r=>{let s=r.map(t=>t.id===e?{...t,authenticated:!0}:t);return s.some(e=>"ready"===a(e))&&t("ready"),s})},[]),o=(0,r.useMemo)(()=>n.filter(e=>"needs-auth"===a(e)).map(e=>e.id),[n]),i=o.join(",");(0,r.useEffect)(()=>{if("checking"===e||0===o.length)return;let t=new AbortController,r=new Map;return o.forEach(function e(a){if(t.signal.aborted)return;let s=setTimeout(async()=>{if(!t.signal.aborted){try{let e=await fetch(`/api/providers/check/${a}`,{cache:"no-store",signal:t.signal});if(t.signal.aborted)return;if(e.ok){let t=await e.json();if(t.authenticated)return void l(a);if(!t.installed)return void d(e=>e.map(e=>e.id===a?{...e,installed:!1,authenticated:!1}:e))}}catch{if(t.signal.aborted)return}t.signal.aborted||e(a)}},5e3);r.set(a,s)}),()=>{t.abort(),r.forEach(e=>clearTimeout(e))}},[e,i,l]);let c=n.filter(e=>"ready"===a(e)).length;return{readyState:e,clis:n,authenticatedCount:c,totalCount:n.length,handleVerifySuccess:l}}(),d=function(){let e=(0,n.useRouter)(),[t,a]=(0,r.useState)(1),[s,d]=(0,r.useState)({name:"",description:"",folders:[]}),[l,o]=(0,r.useState)([]),[i,c]=(0,r.useState)(!1),[m,u]=(0,r.useState)(null),x=(0,r.useCallback)(()=>{a(e=>Math.min(e+1,4))},[]),p=(0,r.useCallback)(()=>{a(e=>Math.max(e-1,1))},[]),h=(0,r.useCallback)(async()=>{c(!0),u(null);try{let t=s.name.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"")||"project",r=s.folders.map(e=>({name:e.name,path:e.path})),a=await fetch("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:s.name,description:s.description||void 0,repos:r})});if(!a.ok){let e=await a.json().catch(()=>({}));throw Error(e.error||"Failed to create project")}let{project:n}=await a.json(),d=n.id;for(let e of l){let t=e.agents.map(t=>{let r=e.agentOverrides?.find(e=>e.agentId===t.id);return{roleId:t.id,provider:r?.provider||e.provider||void 0,model:r?.model||e.model||void 0}}),r=t.some(e=>e.provider||e.model);await fetch(`/api/projects/${d}/teams`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({templateId:e.templateId,variantId:e.variantId,name:e.name,...r?{agents:t}:{}})})}e.push(`/projects/${n.slug||t}`)}catch(e){u(e instanceof Error?e.message:"Setup failed")}finally{c(!1)}},[s,l,e]);return{step:t,project:s,teams:l,completing:i,error:m,setProject:d,setTeams:o,goNext:x,goBack:p,complete:h}}();return d.completing?(0,t.jsxs)("div",{className:"h-screen w-full flex flex-col items-center justify-center gap-4 bg-[var(--background)]",children:[(0,t.jsx)(u.Loader2,{className:"w-8 h-8 animate-spin text-[var(--muted-foreground)]"}),(0,t.jsx)("p",{className:"text-[14px] text-[var(--muted-foreground)]",children:"Creating your project..."})]}):(0,t.jsxs)(t.Fragment,{children:[d.error&&(0,t.jsxs)("div",{className:"fixed top-4 left-1/2 -translate-x-1/2 z-50 inline-flex items-center gap-2 rounded-lg border border-red-200 bg-red-50 dark:border-red-800 dark:bg-red-950 px-4 py-2 text-[13px] text-red-800 dark:text-red-200 shadow-lg",children:[(0,t.jsx)(G.AlertCircle,{className:"h-4 w-4 shrink-0"}),d.error]}),1===d.step&&(0,t.jsx)(f,{clis:e.clis,readyState:e.readyState,authenticatedCount:e.authenticatedCount,totalCount:e.totalCount,onVerifySuccess:e.handleVerifySuccess,onNext:d.goNext}),2===d.step&&(0,t.jsx)(y,{onNext:d.goNext,onBack:d.goBack}),3===d.step&&(0,t.jsx)(P,{data:d.project,onChange:d.setProject,onNext:d.goNext,onBack:d.goBack}),4===d.step&&(0,t.jsx)(z,{selectedTeams:d.teams,onChange:d.setTeams,onNext:d.complete,onBack:d.goBack})]})}],318634)}]);
@@ -0,0 +1,16 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,367859,e=>{"use strict";let t=(0,e.i(363732).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);e.s(["ChevronRight",0,t],367859)},794731,e=>{"use strict";let t=(0,e.i(363732).default)("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]]);e.s(["Trash2",0,t],794731)},580873,e=>{"use strict";let t=(0,e.i(363732).default)("clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 6v6l4 2",key:"mmk7yg"}]]);e.s(["Clock",0,t],580873)},203096,e=>{"use strict";let t=(0,e.i(363732).default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);e.s(["RefreshCw",0,t],203096)},423709,e=>{"use strict";e.s(["stripMarkers",0,function(e){return e.replace(/\[reaction\s+[^\]]*\]/gi,"").replace(/\[agx:[^\]]*\]/g,"").replace(/\[checkpoint\]/g,"").replace(/\[criteria:\s*[^\]]*\]/g,"").replace(/\[done\]/g,"").replace(/\[blocked[^\]]*\]/g,"").replace(/^\[SKIP\]$/gm,"").trim()}])},66386,e=>{"use strict";var t=e.i(271645),r=e.i(618566);function a(e){return"string"!=typeof e?null:e.trim()||null}function n(e,t){return(e.get(t)?.trim()??"")||null}e.s(["useUrlSelection",0,function(){let e=(0,r.useRouter)(),s=(0,r.usePathname)(),i=(0,r.useSearchParams)(),l=(0,t.useCallback)(e=>n(i,e),[i]),c=(0,t.useCallback)((e,t)=>(function(e,t,r){let s=function(e,t){let r={...t},s=e=>Object.prototype.hasOwnProperty.call(t,e);if(s("issue")&&!s("run")){let s=n(e,"issue");a(t.issue)!==s&&(r.run=null)}if(s("job")&&!s("run")){let s=n(e,"job");a(t.job)!==s&&(r.run=null)}if(s("open")&&!s("message")){let s=n(e,"open");a(t.open)!==s&&(r.message=null)}return r}(t,r),i=new URLSearchParams(t.toString());for(let[e,t]of Object.entries(s)){let r=a(t);r?i.set(e,r):i.delete(e)}let l=i.toString();return l?`${e}?${l}`:e})(t??s,i,e),[s,i]),o=(0,t.useCallback)((t,r)=>{e.push(c(t,r))},[c,e]),u=(0,t.useCallback)((t,r)=>{e.replace(c(t,r))},[c,e]);return{pathname:s,searchParams:i,getSelection:l,buildHref:c,pushSelection:o,replaceSelection:u}}])},990933,e=>{"use strict";function t(e){if("string"==typeof e)return e.trim()||void 0}e.s(["extractComposerRouting",0,function(e,r){let a=new Set,n=new Set;!function e(t,r){if(t)for(let a of t)r(a),e(a.content,r)}(e.content,e=>{if("participantMention"!==e.type)return;let t=e.attrs??{},r="string"==typeof t.id?t.id.trim():"",s="string"==typeof t.kind?t.kind:"agent";r&&"agent"===s&&(a.add(r),"parallel"===t.mode&&n.add(r))});let s=t(r);return{...s?{pinnedParticipantId:s}:{},mentionedParticipantIds:Array.from(a),parallelParticipantIds:Array.from(n)}},"orderParticipantIds",0,function(e,r){let a=function(e){if(!Array.isArray(e))return[];let t=new Set,r=[];for(let a of e){if("string"!=typeof a)continue;let e=a.trim();!e||t.has(e)||(t.add(e),r.push(e))}return r}(e),n=t(r);return n&&a.includes(n)?[n,...a.filter(e=>e!==n)]:a}])},945028,490011,e=>{"use strict";var t=e.i(271645);function r(e){return`threadId=${encodeURIComponent(e)}`}function a(e){return`workspaceId=${encodeURIComponent(e)}`}e.s(["useGroupChat",0,function(e){let[n,s]=(0,t.useState)([]),[i,l]=(0,t.useState)([]),[c,o]=(0,t.useState)([]),u=(0,t.useRef)(e),d=(0,t.useRef)(e);u.current=e,d.current!==e&&(d.current=e,s([]),l([]),o([]));let p=(0,t.useCallback)(async e=>{let t=e?.trim()||u.current?.trim();if(!t){s([]),l([]);return}let n=r(t);try{let[e,r]=await Promise.all([fetch(`/api/history?${n}`),fetch(`/api/logs?${a(t)}`)]);if(u.current!==t)return;e.ok&&s(await e.json()),r.ok&&l(await r.json())}catch{}},[]),h=(0,t.useCallback)(async e=>{let t=e?.trim()||u.current?.trim();if(!t){s([]),l([]);return}let n=r(t);await Promise.all([fetch(`/api/history?${n}`,{method:"DELETE"}),fetch(`/api/logs?${a(t)}`,{method:"DELETE"})]),u.current===t&&(s([]),l([]))},[]),f=(0,t.useCallback)(async(e,t=10,r,a,n,i,l,c,d,p)=>{let h=r?.trim()||u.current?.trim();if(!h)return;let f=Date.now(),m=crypto.randomUUID(),g={id:m,role:"user",participantId:null,content:e,timestamp:f,rootMessageId:a||null,parentMessageId:a||null,depth:+!!a,...i&&i.length>0?{attachments:i}:{}};s(e=>[...e,g]);try{let r=await fetch("/api/chat",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({threadId:h,prompt:e,promptPrefix:d||void 0,maxRounds:t,userMessageId:m,rootMessageId:a||void 0,attachmentIds:n?.length?n:void 0,activeParticipantIds:Array.isArray(l)?l:void 0,projectSlug:c?.trim()||void 0,routing:p})}),i=await r.json().catch(e=>(console.warn("[useGroupChat] failed to parse run response:",e),null));r.ok&&i?.chatRunId?o(e=>[{chatRunId:i.chatRunId,threadId:h,rootMessageId:a||m,status:"queued",optimistic:!0,enqueuedAt:Date.now()},...e.filter(e=>e.chatRunId!==i.chatRunId)]):r.ok||(console.error(`[useGroupChat] POST /api/chat failed (${r.status}):`,i?.error||r.statusText),s(e=>e.map(e=>e.id===m?{...e,sendFailed:!0}:e)))}catch(e){console.error("[useGroupChat] network error sending message:",e),s(e=>e.map(e=>e.id===m?{...e,sendFailed:!0}:e))}return m},[]),m=(0,t.useCallback)(async()=>{let e=u.current?.trim();if(e)try{await fetch(`/api/processes?workspaceId=${encodeURIComponent(e)}`,{method:"DELETE"})}catch{}},[]),g=(0,t.useCallback)(async e=>{let t=u.current?.trim();if(t)try{await fetch(`/api/processes?workspaceId=${encodeURIComponent(t)}&threadId=${encodeURIComponent(e)}`,{method:"DELETE"})}catch{}},[]);return{messages:n,setMessages:s,logs:i,sendMessage:f,loadHistory:p,clearHistory:h,clearLogs:(0,t.useCallback)(async e=>{let t=e?.trim()||u.current?.trim();t?(await fetch(`/api/logs?${a(t)}`,{method:"DELETE"}).catch(e=>console.warn("[useGroupChat] delete logs failed:",e)),u.current===t&&l([])):l([])},[]),chatRuns:c,setChatRuns:o,stop:m,stopThread:g}}],945028);let n=new Set(["spawning","running"]);e.s(["useProcessPolling",0,function(e,r){let a=r?.intervalMs??1500,s=r?.idleIntervalMs??1e4,[i,l]=(0,t.useState)(new Set),[c,o]=(0,t.useState)([]),[u,d]=(0,t.useState)({}),[p,h]=(0,t.useState)([]),f=(0,t.useRef)(e);f.current=e;let m=(0,t.useRef)(r?.messages??[]);m.current=r?.messages??[];let g=(0,t.useRef)(r?.setMessages);g.current=r?.setMessages;let y=(0,t.useRef)(0);(0,t.useEffect)(()=>{let e=r?.messages??[];if(e.length>0){let t=Math.max(...e.map(e=>e.timestamp));t>y.current&&(y.current=t)}},[r?.messages]);let k=(0,t.useCallback)(async()=>{let e=f.current;if(!e){l(new Set),o([]),d({}),h([]);return}let t=null;if(e.threadId?t=`/api/processes?threadId=${encodeURIComponent(e.threadId)}`:e.workspaceId&&(t=`/api/processes?workspaceId=${encodeURIComponent(e.workspaceId)}`),!t){l(new Set),o([]),d({}),h([]);return}try{let a=e.workspaceId||e.threadId,s=a?`/api/history?threadId=${encodeURIComponent(a)}&since=${y.current}`:null,i=a?`/api/chat-runs?threadId=${encodeURIComponent(a)}&limit=20`:null,c=[fetch(t)];s&&c.push(fetch(s)),i&&c.push(fetch(i));let[u,p,k]=await Promise.all(c),v=f.current;if(v?.threadId!==e.threadId||v?.workspaceId!==e.workspaceId)return;if(u.ok){let e=await u.json();o(e);let t=new Set(e.filter(e=>n.has(e.state)).map(e=>e.agentId));l(t);let r={};for(let t of e){if(!n.has(t.state))continue;let e=m.current.find(e=>e.id===t.sinceMessageId),a=e?.rootMessageId??t.sinceMessageId;r[t.agentId]={content:"",rootMessageId:a}}d(r)}if(k?.ok){var r;let e=(r=await k.json(),Array.isArray(r)?r.map(e=>{if(!e||"object"!=typeof e)return null;let t="string"==typeof e.chatRunId?e.chatRunId:"string"==typeof e.id?e.id:null,r="string"==typeof e.threadId?e.threadId:null,a="string"==typeof e.status?e.status:null,n="string"==typeof e.rootMessageId?e.rootMessageId:(e.rootMessageId,null);return t&&r&&a&&("queued"===a||"running"===a||"awaiting_user"===a||"blocked"===a||"completed"===a||"failed"===a||"cancelled"===a)?{chatRunId:t,threadId:r,rootMessageId:n,status:a,optimistic:!1}:null}).filter(e=>!!e):[]);h(e)}if(p?.ok&&g.current){let e=await p.json();if(e.length>0){let t=Math.max(...e.map(e=>e.timestamp));t>y.current&&(y.current=t),g.current(t=>{let r=new Set(t.map(e=>e.id)),a=e.filter(e=>!r.has(e.id)),n=t.map(t=>e.find(e=>e.id===t.id)??t);return 0===a.length?n:[...n,...a].sort((e,t)=>e.timestamp-t.timestamp)})}}}catch{}},[]),v=e?.threadId||e?.workspaceId||null,w=p.some(e=>"queued"===e.status||"running"===e.status),x=c.some(e=>n.has(e.state)),I=w||x?a:s;return(0,t.useEffect)(()=>{if(!v){l(new Set),o([]),d({}),h([]);return}k();let e=setInterval(k,I);return()=>clearInterval(e)},[v,I,k]),{activeAgents:i,processes:c,streaming:u,chatRuns:p,poll:k}}],490011)},245900,e=>{"use strict";let t=(0,e.i(363732).default)("play",[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]]);e.s(["Play",0,t],245900)},524507,e=>{"use strict";let t=(0,e.i(363732).default)("pause",[["rect",{x:"14",y:"3",width:"5",height:"18",rx:"1",key:"kaeet6"}],["rect",{x:"5",y:"3",width:"5",height:"18",rx:"1",key:"1wsw3u"}]]);e.s(["Pause",0,t],524507)},352687,e=>{"use strict";var t=e.i(843476),r=e.i(271645);e.s(["default",0,function({isOpen:e,title:a,message:n,preview:s,confirmLabel:i="Confirm",cancelLabel:l="Cancel",variant:c="default",onConfirm:o,onCancel:u}){let d=(0,r.useRef)(null),p=(0,r.useRef)(null);(0,r.useEffect)(()=>{if(e){let e=setTimeout(()=>d.current?.focus(),50);return()=>clearTimeout(e)}},[e]);let h=(0,r.useCallback)(e=>{"Escape"===e.key&&u()},[u]);if(!e)return null;let f="danger"===c;return(0,t.jsxs)("div",{className:"fixed inset-0 z-[100] flex items-center justify-center bg-black/50 backdrop-blur-md",style:{animation:"confirm-overlay-in 200ms ease-out"},onClick:e=>e.target===e.currentTarget&&u(),onKeyDown:h,children:[(0,t.jsxs)("div",{ref:p,className:"w-full max-w-md mx-4 bg-[var(--card-bg)] rounded-2xl border border-[var(--card-border)] shadow-2xl overflow-hidden",style:{animation:"confirm-dialog-in 250ms cubic-bezier(0.34, 1.56, 0.64, 1)"},children:[(0,t.jsx)("div",{className:"px-6 pt-6 pb-3",children:(0,t.jsxs)("div",{className:"flex items-start gap-4",children:[f&&(0,t.jsx)("div",{className:"flex-shrink-0 w-11 h-11 rounded-full bg-red-500/10 border border-red-500/20 flex items-center justify-center",children:(0,t.jsx)("svg",{className:"w-5 h-5 text-red-500",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:1.5,children:(0,t.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M14.74 9l-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 01-2.244 2.077H8.084a2.25 2.25 0 01-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 00-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 013.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 00-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 00-7.5 0"})})}),(0,t.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,t.jsx)("h3",{className:"text-[15px] font-semibold text-[var(--foreground)]",children:a}),(0,t.jsx)("p",{className:"mt-1 text-[13px] text-[var(--muted-foreground)] leading-relaxed",children:n})]})]})}),s&&(0,t.jsx)("div",{className:"mx-6 mb-3 px-3 py-2.5 rounded-lg bg-[var(--muted)]/40 border border-[var(--card-border)]",children:(0,t.jsxs)("p",{className:"text-[12px] text-[var(--muted-foreground)] line-clamp-3 leading-relaxed italic",children:["“",s,"”"]})}),(0,t.jsx)("div",{className:"mx-6 border-t border-[var(--card-border)]"}),(0,t.jsxs)("div",{className:"px-6 py-4 flex items-center justify-end gap-2.5",children:[(0,t.jsx)("button",{onClick:u,className:"px-4 py-2 rounded-lg text-[13px] font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--muted)]/60 transition-all duration-150",children:l}),(0,t.jsx)("button",{ref:d,onClick:o,className:`px-4 py-2 rounded-lg text-[13px] font-medium transition-all duration-150 ${f?"bg-red-500 text-white hover:bg-red-600 active:scale-[0.97]":"btn-primary active:scale-[0.97]"}`,children:i})]})]}),(0,t.jsx)("style",{children:`
2
+ @keyframes confirm-overlay-in {
3
+ from { opacity: 0; }
4
+ to { opacity: 1; }
5
+ }
6
+ @keyframes confirm-dialog-in {
7
+ from {
8
+ opacity: 0;
9
+ transform: scale(0.9) translateY(10px);
10
+ }
11
+ to {
12
+ opacity: 1;
13
+ transform: scale(1) translateY(0);
14
+ }
15
+ }
16
+ `})]})}])},245110,e=>{"use strict";let t=(0,e.i(363732).default)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);e.s(["ExternalLink",0,t],245110)},693646,e=>{"use strict";let t=(0,e.i(363732).default)("save",[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]]);e.s(["Save",0,t],693646)},33887,e=>{"use strict";var t=e.i(271645);e.s(["useLinearConnection",0,function(){let[e,r]=(0,t.useState)(!1),[a,n]=(0,t.useState)(!0),[s,i]=(0,t.useState)(null),[l,c]=(0,t.useState)({claude:!1,codex:!1,gemini:!1}),[o,u]=(0,t.useState)({}),d=(0,t.useRef)(null),p=(0,t.useCallback)(async()=>{try{let e=await fetch("/api/linear/mcp-setup"),t=await e.json();u(t.configured??{})}catch{}},[]),h=(0,t.useCallback)(async()=>{try{let[e,t]=await Promise.all([fetch("/api/linear/status"),fetch("/api/linear/mcp-setup")]),a=await e.json(),n=await t.json();return r(a.connected),i(a.user??null),c(a.clis??{claude:!1,codex:!1,gemini:!1}),u(n.configured??{}),a.connected}catch{return r(!1),!1}finally{n(!1)}},[]);(0,t.useEffect)(()=>(h(),()=>{d.current&&clearInterval(d.current)}),[h]);let f=(0,t.useCallback)(()=>{window.open("/api/linear/auth","_blank","noopener"),d.current&&clearInterval(d.current),d.current=setInterval(async()=>{await h()&&d.current&&(clearInterval(d.current),d.current=null)},2e3)},[h]),m=(0,t.useCallback)(async e=>{try{let t=await fetch("/api/linear/token",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({accessToken:e})});if(!t.ok){let e=await t.json().catch(()=>({}));return{ok:!1,error:e.error||"Failed to save token"}}return await h(),{ok:!0}}catch{return{ok:!1,error:"Failed to connect"}}},[h]);return{connected:e,loading:a,user:s,clis:l,mcpConfigured:o,connect:f,connectWithKey:m,disconnect:(0,t.useCallback)(async()=>{await fetch("/api/linear/status",{method:"DELETE"}),r(!1),i(null)},[]),configureMcp:(0,t.useCallback)(async e=>{try{let t=await fetch("/api/linear/mcp-setup",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cli:e})});if(!t.ok){let e=await t.json().catch(()=>({}));return{ok:!1,error:e.error||"Failed to configure MCP"}}return await p(),{ok:!0}}catch{return{ok:!1,error:"Failed to configure MCP"}}},[p]),refresh:h}}])},469612,e=>{e.v(t=>Promise.all(["static/chunks/0il_ov6232avr.js"].map(t=>e.l(t))).then(()=>t(668610)))},501223,e=>{e.v(t=>Promise.all(["static/chunks/177-q0wwdi0qe.js","static/chunks/1503vb7lb6.g1.js","static/chunks/02tungbq2jlgh.css"].map(t=>e.l(t))).then(()=>t(844118)))}]);