@tickernelz/paperclip-pro-server 2026.927.0 → 2026.927.2

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 (202) hide show
  1. package/dist/build-info.json +1 -1
  2. package/dist/routes/issues.d.ts.map +1 -1
  3. package/dist/routes/issues.js +177 -45
  4. package/dist/routes/issues.js.map +1 -1
  5. package/dist/routes/openapi.d.ts.map +1 -1
  6. package/dist/routes/openapi.js +1 -0
  7. package/dist/routes/openapi.js.map +1 -1
  8. package/dist/services/instance-settings.d.ts.map +1 -1
  9. package/dist/services/instance-settings.js +3 -1
  10. package/dist/services/instance-settings.js.map +1 -1
  11. package/node_modules/mdast-util-to-markdown/index.d.ts +2 -0
  12. package/node_modules/mdast-util-to-markdown/lib/configure.d.ts +5 -0
  13. package/node_modules/mdast-util-to-markdown/lib/configure.d.ts.map +1 -1
  14. package/node_modules/mdast-util-to-markdown/lib/configure.js +19 -0
  15. package/node_modules/mdast-util-to-markdown/lib/handle/blockquote.d.ts +7 -0
  16. package/node_modules/mdast-util-to-markdown/lib/handle/blockquote.d.ts.map +1 -1
  17. package/node_modules/mdast-util-to-markdown/lib/handle/blockquote.js +12 -1
  18. package/node_modules/mdast-util-to-markdown/lib/handle/break.d.ts +7 -0
  19. package/node_modules/mdast-util-to-markdown/lib/handle/break.d.ts.map +1 -1
  20. package/node_modules/mdast-util-to-markdown/lib/handle/break.js +16 -5
  21. package/node_modules/mdast-util-to-markdown/lib/handle/code.d.ts +7 -0
  22. package/node_modules/mdast-util-to-markdown/lib/handle/code.d.ts.map +1 -1
  23. package/node_modules/mdast-util-to-markdown/lib/handle/code.js +13 -2
  24. package/node_modules/mdast-util-to-markdown/lib/handle/definition.d.ts +7 -0
  25. package/node_modules/mdast-util-to-markdown/lib/handle/definition.d.ts.map +1 -1
  26. package/node_modules/mdast-util-to-markdown/lib/handle/definition.js +7 -0
  27. package/node_modules/mdast-util-to-markdown/lib/handle/emphasis.d.ts +30 -2
  28. package/node_modules/mdast-util-to-markdown/lib/handle/emphasis.d.ts.map +1 -1
  29. package/node_modules/mdast-util-to-markdown/lib/handle/emphasis.js +39 -41
  30. package/node_modules/mdast-util-to-markdown/lib/handle/heading.d.ts +7 -0
  31. package/node_modules/mdast-util-to-markdown/lib/handle/heading.d.ts.map +1 -1
  32. package/node_modules/mdast-util-to-markdown/lib/handle/heading.js +11 -2
  33. package/node_modules/mdast-util-to-markdown/lib/handle/html.d.ts +7 -0
  34. package/node_modules/mdast-util-to-markdown/lib/handle/html.d.ts.map +1 -1
  35. package/node_modules/mdast-util-to-markdown/lib/handle/html.js +7 -0
  36. package/node_modules/mdast-util-to-markdown/lib/handle/image-reference.d.ts +10 -0
  37. package/node_modules/mdast-util-to-markdown/lib/handle/image-reference.d.ts.map +1 -1
  38. package/node_modules/mdast-util-to-markdown/lib/handle/image-reference.js +17 -2
  39. package/node_modules/mdast-util-to-markdown/lib/handle/image.d.ts +10 -0
  40. package/node_modules/mdast-util-to-markdown/lib/handle/image.d.ts.map +1 -1
  41. package/node_modules/mdast-util-to-markdown/lib/handle/image.js +10 -0
  42. package/node_modules/mdast-util-to-markdown/lib/handle/inline-code.d.ts +9 -0
  43. package/node_modules/mdast-util-to-markdown/lib/handle/inline-code.d.ts.map +1 -1
  44. package/node_modules/mdast-util-to-markdown/lib/handle/inline-code.js +14 -4
  45. package/node_modules/mdast-util-to-markdown/lib/handle/link-reference.d.ts +10 -0
  46. package/node_modules/mdast-util-to-markdown/lib/handle/link-reference.d.ts.map +1 -1
  47. package/node_modules/mdast-util-to-markdown/lib/handle/link-reference.js +17 -2
  48. package/node_modules/mdast-util-to-markdown/lib/handle/link.d.ts +13 -0
  49. package/node_modules/mdast-util-to-markdown/lib/handle/link.d.ts.map +1 -1
  50. package/node_modules/mdast-util-to-markdown/lib/handle/link.js +24 -9
  51. package/node_modules/mdast-util-to-markdown/lib/handle/list-item.d.ts +7 -0
  52. package/node_modules/mdast-util-to-markdown/lib/handle/list-item.d.ts.map +1 -1
  53. package/node_modules/mdast-util-to-markdown/lib/handle/list-item.js +12 -1
  54. package/node_modules/mdast-util-to-markdown/lib/handle/list.d.ts +7 -0
  55. package/node_modules/mdast-util-to-markdown/lib/handle/list.d.ts.map +1 -1
  56. package/node_modules/mdast-util-to-markdown/lib/handle/list.js +7 -0
  57. package/node_modules/mdast-util-to-markdown/lib/handle/paragraph.d.ts +7 -0
  58. package/node_modules/mdast-util-to-markdown/lib/handle/paragraph.d.ts.map +1 -1
  59. package/node_modules/mdast-util-to-markdown/lib/handle/paragraph.js +7 -0
  60. package/node_modules/mdast-util-to-markdown/lib/handle/root.d.ts +7 -0
  61. package/node_modules/mdast-util-to-markdown/lib/handle/root.d.ts.map +1 -1
  62. package/node_modules/mdast-util-to-markdown/lib/handle/root.js +13 -2
  63. package/node_modules/mdast-util-to-markdown/lib/handle/strong.d.ts +30 -2
  64. package/node_modules/mdast-util-to-markdown/lib/handle/strong.d.ts.map +1 -1
  65. package/node_modules/mdast-util-to-markdown/lib/handle/strong.js +39 -41
  66. package/node_modules/mdast-util-to-markdown/lib/handle/text.d.ts +7 -0
  67. package/node_modules/mdast-util-to-markdown/lib/handle/text.d.ts.map +1 -1
  68. package/node_modules/mdast-util-to-markdown/lib/handle/text.js +7 -0
  69. package/node_modules/mdast-util-to-markdown/lib/handle/thematic-break.d.ts +6 -0
  70. package/node_modules/mdast-util-to-markdown/lib/handle/thematic-break.d.ts.map +1 -1
  71. package/node_modules/mdast-util-to-markdown/lib/handle/thematic-break.js +6 -0
  72. package/node_modules/mdast-util-to-markdown/lib/index.d.ts.map +1 -1
  73. package/node_modules/mdast-util-to-markdown/lib/index.js +34 -8
  74. package/node_modules/mdast-util-to-markdown/lib/join.d.ts.map +1 -1
  75. package/node_modules/mdast-util-to-markdown/lib/join.js +18 -1
  76. package/node_modules/mdast-util-to-markdown/lib/types.d.ts +50 -30
  77. package/node_modules/mdast-util-to-markdown/lib/unsafe.d.ts.map +1 -1
  78. package/node_modules/mdast-util-to-markdown/lib/unsafe.js +15 -1
  79. package/node_modules/mdast-util-to-markdown/lib/util/character.d.ts +23 -0
  80. package/node_modules/mdast-util-to-markdown/lib/util/character.d.ts.map +1 -0
  81. package/node_modules/mdast-util-to-markdown/lib/util/character.js +32 -0
  82. package/node_modules/mdast-util-to-markdown/lib/util/check-bullet-ordered.d.ts +4 -0
  83. package/node_modules/mdast-util-to-markdown/lib/util/check-bullet-ordered.d.ts.map +1 -1
  84. package/node_modules/mdast-util-to-markdown/lib/util/check-bullet-ordered.js +4 -0
  85. package/node_modules/mdast-util-to-markdown/lib/util/check-bullet-other.d.ts +4 -0
  86. package/node_modules/mdast-util-to-markdown/lib/util/check-bullet-other.d.ts.map +1 -1
  87. package/node_modules/mdast-util-to-markdown/lib/util/check-bullet-other.js +4 -0
  88. package/node_modules/mdast-util-to-markdown/lib/util/check-bullet.d.ts +4 -0
  89. package/node_modules/mdast-util-to-markdown/lib/util/check-bullet.d.ts.map +1 -1
  90. package/node_modules/mdast-util-to-markdown/lib/util/check-bullet.js +4 -0
  91. package/node_modules/mdast-util-to-markdown/lib/util/check-emphasis.d.ts +4 -0
  92. package/node_modules/mdast-util-to-markdown/lib/util/check-emphasis.d.ts.map +1 -1
  93. package/node_modules/mdast-util-to-markdown/lib/util/check-emphasis.js +4 -0
  94. package/node_modules/mdast-util-to-markdown/lib/util/check-fence.d.ts +4 -0
  95. package/node_modules/mdast-util-to-markdown/lib/util/check-fence.d.ts.map +1 -1
  96. package/node_modules/mdast-util-to-markdown/lib/util/check-fence.js +4 -0
  97. package/node_modules/mdast-util-to-markdown/lib/util/check-list-item-indent.d.ts +4 -0
  98. package/node_modules/mdast-util-to-markdown/lib/util/check-list-item-indent.d.ts.map +1 -1
  99. package/node_modules/mdast-util-to-markdown/lib/util/check-list-item-indent.js +4 -0
  100. package/node_modules/mdast-util-to-markdown/lib/util/check-quote.d.ts +4 -0
  101. package/node_modules/mdast-util-to-markdown/lib/util/check-quote.d.ts.map +1 -1
  102. package/node_modules/mdast-util-to-markdown/lib/util/check-quote.js +4 -0
  103. package/node_modules/mdast-util-to-markdown/lib/util/check-rule-repetition.d.ts +4 -0
  104. package/node_modules/mdast-util-to-markdown/lib/util/check-rule-repetition.d.ts.map +1 -1
  105. package/node_modules/mdast-util-to-markdown/lib/util/check-rule-repetition.js +4 -0
  106. package/node_modules/mdast-util-to-markdown/lib/util/check-rule.d.ts +4 -0
  107. package/node_modules/mdast-util-to-markdown/lib/util/check-rule.d.ts.map +1 -1
  108. package/node_modules/mdast-util-to-markdown/lib/util/check-rule.js +4 -0
  109. package/node_modules/mdast-util-to-markdown/lib/util/check-strong.d.ts +4 -0
  110. package/node_modules/mdast-util-to-markdown/lib/util/check-strong.d.ts.map +1 -1
  111. package/node_modules/mdast-util-to-markdown/lib/util/check-strong.js +4 -0
  112. package/node_modules/mdast-util-to-markdown/lib/util/compile-pattern.js +3 -1
  113. package/node_modules/mdast-util-to-markdown/lib/util/container-flow.d.ts +2 -0
  114. package/node_modules/mdast-util-to-markdown/lib/util/container-flow.d.ts.map +1 -1
  115. package/node_modules/mdast-util-to-markdown/lib/util/container-flow.js +9 -0
  116. package/node_modules/mdast-util-to-markdown/lib/util/container-phrasing.d.ts +95 -4
  117. package/node_modules/mdast-util-to-markdown/lib/util/container-phrasing.d.ts.map +1 -1
  118. package/node_modules/mdast-util-to-markdown/lib/util/container-phrasing.js +636 -57
  119. package/node_modules/mdast-util-to-markdown/lib/util/encode-info.d.ts +2 -2
  120. package/node_modules/mdast-util-to-markdown/lib/util/encode-info.d.ts.map +1 -1
  121. package/node_modules/mdast-util-to-markdown/lib/util/encode-info.js +1 -1
  122. package/node_modules/mdast-util-to-markdown/lib/util/format-code-as-indented.d.ts +5 -0
  123. package/node_modules/mdast-util-to-markdown/lib/util/format-code-as-indented.d.ts.map +1 -1
  124. package/node_modules/mdast-util-to-markdown/lib/util/format-code-as-indented.js +12 -7
  125. package/node_modules/mdast-util-to-markdown/lib/util/format-heading-as-setext.d.ts +5 -0
  126. package/node_modules/mdast-util-to-markdown/lib/util/format-heading-as-setext.d.ts.map +1 -1
  127. package/node_modules/mdast-util-to-markdown/lib/util/format-heading-as-setext.js +7 -2
  128. package/node_modules/mdast-util-to-markdown/lib/util/format-link-as-autolink.d.ts +5 -0
  129. package/node_modules/mdast-util-to-markdown/lib/util/format-link-as-autolink.d.ts.map +1 -1
  130. package/node_modules/mdast-util-to-markdown/lib/util/format-link-as-autolink.js +20 -15
  131. package/node_modules/mdast-util-to-markdown/lib/util/html-kind.d.ts +31 -0
  132. package/node_modules/mdast-util-to-markdown/lib/util/html-kind.d.ts.map +1 -0
  133. package/node_modules/mdast-util-to-markdown/lib/util/html-kind.js +63 -0
  134. package/node_modules/mdast-util-to-markdown/lib/util/indent-lines.js +5 -0
  135. package/node_modules/mdast-util-to-markdown/lib/util/pattern-in-scope.d.ts +5 -0
  136. package/node_modules/mdast-util-to-markdown/lib/util/pattern-in-scope.d.ts.map +1 -1
  137. package/node_modules/mdast-util-to-markdown/lib/util/pattern-in-scope.js +11 -0
  138. package/node_modules/mdast-util-to-markdown/lib/util/safe.d.ts +2 -2
  139. package/node_modules/mdast-util-to-markdown/lib/util/safe.d.ts.map +1 -1
  140. package/node_modules/mdast-util-to-markdown/lib/util/safe.js +71 -7
  141. package/node_modules/mdast-util-to-markdown/package.json +13 -57
  142. package/node_modules/mdast-util-to-markdown/readme.md +139 -84
  143. package/package.json +21 -21
  144. package/ui-dist/assets/{AgentAvatar-RxjiAwO8.js → AgentAvatar-PT82VwmU.js} +1 -1
  145. package/ui-dist/assets/{AgentIdentity-D4BY0hNL.js → AgentIdentity-MCshmbhZ.js} +1 -1
  146. package/ui-dist/assets/{Agents.production-gcp98JXS.js → Agents.production-BZi6klJA.js} +2 -2
  147. package/ui-dist/assets/{CompanyActivity.production-CWlPErYS.js → CompanyActivity.production-hUjwDlzb.js} +1 -1
  148. package/ui-dist/assets/{CompanyExport-JunkVVGm.js → CompanyExport-BQmo7amJ.js} +1 -1
  149. package/ui-dist/assets/{CompanySkills.production-DvSrjYfs.js → CompanySkills.production-HqWy0fEs.js} +1 -1
  150. package/ui-dist/assets/{Costs.production-zx6HrqRG.js → Costs.production-CdRBCdli.js} +1 -1
  151. package/ui-dist/assets/{EmptyState-DfjPe-d3.js → EmptyState-DPcc0zYh.js} +1 -1
  152. package/ui-dist/assets/{MarkdownBody-CsD5-bu_.js → MarkdownBody-D0eCfSWN.js} +1 -1
  153. package/ui-dist/assets/{MarkdownEditor-p2rnT0Be.js → MarkdownEditor-Pip4OXiJ.js} +49 -49
  154. package/ui-dist/assets/{OrgChart.production-C-wrmuDn.js → OrgChart.production-C_I93OQO.js} +1 -1
  155. package/ui-dist/assets/{PageSkeleton-CFPaR2xk.js → PageSkeleton-DHjTwRT3.js} +1 -1
  156. package/ui-dist/assets/{RoutineDetail.production-Skb6CK8y.js → RoutineDetail.production-BF19HlVi.js} +1 -1
  157. package/ui-dist/assets/{RoutineRunVariablesDialog-BWeOhxiO.js → RoutineRunVariablesDialog-IRX4TLng.js} +1 -1
  158. package/ui-dist/assets/{Routines.production-TpFNwHyG.js → Routines.production-BN-xoFb_.js} +1 -1
  159. package/ui-dist/assets/{SidebarContext-bqQ25oRc.js → SidebarContext-D01pu4wh.js} +1 -1
  160. package/ui-dist/assets/{StatusIcon-BJoaLFpW.js → StatusIcon-BuUYMqqU.js} +1 -1
  161. package/ui-dist/assets/{agents-D79f8ubB.js → agents-BlSzFh-1.js} +1 -1
  162. package/ui-dist/assets/{badge-Dtq5g7E6.js → badge-Cf7ihb3q.js} +1 -1
  163. package/ui-dist/assets/{bot-CuAIZ3O7.js → bot-DZDpMzjD.js} +1 -1
  164. package/ui-dist/assets/{button-BvVFpN4P.js → button-CAPbz11u.js} +1 -1
  165. package/ui-dist/assets/{card-Dt_3k83X.js → card-dmVcp3AX.js} +1 -1
  166. package/ui-dist/assets/{check-IIwgETIo.js → check-DDiXDm2i.js} +1 -1
  167. package/ui-dist/assets/{checkbox-Dt_GoRUY.js → checkbox-CmMbs2PZ.js} +1 -1
  168. package/ui-dist/assets/{chevron-down-UBZnuvt1.js → chevron-down-F9aZv-V7.js} +1 -1
  169. package/ui-dist/assets/{chevron-right-B0AHub3v.js → chevron-right-B9JUOr38.js} +1 -1
  170. package/ui-dist/assets/{clipboard-Bj5QAqRq.js → clipboard-CYJ5Q78m.js} +1 -1
  171. package/ui-dist/assets/{company-members-DEqvhrMC.js → company-members-BcZm1g8Q.js} +1 -1
  172. package/ui-dist/assets/createLucideIcon-r3v6fbGz.js +92 -0
  173. package/ui-dist/assets/{definition-wrbKkF1t.js → definition-Ds8jy0r3.js} +1 -1
  174. package/ui-dist/assets/{dist-FWFKwYyU.js → dist-5v80Jc6A.js} +1 -1
  175. package/ui-dist/assets/{dist-VxTJitj7.js → dist-D1zgkcBw.js} +1 -1
  176. package/ui-dist/assets/{environments-CkEnfa1n.js → environments-BVeNFanj.js} +1 -1
  177. package/ui-dist/assets/{external-link-B35J81lc.js → external-link-0lrOvZWO.js} +1 -1
  178. package/ui-dist/assets/{file-text-CD47Bznz.js → file-text-C9vgFckt.js} +1 -1
  179. package/ui-dist/assets/{health-CfAQPRgq.js → health-DeeeogeJ.js} +1 -1
  180. package/ui-dist/assets/{heartbeats-DLceYe5K.js → heartbeats-CK_aXmx5.js} +1 -1
  181. package/ui-dist/assets/{index-qzns_tVc.js → index-zttiya6r.js} +153 -153
  182. package/ui-dist/assets/{input-CFI8T_fr.js → input-DpsS9it-.js} +1 -1
  183. package/ui-dist/assets/{label-JgSsn_gH.js → label-C2ddSDJj.js} +1 -1
  184. package/ui-dist/assets/{loader-circle-AYbv_YhN.js → loader-circle-BD9wx-lw.js} +1 -1
  185. package/ui-dist/assets/{mention-chips-DPVE_n2N.js → mention-chips-DXumPrOR.js} +1 -1
  186. package/ui-dist/assets/{octagon-alert-2PgnRbAG.js → octagon-alert-rGMwyrWA.js} +1 -1
  187. package/ui-dist/assets/{rotate-ccw-D72kg6zn.js → rotate-ccw-CRAQ3Xng.js} +1 -1
  188. package/ui-dist/assets/{router-BrCMx2mP.js → router-DyZkoSkG.js} +2 -2
  189. package/ui-dist/assets/{save-fTBYxOC9.js → save-DUnPDT6R.js} +1 -1
  190. package/ui-dist/assets/{select-BidMsZcD.js → select-mS22eY6T.js} +1 -1
  191. package/ui-dist/assets/{sheet-BAx2-UjA.js → sheet-DeCxNmfl.js} +1 -1
  192. package/ui-dist/assets/{skeleton-CYELISHD.js → skeleton-CKir8TUW.js} +1 -1
  193. package/ui-dist/assets/{tabs-D5oWPScx.js → tabs-DWRZjksg.js} +1 -1
  194. package/ui-dist/assets/{triangle-alert-DFzcyeFH.js → triangle-alert-CgJcxSQX.js} +1 -1
  195. package/ui-dist/assets/{use-adapter-capabilities-aPQHbB6R.js → use-adapter-capabilities-BiWYK4zJ.js} +1 -1
  196. package/ui-dist/assets/{useHiddenSettings-jRtbaks6.js → useHiddenSettings-2JpxuJV7.js} +1 -1
  197. package/ui-dist/assets/{zap-B3DNfTNV.js → zap-P-cXfK28.js} +1 -1
  198. package/ui-dist/index.html +45 -45
  199. package/ui-dist/sw.js +1 -1
  200. package/node_modules/mdast-util-to-markdown/lib/util/emphasis-strong-marker.d.ts +0 -7
  201. package/node_modules/mdast-util-to-markdown/lib/util/emphasis-strong-marker.d.ts.map +0 -1
  202. package/ui-dist/assets/createLucideIcon-eTR0JqwS.js +0 -92
