@exulu/frontend 1.3.2 → 1.4.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 (254) hide show
  1. package/dist/.next/BUILD_ID +1 -1
  2. package/dist/.next/app-build-manifest.json +185 -174
  3. package/dist/.next/app-path-routes-manifest.json +1 -1
  4. package/dist/.next/build-manifest.json +2 -2
  5. package/dist/.next/prerender-manifest.json +1 -1
  6. package/dist/.next/server/app/(application)/agents/edit/[id]/page.js +1 -1
  7. package/dist/.next/server/app/(application)/agents/edit/[id]/page.js.nft.json +1 -1
  8. package/dist/.next/server/app/(application)/agents/edit/[id]/page_client-reference-manifest.js +1 -1
  9. package/dist/.next/server/app/(application)/agents/page.js +1 -2
  10. package/dist/.next/server/app/(application)/agents/page.js.nft.json +1 -1
  11. package/dist/.next/server/app/(application)/agents/page_client-reference-manifest.js +1 -1
  12. package/dist/.next/server/app/(application)/chat/[agent]/[session]/page.js +1 -1
  13. package/dist/.next/server/app/(application)/chat/[agent]/[session]/page.js.nft.json +1 -1
  14. package/dist/.next/server/app/(application)/chat/[agent]/[session]/page_client-reference-manifest.js +1 -1
  15. package/dist/.next/server/app/(application)/chat/[agent]/page.js +1 -1
  16. package/dist/.next/server/app/(application)/chat/[agent]/page.js.nft.json +1 -1
  17. package/dist/.next/server/app/(application)/chat/[agent]/page_client-reference-manifest.js +1 -1
  18. package/dist/.next/server/app/(application)/chat/page.js +1 -1
  19. package/dist/.next/server/app/(application)/chat/page.js.nft.json +1 -1
  20. package/dist/.next/server/app/(application)/chat/page_client-reference-manifest.js +1 -1
  21. package/dist/.next/server/app/(application)/configuration/page.js +1 -1
  22. package/dist/.next/server/app/(application)/configuration/page.js.nft.json +1 -1
  23. package/dist/.next/server/app/(application)/configuration/page_client-reference-manifest.js +1 -1
  24. package/dist/.next/server/app/(application)/dashboard/page.js +5 -1
  25. package/dist/.next/server/app/(application)/dashboard/page.js.nft.json +1 -1
  26. package/dist/.next/server/app/(application)/dashboard/page_client-reference-manifest.js +1 -1
  27. package/dist/.next/server/app/(application)/data/[[...query]]/page.js +5 -1
  28. package/dist/.next/server/app/(application)/data/[[...query]]/page.js.nft.json +1 -1
  29. package/dist/.next/server/app/(application)/data/[[...query]]/page_client-reference-manifest.js +1 -1
  30. package/dist/.next/server/app/(application)/evals/[id]/page.js +1 -1
  31. package/dist/.next/server/app/(application)/evals/[id]/page.js.nft.json +1 -1
  32. package/dist/.next/server/app/(application)/evals/[id]/page_client-reference-manifest.js +1 -1
  33. package/dist/.next/server/app/(application)/evals/[id]/runs/page.js +1 -1
  34. package/dist/.next/server/app/(application)/evals/[id]/runs/page.js.nft.json +1 -1
  35. package/dist/.next/server/app/(application)/evals/[id]/runs/page_client-reference-manifest.js +1 -1
  36. package/dist/.next/server/app/(application)/evals/cases/page.js +1 -1
  37. package/dist/.next/server/app/(application)/evals/cases/page.js.nft.json +1 -1
  38. package/dist/.next/server/app/(application)/evals/cases/page_client-reference-manifest.js +1 -1
  39. package/dist/.next/server/app/(application)/evals/page.js +1 -1
  40. package/dist/.next/server/app/(application)/evals/page.js.nft.json +1 -1
  41. package/dist/.next/server/app/(application)/evals/page_client-reference-manifest.js +1 -1
  42. package/dist/.next/server/app/(application)/explorer/page.js +1 -1
  43. package/dist/.next/server/app/(application)/explorer/page.js.nft.json +1 -1
  44. package/dist/.next/server/app/(application)/explorer/page_client-reference-manifest.js +1 -1
  45. package/dist/.next/server/app/(application)/jobs/page.js +1 -1
  46. package/dist/.next/server/app/(application)/jobs/page.js.nft.json +1 -1
  47. package/dist/.next/server/app/(application)/jobs/page_client-reference-manifest.js +1 -1
  48. package/dist/.next/server/app/(application)/keys/page.js +1 -1
  49. package/dist/.next/server/app/(application)/keys/page.js.nft.json +1 -1
  50. package/dist/.next/server/app/(application)/keys/page_client-reference-manifest.js +1 -1
  51. package/dist/.next/server/app/(application)/page.js +1 -1
  52. package/dist/.next/server/app/(application)/page.js.nft.json +1 -1
  53. package/dist/.next/server/app/(application)/page_client-reference-manifest.js +1 -1
  54. package/dist/.next/server/app/(application)/projects/[project]/page.js +1 -1
  55. package/dist/.next/server/app/(application)/projects/[project]/page.js.nft.json +1 -1
  56. package/dist/.next/server/app/(application)/projects/[project]/page_client-reference-manifest.js +1 -1
  57. package/dist/.next/server/app/(application)/projects/page.js +1 -1
  58. package/dist/.next/server/app/(application)/projects/page.js.nft.json +1 -1
  59. package/dist/.next/server/app/(application)/projects/page_client-reference-manifest.js +1 -1
  60. package/dist/.next/server/app/(application)/roles/page.js +1 -1
  61. package/dist/.next/server/app/(application)/roles/page.js.nft.json +1 -1
  62. package/dist/.next/server/app/(application)/roles/page_client-reference-manifest.js +1 -1
  63. package/dist/.next/server/app/(application)/token/page.js +1 -1
  64. package/dist/.next/server/app/(application)/token/page.js.nft.json +1 -1
  65. package/dist/.next/server/app/(application)/token/page_client-reference-manifest.js +1 -1
  66. package/dist/.next/server/app/(application)/users/page.js +1 -1
  67. package/dist/.next/server/app/(application)/users/page.js.nft.json +1 -1
  68. package/dist/.next/server/app/(application)/users/page_client-reference-manifest.js +1 -1
  69. package/dist/.next/server/app/(application)/variables/create/page.js +1 -1
  70. package/dist/.next/server/app/(application)/variables/create/page.js.nft.json +1 -1
  71. package/dist/.next/server/app/(application)/variables/create/page_client-reference-manifest.js +1 -1
  72. package/dist/.next/server/app/(application)/variables/edit/[variable_id]/page.js +1 -1
  73. package/dist/.next/server/app/(application)/variables/edit/[variable_id]/page.js.nft.json +1 -1
  74. package/dist/.next/server/app/(application)/variables/edit/[variable_id]/page_client-reference-manifest.js +1 -1
  75. package/dist/.next/server/app/(application)/variables/page.js +1 -1
  76. package/dist/.next/server/app/(application)/variables/page.js.nft.json +1 -1
  77. package/dist/.next/server/app/(application)/variables/page_client-reference-manifest.js +1 -1
  78. package/dist/.next/server/app/(application)/variables/usage/[variable_id]/page.js +1 -1
  79. package/dist/.next/server/app/(application)/variables/usage/[variable_id]/page.js.nft.json +1 -1
  80. package/dist/.next/server/app/(application)/variables/usage/[variable_id]/page_client-reference-manifest.js +1 -1
  81. package/dist/.next/server/app/(application)/workflows/page.js +1 -1
  82. package/dist/.next/server/app/(application)/workflows/page.js.nft.json +1 -1
  83. package/dist/.next/server/app/(application)/workflows/page_client-reference-manifest.js +1 -1
  84. package/dist/.next/server/app/(authentication)/login/page_client-reference-manifest.js +1 -1
  85. package/dist/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  86. package/dist/.next/server/app/_not-found.html +1 -1
  87. package/dist/.next/server/app/_not-found.rsc +1 -1
  88. package/dist/.next/server/app/api/auth/[...nextauth]/route.js +9 -9
  89. package/dist/.next/server/app-paths-manifest.json +5 -5
  90. package/dist/.next/server/chunks/1051.js +16 -16
  91. package/dist/.next/server/chunks/2270.js +188 -100
  92. package/dist/.next/server/chunks/{8838.js → 2875.js} +1 -1
  93. package/dist/.next/server/chunks/2916.js +1 -1
  94. package/dist/.next/server/chunks/3503.js +1 -0
  95. package/dist/.next/server/chunks/{7544.js → 4552.js} +1 -1
  96. package/dist/.next/server/chunks/{3393.js → 4739.js} +1 -1
  97. package/dist/.next/server/chunks/5192.js +1 -1
  98. package/dist/.next/server/chunks/5999.js +2 -0
  99. package/dist/.next/server/chunks/6282.js +1 -0
  100. package/dist/.next/server/chunks/6623.js +1 -0
  101. package/dist/.next/server/chunks/7721.js +1 -0
  102. package/dist/.next/server/chunks/7944.js +2 -2
  103. package/dist/.next/server/chunks/8050.js +1 -0
  104. package/dist/.next/server/chunks/8206.js +1 -0
  105. package/dist/.next/server/chunks/8679.js +5 -0
  106. package/dist/.next/server/middleware-manifest.json +5 -5
  107. package/dist/.next/server/pages/404.html +1 -1
  108. package/dist/.next/server/pages/500.html +1 -1
  109. package/dist/.next/server/server-reference-manifest.json +1 -1
  110. package/dist/.next/static/chunks/1294-368dc8ec59054da4.js +2 -0
  111. package/dist/.next/static/chunks/1294-368dc8ec59054da4.js.map +1 -0
  112. package/dist/.next/static/chunks/{1645-e5fd10236c0183ce.js → 1645-570e014100772437.js} +1 -1
  113. package/dist/.next/static/chunks/{1645-e5fd10236c0183ce.js.map → 1645-570e014100772437.js.map} +1 -1
  114. package/dist/.next/static/chunks/1957-5867716304ecd208.js +2 -0
  115. package/dist/.next/static/chunks/1957-5867716304ecd208.js.map +1 -0
  116. package/dist/.next/static/chunks/{2293-59b4bbce0c5bd2f2.js → 2293-1681cdef5b8c0c0b.js} +1 -1
  117. package/dist/.next/static/chunks/{2293-59b4bbce0c5bd2f2.js.map → 2293-1681cdef5b8c0c0b.js.map} +1 -1
  118. package/dist/.next/static/chunks/3475-28ce4fce960656bd.js +2 -0
  119. package/dist/.next/static/chunks/3475-28ce4fce960656bd.js.map +1 -0
  120. package/dist/.next/static/chunks/3832-a5e8fc6647e2be65.js +2 -0
  121. package/dist/.next/static/chunks/3832-a5e8fc6647e2be65.js.map +1 -0
  122. package/dist/.next/static/chunks/{4386-a36fe9c65884f025.js → 4386-c7690667749bff6a.js} +1 -1
  123. package/dist/.next/static/chunks/{4386-a36fe9c65884f025.js.map → 4386-c7690667749bff6a.js.map} +1 -1
  124. package/dist/.next/static/chunks/4750-4d5c13bbc96bc19b.js +2 -0
  125. package/dist/.next/static/chunks/4750-4d5c13bbc96bc19b.js.map +1 -0
  126. package/dist/.next/static/chunks/5243-1aaa41b2cd0ea87c.js +2 -0
  127. package/dist/.next/static/chunks/5243-1aaa41b2cd0ea87c.js.map +1 -0
  128. package/dist/.next/static/chunks/5978-814d6900645d2fcc.js +2 -0
  129. package/dist/.next/static/chunks/5978-814d6900645d2fcc.js.map +1 -0
  130. package/dist/.next/static/chunks/6373-651cb258c9e2b57b.js +2 -0
  131. package/dist/.next/static/chunks/6373-651cb258c9e2b57b.js.map +1 -0
  132. package/dist/.next/static/chunks/{7564-44a20b31206685e1.js → 6545-5a1d7cf4d5ca770e.js} +21 -21
  133. package/dist/.next/static/chunks/6545-5a1d7cf4d5ca770e.js.map +1 -0
  134. package/dist/.next/static/chunks/6839-0f4cfb48058a5ab6.js +2 -0
  135. package/dist/.next/static/chunks/6839-0f4cfb48058a5ab6.js.map +1 -0
  136. package/dist/.next/static/chunks/723-94e596796cbf911d.js +2 -0
  137. package/dist/.next/static/chunks/723-94e596796cbf911d.js.map +1 -0
  138. package/dist/.next/static/chunks/8202-db2cc384c66bc1be.js +2 -0
  139. package/dist/.next/static/chunks/8202-db2cc384c66bc1be.js.map +1 -0
  140. package/dist/.next/static/chunks/8269-37dd07515eb44201.js +2 -0
  141. package/dist/.next/static/chunks/8269-37dd07515eb44201.js.map +1 -0
  142. package/dist/.next/static/chunks/8469-ba31cbd7acab5f94.js +2 -0
  143. package/dist/.next/static/chunks/8469-ba31cbd7acab5f94.js.map +1 -0
  144. package/dist/.next/static/chunks/8824-20030459012376a3.js +2 -0
  145. package/dist/.next/static/chunks/8824-20030459012376a3.js.map +1 -0
  146. package/dist/.next/static/chunks/9105-3800f721d38e2b9a.js +2 -0
  147. package/dist/.next/static/chunks/9105-3800f721d38e2b9a.js.map +1 -0
  148. package/dist/.next/static/chunks/9183-a51605ff26b92fed.js +41 -0
  149. package/dist/.next/static/chunks/9183-a51605ff26b92fed.js.map +1 -0
  150. package/dist/.next/static/chunks/app/(application)/agents/edit/[id]/page-511f168123f85285.js +2 -0
  151. package/dist/.next/static/chunks/app/(application)/agents/edit/[id]/page-511f168123f85285.js.map +1 -0
  152. package/dist/.next/static/chunks/app/(application)/agents/{page-499ac3bd1044306c.js → page-63643deabdaa6b2c.js} +2 -2
  153. package/dist/.next/static/chunks/app/(application)/agents/{page-499ac3bd1044306c.js.map → page-63643deabdaa6b2c.js.map} +1 -1
  154. package/dist/.next/static/chunks/app/(application)/chat/[agent]/[session]/{page-3807a8bc2ae87548.js → page-62c7321ba26632af.js} +2 -2
  155. package/dist/.next/static/chunks/app/(application)/chat/[agent]/[session]/page-62c7321ba26632af.js.map +1 -0
  156. package/dist/.next/static/chunks/app/(application)/chat/{layout-53796525bd3e2443.js → layout-5eb1d22ddcbc0b55.js} +2 -2
  157. package/dist/.next/static/chunks/app/(application)/chat/{layout-53796525bd3e2443.js.map → layout-5eb1d22ddcbc0b55.js.map} +1 -1
  158. package/dist/.next/static/chunks/app/(application)/configuration/{page-2d8a0e2664ab9a94.js → page-8f92af5318feb84f.js} +1 -1
  159. package/dist/.next/static/chunks/app/(application)/configuration/{page-2d8a0e2664ab9a94.js.map → page-8f92af5318feb84f.js.map} +1 -1
  160. package/dist/.next/static/chunks/app/(application)/dashboard/page-00e425d942e0d769.js +2 -0
  161. package/dist/.next/static/chunks/app/(application)/dashboard/page-00e425d942e0d769.js.map +1 -0
  162. package/dist/.next/static/chunks/app/(application)/data/[[...query]]/layout-a460a56d3efac658.js +2 -0
  163. package/dist/.next/static/chunks/app/(application)/data/[[...query]]/layout-a460a56d3efac658.js.map +1 -0
  164. package/dist/.next/static/chunks/app/(application)/data/[[...query]]/page-bb06a9553c9ed178.js +2 -0
  165. package/dist/.next/static/chunks/app/(application)/data/[[...query]]/page-bb06a9553c9ed178.js.map +1 -0
  166. package/dist/.next/static/chunks/app/(application)/evals/[id]/{page-2238f1fb73d93328.js → page-ef82e92ca7d0da6c.js} +2 -2
  167. package/dist/.next/static/chunks/app/(application)/evals/[id]/{page-2238f1fb73d93328.js.map → page-ef82e92ca7d0da6c.js.map} +1 -1
  168. package/dist/.next/static/chunks/app/(application)/evals/[id]/runs/page-6622dd1b22a7885d.js +2 -0
  169. package/dist/.next/static/chunks/app/(application)/evals/[id]/runs/page-6622dd1b22a7885d.js.map +1 -0
  170. package/dist/.next/static/chunks/app/(application)/evals/cases/{page-ea5faf58b368feae.js → page-6246be9d6592d1d3.js} +2 -2
  171. package/dist/.next/static/chunks/app/(application)/evals/cases/{page-ea5faf58b368feae.js.map → page-6246be9d6592d1d3.js.map} +1 -1
  172. package/dist/.next/static/chunks/app/(application)/evals/{page-f79e1a90384ba618.js → page-b1e1fd7dba1e675f.js} +2 -2
  173. package/dist/.next/static/chunks/app/(application)/evals/{page-f79e1a90384ba618.js.map → page-b1e1fd7dba1e675f.js.map} +1 -1
  174. package/dist/.next/static/chunks/app/(application)/jobs/{page-e6f02a338bec4806.js → page-a96441a0bc654d68.js} +1 -1
  175. package/dist/.next/static/chunks/app/(application)/jobs/{page-e6f02a338bec4806.js.map → page-a96441a0bc654d68.js.map} +1 -1
  176. package/dist/.next/static/chunks/app/(application)/keys/{page-59ee4e0281131cbc.js → page-163aadfe9ad0d794.js} +1 -1
  177. package/dist/.next/static/chunks/app/(application)/keys/{page-59ee4e0281131cbc.js.map → page-163aadfe9ad0d794.js.map} +1 -1
  178. package/dist/.next/static/chunks/app/(application)/{layout-73d93420d0c6661c.js → layout-694c53aca85ef437.js} +2 -2
  179. package/dist/.next/static/chunks/app/(application)/{layout-73d93420d0c6661c.js.map → layout-694c53aca85ef437.js.map} +1 -1
  180. package/dist/.next/static/chunks/app/(application)/projects/[project]/page-e69828fde85c50af.js +2 -0
  181. package/dist/.next/static/chunks/app/(application)/projects/[project]/page-e69828fde85c50af.js.map +1 -0
  182. package/dist/.next/static/chunks/app/(application)/projects/{layout-f73ad7daf4825f1b.js → layout-d7642b25bf6d33b3.js} +2 -2
  183. package/dist/.next/static/chunks/app/(application)/projects/{layout-f73ad7daf4825f1b.js.map → layout-d7642b25bf6d33b3.js.map} +1 -1
  184. package/dist/.next/static/chunks/app/(application)/roles/page-5d5e5142f0997122.js +2 -0
  185. package/dist/.next/static/chunks/app/(application)/roles/page-5d5e5142f0997122.js.map +1 -0
  186. package/dist/.next/static/chunks/app/(application)/users/{page-e0a04fda52138aa0.js → page-b862cb199fd72525.js} +2 -2
  187. package/dist/.next/static/chunks/app/(application)/users/{page-e0a04fda52138aa0.js.map → page-b862cb199fd72525.js.map} +1 -1
  188. package/dist/.next/static/chunks/app/(application)/variables/create/{page-6c6076f3f253190d.js → page-d79d5c1c1ecabdb5.js} +1 -1
  189. package/dist/.next/static/chunks/app/(application)/variables/create/{page-6c6076f3f253190d.js.map → page-d79d5c1c1ecabdb5.js.map} +1 -1
  190. package/dist/.next/static/chunks/app/(application)/variables/edit/[variable_id]/{page-a3fa477fead5609a.js → page-72cf3aa95776ab96.js} +1 -1
  191. package/dist/.next/static/chunks/app/(application)/variables/edit/[variable_id]/{page-a3fa477fead5609a.js.map → page-72cf3aa95776ab96.js.map} +1 -1
  192. package/dist/.next/static/chunks/app/(application)/variables/{page-ddeff54a8b19bdbe.js → page-67864b471b48c950.js} +2 -2
  193. package/dist/.next/static/chunks/app/(application)/variables/{page-ddeff54a8b19bdbe.js.map → page-67864b471b48c950.js.map} +1 -1
  194. package/dist/.next/static/chunks/app/(application)/variables/usage/[variable_id]/{page-ed6d136e7ee3a591.js → page-208b4c9cc64abf2e.js} +1 -1
  195. package/dist/.next/static/chunks/app/(application)/variables/usage/[variable_id]/{page-ed6d136e7ee3a591.js.map → page-208b4c9cc64abf2e.js.map} +1 -1
  196. package/dist/.next/static/chunks/app/(application)/workflows/page-5b1ffc7c5012fdf6.js +2 -0
  197. package/dist/.next/static/chunks/app/(application)/workflows/page-5b1ffc7c5012fdf6.js.map +1 -0
  198. package/dist/.next/static/css/006966ab2edd0ebc.css +4 -0
  199. package/dist/.next/static/css/006966ab2edd0ebc.css.map +1 -0
  200. package/dist/.next/static/css/e3f2a16ab7676b05.css.map +1 -1
  201. package/dist/package.json +4 -1
  202. package/package.json +1 -1
  203. package/dist/.next/server/chunks/3743.js +0 -1
  204. package/dist/.next/server/chunks/4375.js +0 -1
  205. package/dist/.next/server/chunks/4680.js +0 -1
  206. package/dist/.next/server/chunks/7203.js +0 -5
  207. package/dist/.next/server/chunks/7598.js +0 -5
  208. package/dist/.next/server/chunks/8806.js +0 -1
  209. package/dist/.next/static/chunks/1957-670ddf66742d95f2.js +0 -2
  210. package/dist/.next/static/chunks/1957-670ddf66742d95f2.js.map +0 -1
  211. package/dist/.next/static/chunks/3397-5a704b2e12e9e883.js +0 -2
  212. package/dist/.next/static/chunks/3397-5a704b2e12e9e883.js.map +0 -1
  213. package/dist/.next/static/chunks/3832-10b779e2f89f162f.js +0 -2
  214. package/dist/.next/static/chunks/3832-10b779e2f89f162f.js.map +0 -1
  215. package/dist/.next/static/chunks/3998-c1c5bec61ce07357.js +0 -2
  216. package/dist/.next/static/chunks/3998-c1c5bec61ce07357.js.map +0 -1
  217. package/dist/.next/static/chunks/428-61741966c36f4f72.js +0 -2
  218. package/dist/.next/static/chunks/428-61741966c36f4f72.js.map +0 -1
  219. package/dist/.next/static/chunks/5585-4f0c084850210a82.js +0 -2
  220. package/dist/.next/static/chunks/5585-4f0c084850210a82.js.map +0 -1
  221. package/dist/.next/static/chunks/5615-042f927b657e6db1.js +0 -41
  222. package/dist/.next/static/chunks/5615-042f927b657e6db1.js.map +0 -1
  223. package/dist/.next/static/chunks/5978-f3b8475a2d9f9299.js +0 -2
  224. package/dist/.next/static/chunks/5978-f3b8475a2d9f9299.js.map +0 -1
  225. package/dist/.next/static/chunks/6242-c1c2f1479529e9d4.js +0 -2
  226. package/dist/.next/static/chunks/6242-c1c2f1479529e9d4.js.map +0 -1
  227. package/dist/.next/static/chunks/6373-fc4799cc7a13474a.js +0 -2
  228. package/dist/.next/static/chunks/6373-fc4799cc7a13474a.js.map +0 -1
  229. package/dist/.next/static/chunks/7398-c6de1642586049cd.js +0 -2
  230. package/dist/.next/static/chunks/7398-c6de1642586049cd.js.map +0 -1
  231. package/dist/.next/static/chunks/7564-44a20b31206685e1.js.map +0 -1
  232. package/dist/.next/static/chunks/79-1d568f3c4cd45bd4.js +0 -2
  233. package/dist/.next/static/chunks/79-1d568f3c4cd45bd4.js.map +0 -1
  234. package/dist/.next/static/chunks/app/(application)/agents/edit/[id]/page-b66390eb4a95ac1a.js +0 -2
  235. package/dist/.next/static/chunks/app/(application)/agents/edit/[id]/page-b66390eb4a95ac1a.js.map +0 -1
  236. package/dist/.next/static/chunks/app/(application)/chat/[agent]/[session]/page-3807a8bc2ae87548.js.map +0 -1
  237. package/dist/.next/static/chunks/app/(application)/dashboard/page-85d3f8d2bd28ae4b.js +0 -2
  238. package/dist/.next/static/chunks/app/(application)/dashboard/page-85d3f8d2bd28ae4b.js.map +0 -1
  239. package/dist/.next/static/chunks/app/(application)/data/[[...query]]/layout-822dad4cb57f62e2.js +0 -2
  240. package/dist/.next/static/chunks/app/(application)/data/[[...query]]/layout-822dad4cb57f62e2.js.map +0 -1
  241. package/dist/.next/static/chunks/app/(application)/data/[[...query]]/page-3efd7701534078ea.js +0 -2
  242. package/dist/.next/static/chunks/app/(application)/data/[[...query]]/page-3efd7701534078ea.js.map +0 -1
  243. package/dist/.next/static/chunks/app/(application)/evals/[id]/runs/page-b6a3cb8435be3ade.js +0 -2
  244. package/dist/.next/static/chunks/app/(application)/evals/[id]/runs/page-b6a3cb8435be3ade.js.map +0 -1
  245. package/dist/.next/static/chunks/app/(application)/projects/[project]/page-19382bb263f85fda.js +0 -2
  246. package/dist/.next/static/chunks/app/(application)/projects/[project]/page-19382bb263f85fda.js.map +0 -1
  247. package/dist/.next/static/chunks/app/(application)/roles/page-acd9ef282bc53557.js +0 -2
  248. package/dist/.next/static/chunks/app/(application)/roles/page-acd9ef282bc53557.js.map +0 -1
  249. package/dist/.next/static/chunks/app/(application)/workflows/page-38488c44d89b32f4.js +0 -2
  250. package/dist/.next/static/chunks/app/(application)/workflows/page-38488c44d89b32f4.js.map +0 -1
  251. package/dist/.next/static/css/a7092ddec8ffd4fb.css +0 -4
  252. package/dist/.next/static/css/a7092ddec8ffd4fb.css.map +0 -1
  253. /package/dist/.next/static/{HHwzgh0RLIMeodnSs4vIv → soJPoIxCmlpJ75t9n-Q9V}/_buildManifest.js +0 -0
  254. /package/dist/.next/static/{HHwzgh0RLIMeodnSs4vIv → soJPoIxCmlpJ75t9n-Q9V}/_ssgManifest.js +0 -0
