@exulu/frontend 1.0.3 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (239) hide show
  1. package/dist/.next/BUILD_ID +1 -1
  2. package/dist/.next/app-build-manifest.json +192 -192
  3. package/dist/.next/app-path-routes-manifest.json +1 -1
  4. package/dist/.next/build-manifest.json +3 -3
  5. package/dist/.next/prerender-manifest.json +1 -1
  6. package/dist/.next/required-server-files.json +1 -1
  7. package/dist/.next/server/app/(application)/agents/edit/[id]/page.js +1 -1
  8. package/dist/.next/server/app/(application)/agents/edit/[id]/page.js.nft.json +1 -1
  9. package/dist/.next/server/app/(application)/agents/edit/[id]/page_client-reference-manifest.js +1 -1
  10. package/dist/.next/server/app/(application)/agents/page.js +2 -2
  11. package/dist/.next/server/app/(application)/agents/page.js.nft.json +1 -1
  12. package/dist/.next/server/app/(application)/agents/page_client-reference-manifest.js +1 -1
  13. package/dist/.next/server/app/(application)/chat/[agent]/[session]/page.js +2 -2
  14. package/dist/.next/server/app/(application)/chat/[agent]/[session]/page.js.nft.json +1 -1
  15. package/dist/.next/server/app/(application)/chat/[agent]/[session]/page_client-reference-manifest.js +1 -1
  16. package/dist/.next/server/app/(application)/chat/[agent]/page.js +1 -1
  17. package/dist/.next/server/app/(application)/chat/[agent]/page.js.nft.json +1 -1
  18. package/dist/.next/server/app/(application)/chat/[agent]/page_client-reference-manifest.js +1 -1
  19. package/dist/.next/server/app/(application)/chat/page.js +1 -1
  20. package/dist/.next/server/app/(application)/chat/page.js.nft.json +1 -1
  21. package/dist/.next/server/app/(application)/chat/page_client-reference-manifest.js +1 -1
  22. package/dist/.next/server/app/(application)/configuration/page.js +1 -1
  23. package/dist/.next/server/app/(application)/configuration/page.js.nft.json +1 -1
  24. package/dist/.next/server/app/(application)/configuration/page_client-reference-manifest.js +1 -1
  25. package/dist/.next/server/app/(application)/dashboard/page.js +2 -2
  26. package/dist/.next/server/app/(application)/dashboard/page.js.nft.json +1 -1
  27. package/dist/.next/server/app/(application)/dashboard/page_client-reference-manifest.js +1 -1
  28. package/dist/.next/server/app/(application)/data/[[...query]]/page.js +2 -2
  29. package/dist/.next/server/app/(application)/data/[[...query]]/page.js.nft.json +1 -1
  30. package/dist/.next/server/app/(application)/data/[[...query]]/page_client-reference-manifest.js +1 -1
  31. package/dist/.next/server/app/(application)/evals/[id]/page.js +1 -1
  32. package/dist/.next/server/app/(application)/evals/[id]/page.js.nft.json +1 -1
  33. package/dist/.next/server/app/(application)/evals/[id]/page_client-reference-manifest.js +1 -1
  34. package/dist/.next/server/app/(application)/evals/[id]/runs/page.js +1 -1
  35. package/dist/.next/server/app/(application)/evals/[id]/runs/page.js.nft.json +1 -1
  36. package/dist/.next/server/app/(application)/evals/[id]/runs/page_client-reference-manifest.js +1 -1
  37. package/dist/.next/server/app/(application)/evals/cases/page.js +1 -1
  38. package/dist/.next/server/app/(application)/evals/cases/page.js.nft.json +1 -1
  39. package/dist/.next/server/app/(application)/evals/cases/page_client-reference-manifest.js +1 -1
  40. package/dist/.next/server/app/(application)/evals/page.js +1 -1
  41. package/dist/.next/server/app/(application)/evals/page.js.nft.json +1 -1
  42. package/dist/.next/server/app/(application)/evals/page_client-reference-manifest.js +1 -1
  43. package/dist/.next/server/app/(application)/explorer/page.js +9 -9
  44. package/dist/.next/server/app/(application)/explorer/page.js.nft.json +1 -1
  45. package/dist/.next/server/app/(application)/explorer/page_client-reference-manifest.js +1 -1
  46. package/dist/.next/server/app/(application)/jobs/page.js +1 -1
  47. package/dist/.next/server/app/(application)/jobs/page.js.nft.json +1 -1
  48. package/dist/.next/server/app/(application)/jobs/page_client-reference-manifest.js +1 -1
  49. package/dist/.next/server/app/(application)/keys/page.js +1 -1
  50. package/dist/.next/server/app/(application)/keys/page.js.nft.json +1 -1
  51. package/dist/.next/server/app/(application)/keys/page_client-reference-manifest.js +1 -1
  52. package/dist/.next/server/app/(application)/page.js +1 -1
  53. package/dist/.next/server/app/(application)/page.js.nft.json +1 -1
  54. package/dist/.next/server/app/(application)/page_client-reference-manifest.js +1 -1
  55. package/dist/.next/server/app/(application)/projects/[project]/page.js +1 -1
  56. package/dist/.next/server/app/(application)/projects/[project]/page.js.nft.json +1 -1
  57. package/dist/.next/server/app/(application)/projects/[project]/page_client-reference-manifest.js +1 -1
  58. package/dist/.next/server/app/(application)/projects/page.js +1 -1
  59. package/dist/.next/server/app/(application)/projects/page.js.nft.json +1 -1
  60. package/dist/.next/server/app/(application)/projects/page_client-reference-manifest.js +1 -1
  61. package/dist/.next/server/app/(application)/roles/page.js +1 -1
  62. package/dist/.next/server/app/(application)/roles/page.js.nft.json +1 -1
  63. package/dist/.next/server/app/(application)/roles/page_client-reference-manifest.js +1 -1
  64. package/dist/.next/server/app/(application)/token/page.js +1 -1
  65. package/dist/.next/server/app/(application)/token/page.js.nft.json +1 -1
  66. package/dist/.next/server/app/(application)/token/page_client-reference-manifest.js +1 -1
  67. package/dist/.next/server/app/(application)/users/page.js +1 -1
  68. package/dist/.next/server/app/(application)/users/page.js.nft.json +1 -1
  69. package/dist/.next/server/app/(application)/users/page_client-reference-manifest.js +1 -1
  70. package/dist/.next/server/app/(application)/variables/create/page.js +1 -1
  71. package/dist/.next/server/app/(application)/variables/create/page.js.nft.json +1 -1
  72. package/dist/.next/server/app/(application)/variables/create/page_client-reference-manifest.js +1 -1
  73. package/dist/.next/server/app/(application)/variables/edit/[variable_id]/page.js +1 -1
  74. package/dist/.next/server/app/(application)/variables/edit/[variable_id]/page.js.nft.json +1 -1
  75. package/dist/.next/server/app/(application)/variables/edit/[variable_id]/page_client-reference-manifest.js +1 -1
  76. package/dist/.next/server/app/(application)/variables/page.js +1 -1
  77. package/dist/.next/server/app/(application)/variables/page.js.nft.json +1 -1
  78. package/dist/.next/server/app/(application)/variables/page_client-reference-manifest.js +1 -1
  79. package/dist/.next/server/app/(application)/variables/usage/[variable_id]/page.js +1 -1
  80. package/dist/.next/server/app/(application)/variables/usage/[variable_id]/page.js.nft.json +1 -1
  81. package/dist/.next/server/app/(application)/variables/usage/[variable_id]/page_client-reference-manifest.js +1 -1
  82. package/dist/.next/server/app/(application)/workflows/page.js +1 -1
  83. package/dist/.next/server/app/(application)/workflows/page.js.nft.json +1 -1
  84. package/dist/.next/server/app/(application)/workflows/page_client-reference-manifest.js +1 -1
  85. package/dist/.next/server/app/(authentication)/login/page.js +3 -3
  86. package/dist/.next/server/app/(authentication)/login/page.js.nft.json +1 -1
  87. package/dist/.next/server/app/(authentication)/login/page_client-reference-manifest.js +1 -1
  88. package/dist/.next/server/app/_not-found/page.js +1 -1
  89. package/dist/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  90. package/dist/.next/server/app/_not-found.html +1 -1
  91. package/dist/.next/server/app/_not-found.rsc +1 -1
  92. package/dist/.next/server/app/api/auth/[...nextauth]/route.js +2 -2
  93. package/dist/.next/server/app/api/config/route.js +2 -2
  94. package/dist/.next/server/app-paths-manifest.json +9 -9
  95. package/dist/.next/server/chunks/{2711.js → 3575.js} +1 -1
  96. package/dist/.next/server/chunks/{1558.js → 5192.js} +1 -1
  97. package/dist/.next/server/chunks/{9762.js → 7223.js} +5 -5
  98. package/dist/.next/server/chunks/{4470.js → 7944.js} +2 -2
  99. package/dist/.next/server/chunks/9049.js +2 -2
  100. package/dist/.next/server/middleware-build-manifest.js +1 -1
  101. package/dist/.next/server/middleware-manifest.json +5 -5
  102. package/dist/.next/server/middleware.js +2 -2
  103. package/dist/.next/server/next-font-manifest.js +1 -1
  104. package/dist/.next/server/next-font-manifest.json +1 -1
  105. package/dist/.next/server/pages/404.html +1 -1
  106. package/dist/.next/server/pages/500.html +1 -1
  107. package/dist/.next/server/pages-manifest.json +1 -1
  108. package/dist/.next/server/server-reference-manifest.json +1 -1
  109. package/dist/.next/static/chunks/2117-7e0e97ffa5867cf9.js.map +1 -1
  110. package/dist/.next/static/chunks/6111-5ab0e72a466543ea.js.map +1 -1
  111. package/dist/.next/static/chunks/7648-be88d7a414ab6394.js.map +1 -1
  112. package/dist/.next/static/chunks/app/(application)/agents/edit/[id]/{page-7737da0d7329baf0.js → page-e622860a59223955.js} +2 -2
  113. package/dist/.next/static/chunks/app/(application)/agents/edit/[id]/page-e622860a59223955.js.map +1 -0
  114. package/dist/.next/static/chunks/app/(application)/agents/{page-58d7ecbf04b75ef3.js → page-fe256553444f6e6f.js} +2 -2
  115. package/dist/.next/static/chunks/app/(application)/agents/page-fe256553444f6e6f.js.map +1 -0
  116. package/dist/.next/static/chunks/app/(application)/chat/[agent]/[session]/page-beaa99a35c9e9bfc.js +2 -0
  117. package/dist/.next/static/chunks/app/(application)/chat/[agent]/[session]/page-beaa99a35c9e9bfc.js.map +1 -0
  118. package/dist/.next/static/chunks/app/(application)/chat/[agent]/{layout-a701083f64a86849.js → layout-1736d0931ae3f866.js} +2 -2
  119. package/dist/.next/static/chunks/app/(application)/chat/[agent]/layout-1736d0931ae3f866.js.map +1 -0
  120. package/dist/.next/static/chunks/app/(application)/chat/[agent]/{page-2f7e3126e0e76d70.js → page-1538a952e1e99f94.js} +2 -2
  121. package/dist/.next/static/chunks/app/(application)/chat/[agent]/page-1538a952e1e99f94.js.map +1 -0
  122. package/dist/.next/static/chunks/app/(application)/chat/{layout-b934ba4c0a125683.js → layout-3fbafd811d12ed10.js} +2 -2
  123. package/dist/.next/static/chunks/app/(application)/chat/layout-3fbafd811d12ed10.js.map +1 -0
  124. package/dist/.next/static/chunks/app/(application)/configuration/{page-3aa96486933ae5dd.js → page-876d1d43a9cc36e4.js} +2 -2
  125. package/dist/.next/static/chunks/app/(application)/configuration/page-876d1d43a9cc36e4.js.map +1 -0
  126. package/dist/.next/static/chunks/app/(application)/dashboard/{page-2436e355871758ba.js → page-ca746e824cb97052.js} +2 -2
  127. package/dist/.next/static/chunks/app/(application)/dashboard/page-ca746e824cb97052.js.map +1 -0
  128. package/dist/.next/static/chunks/app/(application)/data/[[...query]]/{layout-e073c74bd194e8cc.js → layout-47ad558a66e699c7.js} +2 -2
  129. package/dist/.next/static/chunks/app/(application)/data/[[...query]]/layout-47ad558a66e699c7.js.map +1 -0
  130. package/dist/.next/static/chunks/app/(application)/data/[[...query]]/{page-375a978d25ee3a65.js → page-edcdd8944daaaef8.js} +2 -2
  131. package/dist/.next/static/chunks/app/(application)/data/[[...query]]/page-edcdd8944daaaef8.js.map +1 -0
  132. package/dist/.next/static/chunks/app/(application)/evals/[id]/{page-b668fca1ba6993e2.js → page-5d4b8e351ee3265f.js} +2 -2
  133. package/dist/.next/static/chunks/app/(application)/evals/[id]/page-5d4b8e351ee3265f.js.map +1 -0
  134. package/dist/.next/static/chunks/app/(application)/evals/[id]/runs/{page-07969d6e5fb01d7b.js → page-4f0d1524fc7936d1.js} +2 -2
  135. package/dist/.next/static/chunks/app/(application)/evals/[id]/runs/page-4f0d1524fc7936d1.js.map +1 -0
  136. package/dist/.next/static/chunks/app/(application)/evals/cases/{page-0f25ee5d9498cbc5.js → page-47274d92d3daf16b.js} +2 -2
  137. package/dist/.next/static/chunks/app/(application)/evals/cases/page-47274d92d3daf16b.js.map +1 -0
  138. package/dist/.next/static/chunks/app/(application)/evals/page-e25d76c28076b126.js +2 -0
  139. package/dist/.next/static/chunks/app/(application)/evals/page-e25d76c28076b126.js.map +1 -0
  140. package/dist/.next/static/chunks/app/(application)/explorer/{page-d1580ece2ff5ba64.js → page-9f8ab38b5cd68c45.js} +2 -2
  141. package/dist/.next/static/chunks/app/(application)/explorer/page-9f8ab38b5cd68c45.js.map +1 -0
  142. package/dist/.next/static/chunks/app/(application)/jobs/{page-1f32c5e7202301b2.js → page-2d9a06a9959e7977.js} +2 -2
  143. package/dist/.next/static/chunks/app/(application)/jobs/page-2d9a06a9959e7977.js.map +1 -0
  144. package/dist/.next/static/chunks/app/(application)/keys/page-6ecb8218f18773b9.js +2 -0
  145. package/dist/.next/static/chunks/app/(application)/keys/page-6ecb8218f18773b9.js.map +1 -0
  146. package/dist/.next/static/chunks/app/(application)/layout-73d93420d0c6661c.js +2 -0
  147. package/dist/.next/static/chunks/app/(application)/layout-73d93420d0c6661c.js.map +1 -0
  148. package/dist/.next/static/chunks/app/(application)/{page-661f24beb316dabf.js → page-16a518c5864e6963.js} +2 -2
  149. package/dist/.next/static/chunks/app/(application)/page-16a518c5864e6963.js.map +1 -0
  150. package/dist/.next/static/chunks/app/(application)/projects/[project]/{page-cc6f6786682fd877.js → page-870b48a3e7f64f7d.js} +2 -2
  151. package/dist/.next/static/chunks/app/(application)/projects/[project]/page-870b48a3e7f64f7d.js.map +1 -0
  152. package/dist/.next/static/chunks/app/(application)/projects/{layout-3ef4b8519966eee7.js → layout-aa5baaf5cc644e70.js} +2 -2
  153. package/dist/.next/static/chunks/app/(application)/projects/layout-aa5baaf5cc644e70.js.map +1 -0
  154. package/dist/.next/static/chunks/app/(application)/projects/{page-6a38fd92beb3b45a.js → page-055a048a107095ed.js} +2 -2
  155. package/dist/.next/static/chunks/app/(application)/projects/page-055a048a107095ed.js.map +1 -0
  156. package/dist/.next/static/chunks/app/(application)/roles/page-b30682514e63b3f8.js +2 -0
  157. package/dist/.next/static/chunks/app/(application)/roles/page-b30682514e63b3f8.js.map +1 -0
  158. package/dist/.next/static/chunks/app/(application)/token/{page-19921b235606b9f3.js → page-f86eaf8c51fdbe52.js} +2 -2
  159. package/dist/.next/static/chunks/app/(application)/token/page-f86eaf8c51fdbe52.js.map +1 -0
  160. package/dist/.next/static/chunks/app/(application)/users/page-1a686fd83f765d8e.js +2 -0
  161. package/dist/.next/static/chunks/app/(application)/users/page-1a686fd83f765d8e.js.map +1 -0
  162. package/dist/.next/static/chunks/app/(application)/variables/create/{page-3d0e1788a92cba52.js → page-16582f525a24dd45.js} +2 -2
  163. package/dist/.next/static/chunks/app/(application)/variables/create/page-16582f525a24dd45.js.map +1 -0
  164. package/dist/.next/static/chunks/app/(application)/variables/edit/[variable_id]/{page-ad12a1419856c280.js → page-b37d9320812bb8f6.js} +2 -2
  165. package/dist/.next/static/chunks/app/(application)/variables/edit/[variable_id]/page-b37d9320812bb8f6.js.map +1 -0
  166. package/dist/.next/static/chunks/app/(application)/variables/{page-530fff39006ba055.js → page-9b438ce239c07987.js} +2 -2
  167. package/dist/.next/static/chunks/app/(application)/variables/page-9b438ce239c07987.js.map +1 -0
  168. package/dist/.next/static/chunks/app/(application)/variables/usage/[variable_id]/{page-11fc31486ee7764e.js → page-b1fe1791701d361e.js} +2 -2
  169. package/dist/.next/static/chunks/app/(application)/variables/usage/[variable_id]/page-b1fe1791701d361e.js.map +1 -0
  170. package/dist/.next/static/chunks/app/(application)/workflows/{page-feb479eaa043e041.js → page-93969baedc6f38ff.js} +2 -2
  171. package/dist/.next/static/chunks/app/(application)/workflows/page-93969baedc6f38ff.js.map +1 -0
  172. package/dist/.next/static/chunks/app/(authentication)/{layout-ed3d63f0ade93b47.js → layout-2dfa18ea6e6dc5cd.js} +2 -2
  173. package/dist/.next/static/chunks/app/(authentication)/layout-2dfa18ea6e6dc5cd.js.map +1 -0
  174. package/dist/.next/static/chunks/app/(authentication)/login/{error-65d2315c483bed81.js → error-c5f516f76e374400.js} +2 -2
  175. package/dist/.next/static/chunks/app/(authentication)/login/error-c5f516f76e374400.js.map +1 -0
  176. package/dist/.next/static/chunks/app/(authentication)/login/{page-3233ca86dc3297c3.js → page-4de4d6f64507c919.js} +2 -2
  177. package/dist/.next/static/chunks/app/(authentication)/login/page-4de4d6f64507c919.js.map +1 -0
  178. package/dist/.next/static/chunks/app/_not-found/page-3832d1eb6511168a.js.map +1 -1
  179. package/dist/.next/static/chunks/main-83299e0cc175f2ed.js.map +1 -1
  180. package/dist/.next/static/chunks/{main-app-e4276b9c44f225cb.js → main-app-da1df2757744a2ea.js} +2 -2
  181. package/dist/.next/static/chunks/main-app-da1df2757744a2ea.js.map +1 -0
  182. package/dist/.next/static/css/e3f2a16ab7676b05.css.map +1 -1
  183. package/dist/node_modules/sharp/build/Release/sharp-linux-x64.node +0 -0
  184. package/dist/node_modules/sharp/vendor/8.14.5/{darwin-arm64v8/lib/libvips-cpp.42.dylib → linux-x64/lib/libvips-cpp.so.42} +0 -0
  185. package/dist/node_modules/sharp/vendor/8.14.5/linux-x64/platform.json +1 -0
  186. package/dist/node_modules/sharp/vendor/8.14.5/{darwin-arm64v8 → linux-x64}/versions.json +1 -1
  187. package/dist/package.json +3 -2
  188. package/dist/server.js +1 -1
  189. package/index.js +37 -0
  190. package/package.json +7 -6
  191. package/release.config.cjs +30 -0
  192. package/dist/.env +0 -32
  193. package/dist/.next/static/chunks/app/(application)/agents/edit/[id]/page-7737da0d7329baf0.js.map +0 -1
  194. package/dist/.next/static/chunks/app/(application)/agents/page-58d7ecbf04b75ef3.js.map +0 -1
  195. package/dist/.next/static/chunks/app/(application)/chat/[agent]/[session]/page-fb7ea4dc4cdb350b.js +0 -2
  196. package/dist/.next/static/chunks/app/(application)/chat/[agent]/[session]/page-fb7ea4dc4cdb350b.js.map +0 -1
  197. package/dist/.next/static/chunks/app/(application)/chat/[agent]/layout-a701083f64a86849.js.map +0 -1
  198. package/dist/.next/static/chunks/app/(application)/chat/[agent]/page-2f7e3126e0e76d70.js.map +0 -1
  199. package/dist/.next/static/chunks/app/(application)/chat/layout-b934ba4c0a125683.js.map +0 -1
  200. package/dist/.next/static/chunks/app/(application)/configuration/page-3aa96486933ae5dd.js.map +0 -1
  201. package/dist/.next/static/chunks/app/(application)/dashboard/page-2436e355871758ba.js.map +0 -1
  202. package/dist/.next/static/chunks/app/(application)/data/[[...query]]/layout-e073c74bd194e8cc.js.map +0 -1
  203. package/dist/.next/static/chunks/app/(application)/data/[[...query]]/page-375a978d25ee3a65.js.map +0 -1
  204. package/dist/.next/static/chunks/app/(application)/evals/[id]/page-b668fca1ba6993e2.js.map +0 -1
  205. package/dist/.next/static/chunks/app/(application)/evals/[id]/runs/page-07969d6e5fb01d7b.js.map +0 -1
  206. package/dist/.next/static/chunks/app/(application)/evals/cases/page-0f25ee5d9498cbc5.js.map +0 -1
  207. package/dist/.next/static/chunks/app/(application)/evals/page-78bbdcf2c04a4ef9.js +0 -2
  208. package/dist/.next/static/chunks/app/(application)/evals/page-78bbdcf2c04a4ef9.js.map +0 -1
  209. package/dist/.next/static/chunks/app/(application)/explorer/page-d1580ece2ff5ba64.js.map +0 -1
  210. package/dist/.next/static/chunks/app/(application)/jobs/page-1f32c5e7202301b2.js.map +0 -1
  211. package/dist/.next/static/chunks/app/(application)/keys/page-9b13ab99042d606c.js +0 -2
  212. package/dist/.next/static/chunks/app/(application)/keys/page-9b13ab99042d606c.js.map +0 -1
  213. package/dist/.next/static/chunks/app/(application)/layout-cff96ce5805f0772.js +0 -2
  214. package/dist/.next/static/chunks/app/(application)/layout-cff96ce5805f0772.js.map +0 -1
  215. package/dist/.next/static/chunks/app/(application)/page-661f24beb316dabf.js.map +0 -1
  216. package/dist/.next/static/chunks/app/(application)/projects/[project]/page-cc6f6786682fd877.js.map +0 -1
  217. package/dist/.next/static/chunks/app/(application)/projects/layout-3ef4b8519966eee7.js.map +0 -1
  218. package/dist/.next/static/chunks/app/(application)/projects/page-6a38fd92beb3b45a.js.map +0 -1
  219. package/dist/.next/static/chunks/app/(application)/roles/page-d4a925d823a3c66c.js +0 -2
  220. package/dist/.next/static/chunks/app/(application)/roles/page-d4a925d823a3c66c.js.map +0 -1
  221. package/dist/.next/static/chunks/app/(application)/token/page-19921b235606b9f3.js.map +0 -1
  222. package/dist/.next/static/chunks/app/(application)/users/page-7cddc0528218c5c8.js +0 -2
  223. package/dist/.next/static/chunks/app/(application)/users/page-7cddc0528218c5c8.js.map +0 -1
  224. package/dist/.next/static/chunks/app/(application)/variables/create/page-3d0e1788a92cba52.js.map +0 -1
  225. package/dist/.next/static/chunks/app/(application)/variables/edit/[variable_id]/page-ad12a1419856c280.js.map +0 -1
  226. package/dist/.next/static/chunks/app/(application)/variables/page-530fff39006ba055.js.map +0 -1
  227. package/dist/.next/static/chunks/app/(application)/variables/usage/[variable_id]/page-11fc31486ee7764e.js.map +0 -1
  228. package/dist/.next/static/chunks/app/(application)/workflows/page-feb479eaa043e041.js.map +0 -1
  229. package/dist/.next/static/chunks/app/(authentication)/layout-ed3d63f0ade93b47.js.map +0 -1
  230. package/dist/.next/static/chunks/app/(authentication)/login/error-65d2315c483bed81.js.map +0 -1
  231. package/dist/.next/static/chunks/app/(authentication)/login/page-3233ca86dc3297c3.js.map +0 -1
  232. package/dist/.next/static/chunks/main-app-e4276b9c44f225cb.js.map +0 -1
  233. package/dist/node_modules/sharp/build/Release/sharp-darwin-arm64v8.node +0 -0
  234. package/dist/node_modules/sharp/vendor/8.14.5/darwin-arm64v8/include/harfbuzz/hb-cplusplus.hh +0 -223
  235. package/dist/node_modules/sharp/vendor/8.14.5/darwin-arm64v8/include/vips/vips8 +0 -60
  236. package/dist/node_modules/sharp/vendor/8.14.5/darwin-arm64v8/platform.json +0 -1
  237. /package/dist/.next/static/{5Vf-v5wyENpLUvLzma2J6 → Wt4IDtB-Xwfc0Z_CpMmtm}/_buildManifest.js +0 -0
  238. /package/dist/.next/static/{5Vf-v5wyENpLUvLzma2J6 → Wt4IDtB-Xwfc0Z_CpMmtm}/_ssgManifest.js +0 -0
  239. /package/dist/node_modules/sharp/vendor/8.14.5/{darwin-arm64v8 → linux-x64}/THIRD-PARTY-NOTICES.md +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"static/chunks/app/(application)/variables/usage/[variable_id]/page-b1fe1791701d361e.js","mappings":"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","sources":["webpack://_N_E/?b8a5","webpack://_N_E/../../../src/icons/user.ts","webpack://_N_E/./app/(application)/variables/usage/[variable_id]/page.tsx","webpack://_N_E/./components/ui/badge.tsx","webpack://_N_E/./components/ui/card.tsx","webpack://_N_E/./components/ui/loading.tsx","webpack://_N_E/./components/ui/table.tsx","webpack://_N_E/../../../src/icons/arrow-left.ts","webpack://_N_E/../../../src/icons/bot.ts","webpack://_N_E/../../../src/icons/workflow.ts","webpack://_N_E/./node_modules/next/dist/api/navigation.js"],"sourcesContent":["import(/* webpackMode: \"eager\" */ \"/home/runner/work/exulu-frontend/exulu-frontend/app/(application)/variables/usage/[variable_id]/page.tsx\");\n","import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name User\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTkgMjF2LTJhNCA0IDAgMCAwLTQtNEg5YTQgNCAwIDAgMC00IDR2MiIgLz4KICA8Y2lyY2xlIGN4PSIxMiIgY3k9IjciIHI9IjQiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/user\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst User = createLucideIcon('User', [\n ['path', { d: 'M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2', key: '975kel' }],\n ['circle', { cx: '12', cy: '7', r: '4', key: '17ys0d' }],\n]);\n\nexport default User;\n","\"use client\";\n\nimport { useQuery } from \"@apollo/client\";\nimport { ArrowLeft, User, Bot, Workflow } from \"lucide-react\";\nimport Link from \"next/link\";\nimport { useParams } from \"next/navigation\";\nimport React, { useState } from \"react\";\nimport {\n GET_VARIABLE_BY_ID,\n GET_USER_BY_ID,\n GET_AGENT_BY_ID,\n} from \"@/queries/queries\";\nimport { Button } from \"@/components/ui/button\";\nimport { Card, CardContent, CardDescription, CardHeader, CardTitle } from \"@/components/ui/card\";\nimport { Badge } from \"@/components/ui/badge\";\nimport { Loading } from \"@/components/ui/loading\";\nimport {\n Table,\n TableBody,\n TableCell,\n TableHead,\n TableHeader,\n TableRow,\n} from \"@/components/ui/table\";\n\nexport const dynamic = \"force-dynamic\";\n\ninterface ResourceInfo {\n id: string;\n type: 'user' | 'agent' | 'workflow';\n name: string;\n loading: boolean;\n error?: string;\n}\n\nexport default function VariableUsagePage() {\n const params = useParams();\n const variableId = params.variable_id as string;\n const [page, setPage] = useState(1);\n const limit = 10;\n\n const { loading: variableLoading, error: variableError, data: variableData } = useQuery(GET_VARIABLE_BY_ID, {\n variables: { id: variableId },\n skip: !variableId,\n });\n\n const variable = variableData?.variableById;\n const usedBy = variable?.used_by || [];\n\n // Paginate the used_by array\n const totalPages = Math.ceil(usedBy.length / limit);\n const startIndex = (page - 1) * limit;\n const endIndex = startIndex + limit;\n const currentPageUsedBy = usedBy.slice(startIndex, endIndex);\n\n // Parse the used_by IDs and fetch resource details\n const [resourcesInfo, setResourcesInfo] = useState<Record<string, ResourceInfo>>({});\n\n // Initialize resource info when used_by changes\n React.useEffect(() => {\n if (usedBy.length > 0) {\n const initialResources: Record<string, ResourceInfo> = {};\n usedBy.forEach(resourceId => {\n const [type, id] = resourceId.split('/');\n initialResources[resourceId] = {\n id,\n type: type as 'user' | 'agent' | 'workflow',\n name: '',\n loading: true,\n };\n });\n setResourcesInfo(initialResources);\n }\n }, [usedBy]);\n\n // Fetch individual resource details\n currentPageUsedBy.forEach(resourceId => {\n const [type, id] = resourceId.split('/');\n \n if (type === 'user') {\n useQuery(GET_USER_BY_ID, {\n variables: { id },\n skip: !id,\n onCompleted: (data) => {\n if (data?.userById) {\n setResourcesInfo(prev => ({\n ...prev,\n [resourceId]: {\n ...prev[resourceId],\n name: `${data.userById.firstname} ${data.userById.lastname}`.trim() || data.userById.email,\n loading: false,\n }\n }));\n }\n },\n onError: () => {\n setResourcesInfo(prev => ({\n ...prev,\n [resourceId]: {\n ...prev[resourceId],\n name: 'Unknown User',\n loading: false,\n error: 'Failed to load user',\n }\n }));\n }\n });\n } else if (type === 'agent' || type === 'workflow') {\n useQuery(GET_AGENT_BY_ID, {\n variables: { id },\n skip: !id,\n onCompleted: (data) => {\n if (data?.agentById) {\n setResourcesInfo(prev => ({\n ...prev,\n [resourceId]: {\n ...prev[resourceId],\n name: data.agentById.name,\n loading: false,\n }\n }));\n }\n },\n onError: () => {\n setResourcesInfo(prev => ({\n ...prev,\n [resourceId]: {\n ...prev[resourceId],\n name: type === 'agent' ? 'Unknown Agent' : 'Unknown Flow',\n loading: false,\n error: type === 'agent' ? 'Failed to load agent' : 'Failed to load flow',\n }\n }));\n }\n });\n }\n });\n\n const getResourceIcon = (type: string) => {\n switch (type) {\n case 'user':\n return <User className=\"h-4 w-4\" />;\n case 'agent':\n return <Bot className=\"h-4 w-4\" />;\n case 'workflow':\n return <Workflow className=\"h-4 w-4\" />;\n default:\n return null;\n }\n };\n\n const getResourceBadgeVariant = (type: string) => {\n switch (type) {\n case 'user':\n return 'default';\n case 'agent':\n return 'secondary';\n case 'workflow':\n return 'outline';\n default:\n return 'outline';\n }\n };\n\n if (variableLoading) {\n return (\n <div className=\"flex h-full items-center justify-center\">\n <Loading />\n </div>\n );\n }\n\n if (variableError || !variable) {\n return (\n <div className=\"flex h-full flex-col items-center justify-center space-y-4\">\n <h1 className=\"text-2xl font-bold\">Variable not found</h1>\n <p className=\"text-muted-foreground\">The requested variable could not be loaded.</p>\n <Link href=\"/variables\">\n <Button>\n <ArrowLeft className=\"mr-2 h-4 w-4\" />\n Back to Variables\n </Button>\n </Link>\n </div>\n );\n }\n\n return (\n <div className=\"space-y-6 p-8\">\n <div className=\"flex items-center space-x-4\">\n <Link href=\"/variables\">\n <Button variant=\"outline\" size=\"sm\">\n <ArrowLeft className=\"mr-2 h-4 w-4\" />\n Back\n </Button>\n </Link>\n <div>\n <h1 className=\"text-2xl font-bold\">Variable Usage</h1>\n <p className=\"text-muted-foreground\">\n Resources using variable \"{variable.name}\"\n </p>\n </div>\n </div>\n\n <Card>\n <CardHeader>\n <CardTitle className=\"flex items-center justify-between\">\n Variable Details\n <Badge variant={variable.encrypted ? \"default\" : \"outline\"}>\n {variable.encrypted ? \"Encrypted\" : \"Plain Text\"}\n </Badge>\n </CardTitle>\n <CardDescription>\n Created {new Date(variable.createdAt).toLocaleDateString()}\n </CardDescription>\n </CardHeader>\n <CardContent>\n <div className=\"space-y-2\">\n <div>\n <span className=\"font-medium\">Name:</span> {variable.name}\n </div>\n <div>\n <span className=\"font-medium\">Used by:</span> {usedBy.length} resource{usedBy.length !== 1 ? 's' : ''}\n </div>\n </div>\n </CardContent>\n </Card>\n\n {usedBy.length === 0 ? (\n <Card>\n <CardContent className=\"flex flex-col items-center justify-center py-12\">\n <h3 className=\"text-lg font-medium\">No Usage Found</h3>\n <p className=\"text-muted-foreground\">This variable is not currently being used by any resources.</p>\n </CardContent>\n </Card>\n ) : (\n <Card>\n <CardHeader>\n <CardTitle>Resource Usage ({usedBy.length})</CardTitle>\n <CardDescription>\n Resources that reference this variable\n </CardDescription>\n </CardHeader>\n <CardContent>\n <Table>\n <TableHeader>\n <TableRow>\n <TableHead>Type</TableHead>\n <TableHead>Name</TableHead>\n <TableHead>ID</TableHead>\n </TableRow>\n </TableHeader>\n <TableBody>\n {currentPageUsedBy.map((resourceId) => {\n const [type, id] = resourceId.split('/');\n const resource = resourcesInfo[resourceId];\n\n return (\n <TableRow key={resourceId}>\n <TableCell>\n <div className=\"flex items-center space-x-2\">\n {getResourceIcon(type)}\n <Badge variant={getResourceBadgeVariant(type)}>\n {type.charAt(0).toUpperCase() + type.slice(1)}\n </Badge>\n </div>\n </TableCell>\n <TableCell>\n {resource?.loading ? (\n <Loading />\n ) : resource?.error ? (\n <span className=\"text-muted-foreground\">{resource.name}</span>\n ) : (\n resource?.name || 'Loading...'\n )}\n </TableCell>\n <TableCell className=\"font-mono text-sm text-muted-foreground\">\n {id}\n </TableCell>\n </TableRow>\n );\n })}\n </TableBody>\n </Table>\n\n {totalPages > 1 && (\n <div className=\"flex items-center justify-between mt-4\">\n <div className=\"text-sm text-muted-foreground\">\n Showing {startIndex + 1}-{Math.min(endIndex, usedBy.length)} of {usedBy.length} resources\n </div>\n <div className=\"flex items-center space-x-2\">\n <Button\n variant=\"outline\"\n size=\"sm\"\n onClick={() => setPage(page - 1)}\n disabled={page === 1}\n >\n Previous\n </Button>\n <span className=\"text-sm\">\n Page {page} of {totalPages}\n </span>\n <Button\n variant=\"outline\"\n size=\"sm\"\n onClick={() => setPage(page + 1)}\n disabled={page === totalPages}\n >\n Next\n </Button>\n </div>\n </div>\n )}\n </CardContent>\n </Card>\n )}\n </div>\n );\n}","import { cva, type VariantProps } from \"class-variance-authority\";\nimport * as React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nconst badgeVariants = cva(\n \"inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2\",\n {\n variants: {\n variant: {\n default:\n \"border-transparent bg-primary text-primary-foreground hover:bg-primary/80\",\n secondary:\n \"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80\",\n destructive:\n \"border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80\",\n outline: \"text-foreground\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n },\n);\n\nexport interface BadgeProps\n extends React.HTMLAttributes<HTMLDivElement>,\n VariantProps<typeof badgeVariants> {}\n\nfunction Badge({ className, variant, ...props }: BadgeProps) {\n return (\n <div className={cn(badgeVariants({ variant }), className)} {...props} />\n );\n}\n\nexport { Badge, badgeVariants };\n","import * as React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nconst Card = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\n \"rounded-lg border bg-card text-card-foreground shadow-sm\",\n className,\n )}\n {...props}\n />\n));\nCard.displayName = \"Card\";\n\nconst CardHeader = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\"flex flex-col space-y-1.5 p-6\", className)}\n {...props}\n />\n));\nCardHeader.displayName = \"CardHeader\";\n\nconst CardTitle = React.forwardRef<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLHeadingElement>\n>(({ className, ...props }, ref) => (\n <h3\n ref={ref}\n className={cn(\n \"text-2xl font-semibold leading-none tracking-tight\",\n className,\n )}\n {...props}\n />\n));\nCardTitle.displayName = \"CardTitle\";\n\nconst CardDescription = React.forwardRef<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLParagraphElement>\n>(({ className, ...props }, ref) => (\n <p\n ref={ref}\n className={cn(\"text-sm text-muted-foreground\", className)}\n {...props}\n />\n));\nCardDescription.displayName = \"CardDescription\";\n\nconst CardContent = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div ref={ref} className={cn(\"p-6 pt-0\", className)} {...props} />\n));\nCardContent.displayName = \"CardContent\";\n\nconst CardFooter = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\"flex items-center p-6 pt-0\", className)}\n {...props}\n />\n));\nCardFooter.displayName = \"CardFooter\";\n\nexport {\n Card,\n CardHeader,\n CardFooter,\n CardTitle,\n CardDescription,\n CardContent,\n};\n","import { cn } from \"@/lib/utils\";\n\nexport const Loading = ({ className }: { className?: null | string }) => {\n return (\n <svg\n aria-hidden=\"true\"\n role=\"status\"\n className={cn(\"inline w-4 h-4 text-white animate-spin fill-inherit\", className)}\n viewBox=\"0 0 100 101\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z\"\n className=\"fill-inherit opacity-20\"\n ></path>\n <path\n d=\"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z\"\n className=\"fill-inherit\"\n ></path>\n </svg>\n );\n};\n","import * as React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nconst Table = React.forwardRef<\n HTMLTableElement,\n React.HTMLAttributes<HTMLTableElement>\n>(({ className, ...props }, ref) => (\n <div className=\"relative w-full overflow-auto\">\n <table\n ref={ref}\n className={cn(\"w-full caption-bottom text-sm\", className)}\n {...props}\n />\n </div>\n));\nTable.displayName = \"Table\";\n\nconst TableHeader = React.forwardRef<\n HTMLTableSectionElement,\n React.HTMLAttributes<HTMLTableSectionElement>\n>(({ className, ...props }, ref) => (\n <thead ref={ref} className={cn(\"[&_tr]:border-b\", className)} {...props} />\n));\nTableHeader.displayName = \"TableHeader\";\n\nconst TableBody = React.forwardRef<\n HTMLTableSectionElement,\n React.HTMLAttributes<HTMLTableSectionElement>\n>(({ className, ...props }, ref) => (\n <tbody\n ref={ref}\n className={cn(\"[&_tr:last-child]:border-0\", className)}\n {...props}\n />\n));\nTableBody.displayName = \"TableBody\";\n\nconst TableFooter = React.forwardRef<\n HTMLTableSectionElement,\n React.HTMLAttributes<HTMLTableSectionElement>\n>(({ className, ...props }, ref) => (\n <tfoot\n ref={ref}\n className={cn(\n \"border-t bg-muted/50 font-medium [&>tr]:last:border-b-0\",\n className,\n )}\n {...props}\n />\n));\nTableFooter.displayName = \"TableFooter\";\n\nconst TableRow = React.forwardRef<\n HTMLTableRowElement,\n React.HTMLAttributes<HTMLTableRowElement>\n>(({ className, ...props }, ref) => (\n <tr\n ref={ref}\n className={cn(\n \"border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted\",\n className,\n )}\n {...props}\n />\n));\nTableRow.displayName = \"TableRow\";\n\nconst TableHead = React.forwardRef<\n HTMLTableCellElement,\n React.ThHTMLAttributes<HTMLTableCellElement>\n>(({ className, ...props }, ref) => (\n <th\n ref={ref}\n className={cn(\n \"h-12 px-4 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0 [&:has([role=checkbox])]:w-[40px]\",\n className,\n )}\n {...props}\n />\n));\nTableHead.displayName = \"TableHead\";\n\nconst TableCell = React.forwardRef<\n HTMLTableCellElement,\n React.TdHTMLAttributes<HTMLTableCellElement>\n>(({ className, ...props }, ref) => (\n <td\n ref={ref}\n className={cn(\n \"p-4 align-middle [&:has([role=checkbox])]:pr-0 [&:has([role=checkbox])]:w-[40px]\",\n className,\n )}\n {...props}\n />\n));\nTableCell.displayName = \"TableCell\";\n\nconst TableCaption = React.forwardRef<\n HTMLTableCaptionElement,\n React.HTMLAttributes<HTMLTableCaptionElement>\n>(({ className, ...props }, ref) => (\n <caption\n ref={ref}\n className={cn(\"mt-4 text-sm text-muted-foreground\", className)}\n {...props}\n />\n));\nTableCaption.displayName = \"TableCaption\";\n\nexport {\n Table,\n TableHeader,\n TableBody,\n TableFooter,\n TableHead,\n TableRow,\n TableCell,\n TableCaption,\n};\n","import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name ArrowLeft\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJtMTIgMTktNy03IDctNyIgLz4KICA8cGF0aCBkPSJNMTkgMTJINSIgLz4KPC9zdmc+Cg==) - https://lucide.dev/icons/arrow-left\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst ArrowLeft = createLucideIcon('ArrowLeft', [\n ['path', { d: 'm12 19-7-7 7-7', key: '1l729n' }],\n ['path', { d: 'M19 12H5', key: 'x3x0zl' }],\n]);\n\nexport default ArrowLeft;\n","import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name Bot\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTIgOFY0SDgiIC8+CiAgPHJlY3Qgd2lkdGg9IjE2IiBoZWlnaHQ9IjEyIiB4PSI0IiB5PSI4IiByeD0iMiIgLz4KICA8cGF0aCBkPSJNMiAxNGgyIiAvPgogIDxwYXRoIGQ9Ik0yMCAxNGgyIiAvPgogIDxwYXRoIGQ9Ik0xNSAxM3YyIiAvPgogIDxwYXRoIGQ9Ik05IDEzdjIiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/bot\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Bot = createLucideIcon('Bot', [\n ['path', { d: 'M12 8V4H8', key: 'hb8ula' }],\n ['rect', { width: '16', height: '12', x: '4', y: '8', rx: '2', key: 'enze0r' }],\n ['path', { d: 'M2 14h2', key: 'vft8re' }],\n ['path', { d: 'M20 14h2', key: '4cs60a' }],\n ['path', { d: 'M15 13v2', key: '1xurst' }],\n ['path', { d: 'M9 13v2', key: 'rq6x2g' }],\n]);\n\nexport default Bot;\n","import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name Workflow\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cmVjdCB3aWR0aD0iOCIgaGVpZ2h0PSI4IiB4PSIzIiB5PSIzIiByeD0iMiIgLz4KICA8cGF0aCBkPSJNNyAxMXY0YTIgMiAwIDAgMCAyIDJoNCIgLz4KICA8cmVjdCB3aWR0aD0iOCIgaGVpZ2h0PSI4IiB4PSIxMyIgeT0iMTMiIHJ4PSIyIiAvPgo8L3N2Zz4K) - https://lucide.dev/icons/workflow\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Workflow = createLucideIcon('Workflow', [\n ['rect', { width: '8', height: '8', x: '3', y: '3', rx: '2', key: 'by2w9f' }],\n ['path', { d: 'M7 11v4a2 2 0 0 0 2 2h4', key: 'xkn7yn' }],\n ['rect', { width: '8', height: '8', x: '13', y: '13', rx: '2', key: '1cgmvn' }],\n]);\n\nexport default Workflow;\n","export * from \"../client/components/navigation\";\n\n//# sourceMappingURL=navigation.js.map"],"names":["Promise","resolve","then","__webpack_require__","bind","User","createLucideIcon","d","key","cx","cy","r","dynamic","VariableUsagePage","variableId","params","useParams","variable_id","page","setPage","useState","loading","variableLoading","error","variableError","data","variableData","useQuery","GET_VARIABLE_BY_ID","variables","id","skip","variable","variableById","usedBy","used_by","totalPages","Math","ceil","length","startIndex","endIndex","currentPageUsedBy","slice","resourcesInfo","setResourcesInfo","React","initialResources","forEach","resourceId","type","split","name","GET_USER_BY_ID","onCompleted","userById","prev","firstname","concat","lastname","trim","email","onError","GET_AGENT_BY_ID","agentById","getResourceIcon","jsx_runtime","jsx","className","Bot","Workflow","getResourceBadgeVariant","div","Loading","jsxs","h1","p","Link","href","Button","ArrowLeft","variant","size","Card","CardHeader","CardTitle","Badge","encrypted","CardDescription","Date","createdAt","toLocaleDateString","CardContent","span","h3","Table","TableHeader","TableRow","TableHead","TableBody","map","resource","TableCell","charAt","toUpperCase","min","onClick","disabled","badgeVariants","cva","variants","default","secondary","destructive","outline","defaultVariants","param","props","react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__","cn","ref","displayName","CardFooter","svg","aria-hidden","role","viewBox","fill","xmlns","path","table","thead","tbody","TableFooter","tfoot","tr","th","td","TableCaption","caption","width","height","x","y","rx"],"sourceRoot":""}