@@ -1 +1 @@
1
- var ks=Object.defineProperty;var t=(n,c)=>ks(n,"name",{value:c,configurable:!0});import{i as as}from"./rolldown-runtime-ZpX3ckPj.js";import{Fr as Ps,Lr as As,Pr as Ms,S as Ds,U as Ts,Y as m,nr as A,tr as _}from"./createLucideIcon-eTR0JqwS.js";import{B as ze,U as qs,b as Ks,ct as Us,o as Es}from"./router-BrCMx2mP.js";import{Ct as Os,O as Ls,bt as Qs,cr as ls,gr as Bs,lr as ee,or as Ge,r as Vs,sr as We,t as $s,v as he,vt as Ye,wt as zs,xt as Gs,yt as Ws}from"./RoutineRunVariablesDialog-BWeOhxiO.js";import{a as J,t as Ys}from"./MarkdownEditor-p2rnT0Be.js";import{t as He}from"./AgentAvatar-RxjiAwO8.js";import{a as Hs,r as Js}from"./checkbox-Dt_GoRUY.js";import{n as Je,t as Xs}from"./tabs-D5oWPScx.js";import{a as Xe,c as Ze,r as es,t as Zs}from"./agents-D79f8ubB.js";import{g as et}from"./StatusIcon-BJoaLFpW.js";import{r as st,t as je}from"./EmptyState-DfjPe-d3.js";import{t as tt}from"./check-IIwgETIo.js";import{t as nt}from"./chevron-down-UBZnuvt1.js";import{t as cs}from"./chevron-right-B0AHub3v.js";import{c as ye,i as X,n as ve,s as be,t as we}from"./select-BidMsZcD.js";import{k as Z,t as F}from"./button-BvVFpN4P.js";import{t as rt}from"./heartbeats-DLceYe5K.js";import{i as it,o as ot}from"./company-members-DEqvhrMC.js";import{r as at,t as lt}from"./card-Dt_3k83X.js";import{t as ct}from"./PageSkeleton-CFPaR2xk.js";import{$ as dt,$t as ut,J as mt,Q as pt,X as ft,Y as gt,Z as xt,at as ht,et as jt,fn as yt,ht as M,in as vt,it as bt,mt as wt,nt as Nt,pt as It,rn as Rt,rt as Ct,tt as St}from"./index-qzns_tVc.js";var l=as(As(),1),s=as(Ps(),1),_t=["coalesce_if_active","always_enqueue","skip_if_active"],Ft=["skip_missed","enqueue_missed_with_cap"],kt={coalesce_if_active:"If a run is already active, keep just one follow-up run queued.",always_enqueue:"Queue every trigger occurrence, even if the routine is already running.",skip_if_active:"Drop new trigger occurrences while a run is still active."},Pt={skip_missed:"Ignore windows that were missed while the scheduler or routine was paused.",enqueue_missed_with_cap:"Catch up missed schedule windows after recovery; sub-hourly schedules are combined into one catch-up run, slower schedules replay each missed window up to a cap."};function ss(n){n&&(n.style.height="auto",n.style.height=`${n.scrollHeight}px`)}t(ss,"autoResizeTextarea");var At="__built_in_routines",ts={sortField:"title",sortDir:"asc",groupBy:"folder",collapsedGroups:[]};function ns(n){try{const c=localStorage.getItem(n);if(c)return{...ts,...JSON.parse(c)}}catch{}return{...ts}}t(ns,"getRoutineViewState");function Mt(n,c){localStorage.setItem(n,JSON.stringify(c))}t(Mt,"saveRoutineViewState");function q(n){if(!n)return Number.NEGATIVE_INFINITY;const c=new Date(n).getTime();return Number.isFinite(c)?c:Number.NEGATIVE_INFINITY}t(q,"timestampValue");function rs(n,c){return(n??"").localeCompare(c??"",void 0,{sensitivity:"base"})}t(rs,"compareNullableText");function Dt(n){return{...n,description:n.description.trim()||null,projectId:n.projectId||null,folderId:n.folderId||null,assigneeAgentId:n.assigneeAgentId||null}}t(Dt,"buildRoutineMutationPayload");function Tt(n,c,d,b,g){if(c==="none")return[{key:"__all",label:null,items:n}];if(c==="folder"){const i=he(n,o=>o.folderId??"__unfiled");return Object.keys(i).sort((o,j)=>{if(o==="__unfiled"||j==="__unfiled")return o===j?0:o==="__unfiled"?1:-1;const w=g.get(o),I=g.get(j),O=(Number.isFinite(w?.position)?w.position:Number.POSITIVE_INFINITY)-(Number.isFinite(I?.position)?I.position:Number.POSITIVE_INFINITY);return O!==0?O:(w?.name??"Unknown folder").localeCompare(I?.name??"Unknown folder",void 0,{sensitivity:"base"})||o.localeCompare(j)}).map(o=>({key:o,label:o==="__unfiled"?"Unfiled":g.get(o)?.name??"Unknown folder",items:i[o]}))}if(c==="project"){const i=he(n,o=>o.projectId??"__no_project");return Object.keys(i).sort((o,j)=>{const w=o==="__no_project"?"No project":d.get(o)?.name??"Unknown project",I=j==="__no_project"?"No project":d.get(j)?.name??"Unknown project";return w.localeCompare(I)}).map(o=>({key:o,label:o==="__no_project"?"No project":d.get(o)?.name??"Unknown project",items:i[o]}))}const x=he(n,i=>i.assigneeAgentId??"__unassigned");return Object.keys(x).sort((i,o)=>{const j=i==="__unassigned"?"Unassigned":b.get(i)?.name??"Unknown agent",w=o==="__unassigned"?"Unassigned":b.get(o)?.name??"Unknown agent";return j.localeCompare(w)}).map(i=>({key:i,label:i==="__unassigned"?"Unassigned":b.get(i)?.name??"Unknown agent",items:x[i]}))}t(Tt,"buildRoutineGroups");function is(n){return n.originKind==="built_in_agent_bundle"}t(is,"isBuiltInRoutine");function qt(n,c,d,b,g){const x=n.filter(is),i=Tt(n.filter(o=>!is(o)),c,d,b,g).filter(o=>o.items.length>0).map(o=>x.length>0&&c==="none"&&o.key==="__all"?{...o,label:"Custom routines"}:o);return x.length===0?i:[...i,{key:At,label:"Built-in routines",items:x}]}t(qt,"buildRoutineSections");function Kt(n,c,d){const b=d==="asc"?1:-1;return[...n].sort((g,x)=>{let i=0;return c==="title"?i=rs(g.title,x.title):c==="created"?i=q(g.createdAt)-q(x.createdAt):c==="lastRun"?i=q(g.lastRun?.triggeredAt??g.lastTriggeredAt)-q(x.lastRun?.triggeredAt??x.lastTriggeredAt):i=q(g.updatedAt)-q(x.updatedAt),i!==0?i*b:rs(g.title,x.title)})}t(Kt,"sortRoutines");function os(n){return n==="runs"?"/routines?tab=runs":"/routines"}t(os,"buildRoutinesTabHref");function Ut({label:n,count:c,isOpen:d}){return(0,s.jsxs)("div",{className:`flex items-center gap-2 rounded-lg border border-border px-3 py-2${d?" mb-1":""}`,children:[(0,s.jsxs)(ls,{className:"flex items-center gap-1.5",children:[(0,s.jsx)(cs,{className:"h-3.5 w-3.5 shrink-0 text-muted-foreground transition-transform [[data-state=open]>&]:rotate-90"}),(0,s.jsx)("span",{className:"text-sm font-semibold uppercase tracking-wide",children:n})]}),(0,s.jsx)("span",{className:"text-xs text-muted-foreground",children:c})]})}t(Ut,"RoutineSectionHeader");function cn(){const{selectedCompanyId:n}=Ts(),{setBreadcrumbs:c}=st(),d=Ms(),b=Es(),[g,x]=Us(),{pushToast:i}=yt(),o=(0,l.useRef)(null),j=(0,l.useRef)(null),w=(0,l.useRef)(null),I=(0,l.useRef)(null),[O,K]=(0,l.useState)(!1),[se,L]=(0,l.useState)(null),[Q,te]=(0,l.useState)(null),[ds,Ne]=(0,l.useState)(!1),[ne,re]=(0,l.useState)(!1),[B,V]=(0,l.useState)([]),[Ie,Re]=(0,l.useState)([]),[us,Ce]=(0,l.useState)(null),[ms,Se]=(0,l.useState)(null),[k,ie]=(0,l.useState)(null),[$,z]=(0,l.useState)(!1),[_e,oe]=(0,l.useState)(!1),P=g.get("tab")==="runs"?"runs":"routines",[p,R]=(0,l.useState)({title:"",description:"",projectId:"",folderId:null,assigneeAgentId:"",priority:"medium",concurrencyPolicy:"coalesce_if_active",catchUpPolicy:"skip_missed",variables:[]}),G=n?`paperclip:routines-view:${n}`:"paperclip:routines-view",[u,Fe]=(0,l.useState)(()=>ns(G)),f=bt(g.get("folder"));(0,l.useEffect)(()=>{c([{label:"Routines"}])},[c]),(0,l.useEffect)(()=>{Fe(ns(G))},[G]);const{data:ke,isLoading:ps,error:ae}=A({queryKey:m.routines.list(n),queryFn:t(()=>J.list(n),"queryFn"),enabled:!!n}),{data:h,isLoading:Pe}=A({queryKey:m.folders.list(n,"routine"),queryFn:t(()=>M.list(n,"routine"),"queryFn"),enabled:!!n&&P==="routines"}),{data:C}=A({queryKey:m.agents.list(n),queryFn:t(()=>Zs.list(n),"queryFn"),enabled:!!n}),{data:S}=A({queryKey:m.projects.list(n,{includeArchived:!0}),queryFn:t(()=>et.list(n,{includeArchived:!0}),"queryFn"),enabled:!!n}),{data:Ae}=A({queryKey:m.access.companyUserDirectory(n),queryFn:t(()=>ot.listUserDirectory(n),"queryFn"),enabled:!!n}),{data:le,isLoading:fs,error:gs}=A({queryKey:[...m.issues.list(n),"routine-executions"],queryFn:t(()=>ze.list(n,{originKind:"routine_execution"}),"queryFn"),enabled:!!n&&P==="runs"}),Me=m.liveRuns(n),ce=vt({companyId:n,resourceKey:"live-runs",queryKey:Me,enabled:!!n&&P==="runs",refetchInterval:!1,leaderOnly:!0}),{data:de,dataUpdatedAt:xs}=A({queryKey:Me,queryFn:t(()=>rt.liveRunsForCompany(n),"queryFn"),enabled:ce.enabled,refetchInterval:ce.refetchInterval});Rt(ce,de,xs),(0,l.useEffect)(()=>{ss(j.current)},[p.title,$]);const hs=(0,l.useMemo)(()=>it({agents:C,projects:(S??[]).filter(e=>!e.archivedAt),members:Ae?.users}),[C,Ae?.users,S]),N=_({mutationFn:t(()=>J.create(n,Dt(p)),"mutationFn"),onSuccess:t(async e=>{R({title:"",description:"",projectId:"",folderId:null,assigneeAgentId:"",priority:"medium",concurrencyPolicy:"coalesce_if_active",catchUpPolicy:"skip_missed",variables:[]}),z(!1),oe(!1),await d.invalidateQueries({queryKey:m.routines.list(n)}),i({title:"Routine created",body:e.assigneeAgentId?"Add the first trigger to turn it into a live workflow.":"Draft saved. Add a default agent before enabling automation.",tone:"success"}),b(`/routines/${e.id}?tab=triggers`)},"onSuccess")}),De=_({mutationFn:t(e=>M.create(n,{kind:"routine",...e}),"mutationFn"),onSuccess:t(async e=>{if(K(!1),L(null),await d.invalidateQueries({queryKey:m.folders.list(n,"routine")}),Ie.length>0){const r=Ie;Re([]);try{await Promise.all(r.map(a=>M.moveItem(n,{kind:"routine",itemId:a,folderId:e.id}))),await Promise.all([d.invalidateQueries({queryKey:m.routines.list(n)}),d.invalidateQueries({queryKey:m.folders.list(n,"routine")})])}catch(a){i({title:"Folder created, move failed",body:a instanceof Error?a.message:"Paperclip could not move the selected routines.",tone:"error"});return}}else Y(e.id);i({title:"Folder created",body:e.name,tone:"success"})},"onSuccess"),onError:t(e=>{i({title:"Failed to save folder",body:e instanceof Error?e.message:"Paperclip could not save the folder.",tone:"error"})},"onError")}),ue=_({mutationFn:t(({folderId:e,payload:r})=>M.update(n,e,r),"mutationFn"),onSuccess:t(async()=>{K(!1),L(null),await d.invalidateQueries({queryKey:m.folders.list(n,"routine")})},"onSuccess"),onError:t(e=>{i({title:"Folder save failed",body:e instanceof Error?e.message:"Paperclip could not update the folder.",tone:"error"})},"onError")}),Te=_({mutationFn:t(e=>M.delete(n,e),"mutationFn"),onSuccess:t(async(e,r)=>{f===r&&Y("all"),te(null),await Promise.all([d.invalidateQueries({queryKey:m.routines.list(n)}),d.invalidateQueries({queryKey:m.folders.list(n,"routine")})]),i({title:"Folder deleted",body:"Items moved to Unfiled.",tone:"success"})},"onSuccess"),onError:t(e=>{i({title:"Folder delete failed",body:e instanceof Error?e.message:"Paperclip could not delete the folder.",tone:"error"})},"onError")}),qe=_({mutationFn:t(({itemId:e,folderId:r})=>M.moveItem(n,{kind:"routine",itemId:e,folderId:r}),"mutationFn"),onSuccess:t(async()=>{await Promise.all([d.invalidateQueries({queryKey:m.routines.list(n)}),d.invalidateQueries({queryKey:m.folders.list(n,"routine")})])},"onSuccess"),onError:t(e=>{i({title:"Move failed",body:e instanceof Error?e.message:"Paperclip could not move the routine.",tone:"error"})},"onError")}),js=_({mutationFn:t(({id:e,data:r})=>ze.update(e,r),"mutationFn"),onSuccess:t(async()=>{await d.invalidateQueries({queryKey:[...m.issues.list(n),"routine-executions"]})},"onSuccess")}),Ke=_({mutationFn:t(({id:e,status:r})=>J.update(e,{status:r}),"mutationFn"),onMutate:t(({id:e})=>{Se(e)},"onMutate"),onSuccess:t(async(e,r)=>{await Promise.all([d.invalidateQueries({queryKey:m.routines.list(n)}),d.invalidateQueries({queryKey:m.routines.detail(r.id)})])},"onSuccess"),onSettled:t(()=>{Se(null)},"onSettled"),onError:t(e=>{i({title:"Failed to update routine",body:e instanceof Error?e.message:"Paperclip could not update the routine.",tone:"error"})},"onError")}),Ue=_({mutationFn:t(({id:e,data:r})=>J.run(e,{...r?.variables&&Object.keys(r.variables).length>0?{variables:r.variables}:{},...r?.assigneeAgentId!==void 0?{assigneeAgentId:r.assigneeAgentId}:{},...r?.projectId!==void 0?{projectId:r.projectId}:{},...r?.executionWorkspaceId!==void 0?{executionWorkspaceId:r.executionWorkspaceId}:{},...r?.executionWorkspacePreference!==void 0?{executionWorkspacePreference:r.executionWorkspacePreference}:{},...r?.executionWorkspaceSettings!==void 0?{executionWorkspaceSettings:r.executionWorkspaceSettings}:{}}),"mutationFn"),onMutate:t(({id:e})=>{Ce(e)},"onMutate"),onSuccess:t(async(e,{id:r})=>{ie(null),await Promise.all([d.invalidateQueries({queryKey:m.routines.list(n)}),d.invalidateQueries({queryKey:m.routines.detail(r)})])},"onSuccess"),onSettled:t(()=>{Ce(null)},"onSettled"),onError:t(e=>{i({title:"Routine run failed",body:e instanceof Error?e.message:"Paperclip could not start the routine run.",tone:"error"})},"onError")}),me=(0,l.useMemo)(()=>Gs(),[$]),ys=(0,l.useMemo)(()=>Ws(),[$]),vs=(0,l.useMemo)(()=>Os((C??[]).filter(e=>e.status!=="terminated"),me).map(e=>({id:e.id,label:e.name,searchText:`${e.name} ${e.role} ${e.title??""}`})),[C,me]),bs=(0,l.useMemo)(()=>(S??[]).filter(e=>!e.archivedAt).map(e=>({id:e.id,label:e.name,searchText:e.description??""})),[S]),U=(0,l.useMemo)(()=>new Map((C??[]).map(e=>[e.id,e])),[C]),E=(0,l.useMemo)(()=>new Map((S??[]).map(e=>[e.id,e])),[S]),Ee=(0,l.useMemo)(()=>new Map((h?.folders??[]).map(e=>[e.id,e])),[h]),ws=(0,l.useMemo)(()=>Ls(de,le),[de,le]),y=(0,l.useMemo)(()=>(ke??[]).filter(e=>e.status!=="archived"),[ke]),Oe=(0,l.useMemo)(()=>u.groupBy!=="folder"||f==="all"?y:f==="unfiled"?y.filter(e=>!e.folderId):y.filter(e=>e.folderId===f),[f,u.groupBy,y]),pe=(0,l.useMemo)(()=>{if(!h)return h;const e=new Map;let r=0;for(const a of y)a.folderId?e.set(a.folderId,(e.get(a.folderId)??0)+1):r+=1;return{...h,allCount:y.length,unfiledCount:r,folders:h.folders.map(a=>({...a,itemCount:e.get(a.id)??0}))}},[h,y]),D=(0,l.useMemo)(()=>Kt(Oe,u.sortField,u.sortDir),[Oe,u.sortDir,u.sortField]),Ns=(0,l.useMemo)(()=>qt(D,u.groupBy,E,U,Ee),[U,Ee,E,u.groupBy,D]),Is=(0,l.useMemo)(()=>qs("Recent Runs",os("runs"),"issues"),[]),Le=p.assigneeAgentId?U.get(p.assigneeAgentId)??null:null,Qe=p.projectId?E.get(p.projectId)??null:null,Be=ht(h?.folders??[],f),W=(h?.folders.length??0)>0,fe=P==="routines"&&u.groupBy==="folder"&&W;function ge(e){Fe(r=>{const a={...r,...e};return Mt(G,a),a})}t(ge,"updateRoutineView");function Ve(e){const r=e==="runs"?"runs":"routines";(0,l.startTransition)(()=>{b(os(r))})}t(Ve,"handleTabChange");function Y(e){x(r=>{const a=new URLSearchParams(r),v=Ct(e);return v?a.set("folder",v):a.delete("folder"),a})}t(Y,"setFolderSelection");function T(e=[]){Re(e),L(null),K(!0)}t(T,"openCreateFolder");function $e(){R(e=>({...e,folderId:f==="all"||f==="unfiled"?null:f})),z(!0)}t($e,"openCreateRoutine");async function Rs(e){const r=B;if(r.length!==0)try{await Promise.all(r.map(a=>M.moveItem(n,{kind:"routine",itemId:a,folderId:e}))),V([]),re(!1),await Promise.all([d.invalidateQueries({queryKey:m.routines.list(n)}),d.invalidateQueries({queryKey:m.folders.list(n,"routine")})]),i({title:"Routines moved",body:`${r.length} routine${r.length===1?"":"s"} filed.`,tone:"success"})}catch(a){i({title:"Failed to move routines",body:a instanceof Error?a.message:"Paperclip could not move the selected routines.",tone:"error"})}}t(Rs,"moveSelectedRoutines");function Cs(e){ie(e)}t(Cs,"handleRunNow");function Ss(e,r){if(!r&&!e.assigneeAgentId){i({title:"Default agent required",body:"Set a default agent before enabling routine automation.",tone:"warn"});return}Ke.mutate({id:e.id,status:wt(e.status,!r)})}t(Ss,"handleToggleEnabled");function _s(e){Ke.mutate({id:e.id,status:e.status==="archived"?"active":"archived"})}return t(_s,"handleToggleArchived"),n?ps?(0,s.jsx)(ct,{variant:"issues-list"}):(0,s.jsxs)("div",{className:"space-y-6",children:[(0,s.jsxs)("div",{className:"flex flex-col gap-3 sm:flex-row sm:items-end sm:justify-between",children:[(0,s.jsxs)("div",{className:"space-y-1",children:[(0,s.jsx)("h1",{className:"text-2xl font-semibold tracking-tight",children:"Routines"}),(0,s.jsx)("p",{className:"text-sm text-muted-foreground",children:"Recurring work definitions that materialize into auditable execution tasks."})]}),(0,s.jsxs)(F,{onClick:$e,children:[(0,s.jsx)(Z,{className:"mr-2 h-4 w-4"}),"Create routine"]})]}),(0,s.jsxs)(Xs,{value:P,onValueChange:Ve,children:[(0,s.jsx)(ut,{align:"start",value:P,onValueChange:Ve,items:[{value:"routines",label:"Routines"},{value:"runs",label:"Recent Runs"}]}),(0,s.jsxs)(Je,{value:"routines",className:"space-y-4",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,s.jsxs)("p",{className:"text-sm text-muted-foreground",children:[y.length," routine",y.length===1?"":"s"]}),(0,s.jsxs)("div",{className:"flex items-center gap-1",children:[(0,s.jsxs)(es,{children:[(0,s.jsx)(Ze,{asChild:!0,children:(0,s.jsxs)(F,{variant:"ghost",size:"sm",className:"text-xs",title:"Sort",children:[(0,s.jsx)(Bs,{className:"h-3.5 w-3.5 sm:h-3 sm:w-3 sm:mr-1"}),(0,s.jsx)("span",{className:"hidden sm:inline",children:"Sort"})]})}),(0,s.jsx)(Xe,{align:"end",className:"w-44 p-0",children:(0,s.jsx)("div",{className:"p-2 space-y-0.5",children:[["updated","Updated"],["created","Created"],["lastRun","Last run"],["title","Title"]].map(([e,r])=>(0,s.jsxs)("button",{className:`flex w-full items-center justify-between rounded-sm px-2 py-1.5 text-sm ${u.sortField===e?"bg-accent/50 text-foreground":"text-muted-foreground hover:bg-accent/50"}`,onClick:t(()=>{ge(u.sortField===e?{sortDir:u.sortDir==="asc"?"desc":"asc"}:{sortField:e,sortDir:e==="title"?"asc":"desc"})},"onClick"),children:[(0,s.jsx)("span",{children:r}),u.sortField===e?(0,s.jsx)("span",{className:"text-xs text-muted-foreground",children:u.sortDir==="asc"?"Asc":"Desc"}):null]},e))})})]}),(0,s.jsxs)(es,{children:[(0,s.jsx)(Ze,{asChild:!0,children:(0,s.jsxs)(F,{variant:"ghost",size:"sm",className:"text-xs",title:"Group",children:[(0,s.jsx)(Ks,{className:"h-3.5 w-3.5 sm:h-3 sm:w-3 sm:mr-1"}),(0,s.jsx)("span",{className:"hidden sm:inline",children:"Group"})]})}),(0,s.jsx)(Xe,{align:"end",className:"w-44 p-0",children:(0,s.jsx)("div",{className:"p-2 space-y-0.5",children:[["folder","Folder"],["project","Project"],["assignee","Agent"],["none","None"]].map(([e,r])=>(0,s.jsxs)("button",{className:`flex w-full items-center justify-between rounded-sm px-2 py-1.5 text-sm ${u.groupBy===e?"bg-accent/50 text-foreground":"text-muted-foreground hover:bg-accent/50"}`,onClick:t(()=>ge({groupBy:e,collapsedGroups:[]}),"onClick"),children:[(0,s.jsx)("span",{children:r}),u.groupBy===e?(0,s.jsx)(tt,{className:"h-3.5 w-3.5"}):null]},e))})})]}),u.groupBy==="folder"&&!W?(0,s.jsxs)(F,{variant:"outline",size:"sm",onClick:t(()=>T(),"onClick"),children:[(0,s.jsx)(Z,{className:"mr-2 h-3.5 w-3.5"}),"New folder"]}):null,fe?(0,s.jsx)(F,{variant:"ghost",size:"sm",className:"text-xs",onClick:t(()=>re(e=>!e),"onClick"),children:ne?"Done":"Select"}):null]})]}),u.groupBy==="folder"?(0,s.jsx)("div",{className:"md:hidden",children:(0,s.jsx)(xt,{result:pe,selection:f,allLabel:"All routines",onClick:t(()=>Ne(!0),"onClick")})}):null]}),(0,s.jsx)(Je,{value:"runs",children:(0,s.jsx)(Vs,{issues:le??[],isLoading:fs,error:gs,agents:C,projects:S,liveIssueIds:ws,viewStateKey:"paperclip:routine-recent-runs-view",issueLinkState:Is,onUpdateIssue:t((e,r)=>js.mutate({id:e,data:r}),"onUpdateIssue")})})]}),(0,s.jsx)(Js,{open:$,onOpenChange:t(e=>{N.isPending||z(e)},"onOpenChange"),children:(0,s.jsxs)(Hs,{showCloseButton:!1,className:"flex max-h-(--sz-calc-18) max-w-3xl flex-col gap-0 overflow-hidden p-0",children:[(0,s.jsxs)("div",{className:"shrink-0 flex flex-wrap items-center justify-between gap-3 border-b border-border/60 px-5 py-3",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("p",{className:"text-xs font-medium uppercase tracking-(--tracking-caps) text-muted-foreground",children:"New routine"}),(0,s.jsx)("p",{className:"text-sm text-muted-foreground",children:"Define the recurring work first. Default project and agent are optional for draft routines."})]}),(0,s.jsx)(F,{variant:"ghost",size:"sm",onClick:t(()=>{z(!1),oe(!1)},"onClick"),disabled:N.isPending,children:"Cancel"})]}),(0,s.jsxs)("div",{className:"min-h-0 flex-1 overflow-y-auto",children:[(0,s.jsx)("div",{className:"px-5 pt-5 pb-3",children:(0,s.jsx)("textarea",{ref:j,className:"w-full resize-none overflow-hidden bg-transparent text-xl font-semibold outline-none placeholder:text-muted-foreground/50",placeholder:"Routine title",rows:1,value:p.title,onChange:t(e=>{R(r=>({...r,title:e.target.value})),ss(e.target)},"onChange"),onKeyDown:t(e=>{if(e.key==="Enter"&&!e.metaKey&&!e.ctrlKey&&!e.nativeEvent.isComposing){e.preventDefault(),o.current?.focus();return}e.key==="Tab"&&!e.shiftKey&&(e.preventDefault(),p.assigneeAgentId?p.projectId?o.current?.focus():I.current?.focus():w.current?.focus())},"onKeyDown"),autoFocus:!0})}),(0,s.jsx)("div",{className:"px-5 pb-3",children:(0,s.jsx)("div",{className:"overflow-x-auto overscroll-x-contain",children:(0,s.jsxs)("div",{className:"inline-flex min-w-full flex-wrap items-center gap-2 text-sm text-muted-foreground sm:min-w-max sm:flex-nowrap",children:[(0,s.jsx)("span",{children:"For"}),(0,s.jsx)(Ye,{ref:w,value:p.assigneeAgentId,options:vs,recentOptionIds:me,placeholder:"Responsible",noneLabel:"No responsible",searchPlaceholder:"Search responsible...",emptyMessage:"No responsible found.",onChange:t(e=>{e&&zs(e),R(r=>({...r,assigneeAgentId:e}))},"onChange"),onConfirm:t(()=>{p.projectId?o.current?.focus():I.current?.focus()},"onConfirm"),renderTriggerValue:t(e=>e?Le?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(He,{agent:Le,size:16,className:"h-3.5 w-3.5 shrink-0 text-muted-foreground"}),(0,s.jsx)("span",{className:"truncate",children:e.label})]}):(0,s.jsx)("span",{className:"truncate",children:e.label}):(0,s.jsx)("span",{className:"text-muted-foreground",children:"Responsible"}),"renderTriggerValue"),renderOption:t(e=>{if(!e.id)return(0,s.jsx)("span",{className:"truncate",children:e.label});const r=U.get(e.id);return(0,s.jsxs)(s.Fragment,{children:[r?(0,s.jsx)(He,{agent:r,size:16,className:"h-3.5 w-3.5 shrink-0 text-muted-foreground"}):null,(0,s.jsx)("span",{className:"truncate",children:e.label})]})},"renderOption")}),(0,s.jsx)("span",{children:"in"}),(0,s.jsx)(Ye,{ref:I,value:p.projectId,options:bs,recentOptionIds:ys,placeholder:"Project",noneLabel:"No project",searchPlaceholder:"Search projects...",emptyMessage:"No projects found.",onChange:t(e=>{e&&Qs(e),R(r=>({...r,projectId:e}))},"onChange"),onConfirm:t(()=>o.current?.focus(),"onConfirm"),renderTriggerValue:t(e=>e&&Qe?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("span",{className:"h-3.5 w-3.5 shrink-0 rounded-sm",style:{backgroundColor:Qe.color??"var(--project-none)"}}),(0,s.jsx)("span",{className:"truncate",children:e.label})]}):(0,s.jsx)("span",{className:"text-muted-foreground",children:"Project"}),"renderTriggerValue"),renderOption:t(e=>{if(!e.id)return(0,s.jsx)("span",{className:"truncate",children:e.label});const r=E.get(e.id);return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("span",{className:"h-3.5 w-3.5 shrink-0 rounded-sm",style:{backgroundColor:r?.color??"var(--project-none)"}}),(0,s.jsx)("span",{className:"truncate",children:e.label})]})},"renderOption")}),(0,s.jsx)("span",{children:"filed in"}),(0,s.jsxs)(we,{value:p.folderId??"__unfiled",onValueChange:t(e=>R(r=>({...r,folderId:e==="__unfiled"?null:e})),"onValueChange"),children:[(0,s.jsx)(be,{className:"h-8 w-auto min-w-32 border-0 bg-muted/50 px-2 shadow-none",children:(0,s.jsx)(ye,{})}),(0,s.jsxs)(ve,{children:[(0,s.jsx)(X,{value:"__unfiled",children:"Unfiled"}),(h?.folders??[]).map(e=>(0,s.jsx)(X,{value:e.id,children:e.name},e.id))]})]})]})})}),(0,s.jsx)("div",{className:"border-t border-border/60 px-5 py-4",children:(0,s.jsx)(Ys,{ref:o,value:p.description,onChange:t(e=>R(r=>({...r,description:e})),"onChange"),placeholder:"Add instructions...",bordered:!1,contentClassName:"min-h-(--sz-160px) text-sm text-muted-foreground",mentions:hs,onSubmit:t(()=>{!N.isPending&&p.title.trim()&&p.projectId&&p.assigneeAgentId&&N.mutate()},"onSubmit")})}),(0,s.jsx)("div",{className:"border-t border-border/60 px-5 py-3",children:(0,s.jsxs)(Ge,{open:_e,onOpenChange:oe,children:[(0,s.jsxs)(ls,{className:"flex w-full items-center justify-between text-left",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("p",{className:"text-sm font-medium",children:"Advanced delivery settings"}),(0,s.jsx)("p",{className:"text-sm text-muted-foreground",children:"Keep policy controls secondary to the work definition."})]}),_e?(0,s.jsx)(nt,{className:"h-4 w-4 text-muted-foreground"}):(0,s.jsx)(cs,{className:"h-4 w-4 text-muted-foreground"})]}),(0,s.jsx)(We,{className:"pt-3",children:(0,s.jsxs)("div",{className:"grid gap-4 md:grid-cols-2",children:[(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)("p",{className:"text-xs font-medium uppercase tracking-(--tracking-caps) text-muted-foreground",children:"Concurrency"}),(0,s.jsxs)(we,{value:p.concurrencyPolicy,onValueChange:t(e=>R(r=>({...r,concurrencyPolicy:e})),"onValueChange"),children:[(0,s.jsx)(be,{children:(0,s.jsx)(ye,{})}),(0,s.jsx)(ve,{children:_t.map(e=>(0,s.jsx)(X,{value:e,children:e.replaceAll("_"," ")},e))})]}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground",children:kt[p.concurrencyPolicy]})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)("p",{className:"text-xs font-medium uppercase tracking-(--tracking-caps) text-muted-foreground",children:"Catch-up"}),(0,s.jsxs)(we,{value:p.catchUpPolicy,onValueChange:t(e=>R(r=>({...r,catchUpPolicy:e})),"onValueChange"),children:[(0,s.jsx)(be,{children:(0,s.jsx)(ye,{})}),(0,s.jsx)(ve,{children:Ft.map(e=>(0,s.jsx)(X,{value:e,children:e.replaceAll("_"," ")},e))})]}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground",children:Pt[p.catchUpPolicy]})]})]})})]})})]}),(0,s.jsxs)("div",{className:"shrink-0 flex flex-col gap-3 border-t border-border/60 px-5 py-4 sm:flex-row sm:items-center sm:justify-between",children:[(0,s.jsx)("div",{className:"text-sm text-muted-foreground",children:"After creation, Paperclip takes you straight to trigger setup. Draft routines stay paused until you add a default agent."}),(0,s.jsxs)("div",{className:"flex flex-col gap-2 sm:items-end",children:[(0,s.jsxs)(F,{onClick:t(()=>N.mutate(),"onClick"),disabled:N.isPending||!p.title.trim(),children:[(0,s.jsx)(Z,{className:"mr-2 h-4 w-4"}),N.isPending?"Creating...":"Create routine"]}),N.isError?(0,s.jsx)("p",{className:"text-sm text-destructive",children:N.error instanceof Error?N.error.message:"Failed to create routine"}):null]})]})]})}),ae?(0,s.jsx)(lt,{children:(0,s.jsx)(at,{className:"pt-6 text-sm text-destructive",children:ae instanceof Error?ae.message:"Failed to load routines"})}):null,P==="routines"?(0,s.jsxs)("div",{className:Ds(fe&&"flex gap-4"),children:[fe?(0,s.jsx)(dt,{result:pe,selection:f,allLabel:"All routines",itemLabelPlural:"routines",loading:Pe,onSelect:Y,onCreate:t(()=>T(),"onCreate"),onRename:t((e,r)=>ue.mutate({folderId:e.id,payload:{name:r}}),"onRename"),onEdit:t(e=>{L(e),K(!0)},"onEdit"),onDelete:te}):null,(0,s.jsxs)("div",{className:"min-w-0 flex-1",children:[u.groupBy==="folder"&&W?(0,s.jsx)("div",{className:"mb-3 flex flex-wrap items-center gap-2",children:f==="all"?(0,s.jsx)(Et,{label:"All routines",count:D.length}):(0,s.jsxs)("div",{className:"flex min-w-0 items-center gap-2 text-sm",children:[(0,s.jsx)(jt,{color:Be?.color}),(0,s.jsx)("span",{className:"truncate font-medium",children:f==="unfiled"?"Unfiled":Be?.name??"Folder"}),(0,s.jsxs)("span",{className:"text-muted-foreground",children:[D.length," routine",D.length===1?"":"s"]})]})}):null,u.groupBy==="folder"&&!W&&!Pe&&y.length>0?(0,s.jsx)(mt,{storageKey:`paperclip:routines-folder-nudge:${n??"none"}`,itemLabelPlural:"routines",onCreateFolder:t(()=>T(),"onCreateFolder")}):null,ne?(0,s.jsx)(gt,{selectedCount:B.length,folders:h?.folders??[],onMove:t(e=>{Rs(e)},"onMove"),onCreateAndMove:t(()=>T(B),"onCreateAndMove"),onClear:t(()=>V([]),"onClear"),onDone:t(()=>{re(!1),V([])},"onDone")}):null,y.length===0?(0,s.jsx)("div",{className:"py-12",children:(0,s.jsx)(je,{icon:ee,message:"No active routines. Use Create routine to define the first recurring workflow."})}):D.length===0?(0,s.jsxs)("div",{className:"py-12",children:[(0,s.jsx)(je,{icon:ee,message:f==="all"?"No routines match this view.":"This folder is empty."}),f!=="all"?(0,s.jsx)("div",{className:"mt-3 flex justify-center",children:(0,s.jsxs)(F,{size:"sm",onClick:$e,children:[(0,s.jsx)(Z,{className:"mr-2 h-3.5 w-3.5"}),"New routine in this folder"]})}):null]}):(0,s.jsx)("div",{className:"flex flex-col gap-3",children:Ns.map(e=>{const r=!u.collapsedGroups.includes(e.key);return(0,s.jsxs)(Ge,{open:r,onOpenChange:t(a=>{ge({collapsedGroups:a?u.collapsedGroups.filter(v=>v!==e.key):[...u.collapsedGroups,e.key]})},"onOpenChange"),children:[e.label?(0,s.jsx)(Ut,{label:e.label,count:e.items.length,isOpen:r}):null,(0,s.jsx)(We,{children:e.items.map(a=>(0,s.jsx)(It,{routine:a,projectById:E,agentById:U,runningRoutineId:us,statusMutationRoutineId:ms,href:`/routines/${a.id}`,runNowButton:!0,divider:!1,onRunNow:Cs,onToggleEnabled:Ss,onToggleArchived:_s,selectMode:ne,selected:B.includes(a.id),onSelectChange:t((v,xe)=>{V(H=>xe?Array.from(new Set([...H,v.id])):H.filter(Fs=>Fs!==v.id))},"onSelectChange"),extraMenuItems:(0,s.jsx)(Nt,{folders:h?.folders??[],currentFolderId:a.folderId??null,onMove:t(v=>{const xe=a.folderId??null;qe.mutate({itemId:a.id,folderId:v}),i({title:"Routine moved",body:v?`Moved "${a.title}" to ${h?.folders.find(H=>H.id===v)?.name??"folder"}.`:`Moved "${a.title}" to Unfiled.`,tone:"success",action:{label:"Undo",onClick:t(()=>qe.mutate({itemId:a.id,folderId:xe}),"onClick")}})},"onMove"),onCreateAndMove:t(()=>T([a.id]),"onCreateAndMove")})},a.id))})]},e.key)})})]})]}):null,(0,s.jsx)(pt,{open:O,kind:"routine",folder:se,pending:De.isPending||ue.isPending,onOpenChange:K,onSubmit:t(e=>{se?ue.mutate({folderId:se.id,payload:e}):De.mutate(e)},"onSubmit")}),(0,s.jsx)(ft,{open:Q!==null,folder:Q,itemLabelPlural:"routines",pending:Te.isPending,onOpenChange:t(e=>{e||te(null)},"onOpenChange"),onConfirm:t(()=>{Q&&Te.mutate(Q.id)},"onConfirm")}),(0,s.jsx)(St,{open:ds,onOpenChange:Ne,result:pe,selection:f,allLabel:"All routines",itemLabelPlural:"Routines",onSelect:Y,onCreate:t(()=>T(),"onCreate")}),(0,s.jsx)($s,{open:k!==null,onOpenChange:t(e=>{e||ie(null)},"onOpenChange"),companyId:n,routineName:k?.title??null,agents:C??[],projects:S??[],defaultProjectId:k?.projectId??null,defaultAssigneeAgentId:k?.assigneeAgentId??null,variables:k?.variables??[],isPending:Ue.isPending,onSubmit:t(e=>{k&&Ue.mutate({id:k.id,data:e})},"onSubmit")})]}):(0,s.jsx)(je,{icon:ee,message:"Select a company to view routines."})}t(cn,"Routines");function Et({label:n,count:c}){return(0,s.jsxs)("div",{className:"flex min-w-0 items-center gap-2 text-sm",children:[(0,s.jsx)(ee,{className:"h-3.5 w-3.5 text-muted-foreground"}),(0,s.jsx)("span",{className:"truncate font-medium",children:n}),(0,s.jsxs)("span",{className:"text-muted-foreground",children:[c," routine",c===1?"":"s"]})]})}t(Et,"FolderIconHeader");export{cn as Routines};
1
+ var ks=Object.defineProperty;var t=(n,c)=>ks(n,"name",{value:c,configurable:!0});import{i as as}from"./rolldown-runtime-ZpX3ckPj.js";import{Fr as Ps,Lr as As,Pr as Ms,S as Ds,U as Ts,Y as m,nr as A,tr as _}from"./createLucideIcon-r3v6fbGz.js";import{B as ze,U as qs,b as Ks,ct as Us,o as Es}from"./router-DyZkoSkG.js";import{Ct as Os,O as Ls,bt as Qs,cr as ls,gr as Bs,lr as ee,or as Ge,r as Vs,sr as We,t as $s,v as he,vt as Ye,wt as zs,xt as Gs,yt as Ws}from"./RoutineRunVariablesDialog-IRX4TLng.js";import{l as J,t as Ys}from"./MarkdownEditor-Pip4OXiJ.js";import{t as He}from"./AgentAvatar-PT82VwmU.js";import{a as Hs,r as Js}from"./checkbox-CmMbs2PZ.js";import{n as Je,t as Xs}from"./tabs-DWRZjksg.js";import{a as Xe,c as Ze,r as es,t as Zs}from"./agents-BlSzFh-1.js";import{g as et}from"./StatusIcon-BuUYMqqU.js";import{r as st,t as je}from"./EmptyState-DPcc0zYh.js";import{t as tt}from"./check-DDiXDm2i.js";import{t as nt}from"./chevron-down-F9aZv-V7.js";import{t as cs}from"./chevron-right-B9JUOr38.js";import{c as ye,i as X,n as ve,s as be,t as we}from"./select-mS22eY6T.js";import{k as Z,t as F}from"./button-CAPbz11u.js";import{t as rt}from"./heartbeats-CK_aXmx5.js";import{i as it,o as ot}from"./company-members-BcZm1g8Q.js";import{r as at,t as lt}from"./card-dmVcp3AX.js";import{t as ct}from"./PageSkeleton-DHjTwRT3.js";import{$ as dt,$t as ut,J as mt,Q as pt,X as ft,Y as gt,Z as xt,at as ht,et as jt,fn as yt,ht as M,in as vt,it as bt,mt as wt,nt as Nt,pt as It,rn as Rt,rt as Ct,tt as St}from"./index-zttiya6r.js";var l=as(As(),1),s=as(Ps(),1),_t=["coalesce_if_active","always_enqueue","skip_if_active"],Ft=["skip_missed","enqueue_missed_with_cap"],kt={coalesce_if_active:"If a run is already active, keep just one follow-up run queued.",always_enqueue:"Queue every trigger occurrence, even if the routine is already running.",skip_if_active:"Drop new trigger occurrences while a run is still active."},Pt={skip_missed:"Ignore windows that were missed while the scheduler or routine was paused.",enqueue_missed_with_cap:"Catch up missed schedule windows after recovery; sub-hourly schedules are combined into one catch-up run, slower schedules replay each missed window up to a cap."};function ss(n){n&&(n.style.height="auto",n.style.height=`${n.scrollHeight}px`)}t(ss,"autoResizeTextarea");var At="__built_in_routines",ts={sortField:"title",sortDir:"asc",groupBy:"folder",collapsedGroups:[]};function ns(n){try{const c=localStorage.getItem(n);if(c)return{...ts,...JSON.parse(c)}}catch{}return{...ts}}t(ns,"getRoutineViewState");function Mt(n,c){localStorage.setItem(n,JSON.stringify(c))}t(Mt,"saveRoutineViewState");function q(n){if(!n)return Number.NEGATIVE_INFINITY;const c=new Date(n).getTime();return Number.isFinite(c)?c:Number.NEGATIVE_INFINITY}t(q,"timestampValue");function rs(n,c){return(n??"").localeCompare(c??"",void 0,{sensitivity:"base"})}t(rs,"compareNullableText");function Dt(n){return{...n,description:n.description.trim()||null,projectId:n.projectId||null,folderId:n.folderId||null,assigneeAgentId:n.assigneeAgentId||null}}t(Dt,"buildRoutineMutationPayload");function Tt(n,c,d,b,g){if(c==="none")return[{key:"__all",label:null,items:n}];if(c==="folder"){const i=he(n,o=>o.folderId??"__unfiled");return Object.keys(i).sort((o,j)=>{if(o==="__unfiled"||j==="__unfiled")return o===j?0:o==="__unfiled"?1:-1;const w=g.get(o),I=g.get(j),O=(Number.isFinite(w?.position)?w.position:Number.POSITIVE_INFINITY)-(Number.isFinite(I?.position)?I.position:Number.POSITIVE_INFINITY);return O!==0?O:(w?.name??"Unknown folder").localeCompare(I?.name??"Unknown folder",void 0,{sensitivity:"base"})||o.localeCompare(j)}).map(o=>({key:o,label:o==="__unfiled"?"Unfiled":g.get(o)?.name??"Unknown folder",items:i[o]}))}if(c==="project"){const i=he(n,o=>o.projectId??"__no_project");return Object.keys(i).sort((o,j)=>{const w=o==="__no_project"?"No project":d.get(o)?.name??"Unknown project",I=j==="__no_project"?"No project":d.get(j)?.name??"Unknown project";return w.localeCompare(I)}).map(o=>({key:o,label:o==="__no_project"?"No project":d.get(o)?.name??"Unknown project",items:i[o]}))}const x=he(n,i=>i.assigneeAgentId??"__unassigned");return Object.keys(x).sort((i,o)=>{const j=i==="__unassigned"?"Unassigned":b.get(i)?.name??"Unknown agent",w=o==="__unassigned"?"Unassigned":b.get(o)?.name??"Unknown agent";return j.localeCompare(w)}).map(i=>({key:i,label:i==="__unassigned"?"Unassigned":b.get(i)?.name??"Unknown agent",items:x[i]}))}t(Tt,"buildRoutineGroups");function is(n){return n.originKind==="built_in_agent_bundle"}t(is,"isBuiltInRoutine");function qt(n,c,d,b,g){const x=n.filter(is),i=Tt(n.filter(o=>!is(o)),c,d,b,g).filter(o=>o.items.length>0).map(o=>x.length>0&&c==="none"&&o.key==="__all"?{...o,label:"Custom routines"}:o);return x.length===0?i:[...i,{key:At,label:"Built-in routines",items:x}]}t(qt,"buildRoutineSections");function Kt(n,c,d){const b=d==="asc"?1:-1;return[...n].sort((g,x)=>{let i=0;return c==="title"?i=rs(g.title,x.title):c==="created"?i=q(g.createdAt)-q(x.createdAt):c==="lastRun"?i=q(g.lastRun?.triggeredAt??g.lastTriggeredAt)-q(x.lastRun?.triggeredAt??x.lastTriggeredAt):i=q(g.updatedAt)-q(x.updatedAt),i!==0?i*b:rs(g.title,x.title)})}t(Kt,"sortRoutines");function os(n){return n==="runs"?"/routines?tab=runs":"/routines"}t(os,"buildRoutinesTabHref");function Ut({label:n,count:c,isOpen:d}){return(0,s.jsxs)("div",{className:`flex items-center gap-2 rounded-lg border border-border px-3 py-2${d?" mb-1":""}`,children:[(0,s.jsxs)(ls,{className:"flex items-center gap-1.5",children:[(0,s.jsx)(cs,{className:"h-3.5 w-3.5 shrink-0 text-muted-foreground transition-transform [[data-state=open]>&]:rotate-90"}),(0,s.jsx)("span",{className:"text-sm font-semibold uppercase tracking-wide",children:n})]}),(0,s.jsx)("span",{className:"text-xs text-muted-foreground",children:c})]})}t(Ut,"RoutineSectionHeader");function cn(){const{selectedCompanyId:n}=Ts(),{setBreadcrumbs:c}=st(),d=Ms(),b=Es(),[g,x]=Us(),{pushToast:i}=yt(),o=(0,l.useRef)(null),j=(0,l.useRef)(null),w=(0,l.useRef)(null),I=(0,l.useRef)(null),[O,K]=(0,l.useState)(!1),[se,L]=(0,l.useState)(null),[Q,te]=(0,l.useState)(null),[ds,Ne]=(0,l.useState)(!1),[ne,re]=(0,l.useState)(!1),[B,V]=(0,l.useState)([]),[Ie,Re]=(0,l.useState)([]),[us,Ce]=(0,l.useState)(null),[ms,Se]=(0,l.useState)(null),[k,ie]=(0,l.useState)(null),[$,z]=(0,l.useState)(!1),[_e,oe]=(0,l.useState)(!1),P=g.get("tab")==="runs"?"runs":"routines",[p,R]=(0,l.useState)({title:"",description:"",projectId:"",folderId:null,assigneeAgentId:"",priority:"medium",concurrencyPolicy:"coalesce_if_active",catchUpPolicy:"skip_missed",variables:[]}),G=n?`paperclip:routines-view:${n}`:"paperclip:routines-view",[u,Fe]=(0,l.useState)(()=>ns(G)),f=bt(g.get("folder"));(0,l.useEffect)(()=>{c([{label:"Routines"}])},[c]),(0,l.useEffect)(()=>{Fe(ns(G))},[G]);const{data:ke,isLoading:ps,error:ae}=A({queryKey:m.routines.list(n),queryFn:t(()=>J.list(n),"queryFn"),enabled:!!n}),{data:h,isLoading:Pe}=A({queryKey:m.folders.list(n,"routine"),queryFn:t(()=>M.list(n,"routine"),"queryFn"),enabled:!!n&&P==="routines"}),{data:C}=A({queryKey:m.agents.list(n),queryFn:t(()=>Zs.list(n),"queryFn"),enabled:!!n}),{data:S}=A({queryKey:m.projects.list(n,{includeArchived:!0}),queryFn:t(()=>et.list(n,{includeArchived:!0}),"queryFn"),enabled:!!n}),{data:Ae}=A({queryKey:m.access.companyUserDirectory(n),queryFn:t(()=>ot.listUserDirectory(n),"queryFn"),enabled:!!n}),{data:le,isLoading:fs,error:gs}=A({queryKey:[...m.issues.list(n),"routine-executions"],queryFn:t(()=>ze.list(n,{originKind:"routine_execution"}),"queryFn"),enabled:!!n&&P==="runs"}),Me=m.liveRuns(n),ce=vt({companyId:n,resourceKey:"live-runs",queryKey:Me,enabled:!!n&&P==="runs",refetchInterval:!1,leaderOnly:!0}),{data:de,dataUpdatedAt:xs}=A({queryKey:Me,queryFn:t(()=>rt.liveRunsForCompany(n),"queryFn"),enabled:ce.enabled,refetchInterval:ce.refetchInterval});Rt(ce,de,xs),(0,l.useEffect)(()=>{ss(j.current)},[p.title,$]);const hs=(0,l.useMemo)(()=>it({agents:C,projects:(S??[]).filter(e=>!e.archivedAt),members:Ae?.users}),[C,Ae?.users,S]),N=_({mutationFn:t(()=>J.create(n,Dt(p)),"mutationFn"),onSuccess:t(async e=>{R({title:"",description:"",projectId:"",folderId:null,assigneeAgentId:"",priority:"medium",concurrencyPolicy:"coalesce_if_active",catchUpPolicy:"skip_missed",variables:[]}),z(!1),oe(!1),await d.invalidateQueries({queryKey:m.routines.list(n)}),i({title:"Routine created",body:e.assigneeAgentId?"Add the first trigger to turn it into a live workflow.":"Draft saved. Add a default agent before enabling automation.",tone:"success"}),b(`/routines/${e.id}?tab=triggers`)},"onSuccess")}),De=_({mutationFn:t(e=>M.create(n,{kind:"routine",...e}),"mutationFn"),onSuccess:t(async e=>{if(K(!1),L(null),await d.invalidateQueries({queryKey:m.folders.list(n,"routine")}),Ie.length>0){const r=Ie;Re([]);try{await Promise.all(r.map(a=>M.moveItem(n,{kind:"routine",itemId:a,folderId:e.id}))),await Promise.all([d.invalidateQueries({queryKey:m.routines.list(n)}),d.invalidateQueries({queryKey:m.folders.list(n,"routine")})])}catch(a){i({title:"Folder created, move failed",body:a instanceof Error?a.message:"Paperclip could not move the selected routines.",tone:"error"});return}}else Y(e.id);i({title:"Folder created",body:e.name,tone:"success"})},"onSuccess"),onError:t(e=>{i({title:"Failed to save folder",body:e instanceof Error?e.message:"Paperclip could not save the folder.",tone:"error"})},"onError")}),ue=_({mutationFn:t(({folderId:e,payload:r})=>M.update(n,e,r),"mutationFn"),onSuccess:t(async()=>{K(!1),L(null),await d.invalidateQueries({queryKey:m.folders.list(n,"routine")})},"onSuccess"),onError:t(e=>{i({title:"Folder save failed",body:e instanceof Error?e.message:"Paperclip could not update the folder.",tone:"error"})},"onError")}),Te=_({mutationFn:t(e=>M.delete(n,e),"mutationFn"),onSuccess:t(async(e,r)=>{f===r&&Y("all"),te(null),await Promise.all([d.invalidateQueries({queryKey:m.routines.list(n)}),d.invalidateQueries({queryKey:m.folders.list(n,"routine")})]),i({title:"Folder deleted",body:"Items moved to Unfiled.",tone:"success"})},"onSuccess"),onError:t(e=>{i({title:"Folder delete failed",body:e instanceof Error?e.message:"Paperclip could not delete the folder.",tone:"error"})},"onError")}),qe=_({mutationFn:t(({itemId:e,folderId:r})=>M.moveItem(n,{kind:"routine",itemId:e,folderId:r}),"mutationFn"),onSuccess:t(async()=>{await Promise.all([d.invalidateQueries({queryKey:m.routines.list(n)}),d.invalidateQueries({queryKey:m.folders.list(n,"routine")})])},"onSuccess"),onError:t(e=>{i({title:"Move failed",body:e instanceof Error?e.message:"Paperclip could not move the routine.",tone:"error"})},"onError")}),js=_({mutationFn:t(({id:e,data:r})=>ze.update(e,r),"mutationFn"),onSuccess:t(async()=>{await d.invalidateQueries({queryKey:[...m.issues.list(n),"routine-executions"]})},"onSuccess")}),Ke=_({mutationFn:t(({id:e,status:r})=>J.update(e,{status:r}),"mutationFn"),onMutate:t(({id:e})=>{Se(e)},"onMutate"),onSuccess:t(async(e,r)=>{await Promise.all([d.invalidateQueries({queryKey:m.routines.list(n)}),d.invalidateQueries({queryKey:m.routines.detail(r.id)})])},"onSuccess"),onSettled:t(()=>{Se(null)},"onSettled"),onError:t(e=>{i({title:"Failed to update routine",body:e instanceof Error?e.message:"Paperclip could not update the routine.",tone:"error"})},"onError")}),Ue=_({mutationFn:t(({id:e,data:r})=>J.run(e,{...r?.variables&&Object.keys(r.variables).length>0?{variables:r.variables}:{},...r?.assigneeAgentId!==void 0?{assigneeAgentId:r.assigneeAgentId}:{},...r?.projectId!==void 0?{projectId:r.projectId}:{},...r?.executionWorkspaceId!==void 0?{executionWorkspaceId:r.executionWorkspaceId}:{},...r?.executionWorkspacePreference!==void 0?{executionWorkspacePreference:r.executionWorkspacePreference}:{},...r?.executionWorkspaceSettings!==void 0?{executionWorkspaceSettings:r.executionWorkspaceSettings}:{}}),"mutationFn"),onMutate:t(({id:e})=>{Ce(e)},"onMutate"),onSuccess:t(async(e,{id:r})=>{ie(null),await Promise.all([d.invalidateQueries({queryKey:m.routines.list(n)}),d.invalidateQueries({queryKey:m.routines.detail(r)})])},"onSuccess"),onSettled:t(()=>{Ce(null)},"onSettled"),onError:t(e=>{i({title:"Routine run failed",body:e instanceof Error?e.message:"Paperclip could not start the routine run.",tone:"error"})},"onError")}),me=(0,l.useMemo)(()=>Gs(),[$]),ys=(0,l.useMemo)(()=>Ws(),[$]),vs=(0,l.useMemo)(()=>Os((C??[]).filter(e=>e.status!=="terminated"),me).map(e=>({id:e.id,label:e.name,searchText:`${e.name} ${e.role} ${e.title??""}`})),[C,me]),bs=(0,l.useMemo)(()=>(S??[]).filter(e=>!e.archivedAt).map(e=>({id:e.id,label:e.name,searchText:e.description??""})),[S]),U=(0,l.useMemo)(()=>new Map((C??[]).map(e=>[e.id,e])),[C]),E=(0,l.useMemo)(()=>new Map((S??[]).map(e=>[e.id,e])),[S]),Ee=(0,l.useMemo)(()=>new Map((h?.folders??[]).map(e=>[e.id,e])),[h]),ws=(0,l.useMemo)(()=>Ls(de,le),[de,le]),y=(0,l.useMemo)(()=>(ke??[]).filter(e=>e.status!=="archived"),[ke]),Oe=(0,l.useMemo)(()=>u.groupBy!=="folder"||f==="all"?y:f==="unfiled"?y.filter(e=>!e.folderId):y.filter(e=>e.folderId===f),[f,u.groupBy,y]),pe=(0,l.useMemo)(()=>{if(!h)return h;const e=new Map;let r=0;for(const a of y)a.folderId?e.set(a.folderId,(e.get(a.folderId)??0)+1):r+=1;return{...h,allCount:y.length,unfiledCount:r,folders:h.folders.map(a=>({...a,itemCount:e.get(a.id)??0}))}},[h,y]),D=(0,l.useMemo)(()=>Kt(Oe,u.sortField,u.sortDir),[Oe,u.sortDir,u.sortField]),Ns=(0,l.useMemo)(()=>qt(D,u.groupBy,E,U,Ee),[U,Ee,E,u.groupBy,D]),Is=(0,l.useMemo)(()=>qs("Recent Runs",os("runs"),"issues"),[]),Le=p.assigneeAgentId?U.get(p.assigneeAgentId)??null:null,Qe=p.projectId?E.get(p.projectId)??null:null,Be=ht(h?.folders??[],f),W=(h?.folders.length??0)>0,fe=P==="routines"&&u.groupBy==="folder"&&W;function ge(e){Fe(r=>{const a={...r,...e};return Mt(G,a),a})}t(ge,"updateRoutineView");function Ve(e){const r=e==="runs"?"runs":"routines";(0,l.startTransition)(()=>{b(os(r))})}t(Ve,"handleTabChange");function Y(e){x(r=>{const a=new URLSearchParams(r),v=Ct(e);return v?a.set("folder",v):a.delete("folder"),a})}t(Y,"setFolderSelection");function T(e=[]){Re(e),L(null),K(!0)}t(T,"openCreateFolder");function $e(){R(e=>({...e,folderId:f==="all"||f==="unfiled"?null:f})),z(!0)}t($e,"openCreateRoutine");async function Rs(e){const r=B;if(r.length!==0)try{await Promise.all(r.map(a=>M.moveItem(n,{kind:"routine",itemId:a,folderId:e}))),V([]),re(!1),await Promise.all([d.invalidateQueries({queryKey:m.routines.list(n)}),d.invalidateQueries({queryKey:m.folders.list(n,"routine")})]),i({title:"Routines moved",body:`${r.length} routine${r.length===1?"":"s"} filed.`,tone:"success"})}catch(a){i({title:"Failed to move routines",body:a instanceof Error?a.message:"Paperclip could not move the selected routines.",tone:"error"})}}t(Rs,"moveSelectedRoutines");function Cs(e){ie(e)}t(Cs,"handleRunNow");function Ss(e,r){if(!r&&!e.assigneeAgentId){i({title:"Default agent required",body:"Set a default agent before enabling routine automation.",tone:"warn"});return}Ke.mutate({id:e.id,status:wt(e.status,!r)})}t(Ss,"handleToggleEnabled");function _s(e){Ke.mutate({id:e.id,status:e.status==="archived"?"active":"archived"})}return t(_s,"handleToggleArchived"),n?ps?(0,s.jsx)(ct,{variant:"issues-list"}):(0,s.jsxs)("div",{className:"space-y-6",children:[(0,s.jsxs)("div",{className:"flex flex-col gap-3 sm:flex-row sm:items-end sm:justify-between",children:[(0,s.jsxs)("div",{className:"space-y-1",children:[(0,s.jsx)("h1",{className:"text-2xl font-semibold tracking-tight",children:"Routines"}),(0,s.jsx)("p",{className:"text-sm text-muted-foreground",children:"Recurring work definitions that materialize into auditable execution tasks."})]}),(0,s.jsxs)(F,{onClick:$e,children:[(0,s.jsx)(Z,{className:"mr-2 h-4 w-4"}),"Create routine"]})]}),(0,s.jsxs)(Xs,{value:P,onValueChange:Ve,children:[(0,s.jsx)(ut,{align:"start",value:P,onValueChange:Ve,items:[{value:"routines",label:"Routines"},{value:"runs",label:"Recent Runs"}]}),(0,s.jsxs)(Je,{value:"routines",className:"space-y-4",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,s.jsxs)("p",{className:"text-sm text-muted-foreground",children:[y.length," routine",y.length===1?"":"s"]}),(0,s.jsxs)("div",{className:"flex items-center gap-1",children:[(0,s.jsxs)(es,{children:[(0,s.jsx)(Ze,{asChild:!0,children:(0,s.jsxs)(F,{variant:"ghost",size:"sm",className:"text-xs",title:"Sort",children:[(0,s.jsx)(Bs,{className:"h-3.5 w-3.5 sm:h-3 sm:w-3 sm:mr-1"}),(0,s.jsx)("span",{className:"hidden sm:inline",children:"Sort"})]})}),(0,s.jsx)(Xe,{align:"end",className:"w-44 p-0",children:(0,s.jsx)("div",{className:"p-2 space-y-0.5",children:[["updated","Updated"],["created","Created"],["lastRun","Last run"],["title","Title"]].map(([e,r])=>(0,s.jsxs)("button",{className:`flex w-full items-center justify-between rounded-sm px-2 py-1.5 text-sm ${u.sortField===e?"bg-accent/50 text-foreground":"text-muted-foreground hover:bg-accent/50"}`,onClick:t(()=>{ge(u.sortField===e?{sortDir:u.sortDir==="asc"?"desc":"asc"}:{sortField:e,sortDir:e==="title"?"asc":"desc"})},"onClick"),children:[(0,s.jsx)("span",{children:r}),u.sortField===e?(0,s.jsx)("span",{className:"text-xs text-muted-foreground",children:u.sortDir==="asc"?"Asc":"Desc"}):null]},e))})})]}),(0,s.jsxs)(es,{children:[(0,s.jsx)(Ze,{asChild:!0,children:(0,s.jsxs)(F,{variant:"ghost",size:"sm",className:"text-xs",title:"Group",children:[(0,s.jsx)(Ks,{className:"h-3.5 w-3.5 sm:h-3 sm:w-3 sm:mr-1"}),(0,s.jsx)("span",{className:"hidden sm:inline",children:"Group"})]})}),(0,s.jsx)(Xe,{align:"end",className:"w-44 p-0",children:(0,s.jsx)("div",{className:"p-2 space-y-0.5",children:[["folder","Folder"],["project","Project"],["assignee","Agent"],["none","None"]].map(([e,r])=>(0,s.jsxs)("button",{className:`flex w-full items-center justify-between rounded-sm px-2 py-1.5 text-sm ${u.groupBy===e?"bg-accent/50 text-foreground":"text-muted-foreground hover:bg-accent/50"}`,onClick:t(()=>ge({groupBy:e,collapsedGroups:[]}),"onClick"),children:[(0,s.jsx)("span",{children:r}),u.groupBy===e?(0,s.jsx)(tt,{className:"h-3.5 w-3.5"}):null]},e))})})]}),u.groupBy==="folder"&&!W?(0,s.jsxs)(F,{variant:"outline",size:"sm",onClick:t(()=>T(),"onClick"),children:[(0,s.jsx)(Z,{className:"mr-2 h-3.5 w-3.5"}),"New folder"]}):null,fe?(0,s.jsx)(F,{variant:"ghost",size:"sm",className:"text-xs",onClick:t(()=>re(e=>!e),"onClick"),children:ne?"Done":"Select"}):null]})]}),u.groupBy==="folder"?(0,s.jsx)("div",{className:"md:hidden",children:(0,s.jsx)(xt,{result:pe,selection:f,allLabel:"All routines",onClick:t(()=>Ne(!0),"onClick")})}):null]}),(0,s.jsx)(Je,{value:"runs",children:(0,s.jsx)(Vs,{issues:le??[],isLoading:fs,error:gs,agents:C,projects:S,liveIssueIds:ws,viewStateKey:"paperclip:routine-recent-runs-view",issueLinkState:Is,onUpdateIssue:t((e,r)=>js.mutate({id:e,data:r}),"onUpdateIssue")})})]}),(0,s.jsx)(Js,{open:$,onOpenChange:t(e=>{N.isPending||z(e)},"onOpenChange"),children:(0,s.jsxs)(Hs,{showCloseButton:!1,className:"flex max-h-(--sz-calc-18) max-w-3xl flex-col gap-0 overflow-hidden p-0",children:[(0,s.jsxs)("div",{className:"shrink-0 flex flex-wrap items-center justify-between gap-3 border-b border-border/60 px-5 py-3",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("p",{className:"text-xs font-medium uppercase tracking-(--tracking-caps) text-muted-foreground",children:"New routine"}),(0,s.jsx)("p",{className:"text-sm text-muted-foreground",children:"Define the recurring work first. Default project and agent are optional for draft routines."})]}),(0,s.jsx)(F,{variant:"ghost",size:"sm",onClick:t(()=>{z(!1),oe(!1)},"onClick"),disabled:N.isPending,children:"Cancel"})]}),(0,s.jsxs)("div",{className:"min-h-0 flex-1 overflow-y-auto",children:[(0,s.jsx)("div",{className:"px-5 pt-5 pb-3",children:(0,s.jsx)("textarea",{ref:j,className:"w-full resize-none overflow-hidden bg-transparent text-xl font-semibold outline-none placeholder:text-muted-foreground/50",placeholder:"Routine title",rows:1,value:p.title,onChange:t(e=>{R(r=>({...r,title:e.target.value})),ss(e.target)},"onChange"),onKeyDown:t(e=>{if(e.key==="Enter"&&!e.metaKey&&!e.ctrlKey&&!e.nativeEvent.isComposing){e.preventDefault(),o.current?.focus();return}e.key==="Tab"&&!e.shiftKey&&(e.preventDefault(),p.assigneeAgentId?p.projectId?o.current?.focus():I.current?.focus():w.current?.focus())},"onKeyDown"),autoFocus:!0})}),(0,s.jsx)("div",{className:"px-5 pb-3",children:(0,s.jsx)("div",{className:"overflow-x-auto overscroll-x-contain",children:(0,s.jsxs)("div",{className:"inline-flex min-w-full flex-wrap items-center gap-2 text-sm text-muted-foreground sm:min-w-max sm:flex-nowrap",children:[(0,s.jsx)("span",{children:"For"}),(0,s.jsx)(Ye,{ref:w,value:p.assigneeAgentId,options:vs,recentOptionIds:me,placeholder:"Responsible",noneLabel:"No responsible",searchPlaceholder:"Search responsible...",emptyMessage:"No responsible found.",onChange:t(e=>{e&&zs(e),R(r=>({...r,assigneeAgentId:e}))},"onChange"),onConfirm:t(()=>{p.projectId?o.current?.focus():I.current?.focus()},"onConfirm"),renderTriggerValue:t(e=>e?Le?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(He,{agent:Le,size:16,className:"h-3.5 w-3.5 shrink-0 text-muted-foreground"}),(0,s.jsx)("span",{className:"truncate",children:e.label})]}):(0,s.jsx)("span",{className:"truncate",children:e.label}):(0,s.jsx)("span",{className:"text-muted-foreground",children:"Responsible"}),"renderTriggerValue"),renderOption:t(e=>{if(!e.id)return(0,s.jsx)("span",{className:"truncate",children:e.label});const r=U.get(e.id);return(0,s.jsxs)(s.Fragment,{children:[r?(0,s.jsx)(He,{agent:r,size:16,className:"h-3.5 w-3.5 shrink-0 text-muted-foreground"}):null,(0,s.jsx)("span",{className:"truncate",children:e.label})]})},"renderOption")}),(0,s.jsx)("span",{children:"in"}),(0,s.jsx)(Ye,{ref:I,value:p.projectId,options:bs,recentOptionIds:ys,placeholder:"Project",noneLabel:"No project",searchPlaceholder:"Search projects...",emptyMessage:"No projects found.",onChange:t(e=>{e&&Qs(e),R(r=>({...r,projectId:e}))},"onChange"),onConfirm:t(()=>o.current?.focus(),"onConfirm"),renderTriggerValue:t(e=>e&&Qe?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("span",{className:"h-3.5 w-3.5 shrink-0 rounded-sm",style:{backgroundColor:Qe.color??"var(--project-none)"}}),(0,s.jsx)("span",{className:"truncate",children:e.label})]}):(0,s.jsx)("span",{className:"text-muted-foreground",children:"Project"}),"renderTriggerValue"),renderOption:t(e=>{if(!e.id)return(0,s.jsx)("span",{className:"truncate",children:e.label});const r=E.get(e.id);return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("span",{className:"h-3.5 w-3.5 shrink-0 rounded-sm",style:{backgroundColor:r?.color??"var(--project-none)"}}),(0,s.jsx)("span",{className:"truncate",children:e.label})]})},"renderOption")}),(0,s.jsx)("span",{children:"filed in"}),(0,s.jsxs)(we,{value:p.folderId??"__unfiled",onValueChange:t(e=>R(r=>({...r,folderId:e==="__unfiled"?null:e})),"onValueChange"),children:[(0,s.jsx)(be,{className:"h-8 w-auto min-w-32 border-0 bg-muted/50 px-2 shadow-none",children:(0,s.jsx)(ye,{})}),(0,s.jsxs)(ve,{children:[(0,s.jsx)(X,{value:"__unfiled",children:"Unfiled"}),(h?.folders??[]).map(e=>(0,s.jsx)(X,{value:e.id,children:e.name},e.id))]})]})]})})}),(0,s.jsx)("div",{className:"border-t border-border/60 px-5 py-4",children:(0,s.jsx)(Ys,{ref:o,value:p.description,onChange:t(e=>R(r=>({...r,description:e})),"onChange"),placeholder:"Add instructions...",bordered:!1,contentClassName:"min-h-(--sz-160px) text-sm text-muted-foreground",mentions:hs,onSubmit:t(()=>{!N.isPending&&p.title.trim()&&p.projectId&&p.assigneeAgentId&&N.mutate()},"onSubmit")})}),(0,s.jsx)("div",{className:"border-t border-border/60 px-5 py-3",children:(0,s.jsxs)(Ge,{open:_e,onOpenChange:oe,children:[(0,s.jsxs)(ls,{className:"flex w-full items-center justify-between text-left",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("p",{className:"text-sm font-medium",children:"Advanced delivery settings"}),(0,s.jsx)("p",{className:"text-sm text-muted-foreground",children:"Keep policy controls secondary to the work definition."})]}),_e?(0,s.jsx)(nt,{className:"h-4 w-4 text-muted-foreground"}):(0,s.jsx)(cs,{className:"h-4 w-4 text-muted-foreground"})]}),(0,s.jsx)(We,{className:"pt-3",children:(0,s.jsxs)("div",{className:"grid gap-4 md:grid-cols-2",children:[(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)("p",{className:"text-xs font-medium uppercase tracking-(--tracking-caps) text-muted-foreground",children:"Concurrency"}),(0,s.jsxs)(we,{value:p.concurrencyPolicy,onValueChange:t(e=>R(r=>({...r,concurrencyPolicy:e})),"onValueChange"),children:[(0,s.jsx)(be,{children:(0,s.jsx)(ye,{})}),(0,s.jsx)(ve,{children:_t.map(e=>(0,s.jsx)(X,{value:e,children:e.replaceAll("_"," ")},e))})]}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground",children:kt[p.concurrencyPolicy]})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)("p",{className:"text-xs font-medium uppercase tracking-(--tracking-caps) text-muted-foreground",children:"Catch-up"}),(0,s.jsxs)(we,{value:p.catchUpPolicy,onValueChange:t(e=>R(r=>({...r,catchUpPolicy:e})),"onValueChange"),children:[(0,s.jsx)(be,{children:(0,s.jsx)(ye,{})}),(0,s.jsx)(ve,{children:Ft.map(e=>(0,s.jsx)(X,{value:e,children:e.replaceAll("_"," ")},e))})]}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground",children:Pt[p.catchUpPolicy]})]})]})})]})})]}),(0,s.jsxs)("div",{className:"shrink-0 flex flex-col gap-3 border-t border-border/60 px-5 py-4 sm:flex-row sm:items-center sm:justify-between",children:[(0,s.jsx)("div",{className:"text-sm text-muted-foreground",children:"After creation, Paperclip takes you straight to trigger setup. Draft routines stay paused until you add a default agent."}),(0,s.jsxs)("div",{className:"flex flex-col gap-2 sm:items-end",children:[(0,s.jsxs)(F,{onClick:t(()=>N.mutate(),"onClick"),disabled:N.isPending||!p.title.trim(),children:[(0,s.jsx)(Z,{className:"mr-2 h-4 w-4"}),N.isPending?"Creating...":"Create routine"]}),N.isError?(0,s.jsx)("p",{className:"text-sm text-destructive",children:N.error instanceof Error?N.error.message:"Failed to create routine"}):null]})]})]})}),ae?(0,s.jsx)(lt,{children:(0,s.jsx)(at,{className:"pt-6 text-sm text-destructive",children:ae instanceof Error?ae.message:"Failed to load routines"})}):null,P==="routines"?(0,s.jsxs)("div",{className:Ds(fe&&"flex gap-4"),children:[fe?(0,s.jsx)(dt,{result:pe,selection:f,allLabel:"All routines",itemLabelPlural:"routines",loading:Pe,onSelect:Y,onCreate:t(()=>T(),"onCreate"),onRename:t((e,r)=>ue.mutate({folderId:e.id,payload:{name:r}}),"onRename"),onEdit:t(e=>{L(e),K(!0)},"onEdit"),onDelete:te}):null,(0,s.jsxs)("div",{className:"min-w-0 flex-1",children:[u.groupBy==="folder"&&W?(0,s.jsx)("div",{className:"mb-3 flex flex-wrap items-center gap-2",children:f==="all"?(0,s.jsx)(Et,{label:"All routines",count:D.length}):(0,s.jsxs)("div",{className:"flex min-w-0 items-center gap-2 text-sm",children:[(0,s.jsx)(jt,{color:Be?.color}),(0,s.jsx)("span",{className:"truncate font-medium",children:f==="unfiled"?"Unfiled":Be?.name??"Folder"}),(0,s.jsxs)("span",{className:"text-muted-foreground",children:[D.length," routine",D.length===1?"":"s"]})]})}):null,u.groupBy==="folder"&&!W&&!Pe&&y.length>0?(0,s.jsx)(mt,{storageKey:`paperclip:routines-folder-nudge:${n??"none"}`,itemLabelPlural:"routines",onCreateFolder:t(()=>T(),"onCreateFolder")}):null,ne?(0,s.jsx)(gt,{selectedCount:B.length,folders:h?.folders??[],onMove:t(e=>{Rs(e)},"onMove"),onCreateAndMove:t(()=>T(B),"onCreateAndMove"),onClear:t(()=>V([]),"onClear"),onDone:t(()=>{re(!1),V([])},"onDone")}):null,y.length===0?(0,s.jsx)("div",{className:"py-12",children:(0,s.jsx)(je,{icon:ee,message:"No active routines. Use Create routine to define the first recurring workflow."})}):D.length===0?(0,s.jsxs)("div",{className:"py-12",children:[(0,s.jsx)(je,{icon:ee,message:f==="all"?"No routines match this view.":"This folder is empty."}),f!=="all"?(0,s.jsx)("div",{className:"mt-3 flex justify-center",children:(0,s.jsxs)(F,{size:"sm",onClick:$e,children:[(0,s.jsx)(Z,{className:"mr-2 h-3.5 w-3.5"}),"New routine in this folder"]})}):null]}):(0,s.jsx)("div",{className:"flex flex-col gap-3",children:Ns.map(e=>{const r=!u.collapsedGroups.includes(e.key);return(0,s.jsxs)(Ge,{open:r,onOpenChange:t(a=>{ge({collapsedGroups:a?u.collapsedGroups.filter(v=>v!==e.key):[...u.collapsedGroups,e.key]})},"onOpenChange"),children:[e.label?(0,s.jsx)(Ut,{label:e.label,count:e.items.length,isOpen:r}):null,(0,s.jsx)(We,{children:e.items.map(a=>(0,s.jsx)(It,{routine:a,projectById:E,agentById:U,runningRoutineId:us,statusMutationRoutineId:ms,href:`/routines/${a.id}`,runNowButton:!0,divider:!1,onRunNow:Cs,onToggleEnabled:Ss,onToggleArchived:_s,selectMode:ne,selected:B.includes(a.id),onSelectChange:t((v,xe)=>{V(H=>xe?Array.from(new Set([...H,v.id])):H.filter(Fs=>Fs!==v.id))},"onSelectChange"),extraMenuItems:(0,s.jsx)(Nt,{folders:h?.folders??[],currentFolderId:a.folderId??null,onMove:t(v=>{const xe=a.folderId??null;qe.mutate({itemId:a.id,folderId:v}),i({title:"Routine moved",body:v?`Moved "${a.title}" to ${h?.folders.find(H=>H.id===v)?.name??"folder"}.`:`Moved "${a.title}" to Unfiled.`,tone:"success",action:{label:"Undo",onClick:t(()=>qe.mutate({itemId:a.id,folderId:xe}),"onClick")}})},"onMove"),onCreateAndMove:t(()=>T([a.id]),"onCreateAndMove")})},a.id))})]},e.key)})})]})]}):null,(0,s.jsx)(pt,{open:O,kind:"routine",folder:se,pending:De.isPending||ue.isPending,onOpenChange:K,onSubmit:t(e=>{se?ue.mutate({folderId:se.id,payload:e}):De.mutate(e)},"onSubmit")}),(0,s.jsx)(ft,{open:Q!==null,folder:Q,itemLabelPlural:"routines",pending:Te.isPending,onOpenChange:t(e=>{e||te(null)},"onOpenChange"),onConfirm:t(()=>{Q&&Te.mutate(Q.id)},"onConfirm")}),(0,s.jsx)(St,{open:ds,onOpenChange:Ne,result:pe,selection:f,allLabel:"All routines",itemLabelPlural:"Routines",onSelect:Y,onCreate:t(()=>T(),"onCreate")}),(0,s.jsx)($s,{open:k!==null,onOpenChange:t(e=>{e||ie(null)},"onOpenChange"),companyId:n,routineName:k?.title??null,agents:C??[],projects:S??[],defaultProjectId:k?.projectId??null,defaultAssigneeAgentId:k?.assigneeAgentId??null,variables:k?.variables??[],isPending:Ue.isPending,onSubmit:t(e=>{k&&Ue.mutate({id:k.id,data:e})},"onSubmit")})]}):(0,s.jsx)(je,{icon:ee,message:"Select a company to view routines."})}t(cn,"Routines");function Et({label:n,count:c}){return(0,s.jsxs)("div",{className:"flex min-w-0 items-center gap-2 text-sm",children:[(0,s.jsx)(ee,{className:"h-3.5 w-3.5 text-muted-foreground"}),(0,s.jsx)("span",{className:"truncate font-medium",children:n}),(0,s.jsxs)("span",{className:"text-muted-foreground",children:[c," routine",c===1?"":"s"]})]})}t(Et,"FolderIconHeader");export{cn as Routines};
@@ -1 +1 @@
1
- var E=Object.defineProperty;var r=(t,o)=>E(t,"name",{value:o,configurable:!0});import{i as _}from"./rolldown-runtime-ZpX3ckPj.js";import{Fr as M,Lr as q}from"./createLucideIcon-eTR0JqwS.js";var e=_(q(),1),L=_(M(),1),w=(0,e.createContext)(null),v=768;function j({children:t}){const[o,g]=(0,e.useState)(()=>window.innerWidth<v),[n,a]=(0,e.useState)(()=>window.innerWidth>=v),[i,l]=(0,e.useState)(!1),[c,u]=(0,e.useState)(!1);(0,e.useEffect)(()=>{const s=window.matchMedia("(max-width: 767px)"),S=r(h=>{g(h.matches),a(!h.matches)},"onChange");return s.addEventListener("change",S),()=>s.removeEventListener("change",S)},[]);const d=!1,p=!1,m=!1,b=(0,e.useCallback)(s=>{},[]),C=(0,e.useCallback)(()=>{},[]),f=(0,e.useCallback)(s=>{},[]),x=(0,e.useCallback)(()=>a(s=>!s),[]),k=(0,e.useMemo)(()=>({sidebarOpen:n,setSidebarOpen:a,toggleSidebar:x,isMobile:o,collapsed:d,setCollapsed:b,toggleCollapsed:C,collapseLocked:p,peeking:m,setPeeking:f,forceCollapsed:c,setForceCollapsed:u,routeRequestsCollapsed:i,setRouteRequestsCollapsed:l}),[n,a,x,o,d,b,C,p,m,f,c,u,i,l]);return(0,L.jsx)(w.Provider,{value:k,children:t})}r(j,"SidebarProvider");function I(){const t=(0,e.useContext)(w);if(!t)throw new Error("useSidebar must be used within SidebarProvider");return t}r(I,"useSidebar");export{I as n,j as t};
1
+ var E=Object.defineProperty;var r=(t,o)=>E(t,"name",{value:o,configurable:!0});import{i as _}from"./rolldown-runtime-ZpX3ckPj.js";import{Fr as M,Lr as q}from"./createLucideIcon-r3v6fbGz.js";var e=_(q(),1),L=_(M(),1),w=(0,e.createContext)(null),v=768;function j({children:t}){const[o,g]=(0,e.useState)(()=>window.innerWidth<v),[n,a]=(0,e.useState)(()=>window.innerWidth>=v),[i,l]=(0,e.useState)(!1),[c,u]=(0,e.useState)(!1);(0,e.useEffect)(()=>{const s=window.matchMedia("(max-width: 767px)"),S=r(h=>{g(h.matches),a(!h.matches)},"onChange");return s.addEventListener("change",S),()=>s.removeEventListener("change",S)},[]);const d=!1,p=!1,m=!1,b=(0,e.useCallback)(s=>{},[]),C=(0,e.useCallback)(()=>{},[]),f=(0,e.useCallback)(s=>{},[]),x=(0,e.useCallback)(()=>a(s=>!s),[]),k=(0,e.useMemo)(()=>({sidebarOpen:n,setSidebarOpen:a,toggleSidebar:x,isMobile:o,collapsed:d,setCollapsed:b,toggleCollapsed:C,collapseLocked:p,peeking:m,setPeeking:f,forceCollapsed:c,setForceCollapsed:u,routeRequestsCollapsed:i,setRouteRequestsCollapsed:l}),[n,a,x,o,d,b,C,p,m,f,c,u,i,l]);return(0,L.jsx)(w.Provider,{value:k,children:t})}r(j,"SidebarProvider");function I(){const t=(0,e.useContext)(w);if(!t)throw new Error("useSidebar must be used within SidebarProvider");return t}r(I,"useSidebar");export{I as n,j as t};
@@ -1 +1 @@
1
- var U=Object.defineProperty;var n=(e,r)=>U(e,"name",{value:r,configurable:!0});import{i as x}from"./rolldown-runtime-ZpX3ckPj.js";import{Fr as M,Lr as T,S as g,Xn as o,t as l}from"./createLucideIcon-eTR0JqwS.js";import{a as P,c as G,r as D}from"./agents-D79f8ubB.js";import{i as W,o as b,s as _}from"./EmptyState-DfjPe-d3.js";import{A as C,j as v,t as z}from"./button-BvVFpN4P.js";import{n as j}from"./clipboard-Bj5QAqRq.js";import{t as $}from"./loader-circle-AYbv_YhN.js";import{t as H}from"./octagon-alert-2PgnRbAG.js";var V=[["rect",{width:"20",height:"5",x:"2",y:"3",rx:"1",key:"1wp1u1"}],["path",{d:"M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8",key:"1s80jp"}],["path",{d:"M10 12h4",key:"a56b0p"}]],B=l("archive",V),F=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]],I=l("circle-x",F),Y=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 6v6l4 2",key:"mmk7yg"}]],L=l("clock",Y),A=[["path",{d:"M10.94 5.274A7 7 0 0 1 15.71 10h1.79a4.5 4.5 0 0 1 4.222 6.057",key:"1uxyv8"}],["path",{d:"M18.796 18.81A4.5 4.5 0 0 1 17.5 19H9A7 7 0 0 1 5.79 5.78",key:"99tcn7"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]],J=l("cloud-off",A),K=[["circle",{cx:"18",cy:"18",r:"3",key:"1xkwt0"}],["circle",{cx:"6",cy:"6",r:"3",key:"1lh9wr"}],["path",{d:"M6 21V9a9 9 0 0 0 9 9",key:"7kw0sc"}]],X=l("git-merge",K),Q=[["circle",{cx:"18",cy:"18",r:"3",key:"1xkwt0"}],["circle",{cx:"6",cy:"6",r:"3",key:"1lh9wr"}],["path",{d:"M13 6h3a2 2 0 0 1 2 2v7",key:"1yeb86"}],["line",{x1:"6",x2:"6",y1:"9",y2:"21",key:"rroup"}]],Z=l("git-pull-request",Q);function w(e={}){return{workspaceCommandId:e.workspaceCommandId??null,runtimeServiceId:e.runtimeServiceId??null,serviceIndex:e.serviceIndex??null}}n(w,"sanitizeWorkspaceRuntimeControlTarget");function ee(e,r){return r?`${e}${e.includes("?")?"&":"?"}companyId=${encodeURIComponent(r)}`:e}n(ee,"withCompanyScope");function i(e,r,t=""){return ee(`/projects/${encodeURIComponent(e)}${t}`,r)}n(i,"projectPath");var Ie={repositoryOptions:n(e=>o.get(`/companies/${e}/project-repositories`),"repositoryOptions"),setRepositories:n((e,r)=>o.put(i(e,void 0,"/repositories"),{repositoryIds:r}),"setRepositories"),list:n((e,r={})=>{const t=new URLSearchParams;r.includeArchived&&t.set("includeArchived","true");const a=t.toString();return o.get("/companies/"+encodeURIComponent(e)+"/projects"+(a?"?"+a:""))},"list"),get:n((e,r)=>o.get(i(e,r)),"get"),create:n((e,r)=>o.post(`/companies/${e}/projects`,r),"create"),update:n((e,r,t)=>o.patch(i(e,t),r),"update"),listWorkspaces:n((e,r)=>o.get(i(e,r,"/workspaces")),"listWorkspaces"),createWorkspace:n((e,r,t)=>o.post(i(e,t,"/workspaces"),r),"createWorkspace"),updateWorkspace:n((e,r,t,a)=>o.patch(i(e,a,`/workspaces/${encodeURIComponent(r)}`),t),"updateWorkspace"),controlWorkspaceRuntimeServices:n((e,r,t,a,s={})=>o.post(i(e,a,`/workspaces/${encodeURIComponent(r)}/runtime-services/${t}`),w(s)),"controlWorkspaceRuntimeServices"),controlWorkspaceCommands:n((e,r,t,a,s={})=>o.post(i(e,a,`/workspaces/${encodeURIComponent(r)}/runtime-commands/${t}`),w(s)),"controlWorkspaceCommands"),removeWorkspace:n((e,r,t)=>o.delete(i(e,t,`/workspaces/${encodeURIComponent(r)}`)),"removeWorkspace"),remove:n((e,r)=>o.delete(i(e,r)),"remove")};function Le(e){if(!e)return null;let r;try{r=new URL(e.trim())}catch{return null}if(r.protocol!=="http:"&&r.protocol!=="https:"||r.username||r.password)return null;const t=r.protocol==="https:"?"https":"http",a=r.pathname||"/";return`${t}://${r.host.toLowerCase()}${a}`}n(Le,"normalizeExternalObjectHref");var re=l("github",[["path",{d:"M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4",key:"tonef"}],["path",{d:"M9 18c-4.51 2-5-2-7-2",key:"9comsn"}]]),te={unknown:_,open:b,waiting:L,running:$,succeeded:v,failed:I,blocked:H,closed:C,archived:B,auth_required:j,unreachable:J},ne=_;function Se(e){return te[e]??ne}n(Se,"externalObjectIconForCategory");var ae={archive:B,check:v,"check-circle":v,circle:C,"circle-dot":b,clock:L,github:re,"git-merge":X,"git-pull-request":Z,key:j,loader:$,"x-circle":I};function Oe(e){return e?ae[e]??null:null}n(Oe,"externalObjectIconForKey");var oe={unknown:"Not yet resolved",open:"Open",waiting:"Waiting",running:"Running",succeeded:"Succeeded",failed:"Failed",blocked:"Blocked",closed:"Closed",archived:"Archived",auth_required:"Authorization required",unreachable:"Unreachable"};function ce(e){return oe[e]??e.replace(/_/g," ")}n(ce,"externalObjectCategoryLabel");var ie={unknown:"Not yet refreshed",fresh:"Fresh",stale:"Stale",auth_required:"Requires auth",unreachable:"Unreachable"};function se(e){return ie[e]??e.replace(/_/g," ")}n(se,"externalObjectLivenessLabel");function Re(e){const r=e.statusLabel?.trim();if(r)return r;const t=e.providerKey==="url"&&e.objectType==="link",a=!!(e.providerKey&&e.objectType);return e.statusCategory==="unknown"&&a&&!t?e.liveness==="fresh"?"Status unavailable":se(e.liveness):ce(e.statusCategory)}n(Re,"externalObjectDisplayStatusLabel");var S={muted:0,neutral:1,success:2,info:3,warning:4,danger:5};function le(e){return e?S[e]??0:0}n(le,"externalObjectToneSeverity");var ue={github:"GitHub",github_pull_request:"GitHub",github_issue:"GitHub",hubspot:"HubSpot",linear:"Linear",jira:"Jira",notion:"Notion",asana:"Asana"};function de(e){if(!e)return"External";const r=ue[e];return r||e.split(/[._-]/).map(t=>t.charAt(0).toUpperCase()+t.slice(1)).join(" ")}n(de,"externalObjectProviderLabel");var pe={pull_request:"pull request",issue:"issue",deployment:"deployment",workflow_run:"workflow run",ticket:"ticket",lead:"lead",url_link:"URL"};function fe(e){return e?pe[e]??e.replace(/_/g," "):"object"}n(fe,"externalObjectTypeLabel");function Ee(e,r,t){const a=t?.trim();return a||(e==="url"&&r==="link"?"URL":`${de(e)} ${fe(r)}`)}n(Ee,"externalObjectDisplayLabel");function me(e){if(!e)return null;const r=e.highestSeverity;return!r||le(r)<=S.muted?null:r}n(me,"dominantExternalObjectTone");function Ne(e){if(!e)return 0;const r=me(e);return r?e.objects.filter(t=>t.statusTone===r).length:0}n(Ne,"externalObjectDominantCount");var k=x(T(),1),O="(prefers-reduced-motion: reduce)";function he(){return typeof window>"u"||!window.matchMedia?!1:window.matchMedia(O).matches}n(he,"getInitialValue");function qe(){const[e,r]=(0,k.useState)(he);return(0,k.useEffect)(()=>{if(typeof window>"u"||!window.matchMedia)return;const t=window.matchMedia(O),a=n(s=>r(s.matches),"handler");return r(t.matches),t.addEventListener("change",a),()=>t.removeEventListener("change",a)},[]),e}n(qe,"usePrefersReducedMotion");var c=x(M(),1),ve=["backlog","todo","in_progress","in_review","done","cancelled","blocked"];function f(e){return e.replace(/_/g," ").replace(/\b\w/g,r=>r.toUpperCase())}n(f,"statusLabel");function ke(e){if(!e||e.state==="none")return"Blocked";if(e.reason==="active_child"){const r=e.coveredBlockerCount;return r===1&&e.sampleBlockerIdentifier?`Blocked · waiting on active sub-task ${e.sampleBlockerIdentifier}`:r===1?"Blocked · waiting on 1 active sub-task":`Blocked · waiting on ${r} active sub-tasks`}if(e.reason==="active_dependency"){const r=e.coveredBlockerCount;return r===1&&e.sampleBlockerIdentifier?`Blocked · covered by active dependency ${e.sampleBlockerIdentifier}`:r===1?"Blocked · covered by 1 active dependency":`Blocked · covered by ${r} active dependencies`}if(e.reason==="stalled_review"){const r=e.stalledBlockerCount,t=e.sampleStalledBlockerIdentifier??e.sampleBlockerIdentifier;return r===1&&t?`Blocked · review stalled on ${t}`:r===1?"Blocked · review stalled with no clear next step":`Blocked · ${r} reviews stalled with no clear next step`}if(e.reason==="attention_required"){const r=e.attentionBlockerCount||e.unresolvedBlockerCount,t=`${r} ${r===1?"blocker needs":"blockers need"} attention`,a=e.coveredBlockerCount;return a>0?`Blocked · ${t}; ${a} covered by active work`:`Blocked · ${t}`}return"Blocked"}n(ke,"blockedAttentionLabel");function ye({status:e,externalConversationState:r,blockerAttention:t,onChange:a,className:s,showLabel:m,size:R="md"}){const[E,y]=(0,k.useState)(!1),d=e==="in_review"&&r==="waiting"?"idle":e,N=e==="blocked"&&t?.state==="covered",h=e==="blocked"?ke(t):f(d),p=(0,c.jsx)(W,{status:N?"in_queue":d,size:R,className:g(a&&!m&&"cursor-pointer",s),title:h});if(!a)return m?(0,c.jsxs)("span",{className:"inline-flex items-center gap-1.5",children:[p,(0,c.jsx)("span",{className:"text-sm",children:f(d)})]}):p;const q=m?(0,c.jsxs)("button",{type:"button","aria-label":`Change status (current: ${h})`,className:"inline-flex min-h-5 items-center gap-1.5 cursor-pointer hover:bg-accent/50 rounded px-1 -mx-1 py-0.5 transition-colors",children:[p,(0,c.jsx)("span",{className:"text-sm",children:f(d)})]}):(0,c.jsx)("button",{type:"button","data-slot":"icon-button","aria-label":`Change status (current: ${h})`,className:"inline-flex cursor-pointer items-center justify-center rounded-sm focus-visible:outline-none focus-visible:ring-(length:--rad-3) focus-visible:ring-ring",children:p});return(0,c.jsxs)(D,{open:E,onOpenChange:y,children:[(0,c.jsx)(G,{asChild:!0,children:q}),(0,c.jsx)(P,{className:"w-40 p-1",align:"start",children:ve.map(u=>(0,c.jsxs)(z,{variant:"ghost",size:"sm",className:g("w-full justify-start gap-2 text-xs",u===e&&"bg-accent"),onClick:n(()=>{a(u),y(!1)},"onClick"),children:[(0,c.jsx)(ye,{status:u,size:"lg"}),f(u)]},u))})]})}n(ye,"StatusIcon");export{w as _,Ee as a,I as b,Se as c,de as d,le as f,Ie as g,Le as h,ce as i,Oe as l,re as m,qe as n,Re as o,fe as p,me as r,Ne as s,ye as t,se as u,Z as v,B as x,L as y};
1
+ var U=Object.defineProperty;var n=(e,r)=>U(e,"name",{value:r,configurable:!0});import{i as x}from"./rolldown-runtime-ZpX3ckPj.js";import{Fr as M,Lr as T,S as g,Xn as o,t as l}from"./createLucideIcon-r3v6fbGz.js";import{a as P,c as G,r as D}from"./agents-BlSzFh-1.js";import{i as W,o as b,s as _}from"./EmptyState-DPcc0zYh.js";import{A as C,j as v,t as z}from"./button-CAPbz11u.js";import{n as j}from"./clipboard-CYJ5Q78m.js";import{t as $}from"./loader-circle-BD9wx-lw.js";import{t as H}from"./octagon-alert-rGMwyrWA.js";var V=[["rect",{width:"20",height:"5",x:"2",y:"3",rx:"1",key:"1wp1u1"}],["path",{d:"M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8",key:"1s80jp"}],["path",{d:"M10 12h4",key:"a56b0p"}]],B=l("archive",V),F=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]],I=l("circle-x",F),Y=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 6v6l4 2",key:"mmk7yg"}]],L=l("clock",Y),A=[["path",{d:"M10.94 5.274A7 7 0 0 1 15.71 10h1.79a4.5 4.5 0 0 1 4.222 6.057",key:"1uxyv8"}],["path",{d:"M18.796 18.81A4.5 4.5 0 0 1 17.5 19H9A7 7 0 0 1 5.79 5.78",key:"99tcn7"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]],J=l("cloud-off",A),K=[["circle",{cx:"18",cy:"18",r:"3",key:"1xkwt0"}],["circle",{cx:"6",cy:"6",r:"3",key:"1lh9wr"}],["path",{d:"M6 21V9a9 9 0 0 0 9 9",key:"7kw0sc"}]],X=l("git-merge",K),Q=[["circle",{cx:"18",cy:"18",r:"3",key:"1xkwt0"}],["circle",{cx:"6",cy:"6",r:"3",key:"1lh9wr"}],["path",{d:"M13 6h3a2 2 0 0 1 2 2v7",key:"1yeb86"}],["line",{x1:"6",x2:"6",y1:"9",y2:"21",key:"rroup"}]],Z=l("git-pull-request",Q);function w(e={}){return{workspaceCommandId:e.workspaceCommandId??null,runtimeServiceId:e.runtimeServiceId??null,serviceIndex:e.serviceIndex??null}}n(w,"sanitizeWorkspaceRuntimeControlTarget");function ee(e,r){return r?`${e}${e.includes("?")?"&":"?"}companyId=${encodeURIComponent(r)}`:e}n(ee,"withCompanyScope");function i(e,r,t=""){return ee(`/projects/${encodeURIComponent(e)}${t}`,r)}n(i,"projectPath");var Ie={repositoryOptions:n(e=>o.get(`/companies/${e}/project-repositories`),"repositoryOptions"),setRepositories:n((e,r)=>o.put(i(e,void 0,"/repositories"),{repositoryIds:r}),"setRepositories"),list:n((e,r={})=>{const t=new URLSearchParams;r.includeArchived&&t.set("includeArchived","true");const a=t.toString();return o.get("/companies/"+encodeURIComponent(e)+"/projects"+(a?"?"+a:""))},"list"),get:n((e,r)=>o.get(i(e,r)),"get"),create:n((e,r)=>o.post(`/companies/${e}/projects`,r),"create"),update:n((e,r,t)=>o.patch(i(e,t),r),"update"),listWorkspaces:n((e,r)=>o.get(i(e,r,"/workspaces")),"listWorkspaces"),createWorkspace:n((e,r,t)=>o.post(i(e,t,"/workspaces"),r),"createWorkspace"),updateWorkspace:n((e,r,t,a)=>o.patch(i(e,a,`/workspaces/${encodeURIComponent(r)}`),t),"updateWorkspace"),controlWorkspaceRuntimeServices:n((e,r,t,a,s={})=>o.post(i(e,a,`/workspaces/${encodeURIComponent(r)}/runtime-services/${t}`),w(s)),"controlWorkspaceRuntimeServices"),controlWorkspaceCommands:n((e,r,t,a,s={})=>o.post(i(e,a,`/workspaces/${encodeURIComponent(r)}/runtime-commands/${t}`),w(s)),"controlWorkspaceCommands"),removeWorkspace:n((e,r,t)=>o.delete(i(e,t,`/workspaces/${encodeURIComponent(r)}`)),"removeWorkspace"),remove:n((e,r)=>o.delete(i(e,r)),"remove")};function Le(e){if(!e)return null;let r;try{r=new URL(e.trim())}catch{return null}if(r.protocol!=="http:"&&r.protocol!=="https:"||r.username||r.password)return null;const t=r.protocol==="https:"?"https":"http",a=r.pathname||"/";return`${t}://${r.host.toLowerCase()}${a}`}n(Le,"normalizeExternalObjectHref");var re=l("github",[["path",{d:"M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4",key:"tonef"}],["path",{d:"M9 18c-4.51 2-5-2-7-2",key:"9comsn"}]]),te={unknown:_,open:b,waiting:L,running:$,succeeded:v,failed:I,blocked:H,closed:C,archived:B,auth_required:j,unreachable:J},ne=_;function Se(e){return te[e]??ne}n(Se,"externalObjectIconForCategory");var ae={archive:B,check:v,"check-circle":v,circle:C,"circle-dot":b,clock:L,github:re,"git-merge":X,"git-pull-request":Z,key:j,loader:$,"x-circle":I};function Oe(e){return e?ae[e]??null:null}n(Oe,"externalObjectIconForKey");var oe={unknown:"Not yet resolved",open:"Open",waiting:"Waiting",running:"Running",succeeded:"Succeeded",failed:"Failed",blocked:"Blocked",closed:"Closed",archived:"Archived",auth_required:"Authorization required",unreachable:"Unreachable"};function ce(e){return oe[e]??e.replace(/_/g," ")}n(ce,"externalObjectCategoryLabel");var ie={unknown:"Not yet refreshed",fresh:"Fresh",stale:"Stale",auth_required:"Requires auth",unreachable:"Unreachable"};function se(e){return ie[e]??e.replace(/_/g," ")}n(se,"externalObjectLivenessLabel");function Re(e){const r=e.statusLabel?.trim();if(r)return r;const t=e.providerKey==="url"&&e.objectType==="link",a=!!(e.providerKey&&e.objectType);return e.statusCategory==="unknown"&&a&&!t?e.liveness==="fresh"?"Status unavailable":se(e.liveness):ce(e.statusCategory)}n(Re,"externalObjectDisplayStatusLabel");var S={muted:0,neutral:1,success:2,info:3,warning:4,danger:5};function le(e){return e?S[e]??0:0}n(le,"externalObjectToneSeverity");var ue={github:"GitHub",github_pull_request:"GitHub",github_issue:"GitHub",hubspot:"HubSpot",linear:"Linear",jira:"Jira",notion:"Notion",asana:"Asana"};function de(e){if(!e)return"External";const r=ue[e];return r||e.split(/[._-]/).map(t=>t.charAt(0).toUpperCase()+t.slice(1)).join(" ")}n(de,"externalObjectProviderLabel");var pe={pull_request:"pull request",issue:"issue",deployment:"deployment",workflow_run:"workflow run",ticket:"ticket",lead:"lead",url_link:"URL"};function fe(e){return e?pe[e]??e.replace(/_/g," "):"object"}n(fe,"externalObjectTypeLabel");function Ee(e,r,t){const a=t?.trim();return a||(e==="url"&&r==="link"?"URL":`${de(e)} ${fe(r)}`)}n(Ee,"externalObjectDisplayLabel");function me(e){if(!e)return null;const r=e.highestSeverity;return!r||le(r)<=S.muted?null:r}n(me,"dominantExternalObjectTone");function Ne(e){if(!e)return 0;const r=me(e);return r?e.objects.filter(t=>t.statusTone===r).length:0}n(Ne,"externalObjectDominantCount");var k=x(T(),1),O="(prefers-reduced-motion: reduce)";function he(){return typeof window>"u"||!window.matchMedia?!1:window.matchMedia(O).matches}n(he,"getInitialValue");function qe(){const[e,r]=(0,k.useState)(he);return(0,k.useEffect)(()=>{if(typeof window>"u"||!window.matchMedia)return;const t=window.matchMedia(O),a=n(s=>r(s.matches),"handler");return r(t.matches),t.addEventListener("change",a),()=>t.removeEventListener("change",a)},[]),e}n(qe,"usePrefersReducedMotion");var c=x(M(),1),ve=["backlog","todo","in_progress","in_review","done","cancelled","blocked"];function f(e){return e.replace(/_/g," ").replace(/\b\w/g,r=>r.toUpperCase())}n(f,"statusLabel");function ke(e){if(!e||e.state==="none")return"Blocked";if(e.reason==="active_child"){const r=e.coveredBlockerCount;return r===1&&e.sampleBlockerIdentifier?`Blocked · waiting on active sub-task ${e.sampleBlockerIdentifier}`:r===1?"Blocked · waiting on 1 active sub-task":`Blocked · waiting on ${r} active sub-tasks`}if(e.reason==="active_dependency"){const r=e.coveredBlockerCount;return r===1&&e.sampleBlockerIdentifier?`Blocked · covered by active dependency ${e.sampleBlockerIdentifier}`:r===1?"Blocked · covered by 1 active dependency":`Blocked · covered by ${r} active dependencies`}if(e.reason==="stalled_review"){const r=e.stalledBlockerCount,t=e.sampleStalledBlockerIdentifier??e.sampleBlockerIdentifier;return r===1&&t?`Blocked · review stalled on ${t}`:r===1?"Blocked · review stalled with no clear next step":`Blocked · ${r} reviews stalled with no clear next step`}if(e.reason==="attention_required"){const r=e.attentionBlockerCount||e.unresolvedBlockerCount,t=`${r} ${r===1?"blocker needs":"blockers need"} attention`,a=e.coveredBlockerCount;return a>0?`Blocked · ${t}; ${a} covered by active work`:`Blocked · ${t}`}return"Blocked"}n(ke,"blockedAttentionLabel");function ye({status:e,externalConversationState:r,blockerAttention:t,onChange:a,className:s,showLabel:m,size:R="md"}){const[E,y]=(0,k.useState)(!1),d=e==="in_review"&&r==="waiting"?"idle":e,N=e==="blocked"&&t?.state==="covered",h=e==="blocked"?ke(t):f(d),p=(0,c.jsx)(W,{status:N?"in_queue":d,size:R,className:g(a&&!m&&"cursor-pointer",s),title:h});if(!a)return m?(0,c.jsxs)("span",{className:"inline-flex items-center gap-1.5",children:[p,(0,c.jsx)("span",{className:"text-sm",children:f(d)})]}):p;const q=m?(0,c.jsxs)("button",{type:"button","aria-label":`Change status (current: ${h})`,className:"inline-flex min-h-5 items-center gap-1.5 cursor-pointer hover:bg-accent/50 rounded px-1 -mx-1 py-0.5 transition-colors",children:[p,(0,c.jsx)("span",{className:"text-sm",children:f(d)})]}):(0,c.jsx)("button",{type:"button","data-slot":"icon-button","aria-label":`Change status (current: ${h})`,className:"inline-flex cursor-pointer items-center justify-center rounded-sm focus-visible:outline-none focus-visible:ring-(length:--rad-3) focus-visible:ring-ring",children:p});return(0,c.jsxs)(D,{open:E,onOpenChange:y,children:[(0,c.jsx)(G,{asChild:!0,children:q}),(0,c.jsx)(P,{className:"w-40 p-1",align:"start",children:ve.map(u=>(0,c.jsxs)(z,{variant:"ghost",size:"sm",className:g("w-full justify-start gap-2 text-xs",u===e&&"bg-accent"),onClick:n(()=>{a(u),y(!1)},"onClick"),children:[(0,c.jsx)(ye,{status:u,size:"lg"}),f(u)]},u))})]})}n(ye,"StatusIcon");export{w as _,Ee as a,I as b,Se as c,de as d,le as f,Ie as g,Le as h,ce as i,Oe as l,re as m,qe as n,Re as o,fe as p,me as r,Ne as s,ye as t,se as u,Z as v,B as x,L as y};
@@ -1 +1 @@
1
- var m=Object.defineProperty;var o=(e,t)=>m(e,"name",{value:t,configurable:!0});import{i as l}from"./rolldown-runtime-ZpX3ckPj.js";import{Fr as g,Ht as u,Lr as f,S as d,Vt as C,Xn as s,Yn as v,t as h}from"./createLucideIcon-eTR0JqwS.js";import{B as $,F as I,H as R,L as k,V as U}from"./zap-B3DNfTNV.js";var _=l(f(),1),i=l(g(),1);function T({...e}){return(0,i.jsx)(U,{"data-slot":"popover",...e})}o(T,"Popover");function x({...e}){return(0,i.jsx)(R,{"data-slot":"popover-trigger",...e})}o(x,"PopoverTrigger");function P({className:e,align:t="center",sideOffset:n=4,disablePortal:r=!1,...p}){const c=(0,i.jsx)(k,{"data-slot":"popover-content",align:t,sideOffset:n,className:d("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-72 origin-(--radix-popover-content-transform-origin) rounded-md border p-4 shadow-md outline-hidden",e),...p});return r?c:(0,i.jsx)($,{children:c})}o(P,"PopoverContent");function j({...e}){return(0,i.jsx)(I,{"data-slot":"popover-anchor",...e})}o(j,"PopoverAnchor");function E({className:e,...t}){return(0,i.jsx)("div",{"data-slot":"popover-title",className:d("font-medium",e),...t})}o(E,"PopoverTitle");function F({className:e,...t}){return(0,i.jsx)("p",{"data-slot":"popover-description",className:d("text-muted-foreground",e),...t})}o(F,"PopoverDescription");var y=[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]],K=h("folder",y);function w(e,t){return t?`${e}${e.includes("?")?"&":"?"}companyId=${encodeURIComponent(t)}`:e}o(w,"withCompanyScope");function a(e,t,n=""){return w(`/agents/${encodeURIComponent(e)}${n}`,t)}o(a,"agentPath");var z={list:o(e=>s.get(`/companies/${e}/agents`),"list"),org:o(e=>s.get(`/companies/${e}/org`),"org"),listConfigurations:o(e=>s.get(`/companies/${e}/agent-configurations`),"listConfigurations"),get:o(async(e,t)=>{try{return await s.get(a(e,t))}catch(n){if(!(n instanceof v)||n.status!==409||!t||C(e))throw n;const r=u(e);if(!r)throw n;const p=(await s.get(`/companies/${t}/agents`)).filter(c=>c.status!=="terminated"&&u(c.urlKey)===r);if(p.length!==1)throw n;return s.get(a(p[0].id,t))}},"get"),getConfiguration:o((e,t)=>s.get(a(e,t,"/configuration")),"getConfiguration"),listConfigRevisions:o((e,t)=>s.get(a(e,t,"/config-revisions")),"listConfigRevisions"),getConfigRevision:o((e,t,n)=>s.get(a(e,n,`/config-revisions/${t}`)),"getConfigRevision"),rollbackConfigRevision:o((e,t,n)=>s.post(a(e,n,`/config-revisions/${t}/rollback`),{}),"rollbackConfigRevision"),create:o((e,t)=>s.post(`/companies/${e}/agents`,t),"create"),hire:o((e,t)=>s.post(`/companies/${e}/agent-hires`,t),"hire"),update:o((e,t,n)=>s.patch(a(e,n),t),"update"),updatePermissions:o((e,t,n)=>s.patch(a(e,n,"/permissions"),t),"updatePermissions"),batchAdapterConfigPreview:o(e=>s.post("/agents/batch/adapter-config/preview",{agentIds:e}),"batchAdapterConfigPreview"),batchAdapterConfig:o((e,t)=>s.post("/agents/batch/adapter-config",{agentIds:e,values:t}),"batchAdapterConfig"),instructionsBundle:o((e,t)=>s.get(a(e,t,"/instructions-bundle")),"instructionsBundle"),updateInstructionsBundle:o((e,t,n)=>s.patch(a(e,n,"/instructions-bundle"),t),"updateInstructionsBundle"),instructionsFile:o((e,t,n)=>s.get(a(e,n,`/instructions-bundle/file?path=${encodeURIComponent(t)}`)),"instructionsFile"),saveInstructionsFile:o((e,t,n)=>s.put(a(e,n,"/instructions-bundle/file"),t),"saveInstructionsFile"),deleteInstructionsFile:o((e,t,n)=>s.delete(a(e,n,`/instructions-bundle/file?path=${encodeURIComponent(t)}`)),"deleteInstructionsFile"),pause:o((e,t)=>s.post(a(e,t,"/pause"),{}),"pause"),resume:o((e,t)=>s.post(a(e,t,"/resume"),{}),"resume"),clearError:o((e,t)=>s.post(a(e,t,"/clear-error"),{}),"clearError"),approve:o((e,t)=>s.post(a(e,t,"/approve"),{}),"approve"),terminate:o((e,t)=>s.post(a(e,t,"/terminate"),{}),"terminate"),remove:o((e,t)=>s.delete(a(e,t)),"remove"),listKeys:o((e,t)=>s.get(a(e,t,"/keys")),"listKeys"),skills:o((e,t)=>s.get(a(e,t,"/skills")),"skills"),syncSkills:o((e,t,n,r)=>s.post(a(e,r,"/skills/sync"),{desiredSkills:t,mode:n}),"syncSkills"),createKey:o((e,t,n,r)=>s.post(a(e,n,"/keys"),{name:t,...r?{scope:r}:{}}),"createKey"),revokeKey:o((e,t,n)=>s.delete(a(e,n,`/keys/${encodeURIComponent(t)}`)),"revokeKey"),runtimeState:o((e,t)=>s.get(a(e,t,"/runtime-state")),"runtimeState"),taskSessions:o((e,t)=>s.get(a(e,t,"/task-sessions")),"taskSessions"),resetSession:o((e,t,n)=>s.post(a(e,n,"/runtime-state/reset-session"),{taskKey:t??null}),"resetSession"),adapterModels:o((e,t,n)=>{const r=new URLSearchParams;n?.refresh&&r.set("refresh","1"),n?.provider&&r.set("provider",n.provider),n?.environmentId&&r.set("environmentId",n.environmentId);const p=r.size>0?`?${r.toString()}`:"";return s.get(`/companies/${encodeURIComponent(e)}/adapters/${encodeURIComponent(t)}/models${p}`)},"adapterModels"),detectModel:o((e,t)=>s.get(`/companies/${encodeURIComponent(e)}/adapters/${encodeURIComponent(t)}/detect-model`),"detectModel"),testEnvironment:o((e,t,n)=>s.post(`/companies/${e}/adapters/${t}/test-environment`,n),"testEnvironment"),getAdapterAuthSignal:o((e,t,n)=>{const r=n?`?environmentId=${encodeURIComponent(n)}`:"";return s.get(`/companies/${encodeURIComponent(e)}/adapters/${encodeURIComponent(t)}/auth-signal${r}`)},"getAdapterAuthSignal"),invoke:o((e,t,n={})=>s.post(a(e,t,"/heartbeat/invoke"),n),"invoke"),wakeup:o((e,t,n)=>s.post(a(e,n,"/wakeup"),t),"wakeup"),retryFailedRun:o(async(e,t,n)=>{const r=await s.post(a(e,n,"/wakeup"),{source:"on_demand",triggerDetail:"manual",reason:"retry_failed_run",failedRunId:t});if("id"in r){if(["failed","timed_out","cancelled","interrupted"].includes(r.status))throw new Error("The previous retry has already stopped. Refresh the task and retry its latest failed run.");return{runId:r.id,issueId:null}}if("actionId"in r){if(r.status==="failed"||r.status==="cancelled")throw new Error("This retry could not start. Open the task to review its current access and recovery state.");return{runId:r.runId,issueId:r.issueId}}throw new Error(r.message??"Retry was skipped.")},"retryFailedRun"),loginWithClaude:o((e,t)=>s.post(a(e,t,"/claude-login"),{}),"loginWithClaude"),startAdapterAuthLogin:o((e,t,n)=>s.post(`/companies/${encodeURIComponent(e)}/adapters/${encodeURIComponent(t)}/login-sessions`,n),"startAdapterAuthLogin"),getAdapterAuthLoginStatus:o((e,t,n)=>s.get(`/companies/${encodeURIComponent(e)}/adapters/${encodeURIComponent(t)}/login-sessions/${encodeURIComponent(n)}`,{cache:"no-store"}),"getAdapterAuthLoginStatus"),getActiveAdapterAuthLoginSession:o((e,t)=>s.get(`/companies/${encodeURIComponent(e)}/adapters/${encodeURIComponent(t)}/login-sessions/active`,{cache:"no-store"}),"getActiveAdapterAuthLoginSession"),cancelAdapterAuthLogin:o((e,t,n)=>s.post(`/companies/${encodeURIComponent(e)}/adapters/${encodeURIComponent(t)}/login-sessions/${encodeURIComponent(n)}/cancel`,{}),"cancelAdapterAuthLogin"),getClaudeOAuthTokenStatus:o(e=>s.get(`/companies/${encodeURIComponent(e)}/claude-oauth-token-status`),"getClaudeOAuthTokenStatus"),startClaudeSetupTokenLogin:o((e,t)=>s.post(`/companies/${encodeURIComponent(e)}/setup-token-login-sessions`,{adapterType:"claude_local",...t}),"startClaudeSetupTokenLogin"),getClaudeSetupTokenLoginStatus:o((e,t)=>s.get(`/companies/${encodeURIComponent(e)}/setup-token-login-sessions/${encodeURIComponent(t)}`),"getClaudeSetupTokenLoginStatus"),getActiveClaudeSetupTokenLoginSession:o(e=>s.get(`/companies/${encodeURIComponent(e)}/setup-token-login-sessions/active`,{cache:"no-store"}),"getActiveClaudeSetupTokenLoginSession"),getClaudeSetupTokenLoginPrompt:o((e,t)=>s.get(`/companies/${encodeURIComponent(e)}/setup-token-login-sessions/${encodeURIComponent(t)}/prompt`),"getClaudeSetupTokenLoginPrompt"),submitClaudeSetupTokenBrowserCode:o((e,t,n)=>s.post(`/companies/${encodeURIComponent(e)}/setup-token-login-sessions/${encodeURIComponent(t)}/code`,{browserCode:n}),"submitClaudeSetupTokenBrowserCode"),completeClaudeSetupTokenLogin:o((e,t)=>s.post(`/companies/${encodeURIComponent(e)}/setup-token-login-sessions/${encodeURIComponent(t)}/completion`,{}),"completeClaudeSetupTokenLogin"),cancelClaudeSetupTokenLogin:o((e,t)=>s.post(`/companies/${encodeURIComponent(e)}/setup-token-login-sessions/${encodeURIComponent(t)}/cancel`,{}),"cancelClaudeSetupTokenLogin"),availableSkills:o(()=>s.get("/skills/available"),"availableSkills")};export{P as a,x as c,j as i,K as n,F as o,T as r,E as s,z as t};
1
+ var m=Object.defineProperty;var o=(e,t)=>m(e,"name",{value:t,configurable:!0});import{i as l}from"./rolldown-runtime-ZpX3ckPj.js";import{Fr as g,Ht as u,Lr as f,S as d,Vt as C,Xn as s,Yn as v,t as h}from"./createLucideIcon-r3v6fbGz.js";import{B as $,F as I,H as R,L as k,V as U}from"./zap-P-cXfK28.js";var _=l(f(),1),i=l(g(),1);function T({...e}){return(0,i.jsx)(U,{"data-slot":"popover",...e})}o(T,"Popover");function x({...e}){return(0,i.jsx)(R,{"data-slot":"popover-trigger",...e})}o(x,"PopoverTrigger");function P({className:e,align:t="center",sideOffset:n=4,disablePortal:r=!1,...p}){const c=(0,i.jsx)(k,{"data-slot":"popover-content",align:t,sideOffset:n,className:d("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-72 origin-(--radix-popover-content-transform-origin) rounded-md border p-4 shadow-md outline-hidden",e),...p});return r?c:(0,i.jsx)($,{children:c})}o(P,"PopoverContent");function j({...e}){return(0,i.jsx)(I,{"data-slot":"popover-anchor",...e})}o(j,"PopoverAnchor");function E({className:e,...t}){return(0,i.jsx)("div",{"data-slot":"popover-title",className:d("font-medium",e),...t})}o(E,"PopoverTitle");function F({className:e,...t}){return(0,i.jsx)("p",{"data-slot":"popover-description",className:d("text-muted-foreground",e),...t})}o(F,"PopoverDescription");var y=[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]],K=h("folder",y);function w(e,t){return t?`${e}${e.includes("?")?"&":"?"}companyId=${encodeURIComponent(t)}`:e}o(w,"withCompanyScope");function a(e,t,n=""){return w(`/agents/${encodeURIComponent(e)}${n}`,t)}o(a,"agentPath");var z={list:o(e=>s.get(`/companies/${e}/agents`),"list"),org:o(e=>s.get(`/companies/${e}/org`),"org"),listConfigurations:o(e=>s.get(`/companies/${e}/agent-configurations`),"listConfigurations"),get:o(async(e,t)=>{try{return await s.get(a(e,t))}catch(n){if(!(n instanceof v)||n.status!==409||!t||C(e))throw n;const r=u(e);if(!r)throw n;const p=(await s.get(`/companies/${t}/agents`)).filter(c=>c.status!=="terminated"&&u(c.urlKey)===r);if(p.length!==1)throw n;return s.get(a(p[0].id,t))}},"get"),getConfiguration:o((e,t)=>s.get(a(e,t,"/configuration")),"getConfiguration"),listConfigRevisions:o((e,t)=>s.get(a(e,t,"/config-revisions")),"listConfigRevisions"),getConfigRevision:o((e,t,n)=>s.get(a(e,n,`/config-revisions/${t}`)),"getConfigRevision"),rollbackConfigRevision:o((e,t,n)=>s.post(a(e,n,`/config-revisions/${t}/rollback`),{}),"rollbackConfigRevision"),create:o((e,t)=>s.post(`/companies/${e}/agents`,t),"create"),hire:o((e,t)=>s.post(`/companies/${e}/agent-hires`,t),"hire"),update:o((e,t,n)=>s.patch(a(e,n),t),"update"),updatePermissions:o((e,t,n)=>s.patch(a(e,n,"/permissions"),t),"updatePermissions"),batchAdapterConfigPreview:o(e=>s.post("/agents/batch/adapter-config/preview",{agentIds:e}),"batchAdapterConfigPreview"),batchAdapterConfig:o((e,t)=>s.post("/agents/batch/adapter-config",{agentIds:e,values:t}),"batchAdapterConfig"),instructionsBundle:o((e,t)=>s.get(a(e,t,"/instructions-bundle")),"instructionsBundle"),updateInstructionsBundle:o((e,t,n)=>s.patch(a(e,n,"/instructions-bundle"),t),"updateInstructionsBundle"),instructionsFile:o((e,t,n)=>s.get(a(e,n,`/instructions-bundle/file?path=${encodeURIComponent(t)}`)),"instructionsFile"),saveInstructionsFile:o((e,t,n)=>s.put(a(e,n,"/instructions-bundle/file"),t),"saveInstructionsFile"),deleteInstructionsFile:o((e,t,n)=>s.delete(a(e,n,`/instructions-bundle/file?path=${encodeURIComponent(t)}`)),"deleteInstructionsFile"),pause:o((e,t)=>s.post(a(e,t,"/pause"),{}),"pause"),resume:o((e,t)=>s.post(a(e,t,"/resume"),{}),"resume"),clearError:o((e,t)=>s.post(a(e,t,"/clear-error"),{}),"clearError"),approve:o((e,t)=>s.post(a(e,t,"/approve"),{}),"approve"),terminate:o((e,t)=>s.post(a(e,t,"/terminate"),{}),"terminate"),remove:o((e,t)=>s.delete(a(e,t)),"remove"),listKeys:o((e,t)=>s.get(a(e,t,"/keys")),"listKeys"),skills:o((e,t)=>s.get(a(e,t,"/skills")),"skills"),syncSkills:o((e,t,n,r)=>s.post(a(e,r,"/skills/sync"),{desiredSkills:t,mode:n}),"syncSkills"),createKey:o((e,t,n,r)=>s.post(a(e,n,"/keys"),{name:t,...r?{scope:r}:{}}),"createKey"),revokeKey:o((e,t,n)=>s.delete(a(e,n,`/keys/${encodeURIComponent(t)}`)),"revokeKey"),runtimeState:o((e,t)=>s.get(a(e,t,"/runtime-state")),"runtimeState"),taskSessions:o((e,t)=>s.get(a(e,t,"/task-sessions")),"taskSessions"),resetSession:o((e,t,n)=>s.post(a(e,n,"/runtime-state/reset-session"),{taskKey:t??null}),"resetSession"),adapterModels:o((e,t,n)=>{const r=new URLSearchParams;n?.refresh&&r.set("refresh","1"),n?.provider&&r.set("provider",n.provider),n?.environmentId&&r.set("environmentId",n.environmentId);const p=r.size>0?`?${r.toString()}`:"";return s.get(`/companies/${encodeURIComponent(e)}/adapters/${encodeURIComponent(t)}/models${p}`)},"adapterModels"),detectModel:o((e,t)=>s.get(`/companies/${encodeURIComponent(e)}/adapters/${encodeURIComponent(t)}/detect-model`),"detectModel"),testEnvironment:o((e,t,n)=>s.post(`/companies/${e}/adapters/${t}/test-environment`,n),"testEnvironment"),getAdapterAuthSignal:o((e,t,n)=>{const r=n?`?environmentId=${encodeURIComponent(n)}`:"";return s.get(`/companies/${encodeURIComponent(e)}/adapters/${encodeURIComponent(t)}/auth-signal${r}`)},"getAdapterAuthSignal"),invoke:o((e,t,n={})=>s.post(a(e,t,"/heartbeat/invoke"),n),"invoke"),wakeup:o((e,t,n)=>s.post(a(e,n,"/wakeup"),t),"wakeup"),retryFailedRun:o(async(e,t,n)=>{const r=await s.post(a(e,n,"/wakeup"),{source:"on_demand",triggerDetail:"manual",reason:"retry_failed_run",failedRunId:t});if("id"in r){if(["failed","timed_out","cancelled","interrupted"].includes(r.status))throw new Error("The previous retry has already stopped. Refresh the task and retry its latest failed run.");return{runId:r.id,issueId:null}}if("actionId"in r){if(r.status==="failed"||r.status==="cancelled")throw new Error("This retry could not start. Open the task to review its current access and recovery state.");return{runId:r.runId,issueId:r.issueId}}throw new Error(r.message??"Retry was skipped.")},"retryFailedRun"),loginWithClaude:o((e,t)=>s.post(a(e,t,"/claude-login"),{}),"loginWithClaude"),startAdapterAuthLogin:o((e,t,n)=>s.post(`/companies/${encodeURIComponent(e)}/adapters/${encodeURIComponent(t)}/login-sessions`,n),"startAdapterAuthLogin"),getAdapterAuthLoginStatus:o((e,t,n)=>s.get(`/companies/${encodeURIComponent(e)}/adapters/${encodeURIComponent(t)}/login-sessions/${encodeURIComponent(n)}`,{cache:"no-store"}),"getAdapterAuthLoginStatus"),getActiveAdapterAuthLoginSession:o((e,t)=>s.get(`/companies/${encodeURIComponent(e)}/adapters/${encodeURIComponent(t)}/login-sessions/active`,{cache:"no-store"}),"getActiveAdapterAuthLoginSession"),cancelAdapterAuthLogin:o((e,t,n)=>s.post(`/companies/${encodeURIComponent(e)}/adapters/${encodeURIComponent(t)}/login-sessions/${encodeURIComponent(n)}/cancel`,{}),"cancelAdapterAuthLogin"),getClaudeOAuthTokenStatus:o(e=>s.get(`/companies/${encodeURIComponent(e)}/claude-oauth-token-status`),"getClaudeOAuthTokenStatus"),startClaudeSetupTokenLogin:o((e,t)=>s.post(`/companies/${encodeURIComponent(e)}/setup-token-login-sessions`,{adapterType:"claude_local",...t}),"startClaudeSetupTokenLogin"),getClaudeSetupTokenLoginStatus:o((e,t)=>s.get(`/companies/${encodeURIComponent(e)}/setup-token-login-sessions/${encodeURIComponent(t)}`),"getClaudeSetupTokenLoginStatus"),getActiveClaudeSetupTokenLoginSession:o(e=>s.get(`/companies/${encodeURIComponent(e)}/setup-token-login-sessions/active`,{cache:"no-store"}),"getActiveClaudeSetupTokenLoginSession"),getClaudeSetupTokenLoginPrompt:o((e,t)=>s.get(`/companies/${encodeURIComponent(e)}/setup-token-login-sessions/${encodeURIComponent(t)}/prompt`),"getClaudeSetupTokenLoginPrompt"),submitClaudeSetupTokenBrowserCode:o((e,t,n)=>s.post(`/companies/${encodeURIComponent(e)}/setup-token-login-sessions/${encodeURIComponent(t)}/code`,{browserCode:n}),"submitClaudeSetupTokenBrowserCode"),completeClaudeSetupTokenLogin:o((e,t)=>s.post(`/companies/${encodeURIComponent(e)}/setup-token-login-sessions/${encodeURIComponent(t)}/completion`,{}),"completeClaudeSetupTokenLogin"),cancelClaudeSetupTokenLogin:o((e,t)=>s.post(`/companies/${encodeURIComponent(e)}/setup-token-login-sessions/${encodeURIComponent(t)}/cancel`,{}),"cancelClaudeSetupTokenLogin"),availableSkills:o(()=>s.get("/skills/available"),"availableSkills")};export{P as a,x as c,j as i,K as n,F as o,T as r,E as s,z as t};
@@ -1 +1 @@
1
- var s=Object.defineProperty;var t=(e,r)=>s(e,"name",{value:r,configurable:!0});import{i as a}from"./rolldown-runtime-ZpX3ckPj.js";import{Fr as d,Lr as c,S as u,d as v}from"./createLucideIcon-eTR0JqwS.js";import{r as g}from"./button-BvVFpN4P.js";var h=a(c(),1),f=a(d(),1),l=g("inline-flex items-center justify-center rounded-full border border-transparent px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-(length:--rad-3) aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-(--tp-color-box-shadow) overflow-hidden",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline"}},defaultVariants:{variant:"default"}});function y({className:e,variant:r="default",asChild:i=!1,...o}){const n=i?v:"span";return(0,f.jsx)(n,{"data-slot":"badge","data-variant":r,className:u(l({variant:r}),e),...o})}t(y,"Badge");export{l as n,y as t};
1
+ var s=Object.defineProperty;var t=(e,r)=>s(e,"name",{value:r,configurable:!0});import{i as a}from"./rolldown-runtime-ZpX3ckPj.js";import{Fr as d,Lr as c,S as u,d as v}from"./createLucideIcon-r3v6fbGz.js";import{r as g}from"./button-CAPbz11u.js";var h=a(c(),1),f=a(d(),1),l=g("inline-flex items-center justify-center rounded-full border border-transparent px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-(length:--rad-3) aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-(--tp-color-box-shadow) overflow-hidden",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline"}},defaultVariants:{variant:"default"}});function y({className:e,variant:r="default",asChild:i=!1,...o}){const n=i?v:"span";return(0,f.jsx)(n,{"data-slot":"badge","data-variant":r,className:u(l({variant:r}),e),...o})}t(y,"Badge");export{l as n,y as t};
@@ -1 +1 @@
1
- import{t}from"./createLucideIcon-eTR0JqwS.js";var e=[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]],r=t("bot",e);export{r as t};
1
+ import{t}from"./createLucideIcon-r3v6fbGz.js";var e=[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]],r=t("bot",e);export{r as t};
@@ -1 +1 @@
1
- var w=Object.defineProperty;var l=(t,r)=>w(t,"name",{value:r,configurable:!0});import{i as y}from"./rolldown-runtime-ZpX3ckPj.js";import{Fr as E,Lr as D,S as B,V as C,d as S,t as c}from"./createLucideIcon-eTR0JqwS.js";var F=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m16 9-5.5 5.5L8 12",key:"xofnsj"}]],T=c("circle-check",F),V=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],M=c("circle",V),j=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]],P=c("plus",j),K={backlog:"text-muted-foreground border-muted-foreground",todo:"text-amber-600 border-amber-600 dark:text-amber-400 dark:border-amber-400",in_progress:"text-blue-600 border-blue-600 dark:text-blue-400 dark:border-blue-400",in_review:"text-violet-600 border-violet-600 dark:text-violet-400 dark:border-violet-400",done:"text-green-600 border-green-600 dark:text-green-400 dark:border-green-400",cancelled:"text-neutral-500 border-neutral-500",blocked:"text-red-600 border-red-600 dark:text-red-400 dark:border-red-400"},R="text-muted-foreground border-muted-foreground",U={backlog:"text-muted-foreground",todo:"text-amber-600 dark:text-amber-400",in_progress:"text-blue-600 dark:text-blue-400",in_review:"text-violet-600 dark:text-violet-400",done:"text-green-600 dark:text-green-400",cancelled:"text-neutral-500",blocked:"text-red-600 dark:text-red-400"},W="text-muted-foreground",i={gray:"bg-[#F5F3F0] text-[#52585D] border-[#A8AEB2] dark:bg-[#6e696024] dark:text-[#9A958A] dark:border-[#9e958a73]",blue:"bg-[#DBEAFE] text-[#1D4ED8] border-[#2563EB] dark:bg-[#2563eb2e] dark:text-[#2563EB] dark:border-[#2563eb73]",amber:"bg-[#FEF3C7] text-[#B45309] border-[#F59E0B] dark:bg-[#f59e0b24] dark:text-[#F59E0B] dark:border-[#f59e0b73]",green:"bg-[#DCFCE7] text-[#188A3C] border-[#22C55E] dark:bg-[#22c55e1f] dark:text-[#22C55E] dark:border-[#22c55e73]",violet:"bg-[#EDE9FE] text-[#5B21B6] border-[#7C3AED] dark:bg-[#7c3aed2e] dark:text-[#7C3AED] dark:border-[#7c3aed73]",red:"bg-[#FEE2E2] text-[#991B1B] border-[#DC2626] dark:bg-[#dc26262e] dark:text-[#DC2626] dark:border-[#dc262673]"},G={active:`border ${i.green}`,running:`border ${i.blue}`,scheduled_retry:"bg-sky-100 text-sky-700 dark:bg-sky-900/50 dark:text-sky-300",paused:`border ${i.amber}`,idle:`border ${i.gray}`,archived:"bg-muted text-muted-foreground",planned:"bg-muted text-muted-foreground",achieved:"bg-green-100 text-green-700 dark:bg-green-900/50 dark:text-green-300",completed:"bg-green-100 text-green-700 dark:bg-green-900/50 dark:text-green-300",failed:"bg-red-100 text-red-700 dark:bg-red-900/50 dark:text-red-300",timed_out:"bg-orange-100 text-orange-700 dark:bg-orange-900/50 dark:text-orange-300",succeeded:"bg-green-100 text-green-700 dark:bg-green-900/50 dark:text-green-300",ok:"bg-green-100 text-green-700 dark:bg-green-900/50 dark:text-green-300",warning:"bg-amber-100 text-amber-700 dark:bg-amber-900/50 dark:text-amber-300",error:"bg-red-100 text-red-700 dark:bg-red-900/50 dark:text-red-300",info:"bg-sky-100 text-sky-700 dark:bg-sky-900/50 dark:text-sky-300",terminated:"bg-red-100 text-red-700 dark:bg-red-900/50 dark:text-red-300",pending:"bg-yellow-100 text-yellow-700 dark:bg-yellow-900/50 dark:text-yellow-300",queued:"bg-yellow-100 text-yellow-700 dark:bg-yellow-900/50 dark:text-yellow-300",pending_approval:"bg-amber-100 text-amber-700 dark:bg-amber-900/50 dark:text-amber-300",revision_requested:"bg-amber-100 text-amber-700 dark:bg-amber-900/50 dark:text-amber-300",approved:"bg-green-100 text-green-700 dark:bg-green-900/50 dark:text-green-300",rejected:"bg-red-100 text-red-700 dark:bg-red-900/50 dark:text-red-300",draft:"bg-muted text-muted-foreground",backlog:"bg-muted text-muted-foreground",todo:"bg-amber-100 text-amber-700 dark:bg-amber-900/50 dark:text-amber-300",in_progress:"bg-blue-100 text-blue-700 dark:bg-blue-900/50 dark:text-blue-300",in_review:"bg-violet-100 text-violet-700 dark:bg-violet-900/50 dark:text-violet-300",blocked:"bg-red-100 text-red-700 dark:bg-red-900/50 dark:text-red-300",done:"bg-green-100 text-green-700 dark:bg-green-900/50 dark:text-green-300",cancelled:"bg-muted text-muted-foreground",allowed:"bg-green-100 text-green-700 dark:bg-green-900/50 dark:text-green-300",denied:"bg-red-100 text-red-700 dark:bg-red-900/50 dark:text-red-300",block:"bg-red-100 text-red-700 dark:bg-red-900/50 dark:text-red-300","require-approval":"bg-amber-100 text-amber-700 dark:bg-amber-900/50 dark:text-amber-300",redacted:"bg-violet-100 text-violet-700 dark:bg-violet-900/50 dark:text-violet-300","rate-limit":"bg-orange-100 text-orange-700 dark:bg-orange-900/50 dark:text-orange-300",deferred:"bg-sky-100 text-sky-700 dark:bg-sky-900/50 dark:text-sky-300",hidden:"bg-muted text-muted-foreground",quarantined:"bg-red-100 text-red-700 dark:bg-red-900/50 dark:text-red-300","runtime-error":"bg-red-100 text-red-700 dark:bg-red-900/50 dark:text-red-300",healthy:"bg-green-100 text-green-700 dark:bg-green-900/50 dark:text-green-300",degraded:"bg-amber-100 text-amber-700 dark:bg-amber-900/50 dark:text-amber-300",unchecked:"bg-muted text-muted-foreground"},H="bg-muted text-muted-foreground",J="text-[#1D4ED8] dark:text-[#2563EB]",Q="bg-blue-500/10 border-blue-500/30 text-blue-600 dark:text-blue-400",X={info:"border-[#2563EB]/40 bg-[#DBEAFE]/50 text-[#1D4ED8] dark:border-[#2563eb59] dark:bg-[#2563eb14] dark:text-[#93C5FD]",warning:"border-[#F59E0B]/50 bg-[#FEF3C7]/60 text-[#B45309] dark:border-[#f59e0b59] dark:bg-[#f59e0b12] dark:text-[#F59E0B]",danger:"border-destructive/40 bg-red-100 text-red-700 dark:bg-red-900/50 dark:text-red-300"},Y={idle:"--status-agent-idle",active:"--status-agent-idle",running:"--status-agent-running",paused:"--status-agent-paused",error:"--status-agent-error"},Z="--status-agent-idle",ee={idle:"--status-task-backlog",backlog:"--status-task-backlog",todo:"--status-task-todo",in_progress:"--status-task-in_progress",in_review:"--status-task-in_review",done:"--status-task-done",blocked:"--status-task-blocked",cancelled:"--status-task-cancelled"},re="--status-task-backlog",te={idle:"--status-task-icon-backlog",backlog:"--status-task-icon-backlog",todo:"--status-task-icon-todo",in_progress:"--status-task-icon-in_progress",in_review:"--status-task-icon-in_review",done:"--status-task-icon-done",blocked:"--status-task-icon-blocked",cancelled:"--status-task-icon-cancelled",in_queue:"--status-task-icon-in_queue"},ae="--status-task-icon-backlog",de={running:"bg-blue-400 animate-pulse",active:"bg-green-400",paused:"bg-yellow-400",idle:"bg-yellow-400",pending_approval:"bg-amber-400",error:"bg-red-400",archived:"bg-neutral-400"},oe="bg-neutral-400",ne={critical:"text-red-600 dark:text-red-400",high:"text-orange-600 dark:text-orange-400",medium:"text-yellow-600 dark:text-yellow-400",low:"text-blue-600 dark:text-blue-400"},be="text-yellow-600 dark:text-yellow-400",se={unknown:"text-muted-foreground border-muted-foreground",open:"text-blue-600 border-blue-600 dark:text-blue-400 dark:border-blue-400",waiting:"text-amber-600 border-amber-600 dark:text-amber-400 dark:border-amber-400",running:"text-blue-600 border-blue-600 dark:text-blue-400 dark:border-blue-400",succeeded:"text-green-600 border-green-600 dark:text-green-400 dark:border-green-400",merged:"text-violet-600 border-violet-600 dark:text-violet-400 dark:border-violet-400",failed:"text-red-600 border-red-600 dark:text-red-400 dark:border-red-400",blocked:"text-red-600 border-red-600 dark:text-red-400 dark:border-red-400",closed:"text-neutral-500 border-neutral-500",archived:"text-neutral-500 border-neutral-500",auth_required:"text-amber-600 border-amber-600 dark:text-amber-400 dark:border-amber-400",unreachable:"text-red-600 border-red-600 dark:text-red-400 dark:border-red-400"},ge="text-muted-foreground border-muted-foreground",ue={unknown:"bg-muted text-muted-foreground",open:"bg-blue-100 text-blue-700 dark:bg-blue-900/50 dark:text-blue-300",waiting:"bg-amber-100 text-amber-700 dark:bg-amber-900/50 dark:text-amber-300",running:"bg-blue-100 text-blue-700 dark:bg-blue-900/50 dark:text-blue-300",succeeded:"bg-green-100 text-green-700 dark:bg-green-900/50 dark:text-green-300",failed:"bg-red-100 text-red-700 dark:bg-red-900/50 dark:text-red-300",blocked:"bg-red-100 text-red-700 dark:bg-red-900/50 dark:text-red-300",closed:"bg-muted text-muted-foreground",archived:"bg-muted text-muted-foreground",auth_required:"bg-amber-100 text-amber-700 dark:bg-amber-900/50 dark:text-amber-300",unreachable:"bg-red-100 text-red-700 dark:bg-red-900/50 dark:text-red-300"},le="bg-muted text-muted-foreground",ie={unknown:"",fresh:"",stale:"opacity-70 [border-style:dashed]",auth_required:"[border-style:dashed]",unreachable:"[border-style:dashed]"},z=y(D(),1),m=l(t=>typeof t=="boolean"?`${t}`:t===0?"0":t,"falsyToString"),f=C,A=l((t,r)=>e=>{var o;if(r?.variants==null)return f(t,e?.class,e?.className);const{variants:g,defaultVariants:d}=r,k=Object.keys(g).map(a=>{const n=e?.[a],s=d?.[a];if(n===null)return null;const b=m(n)||m(s);return g[a][b]}),u=e&&Object.entries(e).reduce((a,n)=>{let[s,b]=n;return b===void 0||(a[s]=b),a},{}),h=r==null||(o=r.compoundVariants)===null||o===void 0?void 0:o.reduce((a,n)=>{let{class:s,className:b,...p}=n;return Object.entries(p).every(_=>{let[v,x]=_;return Array.isArray(x)?x.includes({...d,...u}[v]):{...d,...u}[v]===x})?[...a,s,b]:a},[]);return f(t,k,h,e?.class,e?.className)},"cva"),q=y(E(),1),N=A("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-(--tp-color-background-color-border-color-box-shadow-opacity) disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-(length:--rad-3) aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",cta:"bg-foreground text-background hover:bg-foreground/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-10 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-9 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-10","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-9","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}}),O=z.forwardRef(l(function({className:r,variant:e="default",size:o="default",asChild:g=!1,...d},k){const u=g?S:"button";return(0,q.jsx)(u,{ref:k,"data-slot":"button","data-variant":e,"data-size":o,className:B(N({variant:e,size:o,className:r})),...d})},"Button"));O.displayName="Button";export{M as A,G as C,ee as D,ae as E,re as O,J as S,te as T,U as _,oe as a,ne as b,X as c,ue as d,le as f,R as g,K as h,de as i,T as j,P as k,i as l,ge as m,N as n,Y as o,se as p,A as r,Z as s,O as t,ie as u,W as v,H as w,be as x,Q as y};
1
+ var w=Object.defineProperty;var l=(t,r)=>w(t,"name",{value:r,configurable:!0});import{i as y}from"./rolldown-runtime-ZpX3ckPj.js";import{Fr as E,Lr as D,S as B,V as C,d as S,t as c}from"./createLucideIcon-r3v6fbGz.js";var F=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m16 9-5.5 5.5L8 12",key:"xofnsj"}]],T=c("circle-check",F),V=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],M=c("circle",V),j=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]],P=c("plus",j),K={backlog:"text-muted-foreground border-muted-foreground",todo:"text-amber-600 border-amber-600 dark:text-amber-400 dark:border-amber-400",in_progress:"text-blue-600 border-blue-600 dark:text-blue-400 dark:border-blue-400",in_review:"text-violet-600 border-violet-600 dark:text-violet-400 dark:border-violet-400",done:"text-green-600 border-green-600 dark:text-green-400 dark:border-green-400",cancelled:"text-neutral-500 border-neutral-500",blocked:"text-red-600 border-red-600 dark:text-red-400 dark:border-red-400"},R="text-muted-foreground border-muted-foreground",U={backlog:"text-muted-foreground",todo:"text-amber-600 dark:text-amber-400",in_progress:"text-blue-600 dark:text-blue-400",in_review:"text-violet-600 dark:text-violet-400",done:"text-green-600 dark:text-green-400",cancelled:"text-neutral-500",blocked:"text-red-600 dark:text-red-400"},W="text-muted-foreground",i={gray:"bg-[#F5F3F0] text-[#52585D] border-[#A8AEB2] dark:bg-[#6e696024] dark:text-[#9A958A] dark:border-[#9e958a73]",blue:"bg-[#DBEAFE] text-[#1D4ED8] border-[#2563EB] dark:bg-[#2563eb2e] dark:text-[#2563EB] dark:border-[#2563eb73]",amber:"bg-[#FEF3C7] text-[#B45309] border-[#F59E0B] dark:bg-[#f59e0b24] dark:text-[#F59E0B] dark:border-[#f59e0b73]",green:"bg-[#DCFCE7] text-[#188A3C] border-[#22C55E] dark:bg-[#22c55e1f] dark:text-[#22C55E] dark:border-[#22c55e73]",violet:"bg-[#EDE9FE] text-[#5B21B6] border-[#7C3AED] dark:bg-[#7c3aed2e] dark:text-[#7C3AED] dark:border-[#7c3aed73]",red:"bg-[#FEE2E2] text-[#991B1B] border-[#DC2626] dark:bg-[#dc26262e] dark:text-[#DC2626] dark:border-[#dc262673]"},G={active:`border ${i.green}`,running:`border ${i.blue}`,scheduled_retry:"bg-sky-100 text-sky-700 dark:bg-sky-900/50 dark:text-sky-300",paused:`border ${i.amber}`,idle:`border ${i.gray}`,archived:"bg-muted text-muted-foreground",planned:"bg-muted text-muted-foreground",achieved:"bg-green-100 text-green-700 dark:bg-green-900/50 dark:text-green-300",completed:"bg-green-100 text-green-700 dark:bg-green-900/50 dark:text-green-300",failed:"bg-red-100 text-red-700 dark:bg-red-900/50 dark:text-red-300",timed_out:"bg-orange-100 text-orange-700 dark:bg-orange-900/50 dark:text-orange-300",succeeded:"bg-green-100 text-green-700 dark:bg-green-900/50 dark:text-green-300",ok:"bg-green-100 text-green-700 dark:bg-green-900/50 dark:text-green-300",warning:"bg-amber-100 text-amber-700 dark:bg-amber-900/50 dark:text-amber-300",error:"bg-red-100 text-red-700 dark:bg-red-900/50 dark:text-red-300",info:"bg-sky-100 text-sky-700 dark:bg-sky-900/50 dark:text-sky-300",terminated:"bg-red-100 text-red-700 dark:bg-red-900/50 dark:text-red-300",pending:"bg-yellow-100 text-yellow-700 dark:bg-yellow-900/50 dark:text-yellow-300",queued:"bg-yellow-100 text-yellow-700 dark:bg-yellow-900/50 dark:text-yellow-300",pending_approval:"bg-amber-100 text-amber-700 dark:bg-amber-900/50 dark:text-amber-300",revision_requested:"bg-amber-100 text-amber-700 dark:bg-amber-900/50 dark:text-amber-300",approved:"bg-green-100 text-green-700 dark:bg-green-900/50 dark:text-green-300",rejected:"bg-red-100 text-red-700 dark:bg-red-900/50 dark:text-red-300",draft:"bg-muted text-muted-foreground",backlog:"bg-muted text-muted-foreground",todo:"bg-amber-100 text-amber-700 dark:bg-amber-900/50 dark:text-amber-300",in_progress:"bg-blue-100 text-blue-700 dark:bg-blue-900/50 dark:text-blue-300",in_review:"bg-violet-100 text-violet-700 dark:bg-violet-900/50 dark:text-violet-300",blocked:"bg-red-100 text-red-700 dark:bg-red-900/50 dark:text-red-300",done:"bg-green-100 text-green-700 dark:bg-green-900/50 dark:text-green-300",cancelled:"bg-muted text-muted-foreground",allowed:"bg-green-100 text-green-700 dark:bg-green-900/50 dark:text-green-300",denied:"bg-red-100 text-red-700 dark:bg-red-900/50 dark:text-red-300",block:"bg-red-100 text-red-700 dark:bg-red-900/50 dark:text-red-300","require-approval":"bg-amber-100 text-amber-700 dark:bg-amber-900/50 dark:text-amber-300",redacted:"bg-violet-100 text-violet-700 dark:bg-violet-900/50 dark:text-violet-300","rate-limit":"bg-orange-100 text-orange-700 dark:bg-orange-900/50 dark:text-orange-300",deferred:"bg-sky-100 text-sky-700 dark:bg-sky-900/50 dark:text-sky-300",hidden:"bg-muted text-muted-foreground",quarantined:"bg-red-100 text-red-700 dark:bg-red-900/50 dark:text-red-300","runtime-error":"bg-red-100 text-red-700 dark:bg-red-900/50 dark:text-red-300",healthy:"bg-green-100 text-green-700 dark:bg-green-900/50 dark:text-green-300",degraded:"bg-amber-100 text-amber-700 dark:bg-amber-900/50 dark:text-amber-300",unchecked:"bg-muted text-muted-foreground"},H="bg-muted text-muted-foreground",J="text-[#1D4ED8] dark:text-[#2563EB]",Q="bg-blue-500/10 border-blue-500/30 text-blue-600 dark:text-blue-400",X={info:"border-[#2563EB]/40 bg-[#DBEAFE]/50 text-[#1D4ED8] dark:border-[#2563eb59] dark:bg-[#2563eb14] dark:text-[#93C5FD]",warning:"border-[#F59E0B]/50 bg-[#FEF3C7]/60 text-[#B45309] dark:border-[#f59e0b59] dark:bg-[#f59e0b12] dark:text-[#F59E0B]",danger:"border-destructive/40 bg-red-100 text-red-700 dark:bg-red-900/50 dark:text-red-300"},Y={idle:"--status-agent-idle",active:"--status-agent-idle",running:"--status-agent-running",paused:"--status-agent-paused",error:"--status-agent-error"},Z="--status-agent-idle",ee={idle:"--status-task-backlog",backlog:"--status-task-backlog",todo:"--status-task-todo",in_progress:"--status-task-in_progress",in_review:"--status-task-in_review",done:"--status-task-done",blocked:"--status-task-blocked",cancelled:"--status-task-cancelled"},re="--status-task-backlog",te={idle:"--status-task-icon-backlog",backlog:"--status-task-icon-backlog",todo:"--status-task-icon-todo",in_progress:"--status-task-icon-in_progress",in_review:"--status-task-icon-in_review",done:"--status-task-icon-done",blocked:"--status-task-icon-blocked",cancelled:"--status-task-icon-cancelled",in_queue:"--status-task-icon-in_queue"},ae="--status-task-icon-backlog",de={running:"bg-blue-400 animate-pulse",active:"bg-green-400",paused:"bg-yellow-400",idle:"bg-yellow-400",pending_approval:"bg-amber-400",error:"bg-red-400",archived:"bg-neutral-400"},oe="bg-neutral-400",ne={critical:"text-red-600 dark:text-red-400",high:"text-orange-600 dark:text-orange-400",medium:"text-yellow-600 dark:text-yellow-400",low:"text-blue-600 dark:text-blue-400"},be="text-yellow-600 dark:text-yellow-400",se={unknown:"text-muted-foreground border-muted-foreground",open:"text-blue-600 border-blue-600 dark:text-blue-400 dark:border-blue-400",waiting:"text-amber-600 border-amber-600 dark:text-amber-400 dark:border-amber-400",running:"text-blue-600 border-blue-600 dark:text-blue-400 dark:border-blue-400",succeeded:"text-green-600 border-green-600 dark:text-green-400 dark:border-green-400",merged:"text-violet-600 border-violet-600 dark:text-violet-400 dark:border-violet-400",failed:"text-red-600 border-red-600 dark:text-red-400 dark:border-red-400",blocked:"text-red-600 border-red-600 dark:text-red-400 dark:border-red-400",closed:"text-neutral-500 border-neutral-500",archived:"text-neutral-500 border-neutral-500",auth_required:"text-amber-600 border-amber-600 dark:text-amber-400 dark:border-amber-400",unreachable:"text-red-600 border-red-600 dark:text-red-400 dark:border-red-400"},ge="text-muted-foreground border-muted-foreground",ue={unknown:"bg-muted text-muted-foreground",open:"bg-blue-100 text-blue-700 dark:bg-blue-900/50 dark:text-blue-300",waiting:"bg-amber-100 text-amber-700 dark:bg-amber-900/50 dark:text-amber-300",running:"bg-blue-100 text-blue-700 dark:bg-blue-900/50 dark:text-blue-300",succeeded:"bg-green-100 text-green-700 dark:bg-green-900/50 dark:text-green-300",failed:"bg-red-100 text-red-700 dark:bg-red-900/50 dark:text-red-300",blocked:"bg-red-100 text-red-700 dark:bg-red-900/50 dark:text-red-300",closed:"bg-muted text-muted-foreground",archived:"bg-muted text-muted-foreground",auth_required:"bg-amber-100 text-amber-700 dark:bg-amber-900/50 dark:text-amber-300",unreachable:"bg-red-100 text-red-700 dark:bg-red-900/50 dark:text-red-300"},le="bg-muted text-muted-foreground",ie={unknown:"",fresh:"",stale:"opacity-70 [border-style:dashed]",auth_required:"[border-style:dashed]",unreachable:"[border-style:dashed]"},z=y(D(),1),m=l(t=>typeof t=="boolean"?`${t}`:t===0?"0":t,"falsyToString"),f=C,A=l((t,r)=>e=>{var o;if(r?.variants==null)return f(t,e?.class,e?.className);const{variants:g,defaultVariants:d}=r,k=Object.keys(g).map(a=>{const n=e?.[a],s=d?.[a];if(n===null)return null;const b=m(n)||m(s);return g[a][b]}),u=e&&Object.entries(e).reduce((a,n)=>{let[s,b]=n;return b===void 0||(a[s]=b),a},{}),h=r==null||(o=r.compoundVariants)===null||o===void 0?void 0:o.reduce((a,n)=>{let{class:s,className:b,...p}=n;return Object.entries(p).every(_=>{let[v,x]=_;return Array.isArray(x)?x.includes({...d,...u}[v]):{...d,...u}[v]===x})?[...a,s,b]:a},[]);return f(t,k,h,e?.class,e?.className)},"cva"),q=y(E(),1),N=A("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-(--tp-color-background-color-border-color-box-shadow-opacity) disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-(length:--rad-3) aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",cta:"bg-foreground text-background hover:bg-foreground/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-10 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-9 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-10","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-9","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}}),O=z.forwardRef(l(function({className:r,variant:e="default",size:o="default",asChild:g=!1,...d},k){const u=g?S:"button";return(0,q.jsx)(u,{ref:k,"data-slot":"button","data-variant":e,"data-size":o,className:B(N({variant:e,size:o,className:r})),...d})},"Button"));O.displayName="Button";export{M as A,G as C,ee as D,ae as E,re as O,J as S,te as T,U as _,oe as a,ne as b,X as c,ue as d,le as f,R as g,K as h,de as i,T as j,P as k,i as l,ge as m,N as n,Y as o,se as p,A as r,Z as s,O as t,ie as u,W as v,H as w,be as x,Q as y};
@@ -1 +1 @@
1
- var i=Object.defineProperty;var a=(r,t)=>i(r,"name",{value:t,configurable:!0});import{i as o}from"./rolldown-runtime-ZpX3ckPj.js";import{Fr as d,Lr as c,S as e}from"./createLucideIcon-eTR0JqwS.js";var m=o(c(),1),s=o(d(),1);function x({className:r,interactive:t=!1,...n}){return(0,s.jsx)("div",{"data-slot":"card",className:e("bg-card text-card-foreground flex flex-col gap-6 rounded-lg border py-6",t&&"cursor-pointer transition-colors hover:border-foreground/20 hover:shadow-md focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",r),...n})}a(x,"Card");function p({className:r,...t}){return(0,s.jsx)("div",{"data-slot":"card-header",className:e("@container/card-header grid auto-rows-min grid-rows-(--gtr-1) items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-(--gtc-17) [.border-b]:pb-6",r),...t})}a(p,"CardHeader");function g({className:r,...t}){return(0,s.jsx)("div",{"data-slot":"card-title",className:e("leading-none font-semibold",r),...t})}a(g,"CardTitle");function v({className:r,...t}){return(0,s.jsx)("div",{"data-slot":"card-description",className:e("text-muted-foreground text-sm",r),...t})}a(v,"CardDescription");function b({className:r,...t}){return(0,s.jsx)("div",{"data-slot":"card-action",className:e("col-start-2 row-span-2 row-start-1 self-start justify-self-end",r),...t})}a(b,"CardAction");function j({className:r,...t}){return(0,s.jsx)("div",{"data-slot":"card-content",className:e("px-6",r),...t})}a(j,"CardContent");function C({className:r,...t}){return(0,s.jsx)("div",{"data-slot":"card-footer",className:e("flex items-center px-6 [.border-t]:pt-6",r),...t})}a(C,"CardFooter");export{C as a,v as i,b as n,p as o,j as r,g as s,x as t};
1
+ var i=Object.defineProperty;var a=(r,t)=>i(r,"name",{value:t,configurable:!0});import{i as o}from"./rolldown-runtime-ZpX3ckPj.js";import{Fr as d,Lr as c,S as e}from"./createLucideIcon-r3v6fbGz.js";var m=o(c(),1),s=o(d(),1);function x({className:r,interactive:t=!1,...n}){return(0,s.jsx)("div",{"data-slot":"card",className:e("bg-card text-card-foreground flex flex-col gap-6 rounded-lg border py-6",t&&"cursor-pointer transition-colors hover:border-foreground/20 hover:shadow-md focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",r),...n})}a(x,"Card");function p({className:r,...t}){return(0,s.jsx)("div",{"data-slot":"card-header",className:e("@container/card-header grid auto-rows-min grid-rows-(--gtr-1) items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-(--gtc-17) [.border-b]:pb-6",r),...t})}a(p,"CardHeader");function g({className:r,...t}){return(0,s.jsx)("div",{"data-slot":"card-title",className:e("leading-none font-semibold",r),...t})}a(g,"CardTitle");function v({className:r,...t}){return(0,s.jsx)("div",{"data-slot":"card-description",className:e("text-muted-foreground text-sm",r),...t})}a(v,"CardDescription");function b({className:r,...t}){return(0,s.jsx)("div",{"data-slot":"card-action",className:e("col-start-2 row-span-2 row-start-1 self-start justify-self-end",r),...t})}a(b,"CardAction");function j({className:r,...t}){return(0,s.jsx)("div",{"data-slot":"card-content",className:e("px-6",r),...t})}a(j,"CardContent");function C({className:r,...t}){return(0,s.jsx)("div",{"data-slot":"card-footer",className:e("flex items-center px-6 [.border-t]:pt-6",r),...t})}a(C,"CardFooter");export{C as a,v as i,b as n,p as o,j as r,g as s,x as t};
@@ -1 +1 @@
1
- import{t as c}from"./createLucideIcon-eTR0JqwS.js";var e=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],o=c("check",e);export{o as t};
1
+ import{t as c}from"./createLucideIcon-r3v6fbGz.js";var e=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],o=c("check",e);export{o as t};