@exulu/frontend 1.8.0 → 1.10.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 (173) hide show
  1. package/dist/.next/BUILD_ID +1 -1
  2. package/dist/.next/app-build-manifest.json +153 -155
  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_client-reference-manifest.js +1 -1
  10. package/dist/.next/server/app/(application)/chat/[agent]/[session]/page.js +8 -8
  11. package/dist/.next/server/app/(application)/chat/[agent]/[session]/page.js.nft.json +1 -1
  12. package/dist/.next/server/app/(application)/chat/[agent]/[session]/page_client-reference-manifest.js +1 -1
  13. package/dist/.next/server/app/(application)/chat/[agent]/page_client-reference-manifest.js +1 -1
  14. package/dist/.next/server/app/(application)/chat/page_client-reference-manifest.js +1 -1
  15. package/dist/.next/server/app/(application)/configuration/page_client-reference-manifest.js +1 -1
  16. package/dist/.next/server/app/(application)/dashboard/page_client-reference-manifest.js +1 -1
  17. package/dist/.next/server/app/(application)/data/[[...query]]/page.js +4 -4
  18. package/dist/.next/server/app/(application)/data/[[...query]]/page.js.nft.json +1 -1
  19. package/dist/.next/server/app/(application)/data/[[...query]]/page_client-reference-manifest.js +1 -1
  20. package/dist/.next/server/app/(application)/evals/[id]/page.js +1 -1
  21. package/dist/.next/server/app/(application)/evals/[id]/page.js.nft.json +1 -1
  22. package/dist/.next/server/app/(application)/evals/[id]/page_client-reference-manifest.js +1 -1
  23. package/dist/.next/server/app/(application)/evals/cases/page.js +1 -1
  24. package/dist/.next/server/app/(application)/evals/cases/page.js.nft.json +1 -1
  25. package/dist/.next/server/app/(application)/evals/cases/page_client-reference-manifest.js +1 -1
  26. package/dist/.next/server/app/(application)/evals/page_client-reference-manifest.js +1 -1
  27. package/dist/.next/server/app/(application)/explorer/page_client-reference-manifest.js +1 -1
  28. package/dist/.next/server/app/(application)/keys/page_client-reference-manifest.js +1 -1
  29. package/dist/.next/server/app/(application)/page_client-reference-manifest.js +1 -1
  30. package/dist/.next/server/app/(application)/projects/[project]/page.js +1 -1
  31. package/dist/.next/server/app/(application)/projects/[project]/page.js.nft.json +1 -1
  32. package/dist/.next/server/app/(application)/projects/[project]/page_client-reference-manifest.js +1 -1
  33. package/dist/.next/server/app/(application)/projects/page.js +1 -1
  34. package/dist/.next/server/app/(application)/projects/page_client-reference-manifest.js +1 -1
  35. package/dist/.next/server/app/(application)/prompts/page.js +1 -1
  36. package/dist/.next/server/app/(application)/prompts/page_client-reference-manifest.js +1 -1
  37. package/dist/.next/server/app/(application)/roles/page_client-reference-manifest.js +1 -1
  38. package/dist/.next/server/app/(application)/token/page_client-reference-manifest.js +1 -1
  39. package/dist/.next/server/app/(application)/users/page_client-reference-manifest.js +1 -1
  40. package/dist/.next/server/app/(application)/variables/create/page_client-reference-manifest.js +1 -1
  41. package/dist/.next/server/app/(application)/variables/edit/[variable_id]/page_client-reference-manifest.js +1 -1
  42. package/dist/.next/server/app/(application)/variables/page_client-reference-manifest.js +1 -1
  43. package/dist/.next/server/app/(application)/variables/usage/[variable_id]/page_client-reference-manifest.js +1 -1
  44. package/dist/.next/server/app/(application)/workflows/page.js +1 -1
  45. package/dist/.next/server/app/(application)/workflows/page_client-reference-manifest.js +1 -1
  46. package/dist/.next/server/app/(authentication)/login/page_client-reference-manifest.js +1 -1
  47. package/dist/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  48. package/dist/.next/server/app/_not-found.html +1 -1
  49. package/dist/.next/server/app/_not-found.rsc +1 -1
  50. package/dist/.next/server/app-paths-manifest.json +5 -5
  51. package/dist/.next/server/chunks/1025.js +1 -0
  52. package/dist/.next/server/chunks/2270.js +18 -44
  53. package/dist/.next/server/chunks/3434.js +1 -1
  54. package/dist/.next/server/chunks/3503.js +1 -0
  55. package/dist/.next/server/chunks/5084.js +1 -0
  56. package/dist/.next/server/chunks/5192.js +1 -1
  57. package/dist/.next/server/chunks/5485.js +1 -1
  58. package/dist/.next/server/chunks/5600.js +1 -1
  59. package/dist/.next/server/chunks/5974.js +1 -0
  60. package/dist/.next/server/chunks/6590.js +1 -1
  61. package/dist/.next/server/chunks/7471.js +1 -1
  62. package/dist/.next/server/chunks/8286.js +1 -1
  63. package/dist/.next/server/chunks/{3679.js → 9874.js} +5 -5
  64. package/dist/.next/server/middleware-manifest.json +5 -5
  65. package/dist/.next/server/pages/404.html +1 -1
  66. package/dist/.next/server/pages/500.html +1 -1
  67. package/dist/.next/server/server-reference-manifest.json +1 -1
  68. package/dist/.next/static/chunks/1685-939396dad2f8f1e0.js +2 -0
  69. package/dist/.next/static/chunks/1685-939396dad2f8f1e0.js.map +1 -0
  70. package/dist/.next/static/chunks/{4811-316807e25b634f9f.js → 192-72d6868cd891ccc6.js} +8 -8
  71. package/dist/.next/static/chunks/192-72d6868cd891ccc6.js.map +1 -0
  72. package/dist/.next/static/chunks/1957-cf44b1d31a9c7d5c.js +2 -0
  73. package/dist/.next/static/chunks/1957-cf44b1d31a9c7d5c.js.map +1 -0
  74. package/dist/.next/static/chunks/342-d9c2d6ae9f9435cb.js +2 -0
  75. package/dist/.next/static/chunks/342-d9c2d6ae9f9435cb.js.map +1 -0
  76. package/dist/.next/static/chunks/3750-e3d1b2cccd265190.js +2 -0
  77. package/dist/.next/static/chunks/3750-e3d1b2cccd265190.js.map +1 -0
  78. package/dist/.next/static/chunks/{3832-417a5eeee712a793.js → 3832-d7782d6a2771ae6c.js} +1 -1
  79. package/dist/.next/static/chunks/{3832-417a5eeee712a793.js.map → 3832-d7782d6a2771ae6c.js.map} +1 -1
  80. package/dist/.next/static/chunks/552-39155a93c527ec6d.js +2 -0
  81. package/dist/.next/static/chunks/552-39155a93c527ec6d.js.map +1 -0
  82. package/dist/.next/static/chunks/6280-50b751f993f2fe4f.js +2 -0
  83. package/dist/.next/static/chunks/6280-50b751f993f2fe4f.js.map +1 -0
  84. package/dist/.next/static/chunks/6367-59655a85d75e19be.js +2 -0
  85. package/dist/.next/static/chunks/6367-59655a85d75e19be.js.map +1 -0
  86. package/dist/.next/static/chunks/6373-aef582adc575d3ca.js +2 -0
  87. package/dist/.next/static/chunks/6373-aef582adc575d3ca.js.map +1 -0
  88. package/dist/.next/static/chunks/8030-9c926ea4dfd3a54e.js +2 -0
  89. package/dist/.next/static/chunks/8030-9c926ea4dfd3a54e.js.map +1 -0
  90. package/dist/.next/static/chunks/{6805-792cc8008b165c07.js → 8293-ba5cd36594e6fde1.js} +10 -10
  91. package/dist/.next/static/chunks/8293-ba5cd36594e6fde1.js.map +1 -0
  92. package/dist/.next/static/chunks/9105-d8ff41060f7ffc85.js +2 -0
  93. package/dist/.next/static/chunks/9105-d8ff41060f7ffc85.js.map +1 -0
  94. package/dist/.next/static/chunks/9953-95900a236271a222.js +2 -0
  95. package/dist/.next/static/chunks/9953-95900a236271a222.js.map +1 -0
  96. package/dist/.next/static/chunks/app/(application)/agents/edit/[id]/page-e4a4693953329671.js +2 -0
  97. package/dist/.next/static/chunks/app/(application)/agents/edit/[id]/page-e4a4693953329671.js.map +1 -0
  98. package/dist/.next/static/chunks/app/(application)/chat/[agent]/[session]/page-d59534ca19eee51f.js +2 -0
  99. package/dist/.next/static/chunks/app/(application)/chat/[agent]/[session]/page-d59534ca19eee51f.js.map +1 -0
  100. package/dist/.next/static/chunks/app/(application)/data/[[...query]]/layout-0c7c1b0e1713bf60.js +2 -0
  101. package/dist/.next/static/chunks/app/(application)/data/[[...query]]/layout-0c7c1b0e1713bf60.js.map +1 -0
  102. package/dist/.next/static/chunks/app/(application)/data/[[...query]]/page-7db6bfbf02606136.js +2 -0
  103. package/dist/.next/static/chunks/app/(application)/data/[[...query]]/page-7db6bfbf02606136.js.map +1 -0
  104. package/dist/.next/static/chunks/app/(application)/evals/[id]/page-a7728cf9b0524489.js +2 -0
  105. package/dist/.next/static/chunks/app/(application)/evals/[id]/page-a7728cf9b0524489.js.map +1 -0
  106. package/dist/.next/static/chunks/app/(application)/evals/cases/{page-a39fef7444581565.js → page-827f50c6d1f150d0.js} +2 -2
  107. package/dist/.next/static/chunks/app/(application)/evals/cases/{page-a39fef7444581565.js.map → page-827f50c6d1f150d0.js.map} +1 -1
  108. package/dist/.next/static/chunks/app/(application)/explorer/{page-1d676c9dfe3ed58b.js → page-e6b1c034c07776e2.js} +1 -1
  109. package/dist/.next/static/chunks/app/(application)/explorer/{page-1d676c9dfe3ed58b.js.map → page-e6b1c034c07776e2.js.map} +1 -1
  110. package/dist/.next/static/chunks/app/(application)/projects/[project]/page-f04fd5291a1ef7b1.js +2 -0
  111. package/dist/.next/static/chunks/app/(application)/projects/[project]/page-f04fd5291a1ef7b1.js.map +1 -0
  112. package/dist/.next/static/chunks/app/(application)/prompts/page-2c500e9898447506.js +2 -0
  113. package/dist/.next/static/chunks/app/(application)/prompts/page-2c500e9898447506.js.map +1 -0
  114. package/dist/.next/static/chunks/app/(application)/token/{page-3f74f711f3d04fce.js → page-3acc39cb8a718331.js} +1 -1
  115. package/dist/.next/static/chunks/app/(application)/token/{page-3f74f711f3d04fce.js.map → page-3acc39cb8a718331.js.map} +1 -1
  116. package/dist/.next/static/chunks/app/(application)/workflows/{page-47dedb88cec600d5.js → page-e38f9456120dab69.js} +2 -2
  117. package/dist/.next/static/chunks/app/(application)/workflows/page-e38f9456120dab69.js.map +1 -0
  118. package/dist/.next/static/chunks/ba12c10f-85ed008ce7746dbe.js +2 -0
  119. package/dist/.next/static/chunks/ba12c10f-85ed008ce7746dbe.js.map +1 -0
  120. package/dist/.next/static/css/9c08ae5d990a6b14.css +4 -0
  121. package/dist/.next/static/css/9c08ae5d990a6b14.css.map +1 -0
  122. package/dist/.next/static/css/e3f2a16ab7676b05.css.map +1 -1
  123. package/dist/package.json +1 -1
  124. package/package.json +1 -1
  125. package/dist/.next/server/chunks/2948.js +0 -1
  126. package/dist/.next/server/chunks/38.js +0 -1
  127. package/dist/.next/server/chunks/7958.js +0 -1
  128. package/dist/.next/server/chunks/8050.js +0 -1
  129. package/dist/.next/static/chunks/1685-9cacdee7e3f0942f.js +0 -2
  130. package/dist/.next/static/chunks/1685-9cacdee7e3f0942f.js.map +0 -1
  131. package/dist/.next/static/chunks/1957-39a01a3915f246ab.js +0 -2
  132. package/dist/.next/static/chunks/1957-39a01a3915f246ab.js.map +0 -1
  133. package/dist/.next/static/chunks/3750-f45c59ef1cc79417.js +0 -2
  134. package/dist/.next/static/chunks/3750-f45c59ef1cc79417.js.map +0 -1
  135. package/dist/.next/static/chunks/4811-316807e25b634f9f.js.map +0 -1
  136. package/dist/.next/static/chunks/5282-68f9880f1f951f44.js +0 -2
  137. package/dist/.next/static/chunks/5282-68f9880f1f951f44.js.map +0 -1
  138. package/dist/.next/static/chunks/572-2940a399da1e3a3b.js +0 -2
  139. package/dist/.next/static/chunks/572-2940a399da1e3a3b.js.map +0 -1
  140. package/dist/.next/static/chunks/6367-59cef3c74213925b.js +0 -2
  141. package/dist/.next/static/chunks/6367-59cef3c74213925b.js.map +0 -1
  142. package/dist/.next/static/chunks/6373-4c5dffaf4193621c.js +0 -2
  143. package/dist/.next/static/chunks/6373-4c5dffaf4193621c.js.map +0 -1
  144. package/dist/.next/static/chunks/6805-792cc8008b165c07.js.map +0 -1
  145. package/dist/.next/static/chunks/8030-c1b6be46253076cb.js +0 -2
  146. package/dist/.next/static/chunks/8030-c1b6be46253076cb.js.map +0 -1
  147. package/dist/.next/static/chunks/9105-dfbce1bad8e3e8dd.js +0 -2
  148. package/dist/.next/static/chunks/9105-dfbce1bad8e3e8dd.js.map +0 -1
  149. package/dist/.next/static/chunks/9621-f81c4d7c0ecf5a67.js +0 -2
  150. package/dist/.next/static/chunks/9621-f81c4d7c0ecf5a67.js.map +0 -1
  151. package/dist/.next/static/chunks/9953-dfb5fc0e5b74ec09.js +0 -2
  152. package/dist/.next/static/chunks/9953-dfb5fc0e5b74ec09.js.map +0 -1
  153. package/dist/.next/static/chunks/app/(application)/agents/edit/[id]/page-4e7e02768ed1a72a.js +0 -2
  154. package/dist/.next/static/chunks/app/(application)/agents/edit/[id]/page-4e7e02768ed1a72a.js.map +0 -1
  155. package/dist/.next/static/chunks/app/(application)/chat/[agent]/[session]/page-38f845d5ccdad76b.js +0 -2
  156. package/dist/.next/static/chunks/app/(application)/chat/[agent]/[session]/page-38f845d5ccdad76b.js.map +0 -1
  157. package/dist/.next/static/chunks/app/(application)/data/[[...query]]/layout-2d47be0ee80dd89d.js +0 -2
  158. package/dist/.next/static/chunks/app/(application)/data/[[...query]]/layout-2d47be0ee80dd89d.js.map +0 -1
  159. package/dist/.next/static/chunks/app/(application)/data/[[...query]]/page-a391b8407f74e9b4.js +0 -2
  160. package/dist/.next/static/chunks/app/(application)/data/[[...query]]/page-a391b8407f74e9b4.js.map +0 -1
  161. package/dist/.next/static/chunks/app/(application)/evals/[id]/page-cf6f8d2bd4e9c819.js +0 -2
  162. package/dist/.next/static/chunks/app/(application)/evals/[id]/page-cf6f8d2bd4e9c819.js.map +0 -1
  163. package/dist/.next/static/chunks/app/(application)/projects/[project]/page-bc859da58d8505f7.js +0 -2
  164. package/dist/.next/static/chunks/app/(application)/projects/[project]/page-bc859da58d8505f7.js.map +0 -1
  165. package/dist/.next/static/chunks/app/(application)/prompts/page-d2f36ff149385efd.js +0 -2
  166. package/dist/.next/static/chunks/app/(application)/prompts/page-d2f36ff149385efd.js.map +0 -1
  167. package/dist/.next/static/chunks/app/(application)/workflows/page-47dedb88cec600d5.js.map +0 -1
  168. package/dist/.next/static/chunks/ba12c10f-aaafcb074f608624.js +0 -2
  169. package/dist/.next/static/chunks/ba12c10f-aaafcb074f608624.js.map +0 -1
  170. package/dist/.next/static/css/c8c015815c72d053.css +0 -4
  171. package/dist/.next/static/css/c8c015815c72d053.css.map +0 -1
  172. /package/dist/.next/static/{GOwerAkBncYx0J8q1TqQb → 3j63p6b3zZZB_v1Hn8Mxp}/_buildManifest.js +0 -0
  173. /package/dist/.next/static/{GOwerAkBncYx0J8q1TqQb → 3j63p6b3zZZB_v1Hn8Mxp}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"static/chunks/app/(application)/token/page-3f74f711f3d04fce.js","mappings":"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","sources":["webpack://_N_E/?06da","webpack://_N_E/./app/(application)/token/page.tsx","webpack://_N_E/./components/ui/badge.tsx","webpack://_N_E/./components/ui/button.tsx","webpack://_N_E/./components/ui/card.tsx","webpack://_N_E/./components/ui/input.tsx","webpack://_N_E/./components/ui/use-toast.ts","webpack://_N_E/./lib/utils.ts","webpack://_N_E/../../src/defaultAttributes.ts","webpack://_N_E/../../src/createLucideIcon.ts","webpack://_N_E/../../../src/icons/alert-circle.ts","webpack://_N_E/../../../src/icons/check-circle.ts","webpack://_N_E/../../../src/icons/copy.ts","webpack://_N_E/./util/api.ts","webpack://_N_E/./node_modules/@radix-ui/react-compose-refs/dist/index.mjs","webpack://_N_E/./node_modules/@radix-ui/react-slot/dist/index.mjs"],"sourcesContent":["import(/* webpackMode: \"eager\" */ \"/home/runner/work/exulu-frontend/exulu-frontend/app/(application)/token/page.tsx\");\n","'use client'\n\nimport { useSession } from \"next-auth/react\"\nimport { useEffect, useState } from \"react\"\nimport { getToken } from \"@/util/api\"\nimport { Button } from \"@/components/ui/button\"\nimport { Card, CardContent, CardDescription, CardHeader, CardTitle } from \"@/components/ui/card\"\nimport { Input } from \"@/components/ui/input\"\nimport { Badge } from \"@/components/ui/badge\"\nimport { Copy, CheckCircle, AlertCircle } from \"lucide-react\"\nimport { useToast } from \"@/components/ui/use-toast\"\n\nexport default function TokenPage() {\n const { data: session, status } = useSession()\n const [token, setToken] = useState<string | null>(null)\n const [loading, setLoading] = useState(true)\n const [copied, setCopied] = useState(false)\n const { toast } = useToast()\n\n useEffect(() => {\n const fetchToken = async () => {\n if (status === \"authenticated\") {\n try {\n const currentToken = await getToken()\n setToken(currentToken)\n } catch (error) {\n console.error(\"Failed to get token:\", error)\n setToken(null)\n }\n }\n setLoading(false)\n }\n\n fetchToken()\n }, [status])\n\n const copyToClipboard = async () => {\n if (!token) return\n\n try {\n await navigator.clipboard.writeText(token)\n setCopied(true)\n toast({\n title: \"Token copied!\",\n description: \"The token has been copied to your clipboard.\",\n })\n setTimeout(() => setCopied(false), 2000)\n } catch (error) {\n toast({\n title: \"Failed to copy\",\n description: \"Could not copy token to clipboard.\",\n variant: \"destructive\",\n })\n }\n }\n\n if (status === \"loading\" || loading) {\n return (\n <div className=\"container mx-auto p-6\">\n <div className=\"flex items-center justify-center min-h-[400px]\">\n <div className=\"animate-spin rounded-full h-32 w-32 border-b-2 border-gray-900\"></div>\n </div>\n </div>\n )\n }\n\n if (status === \"unauthenticated\") {\n return (\n <div className=\"container mx-auto my-auto p-6\">\n <Card className=\"max-w-md mx-auto\">\n <CardHeader>\n <CardTitle className=\"flex items-center gap-2\">\n <AlertCircle className=\"h-5 w-5 text-red-500\" />\n Authentication Required\n </CardTitle>\n <CardDescription>\n You must be logged in to access your token.\n </CardDescription>\n </CardHeader>\n <CardContent>\n <p className=\"text-sm text-muted-foreground\">\n Please log in to view and copy your authentication token.\n </p>\n </CardContent>\n </Card>\n </div>\n )\n }\n\n return (\n <div className=\"container mx-auto my-auto p-6\">\n <div className=\"max-w-2xl mx-auto\">\n <div className=\"mb-6\">\n <h1 className=\"text-3xl font-bold\">Authentication Token</h1>\n <p className=\"text-muted-foreground mt-2\">\n Your current authentication token for API access.\n </p>\n </div>\n\n <Card>\n <CardHeader>\n <CardTitle className=\"flex items-center justify-between\">\n <span>Current Token</span>\n <Badge variant={token ? \"default\" : \"destructive\"}>\n {token ? \"Active\" : \"Unavailable\"}\n </Badge>\n </CardTitle>\n <CardDescription>\n Use this token to authenticate API requests. Keep it secure and do not share it.\n </CardDescription>\n </CardHeader>\n <CardContent className=\"space-y-4\">\n {token ? (\n <>\n <div className=\"space-y-2\">\n <label htmlFor=\"token\" className=\"text-sm font-medium\">\n Token Value\n </label>\n <div className=\"flex gap-2\">\n <Input\n id=\"token\"\n type=\"text\"\n value={token}\n readOnly\n className=\"font-mono text-sm\"\n />\n <Button\n onClick={copyToClipboard}\n variant=\"outline\"\n size=\"sm\"\n className=\"shrink-0\"\n >\n {copied ? (\n <CheckCircle className=\"h-4 w-4\" />\n ) : (\n <Copy className=\"h-4 w-4\" />\n )}\n </Button>\n </div>\n </div>\n \n <div className=\"text-sm text-muted-foreground space-y-2\">\n <p>\n <strong>Security:</strong> This token provides access to your account. Keep it private and secure.\n </p>\n </div>\n </>\n ) : (\n <div className=\"text-center py-8\">\n <AlertCircle className=\"h-12 w-12 text-muted-foreground mx-auto mb-4\" />\n <p className=\"text-muted-foreground\">\n No token available. Please try refreshing the page or logging in again.\n </p>\n </div>\n )}\n </CardContent>\n </Card>\n </div>\n </div>\n )\n}","import { cva, type VariantProps } from \"class-variance-authority\";\nimport * as React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nconst badgeVariants = cva(\n \"inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2\",\n {\n variants: {\n variant: {\n default:\n \"border-transparent bg-primary text-primary-foreground hover:bg-primary/80\",\n secondary:\n \"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80\",\n destructive:\n \"border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80\",\n outline: \"text-foreground\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n },\n);\n\nexport interface BadgeProps\n extends React.HTMLAttributes<HTMLDivElement>,\n VariantProps<typeof badgeVariants> {}\n\nfunction Badge({ className, variant, ...props }: BadgeProps) {\n return (\n <div className={cn(badgeVariants({ variant }), className)} {...props} />\n );\n}\n\nexport { Badge, badgeVariants };\n","import { Slot } from \"@radix-ui/react-slot\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport * as React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nconst buttonVariants = cva(\n \"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50\",\n {\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground hover:bg-primary/90\",\n destructive:\n \"bg-destructive text-destructive-foreground hover:bg-destructive/90\",\n outline:\n \"border border-input bg-background hover:bg-accent hover:text-accent-foreground\",\n secondary:\n \"bg-secondary text-secondary-foreground hover:bg-secondary/80\",\n ghost: \"hover:bg-accent hover:text-accent-foreground\",\n link: \"text-primary underline-offset-4 hover:underline\",\n },\n size: {\n default: \"h-10 px-4 py-2\",\n sm: \"h-9 rounded-md px-3\",\n lg: \"h-11 rounded-md px-8\",\n icon: \"size-10\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n },\n);\n\nexport interface ButtonProps\n extends React.ButtonHTMLAttributes<HTMLButtonElement>,\n VariantProps<typeof buttonVariants> {\n asChild?: boolean;\n}\n\nconst Button = React.forwardRef<HTMLButtonElement, ButtonProps>(\n ({ className, variant, size, asChild = false, ...props }, ref) => {\n const Comp = asChild ? Slot : \"button\";\n return (\n <Comp\n className={cn(buttonVariants({ variant, size, className }))}\n ref={ref}\n {...props}\n />\n );\n },\n);\nButton.displayName = \"Button\";\n\nexport { Button, buttonVariants };\n","import * as React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nconst Card = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\n \"rounded-lg border bg-card text-card-foreground shadow-sm\",\n className,\n )}\n {...props}\n />\n));\nCard.displayName = \"Card\";\n\nconst CardHeader = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\"flex flex-col space-y-1.5 p-6\", className)}\n {...props}\n />\n));\nCardHeader.displayName = \"CardHeader\";\n\nconst CardTitle = React.forwardRef<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLHeadingElement>\n>(({ className, ...props }, ref) => (\n <h3\n ref={ref}\n className={cn(\n \"text-2xl font-semibold leading-none tracking-tight\",\n className,\n )}\n {...props}\n />\n));\nCardTitle.displayName = \"CardTitle\";\n\nconst CardDescription = React.forwardRef<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLParagraphElement>\n>(({ className, ...props }, ref) => (\n <p\n ref={ref}\n className={cn(\"text-sm text-muted-foreground\", className)}\n {...props}\n />\n));\nCardDescription.displayName = \"CardDescription\";\n\nconst CardContent = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div ref={ref} className={cn(\"p-6 pt-0\", className)} {...props} />\n));\nCardContent.displayName = \"CardContent\";\n\nconst CardFooter = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\"flex items-center p-6 pt-0\", className)}\n {...props}\n />\n));\nCardFooter.displayName = \"CardFooter\";\n\nexport {\n Card,\n CardHeader,\n CardFooter,\n CardTitle,\n CardDescription,\n CardContent,\n};\n","import * as React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nexport interface InputProps\n extends React.InputHTMLAttributes<HTMLInputElement> {}\n\nconst Input = React.forwardRef<HTMLInputElement, InputProps>(\n ({ className, type, ...props }, ref) => {\n return (\n <input\n type={type}\n className={cn(\n \"flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50\",\n className,\n )}\n ref={ref}\n {...props}\n />\n );\n },\n);\nInput.displayName = \"Input\";\n\nexport { Input };\n","\"use client\";\n\n// Inspired by react-hot-toast library\nimport * as React from \"react\";\n\nimport type { ToastActionElement, ToastProps } from \"@/components/ui/toast\";\n\nconst TOAST_LIMIT = 1;\nconst TOAST_REMOVE_DELAY = 1000000;\n\ntype ToasterToast = ToastProps & {\n id: string;\n title?: React.ReactNode;\n description?: React.ReactNode;\n action?: ToastActionElement;\n};\n\nconst actionTypes = {\n ADD_TOAST: \"ADD_TOAST\",\n UPDATE_TOAST: \"UPDATE_TOAST\",\n DISMISS_TOAST: \"DISMISS_TOAST\",\n REMOVE_TOAST: \"REMOVE_TOAST\",\n} as const;\n\nlet count = 0;\n\nfunction genId() {\n count = (count + 1) % Number.MAX_SAFE_INTEGER;\n return count.toString();\n}\n\ntype ActionType = typeof actionTypes;\n\ntype Action =\n | {\n type: ActionType[\"ADD_TOAST\"];\n toast: ToasterToast;\n }\n | {\n type: ActionType[\"UPDATE_TOAST\"];\n toast: Partial<ToasterToast>;\n }\n | {\n type: ActionType[\"DISMISS_TOAST\"];\n toastId?: ToasterToast[\"id\"];\n }\n | {\n type: ActionType[\"REMOVE_TOAST\"];\n toastId?: ToasterToast[\"id\"];\n };\n\ninterface State {\n toasts: ToasterToast[];\n}\n\nconst toastTimeouts = new Map<string, ReturnType<typeof setTimeout>>();\n\nconst addToRemoveQueue = (toastId: string) => {\n if (toastTimeouts.has(toastId)) {\n return;\n }\n\n const timeout = setTimeout(() => {\n toastTimeouts.delete(toastId);\n dispatch({\n type: \"REMOVE_TOAST\",\n toastId: toastId,\n });\n }, TOAST_REMOVE_DELAY);\n\n toastTimeouts.set(toastId, timeout);\n};\n\nexport const reducer = (state: State, action: Action): State => {\n switch (action.type) {\n case \"ADD_TOAST\":\n return {\n ...state,\n toasts: [action.toast, ...state.toasts].slice(0, TOAST_LIMIT),\n };\n\n case \"UPDATE_TOAST\":\n return {\n ...state,\n toasts: state.toasts.map((t) =>\n t.id === action.toast.id ? { ...t, ...action.toast } : t,\n ),\n };\n\n case \"DISMISS_TOAST\": {\n const { toastId } = action;\n\n // ! Side effects ! - This could be extracted into a dismissToast() action,\n // but I'll keep it here for simplicity\n if (toastId) {\n addToRemoveQueue(toastId);\n } else {\n state.toasts.forEach((toast) => {\n addToRemoveQueue(toast.id);\n });\n }\n\n return {\n ...state,\n toasts: state.toasts.map((t) =>\n t.id === toastId || toastId === undefined\n ? {\n ...t,\n open: false,\n }\n : t,\n ),\n };\n }\n case \"REMOVE_TOAST\":\n if (action.toastId === undefined) {\n return {\n ...state,\n toasts: [],\n };\n }\n return {\n ...state,\n toasts: state.toasts.filter((t) => t.id !== action.toastId),\n };\n }\n};\n\nconst listeners: Array<(state: State) => void> = [];\n\nlet memoryState: State = { toasts: [] };\n\nfunction dispatch(action: Action) {\n memoryState = reducer(memoryState, action);\n listeners.forEach((listener) => {\n listener(memoryState);\n });\n}\n\ntype Toast = Omit<ToasterToast, \"id\">;\n\nfunction toast({ ...props }: Toast) {\n const id = genId();\n\n const update = (props: ToasterToast) =>\n dispatch({\n type: \"UPDATE_TOAST\",\n toast: { ...props, id },\n });\n const dismiss = () => dispatch({ type: \"DISMISS_TOAST\", toastId: id });\n\n dispatch({\n type: \"ADD_TOAST\",\n toast: {\n ...props,\n id,\n open: true,\n onOpenChange: (open) => {\n if (!open) dismiss();\n },\n },\n });\n\n return {\n id: id,\n dismiss,\n update,\n };\n}\n\nfunction useToast() {\n const [state, setState] = React.useState<State>(memoryState);\n\n React.useEffect(() => {\n listeners.push(setState);\n return () => {\n const index = listeners.indexOf(setState);\n if (index > -1) {\n listeners.splice(index, 1);\n }\n };\n }, [state]);\n\n return {\n ...state,\n toast,\n dismiss: (toastId?: string) => dispatch({ type: \"DISMISS_TOAST\", toastId }),\n };\n}\n\nexport { useToast, toast };\n","import { type ClassValue, clsx } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n\nexport function formatDuration(seconds: number): string {\n if (!seconds) return '0s';\n \n const hours = Math.floor(seconds / 3600);\n const minutes = Math.floor((seconds % 3600) / 60);\n const remainingSeconds = Math.round(seconds % 60);\n\n if (hours > 0) {\n return `${hours}h ${minutes}m`;\n } else if (minutes > 0) {\n return `${minutes}m ${remainingSeconds}s`;\n } else {\n return `${remainingSeconds}s`;\n }\n}","export default {\n xmlns: 'http://www.w3.org/2000/svg',\n width: 24,\n height: 24,\n viewBox: '0 0 24 24',\n fill: 'none',\n stroke: 'currentColor',\n strokeWidth: 2,\n strokeLinecap: 'round',\n strokeLinejoin: 'round',\n};\n","import {\n forwardRef,\n createElement,\n ReactSVG,\n SVGProps,\n ForwardRefExoticComponent,\n RefAttributes,\n} from 'react';\nimport defaultAttributes from './defaultAttributes';\n\nexport type IconNode = [elementName: keyof ReactSVG, attrs: Record<string, string>][];\n\nexport type SVGAttributes = Partial<SVGProps<SVGSVGElement>>;\ntype ComponentAttributes = RefAttributes<SVGSVGElement> & SVGAttributes;\n\nexport interface LucideProps extends ComponentAttributes {\n size?: string | number;\n absoluteStrokeWidth?: boolean;\n}\n\nexport type LucideIcon = ForwardRefExoticComponent<LucideProps>;\n/**\n * Converts string to KebabCase\n * Copied from scripts/helper. If anyone knows how to properly import it here\n * then please fix it.\n *\n * @param {string} string\n * @returns {string} A kebabized string\n */\nexport const toKebabCase = (string: string) =>\n string\n .replace(/([a-z0-9])([A-Z])/g, '$1-$2')\n .toLowerCase()\n .trim();\n\nconst createLucideIcon = (iconName: string, iconNode: IconNode): LucideIcon => {\n const Component = forwardRef<SVGSVGElement, LucideProps>(\n ({ color = 'currentColor', size = 24, strokeWidth = 2, absoluteStrokeWidth, className = '', children, ...rest }, ref) =>{\n\n return createElement(\n 'svg',\n {\n ref,\n ...defaultAttributes,\n width: size,\n height: size,\n stroke: color,\n strokeWidth: absoluteStrokeWidth ? Number(strokeWidth) * 24 / Number(size) : strokeWidth,\n className: ['lucide', `lucide-${toKebabCase(iconName)}`, className].join(' '),\n ...rest,\n },\n [\n ...iconNode.map(([tag, attrs]) => createElement(tag, attrs)),\n ...(Array.isArray(children) ? children : [children]),\n ]\n )\n }\n );\n\n Component.displayName = `${iconName}`;\n\n return Component;\n};\n\nexport default createLucideIcon;\n","import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name AlertCircle\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSIxMCIgLz4KICA8bGluZSB4MT0iMTIiIHgyPSIxMiIgeTE9IjgiIHkyPSIxMiIgLz4KICA8bGluZSB4MT0iMTIiIHgyPSIxMi4wMSIgeTE9IjE2IiB5Mj0iMTYiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/alert-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 AlertCircle = createLucideIcon('AlertCircle', [\n ['circle', { cx: '12', cy: '12', r: '10', key: '1mglay' }],\n ['line', { x1: '12', x2: '12', y1: '8', y2: '12', key: '1pkeuh' }],\n ['line', { x1: '12', x2: '12.01', y1: '16', y2: '16', key: '4dfq90' }],\n]);\n\nexport default AlertCircle;\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 Copy\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cmVjdCB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHg9IjgiIHk9IjgiIHJ4PSIyIiByeT0iMiIgLz4KICA8cGF0aCBkPSJNNCAxNmMtMS4xIDAtMi0uOS0yLTJWNGMwLTEuMS45LTIgMi0yaDEwYzEuMSAwIDIgLjkgMiAyIiAvPgo8L3N2Zz4K) - https://lucide.dev/icons/copy\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 Copy = createLucideIcon('Copy', [\n ['rect', { width: '14', height: '14', x: '8', y: '8', rx: '2', ry: '2', key: '17jyea' }],\n ['path', { d: 'M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2', key: 'zix9uf' }],\n]);\n\nexport default Copy;\n","import { getSession } from \"next-auth/react\";\n\nexport type ImageStyle = \"origami\" | \"anime\" | \"japanese_anime\" | \"vaporwave\" | \"lego\" | \"paper_cut\" | \"felt_puppet\" | \"3d\" | \"app_icon\" | \"pixel_art\" | \"isometric\";\n\nconst getUris = async () => {\n // Server-side: use environment variable directly\n if (typeof window === 'undefined') {\n const backend = process.env.BACKEND;\n if (!backend) {\n throw new Error(\"No backend set.\")\n }\n return {\n files: backend,\n base: backend\n }\n }\n\n // Client-side: fetch from API\n const context = await fetch(\"/api/config\").then(res => res.json());\n if (!context.backend) {\n throw new Error(\"No backend set.\")\n }\n return {\n files: context.backend,\n base: context.backend\n }\n}\n\nexport const getToken = async () => {\n const session = await getSession()\n // @ts-ignore\n return session?.user?.jwt;\n}\n\nexport type BackendConfigType = {\n fileUploads?: {\n s3endpoint: string;\n }\n workers?: {\n redisHost: string;\n enabled: boolean;\n }\n}\n\nexport type ThemeConfig = {\n light?: Record<string, string>;\n dark?: Record<string, string>;\n}\n\nexport const config = {\n backend: async (): Promise<Response> => {\n const uris = await getUris();\n const url = `${uris.base}/config`\n return fetch(url, {\n method: \"GET\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n })\n },\n theme: async (): Promise<ThemeConfig> => {\n try {\n const token = await getToken();\n const uris = await getUris();\n const res = await fetch(`${uris.base}/theme`, {\n method: \"GET\",\n headers: {\n \"Content-Type\": \"application/json\",\n \"Authorization\": `Bearer ${token}`,\n },\n })\n const json = await res.json();\n return json.theme;\n } catch (error) {\n console.error(\"Error fetching theme config:\", error);\n return { light: {}, dark: {} };\n }\n }\n}\n\nexport const agents = {\n image: {\n generate: async (parameters: {\n name: string,\n description: string,\n style?: ImageStyle\n }): Promise<any> => {\n\n const uris = await getUris();\n const url = `${uris.base}/generate/agent/image`;\n const token = await getToken()\n\n if (!token) {\n throw new Error(\"No valid session token available.\")\n }\n\n return fetch(url, {\n method: \"POST\",\n body: JSON.stringify(parameters),\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`,\n },\n });\n }\n }\n}\n\nexport type S3FileListOutput = {\n \"$metadata\": {\n \"httpStatusCode\": number,\n \"attempts\": number,\n \"totalRetryDelay\": number\n },\n \"Contents\": {\n \"Key\": string,\n \"LastModified\": string,\n \"ETag\": string,\n \"Size\": number\n }[]\n \"IsTruncated\": boolean,\n \"NextContinuationToken\": string,\n \"KeyCount\": number,\n \"MaxKeys\": number,\n \"Name\": string,\n \"Prefix\": string\n}\n\nexport type S3ObjectOutput = {\n \"$metadata\": {\n \"httpStatusCode\": number,\n \"attempts\": number,\n \"totalRetryDelay\": number\n },\n \"AcceptRanges\": \"bytes\",\n \"LastModified\": string,\n \"ContentLength\": number,\n \"ChecksumCRC32C\": string,\n \"ETag\": string,\n \"CacheControl\": string,\n \"ContentType\": string,\n \"Expires\": string,\n \"ExpiresString\": string\n}\n\nexport const files = {\n object: async (key: string): Promise<S3ObjectOutput> => {\n const uris = await getUris();\n let url = `${uris.files}/s3/object`;\n const token = await getToken()\n const response = await fetch(url, {\n method: \"POST\",\n body: JSON.stringify({ key }),\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`,\n },\n });\n return response.json();\n },\n list: async ({ search, continuationToken }: { search?: string, continuationToken?: string }): Promise<S3FileListOutput> => {\n const uris = await getUris();\n let url = `${uris.files}/s3/list`;\n const token = await getToken()\n\n if (!token) {\n throw new Error(\"No valid session token available.\")\n }\n\n if (search) {\n url += `?search=${search}`;\n }\n\n if (continuationToken) {\n url += `?continuationToken=${continuationToken}`;\n }\n\n const response = await fetch(url, {\n method: \"GET\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`,\n },\n });\n return response.json();\n },\n download: async (key: string) => {\n\n const uris = await getUris();\n let url = `${uris.files}/s3/download?key=${key}`;\n\n const token = await getToken()\n\n if (!token) {\n throw new Error(\"No valid session token available.\")\n }\n\n return fetch(url, {\n method: \"GET\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`,\n },\n });\n },\n delete: async (key: string) => {\n\n const uris = await getUris();\n let url = `${uris.files}/s3/delete?key=${key}`;\n const token = await getToken()\n\n if (!token) {\n throw new Error(\"No valid session token available.\")\n }\n\n return fetch(url, {\n method: \"DELETE\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`,\n },\n });\n }\n}\n","// packages/react/compose-refs/src/compose-refs.tsx\nimport * as React from \"react\";\nfunction setRef(ref, value) {\n if (typeof ref === \"function\") {\n return ref(value);\n } else if (ref !== null && ref !== void 0) {\n ref.current = value;\n }\n}\nfunction composeRefs(...refs) {\n return (node) => {\n let hasCleanup = false;\n const cleanups = refs.map((ref) => {\n const cleanup = setRef(ref, node);\n if (!hasCleanup && typeof cleanup == \"function\") {\n hasCleanup = true;\n }\n return cleanup;\n });\n if (hasCleanup) {\n return () => {\n for (let i = 0; i < cleanups.length; i++) {\n const cleanup = cleanups[i];\n if (typeof cleanup == \"function\") {\n cleanup();\n } else {\n setRef(refs[i], null);\n }\n }\n };\n }\n };\n}\nfunction useComposedRefs(...refs) {\n return React.useCallback(composeRefs(...refs), refs);\n}\nexport {\n composeRefs,\n useComposedRefs\n};\n//# sourceMappingURL=index.mjs.map\n","// src/slot.tsx\nimport * as React from \"react\";\nimport { composeRefs } from \"@radix-ui/react-compose-refs\";\nimport { Fragment as Fragment2, jsx } from \"react/jsx-runtime\";\n// @__NO_SIDE_EFFECTS__\nfunction createSlot(ownerName) {\n const SlotClone = /* @__PURE__ */ createSlotClone(ownerName);\n const Slot2 = React.forwardRef((props, forwardedRef) => {\n const { children, ...slotProps } = props;\n const childrenArray = React.Children.toArray(children);\n const slottable = childrenArray.find(isSlottable);\n if (slottable) {\n const newElement = slottable.props.children;\n const newChildren = childrenArray.map((child) => {\n if (child === slottable) {\n if (React.Children.count(newElement) > 1) return React.Children.only(null);\n return React.isValidElement(newElement) ? newElement.props.children : null;\n } else {\n return child;\n }\n });\n return /* @__PURE__ */ jsx(SlotClone, { ...slotProps, ref: forwardedRef, children: React.isValidElement(newElement) ? React.cloneElement(newElement, void 0, newChildren) : null });\n }\n return /* @__PURE__ */ jsx(SlotClone, { ...slotProps, ref: forwardedRef, children });\n });\n Slot2.displayName = `${ownerName}.Slot`;\n return Slot2;\n}\nvar Slot = /* @__PURE__ */ createSlot(\"Slot\");\n// @__NO_SIDE_EFFECTS__\nfunction createSlotClone(ownerName) {\n const SlotClone = React.forwardRef((props, forwardedRef) => {\n const { children, ...slotProps } = props;\n if (React.isValidElement(children)) {\n const childrenRef = getElementRef(children);\n const props2 = mergeProps(slotProps, children.props);\n if (children.type !== React.Fragment) {\n props2.ref = forwardedRef ? composeRefs(forwardedRef, childrenRef) : childrenRef;\n }\n return React.cloneElement(children, props2);\n }\n return React.Children.count(children) > 1 ? React.Children.only(null) : null;\n });\n SlotClone.displayName = `${ownerName}.SlotClone`;\n return SlotClone;\n}\nvar SLOTTABLE_IDENTIFIER = Symbol(\"radix.slottable\");\n// @__NO_SIDE_EFFECTS__\nfunction createSlottable(ownerName) {\n const Slottable2 = ({ children }) => {\n return /* @__PURE__ */ jsx(Fragment2, { children });\n };\n Slottable2.displayName = `${ownerName}.Slottable`;\n Slottable2.__radixId = SLOTTABLE_IDENTIFIER;\n return Slottable2;\n}\nvar Slottable = /* @__PURE__ */ createSlottable(\"Slottable\");\nfunction isSlottable(child) {\n return React.isValidElement(child) && typeof child.type === \"function\" && \"__radixId\" in child.type && child.type.__radixId === SLOTTABLE_IDENTIFIER;\n}\nfunction mergeProps(slotProps, childProps) {\n const overrideProps = { ...childProps };\n for (const propName in childProps) {\n const slotPropValue = slotProps[propName];\n const childPropValue = childProps[propName];\n const isHandler = /^on[A-Z]/.test(propName);\n if (isHandler) {\n if (slotPropValue && childPropValue) {\n overrideProps[propName] = (...args) => {\n const result = childPropValue(...args);\n slotPropValue(...args);\n return result;\n };\n } else if (slotPropValue) {\n overrideProps[propName] = slotPropValue;\n }\n } else if (propName === \"style\") {\n overrideProps[propName] = { ...slotPropValue, ...childPropValue };\n } else if (propName === \"className\") {\n overrideProps[propName] = [slotPropValue, childPropValue].filter(Boolean).join(\" \");\n }\n }\n return { ...slotProps, ...overrideProps };\n}\nfunction getElementRef(element) {\n let getter = Object.getOwnPropertyDescriptor(element.props, \"ref\")?.get;\n let mayWarn = getter && \"isReactWarning\" in getter && getter.isReactWarning;\n if (mayWarn) {\n return element.ref;\n }\n getter = Object.getOwnPropertyDescriptor(element, \"ref\")?.get;\n mayWarn = getter && \"isReactWarning\" in getter && getter.isReactWarning;\n if (mayWarn) {\n return element.props.ref;\n }\n return element.props.ref || element.ref;\n}\nexport {\n Slot as Root,\n Slot,\n Slottable,\n createSlot,\n createSlottable\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["Promise","resolve","then","__webpack_require__","bind","TokenPage","data","session","status","useSession","token","setToken","useState","loading","setLoading","copied","setCopied","toast","useToast","useEffect","fetchToken","currentToken","getToken","error","console","copyToClipboard","navigator","clipboard","writeText","title","description","setTimeout","variant","react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__","jsx","div","className","jsxs","Card","CardHeader","CardTitle","AlertCircle","CardDescription","CardContent","p","h1","span","Badge","Fragment","label","htmlFor","Input","id","type","value","readOnly","Button","onClick","size","CheckCircle","Copy","strong","badgeVariants","cva","variants","default","secondary","destructive","outline","defaultVariants","param","props","cn","buttonVariants","ghost","link","sm","lg","icon","React","ref","asChild","Comp","Slot","displayName","h3","CardFooter","input","count","toastTimeouts","Map","addToRemoveQueue","has","toastId","timeout","delete","dispatch","set","reducer","state","action","toasts","slice","map","t","forEach","undefined","open","filter","listeners","memoryState","listener","Number","MAX_SAFE_INTEGER","toString","dismiss","onOpenChange","update","setState","push","index","indexOf","splice","_len","arguments","length","inputs","_key","twMerge","clsx","formatDuration","seconds","hours","Math","floor","minutes","remainingSeconds","round","concat","defaultAttributes","xmlns","width","height","viewBox","fill","stroke","strokeWidth","strokeLinecap","strokeLinejoin","toKebabCase","string","replace","toLowerCase","trim","createLucideIcon","iconName","iconNode","Component","forwardRef","color","absoluteStrokeWidth","children","rest","createElement","join","tag","attrs","Array","isArray","cx","cy","r","key","x1","x2","y1","y2","d","x","y","rx","ry","getUris","context","fetch","res","json","backend","files","base","getSession","user","jwt","agents","image","generate","parameters","uris","url","method","body","JSON","stringify","headers","Authorization","object","response","list","search","continuationToken","download","setRef","current","composeRefs","refs","hasCleanup","cleanups","cleanup","node","i","useComposedRefs","react__WEBPACK_IMPORTED_MODULE_0__","useCallback","createSlot","ownerName","SlotClone","createSlotClone","forwardedRef","slotProps","isValidElement","getter","mayWarn","childrenRef","Object","getOwnPropertyDescriptor","element","get","isReactWarning","props2","mergeProps","childProps","overrideProps","propName","slotPropValue","childPropValue","test","args","result","Boolean","_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_2__","F","cloneElement","Children","only","Slot2","childrenArray","toArray","slottable","find","isSlottable","newElement","newChildren","child","react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__","SLOTTABLE_IDENTIFIER","Symbol","createSlottable","Slottable2","__radixId"],"sourceRoot":""}
1
+ {"version":3,"file":"static/chunks/app/(application)/token/page-3acc39cb8a718331.js","mappings":"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","sources":["webpack://_N_E/?06da","webpack://_N_E/./app/(application)/token/page.tsx","webpack://_N_E/./components/ui/badge.tsx","webpack://_N_E/./components/ui/button.tsx","webpack://_N_E/./components/ui/card.tsx","webpack://_N_E/./components/ui/input.tsx","webpack://_N_E/./components/ui/use-toast.ts","webpack://_N_E/./lib/utils.ts","webpack://_N_E/../../src/defaultAttributes.ts","webpack://_N_E/../../src/createLucideIcon.ts","webpack://_N_E/../../../src/icons/alert-circle.ts","webpack://_N_E/../../../src/icons/check-circle.ts","webpack://_N_E/../../../src/icons/copy.ts","webpack://_N_E/./util/api.ts","webpack://_N_E/./node_modules/@radix-ui/react-compose-refs/dist/index.mjs","webpack://_N_E/./node_modules/@radix-ui/react-slot/dist/index.mjs"],"sourcesContent":["import(/* webpackMode: \"eager\" */ \"/home/runner/work/exulu-frontend/exulu-frontend/app/(application)/token/page.tsx\");\n","'use client'\n\nimport { useSession } from \"next-auth/react\"\nimport { useEffect, useState } from \"react\"\nimport { getToken } from \"@/util/api\"\nimport { Button } from \"@/components/ui/button\"\nimport { Card, CardContent, CardDescription, CardHeader, CardTitle } from \"@/components/ui/card\"\nimport { Input } from \"@/components/ui/input\"\nimport { Badge } from \"@/components/ui/badge\"\nimport { Copy, CheckCircle, AlertCircle } from \"lucide-react\"\nimport { useToast } from \"@/components/ui/use-toast\"\n\nexport default function TokenPage() {\n const { data: session, status } = useSession()\n const [token, setToken] = useState<string | null>(null)\n const [loading, setLoading] = useState(true)\n const [copied, setCopied] = useState(false)\n const { toast } = useToast()\n\n useEffect(() => {\n const fetchToken = async () => {\n if (status === \"authenticated\") {\n try {\n const currentToken = await getToken()\n setToken(currentToken)\n } catch (error) {\n console.error(\"Failed to get token:\", error)\n setToken(null)\n }\n }\n setLoading(false)\n }\n\n fetchToken()\n }, [status])\n\n const copyToClipboard = async () => {\n if (!token) return\n\n try {\n await navigator.clipboard.writeText(token)\n setCopied(true)\n toast({\n title: \"Token copied!\",\n description: \"The token has been copied to your clipboard.\",\n })\n setTimeout(() => setCopied(false), 2000)\n } catch (error) {\n toast({\n title: \"Failed to copy\",\n description: \"Could not copy token to clipboard.\",\n variant: \"destructive\",\n })\n }\n }\n\n if (status === \"loading\" || loading) {\n return (\n <div className=\"container mx-auto p-6\">\n <div className=\"flex items-center justify-center min-h-[400px]\">\n <div className=\"animate-spin rounded-full h-32 w-32 border-b-2 border-gray-900\"></div>\n </div>\n </div>\n )\n }\n\n if (status === \"unauthenticated\") {\n return (\n <div className=\"container mx-auto my-auto p-6\">\n <Card className=\"max-w-md mx-auto\">\n <CardHeader>\n <CardTitle className=\"flex items-center gap-2\">\n <AlertCircle className=\"h-5 w-5 text-red-500\" />\n Authentication Required\n </CardTitle>\n <CardDescription>\n You must be logged in to access your token.\n </CardDescription>\n </CardHeader>\n <CardContent>\n <p className=\"text-sm text-muted-foreground\">\n Please log in to view and copy your authentication token.\n </p>\n </CardContent>\n </Card>\n </div>\n )\n }\n\n return (\n <div className=\"container mx-auto my-auto p-6\">\n <div className=\"max-w-2xl mx-auto\">\n <div className=\"mb-6\">\n <h1 className=\"text-3xl font-bold\">Authentication Token</h1>\n <p className=\"text-muted-foreground mt-2\">\n Your current authentication token for API access.\n </p>\n </div>\n\n <Card>\n <CardHeader>\n <CardTitle className=\"flex items-center justify-between\">\n <span>Current Token</span>\n <Badge variant={token ? \"default\" : \"destructive\"}>\n {token ? \"Active\" : \"Unavailable\"}\n </Badge>\n </CardTitle>\n <CardDescription>\n Use this token to authenticate API requests. Keep it secure and do not share it.\n </CardDescription>\n </CardHeader>\n <CardContent className=\"space-y-4\">\n {token ? (\n <>\n <div className=\"space-y-2\">\n <label htmlFor=\"token\" className=\"text-sm font-medium\">\n Token Value\n </label>\n <div className=\"flex gap-2\">\n <Input\n id=\"token\"\n type=\"text\"\n value={token}\n readOnly\n className=\"font-mono text-sm\"\n />\n <Button\n onClick={copyToClipboard}\n variant=\"outline\"\n size=\"sm\"\n className=\"shrink-0\"\n >\n {copied ? (\n <CheckCircle className=\"h-4 w-4\" />\n ) : (\n <Copy className=\"h-4 w-4\" />\n )}\n </Button>\n </div>\n </div>\n \n <div className=\"text-sm text-muted-foreground space-y-2\">\n <p>\n <strong>Security:</strong> This token provides access to your account. Keep it private and secure.\n </p>\n </div>\n </>\n ) : (\n <div className=\"text-center py-8\">\n <AlertCircle className=\"h-12 w-12 text-muted-foreground mx-auto mb-4\" />\n <p className=\"text-muted-foreground\">\n No token available. Please try refreshing the page or logging in again.\n </p>\n </div>\n )}\n </CardContent>\n </Card>\n </div>\n </div>\n )\n}","import { cva, type VariantProps } from \"class-variance-authority\";\nimport * as React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nconst badgeVariants = cva(\n \"inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2\",\n {\n variants: {\n variant: {\n default:\n \"border-transparent bg-primary text-primary-foreground hover:bg-primary/80\",\n secondary:\n \"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80\",\n destructive:\n \"border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80\",\n outline: \"text-foreground\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n },\n);\n\nexport interface BadgeProps\n extends React.HTMLAttributes<HTMLDivElement>,\n VariantProps<typeof badgeVariants> {}\n\nfunction Badge({ className, variant, ...props }: BadgeProps) {\n return (\n <div className={cn(badgeVariants({ variant }), className)} {...props} />\n );\n}\n\nexport { Badge, badgeVariants };\n","import { Slot } from \"@radix-ui/react-slot\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport * as React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nconst buttonVariants = cva(\n \"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50\",\n {\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground hover:bg-primary/90\",\n destructive:\n \"bg-destructive text-destructive-foreground hover:bg-destructive/90\",\n outline:\n \"border border-input bg-background hover:bg-accent hover:text-accent-foreground\",\n secondary:\n \"bg-secondary text-secondary-foreground hover:bg-secondary/80\",\n ghost: \"hover:bg-accent hover:text-accent-foreground\",\n link: \"text-primary underline-offset-4 hover:underline\",\n },\n size: {\n default: \"h-10 px-4 py-2\",\n sm: \"h-9 rounded-md px-3\",\n lg: \"h-11 rounded-md px-8\",\n icon: \"size-10\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n },\n);\n\nexport interface ButtonProps\n extends React.ButtonHTMLAttributes<HTMLButtonElement>,\n VariantProps<typeof buttonVariants> {\n asChild?: boolean;\n}\n\nconst Button = React.forwardRef<HTMLButtonElement, ButtonProps>(\n ({ className, variant, size, asChild = false, ...props }, ref) => {\n const Comp = asChild ? Slot : \"button\";\n return (\n <Comp\n className={cn(buttonVariants({ variant, size, className }))}\n ref={ref}\n {...props}\n />\n );\n },\n);\nButton.displayName = \"Button\";\n\nexport { Button, buttonVariants };\n","import * as React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nconst Card = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\n \"rounded-lg border bg-card text-card-foreground shadow-sm\",\n className,\n )}\n {...props}\n />\n));\nCard.displayName = \"Card\";\n\nconst CardHeader = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\"flex flex-col space-y-1.5 p-6\", className)}\n {...props}\n />\n));\nCardHeader.displayName = \"CardHeader\";\n\nconst CardTitle = React.forwardRef<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLHeadingElement>\n>(({ className, ...props }, ref) => (\n <h3\n ref={ref}\n className={cn(\n \"text-2xl font-semibold leading-none tracking-tight\",\n className,\n )}\n {...props}\n />\n));\nCardTitle.displayName = \"CardTitle\";\n\nconst CardDescription = React.forwardRef<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLParagraphElement>\n>(({ className, ...props }, ref) => (\n <p\n ref={ref}\n className={cn(\"text-sm text-muted-foreground\", className)}\n {...props}\n />\n));\nCardDescription.displayName = \"CardDescription\";\n\nconst CardContent = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div ref={ref} className={cn(\"p-6 pt-0\", className)} {...props} />\n));\nCardContent.displayName = \"CardContent\";\n\nconst CardFooter = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\"flex items-center p-6 pt-0\", className)}\n {...props}\n />\n));\nCardFooter.displayName = \"CardFooter\";\n\nexport {\n Card,\n CardHeader,\n CardFooter,\n CardTitle,\n CardDescription,\n CardContent,\n};\n","import * as React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nexport interface InputProps\n extends React.InputHTMLAttributes<HTMLInputElement> {}\n\nconst Input = React.forwardRef<HTMLInputElement, InputProps>(\n ({ className, type, ...props }, ref) => {\n return (\n <input\n type={type}\n className={cn(\n \"flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50\",\n className,\n )}\n ref={ref}\n {...props}\n />\n );\n },\n);\nInput.displayName = \"Input\";\n\nexport { Input };\n","\"use client\";\n\n// Inspired by react-hot-toast library\nimport * as React from \"react\";\n\nimport type { ToastActionElement, ToastProps } from \"@/components/ui/toast\";\n\nconst TOAST_LIMIT = 1;\nconst TOAST_REMOVE_DELAY = 1000000;\n\ntype ToasterToast = ToastProps & {\n id: string;\n title?: React.ReactNode;\n description?: React.ReactNode;\n action?: ToastActionElement;\n};\n\nconst actionTypes = {\n ADD_TOAST: \"ADD_TOAST\",\n UPDATE_TOAST: \"UPDATE_TOAST\",\n DISMISS_TOAST: \"DISMISS_TOAST\",\n REMOVE_TOAST: \"REMOVE_TOAST\",\n} as const;\n\nlet count = 0;\n\nfunction genId() {\n count = (count + 1) % Number.MAX_SAFE_INTEGER;\n return count.toString();\n}\n\ntype ActionType = typeof actionTypes;\n\ntype Action =\n | {\n type: ActionType[\"ADD_TOAST\"];\n toast: ToasterToast;\n }\n | {\n type: ActionType[\"UPDATE_TOAST\"];\n toast: Partial<ToasterToast>;\n }\n | {\n type: ActionType[\"DISMISS_TOAST\"];\n toastId?: ToasterToast[\"id\"];\n }\n | {\n type: ActionType[\"REMOVE_TOAST\"];\n toastId?: ToasterToast[\"id\"];\n };\n\ninterface State {\n toasts: ToasterToast[];\n}\n\nconst toastTimeouts = new Map<string, ReturnType<typeof setTimeout>>();\n\nconst addToRemoveQueue = (toastId: string) => {\n if (toastTimeouts.has(toastId)) {\n return;\n }\n\n const timeout = setTimeout(() => {\n toastTimeouts.delete(toastId);\n dispatch({\n type: \"REMOVE_TOAST\",\n toastId: toastId,\n });\n }, TOAST_REMOVE_DELAY);\n\n toastTimeouts.set(toastId, timeout);\n};\n\nexport const reducer = (state: State, action: Action): State => {\n switch (action.type) {\n case \"ADD_TOAST\":\n return {\n ...state,\n toasts: [action.toast, ...state.toasts].slice(0, TOAST_LIMIT),\n };\n\n case \"UPDATE_TOAST\":\n return {\n ...state,\n toasts: state.toasts.map((t) =>\n t.id === action.toast.id ? { ...t, ...action.toast } : t,\n ),\n };\n\n case \"DISMISS_TOAST\": {\n const { toastId } = action;\n\n // ! Side effects ! - This could be extracted into a dismissToast() action,\n // but I'll keep it here for simplicity\n if (toastId) {\n addToRemoveQueue(toastId);\n } else {\n state.toasts.forEach((toast) => {\n addToRemoveQueue(toast.id);\n });\n }\n\n return {\n ...state,\n toasts: state.toasts.map((t) =>\n t.id === toastId || toastId === undefined\n ? {\n ...t,\n open: false,\n }\n : t,\n ),\n };\n }\n case \"REMOVE_TOAST\":\n if (action.toastId === undefined) {\n return {\n ...state,\n toasts: [],\n };\n }\n return {\n ...state,\n toasts: state.toasts.filter((t) => t.id !== action.toastId),\n };\n }\n};\n\nconst listeners: Array<(state: State) => void> = [];\n\nlet memoryState: State = { toasts: [] };\n\nfunction dispatch(action: Action) {\n memoryState = reducer(memoryState, action);\n listeners.forEach((listener) => {\n listener(memoryState);\n });\n}\n\ntype Toast = Omit<ToasterToast, \"id\">;\n\nfunction toast({ ...props }: Toast) {\n const id = genId();\n\n const update = (props: ToasterToast) =>\n dispatch({\n type: \"UPDATE_TOAST\",\n toast: { ...props, id },\n });\n const dismiss = () => dispatch({ type: \"DISMISS_TOAST\", toastId: id });\n\n dispatch({\n type: \"ADD_TOAST\",\n toast: {\n ...props,\n id,\n open: true,\n onOpenChange: (open) => {\n if (!open) dismiss();\n },\n },\n });\n\n return {\n id: id,\n dismiss,\n update,\n };\n}\n\nfunction useToast() {\n const [state, setState] = React.useState<State>(memoryState);\n\n React.useEffect(() => {\n listeners.push(setState);\n return () => {\n const index = listeners.indexOf(setState);\n if (index > -1) {\n listeners.splice(index, 1);\n }\n };\n }, [state]);\n\n return {\n ...state,\n toast,\n dismiss: (toastId?: string) => dispatch({ type: \"DISMISS_TOAST\", toastId }),\n };\n}\n\nexport { useToast, toast };\n","import { type ClassValue, clsx } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n\nexport function formatDuration(seconds: number): string {\n if (!seconds) return '0s';\n \n const hours = Math.floor(seconds / 3600);\n const minutes = Math.floor((seconds % 3600) / 60);\n const remainingSeconds = Math.round(seconds % 60);\n\n if (hours > 0) {\n return `${hours}h ${minutes}m`;\n } else if (minutes > 0) {\n return `${minutes}m ${remainingSeconds}s`;\n } else {\n return `${remainingSeconds}s`;\n }\n}","export default {\n xmlns: 'http://www.w3.org/2000/svg',\n width: 24,\n height: 24,\n viewBox: '0 0 24 24',\n fill: 'none',\n stroke: 'currentColor',\n strokeWidth: 2,\n strokeLinecap: 'round',\n strokeLinejoin: 'round',\n};\n","import {\n forwardRef,\n createElement,\n ReactSVG,\n SVGProps,\n ForwardRefExoticComponent,\n RefAttributes,\n} from 'react';\nimport defaultAttributes from './defaultAttributes';\n\nexport type IconNode = [elementName: keyof ReactSVG, attrs: Record<string, string>][];\n\nexport type SVGAttributes = Partial<SVGProps<SVGSVGElement>>;\ntype ComponentAttributes = RefAttributes<SVGSVGElement> & SVGAttributes;\n\nexport interface LucideProps extends ComponentAttributes {\n size?: string | number;\n absoluteStrokeWidth?: boolean;\n}\n\nexport type LucideIcon = ForwardRefExoticComponent<LucideProps>;\n/**\n * Converts string to KebabCase\n * Copied from scripts/helper. If anyone knows how to properly import it here\n * then please fix it.\n *\n * @param {string} string\n * @returns {string} A kebabized string\n */\nexport const toKebabCase = (string: string) =>\n string\n .replace(/([a-z0-9])([A-Z])/g, '$1-$2')\n .toLowerCase()\n .trim();\n\nconst createLucideIcon = (iconName: string, iconNode: IconNode): LucideIcon => {\n const Component = forwardRef<SVGSVGElement, LucideProps>(\n ({ color = 'currentColor', size = 24, strokeWidth = 2, absoluteStrokeWidth, className = '', children, ...rest }, ref) =>{\n\n return createElement(\n 'svg',\n {\n ref,\n ...defaultAttributes,\n width: size,\n height: size,\n stroke: color,\n strokeWidth: absoluteStrokeWidth ? Number(strokeWidth) * 24 / Number(size) : strokeWidth,\n className: ['lucide', `lucide-${toKebabCase(iconName)}`, className].join(' '),\n ...rest,\n },\n [\n ...iconNode.map(([tag, attrs]) => createElement(tag, attrs)),\n ...(Array.isArray(children) ? children : [children]),\n ]\n )\n }\n );\n\n Component.displayName = `${iconName}`;\n\n return Component;\n};\n\nexport default createLucideIcon;\n","import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name AlertCircle\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSIxMCIgLz4KICA8bGluZSB4MT0iMTIiIHgyPSIxMiIgeTE9IjgiIHkyPSIxMiIgLz4KICA8bGluZSB4MT0iMTIiIHgyPSIxMi4wMSIgeTE9IjE2IiB5Mj0iMTYiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/alert-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 AlertCircle = createLucideIcon('AlertCircle', [\n ['circle', { cx: '12', cy: '12', r: '10', key: '1mglay' }],\n ['line', { x1: '12', x2: '12', y1: '8', y2: '12', key: '1pkeuh' }],\n ['line', { x1: '12', x2: '12.01', y1: '16', y2: '16', key: '4dfq90' }],\n]);\n\nexport default AlertCircle;\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 Copy\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cmVjdCB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHg9IjgiIHk9IjgiIHJ4PSIyIiByeT0iMiIgLz4KICA8cGF0aCBkPSJNNCAxNmMtMS4xIDAtMi0uOS0yLTJWNGMwLTEuMS45LTIgMi0yaDEwYzEuMSAwIDIgLjkgMiAyIiAvPgo8L3N2Zz4K) - https://lucide.dev/icons/copy\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 Copy = createLucideIcon('Copy', [\n ['rect', { width: '14', height: '14', x: '8', y: '8', rx: '2', ry: '2', key: '17jyea' }],\n ['path', { d: 'M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2', key: 'zix9uf' }],\n]);\n\nexport default Copy;\n","import { getSession } from \"next-auth/react\";\n\nexport type ImageStyle = \"origami\" | \"anime\" | \"japanese_anime\" | \"vaporwave\" | \"lego\" | \"paper_cut\" | \"felt_puppet\" | \"3d\" | \"app_icon\" | \"pixel_art\" | \"isometric\";\n\nconst getUris = async () => {\n // Server-side: use environment variable directly\n if (typeof window === 'undefined') {\n const backend = process.env.BACKEND;\n if (!backend) {\n throw new Error(\"No backend set.\")\n }\n return {\n files: backend,\n base: backend\n }\n }\n\n // Client-side: fetch from API\n const context = await fetch(\"/api/config\").then(res => res.json());\n if (!context.backend) {\n throw new Error(\"No backend set.\")\n }\n return {\n files: context.backend,\n base: context.backend\n }\n}\n\nexport const getToken = async () => {\n const session = await getSession()\n // @ts-ignore\n return session?.user?.jwt;\n}\n\nexport type BackendConfigType = {\n fileUploads?: {\n s3endpoint: string;\n }\n workers?: {\n redisHost: string;\n enabled: boolean;\n }\n}\n\nexport type ThemeConfig = {\n light?: Record<string, string>;\n dark?: Record<string, string>;\n}\n\nexport const config = {\n backend: async (): Promise<Response> => {\n const uris = await getUris();\n const url = `${uris.base}/config`\n return fetch(url, {\n method: \"GET\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n })\n },\n theme: async (): Promise<ThemeConfig> => {\n try {\n const token = await getToken();\n const uris = await getUris();\n const res = await fetch(`${uris.base}/theme`, {\n method: \"GET\",\n headers: {\n \"Content-Type\": \"application/json\",\n \"Authorization\": `Bearer ${token}`,\n },\n })\n const json = await res.json();\n return json.theme;\n } catch (error) {\n console.error(\"Error fetching theme config:\", error);\n return { light: {}, dark: {} };\n }\n }\n}\n\nexport const agents = {\n image: {\n generate: async (parameters: {\n name: string,\n description: string,\n style?: ImageStyle\n }): Promise<any> => {\n\n const uris = await getUris();\n const url = `${uris.base}/generate/agent/image`;\n const token = await getToken()\n\n if (!token) {\n throw new Error(\"No valid session token available.\")\n }\n\n return fetch(url, {\n method: \"POST\",\n body: JSON.stringify(parameters),\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`,\n },\n });\n }\n }\n}\n\nexport type S3FileListOutput = {\n \"$metadata\": {\n \"httpStatusCode\": number,\n \"attempts\": number,\n \"totalRetryDelay\": number\n },\n \"Contents\": {\n \"Key\": string,\n \"LastModified\": string,\n \"ETag\": string,\n \"Size\": number\n }[]\n \"IsTruncated\": boolean,\n \"NextContinuationToken\": string,\n \"KeyCount\": number,\n \"MaxKeys\": number,\n \"Name\": string,\n \"Prefix\": string\n}\n\nexport type S3ObjectOutput = {\n \"$metadata\": {\n \"httpStatusCode\": number,\n \"attempts\": number,\n \"totalRetryDelay\": number\n },\n \"AcceptRanges\": \"bytes\",\n \"LastModified\": string,\n \"ContentLength\": number,\n \"ChecksumCRC32C\": string,\n \"ETag\": string,\n \"CacheControl\": string,\n \"ContentType\": string,\n \"Expires\": string,\n \"ExpiresString\": string\n}\n\nexport const files = {\n object: async (key: string): Promise<S3ObjectOutput> => {\n const uris = await getUris();\n let url = `${uris.files}/s3/object`;\n const token = await getToken()\n const response = await fetch(url, {\n method: \"POST\",\n body: JSON.stringify({ key }),\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`,\n },\n });\n return response.json();\n },\n list: async ({ search, continuationToken }: { search?: string, continuationToken?: string }): Promise<S3FileListOutput> => {\n const uris = await getUris();\n let url = `${uris.files}/s3/list`;\n const token = await getToken()\n\n if (!token) {\n throw new Error(\"No valid session token available.\")\n }\n\n if (search) {\n url += `?search=${search}`;\n }\n\n if (continuationToken) {\n url += `?continuationToken=${continuationToken}`;\n }\n\n const response = await fetch(url, {\n method: \"GET\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`,\n },\n });\n return response.json();\n },\n // Key is the base s3 key of the file\n // if only the key is provided only the\n // user that uploaded the file, a super\n // admin or api user can access and \n // download the file. If an item ID is\n // provided, the RBAC rights associated\n // with the item are checked and used.\n // The item must be provided as a GID\n // with the context id as the prefix before\n // the first slash.\n download: async (key: string) => {\n\n const uris = await getUris();\n let url = `${uris.files}/s3/download?key=${key}`;\n\n const token = await getToken()\n\n if (!token) {\n throw new Error(\"No valid session token available.\")\n }\n\n return fetch(url, {\n method: \"GET\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`,\n },\n });\n },\n delete: async (key: string) => {\n\n const uris = await getUris();\n let url = `${uris.files}/s3/delete?key=${key}`;\n const token = await getToken()\n\n if (!token) {\n throw new Error(\"No valid session token available.\")\n }\n\n return fetch(url, {\n method: \"DELETE\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`,\n },\n });\n }\n}\n","// packages/react/compose-refs/src/compose-refs.tsx\nimport * as React from \"react\";\nfunction setRef(ref, value) {\n if (typeof ref === \"function\") {\n return ref(value);\n } else if (ref !== null && ref !== void 0) {\n ref.current = value;\n }\n}\nfunction composeRefs(...refs) {\n return (node) => {\n let hasCleanup = false;\n const cleanups = refs.map((ref) => {\n const cleanup = setRef(ref, node);\n if (!hasCleanup && typeof cleanup == \"function\") {\n hasCleanup = true;\n }\n return cleanup;\n });\n if (hasCleanup) {\n return () => {\n for (let i = 0; i < cleanups.length; i++) {\n const cleanup = cleanups[i];\n if (typeof cleanup == \"function\") {\n cleanup();\n } else {\n setRef(refs[i], null);\n }\n }\n };\n }\n };\n}\nfunction useComposedRefs(...refs) {\n return React.useCallback(composeRefs(...refs), refs);\n}\nexport {\n composeRefs,\n useComposedRefs\n};\n//# sourceMappingURL=index.mjs.map\n","// src/slot.tsx\nimport * as React from \"react\";\nimport { composeRefs } from \"@radix-ui/react-compose-refs\";\nimport { Fragment as Fragment2, jsx } from \"react/jsx-runtime\";\n// @__NO_SIDE_EFFECTS__\nfunction createSlot(ownerName) {\n const SlotClone = /* @__PURE__ */ createSlotClone(ownerName);\n const Slot2 = React.forwardRef((props, forwardedRef) => {\n const { children, ...slotProps } = props;\n const childrenArray = React.Children.toArray(children);\n const slottable = childrenArray.find(isSlottable);\n if (slottable) {\n const newElement = slottable.props.children;\n const newChildren = childrenArray.map((child) => {\n if (child === slottable) {\n if (React.Children.count(newElement) > 1) return React.Children.only(null);\n return React.isValidElement(newElement) ? newElement.props.children : null;\n } else {\n return child;\n }\n });\n return /* @__PURE__ */ jsx(SlotClone, { ...slotProps, ref: forwardedRef, children: React.isValidElement(newElement) ? React.cloneElement(newElement, void 0, newChildren) : null });\n }\n return /* @__PURE__ */ jsx(SlotClone, { ...slotProps, ref: forwardedRef, children });\n });\n Slot2.displayName = `${ownerName}.Slot`;\n return Slot2;\n}\nvar Slot = /* @__PURE__ */ createSlot(\"Slot\");\n// @__NO_SIDE_EFFECTS__\nfunction createSlotClone(ownerName) {\n const SlotClone = React.forwardRef((props, forwardedRef) => {\n const { children, ...slotProps } = props;\n if (React.isValidElement(children)) {\n const childrenRef = getElementRef(children);\n const props2 = mergeProps(slotProps, children.props);\n if (children.type !== React.Fragment) {\n props2.ref = forwardedRef ? composeRefs(forwardedRef, childrenRef) : childrenRef;\n }\n return React.cloneElement(children, props2);\n }\n return React.Children.count(children) > 1 ? React.Children.only(null) : null;\n });\n SlotClone.displayName = `${ownerName}.SlotClone`;\n return SlotClone;\n}\nvar SLOTTABLE_IDENTIFIER = Symbol(\"radix.slottable\");\n// @__NO_SIDE_EFFECTS__\nfunction createSlottable(ownerName) {\n const Slottable2 = ({ children }) => {\n return /* @__PURE__ */ jsx(Fragment2, { children });\n };\n Slottable2.displayName = `${ownerName}.Slottable`;\n Slottable2.__radixId = SLOTTABLE_IDENTIFIER;\n return Slottable2;\n}\nvar Slottable = /* @__PURE__ */ createSlottable(\"Slottable\");\nfunction isSlottable(child) {\n return React.isValidElement(child) && typeof child.type === \"function\" && \"__radixId\" in child.type && child.type.__radixId === SLOTTABLE_IDENTIFIER;\n}\nfunction mergeProps(slotProps, childProps) {\n const overrideProps = { ...childProps };\n for (const propName in childProps) {\n const slotPropValue = slotProps[propName];\n const childPropValue = childProps[propName];\n const isHandler = /^on[A-Z]/.test(propName);\n if (isHandler) {\n if (slotPropValue && childPropValue) {\n overrideProps[propName] = (...args) => {\n const result = childPropValue(...args);\n slotPropValue(...args);\n return result;\n };\n } else if (slotPropValue) {\n overrideProps[propName] = slotPropValue;\n }\n } else if (propName === \"style\") {\n overrideProps[propName] = { ...slotPropValue, ...childPropValue };\n } else if (propName === \"className\") {\n overrideProps[propName] = [slotPropValue, childPropValue].filter(Boolean).join(\" \");\n }\n }\n return { ...slotProps, ...overrideProps };\n}\nfunction getElementRef(element) {\n let getter = Object.getOwnPropertyDescriptor(element.props, \"ref\")?.get;\n let mayWarn = getter && \"isReactWarning\" in getter && getter.isReactWarning;\n if (mayWarn) {\n return element.ref;\n }\n getter = Object.getOwnPropertyDescriptor(element, \"ref\")?.get;\n mayWarn = getter && \"isReactWarning\" in getter && getter.isReactWarning;\n if (mayWarn) {\n return element.props.ref;\n }\n return element.props.ref || element.ref;\n}\nexport {\n Slot as Root,\n Slot,\n Slottable,\n createSlot,\n createSlottable\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["Promise","resolve","then","__webpack_require__","bind","TokenPage","data","session","status","useSession","token","setToken","useState","loading","setLoading","copied","setCopied","toast","useToast","useEffect","fetchToken","currentToken","getToken","error","console","copyToClipboard","navigator","clipboard","writeText","title","description","setTimeout","variant","react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__","jsx","div","className","jsxs","Card","CardHeader","CardTitle","AlertCircle","CardDescription","CardContent","p","h1","span","Badge","Fragment","label","htmlFor","Input","id","type","value","readOnly","Button","onClick","size","CheckCircle","Copy","strong","badgeVariants","cva","variants","default","secondary","destructive","outline","defaultVariants","param","props","cn","buttonVariants","ghost","link","sm","lg","icon","React","ref","asChild","Comp","Slot","displayName","h3","CardFooter","input","count","toastTimeouts","Map","addToRemoveQueue","has","toastId","timeout","delete","dispatch","set","reducer","state","action","toasts","slice","map","t","forEach","undefined","open","filter","listeners","memoryState","listener","Number","MAX_SAFE_INTEGER","toString","dismiss","onOpenChange","update","setState","push","index","indexOf","splice","_len","arguments","length","inputs","_key","twMerge","clsx","formatDuration","seconds","hours","Math","floor","minutes","remainingSeconds","round","concat","defaultAttributes","xmlns","width","height","viewBox","fill","stroke","strokeWidth","strokeLinecap","strokeLinejoin","toKebabCase","string","replace","toLowerCase","trim","createLucideIcon","iconName","iconNode","Component","forwardRef","color","absoluteStrokeWidth","children","rest","createElement","join","tag","attrs","Array","isArray","cx","cy","r","key","x1","x2","y1","y2","d","x","y","rx","ry","getUris","context","fetch","res","json","backend","files","base","getSession","user","jwt","agents","image","generate","parameters","uris","url","method","body","JSON","stringify","headers","Authorization","object","response","list","search","continuationToken","download","setRef","current","composeRefs","refs","hasCleanup","cleanups","cleanup","node","i","useComposedRefs","react__WEBPACK_IMPORTED_MODULE_0__","useCallback","createSlot","ownerName","SlotClone","createSlotClone","forwardedRef","slotProps","isValidElement","getter","mayWarn","childrenRef","Object","getOwnPropertyDescriptor","element","get","isReactWarning","props2","mergeProps","childProps","overrideProps","propName","slotPropValue","childPropValue","test","args","result","Boolean","_radix_ui_react_compose_refs__WEBPACK_IMPORTED_MODULE_2__","F","cloneElement","Children","only","Slot2","childrenArray","toArray","slottable","find","isSlottable","newElement","newChildren","child","react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__","SLOTTABLE_IDENTIFIER","Symbol","createSlottable","Slottable2","__radixId"],"sourceRoot":""}
@@ -1,2 +1,2 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1929,3619],{33329:function(e,t,n){Promise.resolve().then(n.bind(n,99630))},99630:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return W},dynamic:function(){return V}});var r=n(57437),l=n(2265),a=n(15868),s=n(42208),o=n(33276),i=n(18930);let d=(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"}]]);var c=n(62869),u=n(35974),m=n(27699),f=n(7598),p=n(7211),g=n(12199),x=n(27689),h=n(37099),v=n(95186),j=n(26815),y=n(77992);function b(e){let{workflowId:t}=e,{lastRunAt:n,lastRunStatus:l}=function(e){var t,n;let{data:r}=(0,p.aM)(x.Jq,{variables:{page:1,limit:1,filters:[{workflow:{eq:e}}],sort:{field:"createdAt",direction:"DESC"}},pollInterval:5e3}),l=null==r?void 0:null===(n=r.jobsPagination)||void 0===n?void 0:null===(t=n.items)||void 0===t?void 0:t[0];return{lastRunAt:null==l?void 0:l.createdAt,lastRunStatus:null==l?void 0:l.status}}(t);return n?(0,r.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,r.jsx)("div",{className:"text-sm",children:(0,f.Q)(new Date(n),{addSuffix:!0})}),(0,r.jsx)(u.C,{variant:"outline",className:(e=>{switch(e){case"completed":return"bg-green-100 text-green-800";case"failed":case"stuck":return"bg-red-100 text-red-800";case"active":case"waiting":case"delayed":case"paused":return"bg-blue-100 text-blue-800";default:return"bg-gray-100 text-gray-800"}})(l),children:l})]}):(0,r.jsx)("span",{className:"text-muted-foreground text-sm",children:"Never run"})}function w(e){var t;let{workflow:n,user:d}=e,[u,f]=(0,l.useState)(!1),[p,b]=(0,l.useState)(!1),[w,N]=(0,l.useState)(""),{toast:k}=(0,y.pm)(),C=(()=>{if(n.owner===d.id)return!0;if("public"===n.rights_mode)return!1;if("users"===n.rights_mode&&n.RBAC.users){let e=n.RBAC.users.find(e=>e.id===d.id.toString());return(null==e?void 0:e.rights)==="write"}if("roles"===n.rights_mode&&n.RBAC.roles&&d.role){let e=n.RBAC.roles.find(e=>e.id===d.role);return(null==e?void 0:e.rights)==="write"}return!1})(),[R]=(0,g.D)(x.$6,{refetchQueries:[x.Zy,"GetWorkflowTemplates"]}),S=async()=>{if(w!==n.name){k({title:"Error",description:"Please type the workflow name exactly to confirm deletion.",variant:"destructive"});return}try{await R({variables:{id:n.id}}),k({title:"Workflow deleted",description:'"'.concat(n.name,'" has been successfully deleted.')}),b(!1),N("")}catch(e){k({title:"Error",description:"Failed to delete the workflow. Please try again.",variant:"destructive"})}},D=(null===(t=n.steps_json)||void 0===t?void 0:t.map((e,t)=>({id:e.id||"msg_".concat(t),role:"user"===e.type?"user":"assistant"===e.type?"assistant":"system",content:e.content||e.contentExample||"Tool: ".concat(e.toolName),..."tool"===e.type&&{parts:[{type:"tool-invocation",toolInvocation:{toolName:e.toolName}}]}})))||[];return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)(c.z,{variant:"ghost",size:"sm",onClick:()=>f(!0),children:C?(0,r.jsx)(a.Z,{className:"h-4 w-4"}):(0,r.jsx)(s.Z,{className:"h-4 w-4"})}),(0,r.jsx)(c.z,{variant:"ghost",size:"sm",onClick:()=>{console.log("Run workflow:",n.id)},children:(0,r.jsx)(o.Z,{className:"h-4 w-4"})}),C&&(0,r.jsx)(c.z,{variant:"ghost",size:"sm",onClick:()=>b(!0),className:"text-red-600 hover:text-red-700 hover:bg-red-50",children:(0,r.jsx)(i.Z,{className:"h-4 w-4"})})]}),(0,r.jsx)(m.x,{isOpen:u,onClose:()=>f(!1),messages:D,sessionTitle:n.name,existingWorkflow:{id:n.id,name:n.name,description:n.description,rights_mode:n.rights_mode,RBAC:n.RBAC,variables:n.variables,steps_json:n.steps_json},isReadOnly:!C}),(0,r.jsx)(h.aR,{open:p,onOpenChange:b,children:(0,r.jsxs)(h._T,{children:[(0,r.jsxs)(h.fY,{children:[(0,r.jsx)(h.f$,{children:"Delete Workflow"}),(0,r.jsxs)(h.yT,{children:['This action will permanently delete the workflow "',n.name,'" and cannot be undone.',(0,r.jsx)("br",{}),(0,r.jsx)("br",{}),"To confirm, please type the workflow name below:"]})]}),(0,r.jsxs)("div",{className:"py-4",children:[(0,r.jsx)(j._,{htmlFor:"delete-confirmation",className:"text-sm font-medium",children:"Workflow name"}),(0,r.jsx)(v.I,{id:"delete-confirmation",value:w,onChange:e=>N(e.target.value),placeholder:n.name,className:"mt-2"})]}),(0,r.jsxs)(h.xo,{children:[(0,r.jsx)(c.z,{variant:"outline",onClick:()=>{b(!1),N("")},children:"Cancel"}),(0,r.jsx)(c.z,{variant:"destructive",onClick:S,disabled:w!==n.name,children:"Delete Workflow"})]})]})})]})}var N=n(20653),k=n(71594),C=n(24525),R=n(70085),S=n(84190);function D(e){let{table:t}=e;return(0,r.jsxs)(S.h_,{modal:!1,children:[(0,r.jsx)(R.$F,{asChild:!0,children:(0,r.jsxs)(c.z,{variant:"outline",size:"sm",className:"ml-auto hidden h-8 lg:flex",children:[(0,r.jsx)(N.hsZ,{className:"mr-2 size-4"}),"View"]})}),(0,r.jsxs)(S.AW,{align:"end",className:"w-[150px]",children:[(0,r.jsx)(S.Ju,{children:"Toggle columns"}),(0,r.jsx)(S.VD,{}),t.getAllColumns().filter(e=>void 0!==e.accessorFn&&e.getCanHide()).map(e=>(0,r.jsx)(S.bO,{className:"capitalize",checked:e.getIsVisible(),onCheckedChange:t=>e.toggleVisibility(!!t),children:e.id},e.id))]})]})}var _=n(10492),P=n(93022),A=n(73578);function I(e){var t,n,a,s,o,d,u,m,f,h,j,b,w,R,S,I,Z,z,T,M;let O,E,{columns:F}=e,{toast:V}=(0,y.pm)(),[W,$]=l.useState({}),[B,q]=l.useState({}),[G,U]=l.useState([]),[L,Y]=(0,l.useState)([]),[H,J]=(0,l.useState)(1),[Q,K]=l.useState([]),{loading:X,error:ee,data:et,refetch:en,previousData:er}=(0,p.aM)(x.Zy,{fetchPolicy:"no-cache",nextFetchPolicy:"network-only",variables:{page:H,limit:10,filters:L},pollInterval:3e4}),el=l.useMemo(()=>[],[]),{limit:ea,onPaginationChange:es,skip:eo,pagination:ei}=function(){let[e,t]=(0,l.useState)({pageSize:10,pageIndex:0}),{pageSize:n,pageIndex:r}=e;return{limit:n,onPaginationChange:t,pagination:e,skip:n*r}}(),[ed,ec]=(0,g.D)(x.$6,{refetchQueries:[x.Zy,"GetWorkflowTemplates"]});X&&(null==er?void 0:null===(t=er.workflow_templatesPagination)||void 0===t?void 0:t.items)?(O=null==er?void 0:null===(j=er.workflow_templatesPagination)||void 0===j?void 0:j.items,E=null==er?void 0:null===(w=er.workflow_templatesPagination)||void 0===w?void 0:null===(b=w.pageInfo)||void 0===b?void 0:b.pageCount):(null==et?void 0:null===(n=et.workflow_templatesPagination)||void 0===n?void 0:n.items)?(O=null==et?void 0:null===(R=et.workflow_templatesPagination)||void 0===R?void 0:R.items,E=null==et?void 0:null===(I=et.workflow_templatesPagination)||void 0===I?void 0:null===(S=I.pageInfo)||void 0===S?void 0:S.pageCount):(null==er?void 0:null===(a=er.workflow_templatesPagination)||void 0===a?void 0:a.items)&&(O=null==er?void 0:null===(Z=er.workflow_templatesPagination)||void 0===Z?void 0:Z.items,E=null==er?void 0:null===(T=er.workflow_templatesPagination)||void 0===T?void 0:null===(z=T.pageInfo)||void 0===z?void 0:z.pageCount);let eu=(0,k.b7)({data:null!=O?O:el,pageCount:null!=E?E:-1,columns:F,state:{sorting:Q,columnVisibility:B,rowSelection:W,columnFilters:G},enableRowSelection:!0,onRowSelectionChange:$,onSortingChange:K,onColumnFiltersChange:U,onColumnVisibilityChange:q,getCoreRowModel:(0,C.sC)(),getFilteredRowModel:(0,C.vL)(),getPaginationRowModel:(0,C.G_)(),getSortedRowModel:(0,C.tj)(),getFacetedRowModel:(0,C.o6)(),getFacetedUniqueValues:(0,C.JG)(),manualPagination:!0,onPaginationChange:es}),em=e=>{let t=[...L],n=t.find(e=>e.name);(null==n?void 0:n.name)?n.name.contains=e:t.push({name:{contains:e}}),Y(t),en()},ef=L.length>0;return(0,r.jsxs)("div",{className:"space-y-4",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between",children:[(0,r.jsxs)("div",{className:"flex flex-1 items-center space-x-2",children:[(0,r.jsx)(v.I,{placeholder:"Search workflows...",value:null!==(M=null==L?void 0:null===(o=L.find(e=>e.name))||void 0===o?void 0:null===(s=o.name)||void 0===s?void 0:s.contains)&&void 0!==M?M:"",onChange:e=>{em(e.target.value)},className:"w-[150px] lg:w-[250px]"}),eu.getIsSomeRowsSelected()||eu.getIsAllRowsSelected()?(0,r.jsx)("div",{className:"flex gap-x-2",children:(0,r.jsxs)(c.z,{onClick:()=>{let e=[];eu.getSelectedRowModel().rows.forEach(t=>{e.push(ed({variables:{id:t.original.id}}))}),Promise.all(e).then(()=>{eu.resetRowSelection(),V({title:"Workflows deleted",description:"Successfully deleted "+e.length+" workflow(s)."})}).catch(()=>{V({title:"Error",description:"Failed to delete some workflows. Please try again.",variant:"destructive"})})},variant:"secondary",disabled:ec.loading,children:[ec.loading?(0,r.jsx)(_.g,{}):(0,r.jsx)(i.Z,{className:"size-4"}),(0,r.jsx)("span",{className:"ml-2",children:"Delete selected"})]})}):null,ef&&(0,r.jsxs)(c.z,{variant:"ghost",onClick:()=>{let e=[...L],t=e.find(e=>e.name);t&&e.splice(e.indexOf(t),1),Y(e),en()},children:["Reset",(0,r.jsx)(N.Pxu,{className:"ml-2 size-4"})]})]}),(0,r.jsx)(D,{table:eu})]}),(0,r.jsx)("div",{className:"rounded-md border",children:(0,r.jsxs)(A.iA,{children:[(0,r.jsx)(A.xD,{children:eu.getHeaderGroups().map(e=>(0,r.jsx)(A.SC,{children:e.headers.map(e=>(0,r.jsx)(A.ss,{colSpan:e.colSpan,children:e.isPlaceholder?null:(0,k.ie)(e.column.columnDef.header,e.getContext())},e.id))},e.id))}),(0,r.jsx)(A.RM,{children:(null===(d=eu.getRowModel().rows)||void 0===d?void 0:d.length)?eu.getRowModel().rows.map(e=>(0,r.jsx)(A.SC,{"data-state":e.getIsSelected()&&"selected",children:e.getVisibleCells().map(e=>(0,r.jsx)(A.pj,{children:(0,k.ie)(e.column.columnDef.cell,e.getContext())},e.id))},e.id)):X&&!er?Array.from({length:5}).map((e,t)=>(0,r.jsx)(A.SC,{children:F.map((e,t)=>(0,r.jsx)(A.pj,{children:(0,r.jsx)(P.O,{className:"h-4 w-full"})},t))},t)):(0,r.jsx)(A.SC,{children:(0,r.jsx)(A.pj,{colSpan:F.length,className:"h-24 text-center",children:"No workflows found."})})})]})}),(0,r.jsxs)("div",{className:"flex items-center justify-between px-2",children:[(0,r.jsxs)("div",{className:"text-muted-foreground flex-1 text-sm",children:[eu.getFilteredSelectedRowModel().rows.length," of"," ",eu.getFilteredRowModel().rows.length," row(s) selected."]}),(0,r.jsxs)("div",{className:"flex items-center space-x-6 lg:space-x-8",children:[(0,r.jsxs)("div",{className:"flex w-[100px] items-center justify-center text-sm font-medium",children:["Page ",H," of ",eu.getPageCount()]}),(0,r.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,r.jsxs)(c.z,{variant:"outline",className:"hidden size-8 p-0 lg:flex",onClick:()=>{eu.setPageIndex(0),J(1),en()},disabled:!(null==et?void 0:null===(u=et.workflow_templatesPagination)||void 0===u?void 0:u.pageInfo.hasPreviousPage),children:[(0,r.jsx)("span",{className:"sr-only",children:"Go to first page"}),(0,r.jsx)(N.kRt,{className:"size-4"})]}),(0,r.jsxs)(c.z,{variant:"outline",className:"size-8 p-0",onClick:()=>{eu.previousPage(),J(H-1),en()},disabled:!(null==et?void 0:null===(m=et.workflow_templatesPagination)||void 0===m?void 0:m.pageInfo.hasPreviousPage),children:[(0,r.jsx)("span",{className:"sr-only",children:"Go to previous page"}),(0,r.jsx)(N.wyc,{className:"size-4"})]}),(0,r.jsxs)(c.z,{variant:"outline",className:"size-8 p-0",onClick:()=>{eu.nextPage(),J(H+1),en()},disabled:!(null==et?void 0:null===(f=et.workflow_templatesPagination)||void 0===f?void 0:f.pageInfo.hasNextPage),children:[(0,r.jsx)("span",{className:"sr-only",children:"Go to next page"}),(0,r.jsx)(N.XCv,{className:"size-4"})]}),(0,r.jsxs)(c.z,{variant:"outline",className:"hidden size-8 p-0 lg:flex",onClick:()=>{eu.setPageIndex(eu.getPageCount()-1),J(eu.getPageCount()),en()},disabled:!(null==et?void 0:null===(h=et.workflow_templatesPagination)||void 0===h?void 0:h.pageInfo.hasNextPage),children:[(0,r.jsx)("span",{className:"sr-only",children:"Go to last page"}),(0,r.jsx)(N.yr4,{className:"size-4"})]})]})]})]})]})}var Z=n(91723),z=n(63639),T=n(65302),M=n(45131),O=n(66070);function E(){let{data:e,loading:t,error:n}=(0,p.aM)(x.kk,{variables:{},pollInterval:2e3,fetchPolicy:"network-only"});if(n)return console.error("Error fetching job statistics:",n),null;let l=(null==e?void 0:e.jobStatistics)||{runningCount:0,erroredCount:0,completedCount:0,failedCount:0,averageDuration:0},a=[{title:"Running Jobs",value:l.runningCount,description:"Currently executing",icon:Z.Z,color:"text-blue-600",bgColor:"bg-blue-100"},{title:"Errored Jobs",value:l.erroredCount,description:"Failed or stuck",icon:z.Z,color:"text-red-600",bgColor:"bg-red-100"},{title:"Completed Jobs",value:l.completedCount,description:"Successfully finished",icon:T.Z,color:"text-green-600",bgColor:"bg-green-100"},{title:"Failed Jobs",value:l.failedCount,description:"Execution failed",icon:M.Z,color:"text-red-500",bgColor:"bg-red-50"}];return(0,r.jsxs)("div",{className:"space-y-4",children:[(0,r.jsx)("div",{className:"grid gap-4 md:grid-cols-2 lg:grid-cols-4",children:a.map(e=>{let n=e.icon;return(0,r.jsxs)(O.Zb,{children:[(0,r.jsxs)(O.Ol,{className:"flex flex-row items-center justify-between space-y-0 pb-2",children:[(0,r.jsx)(O.ll,{className:"text-sm font-medium",children:e.title}),(0,r.jsx)("div",{className:"p-2 rounded-full ".concat(e.bgColor),children:(0,r.jsx)(n,{className:"h-4 w-4 ".concat(e.color)})})]}),(0,r.jsxs)(O.aY,{children:[(0,r.jsx)("div",{className:"text-2xl font-bold",children:t?"...":e.value}),(0,r.jsx)("p",{className:"text-xs text-muted-foreground",children:e.description})]})]},e.title)})}),l.completedCount>0&&(0,r.jsxs)(O.Zb,{children:[(0,r.jsx)(O.Ol,{children:(0,r.jsx)(O.ll,{className:"text-sm font-medium",children:"Performance"})}),(0,r.jsx)(O.aY,{children:(0,r.jsxs)("div",{className:"text-sm text-muted-foreground",children:["Average execution time: ",(0,r.jsx)("span",{className:"font-medium text-foreground",children:t?"...":"".concat(Math.round(l.averageDuration)," seconds")})]})})]})]})}var F=n(13832);let V="force-dynamic";function W(){let{user:e}=(0,l.useContext)(F.S),t=[{accessorKey:"name",header:e=>{let{column:t}=e;return(0,r.jsxs)(c.z,{variant:"ghost",onClick:()=>t.toggleSorting("asc"===t.getIsSorted()),children:["Name",(0,r.jsx)(d,{className:"ml-2 h-4 w-4"})]})},cell:e=>{let{row:t}=e,n=t.original;return(0,r.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,r.jsx)("div",{className:"font-medium",children:n.name}),n.description&&(0,r.jsx)("div",{className:"text-sm text-muted-foreground line-clamp-1",children:n.description})]})}},{accessorKey:"visibility",header:"Visibility",cell:e=>{let{row:t}=e,n=t.original.rights_mode||"private";return(0,r.jsx)(u.C,{variant:"outline",className:(e=>{switch(e){case"private":default:return"bg-gray-100 text-gray-800";case"public":return"bg-green-100 text-green-800";case"users":return"bg-blue-100 text-blue-800";case"roles":return"bg-purple-100 text-purple-800"}})(n),children:(e=>{switch(e){case"private":default:return"Private";case"public":return"Public";case"users":return"Users (".concat(t.original.RBAC.users.length,")");case"roles":return"Roles (".concat(t.original.RBAC.roles.length,")")}})(n)})}},{accessorKey:"createdAt",header:e=>{let{column:t}=e;return(0,r.jsxs)(c.z,{className:"p-0",variant:"ghost",onClick:()=>t.toggleSorting("asc"===t.getIsSorted()),children:["Created",(0,r.jsx)(d,{className:"ml-2 h-4 w-4"})]})},cell:e=>{let{row:t}=e,n=t.getValue("createdAt");return(0,r.jsx)("div",{className:"text-sm",children:(0,f.Q)(new Date(n),{addSuffix:!0})})}},{id:"lastRun",header:"Last Run",cell:e=>{let{row:t}=e;return(0,r.jsx)(b,{workflowId:t.original.id})}},{id:"actions",header:"Actions",cell:t=>{let{row:n}=t;return(0,r.jsx)(w,{workflow:n.original,user:e})}}];return(0,r.jsx)(r.Fragment,{children:(0,r.jsxs)("div",{className:"hidden h-full flex-1 flex-col space-y-8 p-8 md:flex",children:[(0,r.jsx)("div",{className:"flex items-center justify-between space-y-2",children:(0,r.jsxs)("div",{children:[(0,r.jsx)("h2",{className:"text-2xl font-bold tracking-tight",children:"Workflows"}),(0,r.jsx)("p",{className:"text-muted-foreground",children:"Manage your workflow templates and monitor running jobs."})]})}),(0,r.jsx)(E,{}),(0,r.jsx)(I,{columns:t})]})})}},53245:function(e,t,n){"use strict";n.d(t,{d:function(){return f},f:function(){return p}});var r=n(57437),l=n(62869),a=n(94508),s=n(30401),o=n(78867),i=n(2265),d=n(34996),c=n(1479),u=n(9880);let m=(0,i.createContext)({code:""}),f=e=>{let{code:t,language:n,showLineNumbers:l=!1,className:s,children:o,...i}=e;return(0,r.jsx)(m.Provider,{value:{code:t},children:(0,r.jsx)("div",{className:(0,a.cn)("relative w-full overflow-hidden rounded-md border bg-background text-foreground",s),...i,children:(0,r.jsxs)("div",{className:"relative",children:[(0,r.jsx)(d.Z,{className:"overflow-hidden dark:hidden",codeTagProps:{className:"font-mono text-sm"},customStyle:{margin:0,padding:"1rem",fontSize:"0.875rem",background:"hsl(var(--background))",color:"hsl(var(--foreground))"},language:n,lineNumberStyle:{color:"hsl(var(--muted-foreground))",paddingRight:"1rem",minWidth:"2.5rem"},showLineNumbers:l,style:c.Z,children:t}),(0,r.jsx)(d.Z,{className:"hidden overflow-hidden dark:block",codeTagProps:{className:"font-mono text-sm"},customStyle:{margin:0,padding:"1rem",fontSize:"0.875rem",background:"hsl(var(--background))",color:"hsl(var(--foreground))"},language:n,lineNumberStyle:{color:"hsl(var(--muted-foreground))",paddingRight:"1rem",minWidth:"2.5rem"},showLineNumbers:l,style:u.Z,children:t}),o&&(0,r.jsx)("div",{className:"absolute top-2 right-2 flex items-center gap-2",children:o})]})})})},p=e=>{let{onCopy:t,onError:n,timeout:d=2e3,children:c,className:u,...f}=e,[p,g]=(0,i.useState)(!1),{code:x}=(0,i.useContext)(m),h=async()=>{if(!navigator.clipboard.writeText){null==n||n(Error("Clipboard API not available"));return}try{await navigator.clipboard.writeText(x),g(!0),null==t||t(),setTimeout(()=>g(!1),d)}catch(e){null==n||n(e)}},v=p?s.Z:o.Z;return(0,r.jsx)(l.z,{className:(0,a.cn)("shrink-0",u),onClick:h,size:"icon",variant:"ghost",...f,children:null!=c?c:(0,r.jsx)(v,{size:14})})}},35629:function(e,t,n){"use strict";n.d(t,{H:function(){return f}});var r=n(57437),l=n(94508),a=n(2265),s=n(86816),o=n(67245),i=n(58146),d=n(85020),c=n(53245);n(2446);let u=(0,n(86589).Z)(s.UG),m={ol:e=>{let{node:t,children:n,className:a,...s}=e;return(0,r.jsx)("ol",{className:(0,l.cn)("ml-4 list-outside list-decimal",a),...s,children:n})},li:e=>{let{node:t,children:n,className:a,...s}=e;return(0,r.jsx)("li",{className:(0,l.cn)("py-1",a),...s,children:n})},ul:e=>{let{node:t,children:n,className:a,...s}=e;return(0,r.jsx)("ul",{className:(0,l.cn)("ml-4 list-outside list-disc",a),...s,children:n})},hr:e=>{let{node:t,className:n,...a}=e;return(0,r.jsx)("hr",{className:(0,l.cn)("my-6 border-border",n),...a})},strong:e=>{let{node:t,children:n,className:a,...s}=e;return(0,r.jsx)("span",{className:(0,l.cn)("font-semibold",a),...s,children:n})},a:e=>{let{node:t,children:n,className:a,...s}=e;return(0,r.jsx)("a",{className:(0,l.cn)("font-medium text-primary underline",a),rel:"noreferrer",target:"_blank",...s,children:n})},h1:e=>{let{node:t,children:n,className:a,...s}=e;return(0,r.jsx)("h1",{className:(0,l.cn)("mt-6 mb-2 font-semibold text-3xl",a),...s,children:n})},h2:e=>{let{node:t,children:n,className:a,...s}=e;return(0,r.jsx)("h2",{className:(0,l.cn)("mt-6 mb-2 font-semibold text-2xl",a),...s,children:n})},h3:e=>{let{node:t,children:n,className:a,...s}=e;return(0,r.jsx)("h3",{className:(0,l.cn)("mt-6 mb-2 font-semibold text-xl",a),...s,children:n})},h4:e=>{let{node:t,children:n,className:a,...s}=e;return(0,r.jsx)("h4",{className:(0,l.cn)("mt-6 mb-2 font-semibold text-lg",a),...s,children:n})},h5:e=>{let{node:t,children:n,className:a,...s}=e;return(0,r.jsx)("h5",{className:(0,l.cn)("mt-6 mb-2 font-semibold text-base",a),...s,children:n})},h6:e=>{let{node:t,children:n,className:a,...s}=e;return(0,r.jsx)("h6",{className:(0,l.cn)("mt-6 mb-2 font-semibold text-sm",a),...s,children:n})},table:e=>{let{node:t,children:n,className:a,...s}=e;return(0,r.jsx)("div",{className:"my-4 overflow-x-auto",children:(0,r.jsx)("table",{className:(0,l.cn)("w-full border-collapse border border-border",a),...s,children:n})})},thead:e=>{let{node:t,children:n,className:a,...s}=e;return(0,r.jsx)("thead",{className:(0,l.cn)("bg-muted/50",a),...s,children:n})},tbody:e=>{let{node:t,children:n,className:a,...s}=e;return(0,r.jsx)("tbody",{className:(0,l.cn)("divide-y divide-border",a),...s,children:n})},tr:e=>{let{node:t,children:n,className:a,...s}=e;return(0,r.jsx)("tr",{className:(0,l.cn)("border-border border-b",a),...s,children:n})},th:e=>{let{node:t,children:n,className:a,...s}=e;return(0,r.jsx)("th",{className:(0,l.cn)("px-4 py-2 text-left font-semibold text-sm",a),...s,children:n})},td:e=>{let{node:t,children:n,className:a,...s}=e;return(0,r.jsx)("td",{className:(0,l.cn)("px-4 py-2 text-sm",a),...s,children:n})},blockquote:e=>{let{node:t,children:n,className:a,...s}=e;return(0,r.jsx)("blockquote",{className:(0,l.cn)("my-4 border-muted-foreground/30 border-l-4 pl-4 text-muted-foreground italic",a),...s,children:n})},code:e=>{var t,n;let{node:a,className:s,...o}=e;return(null==a?void 0:null===(t=a.position)||void 0===t?void 0:t.start.line)!==(null==a?void 0:null===(n=a.position)||void 0===n?void 0:n.end.line)?(0,r.jsx)("code",{className:s,...o}):(0,r.jsx)("code",{className:(0,l.cn)("rounded bg-muted px-1.5 py-0.5 font-mono text-sm",s),...o})},pre:e=>{var t;let{node:n,className:s,children:o}=e,i="javascript";"string"==typeof(null==n?void 0:null===(t=n.properties)||void 0===t?void 0:t.className)&&(i=n.properties.className.replace("language-",""));let d="";return(0,a.isValidElement)(o)&&o.props&&"string"==typeof o.props.children?d=o.props.children:"string"==typeof o&&(d=o),(0,r.jsx)(c.d,{className:(0,l.cn)("my-4 h-auto",s),code:d,language:i,children:(0,r.jsx)(c.f,{onCopy:()=>console.log("Copied code to clipboard"),onError:()=>console.error("Failed to copy code to clipboard")})})}},f=(0,a.memo)(e=>{let{className:t,options:n,children:a,allowedImagePrefixes:s,allowedLinkPrefixes:c,defaultOrigin:f,parseIncompleteMarkdown:p=!0,...g}=e,x="string"==typeof a&&p?function(e){if(!e||"string"!=typeof e)return e;let t=e,n=t.match(/(!?\[)([^\]]*?)$/);if(n){let e=t.lastIndexOf(n[1]);t=t.substring(0,e)}if(t.match(/(\*\*)([^*]*?)$/)&&(t.match(/\*\*/g)||[]).length%2==1&&(t="".concat(t,"**")),t.match(/(__)([^_]*?)$/)&&(t.match(/__/g)||[]).length%2==1&&(t="".concat(t,"__")),t.match(/(\*)([^*]*?)$/)&&t.split("").reduce((e,n,r)=>{if("*"===n){let n=t[r-1],l=t[r+1];if("*"!==n&&"*"!==l)return e+1}return e},0)%2==1&&(t="".concat(t,"*")),t.match(/(_)([^_]*?)$/)&&t.split("").reduce((e,n,r)=>{if("_"===n){let n=t[r-1],l=t[r+1];if("_"!==n&&"_"!==l)return e+1}return e},0)%2==1&&(t="".concat(t,"_")),t.match(/(`)([^`]*?)$/)&&(t.includes("```"),(t.match(/```[\s\S]*?```/g)||[]).length,(t.match(/```/g)||[]).length%2!=1)){let e=0;for(let n=0;n<t.length;n++)if("`"===t[n]){let r="```"===t.substring(n,n+3),l=n>0&&"```"===t.substring(n-1,n+2),a=n>1&&"```"===t.substring(n-2,n+1);!(r||l||a)&&e++}e%2==1&&(t="".concat(t,"`"))}return t.match(/(~~)([^~]*?)$/)&&(t.match(/~~/g)||[]).length%2==1&&(t="".concat(t,"~~")),t}(a):a;return(0,r.jsx)("div",{className:(0,l.cn)("size-full [&>*:first-child]:mt-0 [&>*:last-child]:mb-0",t),...g,children:(0,r.jsx)(u,{allowedImagePrefixes:null!=s?s:["*"],allowedLinkPrefixes:null!=c?c:["*"],components:m,defaultOrigin:f,rehypePlugins:[o.Z],remarkPlugins:[i.Z,d.Z],...n,children:x})})},(e,t)=>e.children===t.children);f.displayName="Response"},37099:function(e,t,n){"use strict";n.d(t,{OL:function(){return x},_T:function(){return u},aR:function(){return i},f$:function(){return p},fY:function(){return m},le:function(){return h},xo:function(){return f},yT:function(){return g}});var r=n(57437),l=n(23619),a=n(2265),s=n(62869),o=n(94508);let i=l.fC;l.xz;let d=l.h_,c=a.forwardRef((e,t)=>{let{className:n,...a}=e;return(0,r.jsx)(l.aV,{className:(0,o.cn)("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",n),...a,ref:t})});c.displayName=l.aV.displayName;let u=a.forwardRef((e,t)=>{let{className:n,...a}=e;return(0,r.jsxs)(d,{children:[(0,r.jsx)(c,{}),(0,r.jsx)(l.VY,{ref:t,className:(0,o.cn)("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",n),...a})]})});u.displayName=l.VY.displayName;let m=e=>{let{className:t,...n}=e;return(0,r.jsx)("div",{className:(0,o.cn)("flex flex-col space-y-2 text-center sm:text-left",t),...n})};m.displayName="AlertDialogHeader";let f=e=>{let{className:t,...n}=e;return(0,r.jsx)("div",{className:(0,o.cn)("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",t),...n})};f.displayName="AlertDialogFooter";let p=a.forwardRef((e,t)=>{let{className:n,...a}=e;return(0,r.jsx)(l.Dx,{ref:t,className:(0,o.cn)("text-lg font-semibold",n),...a})});p.displayName=l.Dx.displayName;let g=a.forwardRef((e,t)=>{let{className:n,...a}=e;return(0,r.jsx)(l.dk,{ref:t,className:(0,o.cn)("text-sm text-muted-foreground",n),...a})});g.displayName=l.dk.displayName;let x=a.forwardRef((e,t)=>{let{className:n,...a}=e;return(0,r.jsx)(l.aU,{ref:t,className:(0,o.cn)((0,s.d)(),n),...a})});x.displayName=l.aU.displayName;let h=a.forwardRef((e,t)=>{let{className:n,...a}=e;return(0,r.jsx)(l.$j,{ref:t,className:(0,o.cn)((0,s.d)({variant:"outline"}),"mt-2 sm:mt-0",n),...a})});h.displayName=l.$j.displayName},73578:function(e,t,n){"use strict";n.d(t,{RM:function(){return i},Rn:function(){return m},SC:function(){return d},iA:function(){return s},pj:function(){return u},ss:function(){return c},xD:function(){return o}});var r=n(57437),l=n(2265),a=n(94508);let s=l.forwardRef((e,t)=>{let{className:n,...l}=e;return(0,r.jsx)("div",{className:"relative w-full overflow-auto",children:(0,r.jsx)("table",{ref:t,className:(0,a.cn)("w-full caption-bottom text-sm",n),...l})})});s.displayName="Table";let o=l.forwardRef((e,t)=>{let{className:n,...l}=e;return(0,r.jsx)("thead",{ref:t,className:(0,a.cn)("[&_tr]:border-b",n),...l})});o.displayName="TableHeader";let i=l.forwardRef((e,t)=>{let{className:n,...l}=e;return(0,r.jsx)("tbody",{ref:t,className:(0,a.cn)("[&_tr:last-child]:border-0",n),...l})});i.displayName="TableBody",l.forwardRef((e,t)=>{let{className:n,...l}=e;return(0,r.jsx)("tfoot",{ref:t,className:(0,a.cn)("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",n),...l})}).displayName="TableFooter";let d=l.forwardRef((e,t)=>{let{className:n,...l}=e;return(0,r.jsx)("tr",{ref:t,className:(0,a.cn)("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",n),...l})});d.displayName="TableRow";let c=l.forwardRef((e,t)=>{let{className:n,...l}=e;return(0,r.jsx)("th",{ref:t,className:(0,a.cn)("h-12 px-4 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0 [&:has([role=checkbox])]:w-[40px]",n),...l})});c.displayName="TableHead";let u=l.forwardRef((e,t)=>{let{className:n,...l}=e;return(0,r.jsx)("td",{ref:t,className:(0,a.cn)("p-4 align-middle [&:has([role=checkbox])]:pr-0 [&:has([role=checkbox])]:w-[40px]",n),...l})});u.displayName="TableCell";let m=l.forwardRef((e,t)=>{let{className:n,...l}=e;return(0,r.jsx)("caption",{ref:t,className:(0,a.cn)("mt-4 text-sm text-muted-foreground",n),...l})});m.displayName="TableCaption"},12339:function(e,t,n){"use strict";n.d(t,{SP:function(){return d},dr:function(){return i},mQ:function(){return o},nU:function(){return c}});var r=n(57437),l=n(20271),a=n(2265),s=n(94508);let o=l.fC,i=a.forwardRef((e,t)=>{let{className:n,...a}=e;return(0,r.jsx)(l.aV,{ref:t,className:(0,s.cn)("inline-flex h-10 items-center justify-center rounded-md bg-muted p-1 text-muted-foreground",n),...a})});i.displayName=l.aV.displayName;let d=a.forwardRef((e,t)=>{let{className:n,...a}=e;return(0,r.jsx)(l.xz,{ref:t,className:(0,s.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",n),...a})});d.displayName=l.xz.displayName;let c=a.forwardRef((e,t)=>{let{className:n,...a}=e;return(0,r.jsx)(l.VY,{ref:t,className:(0,s.cn)("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",n),...a})});c.displayName=l.VY.displayName},77992:function(e,t,n){"use strict";n.d(t,{Am:function(){return u},pm:function(){return m}});var r=n(2265);let l=0,a=new Map,s=e=>{if(a.has(e))return;let t=setTimeout(()=>{a.delete(e),c({type:"REMOVE_TOAST",toastId:e})},1e6);a.set(e,t)},o=(e,t)=>{switch(t.type){case"ADD_TOAST":return{...e,toasts:[t.toast,...e.toasts].slice(0,1)};case"UPDATE_TOAST":return{...e,toasts:e.toasts.map(e=>e.id===t.toast.id?{...e,...t.toast}:e)};case"DISMISS_TOAST":{let{toastId:n}=t;return n?s(n):e.toasts.forEach(e=>{s(e.id)}),{...e,toasts:e.toasts.map(e=>e.id===n||void 0===n?{...e,open:!1}:e)}}case"REMOVE_TOAST":if(void 0===t.toastId)return{...e,toasts:[]};return{...e,toasts:e.toasts.filter(e=>e.id!==t.toastId)}}},i=[],d={toasts:[]};function c(e){d=o(d,e),i.forEach(e=>{e(d)})}function u(e){let{...t}=e,n=(l=(l+1)%Number.MAX_SAFE_INTEGER).toString(),r=()=>c({type:"DISMISS_TOAST",toastId:n});return c({type:"ADD_TOAST",toast:{...t,id:n,open:!0,onOpenChange:e=>{e||r()}}}),{id:n,dismiss:r,update:e=>c({type:"UPDATE_TOAST",toast:{...e,id:n}})}}function m(){let[e,t]=r.useState(d);return r.useEffect(()=>(i.push(t),()=>{let e=i.indexOf(t);e>-1&&i.splice(e,1)}),[e]),{...e,toast:u,dismiss:e=>c({type:"DISMISS_TOAST",toastId:e})}}},63639:function(e,t,n){"use strict";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"}]])},65302:function(e,t,n){"use strict";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){"use strict";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){"use strict";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){"use strict";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){"use strict";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){"use strict";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){"use strict";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){"use strict";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){"use strict";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){"use strict";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){"use strict";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){"use strict";n.d(t,{aU:function(){return ek},$j:function(){return eC},VY:function(){return eN},dk:function(){return eS},aV:function(){return ew},h_:function(){return eb},fC:function(){return ej},Dx:function(){return eR},xz:function(){return ey}});var r=n(2265),l=n(73966),a=n(98575),s=n(6741),o=n(99255),i=n(80886),d=n(22308),c=n(99103),u=n(83832),m=n(71599),f=n(66840),p=n(86097),g=n(60703),x=n(5478),h=n(37053),v=n(57437),j="Dialog",[y,b]=(0,l.b)(j),[w,N]=y(j),k=e=>{let{__scopeDialog:t,children:n,open:l,defaultOpen:a,onOpenChange:s,modal:d=!0}=e,c=r.useRef(null),u=r.useRef(null),[m,f]=(0,i.T)({prop:l,defaultProp:null!=a&&a,onChange:s,caller:j});return(0,v.jsx)(w,{scope:t,triggerRef:c,contentRef:u,contentId:(0,o.M)(),titleId:(0,o.M)(),descriptionId:(0,o.M)(),open:m,onOpenChange:f,onOpenToggle:r.useCallback(()=>f(e=>!e),[f]),modal:d,children:n})};k.displayName=j;var C="DialogTrigger",R=r.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,l=N(C,n),o=(0,a.e)(t,l.triggerRef);return(0,v.jsx)(f.WV.button,{type:"button","aria-haspopup":"dialog","aria-expanded":l.open,"aria-controls":l.contentId,"data-state":U(l.open),...r,ref:o,onClick:(0,s.M)(e.onClick,l.onOpenToggle)})});R.displayName=C;var S="DialogPortal",[D,_]=y(S,{forceMount:void 0}),P=e=>{let{__scopeDialog:t,forceMount:n,children:l,container:a}=e,s=N(S,t);return(0,v.jsx)(D,{scope:t,forceMount:n,children:r.Children.map(l,e=>(0,v.jsx)(m.z,{present:n||s.open,children:(0,v.jsx)(u.h,{asChild:!0,container:a,children:e})}))})};P.displayName=S;var A="DialogOverlay",I=r.forwardRef((e,t)=>{let n=_(A,e.__scopeDialog),{forceMount:r=n.forceMount,...l}=e,a=N(A,e.__scopeDialog);return a.modal?(0,v.jsx)(m.z,{present:r||a.open,children:(0,v.jsx)(z,{...l,ref:t})}):null});I.displayName=A;var Z=(0,h.Z8)("DialogOverlay.RemoveScroll"),z=r.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,l=N(A,n);return(0,v.jsx)(g.Z,{as:Z,allowPinchZoom:!0,shards:[l.contentRef],children:(0,v.jsx)(f.WV.div,{"data-state":U(l.open),...r,ref:t,style:{pointerEvents:"auto",...r.style}})})}),T="DialogContent",M=r.forwardRef((e,t)=>{let n=_(T,e.__scopeDialog),{forceMount:r=n.forceMount,...l}=e,a=N(T,e.__scopeDialog);return(0,v.jsx)(m.z,{present:r||a.open,children:a.modal?(0,v.jsx)(O,{...l,ref:t}):(0,v.jsx)(E,{...l,ref:t})})});M.displayName=T;var O=r.forwardRef((e,t)=>{let n=N(T,e.__scopeDialog),l=r.useRef(null),o=(0,a.e)(t,n.contentRef,l);return r.useEffect(()=>{let e=l.current;if(e)return(0,x.Ry)(e)},[]),(0,v.jsx)(F,{...e,ref:o,trapFocus:n.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:(0,s.M)(e.onCloseAutoFocus,e=>{var t;e.preventDefault(),null===(t=n.triggerRef.current)||void 0===t||t.focus()}),onPointerDownOutside:(0,s.M)(e.onPointerDownOutside,e=>{let t=e.detail.originalEvent,n=0===t.button&&!0===t.ctrlKey;(2===t.button||n)&&e.preventDefault()}),onFocusOutside:(0,s.M)(e.onFocusOutside,e=>e.preventDefault())})}),E=r.forwardRef((e,t)=>{let n=N(T,e.__scopeDialog),l=r.useRef(!1),a=r.useRef(!1);return(0,v.jsx)(F,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:t=>{var r,s;null===(r=e.onCloseAutoFocus)||void 0===r||r.call(e,t),t.defaultPrevented||(l.current||null===(s=n.triggerRef.current)||void 0===s||s.focus(),t.preventDefault()),l.current=!1,a.current=!1},onInteractOutside:t=>{var r,s;null===(r=e.onInteractOutside)||void 0===r||r.call(e,t),t.defaultPrevented||(l.current=!0,"pointerdown"!==t.detail.originalEvent.type||(a.current=!0));let o=t.target;(null===(s=n.triggerRef.current)||void 0===s?void 0:s.contains(o))&&t.preventDefault(),"focusin"===t.detail.originalEvent.type&&a.current&&t.preventDefault()}})}),F=r.forwardRef((e,t)=>{let{__scopeDialog:n,trapFocus:l,onOpenAutoFocus:s,onCloseAutoFocus:o,...i}=e,u=N(T,n),m=r.useRef(null),f=(0,a.e)(t,m);return(0,p.EW)(),(0,v.jsxs)(v.Fragment,{children:[(0,v.jsx)(c.M,{asChild:!0,loop:!0,trapped:l,onMountAutoFocus:s,onUnmountAutoFocus:o,children:(0,v.jsx)(d.XB,{role:"dialog",id:u.contentId,"aria-describedby":u.descriptionId,"aria-labelledby":u.titleId,"data-state":U(u.open),...i,ref:f,onDismiss:()=>u.onOpenChange(!1)})}),(0,v.jsxs)(v.Fragment,{children:[(0,v.jsx)(J,{titleId:u.titleId}),(0,v.jsx)(Q,{contentRef:m,descriptionId:u.descriptionId})]})]})}),V="DialogTitle",W=r.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,l=N(V,n);return(0,v.jsx)(f.WV.h2,{id:l.titleId,...r,ref:t})});W.displayName=V;var $="DialogDescription",B=r.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,l=N($,n);return(0,v.jsx)(f.WV.p,{id:l.descriptionId,...r,ref:t})});B.displayName=$;var q="DialogClose",G=r.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,l=N(q,n);return(0,v.jsx)(f.WV.button,{type:"button",...r,ref:t,onClick:(0,s.M)(e.onClick,()=>l.onOpenChange(!1))})});function U(e){return e?"open":"closed"}G.displayName=q;var L="DialogTitleWarning",[Y,H]=(0,l.k)(L,{contentName:T,titleName:V,docsSlug:"dialog"}),J=e=>{let{titleId:t}=e,n=H(L),l="`".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(l)},[l,t]),null},Q=e=>{let{contentRef:t,descriptionId:n}=e,l=H("DialogDescriptionWarning"),a="Warning: Missing `Description` or `aria-describedby={undefined}` for {".concat(l.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},K="AlertDialog",[X,ee]=(0,l.b)(K,[b]),et=b(),en=e=>{let{__scopeAlertDialog:t,...n}=e,r=et(t);return(0,v.jsx)(k,{...r,...n,modal:!0})};en.displayName=K;var er=r.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,l=et(n);return(0,v.jsx)(R,{...l,...r,ref:t})});er.displayName="AlertDialogTrigger";var el=e=>{let{__scopeAlertDialog:t,...n}=e,r=et(t);return(0,v.jsx)(P,{...r,...n})};el.displayName="AlertDialogPortal";var ea=r.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,l=et(n);return(0,v.jsx)(I,{...l,...r,ref:t})});ea.displayName="AlertDialogOverlay";var es="AlertDialogContent",[eo,ei]=X(es),ed=(0,h.sA)("AlertDialogContent"),ec=r.forwardRef((e,t)=>{let{__scopeAlertDialog:n,children:l,...o}=e,i=et(n),d=r.useRef(null),c=(0,a.e)(t,d),u=r.useRef(null);return(0,v.jsx)(Y,{contentName:es,titleName:eu,docsSlug:"alert-dialog",children:(0,v.jsx)(eo,{scope:n,cancelRef:u,children:(0,v.jsxs)(M,{role:"alertdialog",...i,...o,ref:c,onOpenAutoFocus:(0,s.M)(o.onOpenAutoFocus,e=>{var t;e.preventDefault(),null===(t=u.current)||void 0===t||t.focus({preventScroll:!0})}),onPointerDownOutside:e=>e.preventDefault(),onInteractOutside:e=>e.preventDefault(),children:[(0,v.jsx)(ed,{children:l}),(0,v.jsx)(ev,{contentRef:d})]})})})});ec.displayName=es;var eu="AlertDialogTitle",em=r.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,l=et(n);return(0,v.jsx)(W,{...l,...r,ref:t})});em.displayName=eu;var ef="AlertDialogDescription",ep=r.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,l=et(n);return(0,v.jsx)(B,{...l,...r,ref:t})});ep.displayName=ef;var eg=r.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,l=et(n);return(0,v.jsx)(G,{...l,...r,ref:t})});eg.displayName="AlertDialogAction";var ex="AlertDialogCancel",eh=r.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,{cancelRef:l}=ei(ex,n),s=et(n),o=(0,a.e)(t,l);return(0,v.jsx)(G,{...s,...r,ref:o})});eh.displayName=ex;var ev=e=>{let{contentRef:t}=e,n="`".concat(es,"` requires a description for the component to be accessible for screen reader users.\n\nYou can add a description to the `").concat(es,"` by passing a `").concat(ef,"` 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(es,"`. 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},ej=en,ey=er,eb=el,ew=ea,eN=ec,ek=eg,eC=eh,eR=em,eS=ep}},function(e){e.O(0,[329,8310,3954,9851,7629,7093,6148,847,1942,7648,7823,8068,5799,605,4567,1206,5338,3825,1785,5110,3171,1425,1594,7598,6373,3832,8030,1957,2971,2117,1744],function(){return e(e.s=33329)}),_N_E=e.O()}]);
2
- //# sourceMappingURL=page-47dedb88cec600d5.js.map
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1929,3619],{33329:function(e,t,n){Promise.resolve().then(n.bind(n,99630))},99630:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return W},dynamic:function(){return V}});var r=n(57437),l=n(2265),s=n(15868),a=n(42208),o=n(33276),i=n(18930);let d=(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"}]]);var c=n(62869),u=n(35974),m=n(27699),f=n(7598),p=n(7211),g=n(12199),x=n(27689),h=n(37099),v=n(95186),j=n(26815),y=n(77992);function b(e){let{workflowId:t}=e,{lastRunAt:n,lastRunStatus:l}=function(e){var t,n;let{data:r}=(0,p.aM)(x.Jq,{variables:{page:1,limit:1,filters:[{workflow:{eq:e}}],sort:{field:"createdAt",direction:"DESC"}},pollInterval:5e3}),l=null==r?void 0:null===(n=r.jobsPagination)||void 0===n?void 0:null===(t=n.items)||void 0===t?void 0:t[0];return{lastRunAt:null==l?void 0:l.createdAt,lastRunStatus:null==l?void 0:l.status}}(t);return n?(0,r.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,r.jsx)("div",{className:"text-sm",children:(0,f.Q)(new Date(n),{addSuffix:!0})}),(0,r.jsx)(u.C,{variant:"outline",className:(e=>{switch(e){case"completed":return"bg-green-100 text-green-800";case"failed":case"stuck":return"bg-red-100 text-red-800";case"active":case"waiting":case"delayed":case"paused":return"bg-blue-100 text-blue-800";default:return"bg-gray-100 text-gray-800"}})(l),children:l})]}):(0,r.jsx)("span",{className:"text-muted-foreground text-sm",children:"Never run"})}function w(e){var t;let{workflow:n,user:d}=e,[u,f]=(0,l.useState)(!1),[p,b]=(0,l.useState)(!1),[w,N]=(0,l.useState)(""),{toast:k}=(0,y.pm)(),C=(()=>{if(n.owner===d.id)return!0;if("public"===n.rights_mode)return!1;if("users"===n.rights_mode&&n.RBAC.users){let e=n.RBAC.users.find(e=>e.id===d.id.toString());return(null==e?void 0:e.rights)==="write"}if("roles"===n.rights_mode&&n.RBAC.roles&&d.role){let e=n.RBAC.roles.find(e=>e.id===d.role);return(null==e?void 0:e.rights)==="write"}return!1})(),[R]=(0,g.D)(x.$6,{refetchQueries:[x.Zy,"GetWorkflowTemplates"]}),S=async()=>{if(w!==n.name){k({title:"Error",description:"Please type the workflow name exactly to confirm deletion.",variant:"destructive"});return}try{await R({variables:{id:n.id}}),k({title:"Workflow deleted",description:'"'.concat(n.name,'" has been successfully deleted.')}),b(!1),N("")}catch(e){k({title:"Error",description:"Failed to delete the workflow. Please try again.",variant:"destructive"})}},D=(null===(t=n.steps_json)||void 0===t?void 0:t.map((e,t)=>({id:e.id||"msg_".concat(t),role:"user"===e.type?"user":"assistant"===e.type?"assistant":"system",content:e.content||e.contentExample||"Tool: ".concat(e.toolName),..."tool"===e.type&&{parts:[{type:"tool-invocation",toolInvocation:{toolName:e.toolName}}]}})))||[];return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)(c.z,{variant:"ghost",size:"sm",onClick:()=>f(!0),children:C?(0,r.jsx)(s.Z,{className:"h-4 w-4"}):(0,r.jsx)(a.Z,{className:"h-4 w-4"})}),(0,r.jsx)(c.z,{variant:"ghost",size:"sm",onClick:()=>{console.log("Run workflow:",n.id)},children:(0,r.jsx)(o.Z,{className:"h-4 w-4"})}),C&&(0,r.jsx)(c.z,{variant:"ghost",size:"sm",onClick:()=>b(!0),className:"text-red-600 hover:text-red-700 hover:bg-red-50",children:(0,r.jsx)(i.Z,{className:"h-4 w-4"})})]}),(0,r.jsx)(m.x,{isOpen:u,onClose:()=>f(!1),messages:D,sessionTitle:n.name,existingWorkflow:{id:n.id,name:n.name,description:n.description,rights_mode:n.rights_mode,RBAC:n.RBAC,variables:n.variables,steps_json:n.steps_json},isReadOnly:!C}),(0,r.jsx)(h.aR,{open:p,onOpenChange:b,children:(0,r.jsxs)(h._T,{children:[(0,r.jsxs)(h.fY,{children:[(0,r.jsx)(h.f$,{children:"Delete Workflow"}),(0,r.jsxs)(h.yT,{children:['This action will permanently delete the workflow "',n.name,'" and cannot be undone.',(0,r.jsx)("br",{}),(0,r.jsx)("br",{}),"To confirm, please type the workflow name below:"]})]}),(0,r.jsxs)("div",{className:"py-4",children:[(0,r.jsx)(j._,{htmlFor:"delete-confirmation",className:"text-sm font-medium",children:"Workflow name"}),(0,r.jsx)(v.I,{id:"delete-confirmation",value:w,onChange:e=>N(e.target.value),placeholder:n.name,className:"mt-2"})]}),(0,r.jsxs)(h.xo,{children:[(0,r.jsx)(c.z,{variant:"outline",onClick:()=>{b(!1),N("")},children:"Cancel"}),(0,r.jsx)(c.z,{variant:"destructive",onClick:S,disabled:w!==n.name,children:"Delete Workflow"})]})]})})]})}var N=n(20653),k=n(71594),C=n(24525),R=n(70085),S=n(84190);function D(e){let{table:t}=e;return(0,r.jsxs)(S.h_,{modal:!1,children:[(0,r.jsx)(R.$F,{asChild:!0,children:(0,r.jsxs)(c.z,{variant:"outline",size:"sm",className:"ml-auto hidden h-8 lg:flex",children:[(0,r.jsx)(N.hsZ,{className:"mr-2 size-4"}),"View"]})}),(0,r.jsxs)(S.AW,{align:"end",className:"w-[150px]",children:[(0,r.jsx)(S.Ju,{children:"Toggle columns"}),(0,r.jsx)(S.VD,{}),t.getAllColumns().filter(e=>void 0!==e.accessorFn&&e.getCanHide()).map(e=>(0,r.jsx)(S.bO,{className:"capitalize",checked:e.getIsVisible(),onCheckedChange:t=>e.toggleVisibility(!!t),children:e.id},e.id))]})]})}var _=n(10492),P=n(93022),A=n(73578);function I(e){var t,n,s,a,o,d,u,m,f,h,j,b,w,R,S,I,z,T,Z,M;let O,E,{columns:F}=e,{toast:V}=(0,y.pm)(),[W,$]=l.useState({}),[B,q]=l.useState({}),[G,U]=l.useState([]),[L,Y]=(0,l.useState)([]),[H,J]=(0,l.useState)(1),[Q,K]=l.useState([]),{loading:X,error:ee,data:et,refetch:en,previousData:er}=(0,p.aM)(x.Zy,{fetchPolicy:"no-cache",nextFetchPolicy:"network-only",variables:{page:H,limit:10,filters:L},pollInterval:3e4}),el=l.useMemo(()=>[],[]),{limit:es,onPaginationChange:ea,skip:eo,pagination:ei}=function(){let[e,t]=(0,l.useState)({pageSize:10,pageIndex:0}),{pageSize:n,pageIndex:r}=e;return{limit:n,onPaginationChange:t,pagination:e,skip:n*r}}(),[ed,ec]=(0,g.D)(x.$6,{refetchQueries:[x.Zy,"GetWorkflowTemplates"]});X&&(null==er?void 0:null===(t=er.workflow_templatesPagination)||void 0===t?void 0:t.items)?(O=null==er?void 0:null===(j=er.workflow_templatesPagination)||void 0===j?void 0:j.items,E=null==er?void 0:null===(w=er.workflow_templatesPagination)||void 0===w?void 0:null===(b=w.pageInfo)||void 0===b?void 0:b.pageCount):(null==et?void 0:null===(n=et.workflow_templatesPagination)||void 0===n?void 0:n.items)?(O=null==et?void 0:null===(R=et.workflow_templatesPagination)||void 0===R?void 0:R.items,E=null==et?void 0:null===(I=et.workflow_templatesPagination)||void 0===I?void 0:null===(S=I.pageInfo)||void 0===S?void 0:S.pageCount):(null==er?void 0:null===(s=er.workflow_templatesPagination)||void 0===s?void 0:s.items)&&(O=null==er?void 0:null===(z=er.workflow_templatesPagination)||void 0===z?void 0:z.items,E=null==er?void 0:null===(Z=er.workflow_templatesPagination)||void 0===Z?void 0:null===(T=Z.pageInfo)||void 0===T?void 0:T.pageCount);let eu=(0,k.b7)({data:null!=O?O:el,pageCount:null!=E?E:-1,columns:F,state:{sorting:Q,columnVisibility:B,rowSelection:W,columnFilters:G},enableRowSelection:!0,onRowSelectionChange:$,onSortingChange:K,onColumnFiltersChange:U,onColumnVisibilityChange:q,getCoreRowModel:(0,C.sC)(),getFilteredRowModel:(0,C.vL)(),getPaginationRowModel:(0,C.G_)(),getSortedRowModel:(0,C.tj)(),getFacetedRowModel:(0,C.o6)(),getFacetedUniqueValues:(0,C.JG)(),manualPagination:!0,onPaginationChange:ea}),em=e=>{let t=[...L],n=t.find(e=>e.name);(null==n?void 0:n.name)?n.name.contains=e:t.push({name:{contains:e}}),Y(t),en()},ef=L.length>0;return(0,r.jsxs)("div",{className:"space-y-4",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between",children:[(0,r.jsxs)("div",{className:"flex flex-1 items-center space-x-2",children:[(0,r.jsx)(v.I,{placeholder:"Search workflows...",value:null!==(M=null==L?void 0:null===(o=L.find(e=>e.name))||void 0===o?void 0:null===(a=o.name)||void 0===a?void 0:a.contains)&&void 0!==M?M:"",onChange:e=>{em(e.target.value)},className:"w-[150px] lg:w-[250px]"}),eu.getIsSomeRowsSelected()||eu.getIsAllRowsSelected()?(0,r.jsx)("div",{className:"flex gap-x-2",children:(0,r.jsxs)(c.z,{onClick:()=>{let e=[];eu.getSelectedRowModel().rows.forEach(t=>{e.push(ed({variables:{id:t.original.id}}))}),Promise.all(e).then(()=>{eu.resetRowSelection(),V({title:"Workflows deleted",description:"Successfully deleted "+e.length+" workflow(s)."})}).catch(()=>{V({title:"Error",description:"Failed to delete some workflows. Please try again.",variant:"destructive"})})},variant:"secondary",disabled:ec.loading,children:[ec.loading?(0,r.jsx)(_.g,{}):(0,r.jsx)(i.Z,{className:"size-4"}),(0,r.jsx)("span",{className:"ml-2",children:"Delete selected"})]})}):null,ef&&(0,r.jsxs)(c.z,{variant:"ghost",onClick:()=>{let e=[...L],t=e.find(e=>e.name);t&&e.splice(e.indexOf(t),1),Y(e),en()},children:["Reset",(0,r.jsx)(N.Pxu,{className:"ml-2 size-4"})]})]}),(0,r.jsx)(D,{table:eu})]}),(0,r.jsx)("div",{className:"rounded-md border",children:(0,r.jsxs)(A.iA,{children:[(0,r.jsx)(A.xD,{children:eu.getHeaderGroups().map(e=>(0,r.jsx)(A.SC,{children:e.headers.map(e=>(0,r.jsx)(A.ss,{colSpan:e.colSpan,children:e.isPlaceholder?null:(0,k.ie)(e.column.columnDef.header,e.getContext())},e.id))},e.id))}),(0,r.jsx)(A.RM,{children:(null===(d=eu.getRowModel().rows)||void 0===d?void 0:d.length)?eu.getRowModel().rows.map(e=>(0,r.jsx)(A.SC,{"data-state":e.getIsSelected()&&"selected",children:e.getVisibleCells().map(e=>(0,r.jsx)(A.pj,{children:(0,k.ie)(e.column.columnDef.cell,e.getContext())},e.id))},e.id)):X&&!er?Array.from({length:5}).map((e,t)=>(0,r.jsx)(A.SC,{children:F.map((e,t)=>(0,r.jsx)(A.pj,{children:(0,r.jsx)(P.O,{className:"h-4 w-full"})},t))},t)):(0,r.jsx)(A.SC,{children:(0,r.jsx)(A.pj,{colSpan:F.length,className:"h-24 text-center",children:"No workflows found."})})})]})}),(0,r.jsxs)("div",{className:"flex items-center justify-between px-2",children:[(0,r.jsxs)("div",{className:"text-muted-foreground flex-1 text-sm",children:[eu.getFilteredSelectedRowModel().rows.length," of"," ",eu.getFilteredRowModel().rows.length," row(s) selected."]}),(0,r.jsxs)("div",{className:"flex items-center space-x-6 lg:space-x-8",children:[(0,r.jsxs)("div",{className:"flex w-[100px] items-center justify-center text-sm font-medium",children:["Page ",H," of ",eu.getPageCount()]}),(0,r.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,r.jsxs)(c.z,{variant:"outline",className:"hidden size-8 p-0 lg:flex",onClick:()=>{eu.setPageIndex(0),J(1),en()},disabled:!(null==et?void 0:null===(u=et.workflow_templatesPagination)||void 0===u?void 0:u.pageInfo.hasPreviousPage),children:[(0,r.jsx)("span",{className:"sr-only",children:"Go to first page"}),(0,r.jsx)(N.kRt,{className:"size-4"})]}),(0,r.jsxs)(c.z,{variant:"outline",className:"size-8 p-0",onClick:()=>{eu.previousPage(),J(H-1),en()},disabled:!(null==et?void 0:null===(m=et.workflow_templatesPagination)||void 0===m?void 0:m.pageInfo.hasPreviousPage),children:[(0,r.jsx)("span",{className:"sr-only",children:"Go to previous page"}),(0,r.jsx)(N.wyc,{className:"size-4"})]}),(0,r.jsxs)(c.z,{variant:"outline",className:"size-8 p-0",onClick:()=>{eu.nextPage(),J(H+1),en()},disabled:!(null==et?void 0:null===(f=et.workflow_templatesPagination)||void 0===f?void 0:f.pageInfo.hasNextPage),children:[(0,r.jsx)("span",{className:"sr-only",children:"Go to next page"}),(0,r.jsx)(N.XCv,{className:"size-4"})]}),(0,r.jsxs)(c.z,{variant:"outline",className:"hidden size-8 p-0 lg:flex",onClick:()=>{eu.setPageIndex(eu.getPageCount()-1),J(eu.getPageCount()),en()},disabled:!(null==et?void 0:null===(h=et.workflow_templatesPagination)||void 0===h?void 0:h.pageInfo.hasNextPage),children:[(0,r.jsx)("span",{className:"sr-only",children:"Go to last page"}),(0,r.jsx)(N.yr4,{className:"size-4"})]})]})]})]})]})}var z=n(91723),T=n(63639),Z=n(65302),M=n(45131),O=n(66070);function E(){let{data:e,loading:t,error:n}=(0,p.aM)(x.kk,{variables:{},pollInterval:2e3,fetchPolicy:"network-only"});if(n)return console.error("Error fetching job statistics:",n),null;let l=(null==e?void 0:e.jobStatistics)||{runningCount:0,erroredCount:0,completedCount:0,failedCount:0,averageDuration:0},s=[{title:"Running Jobs",value:l.runningCount,description:"Currently executing",icon:z.Z,color:"text-blue-600",bgColor:"bg-blue-100"},{title:"Errored Jobs",value:l.erroredCount,description:"Failed or stuck",icon:T.Z,color:"text-red-600",bgColor:"bg-red-100"},{title:"Completed Jobs",value:l.completedCount,description:"Successfully finished",icon:Z.Z,color:"text-green-600",bgColor:"bg-green-100"},{title:"Failed Jobs",value:l.failedCount,description:"Execution failed",icon:M.Z,color:"text-red-500",bgColor:"bg-red-50"}];return(0,r.jsxs)("div",{className:"space-y-4",children:[(0,r.jsx)("div",{className:"grid gap-4 md:grid-cols-2 lg:grid-cols-4",children:s.map(e=>{let n=e.icon;return(0,r.jsxs)(O.Zb,{children:[(0,r.jsxs)(O.Ol,{className:"flex flex-row items-center justify-between space-y-0 pb-2",children:[(0,r.jsx)(O.ll,{className:"text-sm font-medium",children:e.title}),(0,r.jsx)("div",{className:"p-2 rounded-full ".concat(e.bgColor),children:(0,r.jsx)(n,{className:"h-4 w-4 ".concat(e.color)})})]}),(0,r.jsxs)(O.aY,{children:[(0,r.jsx)("div",{className:"text-2xl font-bold",children:t?"...":e.value}),(0,r.jsx)("p",{className:"text-xs text-muted-foreground",children:e.description})]})]},e.title)})}),l.completedCount>0&&(0,r.jsxs)(O.Zb,{children:[(0,r.jsx)(O.Ol,{children:(0,r.jsx)(O.ll,{className:"text-sm font-medium",children:"Performance"})}),(0,r.jsx)(O.aY,{children:(0,r.jsxs)("div",{className:"text-sm text-muted-foreground",children:["Average execution time: ",(0,r.jsx)("span",{className:"font-medium text-foreground",children:t?"...":"".concat(Math.round(l.averageDuration)," seconds")})]})})]})]})}var F=n(13832);let V="force-dynamic";function W(){let{user:e}=(0,l.useContext)(F.S),t=[{accessorKey:"name",header:e=>{let{column:t}=e;return(0,r.jsxs)(c.z,{variant:"ghost",onClick:()=>t.toggleSorting("asc"===t.getIsSorted()),children:["Name",(0,r.jsx)(d,{className:"ml-2 h-4 w-4"})]})},cell:e=>{let{row:t}=e,n=t.original;return(0,r.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,r.jsx)("div",{className:"font-medium",children:n.name}),n.description&&(0,r.jsx)("div",{className:"text-sm text-muted-foreground line-clamp-1",children:n.description})]})}},{accessorKey:"visibility",header:"Visibility",cell:e=>{let{row:t}=e,n=t.original.rights_mode||"private";return(0,r.jsx)(u.C,{variant:"outline",className:(e=>{switch(e){case"private":default:return"bg-gray-100 text-gray-800";case"public":return"bg-green-100 text-green-800";case"users":return"bg-blue-100 text-blue-800";case"roles":return"bg-purple-100 text-purple-800"}})(n),children:(e=>{switch(e){case"private":default:return"Private";case"public":return"Public";case"users":return"Users (".concat(t.original.RBAC.users.length,")");case"roles":return"Roles (".concat(t.original.RBAC.roles.length,")")}})(n)})}},{accessorKey:"createdAt",header:e=>{let{column:t}=e;return(0,r.jsxs)(c.z,{className:"p-0",variant:"ghost",onClick:()=>t.toggleSorting("asc"===t.getIsSorted()),children:["Created",(0,r.jsx)(d,{className:"ml-2 h-4 w-4"})]})},cell:e=>{let{row:t}=e,n=t.getValue("createdAt");return(0,r.jsx)("div",{className:"text-sm",children:(0,f.Q)(new Date(n),{addSuffix:!0})})}},{id:"lastRun",header:"Last Run",cell:e=>{let{row:t}=e;return(0,r.jsx)(b,{workflowId:t.original.id})}},{id:"actions",header:"Actions",cell:t=>{let{row:n}=t;return(0,r.jsx)(w,{workflow:n.original,user:e})}}];return(0,r.jsx)(r.Fragment,{children:(0,r.jsxs)("div",{className:"hidden h-full flex-1 flex-col space-y-8 p-8 md:flex",children:[(0,r.jsx)("div",{className:"flex items-center justify-between space-y-2",children:(0,r.jsxs)("div",{children:[(0,r.jsx)("h2",{className:"text-2xl font-bold tracking-tight",children:"Workflows"}),(0,r.jsx)("p",{className:"text-muted-foreground",children:"Manage your workflow templates and monitor running jobs."})]})}),(0,r.jsx)(E,{}),(0,r.jsx)(I,{columns:t})]})})}},53245:function(e,t,n){"use strict";n.d(t,{d:function(){return f},f:function(){return p}});var r=n(57437),l=n(62869),s=n(94508),a=n(30401),o=n(78867),i=n(2265),d=n(34996),c=n(1479),u=n(9880);let m=(0,i.createContext)({code:""}),f=e=>{let{code:t,language:n,showLineNumbers:l=!1,className:a,children:o,...i}=e;return(0,r.jsx)(m.Provider,{value:{code:t},children:(0,r.jsx)("div",{className:(0,s.cn)("relative w-full overflow-hidden rounded-md border bg-background text-foreground",a),...i,children:(0,r.jsxs)("div",{className:"relative",children:[(0,r.jsx)(d.Z,{className:"overflow-hidden dark:hidden",codeTagProps:{className:"font-mono text-sm"},customStyle:{margin:0,padding:"1rem",fontSize:"0.875rem",background:"hsl(var(--background))",color:"hsl(var(--foreground))"},language:n,lineNumberStyle:{color:"hsl(var(--muted-foreground))",paddingRight:"1rem",minWidth:"2.5rem"},showLineNumbers:l,style:c.Z,children:t}),(0,r.jsx)(d.Z,{className:"hidden overflow-hidden dark:block",codeTagProps:{className:"font-mono text-sm"},customStyle:{margin:0,padding:"1rem",fontSize:"0.875rem",background:"hsl(var(--background))",color:"hsl(var(--foreground))"},language:n,lineNumberStyle:{color:"hsl(var(--muted-foreground))",paddingRight:"1rem",minWidth:"2.5rem"},showLineNumbers:l,style:u.Z,children:t}),o&&(0,r.jsx)("div",{className:"absolute top-2 right-2 flex items-center gap-2",children:o})]})})})},p=e=>{let{onCopy:t,onError:n,timeout:d=2e3,children:c,className:u,...f}=e,[p,g]=(0,i.useState)(!1),{code:x}=(0,i.useContext)(m),h=async()=>{if(!navigator.clipboard.writeText){null==n||n(Error("Clipboard API not available"));return}try{await navigator.clipboard.writeText(x),g(!0),null==t||t(),setTimeout(()=>g(!1),d)}catch(e){null==n||n(e)}},v=p?a.Z:o.Z;return(0,r.jsx)(l.z,{className:(0,s.cn)("shrink-0",u),onClick:h,size:"icon",variant:"ghost",...f,children:null!=c?c:(0,r.jsx)(v,{size:14})})}},35629:function(e,t,n){"use strict";n.d(t,{H:function(){return f}});var r=n(57437),l=n(94508),s=n(2265),a=n(86816),o=n(67245),i=n(58146),d=n(85020),c=n(53245);n(2446);let u=(0,n(86589).Z)(a.UG),m={ol:e=>{let{node:t,children:n,className:s,...a}=e;return(0,r.jsx)("ol",{className:(0,l.cn)("ml-4 list-outside list-decimal",s),...a,children:n})},li:e=>{let{node:t,children:n,className:s,...a}=e;return(0,r.jsx)("li",{className:(0,l.cn)("py-1",s),...a,children:n})},ul:e=>{let{node:t,children:n,className:s,...a}=e;return(0,r.jsx)("ul",{className:(0,l.cn)("ml-4 list-outside list-disc",s),...a,children:n})},hr:e=>{let{node:t,className:n,...s}=e;return(0,r.jsx)("hr",{className:(0,l.cn)("my-6 border-border",n),...s})},strong:e=>{let{node:t,children:n,className:s,...a}=e;return(0,r.jsx)("span",{className:(0,l.cn)("font-semibold",s),...a,children:n})},a:e=>{let{node:t,children:n,className:s,...a}=e;return(0,r.jsx)("a",{className:(0,l.cn)("font-medium text-primary underline",s),rel:"noreferrer",target:"_blank",...a,children:n})},h1:e=>{let{node:t,children:n,className:s,...a}=e;return(0,r.jsx)("h1",{className:(0,l.cn)("mt-6 mb-2 font-semibold text-3xl",s),...a,children:n})},h2:e=>{let{node:t,children:n,className:s,...a}=e;return(0,r.jsx)("h2",{className:(0,l.cn)("mt-6 mb-2 font-semibold text-2xl",s),...a,children:n})},h3:e=>{let{node:t,children:n,className:s,...a}=e;return(0,r.jsx)("h3",{className:(0,l.cn)("mt-6 mb-2 font-semibold text-xl",s),...a,children:n})},h4:e=>{let{node:t,children:n,className:s,...a}=e;return(0,r.jsx)("h4",{className:(0,l.cn)("mt-6 mb-2 font-semibold text-lg",s),...a,children:n})},h5:e=>{let{node:t,children:n,className:s,...a}=e;return(0,r.jsx)("h5",{className:(0,l.cn)("mt-6 mb-2 font-semibold text-base",s),...a,children:n})},h6:e=>{let{node:t,children:n,className:s,...a}=e;return(0,r.jsx)("h6",{className:(0,l.cn)("mt-6 mb-2 font-semibold text-sm",s),...a,children:n})},table:e=>{let{node:t,children:n,className:s,...a}=e;return(0,r.jsx)("div",{className:"my-4 overflow-x-auto",children:(0,r.jsx)("table",{className:(0,l.cn)("w-full border-collapse border border-border",s),...a,children:n})})},thead:e=>{let{node:t,children:n,className:s,...a}=e;return(0,r.jsx)("thead",{className:(0,l.cn)("bg-muted/50",s),...a,children:n})},tbody:e=>{let{node:t,children:n,className:s,...a}=e;return(0,r.jsx)("tbody",{className:(0,l.cn)("divide-y divide-border",s),...a,children:n})},tr:e=>{let{node:t,children:n,className:s,...a}=e;return(0,r.jsx)("tr",{className:(0,l.cn)("border-border border-b",s),...a,children:n})},th:e=>{let{node:t,children:n,className:s,...a}=e;return(0,r.jsx)("th",{className:(0,l.cn)("px-4 py-2 text-left font-semibold text-sm",s),...a,children:n})},td:e=>{let{node:t,children:n,className:s,...a}=e;return(0,r.jsx)("td",{className:(0,l.cn)("px-4 py-2 text-sm",s),...a,children:n})},blockquote:e=>{let{node:t,children:n,className:s,...a}=e;return(0,r.jsx)("blockquote",{className:(0,l.cn)("my-4 border-muted-foreground/30 border-l-4 pl-4 text-muted-foreground italic",s),...a,children:n})},code:e=>{var t,n;let{node:s,className:a,...o}=e;return(null==s?void 0:null===(t=s.position)||void 0===t?void 0:t.start.line)!==(null==s?void 0:null===(n=s.position)||void 0===n?void 0:n.end.line)?(0,r.jsx)("code",{className:a,...o}):(0,r.jsx)("code",{className:(0,l.cn)("rounded bg-muted px-1.5 py-0.5 font-mono text-sm",a),...o})},pre:e=>{var t;let{node:n,className:a,children:o}=e,i="javascript";"string"==typeof(null==n?void 0:null===(t=n.properties)||void 0===t?void 0:t.className)&&(i=n.properties.className.replace("language-",""));let d="";return(0,s.isValidElement)(o)&&o.props&&"string"==typeof o.props.children?d=o.props.children:"string"==typeof o&&(d=o),(0,r.jsx)(c.d,{className:(0,l.cn)("my-4 h-auto",a),code:d,language:i,children:(0,r.jsx)(c.f,{onCopy:()=>console.log("Copied code to clipboard"),onError:()=>console.error("Failed to copy code to clipboard")})})}},f=(0,s.memo)(e=>{let{className:t,options:n,children:s,allowedImagePrefixes:a,allowedLinkPrefixes:c,defaultOrigin:f,parseIncompleteMarkdown:p=!0,...g}=e,x="string"==typeof s&&p?function(e){if(!e||"string"!=typeof e)return e;let t=e,n=t.match(/(!?\[)([^\]]*?)$/);if(n){let e=t.lastIndexOf(n[1]);t=t.substring(0,e)}if(t.match(/(\*\*)([^*]*?)$/)&&(t.match(/\*\*/g)||[]).length%2==1&&(t="".concat(t,"**")),t.match(/(__)([^_]*?)$/)&&(t.match(/__/g)||[]).length%2==1&&(t="".concat(t,"__")),t.match(/(\*)([^*]*?)$/)&&t.split("").reduce((e,n,r)=>{if("*"===n){let n=t[r-1],l=t[r+1];if("*"!==n&&"*"!==l)return e+1}return e},0)%2==1&&(t="".concat(t,"*")),t.match(/(_)([^_]*?)$/)&&t.split("").reduce((e,n,r)=>{if("_"===n){let n=t[r-1],l=t[r+1];if("_"!==n&&"_"!==l)return e+1}return e},0)%2==1&&(t="".concat(t,"_")),t.match(/(`)([^`]*?)$/)&&(t.includes("```"),(t.match(/```[\s\S]*?```/g)||[]).length,(t.match(/```/g)||[]).length%2!=1)){let e=0;for(let n=0;n<t.length;n++)if("`"===t[n]){let r="```"===t.substring(n,n+3),l=n>0&&"```"===t.substring(n-1,n+2),s=n>1&&"```"===t.substring(n-2,n+1);!(r||l||s)&&e++}e%2==1&&(t="".concat(t,"`"))}return t.match(/(~~)([^~]*?)$/)&&(t.match(/~~/g)||[]).length%2==1&&(t="".concat(t,"~~")),t}(s):s;return(0,r.jsx)("div",{className:(0,l.cn)("size-full [&>*:first-child]:mt-0 [&>*:last-child]:mb-0",t),...g,children:(0,r.jsx)(u,{allowedImagePrefixes:null!=a?a:["*"],allowedLinkPrefixes:null!=c?c:["*"],components:m,defaultOrigin:f,rehypePlugins:[o.Z],remarkPlugins:[i.Z,d.Z],...n,children:x})})},(e,t)=>e.children===t.children);f.displayName="Response"},37099:function(e,t,n){"use strict";n.d(t,{OL:function(){return x},_T:function(){return u},aR:function(){return i},f$:function(){return p},fY:function(){return m},le:function(){return h},xo:function(){return f},yT:function(){return g}});var r=n(57437),l=n(23619),s=n(2265),a=n(62869),o=n(94508);let i=l.fC;l.xz;let d=l.h_,c=s.forwardRef((e,t)=>{let{className:n,...s}=e;return(0,r.jsx)(l.aV,{className:(0,o.cn)("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",n),...s,ref:t})});c.displayName=l.aV.displayName;let u=s.forwardRef((e,t)=>{let{className:n,...s}=e;return(0,r.jsxs)(d,{children:[(0,r.jsx)(c,{}),(0,r.jsx)(l.VY,{ref:t,className:(0,o.cn)("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",n),...s})]})});u.displayName=l.VY.displayName;let m=e=>{let{className:t,...n}=e;return(0,r.jsx)("div",{className:(0,o.cn)("flex flex-col space-y-2 text-center sm:text-left",t),...n})};m.displayName="AlertDialogHeader";let f=e=>{let{className:t,...n}=e;return(0,r.jsx)("div",{className:(0,o.cn)("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",t),...n})};f.displayName="AlertDialogFooter";let p=s.forwardRef((e,t)=>{let{className:n,...s}=e;return(0,r.jsx)(l.Dx,{ref:t,className:(0,o.cn)("text-lg font-semibold",n),...s})});p.displayName=l.Dx.displayName;let g=s.forwardRef((e,t)=>{let{className:n,...s}=e;return(0,r.jsx)(l.dk,{ref:t,className:(0,o.cn)("text-sm text-muted-foreground",n),...s})});g.displayName=l.dk.displayName;let x=s.forwardRef((e,t)=>{let{className:n,...s}=e;return(0,r.jsx)(l.aU,{ref:t,className:(0,o.cn)((0,a.d)(),n),...s})});x.displayName=l.aU.displayName;let h=s.forwardRef((e,t)=>{let{className:n,...s}=e;return(0,r.jsx)(l.$j,{ref:t,className:(0,o.cn)((0,a.d)({variant:"outline"}),"mt-2 sm:mt-0",n),...s})});h.displayName=l.$j.displayName},73578:function(e,t,n){"use strict";n.d(t,{RM:function(){return i},Rn:function(){return m},SC:function(){return d},iA:function(){return a},pj:function(){return u},ss:function(){return c},xD:function(){return o}});var r=n(57437),l=n(2265),s=n(94508);let a=l.forwardRef((e,t)=>{let{className:n,...l}=e;return(0,r.jsx)("div",{className:"relative w-full overflow-auto",children:(0,r.jsx)("table",{ref:t,className:(0,s.cn)("w-full caption-bottom text-sm",n),...l})})});a.displayName="Table";let o=l.forwardRef((e,t)=>{let{className:n,...l}=e;return(0,r.jsx)("thead",{ref:t,className:(0,s.cn)("[&_tr]:border-b",n),...l})});o.displayName="TableHeader";let i=l.forwardRef((e,t)=>{let{className:n,...l}=e;return(0,r.jsx)("tbody",{ref:t,className:(0,s.cn)("[&_tr:last-child]:border-0",n),...l})});i.displayName="TableBody",l.forwardRef((e,t)=>{let{className:n,...l}=e;return(0,r.jsx)("tfoot",{ref:t,className:(0,s.cn)("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",n),...l})}).displayName="TableFooter";let d=l.forwardRef((e,t)=>{let{className:n,...l}=e;return(0,r.jsx)("tr",{ref:t,className:(0,s.cn)("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",n),...l})});d.displayName="TableRow";let c=l.forwardRef((e,t)=>{let{className:n,...l}=e;return(0,r.jsx)("th",{ref:t,className:(0,s.cn)("h-12 px-4 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0 [&:has([role=checkbox])]:w-[40px]",n),...l})});c.displayName="TableHead";let u=l.forwardRef((e,t)=>{let{className:n,...l}=e;return(0,r.jsx)("td",{ref:t,className:(0,s.cn)("p-4 align-middle [&:has([role=checkbox])]:pr-0 [&:has([role=checkbox])]:w-[40px]",n),...l})});u.displayName="TableCell";let m=l.forwardRef((e,t)=>{let{className:n,...l}=e;return(0,r.jsx)("caption",{ref:t,className:(0,s.cn)("mt-4 text-sm text-muted-foreground",n),...l})});m.displayName="TableCaption"},12339:function(e,t,n){"use strict";n.d(t,{SP:function(){return d},dr:function(){return i},mQ:function(){return o},nU:function(){return c}});var r=n(57437),l=n(20271),s=n(2265),a=n(94508);let o=l.fC,i=s.forwardRef((e,t)=>{let{className:n,...s}=e;return(0,r.jsx)(l.aV,{ref:t,className:(0,a.cn)("inline-flex h-10 items-center justify-center rounded-md bg-muted p-1 text-muted-foreground",n),...s})});i.displayName=l.aV.displayName;let d=s.forwardRef((e,t)=>{let{className:n,...s}=e;return(0,r.jsx)(l.xz,{ref:t,className:(0,a.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",n),...s})});d.displayName=l.xz.displayName;let c=s.forwardRef((e,t)=>{let{className:n,...s}=e;return(0,r.jsx)(l.VY,{ref:t,className:(0,a.cn)("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",n),...s})});c.displayName=l.VY.displayName},77992:function(e,t,n){"use strict";n.d(t,{Am:function(){return u},pm:function(){return m}});var r=n(2265);let l=0,s=new Map,a=e=>{if(s.has(e))return;let t=setTimeout(()=>{s.delete(e),c({type:"REMOVE_TOAST",toastId:e})},1e6);s.set(e,t)},o=(e,t)=>{switch(t.type){case"ADD_TOAST":return{...e,toasts:[t.toast,...e.toasts].slice(0,1)};case"UPDATE_TOAST":return{...e,toasts:e.toasts.map(e=>e.id===t.toast.id?{...e,...t.toast}:e)};case"DISMISS_TOAST":{let{toastId:n}=t;return n?a(n):e.toasts.forEach(e=>{a(e.id)}),{...e,toasts:e.toasts.map(e=>e.id===n||void 0===n?{...e,open:!1}:e)}}case"REMOVE_TOAST":if(void 0===t.toastId)return{...e,toasts:[]};return{...e,toasts:e.toasts.filter(e=>e.id!==t.toastId)}}},i=[],d={toasts:[]};function c(e){d=o(d,e),i.forEach(e=>{e(d)})}function u(e){let{...t}=e,n=(l=(l+1)%Number.MAX_SAFE_INTEGER).toString(),r=()=>c({type:"DISMISS_TOAST",toastId:n});return c({type:"ADD_TOAST",toast:{...t,id:n,open:!0,onOpenChange:e=>{e||r()}}}),{id:n,dismiss:r,update:e=>c({type:"UPDATE_TOAST",toast:{...e,id:n}})}}function m(){let[e,t]=r.useState(d);return r.useEffect(()=>(i.push(t),()=>{let e=i.indexOf(t);e>-1&&i.splice(e,1)}),[e]),{...e,toast:u,dismiss:e=>c({type:"DISMISS_TOAST",toastId:e})}}},63639:function(e,t,n){"use strict";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"}]])},65302:function(e,t,n){"use strict";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){"use strict";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){"use strict";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){"use strict";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"}]])},29202:function(e,t,n){"use strict";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){"use strict";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){"use strict";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){"use strict";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){"use strict";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){"use strict";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){"use strict";n.d(t,{aU:function(){return ek},$j:function(){return eC},VY:function(){return eN},dk:function(){return eS},aV:function(){return ew},h_:function(){return eb},fC:function(){return ej},Dx:function(){return eR},xz:function(){return ey}});var r=n(2265),l=n(73966),s=n(98575),a=n(6741),o=n(99255),i=n(80886),d=n(22308),c=n(99103),u=n(83832),m=n(71599),f=n(66840),p=n(86097),g=n(60703),x=n(5478),h=n(37053),v=n(57437),j="Dialog",[y,b]=(0,l.b)(j),[w,N]=y(j),k=e=>{let{__scopeDialog:t,children:n,open:l,defaultOpen:s,onOpenChange:a,modal:d=!0}=e,c=r.useRef(null),u=r.useRef(null),[m,f]=(0,i.T)({prop:l,defaultProp:null!=s&&s,onChange:a,caller:j});return(0,v.jsx)(w,{scope:t,triggerRef:c,contentRef:u,contentId:(0,o.M)(),titleId:(0,o.M)(),descriptionId:(0,o.M)(),open:m,onOpenChange:f,onOpenToggle:r.useCallback(()=>f(e=>!e),[f]),modal:d,children:n})};k.displayName=j;var C="DialogTrigger",R=r.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,l=N(C,n),o=(0,s.e)(t,l.triggerRef);return(0,v.jsx)(f.WV.button,{type:"button","aria-haspopup":"dialog","aria-expanded":l.open,"aria-controls":l.contentId,"data-state":U(l.open),...r,ref:o,onClick:(0,a.M)(e.onClick,l.onOpenToggle)})});R.displayName=C;var S="DialogPortal",[D,_]=y(S,{forceMount:void 0}),P=e=>{let{__scopeDialog:t,forceMount:n,children:l,container:s}=e,a=N(S,t);return(0,v.jsx)(D,{scope:t,forceMount:n,children:r.Children.map(l,e=>(0,v.jsx)(m.z,{present:n||a.open,children:(0,v.jsx)(u.h,{asChild:!0,container:s,children:e})}))})};P.displayName=S;var A="DialogOverlay",I=r.forwardRef((e,t)=>{let n=_(A,e.__scopeDialog),{forceMount:r=n.forceMount,...l}=e,s=N(A,e.__scopeDialog);return s.modal?(0,v.jsx)(m.z,{present:r||s.open,children:(0,v.jsx)(T,{...l,ref:t})}):null});I.displayName=A;var z=(0,h.Z8)("DialogOverlay.RemoveScroll"),T=r.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,l=N(A,n);return(0,v.jsx)(g.Z,{as:z,allowPinchZoom:!0,shards:[l.contentRef],children:(0,v.jsx)(f.WV.div,{"data-state":U(l.open),...r,ref:t,style:{pointerEvents:"auto",...r.style}})})}),Z="DialogContent",M=r.forwardRef((e,t)=>{let n=_(Z,e.__scopeDialog),{forceMount:r=n.forceMount,...l}=e,s=N(Z,e.__scopeDialog);return(0,v.jsx)(m.z,{present:r||s.open,children:s.modal?(0,v.jsx)(O,{...l,ref:t}):(0,v.jsx)(E,{...l,ref:t})})});M.displayName=Z;var O=r.forwardRef((e,t)=>{let n=N(Z,e.__scopeDialog),l=r.useRef(null),o=(0,s.e)(t,n.contentRef,l);return r.useEffect(()=>{let e=l.current;if(e)return(0,x.Ry)(e)},[]),(0,v.jsx)(F,{...e,ref:o,trapFocus:n.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:(0,a.M)(e.onCloseAutoFocus,e=>{var t;e.preventDefault(),null===(t=n.triggerRef.current)||void 0===t||t.focus()}),onPointerDownOutside:(0,a.M)(e.onPointerDownOutside,e=>{let t=e.detail.originalEvent,n=0===t.button&&!0===t.ctrlKey;(2===t.button||n)&&e.preventDefault()}),onFocusOutside:(0,a.M)(e.onFocusOutside,e=>e.preventDefault())})}),E=r.forwardRef((e,t)=>{let n=N(Z,e.__scopeDialog),l=r.useRef(!1),s=r.useRef(!1);return(0,v.jsx)(F,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:t=>{var r,a;null===(r=e.onCloseAutoFocus)||void 0===r||r.call(e,t),t.defaultPrevented||(l.current||null===(a=n.triggerRef.current)||void 0===a||a.focus(),t.preventDefault()),l.current=!1,s.current=!1},onInteractOutside:t=>{var r,a;null===(r=e.onInteractOutside)||void 0===r||r.call(e,t),t.defaultPrevented||(l.current=!0,"pointerdown"!==t.detail.originalEvent.type||(s.current=!0));let o=t.target;(null===(a=n.triggerRef.current)||void 0===a?void 0:a.contains(o))&&t.preventDefault(),"focusin"===t.detail.originalEvent.type&&s.current&&t.preventDefault()}})}),F=r.forwardRef((e,t)=>{let{__scopeDialog:n,trapFocus:l,onOpenAutoFocus:a,onCloseAutoFocus:o,...i}=e,u=N(Z,n),m=r.useRef(null),f=(0,s.e)(t,m);return(0,p.EW)(),(0,v.jsxs)(v.Fragment,{children:[(0,v.jsx)(c.M,{asChild:!0,loop:!0,trapped:l,onMountAutoFocus:a,onUnmountAutoFocus:o,children:(0,v.jsx)(d.XB,{role:"dialog",id:u.contentId,"aria-describedby":u.descriptionId,"aria-labelledby":u.titleId,"data-state":U(u.open),...i,ref:f,onDismiss:()=>u.onOpenChange(!1)})}),(0,v.jsxs)(v.Fragment,{children:[(0,v.jsx)(J,{titleId:u.titleId}),(0,v.jsx)(Q,{contentRef:m,descriptionId:u.descriptionId})]})]})}),V="DialogTitle",W=r.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,l=N(V,n);return(0,v.jsx)(f.WV.h2,{id:l.titleId,...r,ref:t})});W.displayName=V;var $="DialogDescription",B=r.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,l=N($,n);return(0,v.jsx)(f.WV.p,{id:l.descriptionId,...r,ref:t})});B.displayName=$;var q="DialogClose",G=r.forwardRef((e,t)=>{let{__scopeDialog:n,...r}=e,l=N(q,n);return(0,v.jsx)(f.WV.button,{type:"button",...r,ref:t,onClick:(0,a.M)(e.onClick,()=>l.onOpenChange(!1))})});function U(e){return e?"open":"closed"}G.displayName=q;var L="DialogTitleWarning",[Y,H]=(0,l.k)(L,{contentName:Z,titleName:V,docsSlug:"dialog"}),J=e=>{let{titleId:t}=e,n=H(L),l="`".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(l)},[l,t]),null},Q=e=>{let{contentRef:t,descriptionId:n}=e,l=H("DialogDescriptionWarning"),s="Warning: Missing `Description` or `aria-describedby={undefined}` for {".concat(l.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(s)},[s,t,n]),null},K="AlertDialog",[X,ee]=(0,l.b)(K,[b]),et=b(),en=e=>{let{__scopeAlertDialog:t,...n}=e,r=et(t);return(0,v.jsx)(k,{...r,...n,modal:!0})};en.displayName=K;var er=r.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,l=et(n);return(0,v.jsx)(R,{...l,...r,ref:t})});er.displayName="AlertDialogTrigger";var el=e=>{let{__scopeAlertDialog:t,...n}=e,r=et(t);return(0,v.jsx)(P,{...r,...n})};el.displayName="AlertDialogPortal";var es=r.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,l=et(n);return(0,v.jsx)(I,{...l,...r,ref:t})});es.displayName="AlertDialogOverlay";var ea="AlertDialogContent",[eo,ei]=X(ea),ed=(0,h.sA)("AlertDialogContent"),ec=r.forwardRef((e,t)=>{let{__scopeAlertDialog:n,children:l,...o}=e,i=et(n),d=r.useRef(null),c=(0,s.e)(t,d),u=r.useRef(null);return(0,v.jsx)(Y,{contentName:ea,titleName:eu,docsSlug:"alert-dialog",children:(0,v.jsx)(eo,{scope:n,cancelRef:u,children:(0,v.jsxs)(M,{role:"alertdialog",...i,...o,ref:c,onOpenAutoFocus:(0,a.M)(o.onOpenAutoFocus,e=>{var t;e.preventDefault(),null===(t=u.current)||void 0===t||t.focus({preventScroll:!0})}),onPointerDownOutside:e=>e.preventDefault(),onInteractOutside:e=>e.preventDefault(),children:[(0,v.jsx)(ed,{children:l}),(0,v.jsx)(ev,{contentRef:d})]})})})});ec.displayName=ea;var eu="AlertDialogTitle",em=r.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,l=et(n);return(0,v.jsx)(W,{...l,...r,ref:t})});em.displayName=eu;var ef="AlertDialogDescription",ep=r.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,l=et(n);return(0,v.jsx)(B,{...l,...r,ref:t})});ep.displayName=ef;var eg=r.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,l=et(n);return(0,v.jsx)(G,{...l,...r,ref:t})});eg.displayName="AlertDialogAction";var ex="AlertDialogCancel",eh=r.forwardRef((e,t)=>{let{__scopeAlertDialog:n,...r}=e,{cancelRef:l}=ei(ex,n),a=et(n),o=(0,s.e)(t,l);return(0,v.jsx)(G,{...a,...r,ref:o})});eh.displayName=ex;var ev=e=>{let{contentRef:t}=e,n="`".concat(ea,"` requires a description for the component to be accessible for screen reader users.\n\nYou can add a description to the `").concat(ea,"` by passing a `").concat(ef,"` 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(ea,"`. 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},ej=en,ey=er,eb=el,ew=es,eN=ec,ek=eg,eC=eh,eR=em,eS=ep}},function(e){e.O(0,[329,8310,3954,9851,7629,7093,6148,847,1942,7648,7823,8068,5799,605,4567,1206,5338,3825,1785,5110,3171,1425,1594,7598,6373,3832,8030,1957,2971,2117,1744],function(){return e(e.s=33329)}),_N_E=e.O()}]);
2
+ //# sourceMappingURL=page-e38f9456120dab69.js.map