@@ -1,2 +1,2 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1929],{55786:function(e,t,l){Promise.resolve().then(l.bind(l,16719))},16719:function(e,t,l){"use strict";l.r(t),l.d(t,{default:function(){return O},dynamic:function(){return $}});var s=l(57437),n=l(2265),a=l(15868),r=l(42208),i=l(33276),o=l(18930),d=l(28842),c=l(62869),u=l(35974),m=l(27699),f=l(7598),x=l(7211),g=l(12199),h=l(27689),p=l(37099),v=l(95186),j=l(26815),b=l(77992);function N(e){let{workflowId:t}=e,{lastRunAt:l,lastRunStatus:n}=function(e){var t,l;let{data:s}=(0,x.aM)(h.Jq,{variables:{page:1,limit:1,filters:[{workflow:{eq:e}}],sort:{field:"createdAt",direction:"DESC"}},pollInterval:5e3}),n=null==s?void 0:null===(l=s.jobsPagination)||void 0===l?void 0:null===(t=l.items)||void 0===t?void 0:t[0];return{lastRunAt:null==n?void 0:n.createdAt,lastRunStatus:null==n?void 0:n.status}}(t);return l?(0,s.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,s.jsx)("div",{className:"text-sm",children:(0,f.Q)(new Date(l),{addSuffix:!0})}),(0,s.jsx)(u.C,{variant:"outline",className:(e=>{switch(e){case"completed":return"bg-green-100 text-green-800";case"failed":case"stuck":return"bg-red-100 text-red-800";case"active":case"waiting":case"delayed":case"paused":return"bg-blue-100 text-blue-800";default:return"bg-gray-100 text-gray-800"}})(n),children:n})]}):(0,s.jsx)("span",{className:"text-muted-foreground text-sm",children:"Never run"})}function w(e){var t;let{workflow:l,user:d}=e,[u,f]=(0,n.useState)(!1),[x,N]=(0,n.useState)(!1),[w,y]=(0,n.useState)(""),{toast:k}=(0,b.pm)(),C=(()=>{if(l.owner===d.id)return!0;if("public"===l.rights_mode)return!1;if("users"===l.rights_mode&&l.RBAC.users){let e=l.RBAC.users.find(e=>e.id===d.id.toString());return(null==e?void 0:e.rights)==="write"}if("roles"===l.rights_mode&&l.RBAC.roles&&d.role){let e=l.RBAC.roles.find(e=>e.id===d.role);return(null==e?void 0:e.rights)==="write"}return!1})(),[R]=(0,g.D)(h.$6,{refetchQueries:[h.Zy,"GetWorkflowTemplates"]}),P=async()=>{if(w!==l.name){k({title:"Error",description:"Please type the workflow name exactly to confirm deletion.",variant:"destructive"});return}try{await R({variables:{id:l.id}}),k({title:"Workflow deleted",description:'"'.concat(l.name,'" has been successfully deleted.')}),N(!1),y("")}catch(e){k({title:"Error",description:"Failed to delete the workflow. Please try again.",variant:"destructive"})}},S=(null===(t=l.steps_json)||void 0===t?void 0:t.map((e,t)=>({id:e.id||"msg_".concat(t),role:"user"===e.type?"user":"assistant"===e.type?"assistant":"system",content:e.content||e.contentExample||"Tool: ".concat(e.toolName),..."tool"===e.type&&{parts:[{type:"tool-invocation",toolInvocation:{toolName:e.toolName}}]}})))||[];return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)(c.z,{variant:"ghost",size:"sm",onClick:()=>f(!0),children:C?(0,s.jsx)(a.Z,{className:"h-4 w-4"}):(0,s.jsx)(r.Z,{className:"h-4 w-4"})}),(0,s.jsx)(c.z,{variant:"ghost",size:"sm",onClick:()=>{console.log("Run workflow:",l.id)},children:(0,s.jsx)(i.Z,{className:"h-4 w-4"})}),C&&(0,s.jsx)(c.z,{variant:"ghost",size:"sm",onClick:()=>N(!0),className:"text-red-600 hover:text-red-700 hover:bg-red-50",children:(0,s.jsx)(o.Z,{className:"h-4 w-4"})})]}),(0,s.jsx)(m.x,{isOpen:u,onClose:()=>f(!1),messages:S,sessionTitle:l.name,existingWorkflow:{id:l.id,name:l.name,description:l.description,rights_mode:l.rights_mode,RBAC:l.RBAC,variables:l.variables,steps_json:l.steps_json},isReadOnly:!C}),(0,s.jsx)(p.aR,{open:x,onOpenChange:N,children:(0,s.jsxs)(p._T,{children:[(0,s.jsxs)(p.fY,{children:[(0,s.jsx)(p.f$,{children:"Delete Workflow"}),(0,s.jsxs)(p.yT,{children:['This action will permanently delete the workflow "',l.name,'" and cannot be undone.',(0,s.jsx)("br",{}),(0,s.jsx)("br",{}),"To confirm, please type the workflow name below:"]})]}),(0,s.jsxs)("div",{className:"py-4",children:[(0,s.jsx)(j._,{htmlFor:"delete-confirmation",className:"text-sm font-medium",children:"Workflow name"}),(0,s.jsx)(v.I,{id:"delete-confirmation",value:w,onChange:e=>y(e.target.value),placeholder:l.name,className:"mt-2"})]}),(0,s.jsxs)(p.xo,{children:[(0,s.jsx)(c.z,{variant:"outline",onClick:()=>{N(!1),y("")},children:"Cancel"}),(0,s.jsx)(c.z,{variant:"destructive",onClick:P,disabled:w!==l.name,children:"Delete Workflow"})]})]})})]})}var y=l(20653),k=l(71594),C=l(24525),R=l(70085),P=l(84190);function S(e){let{table:t}=e;return(0,s.jsxs)(P.h_,{children:[(0,s.jsx)(R.$F,{asChild:!0,children:(0,s.jsxs)(c.z,{variant:"outline",size:"sm",className:"ml-auto hidden h-8 lg:flex",children:[(0,s.jsx)(y.hsZ,{className:"mr-2 size-4"}),"View"]})}),(0,s.jsxs)(P.AW,{align:"end",className:"w-[150px]",children:[(0,s.jsx)(P.Ju,{children:"Toggle columns"}),(0,s.jsx)(P.VD,{}),t.getAllColumns().filter(e=>void 0!==e.accessorFn&&e.getCanHide()).map(e=>(0,s.jsx)(P.bO,{className:"capitalize",checked:e.getIsVisible(),onCheckedChange:t=>e.toggleVisibility(!!t),children:e.id},e.id))]})]})}var _=l(10492),z=l(93022),I=l(73578);function Z(e){var t,l,a,r,i,d,u,m,f,p,j,N,w,R,P,Z,A,T,D,F;let M,V,{columns:E}=e,{toast:$}=(0,b.pm)(),[O,W]=n.useState({}),[G,B]=n.useState({}),[Y,J]=n.useState([]),[H,L]=(0,n.useState)([]),[U,q]=(0,n.useState)(1),[Q,K]=n.useState([]),{loading:X,error:ee,data:et,refetch:el,previousData:es}=(0,x.aM)(h.Zy,{fetchPolicy:"no-cache",nextFetchPolicy:"network-only",variables:{page:U,limit:10,filters:H},pollInterval:3e4}),en=n.useMemo(()=>[],[]),{limit:ea,onPaginationChange:er,skip:ei,pagination:eo}=function(){let[e,t]=(0,n.useState)({pageSize:10,pageIndex:0}),{pageSize:l,pageIndex:s}=e;return{limit:l,onPaginationChange:t,pagination:e,skip:l*s}}(),[ed,ec]=(0,g.D)(h.$6,{refetchQueries:[h.Zy,"GetWorkflowTemplates"]});X&&(null==es?void 0:null===(t=es.workflow_templatesPagination)||void 0===t?void 0:t.items)?(M=null==es?void 0:null===(j=es.workflow_templatesPagination)||void 0===j?void 0:j.items,V=null==es?void 0:null===(w=es.workflow_templatesPagination)||void 0===w?void 0:null===(N=w.pageInfo)||void 0===N?void 0:N.pageCount):(null==et?void 0:null===(l=et.workflow_templatesPagination)||void 0===l?void 0:l.items)?(M=null==et?void 0:null===(R=et.workflow_templatesPagination)||void 0===R?void 0:R.items,V=null==et?void 0:null===(Z=et.workflow_templatesPagination)||void 0===Z?void 0:null===(P=Z.pageInfo)||void 0===P?void 0:P.pageCount):(null==es?void 0:null===(a=es.workflow_templatesPagination)||void 0===a?void 0:a.items)&&(M=null==es?void 0:null===(A=es.workflow_templatesPagination)||void 0===A?void 0:A.items,V=null==es?void 0:null===(D=es.workflow_templatesPagination)||void 0===D?void 0:null===(T=D.pageInfo)||void 0===T?void 0:T.pageCount);let eu=(0,k.b7)({data:null!=M?M:en,pageCount:null!=V?V:-1,columns:E,state:{sorting:Q,columnVisibility:G,rowSelection:O,columnFilters:Y},enableRowSelection:!0,onRowSelectionChange:W,onSortingChange:K,onColumnFiltersChange:J,onColumnVisibilityChange:B,getCoreRowModel:(0,C.sC)(),getFilteredRowModel:(0,C.vL)(),getPaginationRowModel:(0,C.G_)(),getSortedRowModel:(0,C.tj)(),getFacetedRowModel:(0,C.o6)(),getFacetedUniqueValues:(0,C.JG)(),manualPagination:!0,onPaginationChange:er}),em=e=>{let t=[...H],l=t.find(e=>e.name);(null==l?void 0:l.name)?l.name.contains=e:t.push({name:{contains:e}}),L(t),el()},ef=H.length>0;return(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsxs)("div",{className:"flex flex-1 items-center space-x-2",children:[(0,s.jsx)(v.I,{placeholder:"Search workflows...",value:null!==(F=null==H?void 0:null===(i=H.find(e=>e.name))||void 0===i?void 0:null===(r=i.name)||void 0===r?void 0:r.contains)&&void 0!==F?F:"",onChange:e=>{em(e.target.value)},className:"w-[150px] lg:w-[250px]"}),eu.getIsSomeRowsSelected()||eu.getIsAllRowsSelected()?(0,s.jsx)("div",{className:"flex gap-x-2",children:(0,s.jsxs)(c.z,{onClick:()=>{let e=[];eu.getSelectedRowModel().rows.forEach(t=>{e.push(ed({variables:{id:t.original.id}}))}),Promise.all(e).then(()=>{eu.resetRowSelection(),$({title:"Workflows deleted",description:"Successfully deleted "+e.length+" workflow(s)."})}).catch(()=>{$({title:"Error",description:"Failed to delete some workflows. Please try again.",variant:"destructive"})})},variant:"secondary",disabled:ec.loading,children:[ec.loading?(0,s.jsx)(_.g,{}):(0,s.jsx)(o.Z,{className:"size-4"}),(0,s.jsx)("span",{className:"ml-2",children:"Delete selected"})]})}):null,ef&&(0,s.jsxs)(c.z,{variant:"ghost",onClick:()=>{let e=[...H],t=e.find(e=>e.name);t&&e.splice(e.indexOf(t),1),L(e),el()},children:["Reset",(0,s.jsx)(y.Pxu,{className:"ml-2 size-4"})]})]}),(0,s.jsx)(S,{table:eu})]}),(0,s.jsx)("div",{className:"rounded-md border",children:(0,s.jsxs)(I.iA,{children:[(0,s.jsx)(I.xD,{children:eu.getHeaderGroups().map(e=>(0,s.jsx)(I.SC,{children:e.headers.map(e=>(0,s.jsx)(I.ss,{colSpan:e.colSpan,children:e.isPlaceholder?null:(0,k.ie)(e.column.columnDef.header,e.getContext())},e.id))},e.id))}),(0,s.jsx)(I.RM,{children:(null===(d=eu.getRowModel().rows)||void 0===d?void 0:d.length)?eu.getRowModel().rows.map(e=>(0,s.jsx)(I.SC,{"data-state":e.getIsSelected()&&"selected",children:e.getVisibleCells().map(e=>(0,s.jsx)(I.pj,{children:(0,k.ie)(e.column.columnDef.cell,e.getContext())},e.id))},e.id)):X&&!es?Array.from({length:5}).map((e,t)=>(0,s.jsx)(I.SC,{children:E.map((e,t)=>(0,s.jsx)(I.pj,{children:(0,s.jsx)(z.O,{className:"h-4 w-full"})},t))},t)):(0,s.jsx)(I.SC,{children:(0,s.jsx)(I.pj,{colSpan:E.length,className:"h-24 text-center",children:"No workflows found."})})})]})}),(0,s.jsxs)("div",{className:"flex items-center justify-between px-2",children:[(0,s.jsxs)("div",{className:"text-muted-foreground flex-1 text-sm",children:[eu.getFilteredSelectedRowModel().rows.length," of"," ",eu.getFilteredRowModel().rows.length," row(s) selected."]}),(0,s.jsxs)("div",{className:"flex items-center space-x-6 lg:space-x-8",children:[(0,s.jsxs)("div",{className:"flex w-[100px] items-center justify-center text-sm font-medium",children:["Page ",U," of ",eu.getPageCount()]}),(0,s.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,s.jsxs)(c.z,{variant:"outline",className:"hidden size-8 p-0 lg:flex",onClick:()=>{eu.setPageIndex(0),q(1),el()},disabled:!(null==et?void 0:null===(u=et.workflow_templatesPagination)||void 0===u?void 0:u.pageInfo.hasPreviousPage),children:[(0,s.jsx)("span",{className:"sr-only",children:"Go to first page"}),(0,s.jsx)(y.kRt,{className:"size-4"})]}),(0,s.jsxs)(c.z,{variant:"outline",className:"size-8 p-0",onClick:()=>{eu.previousPage(),q(U-1),el()},disabled:!(null==et?void 0:null===(m=et.workflow_templatesPagination)||void 0===m?void 0:m.pageInfo.hasPreviousPage),children:[(0,s.jsx)("span",{className:"sr-only",children:"Go to previous page"}),(0,s.jsx)(y.wyc,{className:"size-4"})]}),(0,s.jsxs)(c.z,{variant:"outline",className:"size-8 p-0",onClick:()=>{eu.nextPage(),q(U+1),el()},disabled:!(null==et?void 0:null===(f=et.workflow_templatesPagination)||void 0===f?void 0:f.pageInfo.hasNextPage),children:[(0,s.jsx)("span",{className:"sr-only",children:"Go to next page"}),(0,s.jsx)(y.XCv,{className:"size-4"})]}),(0,s.jsxs)(c.z,{variant:"outline",className:"hidden size-8 p-0 lg:flex",onClick:()=>{eu.setPageIndex(eu.getPageCount()-1),q(eu.getPageCount()),el()},disabled:!(null==et?void 0:null===(p=et.workflow_templatesPagination)||void 0===p?void 0:p.pageInfo.hasNextPage),children:[(0,s.jsx)("span",{className:"sr-only",children:"Go to last page"}),(0,s.jsx)(y.yr4,{className:"size-4"})]})]})]})]})]})}var A=l(91723),T=l(63639),D=l(65302),F=l(45131),M=l(66070);function V(){let{data:e,loading:t,error:l}=(0,x.aM)(h.kk,{variables:{},pollInterval:2e3,fetchPolicy:"network-only"});if(l)return console.error("Error fetching job statistics:",l),null;let n=(null==e?void 0:e.jobStatistics)||{runningCount:0,erroredCount:0,completedCount:0,failedCount:0,averageDuration:0},a=[{title:"Running Jobs",value:n.runningCount,description:"Currently executing",icon:A.Z,color:"text-blue-600",bgColor:"bg-blue-100"},{title:"Errored Jobs",value:n.erroredCount,description:"Failed or stuck",icon:T.Z,color:"text-red-600",bgColor:"bg-red-100"},{title:"Completed Jobs",value:n.completedCount,description:"Successfully finished",icon:D.Z,color:"text-green-600",bgColor:"bg-green-100"},{title:"Failed Jobs",value:n.failedCount,description:"Execution failed",icon:F.Z,color:"text-red-500",bgColor:"bg-red-50"}];return(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsx)("div",{className:"grid gap-4 md:grid-cols-2 lg:grid-cols-4",children:a.map(e=>{let l=e.icon;return(0,s.jsxs)(M.Zb,{children:[(0,s.jsxs)(M.Ol,{className:"flex flex-row items-center justify-between space-y-0 pb-2",children:[(0,s.jsx)(M.ll,{className:"text-sm font-medium",children:e.title}),(0,s.jsx)("div",{className:"p-2 rounded-full ".concat(e.bgColor),children:(0,s.jsx)(l,{className:"h-4 w-4 ".concat(e.color)})})]}),(0,s.jsxs)(M.aY,{children:[(0,s.jsx)("div",{className:"text-2xl font-bold",children:t?"...":e.value}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground",children:e.description})]})]},e.title)})}),n.completedCount>0&&(0,s.jsxs)(M.Zb,{children:[(0,s.jsx)(M.Ol,{children:(0,s.jsx)(M.ll,{className:"text-sm font-medium",children:"Performance"})}),(0,s.jsx)(M.aY,{children:(0,s.jsxs)("div",{className:"text-sm text-muted-foreground",children:["Average execution time: ",(0,s.jsx)("span",{className:"font-medium text-foreground",children:t?"...":"".concat(Math.round(n.averageDuration)," seconds")})]})})]})]})}var E=l(13832);let $="force-dynamic";function O(){let{user:e}=(0,n.useContext)(E.S),t=[{accessorKey:"name",header:e=>{let{column:t}=e;return(0,s.jsxs)(c.z,{variant:"ghost",onClick:()=>t.toggleSorting("asc"===t.getIsSorted()),children:["Name",(0,s.jsx)(d.Z,{className:"ml-2 h-4 w-4"})]})},cell:e=>{let{row:t}=e,l=t.original;return(0,s.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,s.jsx)("div",{className:"font-medium",children:l.name}),l.description&&(0,s.jsx)("div",{className:"text-sm text-muted-foreground line-clamp-1",children:l.description})]})}},{accessorKey:"visibility",header:"Visibility",cell:e=>{let{row:t}=e,l=t.original.rights_mode||"private";return(0,s.jsx)(u.C,{variant:"outline",className:(e=>{switch(e){case"private":default:return"bg-gray-100 text-gray-800";case"public":return"bg-green-100 text-green-800";case"users":return"bg-blue-100 text-blue-800";case"roles":return"bg-purple-100 text-purple-800"}})(l),children:(e=>{switch(e){case"private":default:return"Private";case"public":return"Public";case"users":return"Users (".concat(t.original.RBAC.users.length,")");case"roles":return"Roles (".concat(t.original.RBAC.roles.length,")")}})(l)})}},{accessorKey:"createdAt",header:e=>{let{column:t}=e;return(0,s.jsxs)(c.z,{className:"p-0",variant:"ghost",onClick:()=>t.toggleSorting("asc"===t.getIsSorted()),children:["Created",(0,s.jsx)(d.Z,{className:"ml-2 h-4 w-4"})]})},cell:e=>{let{row:t}=e,l=t.getValue("createdAt");return(0,s.jsx)("div",{className:"text-sm",children:(0,f.Q)(new Date(l),{addSuffix:!0})})}},{id:"lastRun",header:"Last Run",cell:e=>{let{row:t}=e;return(0,s.jsx)(N,{workflowId:t.original.id})}},{id:"actions",header:"Actions",cell:t=>{let{row:l}=t;return(0,s.jsx)(w,{workflow:l.original,user:e})}}];return(0,s.jsx)(s.Fragment,{children:(0,s.jsxs)("div",{className:"hidden h-full flex-1 flex-col space-y-8 p-8 md:flex",children:[(0,s.jsx)("div",{className:"flex items-center justify-between space-y-2",children:(0,s.jsxs)("div",{children:[(0,s.jsx)("h2",{className:"text-2xl font-bold tracking-tight",children:"Workflows"}),(0,s.jsx)("p",{className:"text-muted-foreground",children:"Manage your workflow templates and monitor running jobs."})]})}),(0,s.jsx)(V,{}),(0,s.jsx)(Z,{columns:t})]})})}},53245:function(e,t,l){"use strict";l.d(t,{d:function(){return f},f:function(){return x}});var s=l(57437),n=l(62869),a=l(94508),r=l(30401),i=l(78867),o=l(2265),d=l(34996),c=l(1479),u=l(9880);let m=(0,o.createContext)({code:""}),f=e=>{let{code:t,language:l,showLineNumbers:n=!1,className:r,children:i,...o}=e;return(0,s.jsx)(m.Provider,{value:{code:t},children:(0,s.jsx)("div",{className:(0,a.cn)("relative w-full overflow-hidden rounded-md border bg-background text-foreground",r),...o,children:(0,s.jsxs)("div",{className:"relative",children:[(0,s.jsx)(d.Z,{className:"overflow-hidden dark:hidden",codeTagProps:{className:"font-mono text-sm"},customStyle:{margin:0,padding:"1rem",fontSize:"0.875rem",background:"hsl(var(--background))",color:"hsl(var(--foreground))"},language:l,lineNumberStyle:{color:"hsl(var(--muted-foreground))",paddingRight:"1rem",minWidth:"2.5rem"},showLineNumbers:n,style:c.Z,children:t}),(0,s.jsx)(d.Z,{className:"hidden overflow-hidden dark:block",codeTagProps:{className:"font-mono text-sm"},customStyle:{margin:0,padding:"1rem",fontSize:"0.875rem",background:"hsl(var(--background))",color:"hsl(var(--foreground))"},language:l,lineNumberStyle:{color:"hsl(var(--muted-foreground))",paddingRight:"1rem",minWidth:"2.5rem"},showLineNumbers:n,style:u.Z,children:t}),i&&(0,s.jsx)("div",{className:"absolute top-2 right-2 flex items-center gap-2",children:i})]})})})},x=e=>{let{onCopy:t,onError:l,timeout:d=2e3,children:c,className:u,...f}=e,[x,g]=(0,o.useState)(!1),{code:h}=(0,o.useContext)(m),p=async()=>{if(!navigator.clipboard.writeText){null==l||l(Error("Clipboard API not available"));return}try{await navigator.clipboard.writeText(h),g(!0),null==t||t(),setTimeout(()=>g(!1),d)}catch(e){null==l||l(e)}},v=x?r.Z:i.Z;return(0,s.jsx)(n.z,{className:(0,a.cn)("shrink-0",u),onClick:p,size:"icon",variant:"ghost",...f,children:null!=c?c:(0,s.jsx)(v,{size:14})})}},35629:function(e,t,l){"use strict";l.d(t,{H:function(){return f}});var s=l(57437),n=l(94508),a=l(2265),r=l(86816),i=l(67245),o=l(58146),d=l(85020),c=l(53245);l(2446);let u=(0,l(86589).Z)(r.UG),m={ol:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("ol",{className:(0,n.cn)("ml-4 list-outside list-decimal",a),...r,children:l})},li:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("li",{className:(0,n.cn)("py-1",a),...r,children:l})},ul:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("ul",{className:(0,n.cn)("ml-4 list-outside list-disc",a),...r,children:l})},hr:e=>{let{node:t,className:l,...a}=e;return(0,s.jsx)("hr",{className:(0,n.cn)("my-6 border-border",l),...a})},strong:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("span",{className:(0,n.cn)("font-semibold",a),...r,children:l})},a:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("a",{className:(0,n.cn)("font-medium text-primary underline",a),rel:"noreferrer",target:"_blank",...r,children:l})},h1:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("h1",{className:(0,n.cn)("mt-6 mb-2 font-semibold text-3xl",a),...r,children:l})},h2:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("h2",{className:(0,n.cn)("mt-6 mb-2 font-semibold text-2xl",a),...r,children:l})},h3:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("h3",{className:(0,n.cn)("mt-6 mb-2 font-semibold text-xl",a),...r,children:l})},h4:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("h4",{className:(0,n.cn)("mt-6 mb-2 font-semibold text-lg",a),...r,children:l})},h5:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("h5",{className:(0,n.cn)("mt-6 mb-2 font-semibold text-base",a),...r,children:l})},h6:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("h6",{className:(0,n.cn)("mt-6 mb-2 font-semibold text-sm",a),...r,children:l})},table:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("div",{className:"my-4 overflow-x-auto",children:(0,s.jsx)("table",{className:(0,n.cn)("w-full border-collapse border border-border",a),...r,children:l})})},thead:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("thead",{className:(0,n.cn)("bg-muted/50",a),...r,children:l})},tbody:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("tbody",{className:(0,n.cn)("divide-y divide-border",a),...r,children:l})},tr:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("tr",{className:(0,n.cn)("border-border border-b",a),...r,children:l})},th:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("th",{className:(0,n.cn)("px-4 py-2 text-left font-semibold text-sm",a),...r,children:l})},td:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("td",{className:(0,n.cn)("px-4 py-2 text-sm",a),...r,children:l})},blockquote:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("blockquote",{className:(0,n.cn)("my-4 border-muted-foreground/30 border-l-4 pl-4 text-muted-foreground italic",a),...r,children:l})},code:e=>{var t,l;let{node:a,className:r,...i}=e;return(null==a?void 0:null===(t=a.position)||void 0===t?void 0:t.start.line)!==(null==a?void 0:null===(l=a.position)||void 0===l?void 0:l.end.line)?(0,s.jsx)("code",{className:r,...i}):(0,s.jsx)("code",{className:(0,n.cn)("rounded bg-muted px-1.5 py-0.5 font-mono text-sm",r),...i})},pre:e=>{var t;let{node:l,className:r,children:i}=e,o="javascript";"string"==typeof(null==l?void 0:null===(t=l.properties)||void 0===t?void 0:t.className)&&(o=l.properties.className.replace("language-",""));let d="";return(0,a.isValidElement)(i)&&i.props&&"string"==typeof i.props.children?d=i.props.children:"string"==typeof i&&(d=i),(0,s.jsx)(c.d,{className:(0,n.cn)("my-4 h-auto",r),code:d,language:o,children:(0,s.jsx)(c.f,{onCopy:()=>console.log("Copied code to clipboard"),onError:()=>console.error("Failed to copy code to clipboard")})})}},f=(0,a.memo)(e=>{let{className:t,options:l,children:a,allowedImagePrefixes:r,allowedLinkPrefixes:c,defaultOrigin:f,parseIncompleteMarkdown:x=!0,...g}=e,h="string"==typeof a&&x?function(e){if(!e||"string"!=typeof e)return e;let t=e,l=t.match(/(!?\[)([^\]]*?)$/);if(l){let e=t.lastIndexOf(l[1]);t=t.substring(0,e)}if(t.match(/(\*\*)([^*]*?)$/)&&(t.match(/\*\*/g)||[]).length%2==1&&(t="".concat(t,"**")),t.match(/(__)([^_]*?)$/)&&(t.match(/__/g)||[]).length%2==1&&(t="".concat(t,"__")),t.match(/(\*)([^*]*?)$/)&&t.split("").reduce((e,l,s)=>{if("*"===l){let l=t[s-1],n=t[s+1];if("*"!==l&&"*"!==n)return e+1}return e},0)%2==1&&(t="".concat(t,"*")),t.match(/(_)([^_]*?)$/)&&t.split("").reduce((e,l,s)=>{if("_"===l){let l=t[s-1],n=t[s+1];if("_"!==l&&"_"!==n)return e+1}return e},0)%2==1&&(t="".concat(t,"_")),t.match(/(`)([^`]*?)$/)&&(t.includes("```"),(t.match(/```[\s\S]*?```/g)||[]).length,(t.match(/```/g)||[]).length%2!=1)){let e=0;for(let l=0;l<t.length;l++)if("`"===t[l]){let s="```"===t.substring(l,l+3),n=l>0&&"```"===t.substring(l-1,l+2),a=l>1&&"```"===t.substring(l-2,l+1);!(s||n||a)&&e++}e%2==1&&(t="".concat(t,"`"))}return t.match(/(~~)([^~]*?)$/)&&(t.match(/~~/g)||[]).length%2==1&&(t="".concat(t,"~~")),t}(a):a;return(0,s.jsx)("div",{className:(0,n.cn)("size-full [&>*:first-child]:mt-0 [&>*:last-child]:mb-0",t),...g,children:(0,s.jsx)(u,{allowedImagePrefixes:null!=r?r:["*"],allowedLinkPrefixes:null!=c?c:["*"],components:m,defaultOrigin:f,rehypePlugins:[i.Z],remarkPlugins:[o.Z,d.Z],...l,children:h})})},(e,t)=>e.children===t.children);f.displayName="Response"},37099:function(e,t,l){"use strict";l.d(t,{OL:function(){return h},_T:function(){return u},aR:function(){return o},f$:function(){return x},fY:function(){return m},le:function(){return p},xo:function(){return f},yT:function(){return g}});var s=l(57437),n=l(23619),a=l(2265),r=l(62869),i=l(94508);let o=n.fC;n.xz;let d=n.h_,c=a.forwardRef((e,t)=>{let{className:l,...a}=e;return(0,s.jsx)(n.aV,{className:(0,i.cn)("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",l),...a,ref:t})});c.displayName=n.aV.displayName;let u=a.forwardRef((e,t)=>{let{className:l,...a}=e;return(0,s.jsxs)(d,{children:[(0,s.jsx)(c,{}),(0,s.jsx)(n.VY,{ref:t,className:(0,i.cn)("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 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-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",l),...a})]})});u.displayName=n.VY.displayName;let m=e=>{let{className:t,...l}=e;return(0,s.jsx)("div",{className:(0,i.cn)("flex flex-col space-y-2 text-center sm:text-left",t),...l})};m.displayName="AlertDialogHeader";let f=e=>{let{className:t,...l}=e;return(0,s.jsx)("div",{className:(0,i.cn)("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",t),...l})};f.displayName="AlertDialogFooter";let x=a.forwardRef((e,t)=>{let{className:l,...a}=e;return(0,s.jsx)(n.Dx,{ref:t,className:(0,i.cn)("text-lg font-semibold",l),...a})});x.displayName=n.Dx.displayName;let g=a.forwardRef((e,t)=>{let{className:l,...a}=e;return(0,s.jsx)(n.dk,{ref:t,className:(0,i.cn)("text-sm text-muted-foreground",l),...a})});g.displayName=n.dk.displayName;let h=a.forwardRef((e,t)=>{let{className:l,...a}=e;return(0,s.jsx)(n.aU,{ref:t,className:(0,i.cn)((0,r.d)(),l),...a})});h.displayName=n.aU.displayName;let p=a.forwardRef((e,t)=>{let{className:l,...a}=e;return(0,s.jsx)(n.$j,{ref:t,className:(0,i.cn)((0,r.d)({variant:"outline"}),"mt-2 sm:mt-0",l),...a})});p.displayName=n.$j.displayName},73578:function(e,t,l){"use strict";l.d(t,{RM:function(){return o},Rn:function(){return m},SC:function(){return d},iA:function(){return r},pj:function(){return u},ss:function(){return c},xD:function(){return i}});var s=l(57437),n=l(2265),a=l(94508);let r=n.forwardRef((e,t)=>{let{className:l,...n}=e;return(0,s.jsx)("div",{className:"relative w-full overflow-auto",children:(0,s.jsx)("table",{ref:t,className:(0,a.cn)("w-full caption-bottom text-sm",l),...n})})});r.displayName="Table";let i=n.forwardRef((e,t)=>{let{className:l,...n}=e;return(0,s.jsx)("thead",{ref:t,className:(0,a.cn)("[&_tr]:border-b",l),...n})});i.displayName="TableHeader";let o=n.forwardRef((e,t)=>{let{className:l,...n}=e;return(0,s.jsx)("tbody",{ref:t,className:(0,a.cn)("[&_tr:last-child]:border-0",l),...n})});o.displayName="TableBody",n.forwardRef((e,t)=>{let{className:l,...n}=e;return(0,s.jsx)("tfoot",{ref:t,className:(0,a.cn)("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",l),...n})}).displayName="TableFooter";let d=n.forwardRef((e,t)=>{let{className:l,...n}=e;return(0,s.jsx)("tr",{ref:t,className:(0,a.cn)("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",l),...n})});d.displayName="TableRow";let c=n.forwardRef((e,t)=>{let{className:l,...n}=e;return(0,s.jsx)("th",{ref:t,className:(0,a.cn)("h-12 px-4 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0 [&:has([role=checkbox])]:w-[40px]",l),...n})});c.displayName="TableHead";let u=n.forwardRef((e,t)=>{let{className:l,...n}=e;return(0,s.jsx)("td",{ref:t,className:(0,a.cn)("p-4 align-middle [&:has([role=checkbox])]:pr-0 [&:has([role=checkbox])]:w-[40px]",l),...n})});u.displayName="TableCell";let m=n.forwardRef((e,t)=>{let{className:l,...n}=e;return(0,s.jsx)("caption",{ref:t,className:(0,a.cn)("mt-4 text-sm text-muted-foreground",l),...n})});m.displayName="TableCaption"},12339:function(e,t,l){"use strict";l.d(t,{SP:function(){return d},dr:function(){return o},mQ:function(){return i},nU:function(){return c}});var s=l(57437),n=l(20271),a=l(2265),r=l(94508);let i=n.fC,o=a.forwardRef((e,t)=>{let{className:l,...a}=e;return(0,s.jsx)(n.aV,{ref:t,className:(0,r.cn)("inline-flex h-10 items-center justify-center rounded-md bg-muted p-1 text-muted-foreground",l),...a})});o.displayName=n.aV.displayName;let d=a.forwardRef((e,t)=>{let{className:l,...a}=e;return(0,s.jsx)(n.xz,{ref:t,className:(0,r.cn)("inline-flex items-center justify-center whitespace-nowrap rounded-sm px-3 py-1.5 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm",l),...a})});d.displayName=n.xz.displayName;let c=a.forwardRef((e,t)=>{let{className:l,...a}=e;return(0,s.jsx)(n.VY,{ref:t,className:(0,r.cn)("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",l),...a})});c.displayName=n.VY.displayName}},function(e){e.O(0,[329,8310,3954,9851,7629,7093,6148,847,1942,7648,7823,8068,5799,4567,605,85,4957,7398,3825,1785,3702,3397,1594,9141,79,6373,3832,7907,7699,2971,2117,1744],function(){return e(e.s=55786)}),_N_E=e.O()}]);
2
- //# sourceMappingURL=page-feb479eaa043e041.js.map
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1929],{33329:function(e,t,l){Promise.resolve().then(l.bind(l,16719))},16719:function(e,t,l){"use strict";l.r(t),l.d(t,{default:function(){return O},dynamic:function(){return $}});var s=l(57437),n=l(2265),a=l(15868),r=l(42208),i=l(33276),o=l(18930),d=l(28842),c=l(62869),u=l(35974),m=l(27699),f=l(7598),x=l(7211),g=l(12199),h=l(27689),p=l(37099),v=l(95186),j=l(26815),b=l(77992);function N(e){let{workflowId:t}=e,{lastRunAt:l,lastRunStatus:n}=function(e){var t,l;let{data:s}=(0,x.aM)(h.Jq,{variables:{page:1,limit:1,filters:[{workflow:{eq:e}}],sort:{field:"createdAt",direction:"DESC"}},pollInterval:5e3}),n=null==s?void 0:null===(l=s.jobsPagination)||void 0===l?void 0:null===(t=l.items)||void 0===t?void 0:t[0];return{lastRunAt:null==n?void 0:n.createdAt,lastRunStatus:null==n?void 0:n.status}}(t);return l?(0,s.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,s.jsx)("div",{className:"text-sm",children:(0,f.Q)(new Date(l),{addSuffix:!0})}),(0,s.jsx)(u.C,{variant:"outline",className:(e=>{switch(e){case"completed":return"bg-green-100 text-green-800";case"failed":case"stuck":return"bg-red-100 text-red-800";case"active":case"waiting":case"delayed":case"paused":return"bg-blue-100 text-blue-800";default:return"bg-gray-100 text-gray-800"}})(n),children:n})]}):(0,s.jsx)("span",{className:"text-muted-foreground text-sm",children:"Never run"})}function w(e){var t;let{workflow:l,user:d}=e,[u,f]=(0,n.useState)(!1),[x,N]=(0,n.useState)(!1),[w,y]=(0,n.useState)(""),{toast:k}=(0,b.pm)(),C=(()=>{if(l.owner===d.id)return!0;if("public"===l.rights_mode)return!1;if("users"===l.rights_mode&&l.RBAC.users){let e=l.RBAC.users.find(e=>e.id===d.id.toString());return(null==e?void 0:e.rights)==="write"}if("roles"===l.rights_mode&&l.RBAC.roles&&d.role){let e=l.RBAC.roles.find(e=>e.id===d.role);return(null==e?void 0:e.rights)==="write"}return!1})(),[R]=(0,g.D)(h.$6,{refetchQueries:[h.Zy,"GetWorkflowTemplates"]}),P=async()=>{if(w!==l.name){k({title:"Error",description:"Please type the workflow name exactly to confirm deletion.",variant:"destructive"});return}try{await R({variables:{id:l.id}}),k({title:"Workflow deleted",description:'"'.concat(l.name,'" has been successfully deleted.')}),N(!1),y("")}catch(e){k({title:"Error",description:"Failed to delete the workflow. Please try again.",variant:"destructive"})}},S=(null===(t=l.steps_json)||void 0===t?void 0:t.map((e,t)=>({id:e.id||"msg_".concat(t),role:"user"===e.type?"user":"assistant"===e.type?"assistant":"system",content:e.content||e.contentExample||"Tool: ".concat(e.toolName),..."tool"===e.type&&{parts:[{type:"tool-invocation",toolInvocation:{toolName:e.toolName}}]}})))||[];return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)(c.z,{variant:"ghost",size:"sm",onClick:()=>f(!0),children:C?(0,s.jsx)(a.Z,{className:"h-4 w-4"}):(0,s.jsx)(r.Z,{className:"h-4 w-4"})}),(0,s.jsx)(c.z,{variant:"ghost",size:"sm",onClick:()=>{console.log("Run workflow:",l.id)},children:(0,s.jsx)(i.Z,{className:"h-4 w-4"})}),C&&(0,s.jsx)(c.z,{variant:"ghost",size:"sm",onClick:()=>N(!0),className:"text-red-600 hover:text-red-700 hover:bg-red-50",children:(0,s.jsx)(o.Z,{className:"h-4 w-4"})})]}),(0,s.jsx)(m.x,{isOpen:u,onClose:()=>f(!1),messages:S,sessionTitle:l.name,existingWorkflow:{id:l.id,name:l.name,description:l.description,rights_mode:l.rights_mode,RBAC:l.RBAC,variables:l.variables,steps_json:l.steps_json},isReadOnly:!C}),(0,s.jsx)(p.aR,{open:x,onOpenChange:N,children:(0,s.jsxs)(p._T,{children:[(0,s.jsxs)(p.fY,{children:[(0,s.jsx)(p.f$,{children:"Delete Workflow"}),(0,s.jsxs)(p.yT,{children:['This action will permanently delete the workflow "',l.name,'" and cannot be undone.',(0,s.jsx)("br",{}),(0,s.jsx)("br",{}),"To confirm, please type the workflow name below:"]})]}),(0,s.jsxs)("div",{className:"py-4",children:[(0,s.jsx)(j._,{htmlFor:"delete-confirmation",className:"text-sm font-medium",children:"Workflow name"}),(0,s.jsx)(v.I,{id:"delete-confirmation",value:w,onChange:e=>y(e.target.value),placeholder:l.name,className:"mt-2"})]}),(0,s.jsxs)(p.xo,{children:[(0,s.jsx)(c.z,{variant:"outline",onClick:()=>{N(!1),y("")},children:"Cancel"}),(0,s.jsx)(c.z,{variant:"destructive",onClick:P,disabled:w!==l.name,children:"Delete Workflow"})]})]})})]})}var y=l(20653),k=l(71594),C=l(24525),R=l(70085),P=l(84190);function S(e){let{table:t}=e;return(0,s.jsxs)(P.h_,{children:[(0,s.jsx)(R.$F,{asChild:!0,children:(0,s.jsxs)(c.z,{variant:"outline",size:"sm",className:"ml-auto hidden h-8 lg:flex",children:[(0,s.jsx)(y.hsZ,{className:"mr-2 size-4"}),"View"]})}),(0,s.jsxs)(P.AW,{align:"end",className:"w-[150px]",children:[(0,s.jsx)(P.Ju,{children:"Toggle columns"}),(0,s.jsx)(P.VD,{}),t.getAllColumns().filter(e=>void 0!==e.accessorFn&&e.getCanHide()).map(e=>(0,s.jsx)(P.bO,{className:"capitalize",checked:e.getIsVisible(),onCheckedChange:t=>e.toggleVisibility(!!t),children:e.id},e.id))]})]})}var _=l(10492),z=l(93022),I=l(73578);function Z(e){var t,l,a,r,i,d,u,m,f,p,j,N,w,R,P,Z,A,T,D,F;let M,V,{columns:E}=e,{toast:$}=(0,b.pm)(),[O,W]=n.useState({}),[G,B]=n.useState({}),[Y,J]=n.useState([]),[H,L]=(0,n.useState)([]),[U,q]=(0,n.useState)(1),[Q,K]=n.useState([]),{loading:X,error:ee,data:et,refetch:el,previousData:es}=(0,x.aM)(h.Zy,{fetchPolicy:"no-cache",nextFetchPolicy:"network-only",variables:{page:U,limit:10,filters:H},pollInterval:3e4}),en=n.useMemo(()=>[],[]),{limit:ea,onPaginationChange:er,skip:ei,pagination:eo}=function(){let[e,t]=(0,n.useState)({pageSize:10,pageIndex:0}),{pageSize:l,pageIndex:s}=e;return{limit:l,onPaginationChange:t,pagination:e,skip:l*s}}(),[ed,ec]=(0,g.D)(h.$6,{refetchQueries:[h.Zy,"GetWorkflowTemplates"]});X&&(null==es?void 0:null===(t=es.workflow_templatesPagination)||void 0===t?void 0:t.items)?(M=null==es?void 0:null===(j=es.workflow_templatesPagination)||void 0===j?void 0:j.items,V=null==es?void 0:null===(w=es.workflow_templatesPagination)||void 0===w?void 0:null===(N=w.pageInfo)||void 0===N?void 0:N.pageCount):(null==et?void 0:null===(l=et.workflow_templatesPagination)||void 0===l?void 0:l.items)?(M=null==et?void 0:null===(R=et.workflow_templatesPagination)||void 0===R?void 0:R.items,V=null==et?void 0:null===(Z=et.workflow_templatesPagination)||void 0===Z?void 0:null===(P=Z.pageInfo)||void 0===P?void 0:P.pageCount):(null==es?void 0:null===(a=es.workflow_templatesPagination)||void 0===a?void 0:a.items)&&(M=null==es?void 0:null===(A=es.workflow_templatesPagination)||void 0===A?void 0:A.items,V=null==es?void 0:null===(D=es.workflow_templatesPagination)||void 0===D?void 0:null===(T=D.pageInfo)||void 0===T?void 0:T.pageCount);let eu=(0,k.b7)({data:null!=M?M:en,pageCount:null!=V?V:-1,columns:E,state:{sorting:Q,columnVisibility:G,rowSelection:O,columnFilters:Y},enableRowSelection:!0,onRowSelectionChange:W,onSortingChange:K,onColumnFiltersChange:J,onColumnVisibilityChange:B,getCoreRowModel:(0,C.sC)(),getFilteredRowModel:(0,C.vL)(),getPaginationRowModel:(0,C.G_)(),getSortedRowModel:(0,C.tj)(),getFacetedRowModel:(0,C.o6)(),getFacetedUniqueValues:(0,C.JG)(),manualPagination:!0,onPaginationChange:er}),em=e=>{let t=[...H],l=t.find(e=>e.name);(null==l?void 0:l.name)?l.name.contains=e:t.push({name:{contains:e}}),L(t),el()},ef=H.length>0;return(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsxs)("div",{className:"flex flex-1 items-center space-x-2",children:[(0,s.jsx)(v.I,{placeholder:"Search workflows...",value:null!==(F=null==H?void 0:null===(i=H.find(e=>e.name))||void 0===i?void 0:null===(r=i.name)||void 0===r?void 0:r.contains)&&void 0!==F?F:"",onChange:e=>{em(e.target.value)},className:"w-[150px] lg:w-[250px]"}),eu.getIsSomeRowsSelected()||eu.getIsAllRowsSelected()?(0,s.jsx)("div",{className:"flex gap-x-2",children:(0,s.jsxs)(c.z,{onClick:()=>{let e=[];eu.getSelectedRowModel().rows.forEach(t=>{e.push(ed({variables:{id:t.original.id}}))}),Promise.all(e).then(()=>{eu.resetRowSelection(),$({title:"Workflows deleted",description:"Successfully deleted "+e.length+" workflow(s)."})}).catch(()=>{$({title:"Error",description:"Failed to delete some workflows. Please try again.",variant:"destructive"})})},variant:"secondary",disabled:ec.loading,children:[ec.loading?(0,s.jsx)(_.g,{}):(0,s.jsx)(o.Z,{className:"size-4"}),(0,s.jsx)("span",{className:"ml-2",children:"Delete selected"})]})}):null,ef&&(0,s.jsxs)(c.z,{variant:"ghost",onClick:()=>{let e=[...H],t=e.find(e=>e.name);t&&e.splice(e.indexOf(t),1),L(e),el()},children:["Reset",(0,s.jsx)(y.Pxu,{className:"ml-2 size-4"})]})]}),(0,s.jsx)(S,{table:eu})]}),(0,s.jsx)("div",{className:"rounded-md border",children:(0,s.jsxs)(I.iA,{children:[(0,s.jsx)(I.xD,{children:eu.getHeaderGroups().map(e=>(0,s.jsx)(I.SC,{children:e.headers.map(e=>(0,s.jsx)(I.ss,{colSpan:e.colSpan,children:e.isPlaceholder?null:(0,k.ie)(e.column.columnDef.header,e.getContext())},e.id))},e.id))}),(0,s.jsx)(I.RM,{children:(null===(d=eu.getRowModel().rows)||void 0===d?void 0:d.length)?eu.getRowModel().rows.map(e=>(0,s.jsx)(I.SC,{"data-state":e.getIsSelected()&&"selected",children:e.getVisibleCells().map(e=>(0,s.jsx)(I.pj,{children:(0,k.ie)(e.column.columnDef.cell,e.getContext())},e.id))},e.id)):X&&!es?Array.from({length:5}).map((e,t)=>(0,s.jsx)(I.SC,{children:E.map((e,t)=>(0,s.jsx)(I.pj,{children:(0,s.jsx)(z.O,{className:"h-4 w-full"})},t))},t)):(0,s.jsx)(I.SC,{children:(0,s.jsx)(I.pj,{colSpan:E.length,className:"h-24 text-center",children:"No workflows found."})})})]})}),(0,s.jsxs)("div",{className:"flex items-center justify-between px-2",children:[(0,s.jsxs)("div",{className:"text-muted-foreground flex-1 text-sm",children:[eu.getFilteredSelectedRowModel().rows.length," of"," ",eu.getFilteredRowModel().rows.length," row(s) selected."]}),(0,s.jsxs)("div",{className:"flex items-center space-x-6 lg:space-x-8",children:[(0,s.jsxs)("div",{className:"flex w-[100px] items-center justify-center text-sm font-medium",children:["Page ",U," of ",eu.getPageCount()]}),(0,s.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,s.jsxs)(c.z,{variant:"outline",className:"hidden size-8 p-0 lg:flex",onClick:()=>{eu.setPageIndex(0),q(1),el()},disabled:!(null==et?void 0:null===(u=et.workflow_templatesPagination)||void 0===u?void 0:u.pageInfo.hasPreviousPage),children:[(0,s.jsx)("span",{className:"sr-only",children:"Go to first page"}),(0,s.jsx)(y.kRt,{className:"size-4"})]}),(0,s.jsxs)(c.z,{variant:"outline",className:"size-8 p-0",onClick:()=>{eu.previousPage(),q(U-1),el()},disabled:!(null==et?void 0:null===(m=et.workflow_templatesPagination)||void 0===m?void 0:m.pageInfo.hasPreviousPage),children:[(0,s.jsx)("span",{className:"sr-only",children:"Go to previous page"}),(0,s.jsx)(y.wyc,{className:"size-4"})]}),(0,s.jsxs)(c.z,{variant:"outline",className:"size-8 p-0",onClick:()=>{eu.nextPage(),q(U+1),el()},disabled:!(null==et?void 0:null===(f=et.workflow_templatesPagination)||void 0===f?void 0:f.pageInfo.hasNextPage),children:[(0,s.jsx)("span",{className:"sr-only",children:"Go to next page"}),(0,s.jsx)(y.XCv,{className:"size-4"})]}),(0,s.jsxs)(c.z,{variant:"outline",className:"hidden size-8 p-0 lg:flex",onClick:()=>{eu.setPageIndex(eu.getPageCount()-1),q(eu.getPageCount()),el()},disabled:!(null==et?void 0:null===(p=et.workflow_templatesPagination)||void 0===p?void 0:p.pageInfo.hasNextPage),children:[(0,s.jsx)("span",{className:"sr-only",children:"Go to last page"}),(0,s.jsx)(y.yr4,{className:"size-4"})]})]})]})]})]})}var A=l(91723),T=l(63639),D=l(65302),F=l(45131),M=l(66070);function V(){let{data:e,loading:t,error:l}=(0,x.aM)(h.kk,{variables:{},pollInterval:2e3,fetchPolicy:"network-only"});if(l)return console.error("Error fetching job statistics:",l),null;let n=(null==e?void 0:e.jobStatistics)||{runningCount:0,erroredCount:0,completedCount:0,failedCount:0,averageDuration:0},a=[{title:"Running Jobs",value:n.runningCount,description:"Currently executing",icon:A.Z,color:"text-blue-600",bgColor:"bg-blue-100"},{title:"Errored Jobs",value:n.erroredCount,description:"Failed or stuck",icon:T.Z,color:"text-red-600",bgColor:"bg-red-100"},{title:"Completed Jobs",value:n.completedCount,description:"Successfully finished",icon:D.Z,color:"text-green-600",bgColor:"bg-green-100"},{title:"Failed Jobs",value:n.failedCount,description:"Execution failed",icon:F.Z,color:"text-red-500",bgColor:"bg-red-50"}];return(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsx)("div",{className:"grid gap-4 md:grid-cols-2 lg:grid-cols-4",children:a.map(e=>{let l=e.icon;return(0,s.jsxs)(M.Zb,{children:[(0,s.jsxs)(M.Ol,{className:"flex flex-row items-center justify-between space-y-0 pb-2",children:[(0,s.jsx)(M.ll,{className:"text-sm font-medium",children:e.title}),(0,s.jsx)("div",{className:"p-2 rounded-full ".concat(e.bgColor),children:(0,s.jsx)(l,{className:"h-4 w-4 ".concat(e.color)})})]}),(0,s.jsxs)(M.aY,{children:[(0,s.jsx)("div",{className:"text-2xl font-bold",children:t?"...":e.value}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground",children:e.description})]})]},e.title)})}),n.completedCount>0&&(0,s.jsxs)(M.Zb,{children:[(0,s.jsx)(M.Ol,{children:(0,s.jsx)(M.ll,{className:"text-sm font-medium",children:"Performance"})}),(0,s.jsx)(M.aY,{children:(0,s.jsxs)("div",{className:"text-sm text-muted-foreground",children:["Average execution time: ",(0,s.jsx)("span",{className:"font-medium text-foreground",children:t?"...":"".concat(Math.round(n.averageDuration)," seconds")})]})})]})]})}var E=l(13832);let $="force-dynamic";function O(){let{user:e}=(0,n.useContext)(E.S),t=[{accessorKey:"name",header:e=>{let{column:t}=e;return(0,s.jsxs)(c.z,{variant:"ghost",onClick:()=>t.toggleSorting("asc"===t.getIsSorted()),children:["Name",(0,s.jsx)(d.Z,{className:"ml-2 h-4 w-4"})]})},cell:e=>{let{row:t}=e,l=t.original;return(0,s.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,s.jsx)("div",{className:"font-medium",children:l.name}),l.description&&(0,s.jsx)("div",{className:"text-sm text-muted-foreground line-clamp-1",children:l.description})]})}},{accessorKey:"visibility",header:"Visibility",cell:e=>{let{row:t}=e,l=t.original.rights_mode||"private";return(0,s.jsx)(u.C,{variant:"outline",className:(e=>{switch(e){case"private":default:return"bg-gray-100 text-gray-800";case"public":return"bg-green-100 text-green-800";case"users":return"bg-blue-100 text-blue-800";case"roles":return"bg-purple-100 text-purple-800"}})(l),children:(e=>{switch(e){case"private":default:return"Private";case"public":return"Public";case"users":return"Users (".concat(t.original.RBAC.users.length,")");case"roles":return"Roles (".concat(t.original.RBAC.roles.length,")")}})(l)})}},{accessorKey:"createdAt",header:e=>{let{column:t}=e;return(0,s.jsxs)(c.z,{className:"p-0",variant:"ghost",onClick:()=>t.toggleSorting("asc"===t.getIsSorted()),children:["Created",(0,s.jsx)(d.Z,{className:"ml-2 h-4 w-4"})]})},cell:e=>{let{row:t}=e,l=t.getValue("createdAt");return(0,s.jsx)("div",{className:"text-sm",children:(0,f.Q)(new Date(l),{addSuffix:!0})})}},{id:"lastRun",header:"Last Run",cell:e=>{let{row:t}=e;return(0,s.jsx)(N,{workflowId:t.original.id})}},{id:"actions",header:"Actions",cell:t=>{let{row:l}=t;return(0,s.jsx)(w,{workflow:l.original,user:e})}}];return(0,s.jsx)(s.Fragment,{children:(0,s.jsxs)("div",{className:"hidden h-full flex-1 flex-col space-y-8 p-8 md:flex",children:[(0,s.jsx)("div",{className:"flex items-center justify-between space-y-2",children:(0,s.jsxs)("div",{children:[(0,s.jsx)("h2",{className:"text-2xl font-bold tracking-tight",children:"Workflows"}),(0,s.jsx)("p",{className:"text-muted-foreground",children:"Manage your workflow templates and monitor running jobs."})]})}),(0,s.jsx)(V,{}),(0,s.jsx)(Z,{columns:t})]})})}},53245:function(e,t,l){"use strict";l.d(t,{d:function(){return f},f:function(){return x}});var s=l(57437),n=l(62869),a=l(94508),r=l(30401),i=l(78867),o=l(2265),d=l(34996),c=l(1479),u=l(9880);let m=(0,o.createContext)({code:""}),f=e=>{let{code:t,language:l,showLineNumbers:n=!1,className:r,children:i,...o}=e;return(0,s.jsx)(m.Provider,{value:{code:t},children:(0,s.jsx)("div",{className:(0,a.cn)("relative w-full overflow-hidden rounded-md border bg-background text-foreground",r),...o,children:(0,s.jsxs)("div",{className:"relative",children:[(0,s.jsx)(d.Z,{className:"overflow-hidden dark:hidden",codeTagProps:{className:"font-mono text-sm"},customStyle:{margin:0,padding:"1rem",fontSize:"0.875rem",background:"hsl(var(--background))",color:"hsl(var(--foreground))"},language:l,lineNumberStyle:{color:"hsl(var(--muted-foreground))",paddingRight:"1rem",minWidth:"2.5rem"},showLineNumbers:n,style:c.Z,children:t}),(0,s.jsx)(d.Z,{className:"hidden overflow-hidden dark:block",codeTagProps:{className:"font-mono text-sm"},customStyle:{margin:0,padding:"1rem",fontSize:"0.875rem",background:"hsl(var(--background))",color:"hsl(var(--foreground))"},language:l,lineNumberStyle:{color:"hsl(var(--muted-foreground))",paddingRight:"1rem",minWidth:"2.5rem"},showLineNumbers:n,style:u.Z,children:t}),i&&(0,s.jsx)("div",{className:"absolute top-2 right-2 flex items-center gap-2",children:i})]})})})},x=e=>{let{onCopy:t,onError:l,timeout:d=2e3,children:c,className:u,...f}=e,[x,g]=(0,o.useState)(!1),{code:h}=(0,o.useContext)(m),p=async()=>{if(!navigator.clipboard.writeText){null==l||l(Error("Clipboard API not available"));return}try{await navigator.clipboard.writeText(h),g(!0),null==t||t(),setTimeout(()=>g(!1),d)}catch(e){null==l||l(e)}},v=x?r.Z:i.Z;return(0,s.jsx)(n.z,{className:(0,a.cn)("shrink-0",u),onClick:p,size:"icon",variant:"ghost",...f,children:null!=c?c:(0,s.jsx)(v,{size:14})})}},35629:function(e,t,l){"use strict";l.d(t,{H:function(){return f}});var s=l(57437),n=l(94508),a=l(2265),r=l(86816),i=l(67245),o=l(58146),d=l(85020),c=l(53245);l(2446);let u=(0,l(86589).Z)(r.UG),m={ol:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("ol",{className:(0,n.cn)("ml-4 list-outside list-decimal",a),...r,children:l})},li:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("li",{className:(0,n.cn)("py-1",a),...r,children:l})},ul:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("ul",{className:(0,n.cn)("ml-4 list-outside list-disc",a),...r,children:l})},hr:e=>{let{node:t,className:l,...a}=e;return(0,s.jsx)("hr",{className:(0,n.cn)("my-6 border-border",l),...a})},strong:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("span",{className:(0,n.cn)("font-semibold",a),...r,children:l})},a:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("a",{className:(0,n.cn)("font-medium text-primary underline",a),rel:"noreferrer",target:"_blank",...r,children:l})},h1:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("h1",{className:(0,n.cn)("mt-6 mb-2 font-semibold text-3xl",a),...r,children:l})},h2:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("h2",{className:(0,n.cn)("mt-6 mb-2 font-semibold text-2xl",a),...r,children:l})},h3:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("h3",{className:(0,n.cn)("mt-6 mb-2 font-semibold text-xl",a),...r,children:l})},h4:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("h4",{className:(0,n.cn)("mt-6 mb-2 font-semibold text-lg",a),...r,children:l})},h5:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("h5",{className:(0,n.cn)("mt-6 mb-2 font-semibold text-base",a),...r,children:l})},h6:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("h6",{className:(0,n.cn)("mt-6 mb-2 font-semibold text-sm",a),...r,children:l})},table:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("div",{className:"my-4 overflow-x-auto",children:(0,s.jsx)("table",{className:(0,n.cn)("w-full border-collapse border border-border",a),...r,children:l})})},thead:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("thead",{className:(0,n.cn)("bg-muted/50",a),...r,children:l})},tbody:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("tbody",{className:(0,n.cn)("divide-y divide-border",a),...r,children:l})},tr:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("tr",{className:(0,n.cn)("border-border border-b",a),...r,children:l})},th:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("th",{className:(0,n.cn)("px-4 py-2 text-left font-semibold text-sm",a),...r,children:l})},td:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("td",{className:(0,n.cn)("px-4 py-2 text-sm",a),...r,children:l})},blockquote:e=>{let{node:t,children:l,className:a,...r}=e;return(0,s.jsx)("blockquote",{className:(0,n.cn)("my-4 border-muted-foreground/30 border-l-4 pl-4 text-muted-foreground italic",a),...r,children:l})},code:e=>{var t,l;let{node:a,className:r,...i}=e;return(null==a?void 0:null===(t=a.position)||void 0===t?void 0:t.start.line)!==(null==a?void 0:null===(l=a.position)||void 0===l?void 0:l.end.line)?(0,s.jsx)("code",{className:r,...i}):(0,s.jsx)("code",{className:(0,n.cn)("rounded bg-muted px-1.5 py-0.5 font-mono text-sm",r),...i})},pre:e=>{var t;let{node:l,className:r,children:i}=e,o="javascript";"string"==typeof(null==l?void 0:null===(t=l.properties)||void 0===t?void 0:t.className)&&(o=l.properties.className.replace("language-",""));let d="";return(0,a.isValidElement)(i)&&i.props&&"string"==typeof i.props.children?d=i.props.children:"string"==typeof i&&(d=i),(0,s.jsx)(c.d,{className:(0,n.cn)("my-4 h-auto",r),code:d,language:o,children:(0,s.jsx)(c.f,{onCopy:()=>console.log("Copied code to clipboard"),onError:()=>console.error("Failed to copy code to clipboard")})})}},f=(0,a.memo)(e=>{let{className:t,options:l,children:a,allowedImagePrefixes:r,allowedLinkPrefixes:c,defaultOrigin:f,parseIncompleteMarkdown:x=!0,...g}=e,h="string"==typeof a&&x?function(e){if(!e||"string"!=typeof e)return e;let t=e,l=t.match(/(!?\[)([^\]]*?)$/);if(l){let e=t.lastIndexOf(l[1]);t=t.substring(0,e)}if(t.match(/(\*\*)([^*]*?)$/)&&(t.match(/\*\*/g)||[]).length%2==1&&(t="".concat(t,"**")),t.match(/(__)([^_]*?)$/)&&(t.match(/__/g)||[]).length%2==1&&(t="".concat(t,"__")),t.match(/(\*)([^*]*?)$/)&&t.split("").reduce((e,l,s)=>{if("*"===l){let l=t[s-1],n=t[s+1];if("*"!==l&&"*"!==n)return e+1}return e},0)%2==1&&(t="".concat(t,"*")),t.match(/(_)([^_]*?)$/)&&t.split("").reduce((e,l,s)=>{if("_"===l){let l=t[s-1],n=t[s+1];if("_"!==l&&"_"!==n)return e+1}return e},0)%2==1&&(t="".concat(t,"_")),t.match(/(`)([^`]*?)$/)&&(t.includes("```"),(t.match(/```[\s\S]*?```/g)||[]).length,(t.match(/```/g)||[]).length%2!=1)){let e=0;for(let l=0;l<t.length;l++)if("`"===t[l]){let s="```"===t.substring(l,l+3),n=l>0&&"```"===t.substring(l-1,l+2),a=l>1&&"```"===t.substring(l-2,l+1);!(s||n||a)&&e++}e%2==1&&(t="".concat(t,"`"))}return t.match(/(~~)([^~]*?)$/)&&(t.match(/~~/g)||[]).length%2==1&&(t="".concat(t,"~~")),t}(a):a;return(0,s.jsx)("div",{className:(0,n.cn)("size-full [&>*:first-child]:mt-0 [&>*:last-child]:mb-0",t),...g,children:(0,s.jsx)(u,{allowedImagePrefixes:null!=r?r:["*"],allowedLinkPrefixes:null!=c?c:["*"],components:m,defaultOrigin:f,rehypePlugins:[i.Z],remarkPlugins:[o.Z,d.Z],...l,children:h})})},(e,t)=>e.children===t.children);f.displayName="Response"},37099:function(e,t,l){"use strict";l.d(t,{OL:function(){return h},_T:function(){return u},aR:function(){return o},f$:function(){return x},fY:function(){return m},le:function(){return p},xo:function(){return f},yT:function(){return g}});var s=l(57437),n=l(23619),a=l(2265),r=l(62869),i=l(94508);let o=n.fC;n.xz;let d=n.h_,c=a.forwardRef((e,t)=>{let{className:l,...a}=e;return(0,s.jsx)(n.aV,{className:(0,i.cn)("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",l),...a,ref:t})});c.displayName=n.aV.displayName;let u=a.forwardRef((e,t)=>{let{className:l,...a}=e;return(0,s.jsxs)(d,{children:[(0,s.jsx)(c,{}),(0,s.jsx)(n.VY,{ref:t,className:(0,i.cn)("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 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-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",l),...a})]})});u.displayName=n.VY.displayName;let m=e=>{let{className:t,...l}=e;return(0,s.jsx)("div",{className:(0,i.cn)("flex flex-col space-y-2 text-center sm:text-left",t),...l})};m.displayName="AlertDialogHeader";let f=e=>{let{className:t,...l}=e;return(0,s.jsx)("div",{className:(0,i.cn)("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",t),...l})};f.displayName="AlertDialogFooter";let x=a.forwardRef((e,t)=>{let{className:l,...a}=e;return(0,s.jsx)(n.Dx,{ref:t,className:(0,i.cn)("text-lg font-semibold",l),...a})});x.displayName=n.Dx.displayName;let g=a.forwardRef((e,t)=>{let{className:l,...a}=e;return(0,s.jsx)(n.dk,{ref:t,className:(0,i.cn)("text-sm text-muted-foreground",l),...a})});g.displayName=n.dk.displayName;let h=a.forwardRef((e,t)=>{let{className:l,...a}=e;return(0,s.jsx)(n.aU,{ref:t,className:(0,i.cn)((0,r.d)(),l),...a})});h.displayName=n.aU.displayName;let p=a.forwardRef((e,t)=>{let{className:l,...a}=e;return(0,s.jsx)(n.$j,{ref:t,className:(0,i.cn)((0,r.d)({variant:"outline"}),"mt-2 sm:mt-0",l),...a})});p.displayName=n.$j.displayName},73578:function(e,t,l){"use strict";l.d(t,{RM:function(){return o},Rn:function(){return m},SC:function(){return d},iA:function(){return r},pj:function(){return u},ss:function(){return c},xD:function(){return i}});var s=l(57437),n=l(2265),a=l(94508);let r=n.forwardRef((e,t)=>{let{className:l,...n}=e;return(0,s.jsx)("div",{className:"relative w-full overflow-auto",children:(0,s.jsx)("table",{ref:t,className:(0,a.cn)("w-full caption-bottom text-sm",l),...n})})});r.displayName="Table";let i=n.forwardRef((e,t)=>{let{className:l,...n}=e;return(0,s.jsx)("thead",{ref:t,className:(0,a.cn)("[&_tr]:border-b",l),...n})});i.displayName="TableHeader";let o=n.forwardRef((e,t)=>{let{className:l,...n}=e;return(0,s.jsx)("tbody",{ref:t,className:(0,a.cn)("[&_tr:last-child]:border-0",l),...n})});o.displayName="TableBody",n.forwardRef((e,t)=>{let{className:l,...n}=e;return(0,s.jsx)("tfoot",{ref:t,className:(0,a.cn)("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",l),...n})}).displayName="TableFooter";let d=n.forwardRef((e,t)=>{let{className:l,...n}=e;return(0,s.jsx)("tr",{ref:t,className:(0,a.cn)("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",l),...n})});d.displayName="TableRow";let c=n.forwardRef((e,t)=>{let{className:l,...n}=e;return(0,s.jsx)("th",{ref:t,className:(0,a.cn)("h-12 px-4 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0 [&:has([role=checkbox])]:w-[40px]",l),...n})});c.displayName="TableHead";let u=n.forwardRef((e,t)=>{let{className:l,...n}=e;return(0,s.jsx)("td",{ref:t,className:(0,a.cn)("p-4 align-middle [&:has([role=checkbox])]:pr-0 [&:has([role=checkbox])]:w-[40px]",l),...n})});u.displayName="TableCell";let m=n.forwardRef((e,t)=>{let{className:l,...n}=e;return(0,s.jsx)("caption",{ref:t,className:(0,a.cn)("mt-4 text-sm text-muted-foreground",l),...n})});m.displayName="TableCaption"},12339:function(e,t,l){"use strict";l.d(t,{SP:function(){return d},dr:function(){return o},mQ:function(){return i},nU:function(){return c}});var s=l(57437),n=l(20271),a=l(2265),r=l(94508);let i=n.fC,o=a.forwardRef((e,t)=>{let{className:l,...a}=e;return(0,s.jsx)(n.aV,{ref:t,className:(0,r.cn)("inline-flex h-10 items-center justify-center rounded-md bg-muted p-1 text-muted-foreground",l),...a})});o.displayName=n.aV.displayName;let d=a.forwardRef((e,t)=>{let{className:l,...a}=e;return(0,s.jsx)(n.xz,{ref:t,className:(0,r.cn)("inline-flex items-center justify-center whitespace-nowrap rounded-sm px-3 py-1.5 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm",l),...a})});d.displayName=n.xz.displayName;let c=a.forwardRef((e,t)=>{let{className:l,...a}=e;return(0,s.jsx)(n.VY,{ref:t,className:(0,r.cn)("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",l),...a})});c.displayName=n.VY.displayName}},function(e){e.O(0,[329,8310,3954,9851,7629,7093,6148,847,1942,7648,7823,8068,5799,4567,605,85,4957,7398,3825,1785,3702,3397,1594,9141,79,6373,3832,7907,7699,2971,2117,1744],function(){return e(e.s=33329)}),_N_E=e.O()}]);
2
+ //# sourceMappingURL=page-93969baedc6f38ff.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"static/chunks/app/(application)/workflows/page-93969baedc6f38ff.js","mappings":"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","sources":["webpack://_N_E/?5da6","webpack://_N_E/./app/(application)/workflows/components/columns.tsx","webpack://_N_E/./app/(application)/workflows/components/data-table-view-options.tsx","webpack://_N_E/./app/(application)/workflows/components/data-table.tsx","webpack://_N_E/./app/(application)/workflows/components/jobs-status-area.tsx","webpack://_N_E/./app/(application)/workflows/page.tsx","webpack://_N_E/./components/ai-elements/code-block.tsx","webpack://_N_E/./components/ai-elements/response.tsx","webpack://_N_E/./components/ui/alert-dialog.tsx","webpack://_N_E/./components/ui/table.tsx","webpack://_N_E/./components/ui/tabs.tsx"],"sourcesContent":["import(/* webpackMode: \"eager\" */ \"/home/runner/work/exulu-frontend/exulu-frontend/app/(application)/workflows/page.tsx\");\n","\"use client\";\n\nimport { ColumnDef } from \"@tanstack/react-table\";\nimport { ArrowUpDown, Edit, Eye, Play, Trash2 } from \"lucide-react\";\nimport { useState } from \"react\";\nimport { Button } from \"@/components/ui/button\";\nimport { Badge } from \"@/components/ui/badge\";\nimport { SaveWorkflowModal } from \"@/components/save-workflow-modal\";\nimport { formatDistanceToNow } from \"date-fns\";\nimport { useQuery, useMutation } from \"@apollo/client\";\nimport { GET_JOBS, REMOVE_WORKFLOW_TEMPLATE_BY_ID, GET_WORKFLOW_TEMPLATES } from \"@/queries/queries\";\nimport {\n AlertDialog,\n AlertDialogContent,\n AlertDialogDescription,\n AlertDialogFooter,\n AlertDialogHeader,\n AlertDialogTitle,\n} from \"@/components/ui/alert-dialog\";\nimport { Input } from \"@/components/ui/input\";\nimport { Label } from \"@/components/ui/label\";\nimport { useToast } from \"@/components/ui/use-toast\";\n\nexport type Workflow = {\n id: string;\n name: string;\n description?: string;\n owner: number;\n rights_mode: \"private\" | \"users\" | \"roles\" | \"public\" | \"projects\";\n RBAC: {\n users: Array<{ id: number; rights: \"read\" | \"write\" }>;\n roles: Array<{ id: string; rights: \"read\" | \"write\" }>;\n projects: Array<{ id: string; rights: \"read\" | \"write\" }>;\n };\n variables?: any[];\n steps_json?: any[];\n createdAt: string;\n updatedAt: string;\n};\n\nexport type WorkflowWithLastRun = Workflow & {\n lastRunAt?: string;\n lastRunStatus?: string;\n};\n\nfunction useLastRunForWorkflow(workflowId: string) {\n const { data } = useQuery(GET_JOBS, {\n variables: {\n page: 1,\n limit: 1,\n filters: [\n {\n workflow: { eq: workflowId }\n }\n ],\n sort: { field: \"createdAt\", direction: \"DESC\" }\n },\n pollInterval: 5000 // Poll every 5 seconds for recent runs\n });\n\n const lastJob = data?.jobsPagination?.items?.[0];\n return {\n lastRunAt: lastJob?.createdAt,\n lastRunStatus: lastJob?.status\n };\n}\n\nfunction LastRunCell({ workflowId }: { workflowId: string }) {\n const { lastRunAt, lastRunStatus } = useLastRunForWorkflow(workflowId);\n\n if (!lastRunAt) {\n return <span className=\"text-muted-foreground text-sm\">Never run</span>;\n }\n\n const getStatusColor = (status: string) => {\n switch (status) {\n case 'completed': return 'bg-green-100 text-green-800';\n case 'failed': case 'stuck': return 'bg-red-100 text-red-800';\n case 'active': case 'waiting': case 'delayed': case 'paused': return 'bg-blue-100 text-blue-800';\n default: return 'bg-gray-100 text-gray-800';\n }\n };\n\n return (\n <div className=\"flex flex-col gap-1\">\n <div className=\"text-sm\">\n {formatDistanceToNow(new Date(lastRunAt), { addSuffix: true })}\n </div>\n <Badge variant=\"outline\" className={getStatusColor(lastRunStatus)}>\n {lastRunStatus}\n </Badge>\n </div>\n );\n}\n\nfunction WorkflowActionsCell({ workflow, user }: { workflow: WorkflowWithLastRun; user: any }) {\n const [isEditModalOpen, setIsEditModalOpen] = useState(false);\n const [isDeleteModalOpen, setIsDeleteModalOpen] = useState(false);\n const [deleteConfirmation, setDeleteConfirmation] = useState('');\n const { toast } = useToast();\n \n // Determine if user has write access\n const hasWriteAccess = (() => {\n if (workflow.owner === user.id) return true;\n if (workflow.rights_mode === 'public') return false; // Public workflows can only be edited by owner\n if (workflow.rights_mode === 'users' && workflow.RBAC.users) {\n const userAccess = workflow.RBAC.users.find(u => u.id === user.id.toString());\n return userAccess?.rights === 'write';\n }\n if (workflow.rights_mode === 'roles' && workflow.RBAC.roles && user.role) {\n const roleAccess = workflow.RBAC.roles.find(r => r.id === user.role);\n return roleAccess?.rights === 'write';\n }\n return false;\n })();\n\n const [removeWorkflow] = useMutation(REMOVE_WORKFLOW_TEMPLATE_BY_ID, {\n refetchQueries: [GET_WORKFLOW_TEMPLATES, \"GetWorkflowTemplates\"],\n });\n\n const handleDelete = async () => {\n if (deleteConfirmation !== workflow.name) {\n toast({\n title: \"Error\",\n description: \"Please type the workflow name exactly to confirm deletion.\",\n variant: \"destructive\",\n });\n return;\n }\n\n try {\n await removeWorkflow({\n variables: { id: workflow.id },\n });\n toast({\n title: \"Workflow deleted\",\n description: `\"${workflow.name}\" has been successfully deleted.`,\n });\n setIsDeleteModalOpen(false);\n setDeleteConfirmation('');\n } catch (error) {\n toast({\n title: \"Error\",\n description: \"Failed to delete the workflow. Please try again.\",\n variant: \"destructive\",\n });\n }\n };\n\n // Transform workflow back to messages format for the modal\n // TODO just keep the workflow messages in the ai-sdk format!!\n const workflowMessages: any[] = workflow.steps_json?.map((step: any, index: number) => ({\n id: step.id || `msg_${index}`,\n role: step.type === 'user' ? 'user' as const : \n step.type === 'assistant' ? 'assistant' as const : \n 'system' as const,\n content: step.content || step.contentExample || `Tool: ${step.toolName}`,\n ...(step.type === 'tool' && {\n parts: [{\n type: 'tool-invocation',\n toolInvocation: {\n toolName: step.toolName\n }\n }]\n })\n })) || [];\n\n return (\n <>\n <div className=\"flex items-center gap-2\">\n <Button\n variant=\"ghost\"\n size=\"sm\"\n onClick={() => setIsEditModalOpen(true)}\n >\n {hasWriteAccess ? <Edit className=\"h-4 w-4\" /> : <Eye className=\"h-4 w-4\" />}\n </Button>\n <Button\n variant=\"ghost\"\n size=\"sm\"\n onClick={() => {\n // TODO: Implement workflow run functionality\n console.log('Run workflow:', workflow.id);\n }}\n >\n <Play className=\"h-4 w-4\" />\n </Button>\n {hasWriteAccess && (\n <Button\n variant=\"ghost\"\n size=\"sm\"\n onClick={() => setIsDeleteModalOpen(true)}\n className=\"text-red-600 hover:text-red-700 hover:bg-red-50\"\n >\n <Trash2 className=\"h-4 w-4\" />\n </Button>\n )}\n </div>\n \n <SaveWorkflowModal\n isOpen={isEditModalOpen}\n onClose={() => setIsEditModalOpen(false)}\n messages={workflowMessages}\n sessionTitle={workflow.name}\n existingWorkflow={{\n id: workflow.id,\n name: workflow.name,\n description: workflow.description,\n rights_mode: workflow.rights_mode,\n RBAC: workflow.RBAC,\n variables: workflow.variables,\n steps_json: workflow.steps_json\n }}\n isReadOnly={!hasWriteAccess}\n />\n\n <AlertDialog open={isDeleteModalOpen} onOpenChange={setIsDeleteModalOpen}>\n <AlertDialogContent>\n <AlertDialogHeader>\n <AlertDialogTitle>Delete Workflow</AlertDialogTitle>\n <AlertDialogDescription>\n This action will permanently delete the workflow \"{workflow.name}\" and cannot be undone.\n <br /><br />\n To confirm, please type the workflow name below:\n </AlertDialogDescription>\n </AlertDialogHeader>\n <div className=\"py-4\">\n <Label htmlFor=\"delete-confirmation\" className=\"text-sm font-medium\">\n Workflow name\n </Label>\n <Input\n id=\"delete-confirmation\"\n value={deleteConfirmation}\n onChange={(e) => setDeleteConfirmation(e.target.value)}\n placeholder={workflow.name}\n className=\"mt-2\"\n />\n </div>\n <AlertDialogFooter>\n <Button\n variant=\"outline\"\n onClick={() => {\n setIsDeleteModalOpen(false);\n setDeleteConfirmation('');\n }}\n >\n Cancel\n </Button>\n <Button\n variant=\"destructive\"\n onClick={handleDelete}\n disabled={deleteConfirmation !== workflow.name}\n >\n Delete Workflow\n </Button>\n </AlertDialogFooter>\n </AlertDialogContent>\n </AlertDialog>\n </>\n );\n}\n\nexport function createColumns(user: any): ColumnDef<WorkflowWithLastRun>[] {\n return [\n {\n accessorKey: \"name\",\n header: ({ column }) => {\n return (\n <Button\n variant=\"ghost\"\n onClick={() => column.toggleSorting(column.getIsSorted() === \"asc\")}\n >\n Name\n <ArrowUpDown className=\"ml-2 h-4 w-4\" />\n </Button>\n );\n },\n cell: ({ row }) => {\n const workflow = row.original;\n return (\n <div className=\"flex flex-col gap-1\">\n <div className=\"font-medium\">{workflow.name}</div>\n {workflow.description && (\n <div className=\"text-sm text-muted-foreground line-clamp-1\">\n {workflow.description}\n </div>\n )}\n </div>\n );\n },\n },\n {\n accessorKey: \"visibility\",\n header: \"Visibility\",\n cell: ({ row }) => {\n const visibility = row.original.rights_mode || 'private';\n const getVisibilityColor = (visibility: string) => {\n switch (visibility) {\n case 'private': return 'bg-gray-100 text-gray-800';\n case 'public': return 'bg-green-100 text-green-800';\n case 'users': return 'bg-blue-100 text-blue-800';\n case 'roles': return 'bg-purple-100 text-purple-800';\n default: return 'bg-gray-100 text-gray-800';\n }\n };\n const getVisibilityText = (visibility: string) => { \n switch (visibility) {\n case 'private': return 'Private';\n case 'public': return 'Public';\n case 'users': return `Users (${row.original.RBAC.users.length})`;\n case 'roles': return `Roles (${row.original.RBAC.roles.length})`;\n default: return 'Private';\n }\n };\n return (\n <Badge variant=\"outline\" className={getVisibilityColor(visibility)}>\n {getVisibilityText(visibility)}\n </Badge>\n );\n },\n },\n {\n accessorKey: \"createdAt\",\n header: ({ column }) => {\n return (\n <Button\n className=\"p-0\"\n variant=\"ghost\"\n onClick={() => column.toggleSorting(column.getIsSorted() === \"asc\")}\n >\n Created\n <ArrowUpDown className=\"ml-2 h-4 w-4\" />\n </Button>\n );\n },\n cell: ({ row }) => {\n const createdAt = row.getValue(\"createdAt\") as string;\n return (\n <div className=\"text-sm\">\n {formatDistanceToNow(new Date(createdAt), { addSuffix: true })}\n </div>\n );\n },\n },\n {\n id: \"lastRun\",\n header: \"Last Run\",\n cell: ({ row }) => {\n return <LastRunCell workflowId={row.original.id} />;\n },\n },\n {\n id: \"actions\",\n header: \"Actions\",\n cell: ({ row }) => {\n return <WorkflowActionsCell workflow={row.original} user={user} />;\n },\n },\n ];\n}","\"use client\";\n\nimport { DropdownMenuTrigger } from \"@radix-ui/react-dropdown-menu\";\nimport { MixerHorizontalIcon } from \"@radix-ui/react-icons\";\nimport { Table } from \"@tanstack/react-table\";\n\nimport { Button } from \"@/components/ui/button\";\nimport {\n DropdownMenu,\n DropdownMenuCheckboxItem,\n DropdownMenuContent,\n DropdownMenuLabel,\n DropdownMenuSeparator,\n} from \"@/components/ui/dropdown-menu\";\n\ninterface DataTableViewOptionsProps<TData> {\n table: Table<TData>;\n}\n\nexport function DataTableViewOptions<TData>({\n table,\n}: DataTableViewOptionsProps<TData>) {\n return (\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button\n variant=\"outline\"\n size=\"sm\"\n className=\"ml-auto hidden h-8 lg:flex\"\n >\n <MixerHorizontalIcon className=\"mr-2 size-4\" />\n View\n </Button>\n </DropdownMenuTrigger>\n <DropdownMenuContent align=\"end\" className=\"w-[150px]\">\n <DropdownMenuLabel>Toggle columns</DropdownMenuLabel>\n <DropdownMenuSeparator />\n {table\n .getAllColumns()\n .filter(\n (column) =>\n typeof column.accessorFn !== \"undefined\" && column.getCanHide(),\n )\n .map((column) => {\n return (\n <DropdownMenuCheckboxItem\n key={column.id}\n className=\"capitalize\"\n checked={column.getIsVisible()}\n onCheckedChange={(value) => column.toggleVisibility(!!value)}\n >\n {column.id}\n </DropdownMenuCheckboxItem>\n );\n })}\n </DropdownMenuContent>\n </DropdownMenu>\n );\n}","\"use client\";\n\nimport { useMutation, useQuery } from \"@apollo/client\";\nimport {\n ChevronLeftIcon,\n ChevronRightIcon,\n Cross2Icon,\n DoubleArrowLeftIcon,\n DoubleArrowRightIcon,\n} from \"@radix-ui/react-icons\";\nimport {\n ColumnDef,\n ColumnFiltersState,\n flexRender,\n getCoreRowModel,\n getFacetedRowModel,\n getFacetedUniqueValues,\n getFilteredRowModel,\n getPaginationRowModel,\n getSortedRowModel,\n Row,\n SortingState,\n useReactTable,\n VisibilityState,\n} from \"@tanstack/react-table\";\nimport { Trash2 } from \"lucide-react\";\nimport { useState } from \"react\";\nimport * as React from \"react\";\nimport {\n GET_WORKFLOW_TEMPLATES,\n REMOVE_WORKFLOW_TEMPLATE_BY_ID,\n} from \"@/queries/queries\";\nimport { DataTableViewOptions } from \"./data-table-view-options\";\nimport { Button } from \"@/components/ui/button\";\nimport { Input } from \"@/components/ui/input\";\nimport { Loading } from \"@/components/ui/loading\";\nimport { Skeleton } from \"@/components/ui/skeleton\";\nimport {\n Table,\n TableBody,\n TableCell,\n TableHead,\n TableHeader,\n TableRow,\n} from \"@/components/ui/table\";\nimport { useToast } from \"@/components/ui/use-toast\";\nimport { FilterOperator } from \"@/components/custom/recent-jobs\";\n\nexport type WorkflowFilters = {\n name?: FilterOperator,\n visibility?: FilterOperator,\n createdAt?: FilterOperator,\n updatedAt?: FilterOperator,\n}\n\ninterface DataTableProps<TData, TValue> {\n columns: ColumnDef<TData, TValue>[];\n}\n\nexport function usePagination() {\n const [pagination, setPagination] = useState({\n pageSize: 10,\n pageIndex: 0,\n });\n const { pageSize, pageIndex } = pagination;\n\n return {\n limit: pageSize,\n onPaginationChange: setPagination,\n pagination,\n skip: pageSize * pageIndex,\n };\n}\n\nexport function DataTable<TData, TValue>({\n columns,\n}: DataTableProps<TData, TValue>) {\n const { toast } = useToast();\n const [rowSelection, setRowSelection] = React.useState({});\n const [columnVisibility, setColumnVisibility] =\n React.useState<VisibilityState>({});\n const [columnFilters, setColumnFilters] = React.useState<ColumnFiltersState>(\n [],\n );\n\n const [filters, setFilters] = useState<WorkflowFilters[]>([]);\n\n let [page, setPage] = useState(1);\n const [sorting, setSorting] = React.useState<SortingState>([]);\n\n const { loading, error, data, refetch, previousData } = useQuery(GET_WORKFLOW_TEMPLATES, {\n fetchPolicy: \"no-cache\",\n nextFetchPolicy: \"network-only\",\n variables: {\n page: page,\n limit: 10,\n filters: filters,\n },\n pollInterval: 30000,\n });\n\n const defaultData = React.useMemo(() => [], []);\n const { limit, onPaginationChange, skip, pagination } = usePagination();\n\n const [removeWorkflow, removeWorkflowResult] = useMutation(REMOVE_WORKFLOW_TEMPLATE_BY_ID, {\n refetchQueries: [\n GET_WORKFLOW_TEMPLATES,\n \"GetWorkflowTemplates\",\n ],\n });\n\n let items;\n let pageCount;\n if (loading && previousData?.workflow_templatesPagination?.items) {\n items = previousData?.workflow_templatesPagination?.items;\n pageCount = previousData?.workflow_templatesPagination?.pageInfo?.pageCount;\n } else if (data?.workflow_templatesPagination?.items) {\n items = data?.workflow_templatesPagination?.items;\n pageCount = data?.workflow_templatesPagination?.pageInfo?.pageCount;\n } else if (previousData?.workflow_templatesPagination?.items) {\n items = previousData?.workflow_templatesPagination?.items;\n pageCount = previousData?.workflow_templatesPagination?.pageInfo?.pageCount;\n }\n\n const table = useReactTable({\n data: items ?? defaultData,\n pageCount: pageCount ?? -1,\n columns,\n state: {\n sorting,\n columnVisibility,\n rowSelection,\n columnFilters,\n },\n enableRowSelection: true,\n onRowSelectionChange: setRowSelection,\n onSortingChange: setSorting,\n onColumnFiltersChange: setColumnFilters,\n onColumnVisibilityChange: setColumnVisibility,\n getCoreRowModel: getCoreRowModel(),\n getFilteredRowModel: getFilteredRowModel(),\n getPaginationRowModel: getPaginationRowModel(),\n getSortedRowModel: getSortedRowModel(),\n getFacetedRowModel: getFacetedRowModel(),\n getFacetedUniqueValues: getFacetedUniqueValues(),\n manualPagination: true,\n onPaginationChange,\n });\n\n const search = (value: string) => {\n const copy = [...filters];\n const exists = copy.find((filter) => filter.name);\n if (exists?.name) {\n exists.name.contains = value;\n } else {\n copy.push({\n name: {\n contains: value,\n },\n });\n }\n setFilters(copy);\n refetch();\n };\n\n const isFiltered = filters.length > 0;\n\n return (\n <div className=\"space-y-4\">\n <div className=\"flex items-center justify-between\">\n <div className=\"flex flex-1 items-center space-x-2\">\n <Input\n placeholder=\"Search workflows...\"\n value={filters?.find((filter) => filter.name)?.name?.contains ?? \"\"}\n onChange={(event) => {\n search(event.target.value);\n }}\n className=\"w-[150px] lg:w-[250px]\"\n />\n\n {table.getIsSomeRowsSelected() || table.getIsAllRowsSelected() ? (\n <div className=\"flex gap-x-2\">\n <Button\n onClick={() => {\n const promises: any[] = [];\n table.getSelectedRowModel().rows.forEach((row: Row<any>) => {\n promises.push(\n removeWorkflow({\n variables: {\n id: row.original.id,\n },\n }),\n );\n });\n Promise.all(promises).then(() => {\n table.resetRowSelection();\n toast({\n title: \"Workflows deleted\",\n description: \"Successfully deleted \" + promises.length + \" workflow(s).\",\n });\n }).catch(() => {\n toast({\n title: \"Error\",\n description: \"Failed to delete some workflows. Please try again.\",\n variant: \"destructive\",\n });\n });\n }}\n variant=\"secondary\"\n disabled={removeWorkflowResult.loading}\n >\n {removeWorkflowResult.loading ? (\n <Loading />\n ) : (\n <Trash2 className=\"size-4\" />\n )}\n <span className=\"ml-2\">Delete selected</span>\n </Button>\n </div>\n ) : null}\n\n {isFiltered && (\n <Button\n variant=\"ghost\"\n onClick={() => {\n const copy = [...filters];\n const nameFilter = copy.find((filter) => filter.name);\n if (nameFilter) {\n copy.splice(copy.indexOf(nameFilter), 1);\n }\n setFilters(copy);\n refetch();\n }}\n >\n Reset\n <Cross2Icon className=\"ml-2 size-4\" />\n </Button>\n )}\n </div>\n <DataTableViewOptions table={table} />\n </div>\n <div className=\"rounded-md border\">\n <Table>\n <TableHeader>\n {table.getHeaderGroups().map((headerGroup) => (\n <TableRow key={headerGroup.id}>\n {headerGroup.headers.map((header) => {\n return (\n <TableHead key={header.id} colSpan={header.colSpan}>\n {header.isPlaceholder\n ? null\n : flexRender(\n header.column.columnDef.header,\n header.getContext(),\n )}\n </TableHead>\n );\n })}\n </TableRow>\n ))}\n </TableHeader>\n <TableBody>\n {table.getRowModel().rows?.length ? (\n table.getRowModel().rows.map((row) => (\n <TableRow\n key={row.id}\n data-state={row.getIsSelected() && \"selected\"}\n >\n {row.getVisibleCells().map((cell) => (\n <TableCell key={cell.id}>\n {flexRender(\n cell.column.columnDef.cell,\n cell.getContext(),\n )}\n </TableCell>\n ))}\n </TableRow>\n ))\n ) : loading && !previousData ? (\n Array.from({ length: 5 }).map((_, index) => (\n <TableRow key={index}>\n {columns.map((_, colIndex) => (\n <TableCell key={colIndex}>\n <Skeleton className=\"h-4 w-full\" />\n </TableCell>\n ))}\n </TableRow>\n ))\n ) : (\n <TableRow>\n <TableCell\n colSpan={columns.length}\n className=\"h-24 text-center\"\n >\n No workflows found.\n </TableCell>\n </TableRow>\n )}\n </TableBody>\n </Table>\n </div>\n <div className=\"flex items-center justify-between px-2\">\n <div className=\"text-muted-foreground flex-1 text-sm\">\n {table.getFilteredSelectedRowModel().rows.length} of{\" \"}\n {table.getFilteredRowModel().rows.length} row(s) selected.\n </div>\n <div className=\"flex items-center space-x-6 lg:space-x-8\">\n <div className=\"flex w-[100px] items-center justify-center text-sm font-medium\">\n Page {page} of {table.getPageCount()}\n </div>\n <div className=\"flex items-center space-x-2\">\n <Button\n variant=\"outline\"\n className=\"hidden size-8 p-0 lg:flex\"\n onClick={() => {\n table.setPageIndex(0);\n setPage(1);\n refetch();\n }}\n disabled={!data?.workflow_templatesPagination?.pageInfo.hasPreviousPage}\n >\n <span className=\"sr-only\">Go to first page</span>\n <DoubleArrowLeftIcon className=\"size-4\" />\n </Button>\n <Button\n variant=\"outline\"\n className=\"size-8 p-0\"\n onClick={() => {\n table.previousPage();\n setPage(page - 1);\n refetch();\n }}\n disabled={!data?.workflow_templatesPagination?.pageInfo.hasPreviousPage}\n >\n <span className=\"sr-only\">Go to previous page</span>\n <ChevronLeftIcon className=\"size-4\" />\n </Button>\n <Button\n variant=\"outline\"\n className=\"size-8 p-0\"\n onClick={() => {\n table.nextPage();\n setPage(page + 1);\n refetch();\n }}\n disabled={!data?.workflow_templatesPagination?.pageInfo.hasNextPage}\n >\n <span className=\"sr-only\">Go to next page</span>\n <ChevronRightIcon className=\"size-4\" />\n </Button>\n <Button\n variant=\"outline\"\n className=\"hidden size-8 p-0 lg:flex\"\n onClick={() => {\n table.setPageIndex(table.getPageCount() - 1);\n setPage(table.getPageCount());\n refetch();\n }}\n disabled={!data?.workflow_templatesPagination?.pageInfo.hasNextPage}\n >\n <span className=\"sr-only\">Go to last page</span>\n <DoubleArrowRightIcon className=\"size-4\" />\n </Button>\n </div>\n </div>\n </div>\n </div>\n );\n}","\"use client\";\n\nimport { useQuery } from \"@apollo/client\";\nimport { AlertTriangle, Clock, CheckCircle, XCircle } from \"lucide-react\";\nimport { Card, CardContent, CardHeader, CardTitle } from \"@/components/ui/card\";\nimport { GET_JOB_STATISTICS_ENHANCED } from \"@/queries/queries\";\n\nexport function JobsStatusArea() {\n // Poll every 2 seconds for real-time updates\n const { data, loading, error } = useQuery(GET_JOB_STATISTICS_ENHANCED, {\n variables: {\n // Get all jobs for current user - backend will handle access control\n },\n pollInterval: 2000,\n fetchPolicy: \"network-only\" // Always fetch fresh data\n });\n\n if (error) {\n console.error(\"Error fetching job statistics:\", error);\n return null;\n }\n\n const stats = data?.jobStatistics || {\n runningCount: 0,\n erroredCount: 0,\n completedCount: 0,\n failedCount: 0,\n averageDuration: 0\n };\n\n const statusCards = [\n {\n title: \"Running Jobs\",\n value: stats.runningCount,\n description: \"Currently executing\",\n icon: Clock,\n color: \"text-blue-600\",\n bgColor: \"bg-blue-100\",\n },\n {\n title: \"Errored Jobs\", \n value: stats.erroredCount,\n description: \"Failed or stuck\",\n icon: AlertTriangle,\n color: \"text-red-600\",\n bgColor: \"bg-red-100\",\n },\n {\n title: \"Completed Jobs\",\n value: stats.completedCount,\n description: \"Successfully finished\",\n icon: CheckCircle,\n color: \"text-green-600\",\n bgColor: \"bg-green-100\",\n },\n {\n title: \"Failed Jobs\",\n value: stats.failedCount,\n description: \"Execution failed\",\n icon: XCircle,\n color: \"text-red-500\",\n bgColor: \"bg-red-50\",\n }\n ];\n\n return (\n <div className=\"space-y-4\">\n <div className=\"grid gap-4 md:grid-cols-2 lg:grid-cols-4\">\n {statusCards.map((card) => {\n const Icon = card.icon;\n return (\n <Card key={card.title}>\n <CardHeader className=\"flex flex-row items-center justify-between space-y-0 pb-2\">\n <CardTitle className=\"text-sm font-medium\">\n {card.title}\n </CardTitle>\n <div className={`p-2 rounded-full ${card.bgColor}`}>\n <Icon className={`h-4 w-4 ${card.color}`} />\n </div>\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold\">\n {loading ? \"...\" : card.value}\n </div>\n <p className=\"text-xs text-muted-foreground\">\n {card.description}\n </p>\n </CardContent>\n </Card>\n );\n })}\n </div>\n \n {stats.completedCount > 0 && (\n <Card>\n <CardHeader>\n <CardTitle className=\"text-sm font-medium\">Performance</CardTitle>\n </CardHeader>\n <CardContent>\n <div className=\"text-sm text-muted-foreground\">\n Average execution time: <span className=\"font-medium text-foreground\">\n {loading ? \"...\" : `${Math.round(stats.averageDuration)} seconds`}\n </span>\n </div>\n </CardContent>\n </Card>\n )}\n </div>\n );\n}","\"use client\";\n\nimport { useContext } from \"react\";\nimport { createColumns } from \"./components/columns\";\nimport { DataTable } from \"./components/data-table\";\nimport { JobsStatusArea } from \"./components/jobs-status-area\";\nimport { UserContext } from \"@/app/(application)/authenticated\";\n\nexport const dynamic = \"force-dynamic\";\n\nexport default function WorkflowsPage() {\n const { user } = useContext(UserContext);\n const columns = createColumns(user);\n\n return (\n <>\n <div className=\"hidden h-full flex-1 flex-col space-y-8 p-8 md:flex\">\n <div className=\"flex items-center justify-between space-y-2\">\n <div>\n <h2 className=\"text-2xl font-bold tracking-tight\">Workflows</h2>\n <p className=\"text-muted-foreground\">\n Manage your workflow templates and monitor running jobs.\n </p>\n </div>\n </div>\n \n {/* Jobs Status Area */}\n <JobsStatusArea />\n \n {/* Workflows Table */}\n <DataTable columns={columns} />\n </div>\n </>\n );\n}","'use client';\n\nimport { Button } from '@/components/ui/button';\nimport { cn } from '@/lib/utils';\nimport { CheckIcon, CopyIcon } from 'lucide-react';\nimport type { ComponentProps, HTMLAttributes, ReactNode } from 'react';\nimport { createContext, useContext, useState } from 'react';\nimport { Prism as SyntaxHighlighter } from 'react-syntax-highlighter';\nimport {\n oneDark,\n oneLight,\n} from 'react-syntax-highlighter/dist/esm/styles/prism';\n\ntype CodeBlockContextType = {\n code: string;\n};\n\nconst CodeBlockContext = createContext<CodeBlockContextType>({\n code: '',\n});\n\nexport type CodeBlockProps = HTMLAttributes<HTMLDivElement> & {\n code: string;\n language: string;\n showLineNumbers?: boolean;\n children?: ReactNode;\n};\n\nexport const CodeBlock = ({\n code,\n language,\n showLineNumbers = false,\n className,\n children,\n ...props\n}: CodeBlockProps) => (\n <CodeBlockContext.Provider value={{ code }}>\n <div\n className={cn(\n 'relative w-full overflow-hidden rounded-md border bg-background text-foreground',\n className\n )}\n {...props}\n >\n <div className=\"relative\">\n <SyntaxHighlighter\n className=\"overflow-hidden dark:hidden\"\n codeTagProps={{\n className: 'font-mono text-sm',\n }}\n customStyle={{\n margin: 0,\n padding: '1rem',\n fontSize: '0.875rem',\n background: 'hsl(var(--background))',\n color: 'hsl(var(--foreground))',\n }}\n language={language}\n lineNumberStyle={{\n color: 'hsl(var(--muted-foreground))',\n paddingRight: '1rem',\n minWidth: '2.5rem',\n }}\n showLineNumbers={showLineNumbers}\n style={oneLight}\n >\n {code}\n </SyntaxHighlighter>\n <SyntaxHighlighter\n className=\"hidden overflow-hidden dark:block\"\n codeTagProps={{\n className: 'font-mono text-sm',\n }}\n customStyle={{\n margin: 0,\n padding: '1rem',\n fontSize: '0.875rem',\n background: 'hsl(var(--background))',\n color: 'hsl(var(--foreground))',\n }}\n language={language}\n lineNumberStyle={{\n color: 'hsl(var(--muted-foreground))',\n paddingRight: '1rem',\n minWidth: '2.5rem',\n }}\n showLineNumbers={showLineNumbers}\n style={oneDark}\n >\n {code}\n </SyntaxHighlighter>\n {children && (\n <div className=\"absolute top-2 right-2 flex items-center gap-2\">\n {children}\n </div>\n )}\n </div>\n </div>\n </CodeBlockContext.Provider>\n);\n\nexport type CodeBlockCopyButtonProps = ComponentProps<typeof Button> & {\n onCopy?: () => void;\n onError?: (error: Error) => void;\n timeout?: number;\n};\n\nexport const CodeBlockCopyButton = ({\n onCopy,\n onError,\n timeout = 2000,\n children,\n className,\n ...props\n}: CodeBlockCopyButtonProps) => {\n const [isCopied, setIsCopied] = useState(false);\n const { code } = useContext(CodeBlockContext);\n\n const copyToClipboard = async () => {\n if (typeof window === 'undefined' || !navigator.clipboard.writeText) {\n onError?.(new Error('Clipboard API not available'));\n return;\n }\n\n try {\n await navigator.clipboard.writeText(code);\n setIsCopied(true);\n onCopy?.();\n setTimeout(() => setIsCopied(false), timeout);\n } catch (error) {\n onError?.(error as Error);\n }\n };\n\n const Icon = isCopied ? CheckIcon : CopyIcon;\n\n return (\n <Button\n className={cn('shrink-0', className)}\n onClick={copyToClipboard}\n size=\"icon\"\n variant=\"ghost\"\n {...props}\n >\n {children ?? <Icon size={14} />}\n </Button>\n );\n};\n","'use client';\n\nimport { cn } from '@/lib/utils';\nimport type { ComponentProps, HTMLAttributes } from 'react';\nimport { isValidElement, memo } from 'react';\nimport ReactMarkdown, { type Options } from 'react-markdown';\nimport rehypeKatex from 'rehype-katex';\nimport remarkGfm from 'remark-gfm';\nimport remarkMath from 'remark-math';\nimport { CodeBlock, CodeBlockCopyButton } from './code-block';\nimport 'katex/dist/katex.min.css';\nimport hardenReactMarkdown from 'harden-react-markdown';\n\n/**\n * Parses markdown text and removes incomplete tokens to prevent partial rendering\n * of links, images, bold, and italic formatting during streaming.\n */\nfunction parseIncompleteMarkdown(text: string): string {\n if (!text || typeof text !== 'string') {\n return text;\n }\n\n let result = text;\n\n // Handle incomplete links and images\n // Pattern: [...] or ![...] where the closing ] is missing\n const linkImagePattern = /(!?\\[)([^\\]]*?)$/;\n const linkMatch = result.match(linkImagePattern);\n if (linkMatch) {\n // If we have an unterminated [ or ![, remove it and everything after\n const startIndex = result.lastIndexOf(linkMatch[1]);\n result = result.substring(0, startIndex);\n }\n\n // Handle incomplete bold formatting (**)\n const boldPattern = /(\\*\\*)([^*]*?)$/;\n const boldMatch = result.match(boldPattern);\n if (boldMatch) {\n // Count the number of ** in the entire string\n const asteriskPairs = (result.match(/\\*\\*/g) || []).length;\n // If odd number of **, we have an incomplete bold - complete it\n if (asteriskPairs % 2 === 1) {\n result = `${result}**`;\n }\n }\n\n // Handle incomplete italic formatting (__)\n const italicPattern = /(__)([^_]*?)$/;\n const italicMatch = result.match(italicPattern);\n if (italicMatch) {\n // Count the number of __ in the entire string\n const underscorePairs = (result.match(/__/g) || []).length;\n // If odd number of __, we have an incomplete italic - complete it\n if (underscorePairs % 2 === 1) {\n result = `${result}__`;\n }\n }\n\n // Handle incomplete single asterisk italic (*)\n const singleAsteriskPattern = /(\\*)([^*]*?)$/;\n const singleAsteriskMatch = result.match(singleAsteriskPattern);\n if (singleAsteriskMatch) {\n // Count single asterisks that aren't part of **\n const singleAsterisks = result.split('').reduce((acc, char, index) => {\n if (char === '*') {\n // Check if it's part of a ** pair\n const prevChar = result[index - 1];\n const nextChar = result[index + 1];\n if (prevChar !== '*' && nextChar !== '*') {\n return acc + 1;\n }\n }\n return acc;\n }, 0);\n\n // If odd number of single *, we have an incomplete italic - complete it\n if (singleAsterisks % 2 === 1) {\n result = `${result}*`;\n }\n }\n\n // Handle incomplete single underscore italic (_)\n const singleUnderscorePattern = /(_)([^_]*?)$/;\n const singleUnderscoreMatch = result.match(singleUnderscorePattern);\n if (singleUnderscoreMatch) {\n // Count single underscores that aren't part of __\n const singleUnderscores = result.split('').reduce((acc, char, index) => {\n if (char === '_') {\n // Check if it's part of a __ pair\n const prevChar = result[index - 1];\n const nextChar = result[index + 1];\n if (prevChar !== '_' && nextChar !== '_') {\n return acc + 1;\n }\n }\n return acc;\n }, 0);\n\n // If odd number of single _, we have an incomplete italic - complete it\n if (singleUnderscores % 2 === 1) {\n result = `${result}_`;\n }\n }\n\n // Handle incomplete inline code blocks (`) - but avoid code blocks (```)\n const inlineCodePattern = /(`)([^`]*?)$/;\n const inlineCodeMatch = result.match(inlineCodePattern);\n if (inlineCodeMatch) {\n // Check if we're dealing with a code block (triple backticks)\n const hasCodeBlockStart = result.includes('```');\n const codeBlockPattern = /```[\\s\\S]*?```/g;\n const completeCodeBlocks = (result.match(codeBlockPattern) || []).length;\n const allTripleBackticks = (result.match(/```/g) || []).length;\n\n // If we have an odd number of ``` sequences, we're inside an incomplete code block\n // In this case, don't complete inline code\n const insideIncompleteCodeBlock = allTripleBackticks % 2 === 1;\n\n if (!insideIncompleteCodeBlock) {\n // Count the number of single backticks that are NOT part of triple backticks\n let singleBacktickCount = 0;\n for (let i = 0; i < result.length; i++) {\n if (result[i] === '`') {\n // Check if this backtick is part of a triple backtick sequence\n const isTripleStart = result.substring(i, i + 3) === '```';\n const isTripleMiddle =\n i > 0 && result.substring(i - 1, i + 2) === '```';\n const isTripleEnd = i > 1 && result.substring(i - 2, i + 1) === '```';\n\n if (!(isTripleStart || isTripleMiddle || isTripleEnd)) {\n singleBacktickCount++;\n }\n }\n }\n\n // If odd number of single backticks, we have an incomplete inline code - complete it\n if (singleBacktickCount % 2 === 1) {\n result = `${result}\\``;\n }\n }\n }\n\n // Handle incomplete strikethrough formatting (~~)\n const strikethroughPattern = /(~~)([^~]*?)$/;\n const strikethroughMatch = result.match(strikethroughPattern);\n if (strikethroughMatch) {\n // Count the number of ~~ in the entire string\n const tildePairs = (result.match(/~~/g) || []).length;\n // If odd number of ~~, we have an incomplete strikethrough - complete it\n if (tildePairs % 2 === 1) {\n result = `${result}~~`;\n }\n }\n\n return result;\n}\n\n// Create a hardened version of ReactMarkdown\nconst HardenedMarkdown = hardenReactMarkdown(ReactMarkdown);\n\nexport type ResponseProps = HTMLAttributes<HTMLDivElement> & {\n options?: Options;\n children: Options['children'];\n allowedImagePrefixes?: ComponentProps<\n ReturnType<typeof hardenReactMarkdown>\n >['allowedImagePrefixes'];\n allowedLinkPrefixes?: ComponentProps<\n ReturnType<typeof hardenReactMarkdown>\n >['allowedLinkPrefixes'];\n defaultOrigin?: ComponentProps<\n ReturnType<typeof hardenReactMarkdown>\n >['defaultOrigin'];\n parseIncompleteMarkdown?: boolean;\n};\n\nconst components: Options['components'] = {\n ol: ({ node, children, className, ...props }) => (\n <ol className={cn('ml-4 list-outside list-decimal', className)} {...props}>\n {children}\n </ol>\n ),\n li: ({ node, children, className, ...props }) => (\n <li className={cn('py-1', className)} {...props}>\n {children}\n </li>\n ),\n ul: ({ node, children, className, ...props }) => (\n <ul className={cn('ml-4 list-outside list-disc', className)} {...props}>\n {children}\n </ul>\n ),\n hr: ({ node, className, ...props }) => (\n <hr className={cn('my-6 border-border', className)} {...props} />\n ),\n strong: ({ node, children, className, ...props }) => (\n <span className={cn('font-semibold', className)} {...props}>\n {children}\n </span>\n ),\n a: ({ node, children, className, ...props }) => (\n <a\n className={cn('font-medium text-primary underline', className)}\n rel=\"noreferrer\"\n target=\"_blank\"\n {...props}\n >\n {children}\n </a>\n ),\n h1: ({ node, children, className, ...props }) => (\n <h1\n className={cn('mt-6 mb-2 font-semibold text-3xl', className)}\n {...props}\n >\n {children}\n </h1>\n ),\n h2: ({ node, children, className, ...props }) => (\n <h2\n className={cn('mt-6 mb-2 font-semibold text-2xl', className)}\n {...props}\n >\n {children}\n </h2>\n ),\n h3: ({ node, children, className, ...props }) => (\n <h3 className={cn('mt-6 mb-2 font-semibold text-xl', className)} {...props}>\n {children}\n </h3>\n ),\n h4: ({ node, children, className, ...props }) => (\n <h4 className={cn('mt-6 mb-2 font-semibold text-lg', className)} {...props}>\n {children}\n </h4>\n ),\n h5: ({ node, children, className, ...props }) => (\n <h5\n className={cn('mt-6 mb-2 font-semibold text-base', className)}\n {...props}\n >\n {children}\n </h5>\n ),\n h6: ({ node, children, className, ...props }) => (\n <h6 className={cn('mt-6 mb-2 font-semibold text-sm', className)} {...props}>\n {children}\n </h6>\n ),\n table: ({ node, children, className, ...props }) => (\n <div className=\"my-4 overflow-x-auto\">\n <table\n className={cn('w-full border-collapse border border-border', className)}\n {...props}\n >\n {children}\n </table>\n </div>\n ),\n thead: ({ node, children, className, ...props }) => (\n <thead className={cn('bg-muted/50', className)} {...props}>\n {children}\n </thead>\n ),\n tbody: ({ node, children, className, ...props }) => (\n <tbody className={cn('divide-y divide-border', className)} {...props}>\n {children}\n </tbody>\n ),\n tr: ({ node, children, className, ...props }) => (\n <tr className={cn('border-border border-b', className)} {...props}>\n {children}\n </tr>\n ),\n th: ({ node, children, className, ...props }) => (\n <th\n className={cn('px-4 py-2 text-left font-semibold text-sm', className)}\n {...props}\n >\n {children}\n </th>\n ),\n td: ({ node, children, className, ...props }) => (\n <td className={cn('px-4 py-2 text-sm', className)} {...props}>\n {children}\n </td>\n ),\n blockquote: ({ node, children, className, ...props }) => (\n <blockquote\n className={cn(\n 'my-4 border-muted-foreground/30 border-l-4 pl-4 text-muted-foreground italic',\n className\n )}\n {...props}\n >\n {children}\n </blockquote>\n ),\n code: ({ node, className, ...props }) => {\n const inline = node?.position?.start.line === node?.position?.end.line;\n\n if (!inline) {\n return <code className={className} {...props} />;\n }\n\n return (\n <code\n className={cn(\n 'rounded bg-muted px-1.5 py-0.5 font-mono text-sm',\n className\n )}\n {...props}\n />\n );\n },\n pre: ({ node, className, children }) => {\n let language = 'javascript';\n\n if (typeof node?.properties?.className === 'string') {\n language = node.properties.className.replace('language-', '');\n }\n\n // Extract code content from children safely\n let code = '';\n if (\n isValidElement(children) &&\n children.props &&\n typeof children.props.children === 'string'\n ) {\n code = children.props.children;\n } else if (typeof children === 'string') {\n code = children;\n }\n\n return (\n <CodeBlock\n className={cn('my-4 h-auto', className)}\n code={code}\n language={language}\n >\n <CodeBlockCopyButton\n onCopy={() => console.log('Copied code to clipboard')}\n onError={() => console.error('Failed to copy code to clipboard')}\n />\n </CodeBlock>\n );\n },\n};\n\nexport const Response = memo(\n ({\n className,\n options,\n children,\n allowedImagePrefixes,\n allowedLinkPrefixes,\n defaultOrigin,\n parseIncompleteMarkdown: shouldParseIncompleteMarkdown = true,\n ...props\n }: ResponseProps) => {\n // Parse the children to remove incomplete markdown tokens if enabled\n const parsedChildren =\n typeof children === 'string' && shouldParseIncompleteMarkdown\n ? parseIncompleteMarkdown(children)\n : children;\n\n return (\n <div\n className={cn(\n 'size-full [&>*:first-child]:mt-0 [&>*:last-child]:mb-0',\n className\n )}\n {...props}\n >\n <HardenedMarkdown\n allowedImagePrefixes={allowedImagePrefixes ?? ['*']}\n allowedLinkPrefixes={allowedLinkPrefixes ?? ['*']}\n components={components}\n defaultOrigin={defaultOrigin}\n rehypePlugins={[rehypeKatex]}\n remarkPlugins={[remarkGfm, remarkMath]}\n {...options}\n >\n {parsedChildren}\n </HardenedMarkdown>\n </div>\n );\n },\n (prevProps, nextProps) => prevProps.children === nextProps.children\n);\n\nResponse.displayName = 'Response';\n","\"use client\";\n\nimport * as AlertDialogPrimitive from \"@radix-ui/react-alert-dialog\";\nimport * as React from \"react\";\n\nimport { buttonVariants } from \"@/components/ui/button\";\nimport { cn } from \"@/lib/utils\";\n\nconst AlertDialog = AlertDialogPrimitive.Root;\n\nconst AlertDialogTrigger = AlertDialogPrimitive.Trigger;\n\nconst AlertDialogPortal = AlertDialogPrimitive.Portal;\n\nconst AlertDialogOverlay = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Overlay>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Overlay>\n>(({ className, ...props }, ref) => (\n <AlertDialogPrimitive.Overlay\n className={cn(\n \"fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0\",\n className,\n )}\n {...props}\n ref={ref}\n />\n));\nAlertDialogOverlay.displayName = AlertDialogPrimitive.Overlay.displayName;\n\nconst AlertDialogContent = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Content>\n>(({ className, ...props }, ref) => (\n <AlertDialogPortal>\n <AlertDialogOverlay />\n <AlertDialogPrimitive.Content\n ref={ref}\n className={cn(\n \"fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 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-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg\",\n className,\n )}\n {...props}\n />\n </AlertDialogPortal>\n));\nAlertDialogContent.displayName = AlertDialogPrimitive.Content.displayName;\n\nconst AlertDialogHeader = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLDivElement>) => (\n <div\n className={cn(\n \"flex flex-col space-y-2 text-center sm:text-left\",\n className,\n )}\n {...props}\n />\n);\nAlertDialogHeader.displayName = \"AlertDialogHeader\";\n\nconst AlertDialogFooter = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLDivElement>) => (\n <div\n className={cn(\n \"flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2\",\n className,\n )}\n {...props}\n />\n);\nAlertDialogFooter.displayName = \"AlertDialogFooter\";\n\nconst AlertDialogTitle = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Title>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Title>\n>(({ className, ...props }, ref) => (\n <AlertDialogPrimitive.Title\n ref={ref}\n className={cn(\"text-lg font-semibold\", className)}\n {...props}\n />\n));\nAlertDialogTitle.displayName = AlertDialogPrimitive.Title.displayName;\n\nconst AlertDialogDescription = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Description>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Description>\n>(({ className, ...props }, ref) => (\n <AlertDialogPrimitive.Description\n ref={ref}\n className={cn(\"text-sm text-muted-foreground\", className)}\n {...props}\n />\n));\nAlertDialogDescription.displayName =\n AlertDialogPrimitive.Description.displayName;\n\nconst AlertDialogAction = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Action>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Action>\n>(({ className, ...props }, ref) => (\n <AlertDialogPrimitive.Action\n ref={ref}\n className={cn(buttonVariants(), className)}\n {...props}\n />\n));\nAlertDialogAction.displayName = AlertDialogPrimitive.Action.displayName;\n\nconst AlertDialogCancel = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Cancel>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Cancel>\n>(({ className, ...props }, ref) => (\n <AlertDialogPrimitive.Cancel\n ref={ref}\n className={cn(\n buttonVariants({ variant: \"outline\" }),\n \"mt-2 sm:mt-0\",\n className,\n )}\n {...props}\n />\n));\nAlertDialogCancel.displayName = AlertDialogPrimitive.Cancel.displayName;\n\nexport {\n AlertDialog,\n AlertDialogPortal,\n AlertDialogOverlay,\n AlertDialogTrigger,\n AlertDialogContent,\n AlertDialogHeader,\n AlertDialogFooter,\n AlertDialogTitle,\n AlertDialogDescription,\n AlertDialogAction,\n AlertDialogCancel,\n};\n","import * as React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nconst Table = React.forwardRef<\n HTMLTableElement,\n React.HTMLAttributes<HTMLTableElement>\n>(({ className, ...props }, ref) => (\n <div className=\"relative w-full overflow-auto\">\n <table\n ref={ref}\n className={cn(\"w-full caption-bottom text-sm\", className)}\n {...props}\n />\n </div>\n));\nTable.displayName = \"Table\";\n\nconst TableHeader = React.forwardRef<\n HTMLTableSectionElement,\n React.HTMLAttributes<HTMLTableSectionElement>\n>(({ className, ...props }, ref) => (\n <thead ref={ref} className={cn(\"[&_tr]:border-b\", className)} {...props} />\n));\nTableHeader.displayName = \"TableHeader\";\n\nconst TableBody = React.forwardRef<\n HTMLTableSectionElement,\n React.HTMLAttributes<HTMLTableSectionElement>\n>(({ className, ...props }, ref) => (\n <tbody\n ref={ref}\n className={cn(\"[&_tr:last-child]:border-0\", className)}\n {...props}\n />\n));\nTableBody.displayName = \"TableBody\";\n\nconst TableFooter = React.forwardRef<\n HTMLTableSectionElement,\n React.HTMLAttributes<HTMLTableSectionElement>\n>(({ className, ...props }, ref) => (\n <tfoot\n ref={ref}\n className={cn(\n \"border-t bg-muted/50 font-medium [&>tr]:last:border-b-0\",\n className,\n )}\n {...props}\n />\n));\nTableFooter.displayName = \"TableFooter\";\n\nconst TableRow = React.forwardRef<\n HTMLTableRowElement,\n React.HTMLAttributes<HTMLTableRowElement>\n>(({ className, ...props }, ref) => (\n <tr\n ref={ref}\n className={cn(\n \"border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted\",\n className,\n )}\n {...props}\n />\n));\nTableRow.displayName = \"TableRow\";\n\nconst TableHead = React.forwardRef<\n HTMLTableCellElement,\n React.ThHTMLAttributes<HTMLTableCellElement>\n>(({ className, ...props }, ref) => (\n <th\n ref={ref}\n className={cn(\n \"h-12 px-4 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0 [&:has([role=checkbox])]:w-[40px]\",\n className,\n )}\n {...props}\n />\n));\nTableHead.displayName = \"TableHead\";\n\nconst TableCell = React.forwardRef<\n HTMLTableCellElement,\n React.TdHTMLAttributes<HTMLTableCellElement>\n>(({ className, ...props }, ref) => (\n <td\n ref={ref}\n className={cn(\n \"p-4 align-middle [&:has([role=checkbox])]:pr-0 [&:has([role=checkbox])]:w-[40px]\",\n className,\n )}\n {...props}\n />\n));\nTableCell.displayName = \"TableCell\";\n\nconst TableCaption = React.forwardRef<\n HTMLTableCaptionElement,\n React.HTMLAttributes<HTMLTableCaptionElement>\n>(({ className, ...props }, ref) => (\n <caption\n ref={ref}\n className={cn(\"mt-4 text-sm text-muted-foreground\", className)}\n {...props}\n />\n));\nTableCaption.displayName = \"TableCaption\";\n\nexport {\n Table,\n TableHeader,\n TableBody,\n TableFooter,\n TableHead,\n TableRow,\n TableCell,\n TableCaption,\n};\n","\"use client\";\n\nimport * as TabsPrimitive from \"@radix-ui/react-tabs\";\nimport * as React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nconst Tabs = TabsPrimitive.Root;\n\nconst TabsList = React.forwardRef<\n React.ElementRef<typeof TabsPrimitive.List>,\n React.ComponentPropsWithoutRef<typeof TabsPrimitive.List>\n>(({ className, ...props }, ref) => (\n <TabsPrimitive.List\n ref={ref}\n className={cn(\n \"inline-flex h-10 items-center justify-center rounded-md bg-muted p-1 text-muted-foreground\",\n className,\n )}\n {...props}\n />\n));\nTabsList.displayName = TabsPrimitive.List.displayName;\n\nconst TabsTrigger = React.forwardRef<\n React.ElementRef<typeof TabsPrimitive.Trigger>,\n React.ComponentPropsWithoutRef<typeof TabsPrimitive.Trigger>\n>(({ className, ...props }, ref) => (\n <TabsPrimitive.Trigger\n ref={ref}\n className={cn(\n \"inline-flex items-center justify-center whitespace-nowrap rounded-sm px-3 py-1.5 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm\",\n className,\n )}\n {...props}\n />\n));\nTabsTrigger.displayName = TabsPrimitive.Trigger.displayName;\n\nconst TabsContent = React.forwardRef<\n React.ElementRef<typeof TabsPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof TabsPrimitive.Content>\n>(({ className, ...props }, ref) => (\n <TabsPrimitive.Content\n ref={ref}\n className={cn(\n \"mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\",\n className,\n )}\n {...props}\n />\n));\nTabsContent.displayName = TabsPrimitive.Content.displayName;\n\nexport { Tabs, TabsList, TabsTrigger, TabsContent };\n"],"names":["Promise","resolve","then","__webpack_require__","bind","LastRunCell","param","workflowId","lastRunAt","lastRunStatus","useLastRunForWorkflow","data","useQuery","GET_JOBS","variables","page","limit","filters","workflow","eq","sort","field","direction","pollInterval","lastJob","jobsPagination","items","createdAt","status","jsx_runtime","jsxs","div","className","jsx","formatDistanceToNow","Date","addSuffix","Badge","variant","getStatusColor","span","WorkflowActionsCell","user","isEditModalOpen","setIsEditModalOpen","useState","isDeleteModalOpen","setIsDeleteModalOpen","deleteConfirmation","setDeleteConfirmation","toast","useToast","hasWriteAccess","owner","id","rights_mode","RBAC","users","userAccess","find","u","toString","rights","roles","role","roleAccess","r","removeWorkflow","useMutation","REMOVE_WORKFLOW_TEMPLATE_BY_ID","refetchQueries","GET_WORKFLOW_TEMPLATES","handleDelete","name","title","description","concat","error","workflowMessages","steps_json","map","step","index","type","content","contentExample","toolName","parts","toolInvocation","Fragment","Button","size","onClick","Edit","Eye","console","log","Play","Trash2","SaveWorkflowModal","isOpen","onClose","messages","sessionTitle","existingWorkflow","isReadOnly","AlertDialog","open","onOpenChange","AlertDialogContent","AlertDialogHeader","AlertDialogTitle","AlertDialogDescription","br","Label","htmlFor","Input","value","onChange","e","target","placeholder","AlertDialogFooter","disabled","DataTableViewOptions","table","DropdownMenu","DropdownMenuTrigger","asChild","MixerHorizontalIcon","DropdownMenuContent","align","DropdownMenuLabel","DropdownMenuSeparator","getAllColumns","filter","column","accessorFn","getCanHide","DropdownMenuCheckboxItem","checked","getIsVisible","onCheckedChange","toggleVisibility","DataTable","previousData","pageCount","columns","rowSelection","setRowSelection","React","columnVisibility","setColumnVisibility","columnFilters","setColumnFilters","setFilters","setPage","sorting","setSorting","loading","refetch","fetchPolicy","nextFetchPolicy","defaultData","onPaginationChange","skip","pagination","usePagination","setPagination","pageSize","pageIndex","removeWorkflowResult","workflow_templatesPagination","pageInfo","useReactTable","state","enableRowSelection","onRowSelectionChange","onSortingChange","onColumnFiltersChange","onColumnVisibilityChange","getCoreRowModel","getFilteredRowModel","getPaginationRowModel","getSortedRowModel","getFacetedRowModel","getFacetedUniqueValues","manualPagination","search","copy","exists","contains","push","isFiltered","length","event","getIsSomeRowsSelected","getIsAllRowsSelected","promises","getSelectedRowModel","rows","forEach","row","original","all","resetRowSelection","catch","Loading","nameFilter","splice","indexOf","Cross2Icon","Table","TableHeader","getHeaderGroups","TableRow","headerGroup","headers","TableHead","colSpan","header","isPlaceholder","flexRender","columnDef","getContext","TableBody","getRowModel","data-state","getIsSelected","getVisibleCells","TableCell","cell","Array","from","_","colIndex","Skeleton","getFilteredSelectedRowModel","getPageCount","setPageIndex","hasPreviousPage","DoubleArrowLeftIcon","previousPage","ChevronLeftIcon","nextPage","hasNextPage","ChevronRightIcon","DoubleArrowRightIcon","JobsStatusArea","GET_JOB_STATISTICS_ENHANCED","stats","jobStatistics","runningCount","erroredCount","completedCount","failedCount","averageDuration","statusCards","icon","Clock","color","bgColor","AlertTriangle","CheckCircle","XCircle","Icon","card","Card","CardHeader","CardTitle","CardContent","p","Math","round","dynamic","WorkflowsPage","useContext","UserContext","accessorKey","toggleSorting","getIsSorted","ArrowUpDown","visibility","getVisibilityColor","getVisibilityText","getValue","h2","CodeBlockContext","createContext","code","CodeBlock","language","showLineNumbers","children","props","react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__","Provider","cn","SyntaxHighlighter","codeTagProps","customStyle","margin","padding","fontSize","background","lineNumberStyle","paddingRight","minWidth","style","oneLight","oneDark","CodeBlockCopyButton","onCopy","onError","timeout","isCopied","setIsCopied","copyToClipboard","navigator","clipboard","writeText","setTimeout","CheckIcon","CopyIcon","HardenedMarkdown","hardenReactMarkdown","ReactMarkdown","components","ol","node","li","ul","hr","strong","a","rel","h1","h3","h4","h5","h6","thead","tbody","tr","th","td","blockquote","position","start","line","end","pre","properties","replace","isValidElement","Response","memo","options","allowedImagePrefixes","allowedLinkPrefixes","defaultOrigin","parseIncompleteMarkdown","shouldParseIncompleteMarkdown","parsedChildren","text","result","linkMatch","match","startIndex","lastIndexOf","substring","asteriskPairs","underscorePairs","singleAsterisks","split","reduce","acc","char","prevChar","nextChar","singleUnderscores","includes","singleBacktickCount","i","isTripleStart","isTripleMiddle","isTripleEnd","tildePairs","rehypePlugins","rehypeKatex","remarkPlugins","remarkGfm","remarkMath","prevProps","nextProps","displayName","AlertDialogPrimitive","AlertDialogPortal","AlertDialogOverlay","ref","AlertDialogAction","buttonVariants","AlertDialogCancel","TableFooter","tfoot","TableCaption","caption","Tabs","TabsPrimitive","TabsList","TabsTrigger","TabsContent"],"sourceRoot":""}