@@ -1,2 +0,0 @@
1
- "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[79,7598,3619],{63639:function(e,t,n){n.d(t,{Z:function(){return r}});let r=(0,n(39763).Z)("AlertTriangle",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3Z",key:"c3ski4"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]])},28842:function(e,t,n){n.d(t,{Z:function(){return r}});let r=(0,n(39763).Z)("ArrowUpDown",[["path",{d:"m21 16-4 4-4-4",key:"f6ql7i"}],["path",{d:"M17 20V4",key:"1ejh1v"}],["path",{d:"m3 8 4-4 4 4",key:"11wl7u"}],["path",{d:"M7 4v16",key:"1glfcx"}]])},65302:function(e,t,n){n.d(t,{Z:function(){return r}});let r=(0,n(39763).Z)("CheckCircle",[["path",{d:"M22 11.08V12a10 10 0 1 1-5.93-9.14",key:"g774vq"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]])},24156:function(e,t,n){n.d(t,{Z:function(){return r}});let r=(0,n(39763).Z)("ChevronsUpDown",[["path",{d:"m7 15 5 5 5-5",key:"1hf1tw"}],["path",{d:"m7 9 5-5 5 5",key:"sgt6xg"}]])},91723:function(e,t,n){n.d(t,{Z:function(){return r}});let r=(0,n(39763).Z)("Clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16 14",key:"68esgv"}]])},42208:function(e,t,n){n.d(t,{Z:function(){return r}});let r=(0,n(39763).Z)("Eye",[["path",{d:"M2 12s3-7 10-7 10 7 10 7-3 7-10 7-10-7-10-7Z",key:"rwhkz3"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]])},14924:function(e,t,n){n.d(t,{Z:function(){return r}});let r=(0,n(39763).Z)("Folder",[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]])},29202:function(e,t,n){n.d(t,{Z:function(){return r}});let r=(0,n(39763).Z)("Globe",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20",key:"13o1zl"}],["path",{d:"M2 12h20",key:"9i4pu4"}]])},66337:function(e,t,n){n.d(t,{Z:function(){return r}});let r=(0,n(39763).Z)("Lock",[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 10 0v4",key:"fwvmzm"}]])},88893:function(e,t,n){n.d(t,{Z:function(){return r}});let r=(0,n(39763).Z)("Pen",[["path",{d:"M17 3a2.85 2.83 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5Z",key:"5qss01"}]])},33276:function(e,t,n){n.d(t,{Z:function(){return r}});let r=(0,n(39763).Z)("Play",[["polygon",{points:"5 3 19 12 5 21 5 3",key:"191637"}]])},15868:function(e,t,n){n.d(t,{Z:function(){return r}});let r=(0,n(39763).Z)("SquarePen",[["path",{d:"M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7",key:"1m0v6g"}],["path",{d:"M18.375 2.625a2.121 2.121 0 1 1 3 3L12 15l-4 1 1-4Z",key:"1lpok0"}]])},45131:function(e,t,n){n.d(t,{Z:function(){return r}});let r=(0,n(39763).Z)("XCircle",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]])},23619:function(e,t,n){n.d(t,{aU:function(){return ej},$j:function(){return ek},VY:function(){return ew},dk:function(){return eR},aV:function(){return eM},h_:function(){return eb},fC:function(){return eD},Dx:function(){return eC},xz:function(){return ex}});var r=n(2265),o=n(73966),a=n(98575),i=n(6741),l=n(99255),u=n(80886),s=n(22308),c=n(99103),d=n(83832),f=n(71599),p=n(66840),h=n(86097),v=n(60703),g=n(5478),m=n(37053),y=n(57437),D="Dialog",[x,b]=(0,o.b)(D),[M,w]=x(D),j=e=>{let{__scopeDialog:t,children:n,open:o,defaultOpen:a,onOpenChange:i,modal:s=!0}=e,c=r.useRef(null),d=r.useRef(null),[f,p]=(0,u.T)({prop:o,defaultProp:null!=a&&a,onChange:i,caller:D});return(0,y.jsx)(M,{scope:t,triggerRef:c,contentRef:d,contentId:(0,l.M)(),titleId:(0,l.M)(),descriptionId:(0,l.M)(),open:f,onOpenChange:p,onOpenToggle:r.useCallback(()=>p(e=>!e),[p]),modal:s,children:n})};j.displayName=D;var k="DialogTrigger",C=r.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,o=w(k,n),l=(0,a.e)(t,o.triggerRef);return(0,y.jsx)(p.WV.button,{type:"button","aria-haspopup":"dialog","aria-expanded":o.open,"aria-controls":o.contentId,"data-state":q(o.open),...r,ref:l,onClick:(0,i.M)(e.onClick,o.onOpenToggle)})});C.displayName=k;var R="DialogPortal",[N,Z]=x(R,{forceMount:void 0}),A=e=>{let{__scopeDialog:t,forceMount:n,children:o,container:a}=e,i=w(R,t);return(0,y.jsx)(N,{scope:t,forceMount:n,children:r.Children.map(o,e=>(0,y.jsx)(f.z,{present:n||i.open,children:(0,y.jsx)(d.h,{asChild:!0,container:a,children:e})}))})};A.displayName=R;var I="DialogOverlay",F=r.forwardRef((e,t)=>{let n=Z(I,e.__scopeDialog),{forceMount:r=n.forceMount,...o}=e,a=w(I,e.__scopeDialog);return a.modal?(0,y.jsx)(f.z,{present:r||a.open,children:(0,y.jsx)(V,{...o,ref:t})}):null});F.displayName=I;var T=(0,m.Z8)("DialogOverlay.RemoveScroll"),V=r.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,o=w(I,n);return(0,y.jsx)(v.Z,{as:T,allowPinchZoom:!0,shards:[o.contentRef],children:(0,y.jsx)(p.WV.div,{"data-state":q(o.open),...r,ref:t,style:{pointerEvents:"auto",...r.style}})})}),O="DialogContent",E=r.forwardRef((e,t)=>{let n=Z(O,e.__scopeDialog),{forceMount:r=n.forceMount,...o}=e,a=w(O,e.__scopeDialog);return(0,y.jsx)(f.z,{present:r||a.open,children:a.modal?(0,y.jsx)(_,{...o,ref:t}):(0,y.jsx)(P,{...o,ref:t})})});E.displayName=O;var _=r.forwardRef((e,t)=>{let n=w(O,e.__scopeDialog),o=r.useRef(null),l=(0,a.e)(t,n.contentRef,o);return r.useEffect(()=>{let e=o.current;if(e)return(0,g.Ry)(e)},[]),(0,y.jsx)(Q,{...e,ref:l,trapFocus:n.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:(0,i.M)(e.onCloseAutoFocus,e=>{var t;e.preventDefault(),null===(t=n.triggerRef.current)||void 0===t||t.focus()}),onPointerDownOutside:(0,i.M)(e.onPointerDownOutside,e=>{let t=e.detail.originalEvent,n=0===t.button&&!0===t.ctrlKey;(2===t.button||n)&&e.preventDefault()}),onFocusOutside:(0,i.M)(e.onFocusOutside,e=>e.preventDefault())})}),P=r.forwardRef((e,t)=>{let n=w(O,e.__scopeDialog),o=r.useRef(!1),a=r.useRef(!1);return(0,y.jsx)(Q,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:t=>{var r,i;null===(r=e.onCloseAutoFocus)||void 0===r||r.call(e,t),t.defaultPrevented||(o.current||null===(i=n.triggerRef.current)||void 0===i||i.focus(),t.preventDefault()),o.current=!1,a.current=!1},onInteractOutside:t=>{var r,i;null===(r=e.onInteractOutside)||void 0===r||r.call(e,t),t.defaultPrevented||(o.current=!0,"pointerdown"!==t.detail.originalEvent.type||(a.current=!0));let l=t.target;(null===(i=n.triggerRef.current)||void 0===i?void 0:i.contains(l))&&t.preventDefault(),"focusin"===t.detail.originalEvent.type&&a.current&&t.preventDefault()}})}),Q=r.forwardRef((e,t)=>{let{__scopeDialog:n,trapFocus:o,onOpenAutoFocus:i,onCloseAutoFocus:l,...u}=e,d=w(O,n),f=r.useRef(null),p=(0,a.e)(t,f);return(0,h.EW)(),(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(c.M,{asChild:!0,loop:!0,trapped:o,onMountAutoFocus:i,onUnmountAutoFocus:l,children:(0,y.jsx)(s.XB,{role:"dialog",id:d.contentId,"aria-describedby":d.descriptionId,"aria-labelledby":d.titleId,"data-state":q(d.open),...u,ref:p,onDismiss:()=>d.onOpenChange(!1)})}),(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(U,{titleId:d.titleId}),(0,y.jsx)(G,{contentRef:f,descriptionId:d.descriptionId})]})]})}),z="DialogTitle",H=r.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,o=w(z,n);return(0,y.jsx)(p.WV.h2,{id:o.titleId,...r,ref:t})});H.displayName=z;var W="DialogDescription",X=r.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,o=w(W,n);return(0,y.jsx)(p.WV.p,{id:o.descriptionId,...r,ref:t})});X.displayName=W;var S="DialogClose",Y=r.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,o=w(S,n);return(0,y.jsx)(p.WV.button,{type:"button",...r,ref:t,onClick:(0,i.M)(e.onClick,()=>o.onOpenChange(!1))})});function q(e){return e?"open":"closed"}Y.displayName=S;var L="DialogTitleWarning",[B,K]=(0,o.k)(L,{contentName:O,titleName:z,docsSlug:"dialog"}),U=e=>{let{titleId:t}=e,n=K(L),o="`".concat(n.contentName,"` requires a `").concat(n.titleName,"` for the component to be accessible for screen reader users.\n\nIf you want to hide the `").concat(n.titleName,"`, you can wrap it with our VisuallyHidden component.\n\nFor more information, see https://radix-ui.com/primitives/docs/components/").concat(n.docsSlug);return r.useEffect(()=>{t&&!document.getElementById(t)&&console.error(o)},[o,t]),null},G=e=>{let{contentRef:t,descriptionId:n}=e,o=K("DialogDescriptionWarning"),a="Warning: Missing `Description` or `aria-describedby={undefined}` for {".concat(o.contentName,"}.");return r.useEffect(()=>{var e;let r=null===(e=t.current)||void 0===e?void 0:e.getAttribute("aria-describedby");n&&r&&!document.getElementById(n)&&console.warn(a)},[a,t,n]),null},$="AlertDialog",[J,ee]=(0,o.b)($,[b]),et=b(),en=e=>{let{__scopeAlertDialog:t,...n}=e,r=et(t);return(0,y.jsx)(j,{...r,...n,modal:!0})};en.displayName=$;var er=r.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,o=et(n);return(0,y.jsx)(C,{...o,...r,ref:t})});er.displayName="AlertDialogTrigger";var eo=e=>{let{__scopeAlertDialog:t,...n}=e,r=et(t);return(0,y.jsx)(A,{...r,...n})};eo.displayName="AlertDialogPortal";var ea=r.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,o=et(n);return(0,y.jsx)(F,{...o,...r,ref:t})});ea.displayName="AlertDialogOverlay";var ei="AlertDialogContent",[el,eu]=J(ei),es=(0,m.sA)("AlertDialogContent"),ec=r.forwardRef((e,t)=>{let{__scopeAlertDialog:n,children:o,...l}=e,u=et(n),s=r.useRef(null),c=(0,a.e)(t,s),d=r.useRef(null);return(0,y.jsx)(B,{contentName:ei,titleName:ed,docsSlug:"alert-dialog",children:(0,y.jsx)(el,{scope:n,cancelRef:d,children:(0,y.jsxs)(E,{role:"alertdialog",...u,...l,ref:c,onOpenAutoFocus:(0,i.M)(l.onOpenAutoFocus,e=>{var t;e.preventDefault(),null===(t=d.current)||void 0===t||t.focus({preventScroll:!0})}),onPointerDownOutside:e=>e.preventDefault(),onInteractOutside:e=>e.preventDefault(),children:[(0,y.jsx)(es,{children:o}),(0,y.jsx)(ey,{contentRef:s})]})})})});ec.displayName=ei;var ed="AlertDialogTitle",ef=r.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,o=et(n);return(0,y.jsx)(H,{...o,...r,ref:t})});ef.displayName=ed;var ep="AlertDialogDescription",eh=r.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,o=et(n);return(0,y.jsx)(X,{...o,...r,ref:t})});eh.displayName=ep;var ev=r.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,o=et(n);return(0,y.jsx)(Y,{...o,...r,ref:t})});ev.displayName="AlertDialogAction";var eg="AlertDialogCancel",em=r.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,{cancelRef:o}=eu(eg,n),i=et(n),l=(0,a.e)(t,o);return(0,y.jsx)(Y,{...i,...r,ref:l})});em.displayName=eg;var ey=e=>{let{contentRef:t}=e,n="`".concat(ei,"` requires a description for the component to be accessible for screen reader users.\n\nYou can add a description to the `").concat(ei,"` by passing a `").concat(ep,"` component as a child, which also benefits sighted users by adding visible context to the dialog.\n\nAlternatively, you can use your own component as a description by assigning it an `id` and passing the same value to the `aria-describedby` prop in `").concat(ei,"`. If the description is confusing or duplicative for sighted users, you can use the `@radix-ui/react-visually-hidden` primitive as a wrapper around your description component.\n\nFor more information, see https://radix-ui.com/primitives/docs/components/alert-dialog");return r.useEffect(()=>{var e;document.getElementById(null===(e=t.current)||void 0===e?void 0:e.getAttribute("aria-describedby"))||console.warn(n)},[n,t]),null},eD=en,ex=er,eb=eo,eM=ea,ew=ec,ej=ev,ek=em,eC=ef,eR=eh},20271:function(e,t,n){n.d(t,{VY:function(){return I},aV:function(){return Z},fC:function(){return N},xz:function(){return A}});var r=n(2265),o=n(6741),a=n(73966),i=n(1353),l=n(71599),u=n(66840),s=n(29114),c=n(80886),d=n(99255),f=n(57437),p="Tabs",[h,v]=(0,a.b)(p,[i.Pc]),g=(0,i.Pc)(),[m,y]=h(p),D=r.forwardRef((e,t)=>{let{__scopeTabs:n,value:r,onValueChange:o,defaultValue:a,orientation:i="horizontal",dir:l,activationMode:h="automatic",...v}=e,g=(0,s.gm)(l),[y,D]=(0,c.T)({prop:r,onChange:o,defaultProp:null!=a?a:"",caller:p});return(0,f.jsx)(m,{scope:n,baseId:(0,d.M)(),value:y,onValueChange:D,orientation:i,dir:g,activationMode:h,children:(0,f.jsx)(u.WV.div,{dir:g,"data-orientation":i,...v,ref:t})})});D.displayName=p;var x="TabsList",b=r.forwardRef((e,t)=>{let{__scopeTabs:n,loop:r=!0,...o}=e,a=y(x,n),l=g(n);return(0,f.jsx)(i.fC,{asChild:!0,...l,orientation:a.orientation,dir:a.dir,loop:r,children:(0,f.jsx)(u.WV.div,{role:"tablist","aria-orientation":a.orientation,...o,ref:t})})});b.displayName=x;var M="TabsTrigger",w=r.forwardRef((e,t)=>{let{__scopeTabs:n,value:r,disabled:a=!1,...l}=e,s=y(M,n),c=g(n),d=C(s.baseId,r),p=R(s.baseId,r),h=r===s.value;return(0,f.jsx)(i.ck,{asChild:!0,...c,focusable:!a,active:h,children:(0,f.jsx)(u.WV.button,{type:"button",role:"tab","aria-selected":h,"aria-controls":p,"data-state":h?"active":"inactive","data-disabled":a?"":void 0,disabled:a,id:d,...l,ref:t,onMouseDown:(0,o.M)(e.onMouseDown,e=>{a||0!==e.button||!1!==e.ctrlKey?e.preventDefault():s.onValueChange(r)}),onKeyDown:(0,o.M)(e.onKeyDown,e=>{[" ","Enter"].includes(e.key)&&s.onValueChange(r)}),onFocus:(0,o.M)(e.onFocus,()=>{let e="manual"!==s.activationMode;h||a||!e||s.onValueChange(r)})})})});w.displayName=M;var j="TabsContent",k=r.forwardRef((e,t)=>{let{__scopeTabs:n,value:o,forceMount:a,children:i,...s}=e,c=y(j,n),d=C(c.baseId,o),p=R(c.baseId,o),h=o===c.value,v=r.useRef(h);return r.useEffect(()=>{let e=requestAnimationFrame(()=>v.current=!1);return()=>cancelAnimationFrame(e)},[]),(0,f.jsx)(l.z,{present:a||h,children:n=>{let{present:r}=n;return(0,f.jsx)(u.WV.div,{"data-state":h?"active":"inactive","data-orientation":c.orientation,role:"tabpanel","aria-labelledby":d,hidden:!r,id:p,tabIndex:0,...s,ref:t,style:{...e.style,animationDuration:v.current?"0s":void 0},children:r&&i})}})});function C(e,t){return"".concat(e,"-trigger-").concat(t)}function R(e,t){return"".concat(e,"-content-").concat(t)}k.displayName=j;var N=D,Z=b,A=w,I=k},81363:function(e,t,n){n.d(t,{T:function(){return o}});var r=n(99649);function o(e,t){let n=(0,r.Q)(e),o=(0,r.Q)(t);return 12*(n.getFullYear()-o.getFullYear())+(n.getMonth()-o.getMonth())}},27742:function(e,t,n){n.d(t,{V:function(){return o}});var r=n(99649);function o(e){let t=(0,r.Q)(e),n=t.getMonth();return t.setFullYear(t.getFullYear(),n+1,0),t.setHours(23,59,59,999),t}},7598:function(e,t,n){n.d(t,{Q:function(){return f}});var r=n(63497),o=n(99649);function a(e,t){let n=(0,o.Q)(e),r=(0,o.Q)(t),a=n.getTime()-r.getTime();return a<0?-1:a>0?1:a}var i=n(78198),l=n(81363),u=n(27742),s=n(5654),c=n(55528),d=n(9340);function f(e,t){return function(e,t,n){var r,f,p,h,v,g;let m,y,D;let x=(0,c.j)(),b=null!==(f=null!==(r=null==n?void 0:n.locale)&&void 0!==r?r:x.locale)&&void 0!==f?f:s._,M=a(e,t);if(isNaN(M))throw RangeError("Invalid time value");let w=Object.assign({},n,{addSuffix:null==n?void 0:n.addSuffix,comparison:M});M>0?(m=(0,o.Q)(t),y=(0,o.Q)(e)):(m=(0,o.Q)(e),y=(0,o.Q)(t));let j=(p=y,h=m,(g=null==void 0?void 0:(void 0).roundingMethod,e=>{let t=(g?Math[g]:Math.trunc)(e);return 0===t?0:t})((+(0,o.Q)(p)-+(0,o.Q)(h))/1e3)),k=Math.round((j-((0,d.D)(y)-(0,d.D)(m))/1e3)/60);if(k<2){if(null==n?void 0:n.includeSeconds){if(j<5)return b.formatDistance("lessThanXSeconds",5,w);if(j<10)return b.formatDistance("lessThanXSeconds",10,w);if(j<20)return b.formatDistance("lessThanXSeconds",20,w);if(j<40)return b.formatDistance("halfAMinute",0,w);else if(j<60)return b.formatDistance("lessThanXMinutes",1,w);else return b.formatDistance("xMinutes",1,w)}return 0===k?b.formatDistance("lessThanXMinutes",1,w):b.formatDistance("xMinutes",k,w)}if(k<45)return b.formatDistance("xMinutes",k,w);if(k<90)return b.formatDistance("aboutXHours",1,w);if(k<i.H_)return b.formatDistance("aboutXHours",Math.round(k/60),w);if(k<2520)return b.formatDistance("xDays",1,w);if(k<i.fH){let e=Math.round(k/i.H_);return b.formatDistance("xDays",e,w)}if(k<2*i.fH)return D=Math.round(k/i.fH),b.formatDistance("aboutXMonths",D,w);if((D=function(e,t){let n;let r=(0,o.Q)(e),i=(0,o.Q)(t),s=a(r,i),c=Math.abs((0,l.T)(r,i));if(c<1)n=0;else{1===r.getMonth()&&r.getDate()>27&&r.setDate(30),r.setMonth(r.getMonth()-s*c);let t=a(r,i)===-s;(function(e){let t=(0,o.Q)(e);return+function(e){let t=(0,o.Q)(e);return t.setHours(23,59,59,999),t}(t)==+(0,u.V)(t)})((0,o.Q)(e))&&1===c&&1===a(e,i)&&(t=!1),n=s*(c-Number(t))}return 0===n?0:n}(y,m))<12){let e=Math.round(k/i.fH);return b.formatDistance("xMonths",e,w)}{let e=D%12,t=Math.trunc(D/12);return e<3?b.formatDistance("aboutXYears",t,w):e<9?b.formatDistance("overXYears",t,w):b.formatDistance("almostXYears",t+1,w)}}(e,(0,r.L)(e,Date.now()),t)}}}]);
2
- //# sourceMappingURL=79-1d568f3c4cd45bd4.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"static/chunks/79-1d568f3c4cd45bd4.js","mappings":"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","sources":["webpack://_N_E/../../../src/icons/alert-triangle.ts","webpack://_N_E/../../../src/icons/arrow-up-down.ts","webpack://_N_E/../../../src/icons/check-circle.ts","webpack://_N_E/../../../src/icons/chevrons-up-down.ts","webpack://_N_E/../../../src/icons/clock.ts","webpack://_N_E/../../../src/icons/eye.ts","webpack://_N_E/../../../src/icons/folder.ts","webpack://_N_E/../../../src/icons/globe.ts","webpack://_N_E/../../../src/icons/lock.ts","webpack://_N_E/../../../src/icons/pen.ts","webpack://_N_E/../../../src/icons/play.ts","webpack://_N_E/../../../src/icons/square-pen.ts","webpack://_N_E/../../../src/icons/x-circle.ts","webpack://_N_E/../src/dialog.tsx","webpack://_N_E/../src/alert-dialog.tsx","webpack://_N_E/../src/tabs.tsx","webpack://_N_E/./node_modules/date-fns/differenceInCalendarMonths.mjs","webpack://_N_E/./node_modules/date-fns/endOfMonth.mjs","webpack://_N_E/./node_modules/date-fns/constructNow.mjs","webpack://_N_E/./node_modules/date-fns/compareAsc.mjs","webpack://_N_E/./node_modules/date-fns/endOfDay.mjs","webpack://_N_E/./node_modules/date-fns/isLastDayOfMonth.mjs","webpack://_N_E/./node_modules/date-fns/differenceInMonths.mjs","webpack://_N_E/./node_modules/date-fns/_lib/getRoundingMethod.mjs","webpack://_N_E/./node_modules/date-fns/differenceInMilliseconds.mjs","webpack://_N_E/./node_modules/date-fns/differenceInSeconds.mjs","webpack://_N_E/./node_modules/date-fns/formatDistance.mjs","webpack://_N_E/./node_modules/date-fns/formatDistanceToNow.mjs"],"sourcesContent":["import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name AlertTriangle\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJtMjEuNzMgMTgtOC0xNGEyIDIgMCAwIDAtMy40OCAwbC04IDE0QTIgMiAwIDAgMCA0IDIxaDE2YTIgMiAwIDAgMCAxLjczLTNaIiAvPgogIDxwYXRoIGQ9Ik0xMiA5djQiIC8+CiAgPHBhdGggZD0iTTEyIDE3aC4wMSIgLz4KPC9zdmc+Cg==) - https://lucide.dev/icons/alert-triangle\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 AlertTriangle = createLucideIcon('AlertTriangle', [\n [\n 'path',\n {\n d: 'm21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3Z',\n key: 'c3ski4',\n },\n ],\n ['path', { d: 'M12 9v4', key: 'juzpu7' }],\n ['path', { d: 'M12 17h.01', key: 'p32p05' }],\n]);\n\nexport default AlertTriangle;\n","import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name ArrowUpDown\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJtMjEgMTYtNCA0LTQtNCIgLz4KICA8cGF0aCBkPSJNMTcgMjBWNCIgLz4KICA8cGF0aCBkPSJtMyA4IDQtNCA0IDQiIC8+CiAgPHBhdGggZD0iTTcgNHYxNiIgLz4KPC9zdmc+Cg==) - https://lucide.dev/icons/arrow-up-down\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 ArrowUpDown = createLucideIcon('ArrowUpDown', [\n ['path', { d: 'm21 16-4 4-4-4', key: 'f6ql7i' }],\n ['path', { d: 'M17 20V4', key: '1ejh1v' }],\n ['path', { d: 'm3 8 4-4 4 4', key: '11wl7u' }],\n ['path', { d: 'M7 4v16', key: '1glfcx' }],\n]);\n\nexport default ArrowUpDown;\n","import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name CheckCircle\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMjIgMTEuMDhWMTJhMTAgMTAgMCAxIDEtNS45My05LjE0IiAvPgogIDxwYXRoIGQ9Im05IDExIDMgM0wyMiA0IiAvPgo8L3N2Zz4K) - https://lucide.dev/icons/check-circle\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 CheckCircle = createLucideIcon('CheckCircle', [\n ['path', { d: 'M22 11.08V12a10 10 0 1 1-5.93-9.14', key: 'g774vq' }],\n ['path', { d: 'm9 11 3 3L22 4', key: '1pflzl' }],\n]);\n\nexport default CheckCircle;\n","import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name ChevronsUpDown\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJtNyAxNSA1IDUgNS01IiAvPgogIDxwYXRoIGQ9Im03IDkgNS01IDUgNSIgLz4KPC9zdmc+Cg==) - https://lucide.dev/icons/chevrons-up-down\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 ChevronsUpDown = createLucideIcon('ChevronsUpDown', [\n ['path', { d: 'm7 15 5 5 5-5', key: '1hf1tw' }],\n ['path', { d: 'm7 9 5-5 5 5', key: 'sgt6xg' }],\n]);\n\nexport default ChevronsUpDown;\n","import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name Clock\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSIxMCIgLz4KICA8cG9seWxpbmUgcG9pbnRzPSIxMiA2IDEyIDEyIDE2IDE0IiAvPgo8L3N2Zz4K) - https://lucide.dev/icons/clock\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 Clock = createLucideIcon('Clock', [\n ['circle', { cx: '12', cy: '12', r: '10', key: '1mglay' }],\n ['polyline', { points: '12 6 12 12 16 14', key: '68esgv' }],\n]);\n\nexport default Clock;\n","import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name Eye\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMiAxMnMzLTcgMTAtNyAxMCA3IDEwIDctMyA3LTEwIDctMTAtNy0xMC03WiIgLz4KICA8Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSIzIiAvPgo8L3N2Zz4K) - https://lucide.dev/icons/eye\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 Eye = createLucideIcon('Eye', [\n ['path', { d: 'M2 12s3-7 10-7 10 7 10 7-3 7-10 7-10-7-10-7Z', key: 'rwhkz3' }],\n ['circle', { cx: '12', cy: '12', r: '3', key: '1v7zrd' }],\n]);\n\nexport default Eye;\n","import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name Folder\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMjAgMjBhMiAyIDAgMCAwIDItMlY4YTIgMiAwIDAgMC0yLTJoLTcuOWEyIDIgMCAwIDEtMS42OS0uOUw5LjYgMy45QTIgMiAwIDAgMCA3LjkzIDNINGEyIDIgMCAwIDAtMiAydjEzYTIgMiAwIDAgMCAyIDJaIiAvPgo8L3N2Zz4K) - https://lucide.dev/icons/folder\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 Folder = createLucideIcon('Folder', [\n [\n 'path',\n {\n d: 'M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z',\n key: '1kt360',\n },\n ],\n]);\n\nexport default Folder;\n","import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name Globe\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSIxMCIgLz4KICA8cGF0aCBkPSJNMTIgMmExNC41IDE0LjUgMCAwIDAgMCAyMCAxNC41IDE0LjUgMCAwIDAgMC0yMCIgLz4KICA8cGF0aCBkPSJNMiAxMmgyMCIgLz4KPC9zdmc+Cg==) - https://lucide.dev/icons/globe\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 Globe = createLucideIcon('Globe', [\n ['circle', { cx: '12', cy: '12', r: '10', key: '1mglay' }],\n ['path', { d: 'M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20', key: '13o1zl' }],\n ['path', { d: 'M2 12h20', key: '9i4pu4' }],\n]);\n\nexport default Globe;\n","import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name Lock\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cmVjdCB3aWR0aD0iMTgiIGhlaWdodD0iMTEiIHg9IjMiIHk9IjExIiByeD0iMiIgcnk9IjIiIC8+CiAgPHBhdGggZD0iTTcgMTFWN2E1IDUgMCAwIDEgMTAgMHY0IiAvPgo8L3N2Zz4K) - https://lucide.dev/icons/lock\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 Lock = createLucideIcon('Lock', [\n ['rect', { width: '18', height: '11', x: '3', y: '11', rx: '2', ry: '2', key: '1w4ew1' }],\n ['path', { d: 'M7 11V7a5 5 0 0 1 10 0v4', key: 'fwvmzm' }],\n]);\n\nexport default Lock;\n","import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name Pen\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTcgM2EyLjg1IDIuODMgMCAxIDEgNCA0TDcuNSAyMC41IDIgMjJsMS41LTUuNVoiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/pen\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 Pen = createLucideIcon('Pen', [\n ['path', { d: 'M17 3a2.85 2.83 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5Z', key: '5qss01' }],\n]);\n\nexport default Pen;\n","import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name Play\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cG9seWdvbiBwb2ludHM9IjUgMyAxOSAxMiA1IDIxIDUgMyIgLz4KPC9zdmc+Cg==) - https://lucide.dev/icons/play\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 Play = createLucideIcon('Play', [\n ['polygon', { points: '5 3 19 12 5 21 5 3', key: '191637' }],\n]);\n\nexport default Play;\n","import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name SquarePen\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTIgM0g1YTIgMiAwIDAgMC0yIDJ2MTRhMiAyIDAgMCAwIDIgMmgxNGEyIDIgMCAwIDAgMi0ydi03IiAvPgogIDxwYXRoIGQ9Ik0xOC4zNzUgMi42MjVhMi4xMjEgMi4xMjEgMCAxIDEgMyAzTDEyIDE1bC00IDEgMS00WiIgLz4KPC9zdmc+Cg==) - https://lucide.dev/icons/square-pen\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 SquarePen = createLucideIcon('SquarePen', [\n ['path', { d: 'M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7', key: '1m0v6g' }],\n ['path', { d: 'M18.375 2.625a2.121 2.121 0 1 1 3 3L12 15l-4 1 1-4Z', key: '1lpok0' }],\n]);\n\nexport default SquarePen;\n","import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name XCircle\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSIxMCIgLz4KICA8cGF0aCBkPSJtMTUgOS02IDYiIC8+CiAgPHBhdGggZD0ibTkgOSA2IDYiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/x-circle\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 XCircle = createLucideIcon('XCircle', [\n ['circle', { cx: '12', cy: '12', r: '10', key: '1mglay' }],\n ['path', { d: 'm15 9-6 6', key: '1uzhvr' }],\n ['path', { d: 'm9 9 6 6', key: 'z0biqf' }],\n]);\n\nexport default XCircle;\n","import * as React from 'react';\nimport { composeEventHandlers } from '@radix-ui/primitive';\nimport { useComposedRefs } from '@radix-ui/react-compose-refs';\nimport { createContext, createContextScope } from '@radix-ui/react-context';\nimport { useId } from '@radix-ui/react-id';\nimport { useControllableState } from '@radix-ui/react-use-controllable-state';\nimport { DismissableLayer } from '@radix-ui/react-dismissable-layer';\nimport { FocusScope } from '@radix-ui/react-focus-scope';\nimport { Portal as PortalPrimitive } from '@radix-ui/react-portal';\nimport { Presence } from '@radix-ui/react-presence';\nimport { Primitive } from '@radix-ui/react-primitive';\nimport { useFocusGuards } from '@radix-ui/react-focus-guards';\nimport { RemoveScroll } from 'react-remove-scroll';\nimport { hideOthers } from 'aria-hidden';\nimport { createSlot } from '@radix-ui/react-slot';\n\nimport type { Scope } from '@radix-ui/react-context';\n\n/* -------------------------------------------------------------------------------------------------\n * Dialog\n * -----------------------------------------------------------------------------------------------*/\n\nconst DIALOG_NAME = 'Dialog';\n\ntype ScopedProps<P> = P & { __scopeDialog?: Scope };\nconst [createDialogContext, createDialogScope] = createContextScope(DIALOG_NAME);\n\ntype DialogContextValue = {\n triggerRef: React.RefObject<HTMLButtonElement | null>;\n contentRef: React.RefObject<DialogContentElement | null>;\n contentId: string;\n titleId: string;\n descriptionId: string;\n open: boolean;\n onOpenChange(open: boolean): void;\n onOpenToggle(): void;\n modal: boolean;\n};\n\nconst [DialogProvider, useDialogContext] = createDialogContext<DialogContextValue>(DIALOG_NAME);\n\ninterface DialogProps {\n children?: React.ReactNode;\n open?: boolean;\n defaultOpen?: boolean;\n onOpenChange?(open: boolean): void;\n modal?: boolean;\n}\n\nconst Dialog: React.FC<DialogProps> = (props: ScopedProps<DialogProps>) => {\n const {\n __scopeDialog,\n children,\n open: openProp,\n defaultOpen,\n onOpenChange,\n modal = true,\n } = props;\n const triggerRef = React.useRef<HTMLButtonElement>(null);\n const contentRef = React.useRef<DialogContentElement>(null);\n const [open, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen ?? false,\n onChange: onOpenChange,\n caller: DIALOG_NAME,\n });\n\n return (\n <DialogProvider\n scope={__scopeDialog}\n triggerRef={triggerRef}\n contentRef={contentRef}\n contentId={useId()}\n titleId={useId()}\n descriptionId={useId()}\n open={open}\n onOpenChange={setOpen}\n onOpenToggle={React.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen])}\n modal={modal}\n >\n {children}\n </DialogProvider>\n );\n};\n\nDialog.displayName = DIALOG_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * DialogTrigger\n * -----------------------------------------------------------------------------------------------*/\n\nconst TRIGGER_NAME = 'DialogTrigger';\n\ntype DialogTriggerElement = React.ComponentRef<typeof Primitive.button>;\ntype PrimitiveButtonProps = React.ComponentPropsWithoutRef<typeof Primitive.button>;\ninterface DialogTriggerProps extends PrimitiveButtonProps {}\n\nconst DialogTrigger = React.forwardRef<DialogTriggerElement, DialogTriggerProps>(\n (props: ScopedProps<DialogTriggerProps>, forwardedRef) => {\n const { __scopeDialog, ...triggerProps } = props;\n const context = useDialogContext(TRIGGER_NAME, __scopeDialog);\n const composedTriggerRef = useComposedRefs(forwardedRef, context.triggerRef);\n return (\n <Primitive.button\n type=\"button\"\n aria-haspopup=\"dialog\"\n aria-expanded={context.open}\n aria-controls={context.contentId}\n data-state={getState(context.open)}\n {...triggerProps}\n ref={composedTriggerRef}\n onClick={composeEventHandlers(props.onClick, context.onOpenToggle)}\n />\n );\n }\n);\n\nDialogTrigger.displayName = TRIGGER_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * DialogPortal\n * -----------------------------------------------------------------------------------------------*/\n\nconst PORTAL_NAME = 'DialogPortal';\n\ntype PortalContextValue = { forceMount?: true };\nconst [PortalProvider, usePortalContext] = createDialogContext<PortalContextValue>(PORTAL_NAME, {\n forceMount: undefined,\n});\n\ntype PortalProps = React.ComponentPropsWithoutRef<typeof PortalPrimitive>;\ninterface DialogPortalProps {\n children?: React.ReactNode;\n /**\n * Specify a container element to portal the content into.\n */\n container?: PortalProps['container'];\n /**\n * Used to force mounting when more control is needed. Useful when\n * controlling animation with React animation libraries.\n */\n forceMount?: true;\n}\n\nconst DialogPortal: React.FC<DialogPortalProps> = (props: ScopedProps<DialogPortalProps>) => {\n const { __scopeDialog, forceMount, children, container } = props;\n const context = useDialogContext(PORTAL_NAME, __scopeDialog);\n return (\n <PortalProvider scope={__scopeDialog} forceMount={forceMount}>\n {React.Children.map(children, (child) => (\n <Presence present={forceMount || context.open}>\n <PortalPrimitive asChild container={container}>\n {child}\n </PortalPrimitive>\n </Presence>\n ))}\n </PortalProvider>\n );\n};\n\nDialogPortal.displayName = PORTAL_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * DialogOverlay\n * -----------------------------------------------------------------------------------------------*/\n\nconst OVERLAY_NAME = 'DialogOverlay';\n\ntype DialogOverlayElement = DialogOverlayImplElement;\ninterface DialogOverlayProps extends DialogOverlayImplProps {\n /**\n * Used to force mounting when more control is needed. Useful when\n * controlling animation with React animation libraries.\n */\n forceMount?: true;\n}\n\nconst DialogOverlay = React.forwardRef<DialogOverlayElement, DialogOverlayProps>(\n (props: ScopedProps<DialogOverlayProps>, forwardedRef) => {\n const portalContext = usePortalContext(OVERLAY_NAME, props.__scopeDialog);\n const { forceMount = portalContext.forceMount, ...overlayProps } = props;\n const context = useDialogContext(OVERLAY_NAME, props.__scopeDialog);\n return context.modal ? (\n <Presence present={forceMount || context.open}>\n <DialogOverlayImpl {...overlayProps} ref={forwardedRef} />\n </Presence>\n ) : null;\n }\n);\n\nDialogOverlay.displayName = OVERLAY_NAME;\n\ntype DialogOverlayImplElement = React.ComponentRef<typeof Primitive.div>;\ntype PrimitiveDivProps = React.ComponentPropsWithoutRef<typeof Primitive.div>;\ninterface DialogOverlayImplProps extends PrimitiveDivProps {}\n\nconst Slot = createSlot('DialogOverlay.RemoveScroll');\n\nconst DialogOverlayImpl = React.forwardRef<DialogOverlayImplElement, DialogOverlayImplProps>(\n (props: ScopedProps<DialogOverlayImplProps>, forwardedRef) => {\n const { __scopeDialog, ...overlayProps } = props;\n const context = useDialogContext(OVERLAY_NAME, __scopeDialog);\n return (\n // Make sure `Content` is scrollable even when it doesn't live inside `RemoveScroll`\n // ie. when `Overlay` and `Content` are siblings\n <RemoveScroll as={Slot} allowPinchZoom shards={[context.contentRef]}>\n <Primitive.div\n data-state={getState(context.open)}\n {...overlayProps}\n ref={forwardedRef}\n // We re-enable pointer-events prevented by `Dialog.Content` to allow scrolling the overlay.\n style={{ pointerEvents: 'auto', ...overlayProps.style }}\n />\n </RemoveScroll>\n );\n }\n);\n\n/* -------------------------------------------------------------------------------------------------\n * DialogContent\n * -----------------------------------------------------------------------------------------------*/\n\nconst CONTENT_NAME = 'DialogContent';\n\ntype DialogContentElement = DialogContentTypeElement;\ninterface DialogContentProps extends DialogContentTypeProps {\n /**\n * Used to force mounting when more control is needed. Useful when\n * controlling animation with React animation libraries.\n */\n forceMount?: true;\n}\n\nconst DialogContent = React.forwardRef<DialogContentElement, DialogContentProps>(\n (props: ScopedProps<DialogContentProps>, forwardedRef) => {\n const portalContext = usePortalContext(CONTENT_NAME, props.__scopeDialog);\n const { forceMount = portalContext.forceMount, ...contentProps } = props;\n const context = useDialogContext(CONTENT_NAME, props.__scopeDialog);\n return (\n <Presence present={forceMount || context.open}>\n {context.modal ? (\n <DialogContentModal {...contentProps} ref={forwardedRef} />\n ) : (\n <DialogContentNonModal {...contentProps} ref={forwardedRef} />\n )}\n </Presence>\n );\n }\n);\n\nDialogContent.displayName = CONTENT_NAME;\n\n/* -----------------------------------------------------------------------------------------------*/\n\ntype DialogContentTypeElement = DialogContentImplElement;\ninterface DialogContentTypeProps\n extends Omit<DialogContentImplProps, 'trapFocus' | 'disableOutsidePointerEvents'> {}\n\nconst DialogContentModal = React.forwardRef<DialogContentTypeElement, DialogContentTypeProps>(\n (props: ScopedProps<DialogContentTypeProps>, forwardedRef) => {\n const context = useDialogContext(CONTENT_NAME, props.__scopeDialog);\n const contentRef = React.useRef<HTMLDivElement>(null);\n const composedRefs = useComposedRefs(forwardedRef, context.contentRef, contentRef);\n\n // aria-hide everything except the content (better supported equivalent to setting aria-modal)\n React.useEffect(() => {\n const content = contentRef.current;\n if (content) return hideOthers(content);\n }, []);\n\n return (\n <DialogContentImpl\n {...props}\n ref={composedRefs}\n // we make sure focus isn't trapped once `DialogContent` has been closed\n // (closed !== unmounted when animating out)\n trapFocus={context.open}\n disableOutsidePointerEvents\n onCloseAutoFocus={composeEventHandlers(props.onCloseAutoFocus, (event) => {\n event.preventDefault();\n context.triggerRef.current?.focus();\n })}\n onPointerDownOutside={composeEventHandlers(props.onPointerDownOutside, (event) => {\n const originalEvent = event.detail.originalEvent;\n const ctrlLeftClick = originalEvent.button === 0 && originalEvent.ctrlKey === true;\n const isRightClick = originalEvent.button === 2 || ctrlLeftClick;\n\n // If the event is a right-click, we shouldn't close because\n // it is effectively as if we right-clicked the `Overlay`.\n if (isRightClick) event.preventDefault();\n })}\n // When focus is trapped, a `focusout` event may still happen.\n // We make sure we don't trigger our `onDismiss` in such case.\n onFocusOutside={composeEventHandlers(props.onFocusOutside, (event) =>\n event.preventDefault()\n )}\n />\n );\n }\n);\n\n/* -----------------------------------------------------------------------------------------------*/\n\nconst DialogContentNonModal = React.forwardRef<DialogContentTypeElement, DialogContentTypeProps>(\n (props: ScopedProps<DialogContentTypeProps>, forwardedRef) => {\n const context = useDialogContext(CONTENT_NAME, props.__scopeDialog);\n const hasInteractedOutsideRef = React.useRef(false);\n const hasPointerDownOutsideRef = React.useRef(false);\n\n return (\n <DialogContentImpl\n {...props}\n ref={forwardedRef}\n trapFocus={false}\n disableOutsidePointerEvents={false}\n onCloseAutoFocus={(event) => {\n props.onCloseAutoFocus?.(event);\n\n if (!event.defaultPrevented) {\n if (!hasInteractedOutsideRef.current) context.triggerRef.current?.focus();\n // Always prevent auto focus because we either focus manually or want user agent focus\n event.preventDefault();\n }\n\n hasInteractedOutsideRef.current = false;\n hasPointerDownOutsideRef.current = false;\n }}\n onInteractOutside={(event) => {\n props.onInteractOutside?.(event);\n\n if (!event.defaultPrevented) {\n hasInteractedOutsideRef.current = true;\n if (event.detail.originalEvent.type === 'pointerdown') {\n hasPointerDownOutsideRef.current = true;\n }\n }\n\n // Prevent dismissing when clicking the trigger.\n // As the trigger is already setup to close, without doing so would\n // cause it to close and immediately open.\n const target = event.target as HTMLElement;\n const targetIsTrigger = context.triggerRef.current?.contains(target);\n if (targetIsTrigger) event.preventDefault();\n\n // On Safari if the trigger is inside a container with tabIndex={0}, when clicked\n // we will get the pointer down outside event on the trigger, but then a subsequent\n // focus outside event on the container, we ignore any focus outside event when we've\n // already had a pointer down outside event.\n if (event.detail.originalEvent.type === 'focusin' && hasPointerDownOutsideRef.current) {\n event.preventDefault();\n }\n }}\n />\n );\n }\n);\n\n/* -----------------------------------------------------------------------------------------------*/\n\ntype DialogContentImplElement = React.ComponentRef<typeof DismissableLayer>;\ntype DismissableLayerProps = React.ComponentPropsWithoutRef<typeof DismissableLayer>;\ntype FocusScopeProps = React.ComponentPropsWithoutRef<typeof FocusScope>;\ninterface DialogContentImplProps extends Omit<DismissableLayerProps, 'onDismiss'> {\n /**\n * When `true`, focus cannot escape the `Content` via keyboard,\n * pointer, or a programmatic focus.\n * @defaultValue false\n */\n trapFocus?: FocusScopeProps['trapped'];\n\n /**\n * Event handler called when auto-focusing on open.\n * Can be prevented.\n */\n onOpenAutoFocus?: FocusScopeProps['onMountAutoFocus'];\n\n /**\n * Event handler called when auto-focusing on close.\n * Can be prevented.\n */\n onCloseAutoFocus?: FocusScopeProps['onUnmountAutoFocus'];\n}\n\nconst DialogContentImpl = React.forwardRef<DialogContentImplElement, DialogContentImplProps>(\n (props: ScopedProps<DialogContentImplProps>, forwardedRef) => {\n const { __scopeDialog, trapFocus, onOpenAutoFocus, onCloseAutoFocus, ...contentProps } = props;\n const context = useDialogContext(CONTENT_NAME, __scopeDialog);\n const contentRef = React.useRef<HTMLDivElement>(null);\n const composedRefs = useComposedRefs(forwardedRef, contentRef);\n\n // Make sure the whole tree has focus guards as our `Dialog` will be\n // the last element in the DOM (because of the `Portal`)\n useFocusGuards();\n\n return (\n <>\n <FocusScope\n asChild\n loop\n trapped={trapFocus}\n onMountAutoFocus={onOpenAutoFocus}\n onUnmountAutoFocus={onCloseAutoFocus}\n >\n <DismissableLayer\n role=\"dialog\"\n id={context.contentId}\n aria-describedby={context.descriptionId}\n aria-labelledby={context.titleId}\n data-state={getState(context.open)}\n {...contentProps}\n ref={composedRefs}\n onDismiss={() => context.onOpenChange(false)}\n />\n </FocusScope>\n {process.env.NODE_ENV !== 'production' && (\n <>\n <TitleWarning titleId={context.titleId} />\n <DescriptionWarning contentRef={contentRef} descriptionId={context.descriptionId} />\n </>\n )}\n </>\n );\n }\n);\n\n/* -------------------------------------------------------------------------------------------------\n * DialogTitle\n * -----------------------------------------------------------------------------------------------*/\n\nconst TITLE_NAME = 'DialogTitle';\n\ntype DialogTitleElement = React.ComponentRef<typeof Primitive.h2>;\ntype PrimitiveHeading2Props = React.ComponentPropsWithoutRef<typeof Primitive.h2>;\ninterface DialogTitleProps extends PrimitiveHeading2Props {}\n\nconst DialogTitle = React.forwardRef<DialogTitleElement, DialogTitleProps>(\n (props: ScopedProps<DialogTitleProps>, forwardedRef) => {\n const { __scopeDialog, ...titleProps } = props;\n const context = useDialogContext(TITLE_NAME, __scopeDialog);\n return <Primitive.h2 id={context.titleId} {...titleProps} ref={forwardedRef} />;\n }\n);\n\nDialogTitle.displayName = TITLE_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * DialogDescription\n * -----------------------------------------------------------------------------------------------*/\n\nconst DESCRIPTION_NAME = 'DialogDescription';\n\ntype DialogDescriptionElement = React.ComponentRef<typeof Primitive.p>;\ntype PrimitiveParagraphProps = React.ComponentPropsWithoutRef<typeof Primitive.p>;\ninterface DialogDescriptionProps extends PrimitiveParagraphProps {}\n\nconst DialogDescription = React.forwardRef<DialogDescriptionElement, DialogDescriptionProps>(\n (props: ScopedProps<DialogDescriptionProps>, forwardedRef) => {\n const { __scopeDialog, ...descriptionProps } = props;\n const context = useDialogContext(DESCRIPTION_NAME, __scopeDialog);\n return <Primitive.p id={context.descriptionId} {...descriptionProps} ref={forwardedRef} />;\n }\n);\n\nDialogDescription.displayName = DESCRIPTION_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * DialogClose\n * -----------------------------------------------------------------------------------------------*/\n\nconst CLOSE_NAME = 'DialogClose';\n\ntype DialogCloseElement = React.ComponentRef<typeof Primitive.button>;\ninterface DialogCloseProps extends PrimitiveButtonProps {}\n\nconst DialogClose = React.forwardRef<DialogCloseElement, DialogCloseProps>(\n (props: ScopedProps<DialogCloseProps>, forwardedRef) => {\n const { __scopeDialog, ...closeProps } = props;\n const context = useDialogContext(CLOSE_NAME, __scopeDialog);\n return (\n <Primitive.button\n type=\"button\"\n {...closeProps}\n ref={forwardedRef}\n onClick={composeEventHandlers(props.onClick, () => context.onOpenChange(false))}\n />\n );\n }\n);\n\nDialogClose.displayName = CLOSE_NAME;\n\n/* -----------------------------------------------------------------------------------------------*/\n\nfunction getState(open: boolean) {\n return open ? 'open' : 'closed';\n}\n\nconst TITLE_WARNING_NAME = 'DialogTitleWarning';\n\nconst [WarningProvider, useWarningContext] = createContext(TITLE_WARNING_NAME, {\n contentName: CONTENT_NAME,\n titleName: TITLE_NAME,\n docsSlug: 'dialog',\n});\n\ntype TitleWarningProps = { titleId?: string };\n\nconst TitleWarning: React.FC<TitleWarningProps> = ({ titleId }) => {\n const titleWarningContext = useWarningContext(TITLE_WARNING_NAME);\n\n const MESSAGE = `\\`${titleWarningContext.contentName}\\` requires a \\`${titleWarningContext.titleName}\\` for the component to be accessible for screen reader users.\n\nIf you want to hide the \\`${titleWarningContext.titleName}\\`, you can wrap it with our VisuallyHidden component.\n\nFor more information, see https://radix-ui.com/primitives/docs/components/${titleWarningContext.docsSlug}`;\n\n React.useEffect(() => {\n if (titleId) {\n const hasTitle = document.getElementById(titleId);\n if (!hasTitle) console.error(MESSAGE);\n }\n }, [MESSAGE, titleId]);\n\n return null;\n};\n\nconst DESCRIPTION_WARNING_NAME = 'DialogDescriptionWarning';\n\ntype DescriptionWarningProps = {\n contentRef: React.RefObject<DialogContentElement | null>;\n descriptionId?: string;\n};\n\nconst DescriptionWarning: React.FC<DescriptionWarningProps> = ({ contentRef, descriptionId }) => {\n const descriptionWarningContext = useWarningContext(DESCRIPTION_WARNING_NAME);\n const MESSAGE = `Warning: Missing \\`Description\\` or \\`aria-describedby={undefined}\\` for {${descriptionWarningContext.contentName}}.`;\n\n React.useEffect(() => {\n const describedById = contentRef.current?.getAttribute('aria-describedby');\n // if we have an id and the user hasn't set aria-describedby={undefined}\n if (descriptionId && describedById) {\n const hasDescription = document.getElementById(descriptionId);\n if (!hasDescription) console.warn(MESSAGE);\n }\n }, [MESSAGE, contentRef, descriptionId]);\n\n return null;\n};\n\nconst Root = Dialog;\nconst Trigger = DialogTrigger;\nconst Portal = DialogPortal;\nconst Overlay = DialogOverlay;\nconst Content = DialogContent;\nconst Title = DialogTitle;\nconst Description = DialogDescription;\nconst Close = DialogClose;\n\nexport {\n createDialogScope,\n //\n Dialog,\n DialogTrigger,\n DialogPortal,\n DialogOverlay,\n DialogContent,\n DialogTitle,\n DialogDescription,\n DialogClose,\n //\n Root,\n Trigger,\n Portal,\n Overlay,\n Content,\n Title,\n Description,\n Close,\n //\n WarningProvider,\n};\nexport type {\n DialogProps,\n DialogTriggerProps,\n DialogPortalProps,\n DialogOverlayProps,\n DialogContentProps,\n DialogTitleProps,\n DialogDescriptionProps,\n DialogCloseProps,\n};\n","import * as React from 'react';\nimport { createContextScope } from '@radix-ui/react-context';\nimport { useComposedRefs } from '@radix-ui/react-compose-refs';\nimport * as DialogPrimitive from '@radix-ui/react-dialog';\nimport { createDialogScope } from '@radix-ui/react-dialog';\nimport { composeEventHandlers } from '@radix-ui/primitive';\nimport { createSlottable } from '@radix-ui/react-slot';\n\nimport type { Scope } from '@radix-ui/react-context';\n\n/* -------------------------------------------------------------------------------------------------\n * AlertDialog\n * -----------------------------------------------------------------------------------------------*/\n\nconst ROOT_NAME = 'AlertDialog';\n\ntype ScopedProps<P> = P & { __scopeAlertDialog?: Scope };\nconst [createAlertDialogContext, createAlertDialogScope] = createContextScope(ROOT_NAME, [\n createDialogScope,\n]);\nconst useDialogScope = createDialogScope();\n\ntype DialogProps = React.ComponentPropsWithoutRef<typeof DialogPrimitive.Root>;\ninterface AlertDialogProps extends Omit<DialogProps, 'modal'> {}\n\nconst AlertDialog: React.FC<AlertDialogProps> = (props: ScopedProps<AlertDialogProps>) => {\n const { __scopeAlertDialog, ...alertDialogProps } = props;\n const dialogScope = useDialogScope(__scopeAlertDialog);\n return <DialogPrimitive.Root {...dialogScope} {...alertDialogProps} modal={true} />;\n};\n\nAlertDialog.displayName = ROOT_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * AlertDialogTrigger\n * -----------------------------------------------------------------------------------------------*/\nconst TRIGGER_NAME = 'AlertDialogTrigger';\n\ntype AlertDialogTriggerElement = React.ComponentRef<typeof DialogPrimitive.Trigger>;\ntype DialogTriggerProps = React.ComponentPropsWithoutRef<typeof DialogPrimitive.Trigger>;\ninterface AlertDialogTriggerProps extends DialogTriggerProps {}\n\nconst AlertDialogTrigger = React.forwardRef<AlertDialogTriggerElement, AlertDialogTriggerProps>(\n (props: ScopedProps<AlertDialogTriggerProps>, forwardedRef) => {\n const { __scopeAlertDialog, ...triggerProps } = props;\n const dialogScope = useDialogScope(__scopeAlertDialog);\n return <DialogPrimitive.Trigger {...dialogScope} {...triggerProps} ref={forwardedRef} />;\n }\n);\n\nAlertDialogTrigger.displayName = TRIGGER_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * AlertDialogPortal\n * -----------------------------------------------------------------------------------------------*/\n\nconst PORTAL_NAME = 'AlertDialogPortal';\n\ntype DialogPortalProps = React.ComponentPropsWithoutRef<typeof DialogPrimitive.Portal>;\ninterface AlertDialogPortalProps extends DialogPortalProps {}\n\nconst AlertDialogPortal: React.FC<AlertDialogPortalProps> = (\n props: ScopedProps<AlertDialogPortalProps>\n) => {\n const { __scopeAlertDialog, ...portalProps } = props;\n const dialogScope = useDialogScope(__scopeAlertDialog);\n return <DialogPrimitive.Portal {...dialogScope} {...portalProps} />;\n};\n\nAlertDialogPortal.displayName = PORTAL_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * AlertDialogOverlay\n * -----------------------------------------------------------------------------------------------*/\n\nconst OVERLAY_NAME = 'AlertDialogOverlay';\n\ntype AlertDialogOverlayElement = React.ComponentRef<typeof DialogPrimitive.Overlay>;\ntype DialogOverlayProps = React.ComponentPropsWithoutRef<typeof DialogPrimitive.Overlay>;\ninterface AlertDialogOverlayProps extends DialogOverlayProps {}\n\nconst AlertDialogOverlay = React.forwardRef<AlertDialogOverlayElement, AlertDialogOverlayProps>(\n (props: ScopedProps<AlertDialogOverlayProps>, forwardedRef) => {\n const { __scopeAlertDialog, ...overlayProps } = props;\n const dialogScope = useDialogScope(__scopeAlertDialog);\n return <DialogPrimitive.Overlay {...dialogScope} {...overlayProps} ref={forwardedRef} />;\n }\n);\n\nAlertDialogOverlay.displayName = OVERLAY_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * AlertDialogContent\n * -----------------------------------------------------------------------------------------------*/\n\nconst CONTENT_NAME = 'AlertDialogContent';\n\ntype AlertDialogContentContextValue = {\n cancelRef: React.MutableRefObject<AlertDialogCancelElement | null>;\n};\n\nconst [AlertDialogContentProvider, useAlertDialogContentContext] =\n createAlertDialogContext<AlertDialogContentContextValue>(CONTENT_NAME);\n\ntype AlertDialogContentElement = React.ComponentRef<typeof DialogPrimitive.Content>;\ntype DialogContentProps = React.ComponentPropsWithoutRef<typeof DialogPrimitive.Content>;\ninterface AlertDialogContentProps\n extends Omit<DialogContentProps, 'onPointerDownOutside' | 'onInteractOutside'> {}\n\nconst Slottable = createSlottable('AlertDialogContent');\n\nconst AlertDialogContent = React.forwardRef<AlertDialogContentElement, AlertDialogContentProps>(\n (props: ScopedProps<AlertDialogContentProps>, forwardedRef) => {\n const { __scopeAlertDialog, children, ...contentProps } = props;\n const dialogScope = useDialogScope(__scopeAlertDialog);\n const contentRef = React.useRef<AlertDialogContentElement>(null);\n const composedRefs = useComposedRefs(forwardedRef, contentRef);\n const cancelRef = React.useRef<AlertDialogCancelElement | null>(null);\n\n return (\n <DialogPrimitive.WarningProvider\n contentName={CONTENT_NAME}\n titleName={TITLE_NAME}\n docsSlug=\"alert-dialog\"\n >\n <AlertDialogContentProvider scope={__scopeAlertDialog} cancelRef={cancelRef}>\n <DialogPrimitive.Content\n role=\"alertdialog\"\n {...dialogScope}\n {...contentProps}\n ref={composedRefs}\n onOpenAutoFocus={composeEventHandlers(contentProps.onOpenAutoFocus, (event) => {\n event.preventDefault();\n cancelRef.current?.focus({ preventScroll: true });\n })}\n onPointerDownOutside={(event) => event.preventDefault()}\n onInteractOutside={(event) => event.preventDefault()}\n >\n {/**\n * We have to use `Slottable` here as we cannot wrap the `AlertDialogContentProvider`\n * around everything, otherwise the `DescriptionWarning` would be rendered straight away.\n * This is because we want the accessibility checks to run only once the content is actually\n * open and that behaviour is already encapsulated in `DialogContent`.\n */}\n <Slottable>{children}</Slottable>\n {process.env.NODE_ENV === 'development' && (\n <DescriptionWarning contentRef={contentRef} />\n )}\n </DialogPrimitive.Content>\n </AlertDialogContentProvider>\n </DialogPrimitive.WarningProvider>\n );\n }\n);\n\nAlertDialogContent.displayName = CONTENT_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * AlertDialogTitle\n * -----------------------------------------------------------------------------------------------*/\n\nconst TITLE_NAME = 'AlertDialogTitle';\n\ntype AlertDialogTitleElement = React.ComponentRef<typeof DialogPrimitive.Title>;\ntype DialogTitleProps = React.ComponentPropsWithoutRef<typeof DialogPrimitive.Title>;\ninterface AlertDialogTitleProps extends DialogTitleProps {}\n\nconst AlertDialogTitle = React.forwardRef<AlertDialogTitleElement, AlertDialogTitleProps>(\n (props: ScopedProps<AlertDialogTitleProps>, forwardedRef) => {\n const { __scopeAlertDialog, ...titleProps } = props;\n const dialogScope = useDialogScope(__scopeAlertDialog);\n return <DialogPrimitive.Title {...dialogScope} {...titleProps} ref={forwardedRef} />;\n }\n);\n\nAlertDialogTitle.displayName = TITLE_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * AlertDialogDescription\n * -----------------------------------------------------------------------------------------------*/\n\nconst DESCRIPTION_NAME = 'AlertDialogDescription';\n\ntype AlertDialogDescriptionElement = React.ComponentRef<typeof DialogPrimitive.Description>;\ntype DialogDescriptionProps = React.ComponentPropsWithoutRef<typeof DialogPrimitive.Description>;\ninterface AlertDialogDescriptionProps extends DialogDescriptionProps {}\n\nconst AlertDialogDescription = React.forwardRef<\n AlertDialogDescriptionElement,\n AlertDialogDescriptionProps\n>((props: ScopedProps<AlertDialogDescriptionProps>, forwardedRef) => {\n const { __scopeAlertDialog, ...descriptionProps } = props;\n const dialogScope = useDialogScope(__scopeAlertDialog);\n return <DialogPrimitive.Description {...dialogScope} {...descriptionProps} ref={forwardedRef} />;\n});\n\nAlertDialogDescription.displayName = DESCRIPTION_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * AlertDialogAction\n * -----------------------------------------------------------------------------------------------*/\n\nconst ACTION_NAME = 'AlertDialogAction';\n\ntype AlertDialogActionElement = React.ComponentRef<typeof DialogPrimitive.Close>;\ntype DialogCloseProps = React.ComponentPropsWithoutRef<typeof DialogPrimitive.Close>;\ninterface AlertDialogActionProps extends DialogCloseProps {}\n\nconst AlertDialogAction = React.forwardRef<AlertDialogActionElement, AlertDialogActionProps>(\n (props: ScopedProps<AlertDialogActionProps>, forwardedRef) => {\n const { __scopeAlertDialog, ...actionProps } = props;\n const dialogScope = useDialogScope(__scopeAlertDialog);\n return <DialogPrimitive.Close {...dialogScope} {...actionProps} ref={forwardedRef} />;\n }\n);\n\nAlertDialogAction.displayName = ACTION_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * AlertDialogCancel\n * -----------------------------------------------------------------------------------------------*/\n\nconst CANCEL_NAME = 'AlertDialogCancel';\n\ntype AlertDialogCancelElement = React.ComponentRef<typeof DialogPrimitive.Close>;\ninterface AlertDialogCancelProps extends DialogCloseProps {}\n\nconst AlertDialogCancel = React.forwardRef<AlertDialogCancelElement, AlertDialogCancelProps>(\n (props: ScopedProps<AlertDialogCancelProps>, forwardedRef) => {\n const { __scopeAlertDialog, ...cancelProps } = props;\n const { cancelRef } = useAlertDialogContentContext(CANCEL_NAME, __scopeAlertDialog);\n const dialogScope = useDialogScope(__scopeAlertDialog);\n const ref = useComposedRefs(forwardedRef, cancelRef);\n return <DialogPrimitive.Close {...dialogScope} {...cancelProps} ref={ref} />;\n }\n);\n\nAlertDialogCancel.displayName = CANCEL_NAME;\n\n/* ---------------------------------------------------------------------------------------------- */\n\ntype DescriptionWarningProps = {\n contentRef: React.RefObject<AlertDialogContentElement | null>;\n};\n\nconst DescriptionWarning: React.FC<DescriptionWarningProps> = ({ contentRef }) => {\n const MESSAGE = `\\`${CONTENT_NAME}\\` requires a description for the component to be accessible for screen reader users.\n\nYou can add a description to the \\`${CONTENT_NAME}\\` by passing a \\`${DESCRIPTION_NAME}\\` component as a child, which also benefits sighted users by adding visible context to the dialog.\n\nAlternatively, you can use your own component as a description by assigning it an \\`id\\` and passing the same value to the \\`aria-describedby\\` prop in \\`${CONTENT_NAME}\\`. If the description is confusing or duplicative for sighted users, you can use the \\`@radix-ui/react-visually-hidden\\` primitive as a wrapper around your description component.\n\nFor more information, see https://radix-ui.com/primitives/docs/components/alert-dialog`;\n\n React.useEffect(() => {\n const hasDescription = document.getElementById(\n contentRef.current?.getAttribute('aria-describedby')!\n );\n if (!hasDescription) console.warn(MESSAGE);\n }, [MESSAGE, contentRef]);\n\n return null;\n};\n\nconst Root = AlertDialog;\nconst Trigger = AlertDialogTrigger;\nconst Portal = AlertDialogPortal;\nconst Overlay = AlertDialogOverlay;\nconst Content = AlertDialogContent;\nconst Action = AlertDialogAction;\nconst Cancel = AlertDialogCancel;\nconst Title = AlertDialogTitle;\nconst Description = AlertDialogDescription;\n\nexport {\n createAlertDialogScope,\n //\n AlertDialog,\n AlertDialogTrigger,\n AlertDialogPortal,\n AlertDialogOverlay,\n AlertDialogContent,\n AlertDialogAction,\n AlertDialogCancel,\n AlertDialogTitle,\n AlertDialogDescription,\n //\n Root,\n Trigger,\n Portal,\n Overlay,\n Content,\n Action,\n Cancel,\n Title,\n Description,\n};\nexport type {\n AlertDialogProps,\n AlertDialogTriggerProps,\n AlertDialogPortalProps,\n AlertDialogOverlayProps,\n AlertDialogContentProps,\n AlertDialogActionProps,\n AlertDialogCancelProps,\n AlertDialogTitleProps,\n AlertDialogDescriptionProps,\n};\n","import * as React from 'react';\nimport { composeEventHandlers } from '@radix-ui/primitive';\nimport { createContextScope } from '@radix-ui/react-context';\nimport { createRovingFocusGroupScope } from '@radix-ui/react-roving-focus';\nimport { Presence } from '@radix-ui/react-presence';\nimport { Primitive } from '@radix-ui/react-primitive';\nimport * as RovingFocusGroup from '@radix-ui/react-roving-focus';\nimport { useDirection } from '@radix-ui/react-direction';\nimport { useControllableState } from '@radix-ui/react-use-controllable-state';\nimport { useId } from '@radix-ui/react-id';\n\nimport type { Scope } from '@radix-ui/react-context';\n\n/* -------------------------------------------------------------------------------------------------\n * Tabs\n * -----------------------------------------------------------------------------------------------*/\n\nconst TABS_NAME = 'Tabs';\n\ntype ScopedProps<P> = P & { __scopeTabs?: Scope };\nconst [createTabsContext, createTabsScope] = createContextScope(TABS_NAME, [\n createRovingFocusGroupScope,\n]);\nconst useRovingFocusGroupScope = createRovingFocusGroupScope();\n\ntype TabsContextValue = {\n baseId: string;\n value: string;\n onValueChange: (value: string) => void;\n orientation?: TabsProps['orientation'];\n dir?: TabsProps['dir'];\n activationMode?: TabsProps['activationMode'];\n};\n\nconst [TabsProvider, useTabsContext] = createTabsContext<TabsContextValue>(TABS_NAME);\n\ntype TabsElement = React.ComponentRef<typeof Primitive.div>;\ntype RovingFocusGroupProps = React.ComponentPropsWithoutRef<typeof RovingFocusGroup.Root>;\ntype PrimitiveDivProps = React.ComponentPropsWithoutRef<typeof Primitive.div>;\ninterface TabsProps extends PrimitiveDivProps {\n /** The value for the selected tab, if controlled */\n value?: string;\n /** The value of the tab to select by default, if uncontrolled */\n defaultValue?: string;\n /** A function called when a new tab is selected */\n onValueChange?: (value: string) => void;\n /**\n * The orientation the tabs are layed out.\n * Mainly so arrow navigation is done accordingly (left & right vs. up & down)\n * @defaultValue horizontal\n */\n orientation?: RovingFocusGroupProps['orientation'];\n /**\n * The direction of navigation between toolbar items.\n */\n dir?: RovingFocusGroupProps['dir'];\n /**\n * Whether a tab is activated automatically or manually.\n * @defaultValue automatic\n * */\n activationMode?: 'automatic' | 'manual';\n}\n\nconst Tabs = React.forwardRef<TabsElement, TabsProps>(\n (props: ScopedProps<TabsProps>, forwardedRef) => {\n const {\n __scopeTabs,\n value: valueProp,\n onValueChange,\n defaultValue,\n orientation = 'horizontal',\n dir,\n activationMode = 'automatic',\n ...tabsProps\n } = props;\n const direction = useDirection(dir);\n const [value, setValue] = useControllableState({\n prop: valueProp,\n onChange: onValueChange,\n defaultProp: defaultValue ?? '',\n caller: TABS_NAME,\n });\n\n return (\n <TabsProvider\n scope={__scopeTabs}\n baseId={useId()}\n value={value}\n onValueChange={setValue}\n orientation={orientation}\n dir={direction}\n activationMode={activationMode}\n >\n <Primitive.div\n dir={direction}\n data-orientation={orientation}\n {...tabsProps}\n ref={forwardedRef}\n />\n </TabsProvider>\n );\n }\n);\n\nTabs.displayName = TABS_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * TabsList\n * -----------------------------------------------------------------------------------------------*/\n\nconst TAB_LIST_NAME = 'TabsList';\n\ntype TabsListElement = React.ComponentRef<typeof Primitive.div>;\ninterface TabsListProps extends PrimitiveDivProps {\n loop?: RovingFocusGroupProps['loop'];\n}\n\nconst TabsList = React.forwardRef<TabsListElement, TabsListProps>(\n (props: ScopedProps<TabsListProps>, forwardedRef) => {\n const { __scopeTabs, loop = true, ...listProps } = props;\n const context = useTabsContext(TAB_LIST_NAME, __scopeTabs);\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeTabs);\n return (\n <RovingFocusGroup.Root\n asChild\n {...rovingFocusGroupScope}\n orientation={context.orientation}\n dir={context.dir}\n loop={loop}\n >\n <Primitive.div\n role=\"tablist\"\n aria-orientation={context.orientation}\n {...listProps}\n ref={forwardedRef}\n />\n </RovingFocusGroup.Root>\n );\n }\n);\n\nTabsList.displayName = TAB_LIST_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * TabsTrigger\n * -----------------------------------------------------------------------------------------------*/\n\nconst TRIGGER_NAME = 'TabsTrigger';\n\ntype TabsTriggerElement = React.ComponentRef<typeof Primitive.button>;\ntype PrimitiveButtonProps = React.ComponentPropsWithoutRef<typeof Primitive.button>;\ninterface TabsTriggerProps extends PrimitiveButtonProps {\n value: string;\n}\n\nconst TabsTrigger = React.forwardRef<TabsTriggerElement, TabsTriggerProps>(\n (props: ScopedProps<TabsTriggerProps>, forwardedRef) => {\n const { __scopeTabs, value, disabled = false, ...triggerProps } = props;\n const context = useTabsContext(TRIGGER_NAME, __scopeTabs);\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeTabs);\n const triggerId = makeTriggerId(context.baseId, value);\n const contentId = makeContentId(context.baseId, value);\n const isSelected = value === context.value;\n return (\n <RovingFocusGroup.Item\n asChild\n {...rovingFocusGroupScope}\n focusable={!disabled}\n active={isSelected}\n >\n <Primitive.button\n type=\"button\"\n role=\"tab\"\n aria-selected={isSelected}\n aria-controls={contentId}\n data-state={isSelected ? 'active' : 'inactive'}\n data-disabled={disabled ? '' : undefined}\n disabled={disabled}\n id={triggerId}\n {...triggerProps}\n ref={forwardedRef}\n onMouseDown={composeEventHandlers(props.onMouseDown, (event) => {\n // only call handler if it's the left button (mousedown gets triggered by all mouse buttons)\n // but not when the control key is pressed (avoiding MacOS right click)\n if (!disabled && event.button === 0 && event.ctrlKey === false) {\n context.onValueChange(value);\n } else {\n // prevent focus to avoid accidental activation\n event.preventDefault();\n }\n })}\n onKeyDown={composeEventHandlers(props.onKeyDown, (event) => {\n if ([' ', 'Enter'].includes(event.key)) context.onValueChange(value);\n })}\n onFocus={composeEventHandlers(props.onFocus, () => {\n // handle \"automatic\" activation if necessary\n // ie. activate tab following focus\n const isAutomaticActivation = context.activationMode !== 'manual';\n if (!isSelected && !disabled && isAutomaticActivation) {\n context.onValueChange(value);\n }\n })}\n />\n </RovingFocusGroup.Item>\n );\n }\n);\n\nTabsTrigger.displayName = TRIGGER_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * TabsContent\n * -----------------------------------------------------------------------------------------------*/\n\nconst CONTENT_NAME = 'TabsContent';\n\ntype TabsContentElement = React.ComponentRef<typeof Primitive.div>;\ninterface TabsContentProps extends PrimitiveDivProps {\n value: string;\n\n /**\n * Used to force mounting when more control is needed. Useful when\n * controlling animation with React animation libraries.\n */\n forceMount?: true;\n}\n\nconst TabsContent = React.forwardRef<TabsContentElement, TabsContentProps>(\n (props: ScopedProps<TabsContentProps>, forwardedRef) => {\n const { __scopeTabs, value, forceMount, children, ...contentProps } = props;\n const context = useTabsContext(CONTENT_NAME, __scopeTabs);\n const triggerId = makeTriggerId(context.baseId, value);\n const contentId = makeContentId(context.baseId, value);\n const isSelected = value === context.value;\n const isMountAnimationPreventedRef = React.useRef(isSelected);\n\n React.useEffect(() => {\n const rAF = requestAnimationFrame(() => (isMountAnimationPreventedRef.current = false));\n return () => cancelAnimationFrame(rAF);\n }, []);\n\n return (\n <Presence present={forceMount || isSelected}>\n {({ present }) => (\n <Primitive.div\n data-state={isSelected ? 'active' : 'inactive'}\n data-orientation={context.orientation}\n role=\"tabpanel\"\n aria-labelledby={triggerId}\n hidden={!present}\n id={contentId}\n tabIndex={0}\n {...contentProps}\n ref={forwardedRef}\n style={{\n ...props.style,\n animationDuration: isMountAnimationPreventedRef.current ? '0s' : undefined,\n }}\n >\n {present && children}\n </Primitive.div>\n )}\n </Presence>\n );\n }\n);\n\nTabsContent.displayName = CONTENT_NAME;\n\n/* ---------------------------------------------------------------------------------------------- */\n\nfunction makeTriggerId(baseId: string, value: string) {\n return `${baseId}-trigger-${value}`;\n}\n\nfunction makeContentId(baseId: string, value: string) {\n return `${baseId}-content-${value}`;\n}\n\nconst Root = Tabs;\nconst List = TabsList;\nconst Trigger = TabsTrigger;\nconst Content = TabsContent;\n\nexport {\n createTabsScope,\n //\n Tabs,\n TabsList,\n TabsTrigger,\n TabsContent,\n //\n Root,\n List,\n Trigger,\n Content,\n};\nexport type { TabsProps, TabsListProps, TabsTriggerProps, TabsContentProps };\n","import { toDate } from \"./toDate.mjs\";\n\n/**\n * @name differenceInCalendarMonths\n * @category Month Helpers\n * @summary Get the number of calendar months between the given dates.\n *\n * @description\n * Get the number of calendar months between the given dates.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param dateLeft - The later date\n * @param dateRight - The earlier date\n *\n * @returns The number of calendar months\n *\n * @example\n * // How many calendar months are between 31 January 2014 and 1 September 2014?\n * const result = differenceInCalendarMonths(\n * new Date(2014, 8, 1),\n * new Date(2014, 0, 31)\n * )\n * //=> 8\n */\nexport function differenceInCalendarMonths(dateLeft, dateRight) {\n const _dateLeft = toDate(dateLeft);\n const _dateRight = toDate(dateRight);\n\n const yearDiff = _dateLeft.getFullYear() - _dateRight.getFullYear();\n const monthDiff = _dateLeft.getMonth() - _dateRight.getMonth();\n\n return yearDiff * 12 + monthDiff;\n}\n\n// Fallback for modularized imports:\nexport default differenceInCalendarMonths;\n","import { toDate } from \"./toDate.mjs\";\n\n/**\n * @name endOfMonth\n * @category Month Helpers\n * @summary Return the end of a month for the given date.\n *\n * @description\n * Return the end of a month for the given date.\n * The result will be in the local timezone.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param date - The original date\n *\n * @returns The end of a month\n *\n * @example\n * // The end of a month for 2 September 2014 11:55:00:\n * const result = endOfMonth(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Tue Sep 30 2014 23:59:59.999\n */\nexport function endOfMonth(date) {\n const _date = toDate(date);\n const month = _date.getMonth();\n _date.setFullYear(_date.getFullYear(), month + 1, 0);\n _date.setHours(23, 59, 59, 999);\n return _date;\n}\n\n// Fallback for modularized imports:\nexport default endOfMonth;\n","import { constructFrom } from \"./constructFrom.mjs\";\n\n/**\n * @name constructNow\n * @category Generic Helpers\n * @summary Constructs a new current date using the passed value constructor.\n * @pure false\n *\n * @description\n * The function constructs a new current date using the constructor from\n * the reference date. It helps to build generic functions that accept date\n * extensions and use the current date.\n *\n * It defaults to `Date` if the passed reference date is a number or a string.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param date - The reference date to take constructor from\n *\n * @returns Current date initialized using the given date constructor\n *\n * @example\n * import { constructNow, isSameDay } from 'date-fns'\n *\n * function isToday<DateType extends Date>(\n * date: DateType | number | string,\n * ): boolean {\n * // If we were to use `new Date()` directly, the function would behave\n * // differently in different timezones and return false for the same date.\n * return isSameDay(date, constructNow(date));\n * }\n */\nexport function constructNow(date) {\n return constructFrom(date, Date.now());\n}\n\n// Fallback for modularized imports:\nexport default constructNow;\n","import { toDate } from \"./toDate.mjs\";\n\n/**\n * @name compareAsc\n * @category Common Helpers\n * @summary Compare the two dates and return -1, 0 or 1.\n *\n * @description\n * Compare the two dates and return 1 if the first date is after the second,\n * -1 if the first date is before the second or 0 if dates are equal.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param dateLeft - The first date to compare\n * @param dateRight - The second date to compare\n *\n * @returns The result of the comparison\n *\n * @example\n * // Compare 11 February 1987 and 10 July 1989:\n * const result = compareAsc(new Date(1987, 1, 11), new Date(1989, 6, 10))\n * //=> -1\n *\n * @example\n * // Sort the array of dates:\n * const result = [\n * new Date(1995, 6, 2),\n * new Date(1987, 1, 11),\n * new Date(1989, 6, 10)\n * ].sort(compareAsc)\n * //=> [\n * // Wed Feb 11 1987 00:00:00,\n * // Mon Jul 10 1989 00:00:00,\n * // Sun Jul 02 1995 00:00:00\n * // ]\n */\nexport function compareAsc(dateLeft, dateRight) {\n const _dateLeft = toDate(dateLeft);\n const _dateRight = toDate(dateRight);\n\n const diff = _dateLeft.getTime() - _dateRight.getTime();\n\n if (diff < 0) {\n return -1;\n } else if (diff > 0) {\n return 1;\n // Return 0 if diff is 0; return NaN if diff is NaN\n } else {\n return diff;\n }\n}\n\n// Fallback for modularized imports:\nexport default compareAsc;\n","import { toDate } from \"./toDate.mjs\";\n\n/**\n * @name endOfDay\n * @category Day Helpers\n * @summary Return the end of a day for the given date.\n *\n * @description\n * Return the end of a day for the given date.\n * The result will be in the local timezone.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param date - The original date\n *\n * @returns The end of a day\n *\n * @example\n * // The end of a day for 2 September 2014 11:55:00:\n * const result = endOfDay(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Tue Sep 02 2014 23:59:59.999\n */\nexport function endOfDay(date) {\n const _date = toDate(date);\n _date.setHours(23, 59, 59, 999);\n return _date;\n}\n\n// Fallback for modularized imports:\nexport default endOfDay;\n","import { endOfDay } from \"./endOfDay.mjs\";\nimport { endOfMonth } from \"./endOfMonth.mjs\";\nimport { toDate } from \"./toDate.mjs\";\n\n/**\n * @name isLastDayOfMonth\n * @category Month Helpers\n * @summary Is the given date the last day of a month?\n *\n * @description\n * Is the given date the last day of a month?\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param date - The date to check\n\n * @returns The date is the last day of a month\n *\n * @example\n * // Is 28 February 2014 the last day of a month?\n * const result = isLastDayOfMonth(new Date(2014, 1, 28))\n * //=> true\n */\nexport function isLastDayOfMonth(date) {\n const _date = toDate(date);\n return +endOfDay(_date) === +endOfMonth(_date);\n}\n\n// Fallback for modularized imports:\nexport default isLastDayOfMonth;\n","import { compareAsc } from \"./compareAsc.mjs\";\nimport { differenceInCalendarMonths } from \"./differenceInCalendarMonths.mjs\";\nimport { isLastDayOfMonth } from \"./isLastDayOfMonth.mjs\";\nimport { toDate } from \"./toDate.mjs\";\n\n/**\n * @name differenceInMonths\n * @category Month Helpers\n * @summary Get the number of full months between the given dates.\n *\n * @description\n * Get the number of full months between the given dates using trunc as a default rounding method.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param dateLeft - The later date\n * @param dateRight - The earlier date\n *\n * @returns The number of full months\n *\n * @example\n * // How many full months are between 31 January 2014 and 1 September 2014?\n * const result = differenceInMonths(new Date(2014, 8, 1), new Date(2014, 0, 31))\n * //=> 7\n */\nexport function differenceInMonths(dateLeft, dateRight) {\n const _dateLeft = toDate(dateLeft);\n const _dateRight = toDate(dateRight);\n\n const sign = compareAsc(_dateLeft, _dateRight);\n const difference = Math.abs(\n differenceInCalendarMonths(_dateLeft, _dateRight),\n );\n let result;\n\n // Check for the difference of less than month\n if (difference < 1) {\n result = 0;\n } else {\n if (_dateLeft.getMonth() === 1 && _dateLeft.getDate() > 27) {\n // This will check if the date is end of Feb and assign a higher end of month date\n // to compare it with Jan\n _dateLeft.setDate(30);\n }\n\n _dateLeft.setMonth(_dateLeft.getMonth() - sign * difference);\n\n // Math.abs(diff in full months - diff in calendar months) === 1 if last calendar month is not full\n // If so, result must be decreased by 1 in absolute value\n let isLastMonthNotFull = compareAsc(_dateLeft, _dateRight) === -sign;\n\n // Check for cases of one full calendar month\n if (\n isLastDayOfMonth(toDate(dateLeft)) &&\n difference === 1 &&\n compareAsc(dateLeft, _dateRight) === 1\n ) {\n isLastMonthNotFull = false;\n }\n\n result = sign * (difference - Number(isLastMonthNotFull));\n }\n\n // Prevent negative zero\n return result === 0 ? 0 : result;\n}\n\n// Fallback for modularized imports:\nexport default differenceInMonths;\n","export function getRoundingMethod(method) {\n return (number) => {\n const round = method ? Math[method] : Math.trunc;\n const result = round(number);\n // Prevent negative zero\n return result === 0 ? 0 : result;\n };\n}\n","import { toDate } from \"./toDate.mjs\";\n\n/**\n * @name differenceInMilliseconds\n * @category Millisecond Helpers\n * @summary Get the number of milliseconds between the given dates.\n *\n * @description\n * Get the number of milliseconds between the given dates.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param dateLeft - The later date\n * @param dateRight - The earlier date\n *\n * @returns The number of milliseconds\n *\n * @example\n * // How many milliseconds are between\n * // 2 July 2014 12:30:20.600 and 2 July 2014 12:30:21.700?\n * const result = differenceInMilliseconds(\n * new Date(2014, 6, 2, 12, 30, 21, 700),\n * new Date(2014, 6, 2, 12, 30, 20, 600)\n * )\n * //=> 1100\n */\nexport function differenceInMilliseconds(dateLeft, dateRight) {\n return +toDate(dateLeft) - +toDate(dateRight);\n}\n\n// Fallback for modularized imports:\nexport default differenceInMilliseconds;\n","import { getRoundingMethod } from \"./_lib/getRoundingMethod.mjs\";\nimport { differenceInMilliseconds } from \"./differenceInMilliseconds.mjs\";\n\n/**\n * The {@link differenceInSeconds} function options.\n */\n\n/**\n * @name differenceInSeconds\n * @category Second Helpers\n * @summary Get the number of seconds between the given dates.\n *\n * @description\n * Get the number of seconds between the given dates.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param dateLeft - The later date\n * @param dateRight - The earlier date\n * @param options - An object with options.\n *\n * @returns The number of seconds\n *\n * @example\n * // How many seconds are between\n * // 2 July 2014 12:30:07.999 and 2 July 2014 12:30:20.000?\n * const result = differenceInSeconds(\n * new Date(2014, 6, 2, 12, 30, 20, 0),\n * new Date(2014, 6, 2, 12, 30, 7, 999)\n * )\n * //=> 12\n */\nexport function differenceInSeconds(dateLeft, dateRight, options) {\n const diff = differenceInMilliseconds(dateLeft, dateRight) / 1000;\n return getRoundingMethod(options?.roundingMethod)(diff);\n}\n\n// Fallback for modularized imports:\nexport default differenceInSeconds;\n","import { compareAsc } from \"./compareAsc.mjs\";\nimport { minutesInDay, minutesInMonth } from \"./constants.mjs\";\nimport { differenceInMonths } from \"./differenceInMonths.mjs\";\nimport { differenceInSeconds } from \"./differenceInSeconds.mjs\";\nimport { toDate } from \"./toDate.mjs\";\nimport { defaultLocale } from \"./_lib/defaultLocale.mjs\";\nimport { getDefaultOptions } from \"./_lib/defaultOptions.mjs\";\nimport { getTimezoneOffsetInMilliseconds } from \"./_lib/getTimezoneOffsetInMilliseconds.mjs\";\n\n/**\n * The {@link formatDistance} function options.\n */\n\n/**\n * @name formatDistance\n * @category Common Helpers\n * @summary Return the distance between the given dates in words.\n *\n * @description\n * Return the distance between the given dates in words.\n *\n * | Distance between dates | Result |\n * |-------------------------------------------------------------------|---------------------|\n * | 0 ... 30 secs | less than a minute |\n * | 30 secs ... 1 min 30 secs | 1 minute |\n * | 1 min 30 secs ... 44 mins 30 secs | [2..44] minutes |\n * | 44 mins ... 30 secs ... 89 mins 30 secs | about 1 hour |\n * | 89 mins 30 secs ... 23 hrs 59 mins 30 secs | about [2..24] hours |\n * | 23 hrs 59 mins 30 secs ... 41 hrs 59 mins 30 secs | 1 day |\n * | 41 hrs 59 mins 30 secs ... 29 days 23 hrs 59 mins 30 secs | [2..30] days |\n * | 29 days 23 hrs 59 mins 30 secs ... 44 days 23 hrs 59 mins 30 secs | about 1 month |\n * | 44 days 23 hrs 59 mins 30 secs ... 59 days 23 hrs 59 mins 30 secs | about 2 months |\n * | 59 days 23 hrs 59 mins 30 secs ... 1 yr | [2..12] months |\n * | 1 yr ... 1 yr 3 months | about 1 year |\n * | 1 yr 3 months ... 1 yr 9 month s | over 1 year |\n * | 1 yr 9 months ... 2 yrs | almost 2 years |\n * | N yrs ... N yrs 3 months | about N years |\n * | N yrs 3 months ... N yrs 9 months | over N years |\n * | N yrs 9 months ... N+1 yrs | almost N+1 years |\n *\n * With `options.includeSeconds == true`:\n * | Distance between dates | Result |\n * |------------------------|----------------------|\n * | 0 secs ... 5 secs | less than 5 seconds |\n * | 5 secs ... 10 secs | less than 10 seconds |\n * | 10 secs ... 20 secs | less than 20 seconds |\n * | 20 secs ... 40 secs | half a minute |\n * | 40 secs ... 60 secs | less than a minute |\n * | 60 secs ... 90 secs | 1 minute |\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param date - The date\n * @param baseDate - The date to compare with\n * @param options - An object with options\n *\n * @returns The distance in words\n *\n * @throws `date` must not be Invalid Date\n * @throws `baseDate` must not be Invalid Date\n * @throws `options.locale` must contain `formatDistance` property\n *\n * @example\n * // What is the distance between 2 July 2014 and 1 January 2015?\n * const result = formatDistance(new Date(2014, 6, 2), new Date(2015, 0, 1))\n * //=> '6 months'\n *\n * @example\n * // What is the distance between 1 January 2015 00:00:15\n * // and 1 January 2015 00:00:00, including seconds?\n * const result = formatDistance(\n * new Date(2015, 0, 1, 0, 0, 15),\n * new Date(2015, 0, 1, 0, 0, 0),\n * { includeSeconds: true }\n * )\n * //=> 'less than 20 seconds'\n *\n * @example\n * // What is the distance from 1 January 2016\n * // to 1 January 2015, with a suffix?\n * const result = formatDistance(new Date(2015, 0, 1), new Date(2016, 0, 1), {\n * addSuffix: true\n * })\n * //=> 'about 1 year ago'\n *\n * @example\n * // What is the distance between 1 August 2016 and 1 January 2015 in Esperanto?\n * import { eoLocale } from 'date-fns/locale/eo'\n * const result = formatDistance(new Date(2016, 7, 1), new Date(2015, 0, 1), {\n * locale: eoLocale\n * })\n * //=> 'pli ol 1 jaro'\n */\n\nexport function formatDistance(date, baseDate, options) {\n const defaultOptions = getDefaultOptions();\n const locale = options?.locale ?? defaultOptions.locale ?? defaultLocale;\n const minutesInAlmostTwoDays = 2520;\n\n const comparison = compareAsc(date, baseDate);\n\n if (isNaN(comparison)) {\n throw new RangeError(\"Invalid time value\");\n }\n\n const localizeOptions = Object.assign({}, options, {\n addSuffix: options?.addSuffix,\n comparison: comparison,\n });\n\n let dateLeft;\n let dateRight;\n if (comparison > 0) {\n dateLeft = toDate(baseDate);\n dateRight = toDate(date);\n } else {\n dateLeft = toDate(date);\n dateRight = toDate(baseDate);\n }\n\n const seconds = differenceInSeconds(dateRight, dateLeft);\n const offsetInSeconds =\n (getTimezoneOffsetInMilliseconds(dateRight) -\n getTimezoneOffsetInMilliseconds(dateLeft)) /\n 1000;\n const minutes = Math.round((seconds - offsetInSeconds) / 60);\n let months;\n\n // 0 up to 2 mins\n if (minutes < 2) {\n if (options?.includeSeconds) {\n if (seconds < 5) {\n return locale.formatDistance(\"lessThanXSeconds\", 5, localizeOptions);\n } else if (seconds < 10) {\n return locale.formatDistance(\"lessThanXSeconds\", 10, localizeOptions);\n } else if (seconds < 20) {\n return locale.formatDistance(\"lessThanXSeconds\", 20, localizeOptions);\n } else if (seconds < 40) {\n return locale.formatDistance(\"halfAMinute\", 0, localizeOptions);\n } else if (seconds < 60) {\n return locale.formatDistance(\"lessThanXMinutes\", 1, localizeOptions);\n } else {\n return locale.formatDistance(\"xMinutes\", 1, localizeOptions);\n }\n } else {\n if (minutes === 0) {\n return locale.formatDistance(\"lessThanXMinutes\", 1, localizeOptions);\n } else {\n return locale.formatDistance(\"xMinutes\", minutes, localizeOptions);\n }\n }\n\n // 2 mins up to 0.75 hrs\n } else if (minutes < 45) {\n return locale.formatDistance(\"xMinutes\", minutes, localizeOptions);\n\n // 0.75 hrs up to 1.5 hrs\n } else if (minutes < 90) {\n return locale.formatDistance(\"aboutXHours\", 1, localizeOptions);\n\n // 1.5 hrs up to 24 hrs\n } else if (minutes < minutesInDay) {\n const hours = Math.round(minutes / 60);\n return locale.formatDistance(\"aboutXHours\", hours, localizeOptions);\n\n // 1 day up to 1.75 days\n } else if (minutes < minutesInAlmostTwoDays) {\n return locale.formatDistance(\"xDays\", 1, localizeOptions);\n\n // 1.75 days up to 30 days\n } else if (minutes < minutesInMonth) {\n const days = Math.round(minutes / minutesInDay);\n return locale.formatDistance(\"xDays\", days, localizeOptions);\n\n // 1 month up to 2 months\n } else if (minutes < minutesInMonth * 2) {\n months = Math.round(minutes / minutesInMonth);\n return locale.formatDistance(\"aboutXMonths\", months, localizeOptions);\n }\n\n months = differenceInMonths(dateRight, dateLeft);\n\n // 2 months up to 12 months\n if (months < 12) {\n const nearestMonth = Math.round(minutes / minutesInMonth);\n return locale.formatDistance(\"xMonths\", nearestMonth, localizeOptions);\n\n // 1 year up to max Date\n } else {\n const monthsSinceStartOfYear = months % 12;\n const years = Math.trunc(months / 12);\n\n // N years up to 1 years 3 months\n if (monthsSinceStartOfYear < 3) {\n return locale.formatDistance(\"aboutXYears\", years, localizeOptions);\n\n // N years 3 months up to N years 9 months\n } else if (monthsSinceStartOfYear < 9) {\n return locale.formatDistance(\"overXYears\", years, localizeOptions);\n\n // N years 9 months up to N year 12 months\n } else {\n return locale.formatDistance(\"almostXYears\", years + 1, localizeOptions);\n }\n }\n}\n\n// Fallback for modularized imports:\nexport default formatDistance;\n","import { constructNow } from \"./constructNow.mjs\";\nimport { formatDistance } from \"./formatDistance.mjs\";\n\n/**\n * The {@link formatDistanceToNow} function options.\n */\n\n/**\n * @name formatDistanceToNow\n * @category Common Helpers\n * @summary Return the distance between the given date and now in words.\n * @pure false\n *\n * @description\n * Return the distance between the given date and now in words.\n *\n * | Distance to now | Result |\n * |-------------------------------------------------------------------|---------------------|\n * | 0 ... 30 secs | less than a minute |\n * | 30 secs ... 1 min 30 secs | 1 minute |\n * | 1 min 30 secs ... 44 mins 30 secs | [2..44] minutes |\n * | 44 mins ... 30 secs ... 89 mins 30 secs | about 1 hour |\n * | 89 mins 30 secs ... 23 hrs 59 mins 30 secs | about [2..24] hours |\n * | 23 hrs 59 mins 30 secs ... 41 hrs 59 mins 30 secs | 1 day |\n * | 41 hrs 59 mins 30 secs ... 29 days 23 hrs 59 mins 30 secs | [2..30] days |\n * | 29 days 23 hrs 59 mins 30 secs ... 44 days 23 hrs 59 mins 30 secs | about 1 month |\n * | 44 days 23 hrs 59 mins 30 secs ... 59 days 23 hrs 59 mins 30 secs | about 2 months |\n * | 59 days 23 hrs 59 mins 30 secs ... 1 yr | [2..12] months |\n * | 1 yr ... 1 yr 3 months | about 1 year |\n * | 1 yr 3 months ... 1 yr 9 month s | over 1 year |\n * | 1 yr 9 months ... 2 yrs | almost 2 years |\n * | N yrs ... N yrs 3 months | about N years |\n * | N yrs 3 months ... N yrs 9 months | over N years |\n * | N yrs 9 months ... N+1 yrs | almost N+1 years |\n *\n * With `options.includeSeconds == true`:\n * | Distance to now | Result |\n * |---------------------|----------------------|\n * | 0 secs ... 5 secs | less than 5 seconds |\n * | 5 secs ... 10 secs | less than 10 seconds |\n * | 10 secs ... 20 secs | less than 20 seconds |\n * | 20 secs ... 40 secs | half a minute |\n * | 40 secs ... 60 secs | less than a minute |\n * | 60 secs ... 90 secs | 1 minute |\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param date - The given date\n * @param options - The object with options\n *\n * @returns The distance in words\n *\n * @throws `date` must not be Invalid Date\n * @throws `options.locale` must contain `formatDistance` property\n *\n * @example\n * // If today is 1 January 2015, what is the distance to 2 July 2014?\n * const result = formatDistanceToNow(\n * new Date(2014, 6, 2)\n * )\n * //=> '6 months'\n *\n * @example\n * // If now is 1 January 2015 00:00:00,\n * // what is the distance to 1 January 2015 00:00:15, including seconds?\n * const result = formatDistanceToNow(\n * new Date(2015, 0, 1, 0, 0, 15),\n * {includeSeconds: true}\n * )\n * //=> 'less than 20 seconds'\n *\n * @example\n * // If today is 1 January 2015,\n * // what is the distance to 1 January 2016, with a suffix?\n * const result = formatDistanceToNow(\n * new Date(2016, 0, 1),\n * {addSuffix: true}\n * )\n * //=> 'in about 1 year'\n *\n * @example\n * // If today is 1 January 2015,\n * // what is the distance to 1 August 2016 in Esperanto?\n * const eoLocale = require('date-fns/locale/eo')\n * const result = formatDistanceToNow(\n * new Date(2016, 7, 1),\n * {locale: eoLocale}\n * )\n * //=> 'pli ol 1 jaro'\n */\nexport function formatDistanceToNow(date, options) {\n return formatDistance(date, constructNow(date), options);\n}\n\n// Fallback for modularized imports:\nexport default formatDistanceToNow;\n"],"names":["AlertTriangle","createLucideIcon","d","key","ArrowUpDown","CheckCircle","ChevronsUpDown","Clock","cx","cy","r","points","Eye","Folder","Globe","Lock","width","height","x","y","rx","ry","Pen","Play","SquarePen","XCircle","DIALOG_NAME","createDialogContext","createDialogScope","createContextScope","DialogProvider","useDialogContext","Dialog","__scopeDialog","children","open","openProp","defaultOpen","onOpenChange","modal","props","triggerRef","React","contentRef","setOpen","useControllableState","prop","defaultProp","onChange","caller","jsx","scope","contentId","useId","titleId","descriptionId","onOpenToggle","prevOpen","displayName","TRIGGER_NAME","DialogTrigger","forwardedRef","triggerProps","context","composedTriggerRef","useComposedRefs","Primitive","button","type","getState","ref","onClick","composeEventHandlers","PORTAL_NAME","PortalProvider","usePortalContext","forceMount","DialogPortal","container","map","Presence","present","PortalPrimitive","asChild","child","OVERLAY_NAME","DialogOverlay","portalContext","overlayProps","DialogOverlayImpl","Slot","createSlot","RemoveScroll","as","allowPinchZoom","shards","div","style","pointerEvents","CONTENT_NAME","DialogContent","contentProps","DialogContentModal","DialogContentNonModal","composedRefs","content","current","hideOthers","DialogContentImpl","trapFocus","disableOutsidePointerEvents","onCloseAutoFocus","event","preventDefault","focus","onPointerDownOutside","originalEvent","detail","ctrlLeftClick","ctrlKey","onFocusOutside","hasInteractedOutsideRef","hasPointerDownOutsideRef","defaultPrevented","onInteractOutside","target","targetIsTrigger","contains","onOpenAutoFocus","useFocusGuards","jsxs","Fragment","FocusScope","loop","trapped","onMountAutoFocus","onUnmountAutoFocus","DismissableLayer","role","id","onDismiss","TitleWarning","DescriptionWarning","TITLE_NAME","DialogTitle","titleProps","h2","DESCRIPTION_NAME","DialogDescription","descriptionProps","p","CLOSE_NAME","DialogClose","closeProps","TITLE_WARNING_NAME","WarningProvider","useWarningContext","createContext","contentName","titleName","docsSlug","param","titleWarningContext","MESSAGE","concat","document","getElementById","console","error","descriptionWarningContext","describedById","getAttribute","warn","ROOT_NAME","createAlertDialogContext","createAlertDialogScope","useDialogScope","AlertDialog","__scopeAlertDialog","alertDialogProps","dialogScope","AlertDialogTrigger","AlertDialogPortal","portalProps","AlertDialogOverlay","AlertDialogContentProvider","useAlertDialogContentContext","Slottable","createSlottable","AlertDialogContent","cancelRef","DialogPrimitive","preventScroll","AlertDialogTitle","AlertDialogDescription","AlertDialogAction","actionProps","CANCEL_NAME","AlertDialogCancel","cancelProps","Root","Trigger","Portal","Overlay","Content","Action","Cancel","Title","Description","TABS_NAME","createTabsContext","createTabsScope","createRovingFocusGroupScope","useRovingFocusGroupScope","TabsProvider","useTabsContext","Tabs","__scopeTabs","value","valueProp","onValueChange","defaultValue","orientation","dir","activationMode","tabsProps","direction","useDirection","setValue","baseId","TAB_LIST_NAME","TabsList","listProps","rovingFocusGroupScope","RovingFocusGroup","TabsTrigger","disabled","triggerId","makeTriggerId","makeContentId","isSelected","focusable","active","onMouseDown","onKeyDown","includes","onFocus","isAutomaticActivation","TabsContent","isMountAnimationPreventedRef","rAF","requestAnimationFrame","cancelAnimationFrame","hidden","tabIndex","animationDuration","List","differenceInCalendarMonths","dateLeft","dateRight","_dateLeft","toDate","_dateRight","yearDiff","getFullYear","getMonth","endOfMonth","date","_date","month","setFullYear","setHours","compareAsc","diff","getTime","formatDistanceToNow","options","formatDistance","baseDate","method","months","defaultOptions","getDefaultOptions","locale","defaultLocale","comparison","isNaN","localizeOptions","Object","assign","addSuffix","seconds","getRoundingMethod","roundingMethod","result","round","Math","trunc","number","minutes","getTimezoneOffsetInMilliseconds","offsetInSeconds","includeSeconds","minutesInDay","minutesInMonth","days","differenceInMonths","sign","difference","abs","getDate","setDate","setMonth","isLastMonthNotFull","isLastDayOfMonth","endOfDay","Number","nearestMonth","monthsSinceStartOfYear","years","constructFrom","Date","now"],"sourceRoot":""}
@@ -1,2 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8568],{64042:function(e,n,i){Promise.resolve().then(i.bind(i,76193))},76193:function(e,n,i){"use strict";i.r(n),i.d(n,{default:function(){return el},dynamic:function(){return ea}});var t=i(57437),s=i(2265),a=i(7211),l=i(12199),r=i(13590),o=i(99376),d=i(29501),c=i(67119),u=i(18930),m=i(62869),h=i(26110),x=i(95186),v=i(26815),f=i(10492);function p(e){let{deleteAgent:n,deleteAgentResult:i,agent:a}=e,l="delete this agent",[r,o]=(0,s.useState)("");return(0,t.jsxs)(h.Vq,{children:[(0,t.jsx)(h.hg,{asChild:!0,children:(0,t.jsx)(m.z,{disabled:!(null==a?void 0:a.id),variant:"destructive",children:(0,t.jsx)(u.Z,{className:"size-4"})})}),(0,t.jsxs)(h.cZ,{className:"sm:max-w-[475px]",children:[(0,t.jsx)(h.fK,{children:(0,t.jsx)(h.$N,{children:"Delete this agent"})}),(0,t.jsx)("div",{className:"grid gap-4 py-4",children:(0,t.jsxs)("div",{className:"grid gap-2",children:[(0,t.jsxs)(v._,{htmlFor:"name",children:['Type "',l,'" to confirm']}),(0,t.jsx)(x.I,{onChange:e=>{o(e.target.value)},id:"name",autoFocus:!0})]})}),(0,t.jsx)(h.cN,{children:(0,t.jsxs)(m.z,{disabled:r!==l||i.loading,onClick:()=>{n({variables:{id:a.id}})},variant:"destructive",type:"submit",children:["Delete ",i.loading&&(0,t.jsx)(f.g,{})]})})]})]})}var g=i(27689),j=i(66070),y=i(15681),b=i(6512),N=i(1828),w=i(12339),C=i(76818),S=i(13832),A=i(35974),k=i(77992);function D(){return(0,t.jsx)("svg",{width:"19",height:"20",viewBox:"0 0 19 20",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:(0,t.jsx)("path",{d:"M3.5 12.5003C2.72343 12.5003 2.33515 12.5003 2.02886 12.3735C1.62048 12.2043 1.29602 11.8798 1.12687 11.4715C1 11.1652 1 10.7769 1 10.0003V4.33366C1 3.40024 1 2.93353 1.18166 2.57701C1.34144 2.2634 1.59641 2.00844 1.91002 1.84865C2.26654 1.66699 2.73325 1.66699 3.66667 1.66699H9.33333C10.1099 1.66699 10.4982 1.66699 10.8045 1.79386C11.2129 1.96302 11.5373 2.28747 11.7065 2.69585C11.8333 3.00214 11.8333 3.39042 11.8333 4.16699M9.5 18.3337H15C15.9334 18.3337 16.4001 18.3337 16.7567 18.152C17.0703 17.9922 17.3252 17.7372 17.485 17.4236C17.6667 17.0671 17.6667 16.6004 17.6667 15.667V10.167C17.6667 9.23357 17.6667 8.76686 17.485 8.41034C17.3252 8.09674 17.0703 7.84177 16.7567 7.68198C16.4001 7.50033 15.9334 7.50033 15 7.50033H9.5C8.56658 7.50033 8.09987 7.50033 7.74335 7.68198C7.42975 7.84177 7.17478 8.09674 7.01499 8.41034C6.83333 8.76686 6.83333 9.23357 6.83333 10.167V15.667C6.83333 16.6004 6.83333 17.0671 7.01499 17.4236C7.17478 17.7372 7.42975 17.9922 7.74335 18.152C8.09987 18.3337 8.56658 18.3337 9.5 18.3337Z",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}var z=i(53647),Z=i(57054),O=i(23518),I=i(24156),P=i(30401),R=i(49137),E=i(53113),_=i(48736),F=i(81706),M=i(29374),T=i(73247),L=i(32489),V=i(22252),B=i(98728),G=i(33245),J=i(94508),X=i(8014),W=i(74928),Y=i(81103),q=i(69304),H=i(78361),K=i(92279),U=i(44045);let Q=["marketing","sales","finance","hr","coding","support","research","knowledge","product"],$=e=>{let{configItem:n,currentValue:i,variables:a,onVariableSelect:l}=e,[r,o]=s.useState(!1),d=a.find(e=>e.name===i);return(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsxs)("div",{className:"text-sm",children:[(0,t.jsx)("div",{className:"font-medium",children:n.name}),(0,t.jsx)("div",{className:"text-muted-foreground text-xs",children:n.description})]}),(0,t.jsxs)(Z.J2,{open:r,onOpenChange:o,modal:!0,children:[(0,t.jsx)(Z.xo,{asChild:!0,children:(0,t.jsxs)(m.z,{variant:"outline",role:"combobox","aria-expanded":r,className:"w-full justify-between text-sm",children:[d?d.name:"Select variable...",(0,t.jsx)(I.Z,{className:"ml-2 h-4 w-4 shrink-0 opacity-50"})]})}),(0,t.jsx)(Z.yk,{className:"w-full p-0",children:(0,t.jsxs)(O.mY,{children:[(0,t.jsx)(O.sZ,{placeholder:"Search variables..."}),(0,t.jsxs)(O.e8,{children:[(0,t.jsx)(O.rb,{children:"No variables found."}),(0,t.jsx)(O.fu,{children:a.map(e=>(0,t.jsxs)(O.di,{onSelect:()=>{l(e.name),console.log("variable",e),o(!1)},children:[(0,t.jsx)(P.Z,{className:(0,J.cn)("mr-2 h-4 w-4",i===e.name?"opacity-100":"opacity-0")}),(0,t.jsxs)("div",{className:"flex flex-col",children:[(0,t.jsx)("span",{children:e.name}),e.encrypted&&(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:"\uD83D\uDD12 Encrypted"})]})]},e.id))})]})]})})]})]})},ee=c.Ry({name:c.Z_().min(2,{message:"Agent name must be at least 2 characters."}).max(300,{message:"Agent name must not be longer than 300 characters."}),category:c.Z_().optional(),description:c.Z_().max(1e4,{message:"Agent description must not be longer than 10.000 characters."}).nullable().optional(),instructions:c.Z_().max(4e4,{message:"Agent instructions must not be longer than 40.000 characters."}).nullable().optional(),id:c.Z_().or(c.Rx()).nullable().optional(),active:c.Yj(),providerapikey:c.Z_().nullable().optional(),firewall:c.Ry({enabled:c.O7().optional(),scanners:c.Ry({promptGuard:c.O7().optional(),codeShield:c.O7().optional(),agentAlignment:c.O7().optional(),hiddenAscii:c.O7().optional(),piiDetection:c.O7().optional()}).optional()}).optional()});function en(e){var n,i,c,u,h,v,en,ei,et,es,ea,el,er,eo,ed,ec,eu,em,eh,ex,ev,ef,ep,eg,ej,ey,eb,eN,ew,eC,eS,eA,ek,eD,ez,eZ,eO,eI,eP,eR;let{agent:eE,refetch:e_}=e,eF=(0,o.useRouter)(),{user:eM}=(0,s.useContext)(S.S),eT=(0,s.useContext)(U.E),[eL,eV]=(0,s.useState)(eE.tools?eE.tools:[]),[eB,eG]=(0,s.useState)(!1),[eJ,eX]=(0,s.useState)(""),[eW,eY]=(0,s.useState)("all"),[eq,eH]=(0,s.useState)(""),[eK,eU]=(0,s.useState)(new Set);(0,s.useEffect)(()=>{let e=setTimeout(()=>{eH(eJ)},300);return()=>clearTimeout(e)},[eJ]);let[eQ,e$]=(0,s.useState)(eE.providerapikey||""),[e0,e1]=(0,s.useState)((null===(n=eE.firewall)||void 0===n?void 0:n.enabled)||!1),[e2,e3]=(0,s.useState)(eE.animation_idle||""),[e4,e6]=(0,s.useState)(eE.animation_responding||""),[e7,e5]=(0,s.useState)({rights_mode:eE.rights_mode,users:null===(i=eE.RBAC)||void 0===i?void 0:i.users,roles:null===(c=eE.RBAC)||void 0===c?void 0:c.roles,projects:null===(u=eE.RBAC)||void 0===u?void 0:u.projects}),[e9,e8]=(0,s.useState)({promptGuard:(null===(v=eE.firewall)||void 0===v?void 0:null===(h=v.scanners)||void 0===h?void 0:h.promptGuard)||!1,codeShield:(null===(ei=eE.firewall)||void 0===ei?void 0:null===(en=ei.scanners)||void 0===en?void 0:en.codeShield)||!1,agentAlignment:(null===(es=eE.firewall)||void 0===es?void 0:null===(et=es.scanners)||void 0===et?void 0:et.agentAlignment)||!1,hiddenAscii:(null===(el=eE.firewall)||void 0===el?void 0:null===(ea=el.scanners)||void 0===ea?void 0:ea.hiddenAscii)||!1,piiDetection:(null===(eo=eE.firewall)||void 0===eo?void 0:null===(er=eo.scanners)||void 0===er?void 0:er.piiDetection)||!1}),{toast:ne}=(0,k.pm)(),nn=(0,s.useMemo)(()=>({search:eq||void 0,category:"all"===eW?void 0:eW,limit:100,page:0}),[eq,eW]),{data:ni,loading:nt}=(0,a.aM)(g.Ul,{variables:nn}),{data:ns}=(0,a.aM)(g.Az,{variables:{page:1,limit:100}}),{data:na}=(0,a.aM)(g.Tp),nl=(null==ns?void 0:null===(ed=ns.variablesPagination)||void 0===ed?void 0:ed.items)||[],nr=(0,s.useMemo)(()=>{var e,n;return(null==ni?void 0:null===(n=ni.tools)||void 0===n?void 0:null===(e=n.items)||void 0===e?void 0:e.filter(e=>e.id!==eE.id))||[]},[null==ni?void 0:null===(ec=ni.tools)||void 0===ec?void 0:ec.items,eE.id]),no=(0,s.useMemo)(()=>nr.reduce((e,n)=>(e[n.category]||(e[n.category]=[]),e[n.category].push(n),e),{}),[nr]),nd=(null==na?void 0:na.toolCategories)||[];(0,s.useEffect)(()=>{nd.length>0&&eU(new Set(Object.keys(no)))},[no]);let nc=()=>{eX(""),eY("all")},nu=e=>{eU(n=>{let i=new Set(n);return i.has(e)?i.delete(e):i.add(e),i})},nm=async()=>{try{await navigator.clipboard.writeText(eE.id),ne({title:"Agent ID copied to clipboard"})}catch(e){ne({title:"Failed to copy Agent ID",variant:"destructive"})}},[nh,nx]=(0,l.D)(g.fG,{onCompleted:()=>{eF.push("/agents",{scroll:!1})}}),[nv,nf]=(0,l.D)(g.Dt,{refetchQueries:[g.as,"GetAgentById"]}),np=(0,d.cI)({resolver:(0,r.F)(ee),defaultValues:null!=eE?eE:{name:"New agent",instructions:"",steps:[],firewall:{enabled:!1,scanners:{promptGuard:!1,codeShield:!1,agentAlignment:!1,hiddenAscii:!1,piiDetection:!1}}},mode:"onChange"}),[ng]=(0,l.D)(g.fB);return(0,t.jsxs)("div",{className:"h-full flex-col md:flex",children:[(0,t.jsx)("div",{className:"container flex flex-col items-start justify-between space-y-2 py-4 sm:flex-row sm:items-center sm:space-y-0 md:h-16",children:(0,t.jsxs)("div",{className:"ml-auto flex w-full space-x-2 sm:justify-end",children:[(null==eE?void 0:eE.id)&&(0,t.jsxs)(m.z,{onClick:np.handleSubmit(async e=>{console.log("data",e),nv({variables:{id:e.id,name:e.name,description:e.description,instructions:e.instructions,category:e.category,active:e.active,providerapikey:eQ,animation_idle:e2,animation_responding:e4,rights_mode:e7.rights_mode,RBAC:{users:e7.users||[],roles:e7.roles||[],projects:e7.projects||[]},firewall:JSON.stringify({enabled:e0,scanners:e9}),tools:JSON.stringify(eL)}}),e_()},e=>{console.error("form data invalid",e)}),disabled:nf.loading,variant:"secondary",type:"submit",children:["Save ",nf.loading&&(0,t.jsx)(f.g,{className:"ml-2"})]}),(0,t.jsx)(m.z,{onClick:()=>{eF.push("/agents",{scroll:!1})},variant:"secondary",type:"button",children:"Back"}),(0,t.jsx)(p,{agent:eE,deleteAgent:nh,deleteAgentResult:nx})]})}),(0,t.jsx)(b.Z,{}),(0,t.jsx)(w.mQ,{defaultValue:"complete",className:"flex-1",children:(0,t.jsx)("div",{className:"container py-6",children:(0,t.jsx)("div",{className:"grid items-stretch gap-6",children:(0,t.jsx)("div",{className:"md:order-1",children:(0,t.jsx)("div",{className:"flex flex-col space-y-4",children:(0,t.jsx)("div",{className:"h-full",children:(0,t.jsx)(y.l0,{...np,children:(0,t.jsx)("form",{className:"space-y-8",children:(0,t.jsxs)("div",{className:"grid grid-rows-1 grid-flow-col gap-6 lg:grid-cols-2",children:[(0,t.jsx)("div",{className:"col",children:(0,t.jsxs)("div",{className:"flex flex-col space-y-4",children:[(0,t.jsx)("div",{className:"flex flex-col space-y-2",children:(0,t.jsxs)(j.Zb,{children:[(0,t.jsx)(j.Ol,{children:(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[eE.image&&(0,t.jsx)("div",{className:"w-10 h-10 rounded-full overflow-hidden flex-shrink-0",children:(0,t.jsx)("img",{src:eE.image,alt:"".concat(eE.name," profile"),className:"w-full h-full object-cover"})}),(0,t.jsx)(j.ll,{children:"Agent"})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[(0,t.jsxs)("span",{children:["ID: ",eE.id]}),(0,t.jsx)("button",{type:"button",onClick:nm,className:"p-1 hover:bg-muted rounded transition-colors text-muted-foreground",title:"Copy Agent ID",children:(0,t.jsx)(D,{})})]})]})}),(0,t.jsxs)(j.aY,{className:"grid gap-4",children:[(0,t.jsx)(y.Wi,{control:np.control,name:"name",render:e=>{let{field:n}=e;return(0,t.jsxs)(y.xJ,{children:[(0,t.jsx)(y.lX,{children:"Name"}),(0,t.jsx)(y.NI,{children:(0,t.jsx)(x.I,{type:"text",className:"resize-none",...n})}),(0,t.jsx)(y.zG,{})]})}}),(0,t.jsx)(y.Wi,{control:np.control,name:"category",render:e=>{let{field:n}=e;return n.value||(n.value=""),(0,t.jsxs)(y.xJ,{children:[(0,t.jsx)(y.lX,{children:"Category"}),(0,t.jsx)(y.NI,{children:(0,t.jsxs)(z.Ph,{onValueChange:e=>{n.onChange(e)},children:[(0,t.jsx)(z.i4,{children:(0,t.jsx)(z.ki,{className:"capitalize",placeholder:n.value||"Select a category"})}),(0,t.jsx)(z.Bw,{children:Q.map(e=>(0,t.jsx)(z.Ql,{className:"capitalize",value:e,children:e},e))})]})}),(0,t.jsx)(y.zG,{})]})}}),(0,t.jsx)(y.Wi,{control:np.control,name:"description",render:e=>{var n;let{field:i}=e;return i.value||(i.value=""),(0,t.jsxs)(y.xJ,{children:[(0,t.jsx)(y.lX,{children:"Description"}),(0,t.jsx)(y.NI,{children:(0,t.jsx)(C.g,{rows:10,className:"resize-none",...i,value:null!==(n=i.value)&&void 0!==n?n:""})}),(0,t.jsx)(y.zG,{})]})}}),(0,t.jsx)(y.Wi,{control:np.control,name:"instructions",render:e=>{var n;let{field:i}=e;return i.value||(i.value=""),(0,t.jsxs)(y.xJ,{children:[(0,t.jsx)(y.lX,{children:"Instructions"}),(0,t.jsx)(y.NI,{children:(0,t.jsx)(C.g,{rows:10,className:"resize-none",...i,value:null!==(n=i.value)&&void 0!==n?n:""})}),(0,t.jsx)(y.zG,{})]})}}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsxs)("div",{className:"text-sm",children:[(0,t.jsx)("div",{className:"font-medium",children:"Provider API Key"}),(0,t.jsx)("div",{className:"text-muted-foreground text-xs",children:"Select a variable containing the API key for the provider"})]}),(0,t.jsxs)(Z.J2,{children:[(0,t.jsx)(Z.xo,{asChild:!0,children:(0,t.jsxs)(m.z,{variant:"outline",role:"combobox",className:"w-full justify-between text-sm",children:[(null===(eu=nl.find(e=>e.name===eQ))||void 0===eu?void 0:eu.name)||"Select variable...",(0,t.jsx)(I.Z,{className:"ml-2 h-4 w-4 shrink-0 opacity-50"})]})}),(0,t.jsx)(Z.yk,{className:"w-full p-0 z-[9999]",children:(0,t.jsxs)(O.mY,{children:[(0,t.jsx)(O.sZ,{placeholder:"Search variables..."}),(0,t.jsxs)(O.e8,{children:[(0,t.jsx)(O.rb,{children:"No variables found."}),(0,t.jsx)(O.fu,{children:nl.map(e=>(0,t.jsxs)(O.di,{onSelect:()=>{e$(e.name)},children:[(0,t.jsx)(P.Z,{className:(0,J.cn)("mr-2 h-4 w-4",eQ===e.name?"opacity-100":"opacity-0")}),(0,t.jsxs)("div",{className:"flex flex-col",children:[(0,t.jsx)("span",{children:e.name}),e.encrypted&&(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:"\uD83D\uDD12 Encrypted"})]})]},e.id))})]})]})})]})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("div",{className:"text-sm font-medium mb-2",children:"Modalities"}),(0,t.jsxs)("p",{className:"text-sm text-muted-foreground mb-2",children:["This agent uses ",(0,t.jsx)("b",{children:eE.modelName})," from ",(0,t.jsx)("b",{children:eE.providerName})," and can use the following capabilities:"]}),(0,t.jsx)(Y.pn,{children:(0,t.jsxs)("div",{className:"flex items-center gap-3 mt-2",children:[(0,t.jsx)("div",{className:"p-2 rounded-md ".concat((null===(em=eE.capabilities)||void 0===em?void 0:em.text)?"bg-primary text-primary-foreground":"bg-gray-500 text-white"),children:(0,t.jsx)(R.Z,{className:"h-4 w-4"})}),(0,t.jsxs)(Y.u,{children:[(0,t.jsx)(Y.aJ,{asChild:!0,children:(0,t.jsx)("div",{className:"p-2 rounded-md ".concat((null===(ex=eE.capabilities)||void 0===ex?void 0:null===(eh=ex.images)||void 0===eh?void 0:eh.length)?"bg-primary text-primary-foreground":"bg-gray-500 text-white"),children:(0,t.jsx)(E.Z,{className:"h-4 w-4"})})}),(0,t.jsx)(Y._v,{children:(0,t.jsxs)("p",{children:["Images: ",(null===(ef=eE.capabilities)||void 0===ef?void 0:null===(ev=ef.images)||void 0===ev?void 0:ev.length)?eE.capabilities.images.join(", "):"None"]})})]}),(0,t.jsxs)(Y.u,{children:[(0,t.jsx)(Y.aJ,{asChild:!0,children:(0,t.jsx)("div",{className:"p-2 rounded-md ".concat((null===(eg=eE.capabilities)||void 0===eg?void 0:null===(ep=eg.files)||void 0===ep?void 0:ep.length)?"bg-primary text-primary-foreground":"bg-gray-500 text-white"),children:(0,t.jsx)(_.Z,{className:"h-4 w-4"})})}),(0,t.jsx)(Y._v,{children:(0,t.jsxs)("p",{children:["Files: ",(null===(ey=eE.capabilities)||void 0===ey?void 0:null===(ej=ey.files)||void 0===ej?void 0:ej.length)?eE.capabilities.files.join(", "):"None"]})})]}),(0,t.jsxs)(Y.u,{children:[(0,t.jsx)(Y.aJ,{asChild:!0,children:(0,t.jsx)("div",{className:"p-2 rounded-md ".concat((null===(eN=eE.capabilities)||void 0===eN?void 0:null===(eb=eN.audio)||void 0===eb?void 0:eb.length)?"bg-primary text-primary-foreground":"bg-gray-500 text-white"),children:(0,t.jsx)(F.Z,{className:"h-4 w-4"})})}),(0,t.jsx)(Y._v,{children:(0,t.jsxs)("p",{children:["Audio: ",(null===(eC=eE.capabilities)||void 0===eC?void 0:null===(ew=eC.audio)||void 0===ew?void 0:ew.length)?eE.capabilities.audio.join(", "):"None"]})})]}),(0,t.jsxs)(Y.u,{children:[(0,t.jsx)(Y.aJ,{asChild:!0,children:(0,t.jsx)("div",{className:"p-2 rounded-md ".concat((null===(eA=eE.capabilities)||void 0===eA?void 0:null===(eS=eA.video)||void 0===eS?void 0:eS.length)?"bg-primary text-primary-foreground":"bg-gray-500 text-white"),children:(0,t.jsx)(M.Z,{className:"h-4 w-4"})})}),(0,t.jsx)(Y._v,{children:(0,t.jsxs)("p",{children:["Video: ",(null===(eD=eE.capabilities)||void 0===eD?void 0:null===(ek=eD.video)||void 0===ek?void 0:ek.length)?eE.capabilities.video.join(", "):"None"]})})]})]})})]}),(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"text-sm font-medium mb-0",children:" You can test this agent using the Exulu UI without activating the agent if you are a super admin:"}),(0,t.jsx)(m.z,{className:"mt-0",onClick:async()=>{var e,n,i;console.log("agent",eE);let t=await ng({variables:{title:"New session",user:eM.id,agent:eE.id}});console.log("result",t);let s=null==t?void 0:null===(i=t.data)||void 0===i?void 0:null===(n=i.agent_sessionsCreateOne)||void 0===n?void 0:null===(e=n.item)||void 0===e?void 0:e.id;eF.push("/chat/".concat(eE.id,"/").concat(s))},type:"button",variant:"default",children:"Go to chat"})]})]})]})}),(0,t.jsx)(y.Wi,{control:np.control,name:"active",render:e=>{let{field:n}=e;return(0,t.jsxs)(y.xJ,{className:"flex flex-row items-center justify-between rounded-lg border p-4",children:[(0,t.jsxs)("div",{className:"space-y-0.5",children:[(0,t.jsx)(y.lX,{className:"text-base",children:"Is this agent active?"}),(0,t.jsx)(y.pf,{children:"When active this agent will be available via the Exulu UI and API endpoint."})]}),(0,t.jsx)(y.NI,{children:(0,t.jsx)(N.r,{checked:n.value,onCheckedChange:n.onChange})})]})}}),(null==eT?void 0:null===(ez=eT.fileUploads)||void 0===ez?void 0:ez.s3endpoint)&&(0,t.jsx)(j.Zb,{className:"bg-transparent",children:(0,t.jsxs)(W.zF,{children:[(0,t.jsx)(j.Ol,{className:"p-4",children:(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsxs)("div",{className:"flex flex-col",children:[(0,t.jsx)("p",{className:"text-base",children:"Custom Animations"}),(0,t.jsx)("p",{className:"text-sm text-muted-foreground mb-0",children:"Upload custom Lottie animations for idle and responding states."})]}),(0,t.jsx)(W.wy,{asChild:!0,children:(0,t.jsxs)(m.z,{variant:"ghost",size:"icon",className:"size-8",children:[(0,t.jsx)(I.Z,{className:"size-4"}),(0,t.jsx)("span",{className:"sr-only",children:"Toggle"})]})})]})}),(0,t.jsx)(W.Fw,{className:"mt-5",children:(0,t.jsx)(j.aY,{className:"space-y-4",children:(0,t.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("div",{className:"text-sm font-medium",children:"Idle Animation"}),(0,t.jsx)("div",{className:"text-xs text-muted-foreground",children:"Animation when agent is waiting"})]}),(0,t.jsxs)(H.jF,{s3key:e2,children:[(0,t.jsx)(H.ZP,{id:"agent-idle-animation",allowedFileTypes:[".json"],selectionLimit:1,buttonText:"",dependencies:[eE.id],onConfirm:e=>{e.length>0&&e3(e[0])}}),e2&&(0,t.jsxs)("div",{className:"mt-2 p-2 border rounded bg-muted/30",children:[(0,t.jsx)("div",{className:"text-xs text-muted-foreground mb-1",children:"Preview:"}),(0,t.jsx)("div",{className:"w-12 h-12 mx-auto",children:(0,t.jsx)(K.Z,{agent:{...eE,animation_idle:e2},status:"ready"})})]})]})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("div",{className:"text-sm font-medium",children:"Responding Animation"}),(0,t.jsx)("div",{className:"text-xs text-muted-foreground",children:"Animation when agent is responding"})]}),(0,t.jsxs)(H.jF,{s3key:e4,children:[(0,t.jsx)(H.ZP,{id:"agent-responding-animation",allowedFileTypes:[".json"],selectionLimit:1,buttonText:"",dependencies:[eE.id],onConfirm:e=>{e.length>0&&e6(e[0])}}),e4&&(0,t.jsxs)("div",{className:"mt-2 p-2 border rounded bg-muted/30",children:[(0,t.jsx)("div",{className:"text-xs text-muted-foreground mb-1",children:"Preview:"}),(0,t.jsx)("div",{className:"w-12 h-12 mx-auto",children:(0,t.jsx)(K.Z,{agent:{...eE,animation_responding:e4},status:"streaming"})})]})]})]})]})})})]})}),(0,t.jsx)(j.Zb,{className:"bg-transparent",children:(0,t.jsxs)(W.zF,{children:[(0,t.jsx)(j.Ol,{className:"p-4",children:(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsxs)("div",{className:"flex flex-col",children:[(0,t.jsx)("p",{className:"text-base",children:"Access Control"}),(0,t.jsx)("p",{className:"text-sm text-muted-foreground mb-0",children:"Control access to this agent."})]}),(0,t.jsx)(W.wy,{asChild:!0,children:(0,t.jsxs)(m.z,{variant:"ghost",size:"icon",className:"size-8",children:[(0,t.jsx)(I.Z,{className:"size-4"}),(0,t.jsx)("span",{className:"sr-only",children:"Toggle"})]})})]})}),(0,t.jsx)(W.Fw,{className:"mt-5",children:(0,t.jsx)(j.aY,{className:"space-y-4",children:(0,t.jsx)(X.P,{initialRightsMode:eE.rights_mode,initialUsers:null===(eZ=eE.RBAC)||void 0===eZ?void 0:eZ.users,initialRoles:null===(eO=eE.RBAC)||void 0===eO?void 0:eO.roles,initialProjects:null===(eI=eE.RBAC)||void 0===eI?void 0:eI.projects,onChange:(e,n,i,t)=>{e5({rights_mode:e,users:n,roles:i,projects:t})}})})})]})}),(0,t.jsx)(y.Wi,{control:np.control,name:"firewall.enabled",render:e=>{let{field:n}=e;return(0,t.jsxs)(y.xJ,{className:"flex flex-row items-center justify-between rounded-lg border p-4",children:[(0,t.jsxs)("div",{className:"space-y-0.5",children:[(0,t.jsx)(y.lX,{className:"text-base",children:"LLM Firewall Protection"}),(0,t.jsx)(y.pf,{children:"Enable firewall to protect against malicious inputs and outputs."})]}),(0,t.jsx)(y.NI,{children:(0,t.jsx)(N.r,{checked:e0,onCheckedChange:e=>{e1(e),n.onChange(e)}})})]})}}),e0&&(0,t.jsxs)(j.Zb,{children:[(0,t.jsxs)(j.Ol,{children:[(0,t.jsx)(j.ll,{children:"Firewall Scanner Configuration"}),(0,t.jsx)(j.SZ,{children:"Configure which security scanners to enable for different types of threats."})]}),(0,t.jsxs)(j.aY,{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"flex flex-row items-center justify-between rounded-lg border p-4",children:[(0,t.jsxs)("div",{className:"space-y-0.5",children:[(0,t.jsx)(y.lX,{className:"text-base",children:"Prompt Guard"}),(0,t.jsx)(y.pf,{children:"Detects and blocks prompt injection attacks."})]}),(0,t.jsx)(N.r,{checked:e9.promptGuard,onCheckedChange:e=>{e8(n=>({...n,promptGuard:e}))}})]}),(0,t.jsxs)("div",{className:"flex flex-row items-center justify-between rounded-lg border p-4",children:[(0,t.jsxs)("div",{className:"space-y-0.5",children:[(0,t.jsx)(y.lX,{className:"text-base",children:"Code Shield"}),(0,t.jsx)(y.pf,{children:"Prevents generation of malicious code or exploits."})]}),(0,t.jsx)(N.r,{checked:e9.codeShield,onCheckedChange:e=>{e8(n=>({...n,codeShield:e}))}})]}),(0,t.jsxs)("div",{className:"flex flex-row items-center justify-between rounded-lg border p-4",children:[(0,t.jsxs)("div",{className:"space-y-0.5",children:[(0,t.jsx)(y.lX,{className:"text-base",children:"Agent Alignment"}),(0,t.jsx)(y.pf,{children:"Ensures responses align with safety guidelines and policies."})]}),(0,t.jsx)(N.r,{checked:e9.agentAlignment,onCheckedChange:e=>{e8(n=>({...n,agentAlignment:e}))}})]}),(0,t.jsxs)("div",{className:"flex flex-row items-center justify-between rounded-lg border p-4",children:[(0,t.jsxs)("div",{className:"space-y-0.5",children:[(0,t.jsx)(y.lX,{className:"text-base",children:"Hidden ASCII Detection"}),(0,t.jsx)(y.pf,{children:"Detects hidden or malformed characters that could bypass other filters."})]}),(0,t.jsx)(N.r,{checked:e9.hiddenAscii,onCheckedChange:e=>{e8(n=>({...n,hiddenAscii:e}))}})]}),(0,t.jsxs)("div",{className:"flex flex-row items-center justify-between rounded-lg border p-4",children:[(0,t.jsxs)("div",{className:"space-y-0.5",children:[(0,t.jsx)(y.lX,{className:"text-base",children:"PII Detection"}),(0,t.jsx)(y.pf,{children:"Identifies and protects personally identifiable information."})]}),(0,t.jsx)(N.r,{checked:e9.piiDetection,onCheckedChange:e=>{e8(n=>({...n,piiDetection:e}))}})]})]})]})]})}),(0,t.jsx)("div",{className:"col",children:(0,t.jsxs)(j.Zb,{children:[(0,t.jsxs)(j.Ol,{children:[(0,t.jsxs)(j.ll,{className:"flex items-center gap-2",children:["Tools",nt&&(0,t.jsx)(f.g,{className:"h-4 w-4"})]}),(0,t.jsx)(j.SZ,{children:eL.length>0?"".concat(eL.length," tool").concat(1===eL.length?"":"s"," enabled for this agent"):"No tools enabled for this agent"})]}),(0,t.jsx)(j.aY,{children:(0,t.jsxs)("div",{className:"flex flex-col space-y-4",children:[(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsx)("div",{className:"flex items-center gap-2",children:(0,t.jsxs)("div",{className:"relative flex-1",children:[(0,t.jsx)(T.Z,{className:"absolute left-3 top-1/2 transform -translate-y-1/2 h-4 w-4 text-muted-foreground"}),(0,t.jsx)(x.I,{placeholder:"Search tools by name or description...",value:eJ,onChange:e=>eX(e.target.value),className:"pl-10 pr-10"}),eJ&&(0,t.jsx)(m.z,{variant:"ghost",size:"sm",className:"absolute right-1 top-1/2 transform -translate-y-1/2 h-6 w-6 p-0",onClick:()=>eX(""),children:(0,t.jsx)(L.Z,{className:"h-3 w-3"})})]})}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsxs)(z.Ph,{value:eW,onValueChange:eY,children:[(0,t.jsx)(z.i4,{className:"w-[200px]",children:(0,t.jsx)(z.ki,{placeholder:"Filter by category"})}),(0,t.jsxs)(z.Bw,{children:[(0,t.jsx)(z.Ql,{value:"all",children:"All categories"}),nd.map(e=>(0,t.jsx)(z.Ql,{value:e,className:"capitalize",children:e},e))]})]}),(eJ||"all"!==eW)&&(0,t.jsx)(m.z,{variant:"outline",size:"sm",onClick:nc,children:"Clear filters"}),(0,t.jsxs)("div",{className:"ml-auto text-sm text-muted-foreground",children:[(null==ni?void 0:null===(eP=ni.tools)||void 0===eP?void 0:eP.total)||0," tool",1!==((null==ni?void 0:null===(eR=ni.tools)||void 0===eR?void 0:eR.total)||0)?"s":"",eq||"all"!==eW?" found":" available"]})]})]}),(0,t.jsxs)("div",{className:"space-y-6",children:["all"===eW?Object.entries(no).map(e=>{let[n,i]=e,s=i.filter(e=>eL.some(n=>n.id===e.id)).length,a=eK.has(n);return(0,t.jsxs)(W.zF,{open:!a,onOpenChange:()=>nu(n),children:[(0,t.jsxs)("div",{className:"flex items-center justify-between p-3 border rounded-lg bg-muted/30",children:[(0,t.jsx)(W.wy,{asChild:!0,children:(0,t.jsxs)(m.z,{variant:"ghost",className:"flex items-center gap-2 p-0 h-auto font-medium",children:[(0,t.jsx)(I.Z,{className:"h-4 w-4"}),(0,t.jsx)("span",{className:"capitalize",children:n}),(0,t.jsxs)(A.C,{variant:"secondary",className:"text-xs",children:[s,"/",i.length]})]})}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(m.z,{variant:"outline",size:"sm",onClick:()=>{let e=i.filter(e=>!eL.some(n=>n.id===e.id)).map(e=>{var n;return{id:e.id,type:e.type,config:(null===(n=e.config)||void 0===n?void 0:n.map(e=>({name:e.name,variable:""})))||[]}});eV([...eL,...e])},disabled:s===i.length,children:"Enable All"}),(0,t.jsx)(m.z,{variant:"outline",size:"sm",onClick:()=>{let e=i.map(e=>e.id);eV(eL.filter(n=>!e.includes(n.id)))},disabled:0===s,children:"Disable All"})]})]}),(0,t.jsx)(W.Fw,{className:"mt-2",children:(0,t.jsx)("div",{className:"space-y-2 pl-4",children:i.map(e=>{var n,i;let s=eL.some(n=>n.id===e.id),a=eL.find(n=>n.id===e.id),l=(null===(n=e.config)||void 0===n?void 0:n.length)||0,r=(null==a?void 0:null===(i=a.config)||void 0===i?void 0:i.filter(e=>e.variable&&""!==e.variable.trim()).length)||0,o=s&&l>0&&r<l;return(0,t.jsx)("div",{className:"rounded-lg border p-4",children:(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsxs)("div",{className:"flex items-center flex-1",children:[(0,t.jsxs)("div",{className:"flex-1",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("div",{className:"font-medium",children:null==e?void 0:e.name}),(0,t.jsxs)("div",{className:"flex items-center gap-1",children:[l>0&&s&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(A.C,{variant:"secondary",className:"text-xs",children:[r,"/",l]}),o&&(0,t.jsx)(V.Z,{className:"h-4 w-4 text-destructive"})]}),(0,t.jsx)(A.C,{variant:"outline",children:null==e?void 0:e.category})]})]}),(0,t.jsx)("div",{className:"text-sm text-muted-foreground mt-1 line-clamp-2",children:null==e?void 0:e.description})]}),(0,t.jsxs)(q.yo,{open:eB===e.id,onOpenChange:()=>{eB===e.id?eG(!1):eG(e.id)},children:[l>0&&!s?(0,t.jsx)(q.aM,{asChild:!0,children:(0,t.jsx)(m.z,{variant:"ghost",size:"sm",children:(0,t.jsx)(B.Z,{className:"h-4 w-4"})})}):(0,t.jsx)(m.z,{type:"button",disabled:!0,variant:"ghost",size:"sm",children:(0,t.jsx)(B.Z,{className:"h-4 w-4"})}),(0,t.jsx)(q.aM,{asChild:!0,children:(0,t.jsx)(m.z,{className:"mr-2",variant:"ghost",size:"sm",children:(0,t.jsx)(G.Z,{className:"h-4 w-4"})})}),(0,t.jsxs)(q.ue,{className:"w-[400px] sm:w-[540px]",children:[(0,t.jsxs)(q.Tu,{children:[(0,t.jsx)(q.bC,{children:null==e?void 0:e.name}),(0,t.jsx)(q.Ei,{children:null==e?void 0:e.description})]}),(0,t.jsx)("div",{className:"py-6",children:(0,t.jsx)("div",{className:"space-y-4",children:e.config&&e.config.length>0&&(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsx)("div",{className:"text-md font-medium",children:"Configuration variables:"}),e.config.map((n,i)=>{var l;let r=(null==a?void 0:null===(l=a.config.find(e=>e.name===n.name))||void 0===l?void 0:l.variable)||"";return(0,t.jsx)("div",{className:"space-y-2",children:s?(0,t.jsx)($,{configItem:n,currentValue:r,variables:nl,onVariableSelect:i=>{let t=eL.map(t=>t.id===e.id?{...t,config:t.config.map(e=>e.name===n.name?{...e,variable:i}:e)}:t);console.log("updated",t),eV(t)}}):(0,t.jsx)("div",{className:"text-xs text-muted-foreground p-2 bg-muted rounded",children:"Enable this tool to configure"})},i)})]})})})]})]})]}),(0,t.jsx)(N.r,{checked:s,onCheckedChange:n=>{let i=[...eL];if(n){var t,s;i=[...eL,{id:e.id,type:e.type,config:(null===(t=e.config)||void 0===t?void 0:t.map(e=>({name:e.name,variable:""})))||[]}],(null===(s=e.config)||void 0===s?void 0:s.length)>0&&eG(e.id)}else i=eL.filter(n=>n.id!==e.id);eV(i)}})]})},null==e?void 0:e.id)})})})]},n)}):(0,t.jsx)("div",{className:"space-y-2",children:nr.map(e=>{var n,i;let s=eL.some(n=>n.id===e.id),a=eL.find(n=>n.id===e.id),l=(null===(n=e.config)||void 0===n?void 0:n.length)||0,r=(null==a?void 0:null===(i=a.config)||void 0===i?void 0:i.filter(e=>e.variable&&""!==e.variable.trim()).length)||0,o=s&&l>0&&r<l;return(0,t.jsx)("div",{className:"rounded-lg border p-4",children:(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsxs)("div",{className:"flex items-center flex-1",children:[(0,t.jsxs)("div",{className:"flex-1",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("div",{className:"font-medium",children:null==e?void 0:e.name}),(0,t.jsxs)("div",{className:"flex items-center gap-1",children:[l>0&&s&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(A.C,{variant:"secondary",className:"text-xs",children:[r,"/",l]}),o&&(0,t.jsx)(V.Z,{className:"h-4 w-4 text-destructive"})]}),(0,t.jsx)(A.C,{variant:"outline",children:null==e?void 0:e.category})]})]}),(0,t.jsx)("div",{className:"text-sm text-muted-foreground mt-1 line-clamp-2",children:null==e?void 0:e.description})]}),(0,t.jsxs)(q.yo,{open:eB===e.id,onOpenChange:()=>{eB===e.id?eG(!1):eG(e.id)},children:[l>0&&!s?(0,t.jsx)(q.aM,{asChild:!0,children:(0,t.jsx)(m.z,{variant:"ghost",size:"sm",children:(0,t.jsx)(B.Z,{className:"h-4 w-4"})})}):(0,t.jsx)(m.z,{type:"button",disabled:!0,variant:"ghost",size:"sm",children:(0,t.jsx)(B.Z,{className:"h-4 w-4"})}),(0,t.jsx)(q.aM,{asChild:!0,children:(0,t.jsx)(m.z,{className:"mr-2",variant:"ghost",size:"sm",children:(0,t.jsx)(G.Z,{className:"h-4 w-4"})})}),(0,t.jsxs)(q.ue,{className:"w-[400px] sm:w-[540px]",children:[(0,t.jsxs)(q.Tu,{children:[(0,t.jsx)(q.bC,{children:null==e?void 0:e.name}),(0,t.jsx)(q.Ei,{children:null==e?void 0:e.description})]}),(0,t.jsx)("div",{className:"py-6",children:(0,t.jsx)("div",{className:"space-y-4",children:e.config&&e.config.length>0&&(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsx)("div",{className:"text-md font-medium",children:"Configuration variables:"}),e.config.map((n,i)=>{var l;let r=(null==a?void 0:null===(l=a.config.find(e=>e.name===n.name))||void 0===l?void 0:l.variable)||"";return(0,t.jsx)("div",{className:"space-y-2",children:s?(0,t.jsx)($,{configItem:n,currentValue:r,variables:nl,onVariableSelect:i=>{let t=eL.map(t=>t.id===e.id?{...t,config:t.config.map(e=>e.name===n.name?{...e,variable:i}:e)}:t);console.log("updated",t),eV(t)}}):(0,t.jsx)("div",{className:"text-xs text-muted-foreground p-2 bg-muted rounded",children:"Enable this tool to configure"})},i)})]})})})]})]})]}),(0,t.jsx)(N.r,{checked:s,onCheckedChange:n=>{let i=[...eL];if(n){var t,s;i=[...eL,{id:e.id,type:e.type,config:(null===(t=e.config)||void 0===t?void 0:t.map(e=>({name:e.name,variable:""})))||[]}],(null===(s=e.config)||void 0===s?void 0:s.length)>0&&eG(e.id)}else i=eL.filter(n=>n.id!==e.id);eV(i)}})]})},null==e?void 0:e.id)})}),0===nr.length&&(eJ||"all"!==eW)&&(0,t.jsxs)("div",{className:"text-center py-8",children:[(0,t.jsx)("div",{className:"text-muted-foreground",children:"No tools found matching your criteria."}),(0,t.jsx)(m.z,{variant:"outline",size:"sm",className:"mt-2",onClick:nc,children:"Clear filters"})]})]})]})})]})})]})})})})})})})})})]})}var ei=i(93022),et=i(65613),es=i(20653);let ea="force-dynamic";function el(e){let{params:n}=e,{data:i,loading:s,error:l,refetch:r}=(0,a.aM)(g.as,{variables:{id:n.id}});return s?(0,t.jsx)("div",{children:(0,t.jsx)(ei.O,{className:"w-full h-full"})}):l?(0,t.jsxs)(et.bZ,{variant:"destructive",children:[(0,t.jsx)(es.LPM,{className:"size-4"}),(0,t.jsx)(et.Cd,{children:"Error"}),(0,t.jsx)(et.X,{children:"Error loading agent."})]}):(null==i?void 0:i.agentById)?(0,t.jsx)(en,{agent:i.agentById,refetch:r}):(0,t.jsxs)(et.bZ,{variant:"destructive",children:[(0,t.jsx)(es.LPM,{className:"size-4"}),(0,t.jsx)(et.Cd,{children:"Error"}),(0,t.jsx)(et.X,{children:"Agent not found."})]})}},92279:function(e,n,i){"use strict";var t=i(57437),s=i(7882),a=i(11713),l=i(78361);let r=e=>{let{agent:n,status:i,className:r}=e,{data:o}=(0,a.a)({queryKey:["defaultAnimation","idle"],queryFn:async()=>(await fetch("/agent-idle.json")).json(),staleTime:36e5,enabled:!n.animation_idle}),{data:d}=(0,a.a)({queryKey:["defaultAnimation","responding"],queryFn:async()=>(await fetch("/agent-responding.json")).json(),staleTime:36e5,enabled:!n.animation_responding}),{data:c}=(0,a.a)({queryKey:["customAnimation",n.animation_idle],queryFn:async()=>{if(!n.animation_idle)return null;let e=await (0,l.NF)(n.animation_idle);return(await fetch(e)).json()},enabled:!!n.animation_idle,staleTime:3e5}),{data:u}=(0,a.a)({queryKey:["customAnimation",n.animation_responding],queryFn:async()=>{if(!n.animation_responding)return null;let e=await (0,l.NF)(n.animation_responding);return(await fetch(e)).json()},enabled:!!n.animation_responding,staleTime:3e5}),{View:m}=(0,s.useLottie)((()=>{switch(i){case"submitted":case"ready":case"error":default:return{animationData:c||o,loop:!0,autoplay:!0};case"streaming":return{animationData:u||d,loop:!0,autoplay:!0}}})());return(0,t.jsx)(t.Fragment,{children:(0,t.jsx)("div",{className:"",children:(0,t.jsx)("div",{className:r,children:m})})})};n.Z=e=>{let{agent:n,status:i,className:s}=e;return(0,t.jsx)(r,{className:s,agent:n,status:i})}},12339:function(e,n,i){"use strict";i.d(n,{SP:function(){return d},dr:function(){return o},mQ:function(){return r},nU:function(){return c}});var t=i(57437),s=i(20271),a=i(2265),l=i(94508);let r=s.fC,o=a.forwardRef((e,n)=>{let{className:i,...a}=e;return(0,t.jsx)(s.aV,{ref:n,className:(0,l.cn)("inline-flex h-10 items-center justify-center rounded-md bg-muted p-1 text-muted-foreground",i),...a})});o.displayName=s.aV.displayName;let d=a.forwardRef((e,n)=>{let{className:i,...a}=e;return(0,t.jsx)(s.xz,{ref:n,className:(0,l.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",i),...a})});d.displayName=s.xz.displayName;let c=a.forwardRef((e,n)=>{let{className:i,...a}=e;return(0,t.jsx)(s.VY,{ref:n,className:(0,l.cn)("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",i),...a})});c.displayName=s.VY.displayName},7882:function(e,n,i){!function(e,n,i){"use strict";function t(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var s=t(n),a=t(i);function l(e,n){(null==n||n>e.length)&&(n=e.length);for(var i=0,t=Array(n);i<n;i++)t[i]=e[i];return t}function r(e,n){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(e);n&&(t=t.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),i.push.apply(i,t)}return i}function o(e){for(var n=1;n<arguments.length;n++){var i=null!=arguments[n]?arguments[n]:{};n%2?r(Object(i),!0).forEach(function(n){var t,s;t=n,s=i[n],(t=function(e){var n=function(e,n){if("object"!=typeof e||!e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var t=i.call(e,n||"default");if("object"!=typeof t)return t;throw TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(e)}(e,"string");return"symbol"==typeof n?n:n+""}(t))in e?Object.defineProperty(e,t,{value:s,enumerable:!0,configurable:!0,writable:!0}):e[t]=s}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):r(Object(i)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(i,n))})}return e}function d(e,n){if(null==e)return{};var i,t,s=function(e,n){if(null==e)return{};var i={};for(var t in e)if(({}).hasOwnProperty.call(e,t)){if(n.includes(t))continue;i[t]=e[t]}return i}(e,n);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(t=0;t<a.length;t++)i=a[t],n.includes(i)||({}).propertyIsEnumerable.call(e,i)&&(s[i]=e[i])}return s}var c=["animationData","loop","autoplay","initialSegment","onComplete","onLoopComplete","onEnterFrame","onSegmentStart","onConfigReady","onDataReady","onDataFailed","onLoadedImages","onDOMLoaded","onDestroy","lottieRef","renderer","name","assetsPath","rendererSettings"],u=function(e,n){var t,r=e.animationData,u=e.loop,m=e.autoplay,h=e.initialSegment,x=e.onComplete,v=e.onLoopComplete,f=e.onEnterFrame,p=e.onSegmentStart,g=e.onConfigReady,j=e.onDataReady,y=e.onDataFailed,b=e.onLoadedImages,N=e.onDOMLoaded,w=e.onDestroy;e.lottieRef,e.renderer,e.name,e.assetsPath,e.rendererSettings;var C=d(e,c),S=function(e){if(Array.isArray(e))return e}(t=i.useState(!1))||function(e,n){var i=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=i){var t,s,a,l,r=[],o=!0,d=!1;try{for(a=(i=i.call(e)).next;!(o=(t=a.call(i)).done)&&(r.push(t.value),2!==r.length);o=!0);}catch(e){d=!0,s=e}finally{try{if(!o&&null!=i.return&&(l=i.return(),Object(l)!==l))return}finally{if(d)throw s}}return r}}(t,2)||function(e,n){if(e){if("string"==typeof e)return l(e,2);var i=({}).toString.call(e).slice(8,-1);return"Object"===i&&e.constructor&&(i=e.constructor.name),"Map"===i||"Set"===i?Array.from(e):"Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i)?l(e,2):void 0}}(t,2)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),A=S[0],k=S[1],D=i.useRef(),z=i.useRef(null),Z=function(){var n,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(z.current){null===(n=D.current)||void 0===n||n.destroy();var t=o(o(o({},e),i),{},{container:z.current});return D.current=s.default.loadAnimation(t),k(!!D.current),function(){var e;null===(e=D.current)||void 0===e||e.destroy(),D.current=void 0}}};return i.useEffect(function(){var e=Z();return function(){return null==e?void 0:e()}},[r,u]),i.useEffect(function(){D.current&&(D.current.autoplay=!!m)},[m]),i.useEffect(function(){if(D.current){if(!h){D.current.resetSegments(!0);return}Array.isArray(h)&&h.length&&((D.current.currentRawFrame<h[0]||D.current.currentRawFrame>h[1])&&(D.current.currentRawFrame=h[0]),D.current.setSegment(h[0],h[1]))}},[h]),i.useEffect(function(){var e=[{name:"complete",handler:x},{name:"loopComplete",handler:v},{name:"enterFrame",handler:f},{name:"segmentStart",handler:p},{name:"config_ready",handler:g},{name:"data_ready",handler:j},{name:"data_failed",handler:y},{name:"loaded_images",handler:b},{name:"DOMLoaded",handler:N},{name:"destroy",handler:w}].filter(function(e){return null!=e.handler});if(e.length){var n=e.map(function(e){var n;return null===(n=D.current)||void 0===n||n.addEventListener(e.name,e.handler),function(){var n;null===(n=D.current)||void 0===n||n.removeEventListener(e.name,e.handler)}});return function(){n.forEach(function(e){return e()})}}},[x,v,f,p,g,j,y,b,N,w]),{View:a.default.createElement("div",o({style:n,ref:z},C)),play:function(){var e;null===(e=D.current)||void 0===e||e.play()},stop:function(){var e;null===(e=D.current)||void 0===e||e.stop()},pause:function(){var e;null===(e=D.current)||void 0===e||e.pause()},setSpeed:function(e){var n;null===(n=D.current)||void 0===n||n.setSpeed(e)},goToAndStop:function(e,n){var i;null===(i=D.current)||void 0===i||i.goToAndStop(e,n)},goToAndPlay:function(e,n){var i;null===(i=D.current)||void 0===i||i.goToAndPlay(e,n)},setDirection:function(e){var n;null===(n=D.current)||void 0===n||n.setDirection(e)},playSegments:function(e,n){var i;null===(i=D.current)||void 0===i||i.playSegments(e,n)},setSubframe:function(e){var n;null===(n=D.current)||void 0===n||n.setSubframe(e)},getDuration:function(e){var n;return null===(n=D.current)||void 0===n?void 0:n.getDuration(e)},destroy:function(){var e;null===(e=D.current)||void 0===e||e.destroy(),D.current=void 0},animationContainerRef:z,animationLoaded:A,animationItem:D.current}},m=function(e){var n=e.wrapperRef,t=e.animationItem,s=e.mode,a=e.actions;i.useEffect(function(){var e,i,l,r,o,d=n.current;if(d&&t&&a.length)switch(t.stop(),s){case"scroll":return e=null,i=function(){var n,i,s,l=(i=(n=d.getBoundingClientRect()).top,s=n.height,(window.innerHeight-i)/(window.innerHeight+s)),r=a.find(function(e){var n=e.visibility;return n&&l>=n[0]&&l<=n[1]});if(r){if("seek"===r.type&&r.visibility&&2===r.frames.length){var o=r.frames[0]+Math.ceil((l-r.visibility[0])/(r.visibility[1]-r.visibility[0])*r.frames[1]);t.goToAndStop(o-t.firstFrame-1,!0)}"loop"===r.type&&(null===e?(t.playSegments(r.frames,!0),e=r.frames):e!==r.frames?(t.playSegments(r.frames,!0),e=r.frames):t.isPaused&&(t.playSegments(r.frames,!0),e=r.frames)),"play"===r.type&&t.isPaused&&(t.resetSegments(!0),t.play()),"stop"===r.type&&t.goToAndStop(r.frames[0]-t.firstFrame-1,!0)}},document.addEventListener("scroll",i),function(){document.removeEventListener("scroll",i)};case"cursor":return l=function(e,n){var i=e,s=n;if(-1!==i&&-1!==s){var l,r,o,c,u=(l=i,r=s,c=(o=d.getBoundingClientRect()).top,{x:(l-o.left)/o.width,y:(r-c)/o.height});i=u.x,s=u.y}var m=a.find(function(e){var n=e.position;return n&&Array.isArray(n.x)&&Array.isArray(n.y)?i>=n.x[0]&&i<=n.x[1]&&s>=n.y[0]&&s<=n.y[1]:!(!n||Number.isNaN(n.x)||Number.isNaN(n.y))&&i===n.x&&s===n.y});if(m){if("seek"===m.type&&m.position&&Array.isArray(m.position.x)&&Array.isArray(m.position.y)&&2===m.frames.length){var h=(i-m.position.x[0])/(m.position.x[1]-m.position.x[0]),x=(s-m.position.y[0])/(m.position.y[1]-m.position.y[0]);t.playSegments(m.frames,!0),t.goToAndStop(Math.ceil((h+x)/2*(m.frames[1]-m.frames[0])),!0)}"loop"===m.type&&t.playSegments(m.frames,!0),"play"===m.type&&(t.isPaused&&t.resetSegments(!1),t.playSegments(m.frames)),"stop"===m.type&&t.goToAndStop(m.frames[0],!0)}},r=function(e){l(e.clientX,e.clientY)},o=function(){l(-1,-1)},d.addEventListener("mousemove",r),d.addEventListener("mouseout",o),function(){d.removeEventListener("mousemove",r),d.removeEventListener("mouseout",o)}}},[s,t])},h=function(e){var n=e.actions,i=e.mode,t=e.lottieObj,s=t.animationItem,a=t.View;return m({actions:n,animationItem:s,mode:i,wrapperRef:t.animationContainerRef}),a},x=["style","interactivity"];Object.defineProperty(e,"LottiePlayer",{enumerable:!0,get:function(){return s.default}}),e.default=function(e){var n,t,s,a=e.style,l=e.interactivity,r=u(d(e,x),a),o=r.View,c=r.play,m=r.stop,v=r.pause,f=r.setSpeed,p=r.goToAndStop,g=r.goToAndPlay,j=r.setDirection,y=r.playSegments,b=r.setSubframe,N=r.getDuration,w=r.destroy,C=r.animationContainerRef,S=r.animationLoaded,A=r.animationItem;return i.useEffect(function(){e.lottieRef&&(e.lottieRef.current={play:c,stop:m,pause:v,setSpeed:f,goToAndPlay:g,goToAndStop:p,setDirection:j,playSegments:y,setSubframe:b,getDuration:N,destroy:w,animationContainerRef:C,animationLoaded:S,animationItem:A})},[null===(n=e.lottieRef)||void 0===n?void 0:n.current]),h({lottieObj:{View:o,play:c,stop:m,pause:v,setSpeed:f,goToAndStop:p,goToAndPlay:g,setDirection:j,playSegments:y,setSubframe:b,getDuration:N,destroy:w,animationContainerRef:C,animationLoaded:S,animationItem:A},actions:null!==(t=null==l?void 0:l.actions)&&void 0!==t?t:[],mode:null!==(s=null==l?void 0:l.mode)&&void 0!==s?s:"scroll"})},e.useLottie=u,e.useLottieInteractivity=h,Object.defineProperty(e,"__esModule",{value:!0})}(n,i(52584),i(2265))},22252:function(e,n,i){"use strict";i.d(n,{Z:function(){return t}});let t=(0,i(39763).Z)("AlertCircle",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]])},33245:function(e,n,i){"use strict";i.d(n,{Z:function(){return t}});let t=(0,i(39763).Z)("Info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]])},15863:function(e,n,i){"use strict";i.d(n,{Z:function(){return t}});let t=(0,i(39763).Z)("Loader2",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]])},49137:function(e,n,i){"use strict";i.d(n,{Z:function(){return t}});let t=(0,i(39763).Z)("Text",[["path",{d:"M17 6.1H3",key:"wptmhv"}],["path",{d:"M21 12.1H3",key:"1j38uz"}],["path",{d:"M15.1 18H3",key:"1nb16a"}]])},29374:function(e,n,i){"use strict";i.d(n,{Z:function(){return t}});let t=(0,i(39763).Z)("Video",[["path",{d:"m22 8-6 4 6 4V8Z",key:"50v9me"}],["rect",{width:"14",height:"12",x:"2",y:"6",rx:"2",ry:"2",key:"1rqjg6"}]])},81706:function(e,n,i){"use strict";i.d(n,{Z:function(){return t}});let t=(0,i(39763).Z)("Volume2",[["polygon",{points:"11 5 6 9 2 9 2 15 6 15 11 19 11 5",key:"16drj5"}],["path",{d:"M15.54 8.46a5 5 0 0 1 0 7.07",key:"ltjumu"}],["path",{d:"M19.07 4.93a10 10 0 0 1 0 14.14",key:"1kegas"}]])},6394:function(e,n,i){"use strict";i.d(n,{f:function(){return r}});var t=i(2265),s=i(66840),a=i(57437),l=t.forwardRef((e,n)=>(0,a.jsx)(s.WV.label,{...e,ref:n,onMouseDown:n=>{var i;n.target.closest("button, input, select, textarea")||(null===(i=e.onMouseDown)||void 0===i||i.call(e,n),!n.defaultPrevented&&n.detail>1&&n.preventDefault())}}));l.displayName="Label";var r=l},20271:function(e,n,i){"use strict";i.d(n,{VY:function(){return O},aV:function(){return z},fC:function(){return D},xz:function(){return Z}});var t=i(2265),s=i(6741),a=i(73966),l=i(1353),r=i(71599),o=i(66840),d=i(29114),c=i(80886),u=i(99255),m=i(57437),h="Tabs",[x,v]=(0,a.b)(h,[l.Pc]),f=(0,l.Pc)(),[p,g]=x(h),j=t.forwardRef((e,n)=>{let{__scopeTabs:i,value:t,onValueChange:s,defaultValue:a,orientation:l="horizontal",dir:r,activationMode:x="automatic",...v}=e,f=(0,d.gm)(r),[g,j]=(0,c.T)({prop:t,onChange:s,defaultProp:null!=a?a:"",caller:h});return(0,m.jsx)(p,{scope:i,baseId:(0,u.M)(),value:g,onValueChange:j,orientation:l,dir:f,activationMode:x,children:(0,m.jsx)(o.WV.div,{dir:f,"data-orientation":l,...v,ref:n})})});j.displayName=h;var y="TabsList",b=t.forwardRef((e,n)=>{let{__scopeTabs:i,loop:t=!0,...s}=e,a=g(y,i),r=f(i);return(0,m.jsx)(l.fC,{asChild:!0,...r,orientation:a.orientation,dir:a.dir,loop:t,children:(0,m.jsx)(o.WV.div,{role:"tablist","aria-orientation":a.orientation,...s,ref:n})})});b.displayName=y;var N="TabsTrigger",w=t.forwardRef((e,n)=>{let{__scopeTabs:i,value:t,disabled:a=!1,...r}=e,d=g(N,i),c=f(i),u=A(d.baseId,t),h=k(d.baseId,t),x=t===d.value;return(0,m.jsx)(l.ck,{asChild:!0,...c,focusable:!a,active:x,children:(0,m.jsx)(o.WV.button,{type:"button",role:"tab","aria-selected":x,"aria-controls":h,"data-state":x?"active":"inactive","data-disabled":a?"":void 0,disabled:a,id:u,...r,ref:n,onMouseDown:(0,s.M)(e.onMouseDown,e=>{a||0!==e.button||!1!==e.ctrlKey?e.preventDefault():d.onValueChange(t)}),onKeyDown:(0,s.M)(e.onKeyDown,e=>{[" ","Enter"].includes(e.key)&&d.onValueChange(t)}),onFocus:(0,s.M)(e.onFocus,()=>{let e="manual"!==d.activationMode;x||a||!e||d.onValueChange(t)})})})});w.displayName=N;var C="TabsContent",S=t.forwardRef((e,n)=>{let{__scopeTabs:i,value:s,forceMount:a,children:l,...d}=e,c=g(C,i),u=A(c.baseId,s),h=k(c.baseId,s),x=s===c.value,v=t.useRef(x);return t.useEffect(()=>{let e=requestAnimationFrame(()=>v.current=!1);return()=>cancelAnimationFrame(e)},[]),(0,m.jsx)(r.z,{present:a||x,children:i=>{let{present:t}=i;return(0,m.jsx)(o.WV.div,{"data-state":x?"active":"inactive","data-orientation":c.orientation,role:"tabpanel","aria-labelledby":u,hidden:!t,id:h,tabIndex:0,...d,ref:n,style:{...e.style,animationDuration:v.current?"0s":void 0},children:t&&l})}})});function A(e,n){return"".concat(e,"-trigger-").concat(n)}function k(e,n){return"".concat(e,"-content-").concat(n)}S.displayName=C;var D=j,z=b,Z=w,O=S}},function(e){e.O(0,[6840,8310,4705,9851,7629,7093,6148,847,1942,7648,7823,8068,5799,4567,605,85,4957,7398,1785,3702,3397,1713,6152,7119,7963,6373,3832,4205,1645,2971,2117,1744],function(){return e(e.s=64042)}),_N_E=e.O()}]);
2
- //# sourceMappingURL=page-b66390eb4a95ac1a.js.map