@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.
- package/dist/.next/BUILD_ID +1 -1
- package/dist/.next/app-build-manifest.json +153 -155
- package/dist/.next/app-path-routes-manifest.json +1 -1
- package/dist/.next/build-manifest.json +2 -2
- package/dist/.next/prerender-manifest.json +1 -1
- package/dist/.next/server/app/(application)/agents/edit/[id]/page.js +1 -1
- package/dist/.next/server/app/(application)/agents/edit/[id]/page.js.nft.json +1 -1
- package/dist/.next/server/app/(application)/agents/edit/[id]/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/(application)/agents/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/(application)/chat/[agent]/[session]/page.js +8 -8
- package/dist/.next/server/app/(application)/chat/[agent]/[session]/page.js.nft.json +1 -1
- package/dist/.next/server/app/(application)/chat/[agent]/[session]/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/(application)/chat/[agent]/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/(application)/chat/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/(application)/configuration/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/(application)/dashboard/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/(application)/data/[[...query]]/page.js +4 -4
- package/dist/.next/server/app/(application)/data/[[...query]]/page.js.nft.json +1 -1
- package/dist/.next/server/app/(application)/data/[[...query]]/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/(application)/evals/[id]/page.js +1 -1
- package/dist/.next/server/app/(application)/evals/[id]/page.js.nft.json +1 -1
- package/dist/.next/server/app/(application)/evals/[id]/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/(application)/evals/cases/page.js +1 -1
- package/dist/.next/server/app/(application)/evals/cases/page.js.nft.json +1 -1
- package/dist/.next/server/app/(application)/evals/cases/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/(application)/evals/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/(application)/explorer/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/(application)/keys/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/(application)/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/(application)/projects/[project]/page.js +1 -1
- package/dist/.next/server/app/(application)/projects/[project]/page.js.nft.json +1 -1
- package/dist/.next/server/app/(application)/projects/[project]/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/(application)/projects/page.js +1 -1
- package/dist/.next/server/app/(application)/projects/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/(application)/prompts/page.js +1 -1
- package/dist/.next/server/app/(application)/prompts/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/(application)/roles/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/(application)/token/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/(application)/users/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/(application)/variables/create/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/(application)/variables/edit/[variable_id]/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/(application)/variables/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/(application)/variables/usage/[variable_id]/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/(application)/workflows/page.js +1 -1
- package/dist/.next/server/app/(application)/workflows/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/(authentication)/login/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/_not-found.html +1 -1
- package/dist/.next/server/app/_not-found.rsc +1 -1
- package/dist/.next/server/app-paths-manifest.json +5 -5
- package/dist/.next/server/chunks/1025.js +1 -0
- package/dist/.next/server/chunks/2270.js +18 -44
- package/dist/.next/server/chunks/3434.js +1 -1
- package/dist/.next/server/chunks/3503.js +1 -0
- package/dist/.next/server/chunks/5084.js +1 -0
- package/dist/.next/server/chunks/5192.js +1 -1
- package/dist/.next/server/chunks/5485.js +1 -1
- package/dist/.next/server/chunks/5600.js +1 -1
- package/dist/.next/server/chunks/5974.js +1 -0
- package/dist/.next/server/chunks/6590.js +1 -1
- package/dist/.next/server/chunks/7471.js +1 -1
- package/dist/.next/server/chunks/8286.js +1 -1
- package/dist/.next/server/chunks/{3679.js → 9874.js} +5 -5
- package/dist/.next/server/middleware-manifest.json +5 -5
- package/dist/.next/server/pages/404.html +1 -1
- package/dist/.next/server/pages/500.html +1 -1
- package/dist/.next/server/server-reference-manifest.json +1 -1
- package/dist/.next/static/chunks/1685-939396dad2f8f1e0.js +2 -0
- package/dist/.next/static/chunks/1685-939396dad2f8f1e0.js.map +1 -0
- package/dist/.next/static/chunks/{4811-316807e25b634f9f.js → 192-72d6868cd891ccc6.js} +8 -8
- package/dist/.next/static/chunks/192-72d6868cd891ccc6.js.map +1 -0
- package/dist/.next/static/chunks/1957-cf44b1d31a9c7d5c.js +2 -0
- package/dist/.next/static/chunks/1957-cf44b1d31a9c7d5c.js.map +1 -0
- package/dist/.next/static/chunks/342-d9c2d6ae9f9435cb.js +2 -0
- package/dist/.next/static/chunks/342-d9c2d6ae9f9435cb.js.map +1 -0
- package/dist/.next/static/chunks/3750-e3d1b2cccd265190.js +2 -0
- package/dist/.next/static/chunks/3750-e3d1b2cccd265190.js.map +1 -0
- package/dist/.next/static/chunks/{3832-417a5eeee712a793.js → 3832-d7782d6a2771ae6c.js} +1 -1
- package/dist/.next/static/chunks/{3832-417a5eeee712a793.js.map → 3832-d7782d6a2771ae6c.js.map} +1 -1
- package/dist/.next/static/chunks/552-39155a93c527ec6d.js +2 -0
- package/dist/.next/static/chunks/552-39155a93c527ec6d.js.map +1 -0
- package/dist/.next/static/chunks/6280-50b751f993f2fe4f.js +2 -0
- package/dist/.next/static/chunks/6280-50b751f993f2fe4f.js.map +1 -0
- package/dist/.next/static/chunks/6367-59655a85d75e19be.js +2 -0
- package/dist/.next/static/chunks/6367-59655a85d75e19be.js.map +1 -0
- package/dist/.next/static/chunks/6373-aef582adc575d3ca.js +2 -0
- package/dist/.next/static/chunks/6373-aef582adc575d3ca.js.map +1 -0
- package/dist/.next/static/chunks/8030-9c926ea4dfd3a54e.js +2 -0
- package/dist/.next/static/chunks/8030-9c926ea4dfd3a54e.js.map +1 -0
- package/dist/.next/static/chunks/{6805-792cc8008b165c07.js → 8293-ba5cd36594e6fde1.js} +10 -10
- package/dist/.next/static/chunks/8293-ba5cd36594e6fde1.js.map +1 -0
- package/dist/.next/static/chunks/9105-d8ff41060f7ffc85.js +2 -0
- package/dist/.next/static/chunks/9105-d8ff41060f7ffc85.js.map +1 -0
- package/dist/.next/static/chunks/9953-95900a236271a222.js +2 -0
- package/dist/.next/static/chunks/9953-95900a236271a222.js.map +1 -0
- package/dist/.next/static/chunks/app/(application)/agents/edit/[id]/page-e4a4693953329671.js +2 -0
- package/dist/.next/static/chunks/app/(application)/agents/edit/[id]/page-e4a4693953329671.js.map +1 -0
- package/dist/.next/static/chunks/app/(application)/chat/[agent]/[session]/page-d59534ca19eee51f.js +2 -0
- package/dist/.next/static/chunks/app/(application)/chat/[agent]/[session]/page-d59534ca19eee51f.js.map +1 -0
- package/dist/.next/static/chunks/app/(application)/data/[[...query]]/layout-0c7c1b0e1713bf60.js +2 -0
- package/dist/.next/static/chunks/app/(application)/data/[[...query]]/layout-0c7c1b0e1713bf60.js.map +1 -0
- package/dist/.next/static/chunks/app/(application)/data/[[...query]]/page-7db6bfbf02606136.js +2 -0
- package/dist/.next/static/chunks/app/(application)/data/[[...query]]/page-7db6bfbf02606136.js.map +1 -0
- package/dist/.next/static/chunks/app/(application)/evals/[id]/page-a7728cf9b0524489.js +2 -0
- package/dist/.next/static/chunks/app/(application)/evals/[id]/page-a7728cf9b0524489.js.map +1 -0
- package/dist/.next/static/chunks/app/(application)/evals/cases/{page-a39fef7444581565.js → page-827f50c6d1f150d0.js} +2 -2
- package/dist/.next/static/chunks/app/(application)/evals/cases/{page-a39fef7444581565.js.map → page-827f50c6d1f150d0.js.map} +1 -1
- package/dist/.next/static/chunks/app/(application)/explorer/{page-1d676c9dfe3ed58b.js → page-e6b1c034c07776e2.js} +1 -1
- package/dist/.next/static/chunks/app/(application)/explorer/{page-1d676c9dfe3ed58b.js.map → page-e6b1c034c07776e2.js.map} +1 -1
- package/dist/.next/static/chunks/app/(application)/projects/[project]/page-f04fd5291a1ef7b1.js +2 -0
- package/dist/.next/static/chunks/app/(application)/projects/[project]/page-f04fd5291a1ef7b1.js.map +1 -0
- package/dist/.next/static/chunks/app/(application)/prompts/page-2c500e9898447506.js +2 -0
- package/dist/.next/static/chunks/app/(application)/prompts/page-2c500e9898447506.js.map +1 -0
- package/dist/.next/static/chunks/app/(application)/token/{page-3f74f711f3d04fce.js → page-3acc39cb8a718331.js} +1 -1
- package/dist/.next/static/chunks/app/(application)/token/{page-3f74f711f3d04fce.js.map → page-3acc39cb8a718331.js.map} +1 -1
- package/dist/.next/static/chunks/app/(application)/workflows/{page-47dedb88cec600d5.js → page-e38f9456120dab69.js} +2 -2
- package/dist/.next/static/chunks/app/(application)/workflows/page-e38f9456120dab69.js.map +1 -0
- package/dist/.next/static/chunks/ba12c10f-85ed008ce7746dbe.js +2 -0
- package/dist/.next/static/chunks/ba12c10f-85ed008ce7746dbe.js.map +1 -0
- package/dist/.next/static/css/9c08ae5d990a6b14.css +4 -0
- package/dist/.next/static/css/9c08ae5d990a6b14.css.map +1 -0
- package/dist/.next/static/css/e3f2a16ab7676b05.css.map +1 -1
- package/dist/package.json +1 -1
- package/package.json +1 -1
- package/dist/.next/server/chunks/2948.js +0 -1
- package/dist/.next/server/chunks/38.js +0 -1
- package/dist/.next/server/chunks/7958.js +0 -1
- package/dist/.next/server/chunks/8050.js +0 -1
- package/dist/.next/static/chunks/1685-9cacdee7e3f0942f.js +0 -2
- package/dist/.next/static/chunks/1685-9cacdee7e3f0942f.js.map +0 -1
- package/dist/.next/static/chunks/1957-39a01a3915f246ab.js +0 -2
- package/dist/.next/static/chunks/1957-39a01a3915f246ab.js.map +0 -1
- package/dist/.next/static/chunks/3750-f45c59ef1cc79417.js +0 -2
- package/dist/.next/static/chunks/3750-f45c59ef1cc79417.js.map +0 -1
- package/dist/.next/static/chunks/4811-316807e25b634f9f.js.map +0 -1
- package/dist/.next/static/chunks/5282-68f9880f1f951f44.js +0 -2
- package/dist/.next/static/chunks/5282-68f9880f1f951f44.js.map +0 -1
- package/dist/.next/static/chunks/572-2940a399da1e3a3b.js +0 -2
- package/dist/.next/static/chunks/572-2940a399da1e3a3b.js.map +0 -1
- package/dist/.next/static/chunks/6367-59cef3c74213925b.js +0 -2
- package/dist/.next/static/chunks/6367-59cef3c74213925b.js.map +0 -1
- package/dist/.next/static/chunks/6373-4c5dffaf4193621c.js +0 -2
- package/dist/.next/static/chunks/6373-4c5dffaf4193621c.js.map +0 -1
- package/dist/.next/static/chunks/6805-792cc8008b165c07.js.map +0 -1
- package/dist/.next/static/chunks/8030-c1b6be46253076cb.js +0 -2
- package/dist/.next/static/chunks/8030-c1b6be46253076cb.js.map +0 -1
- package/dist/.next/static/chunks/9105-dfbce1bad8e3e8dd.js +0 -2
- package/dist/.next/static/chunks/9105-dfbce1bad8e3e8dd.js.map +0 -1
- package/dist/.next/static/chunks/9621-f81c4d7c0ecf5a67.js +0 -2
- package/dist/.next/static/chunks/9621-f81c4d7c0ecf5a67.js.map +0 -1
- package/dist/.next/static/chunks/9953-dfb5fc0e5b74ec09.js +0 -2
- package/dist/.next/static/chunks/9953-dfb5fc0e5b74ec09.js.map +0 -1
- package/dist/.next/static/chunks/app/(application)/agents/edit/[id]/page-4e7e02768ed1a72a.js +0 -2
- package/dist/.next/static/chunks/app/(application)/agents/edit/[id]/page-4e7e02768ed1a72a.js.map +0 -1
- package/dist/.next/static/chunks/app/(application)/chat/[agent]/[session]/page-38f845d5ccdad76b.js +0 -2
- package/dist/.next/static/chunks/app/(application)/chat/[agent]/[session]/page-38f845d5ccdad76b.js.map +0 -1
- package/dist/.next/static/chunks/app/(application)/data/[[...query]]/layout-2d47be0ee80dd89d.js +0 -2
- package/dist/.next/static/chunks/app/(application)/data/[[...query]]/layout-2d47be0ee80dd89d.js.map +0 -1
- package/dist/.next/static/chunks/app/(application)/data/[[...query]]/page-a391b8407f74e9b4.js +0 -2
- package/dist/.next/static/chunks/app/(application)/data/[[...query]]/page-a391b8407f74e9b4.js.map +0 -1
- package/dist/.next/static/chunks/app/(application)/evals/[id]/page-cf6f8d2bd4e9c819.js +0 -2
- package/dist/.next/static/chunks/app/(application)/evals/[id]/page-cf6f8d2bd4e9c819.js.map +0 -1
- package/dist/.next/static/chunks/app/(application)/projects/[project]/page-bc859da58d8505f7.js +0 -2
- package/dist/.next/static/chunks/app/(application)/projects/[project]/page-bc859da58d8505f7.js.map +0 -1
- package/dist/.next/static/chunks/app/(application)/prompts/page-d2f36ff149385efd.js +0 -2
- package/dist/.next/static/chunks/app/(application)/prompts/page-d2f36ff149385efd.js.map +0 -1
- package/dist/.next/static/chunks/app/(application)/workflows/page-47dedb88cec600d5.js.map +0 -1
- package/dist/.next/static/chunks/ba12c10f-aaafcb074f608624.js +0 -2
- package/dist/.next/static/chunks/ba12c10f-aaafcb074f608624.js.map +0 -1
- package/dist/.next/static/css/c8c015815c72d053.css +0 -4
- package/dist/.next/static/css/c8c015815c72d053.css.map +0 -1
- /package/dist/.next/static/{GOwerAkBncYx0J8q1TqQb → 3j63p6b3zZZB_v1Hn8Mxp}/_buildManifest.js +0 -0
- /package/dist/.next/static/{GOwerAkBncYx0J8q1TqQb → 3j63p6b3zZZB_v1Hn8Mxp}/_ssgManifest.js +0 -0
package/dist/.next/static/chunks/app/(application)/agents/edit/[id]/page-4e7e02768ed1a72a.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"static/chunks/app/(application)/agents/edit/[id]/page-4e7e02768ed1a72a.js","mappings":"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","sources":["webpack://_N_E/?f6bf","webpack://_N_E/./app/(application)/agents/edit/[id]/page.tsx","webpack://_N_E/./components/ai-elements/code-block.tsx","webpack://_N_E/./components/ai-elements/response.tsx","webpack://_N_E/./components/ui/alert.tsx","webpack://_N_E/./components/ui/collapsible.tsx","webpack://_N_E/./components/ui/tabs.tsx","webpack://_N_E/./components/ui/use-toast.ts","webpack://_N_E/./hooks/use-uppy.tsx","webpack://_N_E/./components/uppy-dashboard.tsx","webpack://_N_E/../../../src/icons/alert-circle.ts","webpack://_N_E/../../../src/icons/info.ts","webpack://_N_E/./node_modules/date-fns/differenceInCalendarMonths.mjs","webpack://_N_E/./node_modules/date-fns/endOfMonth.mjs"],"sourcesContent":["import(/* webpackMode: \"eager\" */ \"/home/runner/work/exulu-frontend/exulu-frontend/app/(application)/agents/edit/[id]/page.tsx\");\n","\"use client\";\n\nimport * as React from \"react\";\nimport AgentForm from \"@/app/(application)/agents/edit/[id]/form\";\nimport { useQuery } from \"@apollo/client\";\nimport { Skeleton } from \"@/components/ui/skeleton\";\nimport { Alert, AlertDescription, AlertTitle } from \"@/components/ui/alert\";\nimport { ExclamationTriangleIcon } from \"@radix-ui/react-icons\";\nimport { GET_AGENT_BY_ID } from \"@/queries/queries\";\nimport { Agent } from \"@/types/models/agent\";\nexport const dynamic = \"force-dynamic\";\n\nexport default function Page({ params }: { params: { id: string } }) {\n\n const { data, loading, error, refetch } = useQuery<{\n agentById: Agent\n }>(GET_AGENT_BY_ID, {\n variables: {\n id: params.id,\n },\n });\n\n if (loading) {\n return <div>\n <Skeleton className=\"w-full h-full\" />\n </div>\n }\n\n if (error) {\n return <Alert variant=\"destructive\">\n <ExclamationTriangleIcon className=\"size-4\" />\n <AlertTitle>Error</AlertTitle>\n <AlertDescription>\n Error loading agent.\n </AlertDescription>\n </Alert>\n }\n\n if (!data?.agentById) {\n return <Alert variant=\"destructive\">\n <ExclamationTriangleIcon className=\"size-4\" />\n <AlertTitle>Error</AlertTitle>\n <AlertDescription>\n Agent not found.\n </AlertDescription>\n </Alert>\n }\n\n return (\n <AgentForm\n agent={data.agentById}\n refetch={refetch}\n />\n );\n}\n","'use client';\n\nimport { Button } from '@/components/ui/button';\nimport { cn } from '@/lib/utils';\nimport { CheckIcon, CopyIcon } from 'lucide-react';\nimport type { ComponentProps, HTMLAttributes, ReactNode } from 'react';\nimport { createContext, useContext, useState } from 'react';\nimport { Prism as SyntaxHighlighter } from 'react-syntax-highlighter';\nimport {\n oneDark,\n oneLight,\n} from 'react-syntax-highlighter/dist/esm/styles/prism';\n\ntype CodeBlockContextType = {\n code: string;\n};\n\nconst CodeBlockContext = createContext<CodeBlockContextType>({\n code: '',\n});\n\nexport type CodeBlockProps = HTMLAttributes<HTMLDivElement> & {\n code: string;\n language: string;\n showLineNumbers?: boolean;\n children?: ReactNode;\n};\n\nexport const CodeBlock = ({\n code,\n language,\n showLineNumbers = false,\n className,\n children,\n ...props\n}: CodeBlockProps) => (\n <CodeBlockContext.Provider value={{ code }}>\n <div\n className={cn(\n 'relative w-full overflow-hidden rounded-md border bg-background text-foreground',\n className\n )}\n {...props}\n >\n <div className=\"relative\">\n <SyntaxHighlighter\n className=\"overflow-hidden dark:hidden\"\n codeTagProps={{\n className: 'font-mono text-sm',\n }}\n customStyle={{\n margin: 0,\n padding: '1rem',\n fontSize: '0.875rem',\n background: 'hsl(var(--background))',\n color: 'hsl(var(--foreground))',\n }}\n language={language}\n lineNumberStyle={{\n color: 'hsl(var(--muted-foreground))',\n paddingRight: '1rem',\n minWidth: '2.5rem',\n }}\n showLineNumbers={showLineNumbers}\n style={oneLight}\n >\n {code}\n </SyntaxHighlighter>\n <SyntaxHighlighter\n className=\"hidden overflow-hidden dark:block\"\n codeTagProps={{\n className: 'font-mono text-sm',\n }}\n customStyle={{\n margin: 0,\n padding: '1rem',\n fontSize: '0.875rem',\n background: 'hsl(var(--background))',\n color: 'hsl(var(--foreground))',\n }}\n language={language}\n lineNumberStyle={{\n color: 'hsl(var(--muted-foreground))',\n paddingRight: '1rem',\n minWidth: '2.5rem',\n }}\n showLineNumbers={showLineNumbers}\n style={oneDark}\n >\n {code}\n </SyntaxHighlighter>\n {children && (\n <div className=\"absolute top-2 right-2 flex items-center gap-2\">\n {children}\n </div>\n )}\n </div>\n </div>\n </CodeBlockContext.Provider>\n);\n\nexport type CodeBlockCopyButtonProps = ComponentProps<typeof Button> & {\n onCopy?: () => void;\n onError?: (error: Error) => void;\n timeout?: number;\n};\n\nexport const CodeBlockCopyButton = ({\n onCopy,\n onError,\n timeout = 2000,\n children,\n className,\n ...props\n}: CodeBlockCopyButtonProps) => {\n const [isCopied, setIsCopied] = useState(false);\n const { code } = useContext(CodeBlockContext);\n\n const copyToClipboard = async () => {\n if (typeof window === 'undefined' || !navigator.clipboard.writeText) {\n onError?.(new Error('Clipboard API not available'));\n return;\n }\n\n try {\n await navigator.clipboard.writeText(code);\n setIsCopied(true);\n onCopy?.();\n setTimeout(() => setIsCopied(false), timeout);\n } catch (error) {\n onError?.(error as Error);\n }\n };\n\n const Icon = isCopied ? CheckIcon : CopyIcon;\n\n return (\n <Button\n className={cn('shrink-0', className)}\n onClick={copyToClipboard}\n size=\"icon\"\n variant=\"ghost\"\n {...props}\n >\n {children ?? <Icon size={14} />}\n </Button>\n );\n};\n","'use client';\n\nimport { cn } from '@/lib/utils';\nimport type { ComponentProps, HTMLAttributes } from 'react';\nimport { isValidElement, memo } from 'react';\nimport ReactMarkdown, { type Options } from 'react-markdown';\nimport rehypeKatex from 'rehype-katex';\nimport remarkGfm from 'remark-gfm';\nimport remarkMath from 'remark-math';\nimport { CodeBlock, CodeBlockCopyButton } from './code-block';\nimport 'katex/dist/katex.min.css';\nimport hardenReactMarkdown from 'harden-react-markdown';\n\n/**\n * Parses markdown text and removes incomplete tokens to prevent partial rendering\n * of links, images, bold, and italic formatting during streaming.\n */\nfunction parseIncompleteMarkdown(text: string): string {\n if (!text || typeof text !== 'string') {\n return text;\n }\n\n let result = text;\n\n // Handle incomplete links and images\n // Pattern: [...] or ![...] where the closing ] is missing\n const linkImagePattern = /(!?\\[)([^\\]]*?)$/;\n const linkMatch = result.match(linkImagePattern);\n if (linkMatch) {\n // If we have an unterminated [ or ![, remove it and everything after\n const startIndex = result.lastIndexOf(linkMatch[1]);\n result = result.substring(0, startIndex);\n }\n\n // Handle incomplete bold formatting (**)\n const boldPattern = /(\\*\\*)([^*]*?)$/;\n const boldMatch = result.match(boldPattern);\n if (boldMatch) {\n // Count the number of ** in the entire string\n const asteriskPairs = (result.match(/\\*\\*/g) || []).length;\n // If odd number of **, we have an incomplete bold - complete it\n if (asteriskPairs % 2 === 1) {\n result = `${result}**`;\n }\n }\n\n // Handle incomplete italic formatting (__)\n const italicPattern = /(__)([^_]*?)$/;\n const italicMatch = result.match(italicPattern);\n if (italicMatch) {\n // Count the number of __ in the entire string\n const underscorePairs = (result.match(/__/g) || []).length;\n // If odd number of __, we have an incomplete italic - complete it\n if (underscorePairs % 2 === 1) {\n result = `${result}__`;\n }\n }\n\n // Handle incomplete single asterisk italic (*)\n const singleAsteriskPattern = /(\\*)([^*]*?)$/;\n const singleAsteriskMatch = result.match(singleAsteriskPattern);\n if (singleAsteriskMatch) {\n // Count single asterisks that aren't part of **\n const singleAsterisks = result.split('').reduce((acc, char, index) => {\n if (char === '*') {\n // Check if it's part of a ** pair\n const prevChar = result[index - 1];\n const nextChar = result[index + 1];\n if (prevChar !== '*' && nextChar !== '*') {\n return acc + 1;\n }\n }\n return acc;\n }, 0);\n\n // If odd number of single *, we have an incomplete italic - complete it\n if (singleAsterisks % 2 === 1) {\n result = `${result}*`;\n }\n }\n\n // Handle incomplete single underscore italic (_)\n const singleUnderscorePattern = /(_)([^_]*?)$/;\n const singleUnderscoreMatch = result.match(singleUnderscorePattern);\n if (singleUnderscoreMatch) {\n // Count single underscores that aren't part of __\n const singleUnderscores = result.split('').reduce((acc, char, index) => {\n if (char === '_') {\n // Check if it's part of a __ pair\n const prevChar = result[index - 1];\n const nextChar = result[index + 1];\n if (prevChar !== '_' && nextChar !== '_') {\n return acc + 1;\n }\n }\n return acc;\n }, 0);\n\n // If odd number of single _, we have an incomplete italic - complete it\n if (singleUnderscores % 2 === 1) {\n result = `${result}_`;\n }\n }\n\n // Handle incomplete inline code blocks (`) - but avoid code blocks (```)\n const inlineCodePattern = /(`)([^`]*?)$/;\n const inlineCodeMatch = result.match(inlineCodePattern);\n if (inlineCodeMatch) {\n // Check if we're dealing with a code block (triple backticks)\n const hasCodeBlockStart = result.includes('```');\n const codeBlockPattern = /```[\\s\\S]*?```/g;\n const completeCodeBlocks = (result.match(codeBlockPattern) || []).length;\n const allTripleBackticks = (result.match(/```/g) || []).length;\n\n // If we have an odd number of ``` sequences, we're inside an incomplete code block\n // In this case, don't complete inline code\n const insideIncompleteCodeBlock = allTripleBackticks % 2 === 1;\n\n if (!insideIncompleteCodeBlock) {\n // Count the number of single backticks that are NOT part of triple backticks\n let singleBacktickCount = 0;\n for (let i = 0; i < result.length; i++) {\n if (result[i] === '`') {\n // Check if this backtick is part of a triple backtick sequence\n const isTripleStart = result.substring(i, i + 3) === '```';\n const isTripleMiddle =\n i > 0 && result.substring(i - 1, i + 2) === '```';\n const isTripleEnd = i > 1 && result.substring(i - 2, i + 1) === '```';\n\n if (!(isTripleStart || isTripleMiddle || isTripleEnd)) {\n singleBacktickCount++;\n }\n }\n }\n\n // If odd number of single backticks, we have an incomplete inline code - complete it\n if (singleBacktickCount % 2 === 1) {\n result = `${result}\\``;\n }\n }\n }\n\n // Handle incomplete strikethrough formatting (~~)\n const strikethroughPattern = /(~~)([^~]*?)$/;\n const strikethroughMatch = result.match(strikethroughPattern);\n if (strikethroughMatch) {\n // Count the number of ~~ in the entire string\n const tildePairs = (result.match(/~~/g) || []).length;\n // If odd number of ~~, we have an incomplete strikethrough - complete it\n if (tildePairs % 2 === 1) {\n result = `${result}~~`;\n }\n }\n\n return result;\n}\n\n// Create a hardened version of ReactMarkdown\nconst HardenedMarkdown = hardenReactMarkdown(ReactMarkdown);\n\nexport type ResponseProps = HTMLAttributes<HTMLDivElement> & {\n options?: Options;\n children: Options['children'];\n allowedImagePrefixes?: ComponentProps<\n ReturnType<typeof hardenReactMarkdown>\n >['allowedImagePrefixes'];\n allowedLinkPrefixes?: ComponentProps<\n ReturnType<typeof hardenReactMarkdown>\n >['allowedLinkPrefixes'];\n defaultOrigin?: ComponentProps<\n ReturnType<typeof hardenReactMarkdown>\n >['defaultOrigin'];\n parseIncompleteMarkdown?: boolean;\n};\n\nconst components: Options['components'] = {\n ol: ({ node, children, className, ...props }) => (\n <ol className={cn('ml-4 list-outside list-decimal', className)} {...props}>\n {children}\n </ol>\n ),\n li: ({ node, children, className, ...props }) => (\n <li className={cn('py-1', className)} {...props}>\n {children}\n </li>\n ),\n ul: ({ node, children, className, ...props }) => (\n <ul className={cn('ml-4 list-outside list-disc', className)} {...props}>\n {children}\n </ul>\n ),\n hr: ({ node, className, ...props }) => (\n <hr className={cn('my-6 border-border', className)} {...props} />\n ),\n strong: ({ node, children, className, ...props }) => (\n <span className={cn('font-semibold', className)} {...props}>\n {children}\n </span>\n ),\n a: ({ node, children, className, ...props }) => (\n <a\n className={cn('font-medium text-primary underline', className)}\n rel=\"noreferrer\"\n target=\"_blank\"\n {...props}\n >\n {children}\n </a>\n ),\n h1: ({ node, children, className, ...props }) => (\n <h1\n className={cn('mt-6 mb-2 font-semibold text-3xl', className)}\n {...props}\n >\n {children}\n </h1>\n ),\n h2: ({ node, children, className, ...props }) => (\n <h2\n className={cn('mt-6 mb-2 font-semibold text-2xl', className)}\n {...props}\n >\n {children}\n </h2>\n ),\n h3: ({ node, children, className, ...props }) => (\n <h3 className={cn('mt-6 mb-2 font-semibold text-xl', className)} {...props}>\n {children}\n </h3>\n ),\n h4: ({ node, children, className, ...props }) => (\n <h4 className={cn('mt-6 mb-2 font-semibold text-lg', className)} {...props}>\n {children}\n </h4>\n ),\n h5: ({ node, children, className, ...props }) => (\n <h5\n className={cn('mt-6 mb-2 font-semibold text-base', className)}\n {...props}\n >\n {children}\n </h5>\n ),\n h6: ({ node, children, className, ...props }) => (\n <h6 className={cn('mt-6 mb-2 font-semibold text-sm', className)} {...props}>\n {children}\n </h6>\n ),\n table: ({ node, children, className, ...props }) => (\n <div className=\"my-4 overflow-x-auto\">\n <table\n className={cn('w-full border-collapse border border-border', className)}\n {...props}\n >\n {children}\n </table>\n </div>\n ),\n thead: ({ node, children, className, ...props }) => (\n <thead className={cn('bg-muted/50', className)} {...props}>\n {children}\n </thead>\n ),\n tbody: ({ node, children, className, ...props }) => (\n <tbody className={cn('divide-y divide-border', className)} {...props}>\n {children}\n </tbody>\n ),\n tr: ({ node, children, className, ...props }) => (\n <tr className={cn('border-border border-b', className)} {...props}>\n {children}\n </tr>\n ),\n th: ({ node, children, className, ...props }) => (\n <th\n className={cn('px-4 py-2 text-left font-semibold text-sm', className)}\n {...props}\n >\n {children}\n </th>\n ),\n td: ({ node, children, className, ...props }) => (\n <td className={cn('px-4 py-2 text-sm', className)} {...props}>\n {children}\n </td>\n ),\n blockquote: ({ node, children, className, ...props }) => (\n <blockquote\n className={cn(\n 'my-4 border-muted-foreground/30 border-l-4 pl-4 text-muted-foreground italic',\n className\n )}\n {...props}\n >\n {children}\n </blockquote>\n ),\n code: ({ node, className, ...props }) => {\n const inline = node?.position?.start.line === node?.position?.end.line;\n\n if (!inline) {\n return <code className={className} {...props} />;\n }\n\n return (\n <code\n className={cn(\n 'rounded bg-muted px-1.5 py-0.5 font-mono text-sm',\n className\n )}\n {...props}\n />\n );\n },\n pre: ({ node, className, children }) => {\n let language = 'javascript';\n\n if (typeof node?.properties?.className === 'string') {\n language = node.properties.className.replace('language-', '');\n }\n\n // Extract code content from children safely\n let code = '';\n if (\n isValidElement(children) &&\n children.props &&\n typeof children.props.children === 'string'\n ) {\n code = children.props.children;\n } else if (typeof children === 'string') {\n code = children;\n }\n\n return (\n <CodeBlock\n className={cn('my-4 h-auto', className)}\n code={code}\n language={language}\n >\n <CodeBlockCopyButton\n onCopy={() => console.log('Copied code to clipboard')}\n onError={() => console.error('Failed to copy code to clipboard')}\n />\n </CodeBlock>\n );\n },\n};\n\nexport const Response = memo(\n ({\n className,\n options,\n children,\n allowedImagePrefixes,\n allowedLinkPrefixes,\n defaultOrigin,\n parseIncompleteMarkdown: shouldParseIncompleteMarkdown = true,\n ...props\n }: ResponseProps) => {\n // Parse the children to remove incomplete markdown tokens if enabled\n const parsedChildren =\n typeof children === 'string' && shouldParseIncompleteMarkdown\n ? parseIncompleteMarkdown(children)\n : children;\n\n return (\n <div\n className={cn(\n 'size-full [&>*:first-child]:mt-0 [&>*:last-child]:mb-0',\n className\n )}\n {...props}\n >\n <HardenedMarkdown\n allowedImagePrefixes={allowedImagePrefixes ?? ['*']}\n allowedLinkPrefixes={allowedLinkPrefixes ?? ['*']}\n components={components}\n defaultOrigin={defaultOrigin}\n rehypePlugins={[rehypeKatex]}\n remarkPlugins={[remarkGfm, remarkMath]}\n {...options}\n >\n {parsedChildren}\n </HardenedMarkdown>\n </div>\n );\n },\n (prevProps, nextProps) => prevProps.children === nextProps.children\n);\n\nResponse.displayName = 'Response';\n","import { cva, type VariantProps } from \"class-variance-authority\";\nimport * as React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nconst alertVariants = cva(\n \"relative w-full rounded-lg border p-4 [&>svg~*]:pl-7 [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground\",\n {\n variants: {\n variant: {\n default: \"bg-background text-foreground\",\n destructive:\n \"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive\",\n info: \"border-info/50 text-info dark:border-info [&>svg]:text-info\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n },\n);\n\nconst Alert = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement> & VariantProps<typeof alertVariants>\n>(({ className, variant, ...props }, ref) => (\n <div\n ref={ref}\n role=\"alert\"\n className={cn(alertVariants({ variant }), className)}\n {...props}\n />\n));\nAlert.displayName = \"Alert\";\n\nconst AlertTitle = React.forwardRef<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLHeadingElement>\n>(({ className, ...props }, ref) => (\n <h5\n ref={ref}\n className={cn(\"mb-1 font-medium leading-none tracking-tight\", className)}\n {...props}\n />\n));\nAlertTitle.displayName = \"AlertTitle\";\n\nconst AlertDescription = React.forwardRef<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLParagraphElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\"text-sm [&_p]:leading-relaxed\", className)}\n {...props}\n />\n));\nAlertDescription.displayName = \"AlertDescription\";\n\nexport { Alert, AlertTitle, AlertDescription };\n","\"use client\";\n\nimport * as CollapsiblePrimitive from \"@radix-ui/react-collapsible\";\n\nconst Collapsible = CollapsiblePrimitive.Root;\n\nconst CollapsibleTrigger = CollapsiblePrimitive.CollapsibleTrigger;\n\nconst CollapsibleContent = CollapsiblePrimitive.CollapsibleContent;\n\nexport { Collapsible, CollapsibleTrigger, CollapsibleContent };\n","\"use client\";\n\nimport * as TabsPrimitive from \"@radix-ui/react-tabs\";\nimport * as React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nconst Tabs = TabsPrimitive.Root;\n\nconst TabsList = React.forwardRef<\n React.ElementRef<typeof TabsPrimitive.List>,\n React.ComponentPropsWithoutRef<typeof TabsPrimitive.List>\n>(({ className, ...props }, ref) => (\n <TabsPrimitive.List\n ref={ref}\n className={cn(\n \"inline-flex h-10 items-center justify-center rounded-md bg-muted p-1 text-muted-foreground\",\n className,\n )}\n {...props}\n />\n));\nTabsList.displayName = TabsPrimitive.List.displayName;\n\nconst TabsTrigger = React.forwardRef<\n React.ElementRef<typeof TabsPrimitive.Trigger>,\n React.ComponentPropsWithoutRef<typeof TabsPrimitive.Trigger>\n>(({ className, ...props }, ref) => (\n <TabsPrimitive.Trigger\n ref={ref}\n className={cn(\n \"inline-flex items-center justify-center whitespace-nowrap rounded-sm px-3 py-1.5 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm\",\n className,\n )}\n {...props}\n />\n));\nTabsTrigger.displayName = TabsPrimitive.Trigger.displayName;\n\nconst TabsContent = React.forwardRef<\n React.ElementRef<typeof TabsPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof TabsPrimitive.Content>\n>(({ className, ...props }, ref) => (\n <TabsPrimitive.Content\n ref={ref}\n className={cn(\n \"mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\",\n className,\n )}\n {...props}\n />\n));\nTabsContent.displayName = TabsPrimitive.Content.displayName;\n\nexport { Tabs, TabsList, TabsTrigger, TabsContent };\n","\"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 { useEffect, useState, useContext } from \"react\";\nimport Uppy from \"@uppy/core\";\nimport AwsS3 from \"@uppy/aws-s3\";\nimport \"@uppy/core/dist/style.min.css\";\nimport \"@uppy/dashboard/dist/style.min.css\";\nimport '@uppy/core/dist/style.min.css';\nimport '@uppy/dashboard/dist/style.min.css';\nimport { getToken } from \"@/util/api\";\nimport { ConfigContext } from \"@/components/config-context\";\n\ninterface InitializeOptions {\n backend: string;\n callbacks?: {\n uploadSuccess?: (response: {\n file: any | null;\n url: string\n key: string\n }) => void;\n };\n fileKey?: string;\n fileKeyPrefix?: string;\n maxNumberOfFiles?: number;\n uppyOptions?: {\n id?: string;\n allowedFileTypes: string[];\n };\n useName?: boolean;\n}\n\nexport const initializeUppy = async (options: InitializeOptions): Promise<Uppy> => {\n if (!options.backend) {\n throw new Error(\"No backend set.\")\n }\n const { callbacks, maxNumberOfFiles, uppyOptions } = options || {};\n const { uploadSuccess } = callbacks || {};\n const { allowedFileTypes, id } = uppyOptions || {};\n const token = await getToken()\n\n const uppy = new Uppy({\n autoProceed: true,\n debug: false,\n id: id || \"uppy\",\n restrictions: {\n maxNumberOfFiles: maxNumberOfFiles || 5,\n allowedFileTypes: allowedFileTypes || [\".heic\", \".jpg\", \".jpeg\", \".png\", \".webp\", \".svg\"],\n }\n })\n .use(AwsS3, {\n id: \"Exulu\",\n endpoint: options.backend,\n headers: { \n Authorization: `Bearer ${token}`,\n Session: localStorage.getItem(\"session\") ?? \"\",\n }\n })\n .on(\"file-added\", async (file) => {\n console.debug(\"added\", file);\n })\n .on(\"upload-error\", (file, error) => {\n if (!file?.id) {\n return;\n }\n uppy.removeFile(file?.id);\n console.error(\"error\", error);\n })\n .on(\"upload-success\", (file, response) => {\n if (!response.uploadURL) {\n return;\n }\n if (uploadSuccess) {\n console.log(\"response\", response)\n uploadSuccess({\n file: file,\n key: response.uploadURL.split(\"/\").pop() || \"\",\n url: response.uploadURL,\n });\n }\n });\n\n return uppy;\n};\n\nfunction useUppy(options: InitializeOptions, deps: any[] = []) {\n const configContext = useContext(ConfigContext);\n const [uppy, setUppy] = useState<Uppy | undefined>(undefined);\n useEffect(() => {\n const initUppy = async () => {\n const uppyInstance = await initializeUppy({\n ...options,\n backend: configContext?.backend || \"\",\n });\n setUppy(uppyInstance);\n };\n initUppy()\n return () => {\n if (uppy) {\n uppy.destroy();\n setUppy(undefined);\n }\n };\n }, [...deps]);\n\n return uppy;\n}\n\nexport default useUppy;\n","import useUppy from \"@/hooks/use-uppy\";\nimport { Dashboard } from '@uppy/react';\nimport { useContext, useEffect, useState } from \"react\"\nimport { X, File, ImageIcon, FileText, FilePlus, Download, LoaderIcon, FileWarning, Upload, PlusSquareIcon, EyeIcon, PlusIcon, ChevronRightIcon, ChevronLeftIcon } from \"lucide-react\"\nimport { Button } from \"@/components/ui/button\"\nimport {\n Dialog,\n DialogContent,\n DialogDescription,\n DialogHeader,\n DialogTitle,\n DialogTrigger,\n} from \"@/components/ui/dialog\"\nimport { ScrollArea } from \"@/components/ui/scroll-area\"\nimport '@uppy/core/dist/style.min.css';\nimport '@uppy/dashboard/dist/style.min.css';\nimport { files, S3FileListOutput } from \"@/util/api\"\nimport { useTheme } from \"next-themes\";\nimport { ConfigContext } from \"./config-context\";\nimport { useQuery as useTanstackQuery, useMutation as useTanstackMutation } from \"@tanstack/react-query\";\nimport { Loading } from \"./ui/loading\";\nimport { allFileTypes } from \"@/types/models/agent\";\nimport { Input } from \"./ui/input\";\nimport { DoubleArrowLeftIcon } from \"@radix-ui/react-icons\";\nimport { Card, CardContent, CardHeader, CardTitle } from \"./ui/card\";\nimport { Skeleton } from \"./ui/skeleton\";\n\nexport function FileDataCard({ s3key, children }: { s3key: string, children?: React.ReactNode }) {\n const { data, isLoading, error, refetch } = useTanstackQuery({\n queryKey: ['fileObject', s3key],\n queryFn: async () => {\n if (!s3key) {\n return null;\n }\n const result = await files.object(s3key);\n return result;\n },\n enabled: s3key !== undefined && s3key !== null,\n })\n\n useEffect(() => {\n if (s3key) {\n refetch();\n }\n }, [s3key]);\n\n if (!s3key) {\n return <Card>\n <CardContent className=\"p-3 flex\">\n <p className=\"text-sm text-muted-foreground m-auto\">No file selected</p>\n {children}\n </CardContent>\n </Card>;\n }\n\n // also filter out [bucket:name] from the key if [bucket:name] is present\n let name = s3key;\n let bucket = \"\";\n if (s3key.includes(\"[bucket:\")) {\n bucket = s3key.split(\"[bucket:\")[1]?.split(\"]\")[0] || \"\";\n name = s3key.split(\"[bucket:\")[1]?.split(\"]\")[0] || \"\";\n if (name?.length) {\n name = s3key.split(\"]\")[1] || \"\";\n }\n }\n // Get the part after _EXULU_\n name = name.split(\"_EXULU_\").pop() || \"\";\n\n return <Card>\n <CardHeader className=\"pb-3\">\n <CardTitle className=\"text-sm max-w-[500px] truncate\">\n {name}\n </CardTitle>\n </CardHeader>\n <CardContent className=\"pt-0\">\n {\n isLoading && (\n <div className=\"space-y-2\">\n <Skeleton className=\"h-4 w-full\" />\n <Skeleton className=\"h-4 w-2/3\" />\n </div>\n )\n }\n {!isLoading && data && (\n <div className=\"space-y-2\">\n <div className=\"flex items-center justify-between text-xs text-muted-foreground\">\n <span className=\"capitalize\">\n {data?.ContentType.split(\"/\").pop()}\n {bucket && ` [Bucket: ${bucket}]`}\n </span>\n <span>{(data?.ContentLength / 1024 / 1024).toFixed(2)} MB</span>\n </div>\n <div className=\"flex items-center justify-between text-xs text-muted-foreground\">\n <span>Last modified: {new Date(data?.LastModified).toLocaleDateString(\"en-US\", { year: \"numeric\", month: \"long\", day: \"numeric\", hour: \"2-digit\", minute: \"2-digit\" })}</span>\n <Button\n variant=\"secondary\"\n size=\"sm\"\n type=\"button\"\n className=\"h-7 px-2\"\n onClick={() => {\n files.download(s3key).then(async res => {\n console.log(\"res\", res);\n const json = await res.json()\n console.log(\"res\", json);\n const downloadUrl = json.url;\n window.open(downloadUrl, '_blank');\n return;\n })\n }}>\n <span className=\"mr-1 text-xs\">View</span>\n <Download className=\"h-3 w-3\" />\n </Button>\n </div>\n </div>\n )}\n {\n !isLoading && error && (\n <p className=\"text-xs text-muted-foreground\">{error.message}</p>\n )\n }\n {children}\n </CardContent>\n </Card>\n}\n\nexport default function UppyDashboard({ id, allowedFileTypes, dependencies, onConfirm, selectionLimit, buttonText }: {\n id: string,\n buttonText?: string,\n allowedFileTypes?: allFileTypes[],\n selectionLimit: number,\n dependencies: any[],\n onConfirm: (keys: string[]) => void\n}) {\n const [open, setOpen] = useState(false)\n return <Dialog open={open} onOpenChange={setOpen}>\n <DialogTrigger asChild>\n <Button variant=\"outline\">\n {buttonText && (\n <span className=\"mr-2\">{buttonText}</span>\n )\n }\n <FilePlus className=\"h-4 w-4\" />\n </Button>\n </DialogTrigger>\n <DialogContent className=\"sm:max-w-[900px]\">\n <DialogHeader>\n <DialogTitle>File Gallery</DialogTitle>\n <DialogDescription>Browse your previously uploaded files or upload new ones.</DialogDescription>\n </DialogHeader>\n <FileGalleryAndUpload\n id={id}\n allowedFileTypes={allowedFileTypes}\n dependencies={dependencies}\n selectionLimit={selectionLimit}\n onConfirm={(data) => {\n onConfirm(data)\n setOpen(false)\n }}\n />\n </DialogContent>\n </Dialog>;\n}\n\nexport const FileGalleryAndUpload = ({ id, allowedFileTypes, dependencies, onConfirm, selectionLimit }: {\n id: string,\n allowedFileTypes?: allFileTypes[],\n dependencies: any[],\n selectionLimit: number,\n onConfirm: (keys: string[]) => void\n}) => {\n\n if (!allowedFileTypes) {\n allowedFileTypes = [\n '.png',\n '.jpg',\n '.jpeg',\n '.gif',\n '.webp',\n '.pdf',\n '.docx',\n '.xlsx',\n '.xls',\n '.csv',\n '.pptx',\n '.ppt',\n '.mp3',\n '.wav',\n '.m4a',\n '.mp4',\n '.mpeg',\n '.mp4',\n '.m4a',\n '.mp3',\n '.mpeg',\n '.wav'\n ]\n }\n\n const [search, setSearch] = useState<string | undefined>(undefined)\n const [previousContinuationToken, setPreviousContinuationToken] = useState<string | undefined>(undefined)\n const [currentContinuationToken, setCurrentContinuationToken] = useState<string | undefined>(undefined)\n const configContext = useContext(ConfigContext);\n const [selected, setSelected] = useState<string[]>([])\n\n const addSelected = (key: string) => {\n if (selected.includes(key)) {\n setSelected(selected.filter((s) => s !== key))\n return;\n }\n if (selectionLimit === 1) {\n setSelected([key])\n return;\n }\n if (selected.length >= selectionLimit) {\n return;\n }\n setSelected([...selected, key])\n }\n\n const deleteFile = useTanstackMutation({\n mutationFn: async ({ key }: { key: string }) => {\n await files.delete(key)\n refetch();\n return;\n }\n })\n\n const { data, isLoading: loading, error, refetch } = useTanstackQuery({\n queryKey: ['filesQuery', search, currentContinuationToken],\n staleTime: 30000,\n queryFn: async (): Promise<S3FileListOutput> => {\n return files.list({\n search,\n continuationToken: currentContinuationToken\n })\n },\n })\n\n console.log(\"!! data !!\", data)\n\n const { theme } = useTheme()\n const uppy = useUppy(\n {\n backend: configContext?.backend || \"\",\n uppyOptions: {\n id,\n allowedFileTypes\n },\n callbacks: {\n uploadSuccess: async (data) => {\n console.log(\"data\", data)\n /* \n We no longer create items automatically for files uploaded via uppy.\n const item = {\n name: data.file.name,\n type: data.file.type,\n rights_mode: \"private\",\n s3key: `${user?.id}/${data.key}`\n }\n await createItemMutation({ variables: { input: item } }) */\n },\n },\n maxNumberOfFiles: 10,\n },\n dependencies,\n );\n\n useEffect(() => {\n refetch();\n }, [search, currentContinuationToken]);\n\n // Loading state\n if (!uppy) {\n return null;\n }\n\n return <>\n <div className=\"grid grid-cols-1 md:grid-cols-2 gap-4 mt-4\">\n {/* Left side - Gallery of previously uploaded files */}\n <div className=\"border rounded-lg p-4\">\n <h3 className=\"text-sm font-medium mb-3\">Previously Uploaded Files</h3>\n\n {/* search */}\n <Input\n placeholder=\"Search files...\"\n value={search}\n onChange={(e) => setSearch(e.target.value)}\n className=\"mb-3\"\n />\n <div className=\"flex items-center justify-between text-xs text-muted-foreground pb-2\">\n <span>{selected.length} / {selectionLimit} files selected</span>\n <span>Allowed file types: {allowedFileTypes?.map((type) => type).join(\", \")}</span>\n </div>\n <ScrollArea>\n {loading && (\n <div className=\"flex items-center justify-center h-full w-full grid grid-cols-2 sm:grid-cols-3 gap-3\">\n <Skeleton className=\"h-[120px] w-full\" />\n <Skeleton className=\"h-[120px] w-full\" />\n <Skeleton className=\"h-[120px] w-full\" />\n <Skeleton className=\"h-[120px] w-full\" />\n <Skeleton className=\"h-[120px] w-full\" />\n <Skeleton className=\"h-[120px] w-full\" />\n <Skeleton className=\"h-[120px] w-full\" />\n <Skeleton className=\"h-[120px] w-full\" />\n <Skeleton className=\"h-[120px] w-full\" />\n </div>\n )}\n <div className=\"grid grid-cols-2 sm:grid-cols-3 gap-3\">\n {\n !loading && !data?.Contents?.length && (\n <div className=\"col-span-full flex flex-col items-center justify-center py-12 text-center\">\n <FileWarning className=\"h-12 w-12 text-muted-foreground/50 mb-3\" />\n <p className=\"text-sm font-medium text-muted-foreground\">Nothing to see here... yet!</p>\n <p className=\"text-xs text-muted-foreground/75 mt-1\">Upload some files to get started</p>\n </div>\n )\n }\n {data?.Contents?.map((item: S3FileListOutput[\"Contents\"][0]) => {\n return (\n <FileItem s3Key={item.Key} onSelect={addSelected} active={selected.some((s) => s === item.Key)} onRemove={() => {\n deleteFile.mutate({\n key: item.Key\n })\n }} disabled={!allowedFileTypes ? false : !allowedFileTypes?.some((type) => item.Key.endsWith(type))} />\n )\n })}\n </div>\n\n <div className=\"flex items-center space-x-6 lg:space-x-8 pt-3\">\n <div className=\"flex items-center space-x-2\">\n <Button\n variant=\"outline\"\n className=\"hidden size-8 p-0 lg:flex\"\n onClick={() => {\n setCurrentContinuationToken(undefined)\n }}\n disabled={\n !currentContinuationToken ||\n loading\n }\n >\n <span className=\"sr-only\">Go to first page</span>\n <DoubleArrowLeftIcon className=\"size-4\" />\n </Button>\n <Button\n variant=\"outline\"\n className=\"size-8 p-0\"\n onClick={() => {\n setCurrentContinuationToken(previousContinuationToken)\n }}\n disabled={\n !currentContinuationToken ||\n loading\n }\n >\n <span className=\"sr-only\">Go to previous page</span>\n <ChevronLeftIcon className=\"size-4\" />\n </Button>\n <Button\n variant=\"outline\"\n className=\"size-8 p-0\"\n onClick={() => {\n setPreviousContinuationToken(currentContinuationToken)\n setCurrentContinuationToken(data?.NextContinuationToken)\n }}\n disabled={\n !data?.NextContinuationToken ||\n loading\n }>\n <span className=\"sr-only\">Go to next page</span>\n <ChevronRightIcon className=\"size-4\" />\n </Button>\n </div>\n </div>\n </ScrollArea>\n </div>\n {/* Right side - Upload area */}\n <div className=\"border rounded-lg p-4\">\n <h3 className=\"text-sm font-medium mb-3\">Upload New Files</h3>\n <Dashboard uppy={uppy} theme={theme === \"dark\" ? \"dark\" : \"light\"} />\n </div>\n </div>\n <div className=\"flex justify-end\">\n <Button variant=\"outline\" onClick={() => {\n onConfirm(selected)\n setSelected([])\n }}>\n Confirm\n </Button>\n </div>\n </>\n}\n\nexport const FileItem = ({ s3Key, onSelect, onRemove, active, disabled, addToContext }: {\n s3Key: string,\n onSelect?: (key: string) => void,\n onRemove?: (key: string) => void,\n active: boolean,\n disabled: boolean,\n addToContext?: (key: string) => void\n}) => {\n const getFileIcon = (s3Key: string) => {\n if (!s3Key) {\n return <FileText className=\"h-6 w-6 text-gray-500\" />\n }\n if (\n s3Key.toLowerCase().endsWith(\"jpg\") ||\n s3Key.toLowerCase().endsWith(\"jpeg\") ||\n s3Key.toLowerCase().endsWith(\"png\") ||\n s3Key.toLowerCase().endsWith(\"svg\")\n ) {\n return <ImageIcon className=\"h-6 w-6 text-blue-500\" />\n } else if (s3Key.endsWith(\"pdf\")) {\n return <File className=\"h-6 w-6 text-red-500\" />\n } else if (s3Key.endsWith(\"xls\") || s3Key.endsWith(\"xlsx\") || s3Key.endsWith(\"csv\")) {\n return <FileText className=\"h-6 w-6 text-green-500\" />\n } else if (s3Key.endsWith(\"ppt\") || s3Key.endsWith(\"pptx\")) {\n return <FileText className=\"h-6 w-6 text-orange-500\" />\n } else {\n return <FileText className=\"h-6 w-6 text-gray-500\" />\n }\n }\n\n return (\n <div\n key={s3Key}\n className={`${disabled ? 'opacity-50' : ''} group relative rounded-lg p-2 hover:bg-muted transition-colors cursor-pointer ${active ? 'border border-purple-500' : 'border'}`}\n onClick={() => {\n if (!disabled && onSelect) {\n onSelect(s3Key)\n }\n }}>\n <div className=\"aspect-square relative mb-2 bg-muted/50 rounded-md overflow-hidden flex items-center justify-center\">\n {(\n s3Key && (\n s3Key.toLowerCase().endsWith(\"jpg\") ||\n s3Key.toLowerCase().endsWith(\"jpeg\") ||\n s3Key.toLowerCase().endsWith(\"png\") ||\n s3Key.toLowerCase().endsWith(\"svg\")\n )\n ) ? (\n <SecureImageRenderComponent fileKey={s3Key} />\n ) : (\n <div className=\"flex flex-col items-center justify-center h-full\">\n {getFileIcon(s3Key)}\n <span className=\"text-xs text-muted-foreground mt-1 text-center\">{s3Key ? s3Key.split(\"_EXULU_\").pop() : s3Key}</span>\n </div>\n )}\n </div>\n <p className=\"text-xs truncate\">{s3Key ? s3Key.split(\"_EXULU_\").pop() : s3Key}</p>\n <div className=\"opacity-0 group-hover:opacity-100 flex absolute top-1 right-1\">\n\n {addToContext && (\n <Button variant=\"ghost\" size=\"icon\" type=\"button\" className=\"h-6 w-6 bg-background/80 hover:bg-background\" onClick={() => {\n addToContext(s3Key)\n }}>\n <PlusIcon className=\"h-3 w-3\" />\n <span className=\"sr-only\">Add</span>\n </Button>\n )}\n\n <Button\n variant=\"ghost\"\n size=\"icon\"\n type=\"button\"\n className=\"h-6 w-6 bg-background/80 hover:bg-background\"\n onClick={() => {\n files.download(s3Key).then(async res => {\n console.log(\"res\", res);\n const json = await res.json()\n console.log(\"res\", json);\n const downloadUrl = json.url;\n window.open(downloadUrl, '_blank');\n return;\n })\n }}>\n <Download className=\"h-3 w-3\" />\n <span className=\"sr-only\">View</span>\n </Button>\n\n {onRemove && (\n <Button\n onClick={(e) => {\n e.stopPropagation()\n onRemove(s3Key)\n }}\n variant=\"ghost\"\n type=\"button\"\n size=\"icon\"\n className=\"h-6 w-6 opacity-0 group-hover:opacity-100 bg-background/80 hover:bg-background ml-1\">\n <X className=\"h-3 w-3\" />\n <span className=\"sr-only\">Remove</span>\n </Button>\n )}\n </div>\n </div>\n )\n}\n\nlet signedUrlCache: {\n [key: string]: {\n url: string;\n expiresAt: number;\n }\n} = {};\n\nexport const getPresignedUrl = async (fileKey: string) => {\n if (signedUrlCache[fileKey]) {\n if (signedUrlCache[fileKey].expiresAt < Date.now()) {\n delete signedUrlCache[fileKey];\n } else {\n return signedUrlCache[fileKey].url;\n }\n }\n const response = await files.download(fileKey)\n const json = await response.json();\n console.log(\"json\", json)\n signedUrlCache[fileKey] = {\n url: json.url,\n expiresAt: Date.now() + 60 * 1000, // 1 minute\n }\n return json.url;\n}\n\nconst SecureImageRenderComponent = ({ fileKey }: { fileKey: string }) => {\n // Gets a signed key to show the image\n console.log(\"key\", fileKey)\n const query = useTanstackQuery({\n queryKey: ['imageQuery', fileKey],\n staleTime: 30000,\n queryFn: async () => {\n return getPresignedUrl(fileKey)\n },\n })\n\n if (query.isLoading) {\n return <div><LoaderIcon /></div>\n }\n\n if (!query.isLoading && !query.data) {\n return <div><FileWarning /></div>\n }\n\n return (<img\n src={query.data}\n alt={fileKey}\n className=\"object-cover w-full h-full\"\n />)\n\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  - 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 Info\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview  - https://lucide.dev/icons/info\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 Info = createLucideIcon('Info', [\n ['circle', { cx: '12', cy: '12', r: '10', key: '1mglay' }],\n ['path', { d: 'M12 16v-4', key: '1dtifu' }],\n ['path', { d: 'M12 8h.01', key: 'e9boi3' }],\n]);\n\nexport default Info;\n","import { toDate } from \"./toDate.mjs\";\n\n/**\n * @name differenceInCalendarMonths\n * @category Month Helpers\n * @summary Get the number of calendar months between the given dates.\n *\n * @description\n * Get the number of calendar months between the given dates.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param dateLeft - The later date\n * @param dateRight - The earlier date\n *\n * @returns The number of calendar months\n *\n * @example\n * // How many calendar months are between 31 January 2014 and 1 September 2014?\n * const result = differenceInCalendarMonths(\n * new Date(2014, 8, 1),\n * new Date(2014, 0, 31)\n * )\n * //=> 8\n */\nexport function differenceInCalendarMonths(dateLeft, dateRight) {\n const _dateLeft = toDate(dateLeft);\n const _dateRight = toDate(dateRight);\n\n const yearDiff = _dateLeft.getFullYear() - _dateRight.getFullYear();\n const monthDiff = _dateLeft.getMonth() - _dateRight.getMonth();\n\n return yearDiff * 12 + monthDiff;\n}\n\n// Fallback for modularized imports:\nexport default differenceInCalendarMonths;\n","import { toDate } from \"./toDate.mjs\";\n\n/**\n * @name endOfMonth\n * @category Month Helpers\n * @summary Return the end of a month for the given date.\n *\n * @description\n * Return the end of a month for the given date.\n * The result will be in the local timezone.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param date - The original date\n *\n * @returns The end of a month\n *\n * @example\n * // The end of a month for 2 September 2014 11:55:00:\n * const result = endOfMonth(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Tue Sep 30 2014 23:59:59.999\n */\nexport function endOfMonth(date) {\n const _date = toDate(date);\n const month = _date.getMonth();\n _date.setFullYear(_date.getFullYear(), month + 1, 0);\n _date.setHours(23, 59, 59, 999);\n return _date;\n}\n\n// Fallback for modularized imports:\nexport default endOfMonth;\n"],"names":["Promise","resolve","then","__webpack_require__","bind","dynamic","Page","param","params","data","loading","error","refetch","useQuery","GET_AGENT_BY_ID","variables","id","react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__","jsx","div","Skeleton","className","jsxs","Alert","variant","ExclamationTriangleIcon","AlertTitle","AlertDescription","agentById","AgentForm","agent","CodeBlockContext","createContext","code","CodeBlock","language","showLineNumbers","children","props","Provider","value","cn","SyntaxHighlighter","codeTagProps","customStyle","margin","padding","fontSize","background","color","lineNumberStyle","paddingRight","minWidth","style","oneLight","oneDark","CodeBlockCopyButton","onCopy","onError","timeout","isCopied","setIsCopied","useState","useContext","copyToClipboard","navigator","clipboard","writeText","setTimeout","Icon","CheckIcon","CopyIcon","Button","onClick","size","HardenedMarkdown","hardenReactMarkdown","ReactMarkdown","components","ol","node","li","ul","hr","strong","span","a","rel","target","h1","h2","h3","h4","h5","h6","table","thead","tbody","tr","th","td","blockquote","position","start","line","end","pre","properties","replace","isValidElement","console","log","Response","memo","options","allowedImagePrefixes","allowedLinkPrefixes","defaultOrigin","parseIncompleteMarkdown","shouldParseIncompleteMarkdown","parsedChildren","text","result","linkMatch","match","startIndex","lastIndexOf","substring","asteriskPairs","length","concat","underscorePairs","singleAsterisks","split","reduce","acc","char","index","prevChar","nextChar","singleUnderscores","includes","singleBacktickCount","i","isTripleStart","isTripleMiddle","isTripleEnd","tildePairs","rehypePlugins","rehypeKatex","remarkPlugins","remarkGfm","remarkMath","prevProps","nextProps","displayName","alertVariants","cva","variants","default","destructive","info","defaultVariants","React","ref","role","Collapsible","CollapsiblePrimitive","CollapsibleTrigger","CollapsibleContent","Tabs","TabsPrimitive","TabsList","TabsTrigger","TabsContent","count","toastTimeouts","Map","addToRemoveQueue","has","toastId","delete","dispatch","type","set","reducer","state","action","toasts","toast","slice","map","t","forEach","undefined","open","filter","listeners","memoryState","listener","Number","MAX_SAFE_INTEGER","toString","dismiss","onOpenChange","update","useToast","setState","push","indexOf","splice","initializeUppy","localStorage","backend","callbacks","maxNumberOfFiles","uppyOptions","uploadSuccess","allowedFileTypes","token","getToken","uppy","Uppy","autoProceed","debug","restrictions","use","AwsS3","endpoint","headers","Authorization","Session","getItem","on","file","removeFile","response","uploadURL","key","pop","url","use_uppy","deps","configContext","ConfigContext","setUppy","useEffect","initUppy","destroy","FileDataCard","s3key","isLoading","useTanstackQuery","queryKey","queryFn","files","object","enabled","jsx_runtime","Card","CardContent","p","name","bucket","CardHeader","CardTitle","ContentType","ContentLength","toFixed","Date","LastModified","toLocaleDateString","year","month","day","hour","minute","download","res","json","downloadUrl","window","Download","message","UppyDashboard","dependencies","onConfirm","selectionLimit","buttonText","setOpen","Dialog","DialogTrigger","asChild","FilePlus","DialogContent","DialogHeader","DialogTitle","DialogDescription","FileGalleryAndUpload","search","setSearch","previousContinuationToken","setPreviousContinuationToken","currentContinuationToken","setCurrentContinuationToken","selected","setSelected","addSelected","s","deleteFile","useTanstackMutation","mutationFn","staleTime","list","continuationToken","theme","useTheme","useUppy","Fragment","Input","placeholder","onChange","e","join","ScrollArea","Contents","FileWarning","FileItem","s3Key","item","Key","onSelect","active","some","onRemove","mutate","disabled","endsWith","DoubleArrowLeftIcon","ChevronLeftIcon","NextContinuationToken","ChevronRightIcon","Dashboard","addToContext","toLowerCase","SecureImageRenderComponent","fileKey","ImageIcon","File","FileText","PlusIcon","stopPropagation","X","signedUrlCache","getPresignedUrl","expiresAt","now","query","LoaderIcon","img","src","alt","AlertCircle","createLucideIcon","cx","cy","r","x1","x2","y1","y2","Info","d","differenceInCalendarMonths","dateLeft","dateRight","_dateLeft","toDate","_dateRight","yearDiff","getFullYear","getMonth","endOfMonth","date","_date","setFullYear","setHours"],"sourceRoot":""}
|
package/dist/.next/static/chunks/app/(application)/chat/[agent]/[session]/page-38f845d5ccdad76b.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[4709],{395:function(e,t,s){Promise.resolve().then(s.bind(s,18528))},18528:function(e,t,s){"use strict";s.r(t),s.d(t,{default:function(){return eA},dynamic:function(){return eM}});var n=s(57437),l=s(2265),a=s(99376),r=s(65613),i=s(7211),o=s(12199),d=s(41658),c=s(80834),u=s(13832),m=s(20653),x=s(94508);let p=e=>{let{size:t=16}=e;return(0,n.jsxs)("svg",{height:t,strokeLinejoin:"round",style:{color:"currentcolor"},viewBox:"0 0 16 16",width:t,children:[(0,n.jsx)("title",{children:"Loader"}),(0,n.jsxs)("g",{clipPath:"url(#clip0_2393_1490)",children:[(0,n.jsx)("path",{d:"M8 0V4",stroke:"currentColor",strokeWidth:"1.5"}),(0,n.jsx)("path",{d:"M8 16V12",opacity:"0.5",stroke:"currentColor",strokeWidth:"1.5"}),(0,n.jsx)("path",{d:"M3.29773 1.52783L5.64887 4.7639",opacity:"0.9",stroke:"currentColor",strokeWidth:"1.5"}),(0,n.jsx)("path",{d:"M12.7023 1.52783L10.3511 4.7639",opacity:"0.1",stroke:"currentColor",strokeWidth:"1.5"}),(0,n.jsx)("path",{d:"M12.7023 14.472L10.3511 11.236",opacity:"0.4",stroke:"currentColor",strokeWidth:"1.5"}),(0,n.jsx)("path",{d:"M3.29773 14.472L5.64887 11.236",opacity:"0.6",stroke:"currentColor",strokeWidth:"1.5"}),(0,n.jsx)("path",{d:"M15.6085 5.52783L11.8043 6.7639",opacity:"0.2",stroke:"currentColor",strokeWidth:"1.5"}),(0,n.jsx)("path",{d:"M0.391602 10.472L4.19583 9.23598",opacity:"0.7",stroke:"currentColor",strokeWidth:"1.5"}),(0,n.jsx)("path",{d:"M15.6085 10.4722L11.8043 9.2361",opacity:"0.3",stroke:"currentColor",strokeWidth:"1.5"}),(0,n.jsx)("path",{d:"M0.391602 5.52783L4.19583 6.7639",opacity:"0.8",stroke:"currentColor",strokeWidth:"1.5"})]}),(0,n.jsx)("defs",{children:(0,n.jsx)("clipPath",{id:"clip0_2393_1490",children:(0,n.jsx)("rect",{fill:"white",height:"16",width:"16"})})})]})},h=e=>{let{className:t,size:s=16,...l}=e;return(0,n.jsx)("div",{className:(0,x.cn)("inline-flex animate-spin items-center justify-center",t),...l,children:(0,n.jsx)(p,{size:s})})};var f=s(27315),v=s(81103),g=s(27689),j=s(6374),y=s(44045),N=s(48736),b=s(20265),w=s(24156),k=s(77992),C=s(27699),_=s(62869),T=s(1828),S=s(66070),z=s(27182),F=s(866),I=s(8014),P=s(74928),R=s(10492),D=s(35974),L=s(87393),Z=s(78361),M=s(23462);let A=M.fC,U=M.xz,E=l.forwardRef((e,t)=>{let{className:s,align:l="center",sideOffset:a=4,...r}=e;return(0,n.jsx)(M.VY,{ref:t,align:l,sideOffset:a,className:(0,x.cn)("z-50 w-64 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",s),...r})});E.displayName=M.VY.displayName;var O=s(60610);let B=l.forwardRef((e,t)=>{let{className:s,value:l,...a}=e;return(0,n.jsx)(O.fC,{ref:t,className:(0,x.cn)("relative h-4 w-full overflow-hidden rounded-full bg-secondary",s),...a,children:(0,n.jsx)(O.z$,{className:"size-full flex-1 bg-primary transition-all",style:{transform:"translateX(-".concat(100-(l||0),"%)")}})})});B.displayName=O.fC.displayName;var W=s(72543);let q=(0,l.createContext)(null),K=()=>{let e=(0,l.useContext)(q);if(!e)throw Error("Context components must be used within Context");return e},J=e=>{let{usedTokens:t,maxTokens:s,usage:l,modelId:a,...r}=e;return(0,n.jsx)(q.Provider,{value:{usedTokens:t,maxTokens:s,usage:l,modelId:a},children:(0,n.jsx)(A,{closeDelay:0,openDelay:0,...r})})},H=()=>{let{usedTokens:e,maxTokens:t}=K(),s=2*Math.PI*10;return(0,n.jsxs)("svg",{"aria-label":"Model context usage",height:"20",role:"img",style:{color:"currentcolor"},viewBox:"0 0 ".concat(24," ").concat(24),width:"20",children:[(0,n.jsx)("circle",{cx:12,cy:12,fill:"none",opacity:"0.25",r:10,stroke:"currentColor",strokeWidth:2}),(0,n.jsx)("circle",{cx:12,cy:12,fill:"none",opacity:"0.7",r:10,stroke:"currentColor",strokeDasharray:"".concat(s," ").concat(s),strokeDashoffset:s*(1-e/t),strokeLinecap:"round",strokeWidth:2,style:{transformOrigin:"center",transform:"rotate(-90deg)"}})]})},V=e=>{let{children:t,...s}=e,{usedTokens:l,maxTokens:a}=K(),r=new Intl.NumberFormat("en-US",{style:"percent",maximumFractionDigits:1}).format(l/a);return(0,n.jsx)(U,{asChild:!0,children:null!=t?t:(0,n.jsxs)(_.z,{type:"button",variant:"ghost",...s,children:[(0,n.jsx)("span",{className:"font-medium text-muted-foreground",children:r}),(0,n.jsx)(H,{})]})})},Y=e=>{let{className:t,...s}=e;return(0,n.jsx)(E,{className:(0,x.cn)("min-w-[240px] divide-y overflow-hidden p-0",t),...s})},X=e=>{let{children:t,className:s,...l}=e,{usedTokens:a,maxTokens:r}=K(),i=a/r,o=new Intl.NumberFormat("en-US",{style:"percent",maximumFractionDigits:1}).format(i),d=new Intl.NumberFormat("en-US",{notation:"compact"}).format(a),c=new Intl.NumberFormat("en-US",{notation:"compact"}).format(r);return(0,n.jsx)("div",{className:(0,x.cn)("w-full space-y-2 p-3",s),...l,children:null!=t?t:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("div",{className:"flex items-center justify-between gap-3 text-xs",children:[(0,n.jsx)("p",{children:o}),(0,n.jsxs)("p",{className:"font-mono text-muted-foreground",children:[d," / ",c]})]}),(0,n.jsx)("div",{className:"space-y-2",children:(0,n.jsx)(B,{className:"bg-muted",value:100*i})})]})})},$=e=>{let{children:t,className:s,...l}=e;return(0,n.jsx)("div",{className:(0,x.cn)("w-full p-3",s),...l,children:t})},G=e=>{var t;let{className:s,children:l,...a}=e,{usage:r,modelId:i}=K(),o=null!==(t=null==r?void 0:r.inputTokens)&&void 0!==t?t:0;if(l)return l;if(!o)return null;let d=i?(0,W.Wn)({modelId:i,usage:{input:o,output:0}}).totalUSD:void 0,c=new Intl.NumberFormat("en-US",{style:"currency",currency:"USD"}).format(null!=d?d:0);return(0,n.jsxs)("div",{className:(0,x.cn)("flex items-center justify-between text-xs",s),...a,children:[(0,n.jsx)("span",{className:"text-muted-foreground",children:"Input"}),(0,n.jsx)(es,{costText:c,tokens:o})]})},Q=e=>{var t;let{className:s,children:l,...a}=e,{usage:r,modelId:i}=K(),o=null!==(t=null==r?void 0:r.outputTokens)&&void 0!==t?t:0;if(l)return l;if(!o)return null;let d=i?(0,W.Wn)({modelId:i,usage:{input:0,output:o}}).totalUSD:void 0,c=new Intl.NumberFormat("en-US",{style:"currency",currency:"USD"}).format(null!=d?d:0);return(0,n.jsxs)("div",{className:(0,x.cn)("flex items-center justify-between text-xs",s),...a,children:[(0,n.jsx)("span",{className:"text-muted-foreground",children:"Output"}),(0,n.jsx)(es,{costText:c,tokens:o})]})},ee=e=>{var t;let{className:s,children:l,...a}=e,{usage:r,modelId:i}=K(),o=null!==(t=null==r?void 0:r.reasoningTokens)&&void 0!==t?t:0;if(l)return l;if(!o)return null;let d=i?(0,W.Wn)({modelId:i,usage:{reasoningTokens:o}}).totalUSD:void 0,c=new Intl.NumberFormat("en-US",{style:"currency",currency:"USD"}).format(null!=d?d:0);return(0,n.jsxs)("div",{className:(0,x.cn)("flex items-center justify-between text-xs",s),...a,children:[(0,n.jsx)("span",{className:"text-muted-foreground",children:"Reasoning"}),(0,n.jsx)(es,{costText:c,tokens:o})]})},et=e=>{var t;let{className:s,children:l,...a}=e,{usage:r,modelId:i}=K(),o=null!==(t=null==r?void 0:r.cachedInputTokens)&&void 0!==t?t:0;if(l)return l;if(!o)return null;let d=i?(0,W.Wn)({modelId:i,usage:{cacheReads:o,input:0,output:0}}).totalUSD:void 0,c=new Intl.NumberFormat("en-US",{style:"currency",currency:"USD"}).format(null!=d?d:0);return(0,n.jsxs)("div",{className:(0,x.cn)("flex items-center justify-between text-xs",s),...a,children:[(0,n.jsx)("span",{className:"text-muted-foreground",children:"Cache"}),(0,n.jsx)(es,{costText:c,tokens:o})]})},es=e=>{let{tokens:t,costText:s}=e;return(0,n.jsxs)("span",{children:[void 0===t?"—":new Intl.NumberFormat("en-US",{notation:"compact"}).format(t),s?(0,n.jsxs)("span",{className:"ml-2 text-muted-foreground",children:["• ",s]}):null]})};var en=s(40519),el=s(91723),ea=s(65302),er=s(45131),ei=s(29525),eo=s(40875),ed=s(53245);let ec=e=>{let{className:t,...s}=e;return(0,n.jsx)(P.zF,{className:(0,x.cn)("not-prose mb-4 w-full rounded-md border",t),...s})},eu=e=>{let t={"input-streaming":(0,n.jsx)(en.Z,{className:"size-4 mr-2"}),"input-available":(0,n.jsx)(el.Z,{className:"size-4 animate-pulse mr-2"}),"output-available":(0,n.jsx)(ea.Z,{className:"size-4 text-green-600 mr-2"}),"output-error":(0,n.jsx)(er.Z,{className:"size-4 text-red-600 mr-2"})};return(0,n.jsxs)(D.C,{className:"rounded-full text-xs",variant:"secondary",children:[t[e],{"input-streaming":"Pending","input-available":"Running","output-available":"Completed","output-error":"Error"}[e]]})},em=e=>{let{className:t,type:s,state:l,...a}=e;return(0,n.jsxs)(P.wy,{className:(0,x.cn)("flex w-full items-center justify-between gap-4 p-3",t),...a,children:[(0,n.jsxs)("div",{className:"flex items-center gap-2",children:[(0,n.jsx)(ei.Z,{className:"size-4 text-muted-foreground"}),(0,n.jsx)("span",{className:"font-medium text-sm",children:s}),eu(l)]}),(0,n.jsx)(eo.Z,{className:"size-4 text-muted-foreground transition-transform group-data-[state=open]:rotate-180"})]})},ex=e=>{let{className:t,...s}=e;return(0,n.jsx)(P.Fw,{className:(0,x.cn)("data-[state=closed]:fade-out-0 data-[state=closed]:slide-out-to-top-2 data-[state=open]:slide-in-from-top-2 text-popover-foreground outline-none data-[state=closed]:animate-out data-[state=open]:animate-in",t),...s})},ep=e=>{let{className:t,input:s,...l}=e;return(0,n.jsxs)("div",{className:(0,x.cn)("space-y-2 overflow-hidden p-4",t),...l,children:[(0,n.jsx)("h4",{className:"font-medium text-muted-foreground text-xs uppercase tracking-wide",children:"Parameters"}),(0,n.jsx)("div",{className:"rounded-md bg-muted/50",children:(0,n.jsx)(ed.d,{code:JSON.stringify(s,null,2),language:"json"})})]})},eh=e=>{let{className:t,output:s,errorText:l,...a}=e;return s||l?(0,n.jsxs)("div",{className:(0,x.cn)("space-y-2 p-4",t),...a,children:[(0,n.jsx)("h4",{className:"font-medium text-muted-foreground text-xs tracking-wide",children:l?"Error":"Result"}),(0,n.jsxs)("div",{className:(0,x.cn)("overflow-x-auto rounded-md text-xs [&_table]:w-full p-5",l?"bg-destructive/10 text-destructive":"bg-muted/50 text-foreground"),children:[l&&(0,n.jsx)("div",{children:l}),s&&(0,n.jsx)("div",{children:s})]})]}):(0,n.jsx)(n.Fragment,{})};var ef=s(93022),ev=s(77256),eg=s(35629),ej=s(92279),ey=s(78298),eN=s(21391),eb=s(26110),ew=s(95186),ek=s(73247),eC=s(31810),e_=s(42208),eT=s(12194),eS=s(84544),ez=s(19378);function eF(e){var t;let{open:s,onOpenChange:a,onSelectPrompt:r,agentId:i}=e,[o,d]=(0,l.useState)(""),c=[];o&&c.push({or:[{name:{contains:o}},{description:{contains:o}},{content:{contains:o}}]});let{data:u,loading:m}=(0,eT.Sh)({page:1,limit:50,filters:c,sort:{field:"favorite_count",direction:"DESC"}}),x=(null==u?void 0:null===(t=u.prompt_libraryPagination)||void 0===t?void 0:t.items)||[],p=i?x.filter(e=>e.assigned_agents&&e.assigned_agents.includes(i)):[],h=i?x.filter(e=>!e.assigned_agents||!e.assigned_agents.includes(i)):x,f=e=>{r(e),a(!1),d("")};return(0,n.jsx)(eb.Vq,{open:s,onOpenChange:a,children:(0,n.jsxs)(eb.cZ,{className:"max-w-2xl max-h-[80vh]",children:[(0,n.jsxs)(eb.fK,{children:[(0,n.jsx)(eb.$N,{children:"Select a Prompt"}),(0,n.jsx)(eb.Be,{children:"Choose a prompt template to insert into your message"})]}),(0,n.jsxs)("div",{className:"relative",children:[(0,n.jsx)(ek.Z,{className:"absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground"}),(0,n.jsx)(ew.I,{placeholder:"Search prompts...",value:o,onChange:e=>d(e.target.value),className:"pl-10"})]}),(0,n.jsx)(ez.x,{className:"h-[400px] pr-4",children:m?(0,n.jsx)("div",{className:"space-y-3",children:[1,2,3].map(e=>(0,n.jsx)(ef.O,{className:"h-24 w-full"},e))}):(0,n.jsxs)("div",{className:"space-y-4",children:[p.length>0&&(0,n.jsxs)("div",{children:[(0,n.jsxs)("div",{className:"flex items-center gap-2 mb-2",children:[(0,n.jsx)(eC.Z,{className:"h-4 w-4 text-yellow-500"}),(0,n.jsx)("h3",{className:"text-sm font-medium",children:"Recommended for this agent"})]}),(0,n.jsx)("div",{className:"space-y-2",children:p.map(e=>(0,n.jsx)(eI,{prompt:e,onSelect:f},e.id))})]}),h.length>0&&(0,n.jsxs)("div",{children:[p.length>0&&(0,n.jsx)("h3",{className:"text-sm font-medium mb-2",children:"All Prompts"}),(0,n.jsx)("div",{className:"space-y-2",children:h.map(e=>(0,n.jsx)(eI,{prompt:e,onSelect:f},e.id))})]}),0===x.length&&!m&&(0,n.jsxs)("div",{className:"flex flex-col items-center justify-center py-12 text-center",children:[(0,n.jsx)(N.Z,{className:"h-12 w-12 text-muted-foreground mb-3"}),(0,n.jsx)("h3",{className:"text-lg font-medium",children:"No prompts found"}),(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:o?"Try a different search term":"Create your first prompt in the Prompt Library"})]})]})})]})})}function eI(e){var t;let{prompt:s,onSelect:l}=e,a=(0,eS.H)(s.content);return(0,n.jsxs)("button",{onClick:()=>l(s),className:"w-full text-left p-3 rounded-lg border hover:bg-accent transition-colors",children:[(0,n.jsxs)("div",{className:"flex items-start justify-between gap-2 mb-1",children:[(0,n.jsx)("h4",{className:"font-medium text-sm",children:s.name}),(0,n.jsxs)("div",{className:"flex items-center gap-2 text-xs text-muted-foreground flex-shrink-0",children:[(0,n.jsxs)("div",{className:"flex items-center gap-0.5",children:[(0,n.jsx)(eC.Z,{className:"h-3 w-3"}),(0,n.jsx)("span",{children:s.favorite_count||0})]}),(0,n.jsxs)("div",{className:"flex items-center gap-0.5",children:[(0,n.jsx)(e_.Z,{className:"h-3 w-3"}),(0,n.jsx)("span",{children:s.usage_count||0})]})]})]}),s.description&&(0,n.jsx)("p",{className:"text-xs text-muted-foreground line-clamp-2 mb-2",children:s.description}),(0,n.jsxs)("div",{className:"flex flex-wrap gap-1",children:[a.length>0&&(0,n.jsxs)(D.C,{variant:"outline",className:"text-xs",children:[a.length," variable",1!==a.length?"s":""]}),null===(t=s.tags)||void 0===t?void 0:t.slice(0,2).map(e=>(0,n.jsx)(D.C,{variant:"secondary",className:"text-xs",children:e},e)),s.tags&&s.tags.length>2&&(0,n.jsxs)(D.C,{variant:"secondary",className:"text-xs",children:["+",s.tags.length-2]})]})]})}var eP=s(26815);function eR(e){return e?e.split("_").map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" "):""}function eD(e){let{open:t,onOpenChange:s,variables:a,promptName:r,onSubmit:i}=e,[o,d]=(0,l.useState)({});(0,l.useEffect)(()=>{let e={};a.forEach(t=>{e[t]=""}),d(e)},[a]);let c=(e,t)=>{d(s=>({...s,[e]:t}))},u=a.every(e=>{var t;return null===(t=o[e])||void 0===t?void 0:t.trim()});return(0,n.jsx)(eb.Vq,{open:t,onOpenChange:s,children:(0,n.jsxs)(eb.cZ,{className:"max-w-md",children:[(0,n.jsxs)(eb.fK,{children:[(0,n.jsx)(eb.$N,{children:"Fill in Variables"}),(0,n.jsxs)(eb.Be,{children:['Complete the following fields for "',r,'"']})]}),(0,n.jsx)("div",{className:"space-y-4 py-4",children:a.map(e=>(0,n.jsxs)("div",{className:"space-y-2",children:[(0,n.jsx)(eP._,{htmlFor:e,children:eR(e)}),(0,n.jsx)(ew.I,{id:e,placeholder:"Enter ".concat(eR(e).toLowerCase(),"..."),value:o[e]||"",onChange:t=>c(e,t.target.value)})]},e))}),(0,n.jsxs)(eb.cN,{children:[(0,n.jsx)(_.z,{variant:"outline",onClick:()=>s(!1),children:"Cancel"}),(0,n.jsx)(_.z,{onClick:()=>{i(o),d({})},disabled:!u,children:"Insert Prompt"})]})]})})}function eL(e){var t,s,a,x,p,M,A,U,E,O,W,q;let{session:K,agent:H,initialPromptId:es}=e,[en,el]=(0,l.useState)(null),ea=l.useContext(y.E);(0,F.d)();let{theme:er}=(0,ey.F)(),[ei,eo]=(0,l.useState)(null),[ed,ec]=(0,l.useState)(null),{user:eu}=(0,l.useContext)(u.S),[em,ex]=(0,l.useState)(null),[ep,eh]=(0,l.useState)(!1),[ef,eg]=(0,l.useState)(""),[eb,ew]=(0,l.useState)([]),ek=l.useRef(null),{toast:eC}=(0,k.pm)(),[e_,ez]=(0,l.useState)(!1),[eI,eP]=(0,l.useState)(!1),[eR,eL]=(0,l.useState)(null),[eM]=(0,eT.VR)(),[eA,eU]=(0,l.useState)({rights_mode:(null==K?void 0:K.rights_mode)||"private",users:(null==K?void 0:null===(t=K.RBAC)||void 0===t?void 0:t.users)||[],roles:(null==K?void 0:null===(s=K.RBAC)||void 0===s?void 0:s.roles)||[],projects:(null==K?void 0:null===(a=K.RBAC)||void 0===a?void 0:a.projects)||[]}),eE=(0,i.aM)(g.L5,{variables:{id:K.created_by},skip:!K.created_by}),{data:eO}=(0,i.aM)(g.X0,{variables:{id:es},skip:!es}),[eB,eW]=(0,l.useState)(!1),[eq,eK]=(0,o.D)(g.r1),[eJ,eH]=(0,l.useState)({totalTokens:0,reasoningTokens:0,inputTokens:0,outputTokens:0,cachedInputTokens:0});(0,i.aM)(g.N,{returnPartialData:!0,fetchPolicy:"network-only",nextFetchPolicy:"network-only",variables:{page:1,limit:50,filters:{session:{eq:K.id}}},onCompleted:e=>{(null==e?void 0:e.agent_messagesPagination)&&eQ(null==e?void 0:e.agent_messagesPagination.items.map(e=>JSON.parse(e.content)))}});let{messages:eV,sendMessage:eY,status:eX,stop:e$,regenerate:eG,setMessages:eQ,addToolResult:e0}=(0,c.RJ)({sendAutomaticallyWhen:d.l0,experimental_throttle:50,async onToolCall(e){let{toolCall:t}=e;if(!t.dynamic&&"getLocation"===t.toolName){let e=["New York","Los Angeles","Chicago","San Francisco"];e0({tool:"confirm-tool-call",toolCallId:t.toolCallId,output:e[Math.floor(Math.random()*e.length)]})}},onError:e=>{console.log("error!!",null==e?void 0:e.message);try{let{message:t}=JSON.parse(null==e?void 0:e.message);el(t)}catch(t){el(e.message)}},transport:new d.PD({api:"".concat(null==ea?void 0:ea.backend).concat(H.slug,"/").concat(H.id),prepareSendMessagesRequest:async e=>{let{messages:t,id:s,body:n}=e,l=await (0,j.LP)();if(!l)throw Error("No valid session token available.");return{body:{...n,message:t[t.length-1],id:s,session:K.id},headers:{User:eu.id,Session:K.id,Authorization:"Bearer ".concat(l),Stream:"true"}}}})});(0,l.useEffect)(()=>{let e=null==eV?void 0:eV.reduce((e,t)=>{let s=t.metadata;return e+((null==s?void 0:s.totalTokens)||0)},0),t=null==eV?void 0:eV.reduce((e,t)=>{let s=t.metadata;return e+((null==s?void 0:s.reasoningTokens)||0)},0);eH({totalTokens:e,reasoningTokens:t,inputTokens:null==eV?void 0:eV.reduce((e,t)=>{let s=t.metadata;return e+((null==s?void 0:s.inputTokens)||0)},0),outputTokens:null==eV?void 0:eV.reduce((e,t)=>{let s=t.metadata;return e+((null==s?void 0:s.outputTokens)||0)},0),cachedInputTokens:null==eV?void 0:eV.reduce((e,t)=>{let s=t.metadata;return e+((null==s?void 0:s.cachedInputTokens)||0)},0)})},[eV]),(0,l.useMemo)(()=>{let e=(null==eV?void 0:eV.filter(e=>"user"===e.role))||[],t=(null==eV?void 0:eV.filter(e=>"assistant"===e.role))||[];return e.length>=1&&t.length>=1},[eV]);let e1=e=>{(0,eS.H)(e.content).length>0?(eL(e),eP(!0)):(e2(e.content),eM({variables:{id:e.id,usage_count:(e.usage_count||0)+1}}))},e2=e=>{var t;eg(t=>t?"".concat(t,"\n\n").concat(e):e),null===(t=ek.current)||void 0===t||t.focus()};(0,l.useEffect)(()=>{if((null==eO?void 0:eO.prompt_library_itemById)&&!eB){let e=eO.prompt_library_itemById;eW(!0),e1(e)}},[eO,eB]);let e3=async(e,t)=>{e.preventDefault(),eY({text:ef,files:ei||[]},{body:{disabledTools:eb}}),eg(""),eo(null),ec(null)},e5=e=>{ew(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e])},e4=(0,L.I)(K,eu),e8=async e=>{eo(await Promise.all(e.map(async e=>{if(!e.s3key){let t="";return Object.entries(e).forEach(e=>{let[s,n]=e;t+="".concat(s,": ").concat(n,"\n")}),{type:"file",mediaType:e.type,filename:e.name,url:"data:text/plain;base64,".concat(btoa(t))}}return{type:"file",mediaType:e.type,filename:e.name,url:await (0,Z.NF)(e.s3key)}})))};return(0,l.useEffect)(()=>{if(!ed){eo(null);return}e8(ed.map(e=>({s3key:e,name:e,type:"file"})))},[ed]),(0,n.jsx)("div",{className:"flex flex-col w-full mx-auto relative size-full",children:(0,n.jsx)("div",{className:"mx-auto relative size-full",children:(0,n.jsxs)("div",{className:"flex h-full w-full max-h-[calc(100vh)] overflow-y-auto overflow-x-hidden",children:[(0,n.jsxs)("div",{className:"flex flex-col flex-1 pb-6",children:[(0,n.jsxs)(z.ri,{className:"overflow-y-hidden",children:[H.maxContextLength?(0,n.jsx)(v.pn,{children:(0,n.jsxs)(v.u,{children:[(0,n.jsx)(v.aJ,{asChild:!0,children:(0,n.jsxs)("div",{className:"absolute w-full ".concat("top-0"),children:[(0,n.jsx)(B,{className:"w-full rounded-none",value:eJ.totalTokens/H.maxContextLength*100}),(0,n.jsxs)("div",{className:"justify-between flex felx-row",children:[(0,n.jsx)("div",{}),(0,n.jsxs)(J,{maxTokens:H.maxContextLength||0,usedTokens:eJ.totalTokens,usage:{inputTokens:eJ.inputTokens,outputTokens:eJ.outputTokens,totalTokens:eJ.totalTokens,cachedInputTokens:eJ.cachedInputTokens,reasoningTokens:eJ.reasoningTokens},children:[(0,n.jsx)(V,{}),(0,n.jsxs)(Y,{children:[(0,n.jsx)(X,{}),(0,n.jsxs)($,{children:[(0,n.jsx)(G,{}),(0,n.jsx)(Q,{}),(0,n.jsx)(ee,{}),(0,n.jsx)(et,{})]})]})]})]})]})}),(0,n.jsx)(v._v,{children:(0,n.jsxs)("p",{children:[Intl.NumberFormat("en-US").format(eJ.totalTokens)," / ",Intl.NumberFormat("en-US").format(H.maxContextLength)," tokens in the context window used."]})})]})}):null,(null==eV?void 0:eV.length)===0?(0,n.jsx)("div",{className:"size-full flex justify-center items-center",children:(0,n.jsxs)("div",{className:"flex flex-col gap-4 items-center max-w-2xl w-full px-4 my-auto",children:[(0,n.jsx)(eN.default,{alt:"Logo",width:120,height:120,className:"h-30 w-40 object-contain"}),(0,n.jsx)("p",{className:"text-center text-lg text-muted-foreground",children:"How can I help you today?"}),(0,n.jsx)(ej.Z,{agent:H,status:eX,className:"w-80"})]})}):null,(0,n.jsxs)(z.iG,{className:"px-6",children:[(null==eV?void 0:eV.length)>0&&(0,n.jsx)(ev.K,{messages:eV,config:{marginTopFirstMessage:"mt-12"},status:eX,onRegenerate:eG,onAddToolResult:e0,UntypedToolPartComponent:eZ,addToContext:e=>{ec([...ed||[],e])},writeAccess:e4}),"streaming"===eX?(0,n.jsx)(h,{}):null]})]}),!e4&&(0,n.jsx)("div",{className:"px-6 mx-auto mt-3",children:(0,n.jsx)(D.C,{variant:"outline",children:"Read access only"})}),en&&(0,n.jsx)("div",{className:"mx-5",children:(0,n.jsxs)(r.bZ,{className:"mb-3",variant:"destructive",children:[(0,n.jsx)(m.LPM,{className:"size-4"}),(0,n.jsx)(r.Cd,{children:"Error"}),(0,n.jsx)(r.X,{children:en})]})}),e4&&(0,n.jsxs)("form",{onSubmit:e3,className:"px-6 border-input border rounded flex mx-5 p-5 flex-col gap-2",children:[(0,n.jsxs)("div",{className:"items-center flex relative gap-2 w-full",children:[(null==ea?void 0:null===(x=ea.fileUploads)||void 0===x?void 0:x.s3endpoint)&&(0,n.jsx)(Z.ZP,{id:"chat-".concat(K.id),selectionLimit:10,allowedFileTypes:[...(null===(p=H.capabilities)||void 0===p?void 0:p.audio)||[],...(null===(M=H.capabilities)||void 0===M?void 0:M.video)||[],...(null===(A=H.capabilities)||void 0===A?void 0:A.files)||[],...(null===(U=H.capabilities)||void 0===U?void 0:U.images)||[]],dependencies:[],onConfirm:e=>{ec(e)}}),(0,n.jsx)(v.pn,{children:(0,n.jsxs)(v.u,{children:[(0,n.jsx)(v.aJ,{asChild:!0,children:(0,n.jsx)(_.z,{type:"button",variant:"outline",size:"icon",className:"shrink-0",onClick:()=>ez(!0),children:(0,n.jsx)(N.Z,{className:"h-5 w-5 text-muted-foreground"})})}),(0,n.jsx)(v._v,{children:(0,n.jsx)("p",{children:"Insert prompt from library"})})]})}),(0,n.jsx)(f.Z,{autoComplete:"off",autoFocus:!0,minRows:1,value:ef,ref:ek,onKeyDown:e=>{"Enter"!==e.key||e.shiftKey||(e.preventDefault(),e3(e))},onChange:e=>eg(e.target.value),name:"message",placeholder:"Ask me anything...",className:"max-h-40 px-3 py-2 text-sm shadow-sm placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 w-full items-center h-28 resize-none overflow-hidden dark:bg-card/35"}),"streaming"!==eX?(0,n.jsx)(_.z,{className:"shrink-0",variant:"secondary",size:"icon",disabled:"submitted"===eX||!(null==ef?void 0:ef.trim()),children:(0,n.jsx)(b.Z,{className:" size-6 text-muted-foreground"})}):(0,n.jsx)(_.z,{className:"shrink-0",variant:"secondary",size:"icon",onClick:e$,children:(0,n.jsx)(m.wNq,{className:"size-6 text-muted-foreground"})})]}),(0,n.jsx)("div",{className:"grid grid-cols-3 sm:grid-cols-4 gap-3",children:null==ed?void 0:ed.map(e=>(0,n.jsx)(Z.jU,{s3Key:e,disabled:!0,active:!1,onRemove:()=>{ec(null==ed?void 0:ed.filter(t=>t!==e))}}))})]}),(0,n.jsx)(C.x,{isOpen:ep,onClose:()=>eh(!1),messages:eV||[],sessionTitle:K.title}),(0,n.jsx)(eF,{open:e_,onOpenChange:ez,onSelectPrompt:e1,agentId:H.id}),eR&&(0,n.jsx)(eD,{open:eI,onOpenChange:eP,variables:(0,eS.H)(eR.content),promptName:eR.name,onSubmit:e=>{eR&&(e2(function(e,t){if(!e)return"";if(!t||0===Object.keys(t).length)return e;let s=e;for(let[e,n]of Object.entries(t)){let t=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),l=RegExp("\\{\\{".concat(t,"\\}\\}"),"g");s=s.replace(l,n||"")}return s}(eR.content,e)),eM({variables:{id:eR.id,usage_count:(eR.usage_count||0)+1}}),eP(!1),eL(null))}})]}),e4&&(0,n.jsxs)("div",{className:"w-80 border-l bg-muted/20 p-4 space-y-4",children:[(null==eV?void 0:eV.length)>0&&(0,n.jsx)("div",{children:(0,n.jsx)(ej.Z,{agent:H,status:eX,className:"w-80"})}),(0,n.jsx)("div",{children:(0,n.jsx)("p",{className:"text-sm font-medium text-center",children:H.name})}),H.description&&(0,n.jsx)("p",{className:"text-xs text-muted-foreground mt-1",children:H.description}),(0,n.jsx)("hr",{className:"my-2"}),(0,n.jsx)("div",{className:"mt-1",children:(0,n.jsxs)("div",{className:"border rounded",children:[eE.loading&&(0,n.jsxs)("div",{className:"flex flex-row justify-between p-3",children:[(0,n.jsx)("p",{className:"text-sm font-medium",children:"Session created by"}),(0,n.jsx)(R.g,{className:"ml-2"})]}),(null===(E=eE.data)||void 0===E?void 0:E.userById)&&!eE.loading&&(0,n.jsxs)("div",{className:"flex flex-row justify-between p-3",children:[(0,n.jsx)("p",{className:"text-sm font-medium",children:"Session created by"}),(0,n.jsx)("div",{className:"flex items-center gap-2 text-xs text-muted-foreground",children:(0,n.jsx)("p",{className:"text-sm font-medium capitalize",children:eE.data.userById.name})})]})]})}),(0,n.jsxs)("div",{children:[(0,n.jsx)("p",{className:"text-xs font-medium text-muted-foreground pt-2",children:"You can disable tools for individual messages in this session by clicking the switch:"}),(0,n.jsx)(v.pn,{children:(0,n.jsx)("div",{className:"space-y-1 pt-2",children:H.tools&&H.tools.length>0?H.tools.map(e=>{let t=!eb.includes(e.id);return(0,n.jsxs)(v.u,{children:[(0,n.jsx)(v.aJ,{asChild:!0,children:(0,n.jsxs)("div",{className:"p-2 rounded-md border text-xs bg-background flex items-center justify-between",children:[(0,n.jsx)("p",{className:"font-medium flex items-center gap-2",children:e.name}),(0,n.jsx)(T.r,{checked:t,onCheckedChange:()=>e5(e.id)})]})}),(0,n.jsx)(v._v,{children:(0,n.jsx)("p",{className:"max-w-[200px] text-wrap",children:e.description})})]},e.name)}):(0,n.jsx)("p",{className:"text-xs text-muted-foreground",children:"No tools enabled."})})})]}),(0,n.jsx)("div",{className:"mt-1",children:(0,n.jsxs)(P.zF,{className:"border rounded",children:[(0,n.jsx)(S.Ol,{className:"px-3 py-1",children:(0,n.jsxs)("div",{className:"flex items-center justify-between",children:[(0,n.jsx)("div",{className:"flex flex-col",children:(0,n.jsxs)("p",{className:"text-sm font-medium",children:["Access control (",K.rights_mode,")"]})}),(0,n.jsx)(P.wy,{asChild:!0,children:(0,n.jsxs)(_.z,{variant:"ghost",size:"icon",className:"size-8",children:[(0,n.jsx)(w.Z,{className:"size-4"}),(0,n.jsx)("span",{className:"sr-only",children:"Toggle"})]})})]})}),(0,n.jsx)(P.Fw,{children:(0,n.jsxs)(S.aY,{className:"space-y-4 p-3",children:[(0,n.jsx)(I.P,{allowedModes:["private","users","roles","projects"],initialRightsMode:K.rights_mode,initialUsers:null===(O=K.RBAC)||void 0===O?void 0:O.users,initialRoles:null===(W=K.RBAC)||void 0===W?void 0:W.roles,initialProjects:null===(q=K.RBAC)||void 0===q?void 0:q.projects,onChange:(e,t,s,n)=>{eU({rights_mode:e,users:t,roles:s,projects:n})}}),(0,n.jsxs)(_.z,{disabled:eK.loading,onClick:()=>{eq({variables:{id:K.id,rights_mode:eA.rights_mode,RBAC:{users:eA.users,roles:eA.roles,projects:eA.projects}}})},children:["Save access rights ",eK.loading&&(0,n.jsx)(R.g,{className:"ml-2"})," "]})]})})]})})]})]})})})}let eZ=e=>{var t;let{untypedToolPart:s,callId:l,addToContext:a}=e,r=s.output;console.log("output",r);let i=null===(t=s.type)||void 0===t?void 0:t.replace(/ /g,"-");return i=(null==(i=null==(i=null==i?void 0:i.replace(/tool-/g,""))?void 0:i.replace(/_/g," "))?void 0:i.charAt(0).toUpperCase())+(null==i?void 0:i.slice(1)),(0,n.jsxs)(ec,{className:"mt-3",defaultOpen:!1,children:[(0,n.jsx)(em,{className:"capitalize",type:i,state:s.state}),(0,n.jsxs)(ex,{children:[(0,n.jsx)(ep,{input:s.input}),(0,n.jsx)(eh,{output:r?(0,n.jsx)(eg.H,{children:"string"==typeof r?r:JSON.stringify(r,null,2)}):!s.errorText&&(0,n.jsx)(ef.O,{className:"h-4 w-full"}),errorText:s.errorText})]})]},l)},eM="force-dynamic";function eA(e){let{params:t}=e,s=(0,a.useSearchParams)().get("promptId"),{data:l,loading:o,error:d}=(0,i.aM)(g.as,{variables:{id:t.agent}}),{data:c,loading:u,error:x}=(0,i.aM)(g.lk,{returnPartialData:!0,fetchPolicy:"network-only",nextFetchPolicy:"network-only",variables:{id:t.session}});return u||o?(0,n.jsx)("div",{children:(0,n.jsx)(ef.O,{className:"w-full h-full"})}):x||d?(0,n.jsxs)(r.bZ,{variant:"destructive",children:[(0,n.jsx)(m.LPM,{className:"size-4"}),(0,n.jsx)(r.Cd,{children:"Error"}),(0,n.jsxs)(r.X,{children:["Error loading agent ",(null==d?void 0:d.message)||(null==x?void 0:x.message),"."]})]}):(null==l?void 0:l.agentById)&&(null==c?void 0:c.agent_sessionById)?(0,n.jsx)(eL,{session:null==c?void 0:c.agent_sessionById,agent:l.agentById,initialPromptId:s||void 0}):(0,n.jsxs)(r.bZ,{variant:"destructive",children:[(0,n.jsx)(m.LPM,{className:"size-4"}),(0,n.jsx)(r.Cd,{children:"Error"}),(0,n.jsx)(r.X,{children:"Agent or session not found."})]})}},27182:function(e,t,s){"use strict";s.d(t,{iG:function(){return i},ri:function(){return r}});var n=s(57437);s(62869);var l=s(94508);s(2265);var a=s(20460);let r=e=>{let{className:t,...s}=e;return(0,n.jsx)(a.h,{className:(0,l.cn)("relative flex-1 overflow-y-auto",t),initial:"smooth",resize:"smooth",role:"log",...s})},i=e=>{let{className:t,...s}=e;return(0,n.jsx)(a.h.Content,{className:(0,l.cn)("p-4",t),...s})}},92279:function(e,t,s){"use strict";var n=s(57437),l=s(7882),a=s(11713),r=s(78361);let i=e=>{let{agent:t,status:s,className:i}=e,{data:o}=(0,a.a)({queryKey:["defaultAnimation","idle"],queryFn:async()=>(await fetch("/agent-idle.json")).json(),staleTime:36e5,enabled:!t.animation_idle}),{data:d}=(0,a.a)({queryKey:["defaultAnimation","responding"],queryFn:async()=>(await fetch("/agent-responding.json")).json(),staleTime:36e5,enabled:!t.animation_responding}),{data:c}=(0,a.a)({queryKey:["customAnimation",t.animation_idle],queryFn:async()=>{if(!t.animation_idle)return null;let e=await (0,r.NF)(t.animation_idle);return(await fetch(e)).json()},enabled:!!t.animation_idle,staleTime:3e5}),{data:u}=(0,a.a)({queryKey:["customAnimation",t.animation_responding],queryFn:async()=>{if(!t.animation_responding)return null;let e=await (0,r.NF)(t.animation_responding);return(await fetch(e)).json()},enabled:!!t.animation_responding,staleTime:3e5}),{View:m}=(0,l.useLottie)((()=>{switch(s){case"submitted":case"ready":case"error":default:return{animationData:c||o,loop:!0,autoplay:!0};case"streaming":return{animationData:u||d,loop:!0,autoplay:!0}}})());return(0,n.jsx)(n.Fragment,{children:(0,n.jsx)("div",{className:"",children:(0,n.jsx)("div",{className:i,children:m})})})};t.Z=e=>{let{agent:t,status:s,className:l}=e;return(0,n.jsx)(i,{className:l,agent:t,status:s})}},77256:function(e,t,s){"use strict";s.d(t,{K:function(){return U}});var n=s(57437);s(16831);var l=s(94508);let a=e=>{let{className:t,from:s,...a}=e;return(0,n.jsx)("div",{className:(0,l.cn)("group flex w-full items-end justify-end gap-2 py-4","user"===s?"is-user flex-row-reverse justify-end":"is-assistant flex-row-reverse justify-end","[&>div]:max-w-[80%]",t),...a})},r=e=>{let{children:t,className:s,...a}=e;return(0,n.jsx)("div",{className:(0,l.cn)("flex flex-col gap-2 overflow-hidden rounded-lg py-3 text-foreground text-sm","group-[.is-user]:bg-secondary group-[.is-user]:text-primary-foreground group-[.is-user]:px-4","group-[.is-assistant]:bg-transparent group-[.is-assistant]:text-foreground",s),...a,children:(0,n.jsx)("div",{className:"is-user:dark",children:t})})};var i=s(62869),o=s(81103);let d=e=>{let{className:t,children:s,...a}=e;return(0,n.jsx)("div",{className:(0,l.cn)("flex items-center gap-1",t),...a,children:s})},c=e=>{let{tooltip:t,children:s,label:a,className:r,variant:d="ghost",size:c="sm",...u}=e,m=(0,n.jsxs)(i.z,{className:(0,l.cn)("size-9 p-1.5 text-muted-foreground hover:text-foreground",r),size:c,type:"button",variant:d,...u,children:[s,(0,n.jsx)("span",{className:"sr-only",children:a||t})]});return t?(0,n.jsx)(o.pn,{children:(0,n.jsxs)(o.u,{children:[(0,n.jsx)(o.aJ,{asChild:!0,children:m}),(0,n.jsx)(o._v,{children:(0,n.jsx)("p",{children:t})})]})}):m};var u=s(35629),m=s(80886),x=s(74928),p=s(64972),h=s(40875),f=s(2265);let v=(0,f.createContext)(null),g=()=>{let e=(0,f.useContext)(v);if(!e)throw Error("Reasoning components must be used within Reasoning");return e},j=(0,f.memo)(e=>{let{className:t,isStreaming:s=!1,open:a,defaultOpen:r=!1,onOpenChange:i,duration:o,children:d,...c}=e,[u,p]=(0,m.T)({prop:a,defaultProp:r,onChange:i}),[h,g]=(0,m.T)({prop:o,defaultProp:0}),[j,y]=(0,f.useState)(!1),[N,b]=(0,f.useState)(null);return(0,f.useEffect)(()=>{s?null===N&&b(Date.now()):null!==N&&(g(Math.round((Date.now()-N)/1e3)),b(null))},[s,N,g]),(0,f.useEffect)(()=>{if(s&&!u)p(!0);else if(!s&&u&&!r&&!j){let e=setTimeout(()=>{p(!1),y(!0)},1e3);return()=>clearTimeout(e)}},[s,u,r,p,j]),(0,n.jsx)(v.Provider,{value:{isStreaming:s,isOpen:u,setIsOpen:p,duration:h},children:(0,n.jsx)(x.zF,{className:(0,l.cn)("not-prose mb-4",t),onOpenChange:e=>{p(e)},open:u,...c,children:d})})}),y=(0,f.memo)(e=>{let{className:t,title:s="Reasoning",children:a,...r}=e,{isStreaming:i,isOpen:o,duration:d}=g();return(0,n.jsx)(x.wy,{className:(0,l.cn)("flex items-center gap-2 text-muted-foreground text-sm",t),...r,children:null!=a?a:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(p.Z,{className:"size-4"}),i||0===d?(0,n.jsx)("p",{children:"Thinking..."}):(0,n.jsxs)("p",{children:["Thought for ",d," seconds"]}),(0,n.jsx)(h.Z,{className:(0,l.cn)("size-4 text-muted-foreground transition-transform",o?"rotate-180":"rotate-0")})]})})}),N=(0,f.memo)(e=>{let{className:t,children:s,...a}=e;return(0,n.jsx)(x.Fw,{className:(0,l.cn)("mt-4 text-sm","data-[state=closed]:fade-out-0 data-[state=closed]:slide-out-to-top-2 data-[state=open]:slide-in-from-top-2 text-popover-foreground outline-none data-[state=closed]:animate-out data-[state=open]:animate-in",t),...a,children:(0,n.jsx)(u.H,{className:"grid gap-2",children:s})})});j.displayName="Reasoning",y.displayName="ReasoningTrigger",N.displayName="ReasoningContent";var b=s(55455);let w=e=>{let{className:t,...s}=e;return(0,n.jsx)(x.zF,{className:(0,l.cn)("not-prose mb-4 text-primary text-xs",t),...s})},k=e=>{let{className:t,count:s,children:l,...a}=e;return(0,n.jsx)(x.wy,{className:"flex items-center gap-2",...a,children:null!=l?l:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("p",{className:"font-medium",children:["Used ",s," sources"]}),(0,n.jsx)(h.Z,{className:"h-4 w-4"})]})})},C=e=>{let{className:t,...s}=e;return(0,n.jsx)(x.Fw,{className:(0,l.cn)("mt-3 flex w-fit flex-col gap-2","data-[state=closed]:fade-out-0 data-[state=closed]:slide-out-to-top-2 data-[state=open]:slide-in-from-top-2 outline-none data-[state=closed]:animate-out data-[state=open]:animate-in",t),...s})},_=e=>{let{href:t,title:s,children:l,...a}=e;return(0,n.jsx)("a",{className:"flex items-center gap-2",href:t,rel:"noreferrer",target:"_blank",...a,children:null!=l?l:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(b.Z,{className:"h-4 w-4"}),(0,n.jsx)("span",{className:"block font-medium",children:s})]})})};var T=s(52636),S=s(78867),z=s(33145),F=s(77992),I=s(40519),P=s(15863),R=s(66901),D=s(45131);let L={pending:{icon:I.Z,label:"Pending",className:"text-muted-foreground"},in_progress:{icon:P.Z,label:"In Progress",className:"text-blue-500 animate-spin"},completed:{icon:R.Z,label:"Completed",className:"text-green-500"},cancelled:{icon:D.Z,label:"Cancelled",className:"text-red-500"}},Z={high:{label:"High",className:"bg-red-500/10 text-red-500 border-red-500/20"},medium:{label:"Medium",className:"bg-yellow-500/10 text-yellow-500 border-yellow-500/20"},low:{label:"Low",className:"bg-blue-500/10 text-blue-500 border-blue-500/20"}},M=e=>{let{todos:t,showPriority:s=!1,state:a,className:r,...i}=e;if("string"==typeof t&&(t=JSON.parse(t)),!t||0===t.length)return null;let o=t.filter(e=>"completed"===e.status).length,d=t.length;return(0,n.jsxs)("div",{className:(0,l.cn)("my-2 space-y-1","input-streaming"===a&&"opacity-70",r),...i,children:[t.map((e,a)=>{let r=L[e.status].icon,i=L[e.status].className;Z[e.priority].className;let o="in_progress"===e.status&&a===t.findIndex(e=>"in_progress"===e.status);return(0,n.jsxs)("div",{className:(0,l.cn)("flex items-start gap-2 py-0.5","cancelled"===e.status&&"opacity-50"),children:[(0,n.jsx)("div",{className:"flex-shrink-0 pt-0.5",children:(0,n.jsx)(r,{className:(0,l.cn)("size-3.5",i)})}),(0,n.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,n.jsx)("span",{className:(0,l.cn)("text-sm","completed"===e.status&&"text-muted-foreground line-through","cancelled"===e.status&&"text-muted-foreground line-through","in_progress"===e.status&&o&&"font-medium"),children:e.content}),s&&"high"===e.priority&&(0,n.jsx)("span",{className:"ml-2 text-red-500 text-xs",children:"(!)"})]})]},e.id)}),d>1&&(0,n.jsxs)("div",{className:"flex items-center gap-2 pt-1 text-muted-foreground text-xs",children:[(0,n.jsx)("div",{className:"h-1 flex-1 overflow-hidden rounded-full bg-secondary",children:(0,n.jsx)("div",{className:"h-full bg-primary transition-all duration-300",style:{width:"".concat(o/d*100,"%")}})}),(0,n.jsxs)("span",{className:"whitespace-nowrap",children:[o,"/",d]})]}),"output-error"===a&&(0,n.jsxs)("div",{className:"flex items-center gap-1 pt-1 text-red-500 text-xs",children:[(0,n.jsx)(D.Z,{className:"size-3"}),(0,n.jsx)("span",{children:"Error updating tasks"})]})]})};var A=s(78361);function U(e){let{messages:t,status:s="idle",className:i,showActions:o=!0,onRegenerate:m,onAddToolResult:x,UntypedToolPartComponent:p,addToContext:h,writeAccess:f=!0,config:v}=e,{toast:g}=(0,F.pm)();return(0,n.jsx)(n.Fragment,{children:null==t?void 0:t.map((e,t)=>{var b,F;let I=e.metadata,P=null!==(F=null===(b=e.parts.filter(e=>{var t;return"text"===e.type&&(null===(t=e.text)||void 0===t?void 0:t.includes('<file name="'))}))||void 0===b?void 0:b.flatMap(e=>{var t;let s=e.text.match(/<file name="([^"]+)">([^<]+)<\/file>/g);return null!==(t=null==s?void 0:s.map(e=>{var t,s,n,l;console.log("filePart",e);let a=null!==(n=null===(t=e.match(/<file name="([^"]+)">/))||void 0===t?void 0:t[1])&&void 0!==n?n:"";return console.log("s3Key",a),{s3Key:a,content:null!==(l=null===(s=e.match(/<file name="([^"]+)">([^<]+)<\/file>/))||void 0===s?void 0:s[2])&&void 0!==l?l:""}}))&&void 0!==t?t:[]}))&&void 0!==F?F:[];return console.log("files",P),(0,n.jsx)(a,{className:(0,l.cn)("assistant"===e.role&&((null==v?void 0:v.customAssistantClassnames)?null==v?void 0:v.customAssistantClassnames:""),0===t&&((null==v?void 0:v.marginTopFirstMessage)?null==v?void 0:v.marginTopFirstMessage:"mt-12"),i),from:e.role,children:(0,n.jsxs)(r,{children:[e.parts.map((t,l)=>{var a,r,i,o,d,c,m,f;if("step-start"===t.type)return null;if("text"===t.type){let s=t.text.replace(/<file name="([^"]+)">([^<]+)<\/file>/g,"");return(0,n.jsx)(u.H,{className:"chat-response-container",children:s},"".concat(e.id,"-").concat(l)+"_response")}if("tool-askForConfirmation"===t.type&&x){let e=t.toolCallId;switch(t.state){case"input-streaming":return(0,n.jsx)("div",{children:"Loading confirmation request..."},e);case"input-available":return(0,n.jsxs)("div",{children:[t.input.message,(0,n.jsxs)("div",{children:[(0,n.jsx)("button",{onClick:()=>x({tool:"askForConfirmation",toolCallId:e,output:"Yes, confirmed"}),children:"Yes"}),(0,n.jsx)("button",{onClick:()=>x({tool:"askForConfirmation",toolCallId:e,output:"No, denied"}),children:"No"})]})]},e);case"output-available":return(0,n.jsxs)("div",{children:["Tool call allowed: ",t.output]},e);case"output-error":return(0,n.jsxs)("div",{children:["Error: ",t.errorText]},e)}}if((null===(a=t.type)||void 0===a?void 0:a.toLowerCase().includes("preview_pdf"))||(null===(r=t.type)||void 0===r?void 0:r.toLowerCase().includes("pdf_file_in_a_web_view"))){let e=JSON.parse(null!==(c=null===(d=t.output)||void 0===d?void 0:d.result)&&void 0!==c?c:"{}");if(!(null==e?void 0:e.url))return(0,n.jsxs)("div",{children:["No URL provided for PDF preview ",JSON.stringify(e)]});let s="".concat(e.url,"#page=").concat(null!==(m=e.page)&&void 0!==m?m:1);return(0,n.jsx)("iframe",{src:s,style:{width:"100%",height:"100vh"},title:"PDF viewer"})}if((null===(i=t.type)||void 0===i?void 0:i.toLowerCase())==="tool-todo_write"||(null===(o=t.type)||void 0===o?void 0:o.toLowerCase())==="tool-todo_read"){let e=t.output;if(!(null==e?void 0:e.result))return null;let s=t.state;return(0,n.jsx)(M,{todos:e.result,showPriority:!0,state:s})}if((t.type.startsWith("tool-")||"dynamic-tool"===t.type)&&p&&h){let e=t.toolCallId;return(0,n.jsx)(p,{untypedToolPart:t,callId:e,addToContext:h},e)}return"file"===t.type&&(null===(f=t.mediaType)||void 0===f?void 0:f.startsWith("image/"))?(0,n.jsx)(z.default,{src:t.url,width:300,height:300,alt:"Generated image"},"".concat(e.id,"-").concat(l)):"source-url"===t.type?(0,n.jsxs)(w,{children:[(0,n.jsx)(k,{count:e.parts.filter(e=>"source-url"===e.type).length}),(0,n.jsx)(C,{children:e.parts.map((t,s)=>{if("source-url"===t.type)return(0,n.jsx)(_,{href:t.url,title:t.title},"".concat(e.id,"-").concat(s))})},"".concat(e.id))]},"".concat(e.id,"-").concat(l)):"reasoning"===t.type?(0,n.jsxs)(j,{className:"w-full",isStreaming:"streaming"===s,children:[(0,n.jsx)(y,{}),(0,n.jsx)(N,{children:t.text})]},"".concat(e.id,"-").concat(l)):null}),P.length>0&&(0,n.jsx)("div",{className:"grid grid-cols-6 min-w-[500px] gap-2 mt-3 mb-3",children:P.map(t=>(0,n.jsx)(A.jU,{s3Key:t.s3Key,onRemove:()=>{},active:!1,disabled:!1},t.s3Key+"_file_item_"+e.id))}),o&&"assistant"===e.role&&(0,n.jsxs)(d,{className:"mt-2",children:[m&&(0,n.jsx)(c,{onClick:()=>m(),label:"Retry",disabled:!f,children:(0,n.jsx)(T.Z,{className:"size-3"})}),(0,n.jsx)(c,{onClick:()=>{navigator.clipboard.writeText(e.parts.map(e=>(null==e?void 0:e.text)||"").join("\n")),g({title:"Copied message",description:"The message was copied to your clipboard."})},label:"Copy",children:(0,n.jsx)(S.Z,{className:"size-3"})}),(null==I?void 0:I.totalTokens)&&(0,n.jsxs)("small",{className:"text-muted-foreground",children:[Intl.NumberFormat("en-US").format(null==I?void 0:I.totalTokens)," tokens"]})]})]})},e.id)})})}},1828:function(e,t,s){"use strict";s.d(t,{r:function(){return i}});var n=s(57437),l=s(50721),a=s(2265),r=s(94508);let i=a.forwardRef((e,t)=>{let{className:s,...a}=e;return(0,n.jsx)(l.fC,{className:(0,r.cn)("peer inline-flex h-6 w-11 shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input",s),...a,ref:t,children:(0,n.jsx)(l.bU,{className:(0,r.cn)("pointer-events-none block h-5 w-5 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-5 data-[state=unchecked]:translate-x-0")})})});i.displayName=l.fC.displayName},12194:function(e,t,s){"use strict";s.d(t,{EE:function(){return i},Lq:function(){return x},Sh:function(){return r},VR:function(){return c},er:function(){return o},iJ:function(){return d}});var n=s(7211),l=s(12199),a=s(27689);let r=e=>{var t,s,l,r;return(0,n.aM)(a.xx,{variables:{page:null!==(t=null==e?void 0:e.page)&&void 0!==t?t:1,limit:null!==(s=null==e?void 0:e.limit)&&void 0!==s?s:20,filters:null!==(l=null==e?void 0:e.filters)&&void 0!==l?l:[],sort:null!==(r=null==e?void 0:e.sort)&&void 0!==r?r:{field:"updatedAt",direction:"DESC"}}})},i=()=>(0,l.D)(a.Iv,{refetchQueries:[{query:a.xx,variables:{page:1,limit:20}}]}),o=()=>(0,l.D)(a.jA),d=()=>(0,l.D)(a.Ll,{refetchQueries:[{query:a.xx,variables:{page:1,limit:20}}]}),c=()=>(0,l.D)(a.re),u=()=>(0,l.D)(a.Nl),m=()=>(0,l.D)(a.m8),x=()=>{let[e]=u(),[t]=m(),[s]=(0,l.D)(a.UK);return{toggleFavorite:async(n,l,a,r,i)=>{a&&i?(await t({variables:{id:i}}),await s({variables:{id:n,favorite_count:Math.max(0,r-1)}})):(await e({variables:{user_id:l,prompt_id:n}}),await s({variables:{id:n,favorite_count:r+1}}))}}}},87393:function(e,t,s){"use strict";s.d(t,{I:function(){return n}});let n=(e,t)=>{var s,n,l,a,r,i;let o="private"===e.rights_mode,d="public"===e.rights_mode,c="users"===e.rights_mode,u="roles"===e.rights_mode,m=t.super_admin,x=e.created_by===t.id.toString(),p=!1;return o&&x&&(p=!0),d&&(p=!0),c&&(p=(null===(l=e.RBAC)||void 0===l?void 0:null===(n=l.users)||void 0===n?void 0:null===(s=n.find(e=>e.id===t.id))||void 0===s?void 0:s.rights)==="write"),u&&(p=(null===(i=e.RBAC)||void 0===i?void 0:null===(r=i.roles)||void 0===r?void 0:null===(a=r.find(e=>{var s;return e.id===(null===(s=t.role)||void 0===s?void 0:s.id)}))||void 0===a?void 0:a.rights)==="write"),m&&(p=!0),p}},84544:function(e,t,s){"use strict";function n(e){if(!e)return[];let t=e.matchAll(/\{\{([a-zA-Z0-9_]+)\}\}/g),s=new Set;for(let e of Array.from(t))s.add(e[1]);return Array.from(s).sort()}s.d(t,{H:function(){return n}})}},function(e){e.O(0,[329,6840,8310,3954,4705,3611,6989,5987,9851,7629,7093,6148,847,1942,7648,7823,8068,5799,605,4567,1206,5338,1785,5110,3171,1713,1425,4811,7086,3145,6805,6373,3832,8030,3750,1957,2971,2117,1744],function(){return e(e.s=395)}),_N_E=e.O()}]);
|
|
2
|
-
//# sourceMappingURL=page-38f845d5ccdad76b.js.map
|