@superinterface/react 3.5.4 → 3.6.1

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/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/domas/Developer/supercorp/superinterface/packages/react/dist/index.js","../src/lib/misc/merge/index.ts","../src/hooks/audioThreads/useMessageAudio/lib/isHtmlAudioSupported.ts","../src/components/core/SuperinterfaceProvider/index.tsx","../src/lib/misc/merge/customizer.ts","../src/contexts/core/SuperinterfaceContext/index.tsx","../src/lib/superinterfaceCloud/baseUrl.ts","../src/lib/threadIdStorage/cookieOptions/get.ts","../src/lib/threadIdStorage/key.ts","../src/lib/threadIdStorage/cookieOptions/set.ts","../src/lib/threadIdStorage/cookieOptions/remove.ts","../src/lib/threadIdStorage/cookieOptions/index.ts","../src/lib/threadIdStorage/localStorageOptions/get.ts","../src/lib/threadIdStorage/localStorageOptions/set.ts","../src/lib/threadIdStorage/localStorageOptions/remove.ts","../src/lib/threadIdStorage/localStorageOptions/index.ts","../src/lib/iframes/isIframe.ts","../src/hooks/core/useSuperinterfaceContext/index.ts","../src/components/threads/Thread/Messages/index.tsx","../src/components/threads/Thread/Message/index.tsx","../src/components/skeletons/StartingContentSkeleton/index.tsx","../src/components/runSteps/RunSteps/index.tsx","../src/contexts/components/ComponentsContext/index.tsx","../src/components/runSteps/RunStep/ToolCalls/index.tsx","../src/components/runSteps/RunStep/ToolCalls/ToolCall/Fn/index.tsx","../src/contexts/functions/FunctionComponentsContext/index.tsx","../src/components/functions/FunctionBase/index.tsx","../src/components/toolCalls/ToolCallBase/index.tsx","../src/components/toolCalls/ToolCallBase/ToolCallTitle.tsx","../src/components/toolCalls/ToolCallBase/ToolCallIcon.tsx","../src/components/functions/FunctionBase/Content/index.tsx","../src/components/functions/FunctionBase/Content/lib/formattedJsonOrRaw.ts","../src/components/runSteps/RunStep/ToolCalls/ToolCall/Fn/DefaultFunction/lib/title.ts","../src/components/runSteps/RunStep/ToolCalls/ToolCall/Fn/DefaultFunction/index.tsx","../src/components/runSteps/RunStep/ToolCalls/ToolCall/CodeInterpreter/index.tsx","../src/components/runSteps/RunStep/ToolCalls/ToolCall/CodeInterpreter/Content.tsx","../src/components/runSteps/RunStep/ToolCalls/ToolCall/FileSearch.tsx","../src/components/runSteps/RunStep/ToolCalls/ToolCall/Fallback.tsx","../src/components/runSteps/RunStep/ToolCalls/ToolCall/index.tsx","../src/components/runSteps/RunStep/ToolCalls/Starting/index.tsx","../src/components/runSteps/RunStep/index.tsx","../src/hooks/messages/useIsMutatingMessage/index.ts","../src/contexts/messages/MessageContext/index.ts","../src/components/threads/Thread/Message/Provider.tsx","../src/components/threads/Thread/Message/Attachments/index.tsx","../src/components/threads/Thread/Message/ContentPart/TextContent.tsx","../src/lib/recma/recmaFallbackComponentPlugin.ts","../src/hooks/markdown/useMarkdownContext/index.ts","../src/contexts/markdown/MarkdownContext/index.ts","../src/contexts/markdown/MarkdownContext/lib/components/index.tsx","../src/contexts/markdown/MarkdownContext/lib/components/Paragraph.tsx","../src/contexts/markdown/MarkdownContext/lib/components/Link.tsx","../src/contexts/markdown/MarkdownContext/lib/components/UnorderedList.tsx","../src/contexts/markdown/MarkdownContext/lib/components/OrderedList.tsx","../src/contexts/markdown/MarkdownContext/lib/components/ListItem.tsx","../src/contexts/markdown/MarkdownContext/lib/components/Strong.tsx","../src/contexts/markdown/MarkdownContext/lib/components/Pre.tsx","../src/contexts/markdown/MarkdownContext/lib/components/Code.tsx","../src/components/suggestions/Suggestions/index.tsx","../src/hooks/messages/useLatestMessage/index.ts","../src/hooks/messages/useMessages/index.tsx","../src/lib/threads/queryOptions/index.ts","../src/lib/threads/queryOptions/variableParams.ts","../src/lib/messages/messagesQueryOptions.ts","../src/components/suggestions/Suggestions/Content.tsx","../src/components/suggestions/Suggestions/Item.tsx","../src/hooks/messages/useCreateMessage/index.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/onMutate/index.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/onMutate/data.ts","../src/lib/optimistic/optimisticId.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/index.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadCreated.ts","../src/lib/optimistic/isOptimistic.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/extendMessage.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadMessageCreated.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadMessageDelta.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadMessageCompleted.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadRunCreated.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadRunFailed.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadRunStepCreated.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadRunStepDelta.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadRunStepCompleted.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadRunRequiresAction.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/index.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/index.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/body.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/index.ts","../src/hooks/toasts/useToasts/index.ts","../src/contexts/toasts/ToastsContext/index.ts","../src/lib/errors/createMessageDefaultOnError.ts","../src/components/images/Image.tsx","../src/contexts/markdown/MarkdownContext/lib/components/Img/lib/isVideoSrc.ts","../src/contexts/markdown/MarkdownContext/lib/components/Img/lib/isAudioSrc.ts","../src/contexts/markdown/MarkdownContext/lib/components/Img/Video/index.tsx","../src/components/media/PlayButton.tsx","../src/components/media/VolumeButton.tsx","../src/components/media/Time.tsx","../src/components/media/MediaContainer.tsx","../src/contexts/markdown/MarkdownContext/lib/components/Img/Video/FullscreenButton.tsx","../src/contexts/markdown/MarkdownContext/lib/components/Img/Audio/index.tsx","../src/contexts/markdown/MarkdownContext/lib/components/Img/index.tsx","../src/contexts/markdown/MarkdownContext/lib/components/Annotation/index.tsx","../src/contexts/markdown/MarkdownContext/lib/components/Annotation/AnnotationBase.tsx","../src/contexts/markdown/MarkdownContext/lib/components/Annotation/FilePathAnnotation.tsx","../src/contexts/markdown/MarkdownContext/lib/getRemarkPlugins.ts","../src/lib/remark/remarkAnnotation.ts","../src/components/threads/Thread/Message/ContentPart/ImageFileContent.tsx","../src/components/threads/Thread/Message/ContentPart/index.tsx","../src/components/threads/Thread/Messages/Content/index.tsx","../src/hooks/messageGroups/useMessageGroups/index.ts","../src/hooks/messageGroups/useMessageGroups/lib/messageGroups/index.ts","../src/lib/messages/order.ts","../src/hooks/messageGroups/useMessageGroups/lib/messageGroups/newGroup/newGroupItem.ts","../src/hooks/messageGroups/useMessageGroups/lib/messageGroups/newGroup/index.ts","../src/components/skeletons/MessagesSkeleton/index.tsx","../src/components/messageGroups/MessageGroupBase/index.tsx","../src/components/messageGroups/MessageGroupBase/Name.tsx","../src/components/threads/Thread/Messages/Content/MessageGroup/index.tsx","../src/components/messageGroups/MessageGroupBase/AssistantAvatar.tsx","../src/contexts/assistants/AssistantAvatarContext/index.tsx","../src/contexts/assistants/AssistantNameContext/index.tsx","../src/components/messageGroups/MessageGroupBase/UserAvatar.tsx","../src/contexts/users/UserAvatarContext/index.tsx","../src/components/threads/Thread/Messages/Content/MessageGroup/Content/index.tsx","../src/components/threads/Thread/Messages/Progress/index.tsx","../src/components/skeletons/StartingSkeleton/index.tsx","../src/components/threads/Thread/Messages/Root/index.tsx","../src/hooks/misc/useInfiniteScroll/index.tsx","../src/hooks/misc/useThrottledEffect/index.tsx","../src/components/threads/Thread/Messages/NextPageSkeleton.tsx","../src/components/threads/Thread/MessageForm/Submit/index.tsx","../src/hooks/messages/useMessageFormContext/index.ts","../src/contexts/messages/MessageFormContext/index.ts","../src/components/threads/Thread/MessageForm/Root/index.tsx","../src/components/threads/Thread/MessageForm/Root/lib/formOptions.ts","../src/components/threads/Thread/MessageForm/Field/index.tsx","../src/components/threads/Thread/MessageForm/Field/Control.tsx","../src/hooks/misc/usePrevious.ts","../src/components/textareas/TextareaBase/index.tsx","../src/components/threads/Thread/MessageForm/Field/Files/Preview.tsx","../src/components/threads/Thread/MessageForm/Field/Files/Control.tsx","../src/hooks/files/useCreateFile/index.ts","../src/hooks/files/useCreateFile/lib/mutationOptions/mutationFn/body/formData.ts","../src/hooks/files/useCreateFile/lib/mutationOptions/mutationFn/body/index.ts","../src/hooks/files/useCreateFile/lib/mutationOptions/mutationFn/index.ts","../src/hooks/files/useCreateFile/lib/mutationOptions/index.ts","../src/components/threads/Thread/MessageForm/Field/Files/index.tsx","../src/components/threads/Thread/MessageForm/index.tsx","../src/components/threads/Thread/Root/index.tsx","../src/components/threads/Thread/Provider/index.tsx","../src/components/toasts/ToastsProvider/index.tsx","../src/components/toasts/ToastsProvider/CustomToast.tsx","../src/components/threads/Thread/index.tsx","../src/hooks/messages/useMessageContext/index.ts","../src/hooks/assistants/useAssistant/index.ts","../src/hooks/assistants/useAssistant/lib/queryOptions/index.ts","../src/hooks/assistants/useAssistant/lib/queryOptions/queryFn.ts","../src/components/threads/ThreadDialog/Provider/index.tsx","../src/contexts/threads/ThreadDialogContext/index.ts","../src/hooks/threads/useThreadDialogContext/index.ts","../src/components/threads/ThreadDialog/Root/index.tsx","../src/components/threads/ThreadDialog/Trigger/index.tsx","../src/components/threads/ThreadDialog/Trigger/Button.tsx","../src/components/threads/ThreadDialog/Content/index.tsx","../src/components/threads/ThreadDialog/Close/index.tsx","../src/components/threads/ThreadDialog/index.tsx","../src/components/threads/AudioThread/Root/index.tsx","../src/contexts/threads/AudioThreadContext/index.ts","../src/hooks/misc/usePermission/index.ts","../src/hooks/misc/usePermission/util.ts","../src/components/threads/AudioThread/Root/lib/blobToData.ts","../src/hooks/audioThreads/useStatus/index.ts","../src/hooks/audioThreads/useRecorder/index.ts","../src/hooks/misc/useInterval.ts","../src/hooks/audioThreads/useMessageAudio/index.ts","../src/hooks/audioThreads/useMessageAudio/lib/input.ts","../src/components/threads/AudioThread/Visualization/index.tsx","../src/hooks/threads/useAudioThreadContext/index.ts","../src/components/threads/AudioThread/BarsVisualizer/index.tsx","../src/components/threads/AudioThread/Status/StatusMessages.tsx","../src/components/threads/AudioThread/Status/index.tsx","../src/components/threads/AudioThread/Form/index.tsx","../src/components/threads/AudioThread/Form/MicIcon.tsx","../src/components/threads/AudioThread/Form/ActionButton/index.tsx","../src/components/threads/AudioThread/index.tsx","../src/components/threads/AudioThreadDialog/index.tsx","../src/components/markdown/MarkdownProvider/index.tsx","../src/components/avatars/Avatar.tsx","../src/components/imageAvatars/ImageAvatar/index.tsx","../src/components/imageAvatars/ImageAvatar/lib/optimizedSrc/path.ts","../src/components/imageAvatars/ImageAvatar/lib/optimizedSrc/host.ts","../src/components/imageAvatars/ImageAvatar/lib/optimizedSrc/index.ts","../src/components/iconAvatars/IconAvatar.tsx","../src/lib/iconAvatars/iconAvatarComponents.ts","../src/components/components/ComponentsProvider.tsx","../src/hooks/components/useComponents.ts","../src/components/assistants/AssistantProvider/index.tsx"],"names":["_","detect","useRef","customizer","objectValue","srcValue","isArray","merge","obj","sources","mergeWith","cloneDeep","createContext","baseUrl","Cookies","key","assistantId","get","set","threadId","remove","cookieOptions","window","localStorage","getItem","setItem","removeItem","localStorageOptions","isIframe","self","top","SuperinterfaceContext","variables","defaultOptions","queries","mutations","threadIdStorageOptions","createMessageAbortControllerRef","current","useContext","useSuperinterfaceContext","jsx","SuperinterfaceProvider","children","superinterfaceContext","value","Provider","Flex","useMemo","isEmpty","Box","Skeleton","StartingContentSkeleton","loading","mt","height","width","style","borderRadius","flexShrink","FunctionComponentsContext","Popover","Button","ToolCallBase","py","ml","size","color","variant","boxShadow","Text","ToolCallTitle","weight","CircleIcon","CircleBackslashIcon","CheckCircledIcon","ToolCallIcon","runStep","completed_at","cancelled_at","failed_at","status","Code","formattedJsonOrRaw","JSON","stringify","parse","error","jsxs","Content","fn","args","arguments","output","whiteSpace","wordBreak","FunctionBase","title","Root","Trigger","maxHeight","name","DefaultFunction","Fn","functionComponentsContext","Component","codeInterpreter","input","outputs","CodeInterpreter","FileSearch","toolCall","Fallback","type","ToolCall","function","code_interpreter","Starting","className","direction","ToolCalls","stepDetails","tool_calls","length","map","id","RunStep","step_details","ComponentsContext","components","RunSteps","runSteps","componentsContext","useIsMutating","useIsMutatingMessage","threadContext","mutatingMessagesCount","mutationKey","isMutatingMessage","MessageContext","message","Badge","FileIcon","Attachments","attachments","align","pb","useState","useEffect","compile","MDXProvider","useMDXComponents","runtime","visit","CONTINUE","SKIP","recmaFallbackComponentPlugin","tree","node","kind","varDecl","declarations","declarator","init","funcNode","body","test","consequent","argument","params","operator","left","right","generator","async","alternate","ifNode","componentName","expression","callee","assignmentExpr","Heading","Table","Paragraph","Link","RadixLink","href","download","target","UnorderedList","asChild","listStylePosition","OrderedList","ListItem","Strong","RadixStrong","Pre","RadixCode","useInfiniteQuery","useQueryClient","infiniteQueryOptions","variableParams","queryOptions","queryKeyBase","path","queryClient","queryKey","queryFn","pageParam","_key","URLSearchParams","fetch","then","response","errorResponse","json","Error","initialPageParam","getNextPageParam","lastPage","hasNextPage","lastId","limit","getQueryDefaults","messagesQueryOptions","messages","props","data","pages","reduce","acc","page","concat","useMessages","useLatestMessage","latestMessage","onlyText","ArrowUpIcon","Spinner","partob","useMutation","omit","dayjs","uid","optimisticId","newMessage","prevData","role","created_at","unix","object","content","text","annotations","run_id","assistant_id","thread_id","metadata","pageParams","latestPage","pagesRest","onMutate","prevMessages","cancelQueries","getQueryData","setQueryData","JSONParser","threadCreated","isOptimistic","startsWith","last","extendMessage","prevRunMessages","filter","m","prevOptimitisticRunMessages","appendMessage","threadMessageCreated","messagesQueryKey","updatedContentPart","prevContentPart","delta","updatedContent","result","forEach","index","threadMessageDelta","messagesRest","replace","threadMessageCompleted","threadRunCreated","threadRunFailed","threadRunStepCreated","updatedToolCall","Object","entries","updatedRunStep","newToolCalls","threadRunStepDelta","rs","threadRunStepCompleted","threadRunRequiresAction","toolCalls","toolOutputs","required_action","submit_client_tool_outputs","parsedArgs","toolCallId","method","headers","handlers","handleResponse","handler","event","console","log","mutationFn","abortController","parser","reader","done","AbortController","signal","stringBufferSize","paths","separator","pipeThrough","getReader","read","mutationOptions","onError","getMutationDefaults","useCreateMessage","createMessage","mutateAsync","ToastsContext","toasts","addToast","useToasts","createMessageDefaultOnError","invalidateQueries","Item","suggestion","isDisabled","isPending","onClick","disabled","minHeight","suggestions","split","c","trim","gap","wrap","Suggestions","latestMessageProps","isBlocking","isLoading","Image","maxWidth","videoExtensions","isVideoSrc","src","includes","pop","isAudioSrc","endsWith","MediaPlayer","MediaProvider","Controls","PlayButton","VidstackPlayButton","useMediaState","IconButton","PlayIcon","PauseIcon","isPaused","MuteButton","useMediaRemote","HoverCard","Slider","SpeakerModerateIcon","SpeakerOffIcon","VolumeButton","volume","isMuted","remote","side","orientation","onValueChange","changeVolume","Time","time","duration","seeking","canSeek","setValue","step","Number","isFinite","onValueCommit","seek","Card","Inset","MediaContainer","mb","clip","display","flexDirection","FullscreenButton","VidstackFullscreenButton","EnterFullScreenIcon","ExitFullScreenIcon","isFullscreen","Video","playsInline","hideControlsOnMouseLeave","crossOrigin","position","bottom","p","zIndex","background","flexGrow","Group","Audio","viewType","Img","QuoteIcon","AnnotationBase","icon","FilePathAnnotation","annotation","nextSearchParams","file_path","file_id","Annotation","Fragment","a","strong","ul","ol","li","pre","code","img","h1","as","h2","h3","h4","h5","h6","table","thead","Header","tbody","Body","tr","Row","td","rest","Cell","th","ColumnHeaderCell","remarkGfm","isNumber","flatMap","sortedAnnotations","sort","b","start_index","remarkAnnotation","processNodeWithAnnotations","processTextNode","linkNode","childNode","nodeStart","start","offset","nodeEnd","end","newNodes","lastIndex","annotationStart","annotationEnd","end_index","Math","max","min","push","createTextNode","startOffset","endOffset","createAnnotationNode","valueStart","valueEnd","slice","hName","hProperties","getRemarkPlugins","MarkdownContext","useMarkdownContext","evaluate","Function","TextContent","remarkPlugins","MDXComponent","setMDXComponent","compileMDX","compiled","module","MDXContent","outputFormat","recmaPlugins","providerImportSource","String","default","ImageFileContent","alt","image_file","ContentPart","Message","messageCreationRunStepIndex","findIndex","message_creation","message_id","nextRunStepIndex","findLastIndex","laterRunSteps","prevRunStepIndex","olderRunSteps","isInProgress","some","order","newGroupItem","createdAt","newGroup","groups","messageGroups","group","dropRight","useMessageGroups","forwardRef","Avatar","Container","MessageGroupBase","ref","Name","MessagesSkeleton","_props","fallback","marginTop","LightningBoltIcon","AssistantAvatarContext","AssistantAvatar","AssistantAvatarContextValue","overflow","AssistantNameContext","PersonIcon","UserAvatarContext","UserAvatar","UserAvatarContextValue","messageGroup","MessageGroup","assistantNameContext","isLoadingError","StartingSkeleton","Progress","isVisible","useInView","useCallback","useThrottledEffect","cb","delay","additionalDeps","cbRef","throttledCb","throttle","leading","trailing","useInfiniteScroll","isFetchingNextPage","fetchNextPage","containerRef","root","rootMargin","threshold","loaderRef","inView","NextPageSkeleton","Messages","StopIcon","MessageFormContext","files","setFiles","isFileLoading","useMessageFormContext","abort","Submit","useForm","FormProvider","z","zodResolver","schema","string","formOptions","resolver","onSubmit","onSubmitArg","isDisabledArg","formProps","handleSubmit","formState","isSubmitting","reset","watch","file","tools","useFormContext","RadixContainer","usePrevious","state","TextareaAutosize","TextareaBase","border","outline","boxSizing","resize","pt","Input","register","isSubmitDisabled","isDisabledPrevious","textareaRef","textareaProps","focus","minRows","placeholder","onKeyDown","e","shiftKey","preventDefault","currentTarget","form","requestSubmit","Control","Cross2Icon","Preview","flexBasis","justify","minWidth","truncate","filename","prev","prevFile","FilePlusIcon","formData","FormData","append","useCreateFile","createFile","firstArg","restArgs","accept","onChange","fileObjects","newFiles","Array","from","fileObject","purpose","bytes","newFile","onSuccess","pr","multiple","cursor","opacity","Files","errors","borderWidth","borderStyle","borderColor","backgroundColor","pl","Field","MessageForm","Toast","CrossCircledIcon","CustomToast","toast","Title","ToastsProvider","setToasts","prevToasts","Toast2","Viewport","padding","margin","listStyle","Thread","useMessageContext","useQuery","tanstackQueryOptions","publicApiKey","useAssistant","assistant","ThreadDialogContext","isOpen","setIsOpen","useThreadDialogContext","threadDialogContext","ChatBubbleIcon","radius","initial","sm","Cross1Icon","Close","paddingTop","paddingRight","paddingLeft","FormContainer","ThreadDialog","AudioThreadContext","recorderProps","stop","pause","resume","visualizationAnalyser","messageAudioProps","playing","paused","isReady","play","noop","on","addEventListener","off","removeEventListener","usePermission","permissionDesc","setState","mounted","permissionStatus","navigator","permissions","query","catch","blobToData","blob","Promise","resolve","FileReader","onloadend","readAsDataURL","useStatus","createMessageProps","isAudioPlayed","useAudioCapture","useAudioPlayer","useInterval","callback","savedCallback","interval","setInterval","clearInterval","useRecorder","isStopOnSilence","onStart","onStop","silenceStart","setSilenceStart","noiseStart","setNoiseStart","mediaStream","setMediaStream","setStatus","startAudioPlayer","endAudioPlayer","isLoaded","setIsLoaded","audioCaptureProps","opts","isInited","onPause","onResume","audioEngine","setAudioEngine","audioContext","AudioContext","source","createMediaStreamSource","createAnalyser","connect","silenceAnalyser","minDecibels","handleSilence","frequencyData","Uint8Array","frequencyBinCount","getByteFrequencyData","isSilent","every","f","requestAnimationFrame","isBefore","subtract","nlp","Howler","textContents","join","unsupportedNames","isHtmlAudioSupported","FULL_SENTENCE_REGEX","getMessageSentences","messageId","sentences","sentence","useMessageAudio","onEnd","setIsAudioPlayed","stoppedMessageIds","setStoppedMessageIds","playedMessageSentences","setPlayedMessageSentences","audioPlayer","nextAudioPlayer","isPlaying","setIsPlaying","unplayedMessageSentences","messageSentences","ms","find","pms","firstUnplayedMessageSentence","isFullSentence","searchParams","load","format","autoplay","html5","onplay","onstop","onload","nextUnplayedMessageSentence","isNextFullSentence","onend","_howls","_sounds","_node","isAudioEngineInited","createMediaElementSource","masterGain","ctx","destination","_event","chunks","audioContent","Blob","microphonePermission","useAudioThreadContext","Grid","cluster","barCount","BarsVisualizer","barWidth","barHeights","setBarHeights","draw","fill","clusteredFrequencyData","frequencyDataCluster","mean","columns","gridTemplateColumns","barHeight","Visualization","audioThreadContext","scale","setScale","html","texts","i","StatusMessages","dangerouslySetInnerHTML","__html","Status","MicIcon","xmlns","stroke","strokeWidth","viewBox","d","ResumeIcon","ActionButton","mr","highContrast","Form","px","AudioThread","AudioThreadDialog","MarkdownProvider","prevMarkdownContext","RadixAvatar","imageAvatar","encodeURIComponent","url","host","URL","origin","optimizedSrc","ImageAvatar","BackpackIcon","RocketIcon","MagicWandIcon","CubeIcon","TargetIcon","DiscIcon","GlobeIcon","StarIcon","FaceIcon","HeartIcon","iconAvatarComponents","IconAvatar","iconAvatar","avatar","useComponents","ComponentsProvider","prevComponents","AssistantProvider","Avatar6","useThreadContext"],"mappings":"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","sourcesContent":["// src/components/core/SuperinterfaceProvider/index.tsx\nimport { useRef } from \"react\";\n\n// src/lib/misc/merge/index.ts\nimport _2 from \"lodash\";\n\n// src/lib/misc/merge/customizer.ts\nimport _ from \"lodash\";\nvar customizer = (objectValue, srcValue) => {\n if (!_.isArray(objectValue)) return;\n return srcValue;\n};\n\n// src/lib/misc/merge/index.ts\nvar merge = (obj, ...sources) => _2.mergeWith(_2.cloneDeep(obj), ...sources, customizer);\n\n// src/contexts/core/SuperinterfaceContext/index.tsx\nimport { createContext } from \"react\";\n\n// src/lib/superinterfaceCloud/baseUrl.ts\nvar baseUrl = \"https://superinterface.ai/api/cloud\";\n\n// src/lib/threadIdStorage/cookieOptions/get.ts\nimport Cookies from \"js-cookie\";\n\n// src/lib/threadIdStorage/key.ts\nvar key = ({\n assistantId\n}) => `superinterface-${assistantId}-threadId`;\n\n// src/lib/threadIdStorage/cookieOptions/get.ts\nvar get = ({\n assistantId\n}) => Cookies.get(key({ assistantId })) ?? null;\n\n// src/lib/threadIdStorage/cookieOptions/set.ts\nimport Cookies2 from \"js-cookie\";\nvar set = ({\n assistantId,\n threadId\n}) => Cookies2.set(key({ assistantId }), threadId);\n\n// src/lib/threadIdStorage/cookieOptions/remove.ts\nimport Cookies3 from \"js-cookie\";\nvar remove = ({\n assistantId\n}) => Cookies3.remove(key({ assistantId }));\n\n// src/lib/threadIdStorage/cookieOptions/index.ts\nvar cookieOptions = {\n get,\n set,\n remove\n};\n\n// src/lib/threadIdStorage/localStorageOptions/get.ts\nvar get2 = ({\n assistantId\n}) => window.localStorage.getItem(key({ assistantId }));\n\n// src/lib/threadIdStorage/localStorageOptions/set.ts\nvar set2 = ({\n assistantId,\n threadId\n}) => window.localStorage.setItem(key({ assistantId }), threadId);\n\n// src/lib/threadIdStorage/localStorageOptions/remove.ts\nvar remove2 = ({\n assistantId\n}) => window.localStorage.removeItem(key({ assistantId }));\n\n// src/lib/threadIdStorage/localStorageOptions/index.ts\nvar localStorageOptions = {\n get: get2,\n set: set2,\n remove: remove2\n};\n\n// src/lib/iframes/isIframe.ts\nvar isIframe = () => {\n if (typeof window === \"undefined\") return false;\n return window.self !== window.top;\n};\n\n// src/contexts/core/SuperinterfaceContext/index.tsx\nvar SuperinterfaceContext = createContext({\n baseUrl,\n variables: {},\n defaultOptions: {\n queries: {},\n mutations: {}\n },\n threadIdStorageOptions: isIframe() ? localStorageOptions : cookieOptions,\n createMessageAbortControllerRef: { current: null }\n});\n\n// src/hooks/core/useSuperinterfaceContext/index.ts\nimport { useContext } from \"react\";\nvar useSuperinterfaceContext = () => useContext(SuperinterfaceContext);\n\n// src/components/core/SuperinterfaceProvider/index.tsx\nimport { jsx } from \"react/jsx-runtime\";\nvar SuperinterfaceProvider = ({\n children,\n baseUrl: baseUrl2,\n variables,\n defaultOptions,\n threadIdStorageOptions\n}) => {\n const superinterfaceContext = useSuperinterfaceContext();\n const createMessageAbortControllerRef = useRef(null);\n const value = merge(\n superinterfaceContext,\n {\n ...baseUrl2 ? { baseUrl: baseUrl2 } : {},\n ...variables ? { variables } : {},\n ...defaultOptions ? { defaultOptions } : {},\n ...threadIdStorageOptions ? { threadIdStorageOptions } : {},\n createMessageAbortControllerRef\n }\n );\n return /* @__PURE__ */ jsx(\n SuperinterfaceContext.Provider,\n {\n value,\n children\n }\n );\n};\n\n// src/components/threads/Thread/Messages/index.tsx\nimport {\n Flex as Flex18\n} from \"@radix-ui/themes\";\n\n// src/components/threads/Thread/Message/index.tsx\nimport { useMemo as useMemo9 } from \"react\";\nimport { isEmpty as isEmpty2 } from \"radash\";\nimport {\n Box as Box9\n} from \"@radix-ui/themes\";\n\n// src/components/skeletons/StartingContentSkeleton/index.tsx\nimport {\n Skeleton\n} from \"@radix-ui/themes\";\nimport { jsx as jsx2 } from \"react/jsx-runtime\";\nvar StartingContentSkeleton = () => /* @__PURE__ */ jsx2(\n Skeleton,\n {\n loading: true,\n mt: \"1\",\n height: \"var(--space-4)\",\n width: \"var(--space-4)\",\n style: {\n borderRadius: \"var(--radius-6)\",\n flexShrink: 0\n }\n }\n);\n\n// src/components/runSteps/RunSteps/index.tsx\nimport { Flex as Flex5 } from \"@radix-ui/themes\";\nimport { useContext as useContext3 } from \"react\";\n\n// src/contexts/components/ComponentsContext/index.tsx\nimport { createContext as createContext3 } from \"react\";\n\n// src/components/runSteps/RunStep/ToolCalls/index.tsx\nimport {\n Flex as Flex4\n} from \"@radix-ui/themes\";\n\n// src/components/runSteps/RunStep/ToolCalls/ToolCall/Fn/index.tsx\nimport { useContext as useContext2 } from \"react\";\n\n// src/contexts/functions/FunctionComponentsContext/index.tsx\nimport { createContext as createContext2 } from \"react\";\nvar FunctionComponentsContext = createContext2({});\n\n// src/components/functions/FunctionBase/index.tsx\nimport {\n Popover,\n Flex as Flex2\n} from \"@radix-ui/themes\";\n\n// src/components/toolCalls/ToolCallBase/index.tsx\nimport {\n Flex,\n Button\n} from \"@radix-ui/themes\";\nimport { jsx as jsx3 } from \"react/jsx-runtime\";\nvar ToolCallBase = ({\n children\n}) => /* @__PURE__ */ jsx3(\n Flex,\n {\n py: \"1\",\n ml: \"-2\",\n children: /* @__PURE__ */ jsx3(\n Button,\n {\n size: \"1\",\n color: \"gold\",\n variant: \"outline\",\n style: {\n boxShadow: \"none\"\n },\n children\n }\n )\n }\n);\n\n// src/components/toolCalls/ToolCallBase/ToolCallTitle.tsx\nimport {\n Text\n} from \"@radix-ui/themes\";\nimport { jsx as jsx4 } from \"react/jsx-runtime\";\nvar ToolCallTitle = ({\n children\n}) => /* @__PURE__ */ jsx4(\n Text,\n {\n weight: \"regular\",\n children\n }\n);\n\n// src/components/toolCalls/ToolCallBase/ToolCallIcon.tsx\nimport {\n CircleIcon,\n CircleBackslashIcon,\n CheckCircledIcon\n} from \"@radix-ui/react-icons\";\nimport { jsx as jsx5 } from \"react/jsx-runtime\";\nvar ToolCallIcon = ({\n runStep\n}) => {\n if (runStep.completed_at) {\n return /* @__PURE__ */ jsx5(CheckCircledIcon, {});\n } else if (runStep.cancelled_at || runStep.failed_at || runStep.status === \"expired\") {\n return /* @__PURE__ */ jsx5(CircleBackslashIcon, {});\n } else {\n return /* @__PURE__ */ jsx5(CircleIcon, {});\n }\n};\n\n// src/components/functions/FunctionBase/Content/index.tsx\nimport { useMemo } from \"react\";\nimport { Code, Box } from \"@radix-ui/themes\";\n\n// src/components/functions/FunctionBase/Content/lib/formattedJsonOrRaw.ts\nvar formattedJsonOrRaw = ({\n value\n}) => {\n if (!value) {\n return null;\n }\n try {\n return JSON.stringify(JSON.parse(value), null, 2);\n } catch (error) {\n if (typeof value === \"string\") {\n return value;\n } else {\n return JSON.stringify(value, null, 2);\n }\n }\n};\n\n// src/components/functions/FunctionBase/Content/index.tsx\nimport { jsx as jsx6, jsxs } from \"react/jsx-runtime\";\nvar Content = ({\n fn\n}) => {\n const args = useMemo(() => formattedJsonOrRaw({\n value: fn.arguments\n }), [fn]);\n const output = useMemo(() => formattedJsonOrRaw({\n value: fn.output\n }), [fn]);\n return /* @__PURE__ */ jsxs(\n Code,\n {\n variant: \"ghost\",\n color: \"gold\",\n style: {\n whiteSpace: \"pre\",\n wordBreak: \"break-word\"\n },\n children: [\n args && /* @__PURE__ */ jsx6(Box, { children: args }),\n output && /* @__PURE__ */ jsx6(Box, { children: output })\n ]\n }\n );\n};\n\n// src/components/functions/FunctionBase/index.tsx\nimport { jsx as jsx7, jsxs as jsxs2 } from \"react/jsx-runtime\";\nvar FunctionBase = ({\n fn,\n runStep,\n title: title2\n}) => /* @__PURE__ */ jsxs2(Popover.Root, { children: [\n /* @__PURE__ */ jsx7(Popover.Trigger, { children: /* @__PURE__ */ jsx7(Flex2, { children: /* @__PURE__ */ jsxs2(ToolCallBase, { children: [\n /* @__PURE__ */ jsx7(ToolCallIcon, { runStep }),\n /* @__PURE__ */ jsx7(ToolCallTitle, { children: title2 })\n ] }) }) }),\n /* @__PURE__ */ jsx7(\n Popover.Content,\n {\n style: {\n maxHeight: \"200px\"\n },\n children: /* @__PURE__ */ jsx7(Content, { fn })\n }\n )\n] });\n\n// src/components/runSteps/RunStep/ToolCalls/ToolCall/Fn/DefaultFunction/lib/title.ts\nvar title = ({\n fn,\n runStep\n}) => {\n if (runStep.completed_at) {\n return `Finished ${fn.name}`;\n } else if (runStep.cancelled_at) {\n return `Cancelled ${fn.name}`;\n } else {\n return `Calling ${fn.name}`;\n }\n};\n\n// src/components/runSteps/RunStep/ToolCalls/ToolCall/Fn/DefaultFunction/index.tsx\nimport { jsx as jsx8 } from \"react/jsx-runtime\";\nvar DefaultFunction = ({\n fn,\n runStep\n}) => /* @__PURE__ */ jsx8(\n FunctionBase,\n {\n fn,\n runStep,\n title: title({ runStep, fn })\n }\n);\n\n// src/components/runSteps/RunStep/ToolCalls/ToolCall/Fn/index.tsx\nimport { jsx as jsx9 } from \"react/jsx-runtime\";\nvar Fn = ({\n fn,\n runStep\n}) => {\n const functionComponentsContext = useContext2(FunctionComponentsContext);\n const Component = functionComponentsContext[fn.name] || DefaultFunction;\n return (\n // @ts-ignore-next-line\n /* @__PURE__ */ jsx9(\n Component,\n {\n fn,\n runStep\n }\n )\n );\n};\n\n// src/components/runSteps/RunStep/ToolCalls/ToolCall/CodeInterpreter/index.tsx\nimport {\n Popover as Popover2,\n Flex as Flex3\n} from \"@radix-ui/themes\";\n\n// src/components/runSteps/RunStep/ToolCalls/ToolCall/CodeInterpreter/Content.tsx\nimport { Code as Code2, Box as Box2 } from \"@radix-ui/themes\";\nimport { jsx as jsx10, jsxs as jsxs3 } from \"react/jsx-runtime\";\nvar Content2 = ({\n codeInterpreter\n}) => {\n if (!codeInterpreter.input) {\n return null;\n }\n return /* @__PURE__ */ jsxs3(\n Code2,\n {\n variant: \"ghost\",\n color: \"gold\",\n style: {\n whiteSpace: \"pre\",\n wordBreak: \"break-word\"\n },\n children: [\n /* @__PURE__ */ jsx10(Box2, { children: codeInterpreter.input }),\n /* @__PURE__ */ jsx10(Box2, { children: JSON.stringify(codeInterpreter.outputs) })\n ]\n }\n );\n};\n\n// src/components/runSteps/RunStep/ToolCalls/ToolCall/CodeInterpreter/index.tsx\nimport { jsx as jsx11, jsxs as jsxs4 } from \"react/jsx-runtime\";\nvar CodeInterpreter = ({\n codeInterpreter,\n runStep\n}) => /* @__PURE__ */ jsxs4(Popover2.Root, { children: [\n /* @__PURE__ */ jsx11(Popover2.Trigger, { children: /* @__PURE__ */ jsx11(Flex3, { children: /* @__PURE__ */ jsxs4(ToolCallBase, { children: [\n /* @__PURE__ */ jsx11(ToolCallIcon, { runStep }),\n /* @__PURE__ */ jsx11(ToolCallTitle, { children: \"Using code interpreter\" })\n ] }) }) }),\n /* @__PURE__ */ jsx11(\n Popover2.Content,\n {\n maxHeight: \"200px\",\n children: /* @__PURE__ */ jsx11(\n Content2,\n {\n codeInterpreter\n }\n )\n }\n )\n] });\n\n// src/components/runSteps/RunStep/ToolCalls/ToolCall/FileSearch.tsx\nimport { jsx as jsx12, jsxs as jsxs5 } from \"react/jsx-runtime\";\nvar FileSearch = ({\n runStep,\n toolCall\n}) => /* @__PURE__ */ jsxs5(ToolCallBase, { children: [\n /* @__PURE__ */ jsx12(ToolCallIcon, { runStep }),\n /* @__PURE__ */ jsx12(ToolCallTitle, { children: \"Searching files\" })\n] });\n\n// src/components/runSteps/RunStep/ToolCalls/ToolCall/Fallback.tsx\nimport { jsx as jsx13, jsxs as jsxs6 } from \"react/jsx-runtime\";\nvar Fallback = ({\n runStep,\n toolCall\n}) => /* @__PURE__ */ jsxs6(ToolCallBase, { children: [\n /* @__PURE__ */ jsx13(ToolCallIcon, { runStep }),\n /* @__PURE__ */ jsxs6(ToolCallTitle, { children: [\n \"Using tool: \",\n toolCall.type\n ] })\n] });\n\n// src/components/runSteps/RunStep/ToolCalls/ToolCall/index.tsx\nimport { jsx as jsx14 } from \"react/jsx-runtime\";\nvar ToolCall = ({\n toolCall,\n runStep\n}) => {\n if (toolCall.type === \"function\") {\n return /* @__PURE__ */ jsx14(\n Fn,\n {\n fn: toolCall.function,\n runStep\n }\n );\n }\n if (toolCall.type === \"code_interpreter\") {\n return /* @__PURE__ */ jsx14(\n CodeInterpreter,\n {\n codeInterpreter: toolCall.code_interpreter,\n runStep\n }\n );\n }\n if (toolCall.type === \"file_search\") {\n return /* @__PURE__ */ jsx14(\n FileSearch,\n {\n toolCall,\n runStep\n }\n );\n }\n return /* @__PURE__ */ jsx14(\n Fallback,\n {\n toolCall,\n runStep\n }\n );\n};\n\n// src/components/runSteps/RunStep/ToolCalls/Starting/index.tsx\nimport {\n Popover as Popover3,\n Text as Text2\n} from \"@radix-ui/themes\";\nimport {\n CircleIcon as CircleIcon2\n} from \"@radix-ui/react-icons\";\nimport { jsx as jsx15, jsxs as jsxs7 } from \"react/jsx-runtime\";\nvar Starting = () => /* @__PURE__ */ jsxs7(Popover3.Root, { children: [\n /* @__PURE__ */ jsxs7(ToolCallBase, { children: [\n /* @__PURE__ */ jsx15(CircleIcon2, {}),\n /* @__PURE__ */ jsx15(ToolCallTitle, { children: \"Starting actions\" })\n ] }),\n /* @__PURE__ */ jsx15(\n Popover3.Content,\n {\n style: {\n maxHeight: \"500px\"\n },\n children: /* @__PURE__ */ jsx15(Text2, { children: \"Getting ready to connect to domain API\" })\n }\n )\n] });\n\n// src/components/runSteps/RunStep/ToolCalls/index.tsx\nimport { jsx as jsx16, jsxs as jsxs8 } from \"react/jsx-runtime\";\nvar Root = ({\n children,\n className,\n style\n}) => /* @__PURE__ */ jsx16(\n Flex4,\n {\n direction: \"column\",\n className,\n style,\n children\n }\n);\nvar ToolCalls = ({\n stepDetails,\n runStep,\n className,\n style\n}) => /* @__PURE__ */ jsxs8(\n Root,\n {\n className,\n style,\n children: [\n !stepDetails.tool_calls.length && /* @__PURE__ */ jsx16(Starting, {}),\n stepDetails.tool_calls.map((toolCall) => /* @__PURE__ */ jsx16(\n ToolCall,\n {\n toolCall,\n runStep\n },\n toolCall.id\n ))\n ]\n }\n);\nToolCalls.Root = Root;\nToolCalls.Starting = Starting;\nToolCalls.ToolCall = ToolCall;\n\n// src/components/runSteps/RunStep/index.tsx\nimport { jsx as jsx17 } from \"react/jsx-runtime\";\nvar RunStep = ({\n runStep,\n className,\n style\n}) => {\n if (runStep.step_details.type === \"tool_calls\") {\n return /* @__PURE__ */ jsx17(\n ToolCalls,\n {\n className,\n style,\n stepDetails: runStep.step_details,\n runStep\n }\n );\n }\n return null;\n};\nRunStep.ToolCalls = ToolCalls;\n\n// src/contexts/components/ComponentsContext/index.tsx\nvar ComponentsContext = createContext3({\n components: {\n RunStep\n }\n});\n\n// src/components/runSteps/RunSteps/index.tsx\nimport { jsx as jsx18 } from \"react/jsx-runtime\";\nvar RunSteps = ({\n runSteps\n}) => {\n const componentsContext = useContext3(ComponentsContext);\n const Component = componentsContext.components.RunStep;\n return /* @__PURE__ */ jsx18(\n Flex5,\n {\n direction: \"column-reverse\",\n children: runSteps.map((runStep) => /* @__PURE__ */ jsx18(\n Component,\n {\n runStep\n },\n runStep.id\n ))\n }\n );\n};\n\n// src/hooks/messages/useIsMutatingMessage/index.ts\nimport { useMemo as useMemo2 } from \"react\";\nimport { useIsMutating } from \"@tanstack/react-query\";\nvar useIsMutatingMessage = () => {\n const threadContext = useSuperinterfaceContext();\n const mutatingMessagesCount = useIsMutating({\n mutationKey: [\"createMessage\", threadContext.variables]\n });\n const isMutatingMessage = useMemo2(() => mutatingMessagesCount > 0, [mutatingMessagesCount]);\n return isMutatingMessage;\n};\n\n// src/contexts/messages/MessageContext/index.ts\nimport { createContext as createContext4 } from \"react\";\nvar MessageContext = createContext4({\n message: null\n});\n\n// src/components/threads/Thread/Message/Provider.tsx\nvar Provider = MessageContext.Provider;\n\n// src/components/threads/Thread/Message/Attachments/index.tsx\nimport {\n Flex as Flex6,\n Badge\n} from \"@radix-ui/themes\";\nimport {\n FileIcon\n} from \"@radix-ui/react-icons\";\nimport { jsx as jsx19, jsxs as jsxs9 } from \"react/jsx-runtime\";\nvar Attachments = ({\n message\n}) => {\n if (!message.attachments?.length) return null;\n return /* @__PURE__ */ jsx19(\n Flex6,\n {\n align: \"start\",\n pb: \"1\",\n children: /* @__PURE__ */ jsxs9(\n Badge,\n {\n color: \"gray\",\n variant: \"surface\",\n children: [\n /* @__PURE__ */ jsx19(FileIcon, {}),\n message.attachments.length,\n \" file\",\n message.attachments.length > 1 ? \"s\" : \"\"\n ]\n }\n )\n }\n );\n};\n\n// src/components/threads/Thread/Message/ContentPart/TextContent.tsx\nimport { useState as useState2, useEffect as useEffect2, useMemo as useMemo8 } from \"react\";\nimport { compile } from \"@mdx-js/mdx\";\nimport { MDXProvider, useMDXComponents } from \"@mdx-js/react\";\nimport * as runtime from \"react/jsx-runtime\";\n\n// src/lib/recma/recmaFallbackComponentPlugin.ts\nimport { visit, CONTINUE, SKIP } from \"estree-util-visit\";\nvar recmaFallbackComponentPlugin = () => {\n return (tree) => {\n visit(tree, (node) => {\n if (node.type === \"VariableDeclaration\" && node.kind === \"const\") {\n const varDecl = node;\n for (const declarator of varDecl.declarations) {\n if (declarator.id.type === \"ObjectPattern\" && declarator.init?.type === \"Identifier\" && declarator.init.name === \"_components\" || declarator.id.type === \"ObjectPattern\" && declarator.init?.type === \"ObjectExpression\") {\n varDecl.kind = \"let\";\n return SKIP;\n }\n }\n }\n return CONTINUE;\n });\n visit(tree, (node) => {\n if (node.type === \"FunctionDeclaration\" && node.id?.type === \"Identifier\" && node.id.name === \"_missingMdxReference\") {\n const funcNode = node;\n funcNode.body = {\n type: \"BlockStatement\",\n body: [\n {\n type: \"IfStatement\",\n test: { type: \"Identifier\", name: \"component\" },\n consequent: {\n type: \"ReturnStatement\",\n argument: {\n type: \"FunctionExpression\",\n id: null,\n params: [{ type: \"Identifier\", name: \"props\" }],\n body: {\n type: \"BlockStatement\",\n body: [\n {\n type: \"ReturnStatement\",\n argument: {\n type: \"BinaryExpression\",\n operator: \"+\",\n left: {\n type: \"BinaryExpression\",\n operator: \"+\",\n left: { type: \"Literal\", value: \"<\" },\n right: { type: \"Identifier\", name: \"id\" }\n },\n right: {\n type: \"BinaryExpression\",\n operator: \"+\",\n left: { type: \"Literal\", value: \"></\" },\n right: {\n type: \"BinaryExpression\",\n operator: \"+\",\n left: { type: \"Identifier\", name: \"id\" },\n right: { type: \"Literal\", value: \">\" }\n }\n }\n }\n }\n ]\n },\n generator: false,\n async: false\n }\n },\n alternate: null\n }\n ]\n };\n return SKIP;\n }\n return CONTINUE;\n });\n visit(tree, (node) => {\n if (node.type === \"IfStatement\") {\n const ifNode = node;\n if (ifNode.test.type === \"UnaryExpression\" && ifNode.test.operator === \"!\" && ifNode.test.argument.type === \"Identifier\") {\n const componentName = ifNode.test.argument.name;\n if (ifNode.consequent.type === \"ExpressionStatement\" && ifNode.consequent.expression.type === \"CallExpression\" && ifNode.consequent.expression.callee.type === \"Identifier\" && ifNode.consequent.expression.callee.name === \"_missingMdxReference\") {\n const assignmentExpr = {\n type: \"AssignmentExpression\",\n operator: \"=\",\n left: { type: \"Identifier\", name: componentName },\n right: ifNode.consequent.expression\n };\n ifNode.consequent = {\n type: \"ExpressionStatement\",\n expression: assignmentExpr\n };\n return SKIP;\n }\n }\n }\n return CONTINUE;\n });\n };\n};\n\n// src/hooks/markdown/useMarkdownContext/index.ts\nimport { useContext as useContext5 } from \"react\";\n\n// src/contexts/markdown/MarkdownContext/index.ts\nimport { createContext as createContext6 } from \"react\";\n\n// src/contexts/markdown/MarkdownContext/lib/components/index.tsx\nimport { Heading, Table } from \"@radix-ui/themes\";\n\n// src/contexts/markdown/MarkdownContext/lib/components/Paragraph.tsx\nimport {\n Box as Box3,\n Text as Text3\n} from \"@radix-ui/themes\";\nimport { jsx as jsx20 } from \"react/jsx-runtime\";\nvar Paragraph = ({ children }) => /* @__PURE__ */ jsx20(\n Box3,\n {\n pb: \"3\",\n children: /* @__PURE__ */ jsx20(\n Text3,\n {\n size: \"3\",\n style: {\n whiteSpace: \"pre-line\",\n wordBreak: \"break-word\"\n },\n children\n }\n )\n }\n);\n\n// src/contexts/markdown/MarkdownContext/lib/components/Link.tsx\nimport {\n Link as RadixLink\n} from \"@radix-ui/themes\";\nimport { jsx as jsx21 } from \"react/jsx-runtime\";\nvar Link = ({\n children,\n href,\n download,\n target = \"_blank\"\n}) => /* @__PURE__ */ jsx21(\n RadixLink,\n {\n href,\n target,\n download,\n children\n }\n);\n\n// src/contexts/markdown/MarkdownContext/lib/components/UnorderedList.tsx\nimport {\n Box as Box4\n} from \"@radix-ui/themes\";\nimport { jsx as jsx22 } from \"react/jsx-runtime\";\nvar UnorderedList = ({ children }) => /* @__PURE__ */ jsx22(\n Box4,\n {\n pb: \"3\",\n asChild: true,\n children: /* @__PURE__ */ jsx22(\n \"ul\",\n {\n style: {\n listStylePosition: \"inside\"\n },\n children\n }\n )\n }\n);\n\n// src/contexts/markdown/MarkdownContext/lib/components/OrderedList.tsx\nimport {\n Box as Box5\n} from \"@radix-ui/themes\";\nimport { jsx as jsx23 } from \"react/jsx-runtime\";\nvar OrderedList = ({ children }) => /* @__PURE__ */ jsx23(\n Box5,\n {\n pb: \"3\",\n asChild: true,\n children: /* @__PURE__ */ jsx23(\n \"ol\",\n {\n style: {\n listStylePosition: \"inside\"\n },\n children\n }\n )\n }\n);\n\n// src/contexts/markdown/MarkdownContext/lib/components/ListItem.tsx\nimport {\n Box as Box6\n} from \"@radix-ui/themes\";\nimport { jsx as jsx24 } from \"react/jsx-runtime\";\nvar ListItem = ({ children }) => /* @__PURE__ */ jsx24(\n Box6,\n {\n pb: \"1\",\n children: /* @__PURE__ */ jsx24(\"li\", { children })\n }\n);\n\n// src/contexts/markdown/MarkdownContext/lib/components/Strong.tsx\nimport {\n Strong as RadixStrong\n} from \"@radix-ui/themes\";\nimport { jsx as jsx25 } from \"react/jsx-runtime\";\nvar Strong = ({ children }) => /* @__PURE__ */ jsx25(RadixStrong, { children });\n\n// src/contexts/markdown/MarkdownContext/lib/components/Pre.tsx\nimport {\n Box as Box7\n} from \"@radix-ui/themes\";\nimport { jsx as jsx26 } from \"react/jsx-runtime\";\nvar Pre = ({ children }) => /* @__PURE__ */ jsx26(\n Box7,\n {\n style: {\n whiteSpace: \"pre-wrap\",\n wordBreak: \"break-word\"\n },\n children\n }\n);\n\n// src/contexts/markdown/MarkdownContext/lib/components/Code.tsx\nimport {\n Code as RadixCode\n} from \"@radix-ui/themes\";\n\n// src/components/suggestions/Suggestions/index.tsx\nimport { useMemo as useMemo6 } from \"react\";\n\n// src/hooks/messages/useLatestMessage/index.ts\nimport { useMemo as useMemo4 } from \"react\";\n\n// src/hooks/messages/useMessages/index.tsx\nimport { useMemo as useMemo3 } from \"react\";\nimport {\n useInfiniteQuery,\n useQueryClient as useQueryClient2\n} from \"@tanstack/react-query\";\n\n// src/lib/threads/queryOptions/index.ts\nimport {\n infiniteQueryOptions\n} from \"@tanstack/react-query\";\n\n// src/lib/threads/queryOptions/variableParams.ts\nvar variableParams = ({\n variables,\n superinterfaceContext\n}) => {\n if (variables.threadId) return variables;\n if (!variables.assistantId) return variables;\n if (!superinterfaceContext.threadIdStorageOptions?.get) return variables;\n const threadId = superinterfaceContext.threadIdStorageOptions.get({ assistantId: variables.assistantId });\n if (!threadId) return variables;\n return {\n ...variables,\n threadId\n };\n};\n\n// src/lib/threads/queryOptions/index.ts\nvar queryOptions = ({\n queryKeyBase,\n path: path2,\n queryClient,\n threadContext,\n superinterfaceContext\n}) => {\n const queryKey = [...queryKeyBase, threadContext.variables];\n return infiniteQueryOptions({\n // @ts-ignore-next-line\n queryFn: async ({\n pageParam,\n queryKey: queryKey2\n }) => {\n const [_key, variables] = queryKey2;\n const params = new URLSearchParams({\n ...pageParam ? { pageParam } : {},\n ...variableParams({ variables, superinterfaceContext })\n });\n return fetch(`${superinterfaceContext.baseUrl}${path2}?${params}`).then(async (response) => {\n if (response.status !== 200) {\n try {\n const errorResponse = await response.json();\n throw new Error(errorResponse.error);\n } catch (error) {\n throw new Error(\"Failed to fetch\");\n }\n }\n return response.json();\n });\n },\n initialPageParam: void 0,\n getNextPageParam: (lastPage) => {\n if (!lastPage.hasNextPage) return null;\n return lastPage.lastId;\n },\n limit: 10,\n ...threadContext.defaultOptions.queries,\n ...queryClient.getQueryDefaults(queryKey),\n queryKey\n });\n};\n\n// src/lib/messages/messagesQueryOptions.ts\nvar messagesQueryOptions = ({\n queryClient,\n threadContext,\n superinterfaceContext\n}) => queryOptions({\n queryKeyBase: [\"messages\"],\n path: \"/messages\",\n queryClient,\n threadContext,\n superinterfaceContext\n});\n\n// src/hooks/messages/useMessages/index.tsx\nvar messages = ({\n props\n}) => {\n if (!props.data) return [];\n return props.data.pages.reduce((acc, page) => acc.concat(page.data), []);\n};\nvar useMessages = () => {\n const queryClient = useQueryClient2();\n const threadContext = useSuperinterfaceContext();\n const superinterfaceContext = useSuperinterfaceContext();\n const props = useInfiniteQuery(messagesQueryOptions({\n queryClient,\n threadContext,\n superinterfaceContext\n }));\n return useMemo3(() => ({\n ...props,\n // @ts-ignore-next-line\n messages: messages({ props })\n }), [props]);\n};\n\n// src/hooks/messages/useLatestMessage/index.ts\nvar useLatestMessage = () => {\n const props = useMessages();\n return useMemo4(() => ({\n ...props,\n latestMessage: props.messages[0] || null\n }), [props]);\n};\n\n// src/components/suggestions/Suggestions/Content.tsx\nimport { useMemo as useMemo5 } from \"react\";\nimport { isEmpty } from \"radash\";\nimport { onlyText } from \"react-children-utilities\";\nimport {\n Flex as Flex7\n} from \"@radix-ui/themes\";\n\n// src/components/suggestions/Suggestions/Item.tsx\nimport {\n ArrowUpIcon\n} from \"@radix-ui/react-icons\";\nimport {\n Text as Text4,\n Button as Button2,\n Spinner\n} from \"@radix-ui/themes\";\n\n// src/hooks/messages/useCreateMessage/index.ts\nimport { partob } from \"radash\";\nimport {\n useMutation,\n useQueryClient as useQueryClient3\n} from \"@tanstack/react-query\";\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/onMutate/index.ts\nimport { omit } from \"radash\";\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/onMutate/data.ts\nimport dayjs from \"dayjs\";\n\n// src/lib/optimistic/optimisticId.ts\nimport { uid } from \"radash\";\nvar optimisticId = () => `-${uid(24)}`;\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/onMutate/data.ts\nvar data = ({\n newMessage\n}) => (prevData) => {\n const message = {\n id: optimisticId(),\n role: \"user\",\n created_at: dayjs().unix(),\n object: \"thread.message\",\n content: [\n {\n type: \"text\",\n text: {\n annotations: [],\n value: newMessage.content\n }\n }\n ],\n run_id: null,\n assistant_id: null,\n thread_id: null,\n attachments: newMessage.attachments ?? [],\n metadata: {},\n runSteps: []\n };\n if (!prevData) {\n return {\n pageParams: [],\n pages: [\n {\n data: [message],\n hasNextPage: false,\n lastId: message.id\n }\n ]\n };\n }\n const [latestPage, ...pagesRest] = prevData.pages;\n return {\n ...prevData,\n pages: [\n {\n ...latestPage,\n data: [\n message,\n ...latestPage.data\n ]\n },\n ...pagesRest\n ]\n };\n};\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/onMutate/index.ts\nvar onMutate = ({\n queryClient\n}) => async (newMessage) => {\n const queryKey = [\"messages\", omit(newMessage, [\"content\", \"attachments\"])];\n await queryClient.cancelQueries({ queryKey });\n const prevMessages = queryClient.getQueryData(queryKey);\n queryClient.setQueryData(\n queryKey,\n data({ newMessage })\n );\n return {\n prevMessages,\n newMessage\n };\n};\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/index.ts\nimport { JSONParser } from \"@streamparser/json-whatwg\";\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadCreated.ts\nvar threadCreated = ({\n value,\n superinterfaceContext\n}) => {\n if (!superinterfaceContext.threadIdStorageOptions?.set) return;\n if (!value.data.metadata?.assistantId) return;\n if (!value.data.metadata?.threadId) return;\n superinterfaceContext.threadIdStorageOptions.set({\n // @ts-ignore-next-line\n assistantId: value.data.metadata.assistantId,\n // @ts-ignore-next-line\n threadId: value.data.metadata.threadId\n });\n};\n\n// src/lib/optimistic/isOptimistic.ts\nimport _3 from \"lodash\";\nvar isOptimistic = ({\n id\n}) => _3.startsWith(id, \"-\");\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/extendMessage.ts\nimport { last } from \"radash\";\nvar extendMessage = ({\n message,\n messages: messages2\n}) => {\n const prevRunMessages = messages2.filter((m) => m.run_id === message.run_id);\n const prevOptimitisticRunMessages = prevRunMessages.filter((m) => isOptimistic({ id: m.id }));\n const runSteps = last(prevOptimitisticRunMessages)?.runSteps ?? last(prevRunMessages)?.runSteps ?? [];\n return {\n ...message,\n runSteps\n };\n};\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadMessageCreated.ts\nvar appendMessage = ({\n message,\n messages: messages2\n}) => {\n const prevMessages = messages2.filter((m) => m.run_id != message.run_id || !isOptimistic({ id: m.id }));\n return [\n extendMessage({ message, messages: messages2 }),\n ...prevMessages\n ];\n};\nvar threadMessageCreated = ({\n value,\n messagesQueryKey,\n queryClient\n}) => queryClient.setQueryData(\n messagesQueryKey,\n (prevData) => {\n if (!prevData) {\n return {\n pageParams: [],\n pages: [\n {\n data: appendMessage({ message: value.data, messages: [] }),\n hasNextPage: false,\n lastId: value.data.id\n }\n ]\n };\n }\n const [latestPage, ...pagesRest] = prevData.pages;\n return {\n ...prevData,\n pages: [\n {\n ...latestPage,\n data: appendMessage({ message: value.data, messages: latestPage.data })\n },\n ...pagesRest\n ]\n };\n }\n);\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadMessageDelta.ts\nimport _4 from \"lodash\";\nimport { omit as omit2 } from \"radash\";\nvar updatedContentPart = ({\n prevContentPart,\n delta\n}) => {\n if (!prevContentPart) {\n return omit2(delta, [\"index\"]);\n }\n if (delta.type === \"text\" && delta.text && prevContentPart.type == \"text\" && prevContentPart.text) {\n return {\n ...prevContentPart,\n text: {\n ...prevContentPart.text,\n value: `${prevContentPart.text.value}${delta.text.value}`,\n annotations: [\n ...prevContentPart.text.annotations ?? [],\n ...delta.text.annotations ?? []\n ]\n }\n };\n }\n return prevContentPart;\n};\nvar updatedContent = ({\n content,\n value\n}) => {\n if (!value.data.delta.content) return content;\n const result = _4.cloneDeep(content);\n value.data.delta.content.forEach((delta) => {\n result[delta.index] = updatedContentPart({\n // @ts-ignore-next-line\n prevContentPart: result[delta.index],\n delta\n });\n });\n return result;\n};\nvar threadMessageDelta = ({\n value,\n queryClient,\n messagesQueryKey\n}) => queryClient.setQueryData(\n messagesQueryKey,\n (prevData) => {\n if (!prevData) {\n return {\n pageParams: [],\n pages: [\n {\n data: [],\n hasNextPage: false,\n lastId: null\n }\n ]\n };\n }\n const [latestPage, ...pagesRest] = prevData.pages;\n const [latestMessage, ...messagesRest] = latestPage.data;\n return {\n ...prevData,\n pages: [\n {\n ...latestPage,\n data: [\n {\n ...latestMessage,\n content: updatedContent({ content: latestMessage.content, value })\n },\n ...messagesRest\n ]\n },\n ...pagesRest\n ]\n };\n }\n);\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadMessageCompleted.ts\nimport { replace } from \"radash\";\nvar threadMessageCompleted = ({\n value,\n queryClient,\n messagesQueryKey\n}) => queryClient.setQueryData(\n messagesQueryKey,\n (prevData) => {\n if (!prevData) {\n return {\n pageParams: [],\n pages: [\n {\n data: [],\n hasNextPage: false,\n lastId: null\n }\n ]\n };\n }\n const [latestPage, ...pagesRest] = prevData.pages;\n return {\n ...prevData,\n pages: [\n {\n ...latestPage,\n data: replace(latestPage.data, extendMessage({ message: value.data, messages: latestPage.data }), (m) => m.id === value.data.id)\n },\n ...pagesRest\n ]\n };\n }\n);\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadRunCreated.ts\nvar threadRunCreated = ({\n value,\n queryClient,\n messagesQueryKey\n}) => queryClient.setQueryData(\n messagesQueryKey,\n (prevData) => {\n if (!prevData) return prevData;\n const [latestPage, ...pagesRest] = prevData.pages;\n return {\n ...prevData,\n pages: [\n {\n ...latestPage,\n data: [\n {\n id: optimisticId(),\n assistant_id: value.data.assistant_id,\n content: [],\n created_at: value.data.created_at,\n attachments: [],\n metadata: {},\n status: \"in_progress\",\n role: \"assistant\",\n runSteps: [],\n run_id: value.data.id,\n thread_id: value.data.thread_id\n },\n ...latestPage.data\n ]\n },\n ...pagesRest\n ]\n };\n }\n);\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadRunFailed.ts\nvar threadRunFailed = ({\n value,\n queryClient,\n messagesQueryKey\n}) => {\n throw new Error(\"Failed to send your message, try again. If you are the owner, check the logs.\");\n};\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadRunStepCreated.ts\nvar threadRunStepCreated = ({\n value,\n queryClient,\n messagesQueryKey\n}) => queryClient.setQueryData(\n messagesQueryKey,\n (prevData) => {\n if (!prevData) return prevData;\n const [latestPage, ...pagesRest] = prevData.pages;\n return {\n ...prevData,\n pages: [\n {\n ...latestPage,\n data: latestPage.data.map((m) => {\n if (m.run_id === value.data.run_id) {\n return {\n ...m,\n runSteps: [\n value.data,\n ...m.runSteps\n ]\n };\n }\n return m;\n })\n },\n ...pagesRest\n ]\n };\n }\n);\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadRunStepDelta.ts\nimport _5 from \"lodash\";\nimport { omit as omit3 } from \"radash\";\nvar updatedToolCall = ({\n toolCall,\n delta\n}) => {\n if (!toolCall) {\n return omit3(delta, [\"index\"]);\n }\n if (delta.type === \"function\" && delta.function && toolCall.type === \"function\" && toolCall.function) {\n const result = _5.cloneDeep(toolCall);\n for (const [key2, value] of Object.entries(delta.function)) {\n result.function[key2] = `${result.function[key2] ?? \"\"}${value}`;\n }\n return result;\n }\n return toolCall;\n};\nvar updatedRunStep = ({\n runStep,\n value\n}) => {\n if (!runStep?.step_details?.tool_calls) return runStep;\n if (value.data.delta?.step_details?.type === \"tool_calls\") {\n if (!value.data.delta.step_details.tool_calls) return runStep;\n const newToolCalls = _5.cloneDeep(runStep.step_details.tool_calls);\n value.data.delta.step_details.tool_calls.forEach((delta) => newToolCalls[delta.index] = updatedToolCall({\n toolCall: newToolCalls[delta.index],\n delta\n }));\n return {\n ...runStep,\n step_details: {\n ...runStep.step_details,\n ...value.data.delta.step_details,\n tool_calls: newToolCalls\n }\n };\n } else {\n return runStep;\n }\n};\nvar threadRunStepDelta = ({\n value,\n queryClient,\n messagesQueryKey\n}) => queryClient.setQueryData(\n messagesQueryKey,\n (prevData) => {\n if (!prevData) return prevData;\n const [latestPage, ...pagesRest] = prevData.pages;\n return {\n ...prevData,\n pages: [\n {\n ...latestPage,\n data: latestPage.data.map((m) => {\n if (m.run_id === value.data.run_id) {\n return {\n ...m,\n runSteps: m.runSteps.map((rs) => {\n if (rs.id === value.data.id) {\n return updatedRunStep({ runStep: rs, value });\n }\n return rs;\n })\n };\n }\n return m;\n })\n },\n ...pagesRest\n ]\n };\n }\n);\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadRunStepCompleted.ts\nimport { replace as replace2 } from \"radash\";\nvar threadRunStepCompleted = ({\n value,\n queryClient,\n messagesQueryKey\n}) => queryClient.setQueryData(\n messagesQueryKey,\n (prevData) => {\n if (!prevData) return prevData;\n const [latestPage, ...pagesRest] = prevData.pages;\n return {\n ...prevData,\n pages: [\n {\n ...latestPage,\n data: latestPage.data.map((m) => {\n if (m.run_id === value.data.run_id) {\n return {\n ...m,\n runSteps: replace2(m.runSteps, value.data, (rs) => rs.id === value.data.id)\n };\n }\n return m;\n })\n },\n ...pagesRest\n ]\n };\n }\n);\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadRunRequiresAction.ts\nimport { map } from \"radash\";\nvar threadRunRequiresAction = async ({\n value,\n queryClient,\n messagesQueryKey,\n superinterfaceContext\n}) => {\n if (value.data.required_action.type === \"submit_client_tool_outputs\") {\n const toolCalls = value.data.required_action.submit_client_tool_outputs.tool_calls;\n const toolOutputs = await map(toolCalls, async (toolCall) => {\n if (toolCall.type !== \"function\") {\n return {\n toolCallId: toolCall.id,\n output: `Error: client tool type ${toolCall.type} is not supported.`\n };\n }\n const fn = window[toolCall.function.name];\n if (!fn) {\n return {\n toolCallId: toolCall.id,\n output: `Error: client function ${toolCall.function.name} is not defined.`\n };\n }\n const args = toolCall.function.arguments;\n const parsedArgs = JSON.parse(args);\n let output;\n try {\n output = await fn(parsedArgs);\n } catch (error) {\n output = `Error: ${error.message}`;\n }\n return {\n toolCallId: toolCall.id,\n output\n };\n });\n return fetch(`${superinterfaceContext.baseUrl}/threads/runs/submit-client-tool-outputs`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n toolOutputs,\n ...superinterfaceContext.variables\n })\n });\n }\n};\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/index.ts\nvar handlers = {\n \"thread.created\": threadCreated,\n \"thread.message.created\": threadMessageCreated,\n \"thread.message.delta\": threadMessageDelta,\n \"thread.message.completed\": threadMessageCompleted,\n \"thread.run.created\": threadRunCreated,\n \"thread.run.failed\": threadRunFailed,\n \"thread.run.step.created\": threadRunStepCreated,\n \"thread.run.step.delta\": threadRunStepDelta,\n \"thread.run.step.completed\": threadRunStepCompleted,\n \"thread.run.requires_action\": threadRunRequiresAction\n};\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/index.ts\nvar handleResponse = ({\n value,\n messagesQueryKey,\n queryClient,\n superinterfaceContext\n}) => {\n const handler = handlers[value.value.event];\n if (!handler) {\n return console.log(\"Missing handler\", { value });\n }\n return handler({\n value: value.value,\n queryClient,\n messagesQueryKey,\n superinterfaceContext\n });\n};\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/body.ts\nvar body = ({\n variables,\n superinterfaceContext\n}) => {\n if (variables.threadId) return variables;\n if (!variables.assistantId) return variables;\n if (!superinterfaceContext.threadIdStorageOptions?.get) return variables;\n const threadId = superinterfaceContext.threadIdStorageOptions.get({ assistantId: variables.assistantId });\n if (!threadId) return variables;\n return {\n ...variables,\n threadId\n };\n};\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/index.ts\nvar mutationFn = ({\n superinterfaceContext,\n queryClient,\n threadContext\n}) => async (variables) => {\n const abortController = new AbortController();\n superinterfaceContext.createMessageAbortControllerRef.current = abortController;\n const response = await fetch(`${superinterfaceContext.baseUrl}/messages`, {\n method: \"POST\",\n body: JSON.stringify(body({\n variables,\n superinterfaceContext\n })),\n signal: abortController.signal\n });\n if (response.status !== 200) {\n try {\n const errorResponse = await response.json();\n throw new Error(errorResponse.error);\n } catch (error) {\n throw new Error(\"Failed to send your message, try again. If you are the owner, check the logs.\");\n }\n }\n if (response.body == null) {\n throw new Error(\"The response body is empty.\");\n }\n const parser = new JSONParser({ stringBufferSize: void 0, paths: [\"$\"], separator: \"\" });\n const reader = response.body.pipeThrough(parser).getReader();\n const messagesQueryKey = [\"messages\", threadContext.variables];\n while (true) {\n const { done, value } = await reader.read();\n if (done) break;\n handleResponse({\n value,\n messagesQueryKey,\n queryClient,\n superinterfaceContext\n });\n }\n};\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/index.ts\nvar mutationOptions = ({\n queryClient,\n threadContext,\n superinterfaceContext,\n onError\n}) => {\n const mutationKey = [\"createMessage\", threadContext.variables];\n return {\n mutationFn: mutationFn({\n queryClient,\n superinterfaceContext,\n threadContext\n }),\n onMutate: onMutate({ queryClient }),\n onError,\n ...threadContext.defaultOptions.mutations,\n ...queryClient.getMutationDefaults(mutationKey),\n mutationKey\n };\n};\n\n// src/hooks/messages/useCreateMessage/index.ts\nvar useCreateMessage = ({\n onError = () => {\n }\n} = {\n onError: () => {\n }\n}) => {\n const queryClient = useQueryClient3();\n const superinterfaceContext = useSuperinterfaceContext();\n const threadContext = useSuperinterfaceContext();\n const props = useMutation(mutationOptions({\n queryClient,\n threadContext,\n superinterfaceContext,\n onError\n }));\n return {\n ...props,\n createMessage: partob(props.mutateAsync, threadContext.variables)\n };\n};\n\n// src/components/suggestions/Suggestions/Item.tsx\nimport {\n useQueryClient as useQueryClient4\n} from \"@tanstack/react-query\";\n\n// src/hooks/toasts/useToasts/index.ts\nimport { useContext as useContext4 } from \"react\";\n\n// src/contexts/toasts/ToastsContext/index.ts\nimport { createContext as createContext5 } from \"react\";\nvar ToastsContext = createContext5({\n toasts: [],\n addToast: () => {\n }\n});\n\n// src/hooks/toasts/useToasts/index.ts\nvar useToasts = () => useContext4(ToastsContext);\n\n// src/lib/errors/createMessageDefaultOnError.ts\nvar createMessageDefaultOnError = ({\n queryClient,\n addToast,\n threadContext\n}) => (error) => {\n if (error.name === \"AbortError\") {\n queryClient.invalidateQueries({ queryKey: [\"messages\", threadContext.variables] });\n queryClient.invalidateQueries({ queryKey: [\"runs\", threadContext.variables] });\n return;\n }\n addToast({ type: \"error\", message: error.message });\n};\n\n// src/components/suggestions/Suggestions/Item.tsx\nimport { jsx as jsx27, jsxs as jsxs10 } from \"react/jsx-runtime\";\nvar Item = ({\n suggestion,\n isDisabled,\n className,\n style\n}) => {\n const { addToast } = useToasts();\n const queryClient = useQueryClient4();\n const threadContext = useSuperinterfaceContext();\n const { createMessage, isPending } = useCreateMessage({\n onError: createMessageDefaultOnError({\n queryClient,\n addToast,\n threadContext\n })\n });\n return /* @__PURE__ */ jsx27(\n Content3,\n {\n onClick: () => {\n createMessage({\n // @ts-ignore-next-line\n content: suggestion\n });\n },\n isDisabled,\n isPending,\n className,\n style,\n children: suggestion\n }\n );\n};\nvar Content3 = ({\n onClick,\n isDisabled,\n isPending,\n children,\n className,\n style\n}) => /* @__PURE__ */ jsxs10(\n Button2,\n {\n className,\n variant: \"soft\",\n onClick,\n disabled: isDisabled,\n style: {\n minHeight: \"var(--base-button-height)\",\n height: \"inherit\",\n flexShrink: 1,\n ...style ?? {}\n },\n children: [\n /* @__PURE__ */ jsx27(\n Text4,\n {\n size: \"1\",\n weight: \"regular\",\n children\n }\n ),\n /* @__PURE__ */ jsx27(Spinner, { loading: isPending, children: /* @__PURE__ */ jsx27(\n ArrowUpIcon,\n {\n style: {\n flexShrink: 0\n }\n }\n ) })\n ]\n }\n);\nItem.Content = Content3;\n\n// src/components/suggestions/Suggestions/Content.tsx\nimport { jsx as jsx28 } from \"react/jsx-runtime\";\nvar Content4 = ({\n children,\n className,\n style\n}) => {\n const isMutatingMessage = useIsMutatingMessage();\n const suggestions = useMemo5(() => onlyText(children).split(/\\r?\\n/).filter((c) => !isEmpty(c)).map((c) => c.trim()), [children]);\n if (isEmpty(suggestions)) return null;\n return /* @__PURE__ */ jsx28(\n Flex7,\n {\n gap: \"2\",\n py: \"2\",\n wrap: \"wrap\",\n className,\n style,\n children: suggestions.map((suggestion) => /* @__PURE__ */ jsx28(\n Item,\n {\n suggestion,\n isDisabled: isMutatingMessage\n },\n suggestion\n ))\n }\n );\n};\n\n// src/components/suggestions/Suggestions/index.tsx\nimport { jsx as jsx29 } from \"react/jsx-runtime\";\nvar Suggestions = ({\n children,\n className,\n style\n}) => {\n const latestMessageProps = useLatestMessage();\n const isDisabled = useMemo6(() => (\n // @ts-ignore-next-line\n latestMessageProps.latestMessage?.metadata?.isBlocking\n ), [latestMessageProps]);\n if (latestMessageProps.isLoading) return null;\n if (isDisabled) return null;\n return /* @__PURE__ */ jsx29(\n Content4,\n {\n className,\n style,\n children\n }\n );\n};\nSuggestions.Item = Item;\n\n// src/contexts/markdown/MarkdownContext/lib/components/Code.tsx\nimport { jsx as jsx30 } from \"react/jsx-runtime\";\nvar Code3 = ({\n children,\n className\n}) => {\n if (className === \"language-suggestions\") {\n return /* @__PURE__ */ jsx30(Suggestions, { children });\n }\n return /* @__PURE__ */ jsx30(RadixCode, { children });\n};\n\n// src/components/images/Image.tsx\nimport {\n Box as Box8\n} from \"@radix-ui/themes\";\nimport { jsx as jsx31 } from \"react/jsx-runtime\";\nvar Image = (props) => /* @__PURE__ */ jsx31(\n Box8,\n {\n pb: \"3\",\n children: /* @__PURE__ */ jsx31(\n \"img\",\n {\n ...props,\n style: {\n maxWidth: \"100%\",\n height: \"auto\"\n }\n }\n )\n }\n);\n\n// src/contexts/markdown/MarkdownContext/lib/components/Img/lib/isVideoSrc.ts\nvar videoExtensions = [\n \"3g2\",\n \"3gp\",\n \"aaf\",\n \"asf\",\n \"avchd\",\n \"avi\",\n \"drc\",\n \"flv\",\n \"m2v\",\n \"m3u8\",\n \"m4p\",\n \"m4v\",\n \"mkv\",\n \"mng\",\n \"mov\",\n \"mp2\",\n \"mp4\",\n \"mpe\",\n \"mpeg\",\n \"mpg\",\n \"mpv\",\n \"mxf\",\n \"nsv\",\n \"ogg\",\n \"ogv\",\n \"qt\",\n \"rm\",\n \"rmvb\",\n \"roq\",\n \"svi\",\n \"vob\",\n \"webm\",\n \"wmv\",\n \"yuv\"\n];\nvar isVideoSrc = ({\n src\n}) => videoExtensions.includes(src.split(\".\").pop() || \"\");\n\n// src/contexts/markdown/MarkdownContext/lib/components/Img/lib/isAudioSrc.ts\nvar isAudioSrc = ({\n src\n}) => src.endsWith(\".mp3\") || src.endsWith(\".wav\");\n\n// src/contexts/markdown/MarkdownContext/lib/components/Img/Video/index.tsx\nimport {\n Flex as Flex8\n} from \"@radix-ui/themes\";\nimport \"@vidstack/react/player/styles/base.css\";\nimport {\n MediaPlayer,\n MediaProvider,\n Controls\n} from \"@vidstack/react\";\n\n// src/components/media/PlayButton.tsx\nimport {\n PlayButton as VidstackPlayButton,\n useMediaState\n} from \"@vidstack/react\";\nimport {\n IconButton\n} from \"@radix-ui/themes\";\nimport {\n PlayIcon,\n PauseIcon\n} from \"@radix-ui/react-icons\";\nimport { jsx as jsx32 } from \"react/jsx-runtime\";\nvar PlayButton = () => {\n const isPaused = useMediaState(\"paused\");\n return /* @__PURE__ */ jsx32(\n IconButton,\n {\n variant: \"ghost\",\n asChild: true,\n children: /* @__PURE__ */ jsx32(VidstackPlayButton, { children: isPaused ? /* @__PURE__ */ jsx32(PlayIcon, {}) : /* @__PURE__ */ jsx32(PauseIcon, {}) })\n }\n );\n};\n\n// src/components/media/VolumeButton.tsx\nimport {\n MuteButton,\n useMediaState as useMediaState2,\n useMediaRemote\n} from \"@vidstack/react\";\nimport {\n IconButton as IconButton2,\n HoverCard,\n Slider\n} from \"@radix-ui/themes\";\nimport {\n SpeakerModerateIcon,\n SpeakerOffIcon\n} from \"@radix-ui/react-icons\";\nimport { jsx as jsx33, jsxs as jsxs11 } from \"react/jsx-runtime\";\nvar VolumeButton = () => {\n const volume = useMediaState2(\"volume\");\n const isMuted = useMediaState2(\"muted\");\n const remote = useMediaRemote();\n return /* @__PURE__ */ jsxs11(HoverCard.Root, { children: [\n /* @__PURE__ */ jsx33(HoverCard.Trigger, { children: /* @__PURE__ */ jsx33(\n IconButton2,\n {\n variant: \"ghost\",\n asChild: true,\n children: /* @__PURE__ */ jsx33(MuteButton, { children: isMuted || volume === 0 ? /* @__PURE__ */ jsx33(SpeakerOffIcon, {}) : /* @__PURE__ */ jsx33(SpeakerModerateIcon, {}) })\n }\n ) }),\n /* @__PURE__ */ jsx33(\n HoverCard.Content,\n {\n size: \"1\",\n side: \"top\",\n height: \"100px\",\n children: /* @__PURE__ */ jsx33(\n Slider,\n {\n size: \"1\",\n variant: \"soft\",\n orientation: \"vertical\",\n value: [volume * 100],\n onValueChange: ([value]) => remote.changeVolume(value / 100)\n }\n )\n }\n )\n ] });\n};\n\n// src/components/media/Time.tsx\nimport {\n useState,\n useEffect,\n useMemo as useMemo7\n} from \"react\";\nimport {\n useMediaState as useMediaState3,\n useMediaRemote as useMediaRemote2\n} from \"@vidstack/react\";\nimport {\n Slider as Slider2\n} from \"@radix-ui/themes\";\nimport { jsx as jsx34 } from \"react/jsx-runtime\";\nvar Time = () => {\n const time = useMediaState3(\"currentTime\");\n const duration = useMediaState3(\"duration\");\n const seeking = useMediaState3(\"seeking\");\n const canSeek = useMediaState3(\"canSeek\");\n const remote = useMediaRemote2();\n const [value, setValue] = useState(0);\n useEffect(() => {\n if (seeking) return;\n setValue(time / duration * 100);\n }, [time, duration, seeking]);\n const step = useMemo7(() => 1 / duration * 100, [duration]);\n return /* @__PURE__ */ jsx34(\n Slider2,\n {\n size: \"1\",\n variant: \"soft\",\n value: [value],\n disabled: !canSeek,\n step: Number.isFinite(step) ? step : 1,\n onValueChange: ([value2]) => {\n setValue(value2);\n remote.seeking(value2 / 100 * duration);\n },\n onValueCommit: ([value2]) => {\n remote.seek(value2 / 100 * duration);\n }\n }\n );\n};\n\n// src/components/media/MediaContainer.tsx\nimport {\n Card,\n Inset\n} from \"@radix-ui/themes\";\nimport { jsx as jsx35 } from \"react/jsx-runtime\";\nvar MediaContainer = ({\n children\n}) => /* @__PURE__ */ jsx35(\n Card,\n {\n mb: \"3\",\n children: /* @__PURE__ */ jsx35(\n Inset,\n {\n clip: \"padding-box\",\n style: {\n display: \"flex\",\n flexDirection: \"column\"\n },\n children\n }\n )\n }\n);\n\n// src/contexts/markdown/MarkdownContext/lib/components/Img/Video/FullscreenButton.tsx\nimport {\n FullscreenButton as VidstackFullscreenButton,\n useMediaState as useMediaState4\n} from \"@vidstack/react\";\nimport {\n IconButton as IconButton3\n} from \"@radix-ui/themes\";\nimport {\n EnterFullScreenIcon,\n ExitFullScreenIcon\n} from \"@radix-ui/react-icons\";\nimport { jsx as jsx36 } from \"react/jsx-runtime\";\nvar FullscreenButton = () => {\n const isFullscreen = useMediaState4(\"fullscreen\");\n return /* @__PURE__ */ jsx36(\n IconButton3,\n {\n variant: \"ghost\",\n asChild: true,\n children: /* @__PURE__ */ jsx36(VidstackFullscreenButton, { children: isFullscreen ? /* @__PURE__ */ jsx36(ExitFullScreenIcon, {}) : /* @__PURE__ */ jsx36(EnterFullScreenIcon, {}) })\n }\n );\n};\n\n// src/contexts/markdown/MarkdownContext/lib/components/Img/Video/index.tsx\nimport { jsx as jsx37, jsxs as jsxs12 } from \"react/jsx-runtime\";\nvar Video = ({\n src\n}) => /* @__PURE__ */ jsx37(MediaContainer, { children: /* @__PURE__ */ jsxs12(\n MediaPlayer,\n {\n src: {\n src,\n type: `video/${src.split(\".\").pop()}`\n },\n playsInline: true,\n hideControlsOnMouseLeave: true,\n crossOrigin: true,\n children: [\n /* @__PURE__ */ jsx37(MediaProvider, {}),\n /* @__PURE__ */ jsx37(\"style\", { children: `\n .superinterface-video-controls {\n opacity: 0;\n transition: opacity 0.2s ease-out;\n }\n\n .superinterface-video-controls[data-visible] {\n opacity: 1;\n }\n ` }),\n /* @__PURE__ */ jsx37(\n Flex8,\n {\n asChild: true,\n position: \"absolute\",\n bottom: \"0\",\n left: \"0\",\n right: \"0\",\n className: \"superinterface-video-controls\",\n p: \"3\",\n style: {\n zIndex: 10,\n background: \"var(--accent-4)\"\n },\n children: /* @__PURE__ */ jsx37(Controls.Root, { children: /* @__PURE__ */ jsx37(\n Flex8,\n {\n asChild: true,\n align: \"center\",\n gap: \"3\",\n flexGrow: \"1\",\n children: /* @__PURE__ */ jsxs12(Controls.Group, { children: [\n /* @__PURE__ */ jsx37(PlayButton, {}),\n /* @__PURE__ */ jsx37(Time, {}),\n /* @__PURE__ */ jsx37(VolumeButton, {}),\n /* @__PURE__ */ jsx37(FullscreenButton, {})\n ] })\n }\n ) })\n }\n )\n ]\n }\n) });\n\n// src/contexts/markdown/MarkdownContext/lib/components/Img/Audio/index.tsx\nimport {\n Flex as Flex9\n} from \"@radix-ui/themes\";\nimport \"@vidstack/react/player/styles/base.css\";\nimport {\n MediaPlayer as MediaPlayer2,\n MediaProvider as MediaProvider2,\n Controls as Controls2\n} from \"@vidstack/react\";\nimport { jsx as jsx38, jsxs as jsxs13 } from \"react/jsx-runtime\";\nvar Audio = ({\n src\n}) => /* @__PURE__ */ jsx38(MediaContainer, { children: /* @__PURE__ */ jsxs13(\n MediaPlayer2,\n {\n src: {\n src,\n type: `audio/${src.split(\".\").pop()}`\n },\n viewType: \"audio\",\n crossOrigin: true,\n playsInline: true,\n children: [\n /* @__PURE__ */ jsx38(MediaProvider2, {}),\n /* @__PURE__ */ jsx38(\n Flex9,\n {\n asChild: true,\n p: \"3\",\n flexGrow: \"1\",\n style: {\n zIndex: 10,\n background: \"var(--accent-4)\"\n },\n children: /* @__PURE__ */ jsx38(Controls2.Root, { children: /* @__PURE__ */ jsx38(\n Flex9,\n {\n asChild: true,\n align: \"center\",\n gap: \"3\",\n flexGrow: \"1\",\n children: /* @__PURE__ */ jsxs13(Controls2.Group, { children: [\n /* @__PURE__ */ jsx38(PlayButton, {}),\n /* @__PURE__ */ jsx38(Time, {}),\n /* @__PURE__ */ jsx38(VolumeButton, {})\n ] })\n }\n ) })\n }\n )\n ]\n }\n) });\n\n// src/contexts/markdown/MarkdownContext/lib/components/Img/index.tsx\nimport { jsx as jsx39 } from \"react/jsx-runtime\";\nvar Img = (props) => {\n if (!props.src) {\n return /* @__PURE__ */ jsx39(\n Image,\n {\n ...props\n }\n );\n } else if (isVideoSrc({ src: props.src })) {\n return /* @__PURE__ */ jsx39(\n Video,\n {\n src: props.src\n }\n );\n } else if (isAudioSrc({ src: props.src })) {\n return /* @__PURE__ */ jsx39(\n Audio,\n {\n src: props.src\n }\n );\n } else {\n return /* @__PURE__ */ jsx39(\n Image,\n {\n ...props\n }\n );\n }\n};\n\n// src/contexts/markdown/MarkdownContext/lib/components/Annotation/index.tsx\nimport {\n QuoteIcon\n} from \"@radix-ui/react-icons\";\n\n// src/contexts/markdown/MarkdownContext/lib/components/Annotation/AnnotationBase.tsx\nimport {\n IconButton as IconButton4,\n Popover as Popover4,\n Flex as Flex10,\n Text as Text5\n} from \"@radix-ui/themes\";\nimport { jsx as jsx40, jsxs as jsxs14 } from \"react/jsx-runtime\";\nvar AnnotationBase = ({\n icon,\n content\n}) => /* @__PURE__ */ jsxs14(Popover4.Root, { children: [\n /* @__PURE__ */ jsx40(Popover4.Trigger, { children: /* @__PURE__ */ jsx40(\n IconButton4,\n {\n variant: \"soft\",\n color: \"gray\",\n size: \"1\",\n children: icon\n }\n ) }),\n /* @__PURE__ */ jsx40(\n Popover4.Content,\n {\n size: \"1\",\n children: /* @__PURE__ */ jsx40(\n Flex10,\n {\n direction: \"column\",\n children: /* @__PURE__ */ jsx40(\n Text5,\n {\n size: \"1\",\n color: \"gray\",\n children: content\n }\n )\n }\n )\n }\n )\n] });\n\n// src/contexts/markdown/MarkdownContext/lib/components/Annotation/FilePathAnnotation.tsx\nimport { jsx as jsx41 } from \"react/jsx-runtime\";\nvar FilePathAnnotation = ({\n annotation,\n children\n}) => {\n const superinterfaceContext = useSuperinterfaceContext();\n const nextSearchParams = new URLSearchParams(superinterfaceContext.variables);\n return /* @__PURE__ */ jsx41(\n Link,\n {\n href: `${superinterfaceContext.baseUrl}/files/${annotation.file_path.file_id}/contents?${nextSearchParams}`,\n target: \"_self\",\n download: true,\n children\n }\n );\n};\n\n// src/contexts/markdown/MarkdownContext/lib/components/Annotation/index.tsx\nimport { jsx as jsx42 } from \"react/jsx-runtime\";\nvar Annotation = ({\n annotation,\n children\n}) => {\n if (annotation.type === \"file_citation\") {\n return /* @__PURE__ */ jsx42(\n AnnotationBase,\n {\n icon: /* @__PURE__ */ jsx42(QuoteIcon, {}),\n content: \"File cited.\"\n }\n );\n } else if (annotation.type === \"file_path\") {\n return /* @__PURE__ */ jsx42(\n FilePathAnnotation,\n {\n annotation,\n children\n }\n );\n }\n return null;\n};\n\n// src/contexts/markdown/MarkdownContext/lib/components/index.tsx\nimport { Fragment, jsx as jsx43, jsxs as jsxs15 } from \"react/jsx-runtime\";\nvar components = {\n p: Paragraph,\n a: Link,\n strong: Strong,\n ul: UnorderedList,\n ol: OrderedList,\n li: ListItem,\n pre: Pre,\n code: Code3,\n img: Img,\n annotation: Annotation,\n h1: (props) => /* @__PURE__ */ jsx43(Heading, { as: \"h1\", children: props.children }),\n h2: (props) => /* @__PURE__ */ jsx43(Heading, { as: \"h2\", size: \"5\", children: props.children }),\n h3: (props) => /* @__PURE__ */ jsx43(Heading, { as: \"h3\", size: \"4\", children: props.children }),\n h4: (props) => /* @__PURE__ */ jsx43(Heading, { as: \"h4\", size: \"3\", children: props.children }),\n h5: (props) => /* @__PURE__ */ jsx43(Heading, { as: \"h5\", size: \"3\", children: props.children }),\n h6: (props) => /* @__PURE__ */ jsx43(Heading, { as: \"h6\", size: \"3\", children: props.children }),\n table: (props) => /* @__PURE__ */ jsxs15(Fragment, { children: [\n /* @__PURE__ */ jsx43(\"style\", { children: `.rt-TableRootTable { overflow: inherit; }` }),\n /* @__PURE__ */ jsx43(\n Table.Root,\n {\n ...props,\n variant: \"surface\",\n mb: \"3\"\n }\n )\n ] }),\n thead: (props) => /* @__PURE__ */ jsx43(\n Table.Header,\n {\n ...props\n }\n ),\n tbody: (props) => /* @__PURE__ */ jsx43(\n Table.Body,\n {\n ...props\n }\n ),\n tr: (props) => /* @__PURE__ */ jsx43(\n Table.Row,\n {\n ...props\n }\n ),\n td: ({ width: width2, ...rest }) => /* @__PURE__ */ jsx43(\n Table.Cell,\n {\n ...rest,\n width: width2\n }\n ),\n th: (props) => /* @__PURE__ */ jsx43(\n Table.ColumnHeaderCell,\n {\n ...props\n }\n )\n};\n\n// src/contexts/markdown/MarkdownContext/lib/getRemarkPlugins.ts\nimport remarkGfm from \"remark-gfm\";\n\n// src/lib/remark/remarkAnnotation.ts\nimport { isNumber } from \"radash\";\nimport flatMap from \"unist-util-flatmap\";\nvar sortedAnnotations = ({\n content\n}) => content.text.annotations.sort((a, b) => a.start_index - b.start_index);\nvar remarkAnnotation = ({\n content\n}) => {\n return () => {\n return (tree) => {\n flatMap(tree, (node) => {\n if (node.type === \"text\" || node.type === \"link\") {\n return processNodeWithAnnotations({ node, content });\n } else {\n return [node];\n }\n });\n };\n };\n};\nvar processNodeWithAnnotations = ({\n node,\n content\n}) => {\n if (!content.text?.annotations?.length) {\n return [node];\n }\n if (!node.position) {\n return [node];\n }\n const annotations = sortedAnnotations({ content });\n if (node.type === \"text\") {\n return processTextNode({ node, annotations });\n } else if (node.type === \"link\") {\n const linkNode = node;\n linkNode.children = flatMap(linkNode.children, (childNode) => {\n if (childNode.type === \"text\") {\n return processTextNode({ node: childNode, annotations });\n } else {\n return [childNode];\n }\n });\n return [linkNode];\n } else {\n return [node];\n }\n};\nvar processTextNode = ({\n node,\n annotations\n}) => {\n if (!node.position || !node.value) {\n return [node];\n }\n const nodeStart = node.position.start.offset;\n const nodeEnd = node.position.end.offset;\n if (!isNumber(nodeStart) || !isNumber(nodeEnd)) {\n return [node];\n }\n const newNodes = [];\n let lastIndex = nodeStart;\n annotations.forEach((annotation) => {\n const annotationStart = annotation.start_index;\n const annotationEnd = annotation.end_index;\n if (nodeEnd <= annotationStart || nodeStart >= annotationEnd) {\n return;\n }\n const start = Math.max(nodeStart, annotationStart);\n const end = Math.min(nodeEnd, annotationEnd);\n if (lastIndex < start) {\n newNodes.push(createTextNode({ node, startOffset: lastIndex, endOffset: start }));\n }\n newNodes.push(\n createAnnotationNode({\n node,\n startOffset: start,\n endOffset: end,\n annotation\n })\n );\n lastIndex = end;\n });\n if (lastIndex < nodeEnd) {\n newNodes.push(createTextNode({ node, startOffset: lastIndex, endOffset: nodeEnd }));\n }\n return newNodes;\n};\nvar createTextNode = ({\n node,\n startOffset,\n endOffset\n}) => {\n const valueStart = startOffset - node.position.start.offset;\n const valueEnd = endOffset - node.position.start.offset;\n return {\n type: \"text\",\n value: node.value.slice(valueStart, valueEnd),\n position: {\n start: {\n ...node.position.start,\n offset: startOffset\n },\n end: {\n ...node.position.end,\n offset: endOffset\n }\n }\n };\n};\nvar createAnnotationNode = ({\n node,\n startOffset,\n endOffset,\n annotation\n}) => {\n const valueStart = startOffset - node.position.start.offset;\n const valueEnd = endOffset - node.position.start.offset;\n return {\n type: \"annotation\",\n value: node.value.slice(valueStart, valueEnd),\n position: {\n start: {\n ...node.position.start,\n offset: startOffset\n },\n end: {\n ...node.position.end,\n offset: endOffset\n }\n },\n data: {\n hName: \"annotation\",\n hProperties: {\n annotation\n }\n }\n };\n};\n\n// src/contexts/markdown/MarkdownContext/lib/getRemarkPlugins.ts\nvar getRemarkPlugins = ({\n content\n}) => [\n remarkAnnotation({ content }),\n remarkGfm\n];\n\n// src/contexts/markdown/MarkdownContext/index.ts\nvar MarkdownContext = createContext6({\n components,\n getRemarkPlugins\n});\n\n// src/hooks/markdown/useMarkdownContext/index.ts\nvar useMarkdownContext = () => useContext5(MarkdownContext);\n\n// src/components/threads/Thread/Message/ContentPart/TextContent.tsx\nimport { jsx as jsx44 } from \"react/jsx-runtime\";\nvar evaluate = async ({\n code\n}) => {\n const fn = new Function(\"runtime\", \"useMDXComponents\", code);\n return fn({ ...runtime, useMDXComponents });\n};\nvar TextContent = ({\n content\n}) => {\n const { getRemarkPlugins: getRemarkPlugins2, components: components2 } = useMarkdownContext();\n const remarkPlugins = useMemo8(() => getRemarkPlugins2({ content }), [content, getRemarkPlugins2]);\n const [MDXComponent, setMDXComponent] = useState2(null);\n useEffect2(() => {\n const compileMDX = async () => {\n try {\n const compiled = await compile(content.text.value, {\n outputFormat: \"function-body\",\n remarkPlugins,\n recmaPlugins: [recmaFallbackComponentPlugin],\n providerImportSource: \"@mdx-js/react\"\n });\n const code = String(compiled);\n const module = await evaluate({ code });\n const { default: MDXContent } = module;\n setMDXComponent(() => MDXContent);\n } catch (error) {\n }\n };\n compileMDX();\n }, [content, remarkPlugins]);\n if (!MDXComponent) return content.text.value;\n return /* @__PURE__ */ jsx44(\n MDXProvider,\n {\n components: components2,\n children: /* @__PURE__ */ jsx44(MDXComponent, {})\n }\n );\n};\n\n// src/components/threads/Thread/Message/ContentPart/ImageFileContent.tsx\nimport { jsx as jsx45 } from \"react/jsx-runtime\";\nvar ImageFileContent = ({\n content\n}) => {\n const superinterfaceContext = useSuperinterfaceContext();\n const nextSearchParams = new URLSearchParams(superinterfaceContext.variables);\n return /* @__PURE__ */ jsx45(\n Image,\n {\n alt: \"\",\n src: `${superinterfaceContext.baseUrl}/files/${content.image_file.file_id}/contents?${nextSearchParams}`\n }\n );\n};\n\n// src/components/threads/Thread/Message/ContentPart/index.tsx\nimport { jsx as jsx46 } from \"react/jsx-runtime\";\nvar ContentPart = ({\n content\n}) => {\n if (content.type === \"text\") {\n return /* @__PURE__ */ jsx46(\n TextContent,\n {\n content\n }\n );\n }\n if (content.type === \"image_file\") {\n return /* @__PURE__ */ jsx46(\n ImageFileContent,\n {\n content\n }\n );\n }\n return null;\n};\n\n// src/components/threads/Thread/Message/index.tsx\nimport { jsx as jsx47, jsxs as jsxs16 } from \"react/jsx-runtime\";\nvar Message = ({\n message,\n className,\n style\n}) => {\n const [olderRunSteps, laterRunSteps] = useMemo9(() => {\n if (!message.runSteps.length) return [[], []];\n const messageCreationRunStepIndex = message.runSteps.findIndex((runStep) => {\n if (runStep.step_details.type !== \"message_creation\") return;\n return runStep.step_details.message_creation.message_id === message.id;\n });\n let nextRunStepIndex = message.runSteps.slice(0, messageCreationRunStepIndex).findLastIndex((runStep) => runStep.step_details.type === \"message_creation\");\n if (nextRunStepIndex === -1) {\n nextRunStepIndex = 0;\n }\n const laterRunSteps2 = message.runSteps.slice(nextRunStepIndex, messageCreationRunStepIndex);\n const prevRunStepIndex = message.runSteps.slice(messageCreationRunStepIndex + 1).findIndex((runStep) => runStep.step_details.type === \"message_creation\");\n let olderRunSteps2;\n if (prevRunStepIndex === -1) {\n olderRunSteps2 = message.runSteps.slice(messageCreationRunStepIndex + 1);\n } else {\n olderRunSteps2 = message.runSteps.slice(messageCreationRunStepIndex + 1, messageCreationRunStepIndex + prevRunStepIndex);\n }\n return [olderRunSteps2, laterRunSteps2];\n }, [message]);\n const isMutatingMessage = useIsMutatingMessage();\n const isInProgress = useMemo9(() => {\n if (!isMutatingMessage) return false;\n if (message.status === \"in_progress\") return true;\n return message.runSteps.some((rs) => rs.status === \"in_progress\");\n }, [message]);\n return /* @__PURE__ */ jsx47(Provider, { value: { message }, children: /* @__PURE__ */ jsxs16(\n Box9,\n {\n className,\n style,\n children: [\n /* @__PURE__ */ jsx47(\n RunSteps,\n {\n runSteps: olderRunSteps\n }\n ),\n /* @__PURE__ */ jsxs16(Box9, { children: [\n /* @__PURE__ */ jsx47(\n Attachments,\n {\n message\n }\n ),\n message.content.map((content, index) => /* @__PURE__ */ jsx47(\n ContentPart,\n {\n content\n },\n index\n )),\n isInProgress && isEmpty2(laterRunSteps) && /* @__PURE__ */ jsx47(StartingContentSkeleton, {})\n ] }),\n /* @__PURE__ */ jsx47(\n RunSteps,\n {\n runSteps: laterRunSteps\n }\n ),\n isInProgress && !isEmpty2(laterRunSteps) && /* @__PURE__ */ jsx47(Box9, { children: /* @__PURE__ */ jsx47(StartingContentSkeleton, {}) })\n ]\n }\n ) });\n};\n\n// src/components/threads/Thread/Messages/Content/index.tsx\nimport { useEffect as useEffect3 } from \"react\";\n\n// src/hooks/messageGroups/useMessageGroups/index.ts\nimport { useMemo as useMemo10 } from \"react\";\n\n// src/hooks/messageGroups/useMessageGroups/lib/messageGroups/index.ts\nimport _6 from \"lodash\";\nimport { last as last2 } from \"radash\";\n\n// src/lib/messages/order.ts\nimport { sort } from \"radash\";\nvar order = ({ messages: messages2 }) => sort(messages2, (m) => m.created_at, true);\n\n// src/hooks/messageGroups/useMessageGroups/lib/messageGroups/newGroup/newGroupItem.ts\nvar newGroupItem = ({ message }) => ({\n id: message.id,\n role: message.role,\n createdAt: message.created_at,\n messages: [message]\n});\n\n// src/hooks/messageGroups/useMessageGroups/lib/messageGroups/newGroup/index.ts\nvar newGroup = ({ groups, message }) => [\n ...groups,\n newGroupItem({\n message\n })\n];\n\n// src/hooks/messageGroups/useMessageGroups/lib/messageGroups/index.ts\nvar messageGroups = ({\n messages: messages2\n}) => _6.reduce(\n order({ messages: messages2 }),\n (groups, message) => {\n const group = last2(groups);\n if (!group) return newGroup({ groups, message });\n if (group.role !== message.role) {\n return newGroup({\n groups,\n message\n });\n }\n return [\n ..._6.dropRight(groups),\n {\n ...group,\n messages: [...group.messages, message]\n }\n ];\n },\n []\n);\n\n// src/hooks/messageGroups/useMessageGroups/index.ts\nvar useMessageGroups = ({\n messages: messages2\n}) => useMemo10(\n () => ({\n messageGroups: messageGroups({ messages: messages2 })\n }),\n [messages2]\n);\n\n// src/components/skeletons/MessagesSkeleton/index.tsx\nimport { forwardRef as forwardRef2 } from \"react\";\nimport {\n Flex as Flex13,\n Avatar,\n Box as Box10,\n Skeleton as Skeleton2\n} from \"@radix-ui/themes\";\n\n// src/components/messageGroups/MessageGroupBase/index.tsx\nimport { forwardRef } from \"react\";\nimport {\n Flex as Flex11,\n Container\n} from \"@radix-ui/themes\";\nimport { jsx as jsx48 } from \"react/jsx-runtime\";\nvar MessageGroupBase = forwardRef(function MessageGroupBase2({\n children\n}, ref) {\n return /* @__PURE__ */ jsx48(\n Container,\n {\n ref,\n size: \"2\",\n flexGrow: \"0\",\n children: /* @__PURE__ */ jsx48(\n Flex11,\n {\n flexShrink: \"0\",\n gap: \"3\",\n children\n }\n )\n }\n );\n});\n\n// src/components/messageGroups/MessageGroupBase/Name.tsx\nimport {\n Flex as Flex12,\n Text as Text6\n} from \"@radix-ui/themes\";\nimport { jsx as jsx49 } from \"react/jsx-runtime\";\nvar Name = ({\n children\n}) => /* @__PURE__ */ jsx49(\n Flex12,\n {\n align: \"center\",\n height: \"var(--space-5)\",\n children: /* @__PURE__ */ jsx49(\n Text6,\n {\n size: \"2\",\n weight: \"bold\",\n children\n }\n )\n }\n);\n\n// src/components/skeletons/MessagesSkeleton/index.tsx\nimport { jsx as jsx50, jsxs as jsxs17 } from \"react/jsx-runtime\";\nvar MessagesSkeleton = forwardRef2(function MessagesSkeleton2(_props, ref) {\n return /* @__PURE__ */ jsxs17(\n MessageGroupBase,\n {\n ref,\n children: [\n /* @__PURE__ */ jsx50(Skeleton2, { loading: true, children: /* @__PURE__ */ jsx50(\n Avatar,\n {\n fallback: /* @__PURE__ */ jsx50(Flex13, {}),\n size: \"1\"\n }\n ) }),\n /* @__PURE__ */ jsxs17(\n Box10,\n {\n pb: \"3\",\n children: [\n /* @__PURE__ */ jsx50(Name, { children: /* @__PURE__ */ jsx50(\n Skeleton2,\n {\n loading: true,\n style: {\n width: \"128px\"\n }\n }\n ) }),\n /* @__PURE__ */ jsx50(\n Skeleton2,\n {\n loading: true,\n style: {\n width: \"256px\"\n }\n }\n ),\n /* @__PURE__ */ jsx50(\n Skeleton2,\n {\n loading: true,\n style: {\n width: \"256px\",\n marginTop: \"var(--space-2)\"\n }\n }\n ),\n /* @__PURE__ */ jsx50(\n Skeleton2,\n {\n loading: true,\n style: {\n width: \"256px\",\n marginTop: \"var(--space-2)\"\n }\n }\n )\n ]\n }\n )\n ]\n }\n );\n});\n\n// src/components/threads/Thread/Messages/Content/MessageGroup/index.tsx\nimport { useContext as useContext8 } from \"react\";\nimport {\n Box as Box11\n} from \"@radix-ui/themes\";\n\n// src/components/messageGroups/MessageGroupBase/AssistantAvatar.tsx\nimport { useContext as useContext6 } from \"react\";\nimport {\n Flex as Flex14\n} from \"@radix-ui/themes\";\n\n// src/contexts/assistants/AssistantAvatarContext/index.tsx\nimport { createContext as createContext7 } from \"react\";\nimport {\n Avatar as Avatar2\n} from \"@radix-ui/themes\";\nimport {\n LightningBoltIcon\n} from \"@radix-ui/react-icons\";\nimport { jsx as jsx51 } from \"react/jsx-runtime\";\nvar AssistantAvatarContext = createContext7(\n /* @__PURE__ */ jsx51(\n Avatar2,\n {\n fallback: /* @__PURE__ */ jsx51(LightningBoltIcon, {}),\n size: \"1\"\n }\n )\n);\n\n// src/components/messageGroups/MessageGroupBase/AssistantAvatar.tsx\nimport { jsx as jsx52 } from \"react/jsx-runtime\";\nvar AssistantAvatar = () => {\n const AssistantAvatarContextValue = useContext6(AssistantAvatarContext);\n return /* @__PURE__ */ jsx52(\n Flex14,\n {\n flexShrink: \"0\",\n height: \"24px\",\n width: \"24px\",\n style: {\n borderRadius: \"var(--radius-3)\",\n overflow: \"hidden\"\n },\n children: AssistantAvatarContextValue\n }\n );\n};\n\n// src/contexts/assistants/AssistantNameContext/index.tsx\nimport { createContext as createContext8 } from \"react\";\nvar AssistantNameContext = createContext8(\"Assistant\");\n\n// src/components/messageGroups/MessageGroupBase/UserAvatar.tsx\nimport { useContext as useContext7 } from \"react\";\nimport {\n Flex as Flex15\n} from \"@radix-ui/themes\";\n\n// src/contexts/users/UserAvatarContext/index.tsx\nimport { createContext as createContext9 } from \"react\";\nimport {\n Avatar as Avatar3\n} from \"@radix-ui/themes\";\nimport {\n PersonIcon\n} from \"@radix-ui/react-icons\";\nimport { jsx as jsx53 } from \"react/jsx-runtime\";\nvar UserAvatarContext = createContext9(\n /* @__PURE__ */ jsx53(\n Avatar3,\n {\n fallback: /* @__PURE__ */ jsx53(PersonIcon, {}),\n size: \"1\"\n }\n )\n);\n\n// src/components/messageGroups/MessageGroupBase/UserAvatar.tsx\nimport { jsx as jsx54 } from \"react/jsx-runtime\";\nvar UserAvatar = () => {\n const UserAvatarContextValue = useContext7(UserAvatarContext);\n return /* @__PURE__ */ jsx54(\n Flex15,\n {\n flexShrink: \"0\",\n height: \"24px\",\n width: \"24px\",\n style: {\n borderRadius: \"var(--radius-3)\",\n overflow: \"hidden\"\n },\n children: UserAvatarContextValue\n }\n );\n};\n\n// src/components/threads/Thread/Messages/Content/MessageGroup/Content/index.tsx\nimport { Flex as Flex16 } from \"@radix-ui/themes\";\nimport { jsx as jsx55 } from \"react/jsx-runtime\";\nvar Content5 = ({\n messageGroup\n}) => /* @__PURE__ */ jsx55(\n Flex16,\n {\n direction: \"column-reverse\",\n children: messageGroup.messages.map((message) => /* @__PURE__ */ jsx55(\n Message,\n {\n message\n },\n message.id\n ))\n }\n);\n\n// src/components/threads/Thread/Messages/Content/MessageGroup/index.tsx\nimport { jsx as jsx56, jsxs as jsxs18 } from \"react/jsx-runtime\";\nvar MessageGroup = ({\n messageGroup\n}) => {\n const assistantNameContext = useContext8(AssistantNameContext);\n return /* @__PURE__ */ jsxs18(MessageGroupBase, { children: [\n messageGroup.role === \"user\" ? /* @__PURE__ */ jsx56(UserAvatar, {}) : /* @__PURE__ */ jsx56(AssistantAvatar, {}),\n /* @__PURE__ */ jsxs18(Box11, { flexGrow: \"1\", children: [\n /* @__PURE__ */ jsx56(Name, { children: messageGroup.role === \"user\" ? \"You\" : assistantNameContext }),\n /* @__PURE__ */ jsx56(\n Content5,\n {\n messageGroup\n }\n )\n ] })\n ] });\n};\n\n// src/components/threads/Thread/Messages/Content/index.tsx\nimport { Fragment as Fragment2, jsx as jsx57 } from \"react/jsx-runtime\";\nvar Content6 = () => {\n const {\n messages: messages2,\n isLoading,\n isLoadingError\n } = useMessages();\n const { addToast } = useToasts();\n const { messageGroups: messageGroups2 } = useMessageGroups({\n messages: messages2\n });\n useEffect3(() => {\n if (isLoadingError) {\n addToast({ type: \"error\", message: \"Could not load messages. Please try again.\" });\n }\n }, [isLoadingError, addToast]);\n if (isLoading || isLoadingError) {\n return /* @__PURE__ */ jsx57(MessagesSkeleton, {});\n }\n return /* @__PURE__ */ jsx57(Fragment2, { children: messageGroups2.map((messageGroup) => /* @__PURE__ */ jsx57(\n MessageGroup,\n {\n messageGroup\n },\n messageGroup.id\n )) });\n};\n\n// src/components/threads/Thread/Messages/Progress/index.tsx\nimport { useMemo as useMemo11 } from \"react\";\n\n// src/components/skeletons/StartingSkeleton/index.tsx\nimport { useContext as useContext9 } from \"react\";\nimport { Box as Box12 } from \"@radix-ui/themes\";\nimport { jsx as jsx58, jsxs as jsxs19 } from \"react/jsx-runtime\";\nvar StartingSkeleton = ({\n children\n}) => {\n const assistantNameContext = useContext9(AssistantNameContext);\n return /* @__PURE__ */ jsxs19(MessageGroupBase, { children: [\n /* @__PURE__ */ jsx58(AssistantAvatar, {}),\n /* @__PURE__ */ jsxs19(Box12, { children: [\n /* @__PURE__ */ jsx58(Name, { children: assistantNameContext }),\n children,\n /* @__PURE__ */ jsx58(StartingContentSkeleton, {})\n ] })\n ] });\n};\n\n// src/components/threads/Thread/Messages/Progress/index.tsx\nimport { jsx as jsx59 } from \"react/jsx-runtime\";\nvar Progress = () => {\n const { latestMessage } = useLatestMessage();\n const isMutatingMessage = useIsMutatingMessage();\n const isVisible = useMemo11(() => {\n if (!latestMessage) return false;\n if (latestMessage.role !== \"user\") return false;\n if (latestMessage.status === \"in_progress\") return false;\n if (!isOptimistic({ id: latestMessage.id })) return false;\n if (!isMutatingMessage) return false;\n return true;\n }, [latestMessage, isMutatingMessage]);\n if (!isVisible) return null;\n return /* @__PURE__ */ jsx59(StartingSkeleton, {});\n};\n\n// src/components/threads/Thread/Messages/Root/index.tsx\nimport { Flex as Flex17 } from \"@radix-ui/themes\";\n\n// src/hooks/misc/useInfiniteScroll/index.tsx\nimport { useRef as useRef3 } from \"react\";\nimport { useInView } from \"react-intersection-observer\";\n\n// src/hooks/misc/useThrottledEffect/index.tsx\nimport _7 from \"lodash\";\nimport { useRef as useRef2, useEffect as useEffect4, useCallback } from \"react\";\nvar useThrottledEffect = (cb, delay, additionalDeps) => {\n const cbRef = useRef2(cb);\n const throttledCb = useCallback(\n _7.throttle((...args) => cbRef.current(...args), delay, {\n leading: true,\n trailing: true\n }),\n [delay]\n );\n useEffect4(() => {\n cbRef.current = cb;\n });\n useEffect4(throttledCb, [throttledCb, ...additionalDeps]);\n};\n\n// src/hooks/misc/useInfiniteScroll/index.tsx\nvar useInfiniteScroll = ({\n isFetchingNextPage,\n hasNextPage,\n fetchNextPage\n}) => {\n const containerRef = useRef3(null);\n const { ref: loaderRef, inView } = useInView({\n root: containerRef.current,\n rootMargin: \"0px\",\n threshold: 0.1\n });\n useThrottledEffect(\n () => {\n if (isFetchingNextPage) return;\n if (!inView) return;\n if (!hasNextPage) return;\n fetchNextPage();\n },\n 500,\n [inView, isFetchingNextPage, hasNextPage, fetchNextPage]\n );\n return {\n containerRef,\n loaderRef,\n inView\n };\n};\n\n// src/components/threads/Thread/Messages/Root/index.tsx\nimport { jsx as jsx60, jsxs as jsxs20 } from \"react/jsx-runtime\";\nvar Root2 = ({\n children,\n style,\n className\n}) => {\n const {\n isFetchingNextPage,\n hasNextPage,\n fetchNextPage\n } = useMessages();\n const { containerRef, loaderRef } = useInfiniteScroll({\n isFetchingNextPage,\n hasNextPage,\n fetchNextPage\n });\n return /* @__PURE__ */ jsxs20(\n Flex17,\n {\n ref: containerRef,\n direction: \"column-reverse\",\n flexGrow: \"1\",\n style: {\n overflow: \"auto\",\n ...style ?? {}\n },\n className,\n children: [\n children,\n hasNextPage && /* @__PURE__ */ jsx60(\n Flex17,\n {\n ref: loaderRef\n }\n ),\n /* @__PURE__ */ jsx60(\n Flex17,\n {\n flexShrink: \"0\",\n flexGrow: \"1\"\n }\n )\n ]\n }\n );\n};\n\n// src/components/threads/Thread/Messages/NextPageSkeleton.tsx\nimport { jsx as jsx61 } from \"react/jsx-runtime\";\nvar NextPageSkeleton = () => {\n const {\n hasNextPage\n } = useMessages();\n if (!hasNextPage) {\n return null;\n }\n return /* @__PURE__ */ jsx61(MessagesSkeleton, {});\n};\n\n// src/components/threads/Thread/Messages/index.tsx\nimport { jsx as jsx62, jsxs as jsxs21 } from \"react/jsx-runtime\";\nvar Messages = ({\n children,\n className,\n style\n}) => /* @__PURE__ */ jsxs21(\n Root2,\n {\n style,\n className,\n children: [\n /* @__PURE__ */ jsx62(\n Flex18,\n {\n flexShrink: \"0\",\n height: \"var(--space-3)\"\n }\n ),\n /* @__PURE__ */ jsx62(Progress, {}),\n children,\n /* @__PURE__ */ jsx62(Content6, {}),\n /* @__PURE__ */ jsx62(NextPageSkeleton, {}),\n /* @__PURE__ */ jsx62(\n Flex18,\n {\n flexShrink: \"0\",\n flexGrow: \"1\",\n minHeight: \"var(--space-5)\"\n }\n )\n ]\n }\n);\nMessages.Root = Root2;\nMessages.Message = Message;\nMessages.NextPageSkeleton = NextPageSkeleton;\n\n// src/components/threads/Thread/MessageForm/Submit/index.tsx\nimport {\n ArrowUpIcon as ArrowUpIcon2,\n StopIcon\n} from \"@radix-ui/react-icons\";\nimport {\n IconButton as IconButton5,\n Flex as Flex19\n} from \"@radix-ui/themes\";\n\n// src/hooks/messages/useMessageFormContext/index.ts\nimport { useContext as useContext10 } from \"react\";\n\n// src/contexts/messages/MessageFormContext/index.ts\nimport { createContext as createContext10 } from \"react\";\nvar MessageFormContext = createContext10({\n content: \"\",\n isDisabled: false,\n isLoading: false,\n files: [],\n setFiles: () => {\n },\n isFileLoading: false\n});\n\n// src/hooks/messages/useMessageFormContext/index.ts\nvar useMessageFormContext = () => useContext10(MessageFormContext);\n\n// src/components/threads/Thread/MessageForm/Submit/index.tsx\nimport { jsx as jsx63 } from \"react/jsx-runtime\";\nvar Root3 = ({\n children,\n style,\n className\n}) => /* @__PURE__ */ jsx63(\n Flex19,\n {\n flexShrink: \"0\",\n align: \"end\",\n style,\n className,\n children\n }\n);\nvar Button3 = (props) => {\n const superinterfaceContext = useSuperinterfaceContext();\n const { isDisabled, isLoading, isFileLoading } = useMessageFormContext();\n if (isLoading) {\n return /* @__PURE__ */ jsx63(\n IconButton5,\n {\n type: \"button\",\n onClick: () => superinterfaceContext.createMessageAbortControllerRef.current?.abort(),\n ...props,\n children: /* @__PURE__ */ jsx63(StopIcon, {})\n }\n );\n }\n return /* @__PURE__ */ jsx63(\n IconButton5,\n {\n type: \"submit\",\n disabled: isDisabled || isFileLoading,\n ...props,\n children: /* @__PURE__ */ jsx63(ArrowUpIcon2, {})\n }\n );\n};\nvar Submit = (props) => /* @__PURE__ */ jsx63(Root3, { ...props, children: /* @__PURE__ */ jsx63(Button3, {}) });\nSubmit.Root = Root3;\nSubmit.Button = Button3;\n\n// src/components/threads/Thread/MessageForm/Root/index.tsx\nimport {\n useQueryClient as useQueryClient5\n} from \"@tanstack/react-query\";\nimport { useMemo as useMemo12, useState as useState3 } from \"react\";\nimport { useForm, FormProvider } from \"react-hook-form\";\nimport { Box as Box13 } from \"@radix-ui/themes\";\n\n// src/components/threads/Thread/MessageForm/Root/lib/formOptions.ts\nimport { z } from \"zod\";\nimport { zodResolver } from \"@hookform/resolvers/zod\";\nvar schema = z.object({\n content: z.string().min(1)\n});\nvar formOptions = {\n resolver: zodResolver(schema)\n};\n\n// src/components/threads/Thread/MessageForm/Root/index.tsx\nimport { partob as partob2 } from \"radash\";\nimport { jsx as jsx64 } from \"react/jsx-runtime\";\nvar Root4 = ({\n children,\n onSubmit: onSubmitArg,\n isDisabled: isDisabledArg,\n style,\n className\n}) => {\n const [files, setFiles] = useState3([]);\n const formProps = useForm(formOptions);\n const {\n handleSubmit,\n formState: { isSubmitting },\n reset,\n watch\n } = formProps;\n const { addToast } = useToasts();\n const queryClient = useQueryClient5();\n const threadContext = useSuperinterfaceContext();\n const { createMessage } = useCreateMessage({\n onError: createMessageDefaultOnError({\n queryClient,\n addToast,\n threadContext\n })\n });\n const isMutatingMessage = useIsMutatingMessage();\n const isFileLoading = useMemo12(() => files.some((file) => isOptimistic({ id: file.id })), [files]);\n const isLoading = useMemo12(() => isMutatingMessage || isSubmitting, [\n isMutatingMessage,\n isSubmitting\n ]);\n const { latestMessage } = useLatestMessage();\n const isDisabled = useMemo12(() => (\n // @ts-ignore-next-line\n latestMessage?.metadata?.isBlocking || isDisabledArg\n ), [latestMessage, isDisabledArg]);\n const onSubmit = onSubmitArg ? partob2(onSubmitArg, { reset, createMessage }) : async (data2) => {\n if (isFileLoading) return;\n if (isLoading) return;\n if (isDisabled) return;\n reset();\n setFiles([]);\n const attachments = files.map((file) => ({\n file_id: file.id,\n tools: [\n {\n type: \"file_search\"\n }\n ]\n }));\n await createMessage({\n // @ts-ignore-next-line\n content: data2.content,\n ...attachments.length ? { attachments } : {}\n });\n };\n const content = watch(\"content\");\n return /* @__PURE__ */ jsx64(\n MessageFormContext.Provider,\n {\n value: {\n isDisabled,\n isLoading,\n files,\n setFiles,\n isFileLoading,\n content\n },\n children: /* @__PURE__ */ jsx64(FormProvider, { ...formProps, children: /* @__PURE__ */ jsx64(\n Box13,\n {\n asChild: true,\n flexShrink: \"0\",\n style,\n className,\n children: /* @__PURE__ */ jsx64(\n \"form\",\n {\n onSubmit: handleSubmit(onSubmit),\n children\n }\n )\n }\n ) })\n }\n );\n};\n\n// src/components/threads/Thread/MessageForm/Field/index.tsx\nimport { useFormContext as useFormContext2 } from \"react-hook-form\";\nimport {\n Container as RadixContainer,\n Flex as Flex23\n} from \"@radix-ui/themes\";\n\n// src/components/threads/Thread/MessageForm/Field/Control.tsx\nimport {\n Flex as Flex20\n} from \"@radix-ui/themes\";\nimport { useFormContext } from \"react-hook-form\";\n\n// src/hooks/misc/usePrevious.ts\nimport { useEffect as useEffect5, useRef as useRef4 } from \"react\";\nvar usePrevious = (state) => {\n const ref = useRef4();\n useEffect5(() => {\n ref.current = state;\n });\n return ref.current;\n};\n\n// src/components/threads/Thread/MessageForm/Field/Control.tsx\nimport { useContext as useContext11, useMemo as useMemo13, useRef as useRef5, useEffect as useEffect6 } from \"react\";\n\n// src/components/textareas/TextareaBase/index.tsx\nimport { forwardRef as forwardRef3 } from \"react\";\nimport TextareaAutosize from \"react-textarea-autosize\";\nimport { Fragment as Fragment3, jsx as jsx65, jsxs as jsxs22 } from \"react/jsx-runtime\";\nvar TextareaBase = forwardRef3(function TextareaBase2({\n style,\n className,\n ...rest\n}, ref) {\n return /* @__PURE__ */ jsxs22(Fragment3, { children: [\n /* @__PURE__ */ jsx65(\"style\", { children: `.superinterface-textarea { min-height: inherit; height: 30px; }\n.superinterface-textarea::placeholder { color: var(--gray-a10); }` }),\n /* @__PURE__ */ jsx65(\n TextareaAutosize,\n {\n ref,\n className: `rt-reset superinterface-textarea ${className ?? \"\"}`,\n style: {\n border: 0,\n outline: 0,\n boxSizing: \"border-box\",\n resize: \"none\",\n color: \"var(--gray-12)\",\n flexGrow: 1,\n display: \"flex\",\n ...style ?? {}\n },\n ...rest\n }\n )\n ] });\n});\n\n// src/components/threads/Thread/MessageForm/Field/Control.tsx\nimport { jsx as jsx66 } from \"react/jsx-runtime\";\nvar Root5 = ({\n children,\n style,\n className\n}) => /* @__PURE__ */ jsx66(\n Flex20,\n {\n flexGrow: \"1\",\n pt: \"4px\",\n style,\n className,\n children\n }\n);\nvar Input = (props) => {\n const assistantNameContext = useContext11(AssistantNameContext);\n const {\n register\n } = useFormContext();\n const { isDisabled, isLoading } = useMessageFormContext();\n const isSubmitDisabled = useMemo13(() => isDisabled || isLoading, [isDisabled, isLoading]);\n const isDisabledPrevious = usePrevious(isDisabled);\n const textareaRef = useRef5(null);\n const textareaProps = register(\"content\");\n useEffect6(() => {\n if (isDisabled) return;\n if (!isDisabledPrevious) return;\n if (!textareaRef.current) return;\n textareaRef.current.focus();\n }, [isDisabled, isDisabledPrevious, textareaProps]);\n return /* @__PURE__ */ jsx66(\n TextareaBase,\n {\n minRows: 1,\n placeholder: props.placeholder ?? `Message ${assistantNameContext}...`,\n disabled: isDisabled,\n onKeyDown: (e) => {\n if (e.key === \"Enter\" && !e.shiftKey) {\n e.preventDefault();\n if (isSubmitDisabled) return;\n e.currentTarget.form?.requestSubmit();\n }\n },\n ...textareaProps,\n ...props,\n ref: (e) => {\n textareaProps.ref(e);\n textareaRef.current = e;\n }\n }\n );\n};\nvar Control = (props) => /* @__PURE__ */ jsx66(Root5, { ...props, children: /* @__PURE__ */ jsx66(Input, {}) });\nControl.Root = Root5;\nControl.Input = Input;\n\n// src/components/threads/Thread/MessageForm/Field/Files/Preview.tsx\nimport {\n Flex as Flex21,\n Card as Card2,\n Spinner as Spinner2,\n Text as Text7,\n IconButton as IconButton6\n} from \"@radix-ui/themes\";\nimport {\n FileIcon as FileIcon2,\n Cross2Icon\n} from \"@radix-ui/react-icons\";\nimport { jsx as jsx67, jsxs as jsxs23 } from \"react/jsx-runtime\";\nvar Preview = (props) => {\n const { files, setFiles } = useMessageFormContext();\n if (!files.length) {\n return null;\n }\n return /* @__PURE__ */ jsx67(\n Flex21,\n {\n flexBasis: \"100%\",\n direction: \"column\",\n pb: \"2\",\n gap: \"1\",\n ...props,\n children: files.map((file) => /* @__PURE__ */ jsx67(\n Card2,\n {\n variant: \"ghost\",\n children: /* @__PURE__ */ jsxs23(\n Flex21,\n {\n align: \"center\",\n justify: \"between\",\n gap: \"1\",\n children: [\n /* @__PURE__ */ jsxs23(\n Flex21,\n {\n align: \"center\",\n gap: \"1\",\n flexShrink: \"1\",\n minWidth: \"0\",\n maxWidth: \"250px\",\n children: [\n /* @__PURE__ */ jsx67(\n Flex21,\n {\n flexShrink: \"0\",\n children: /* @__PURE__ */ jsx67(\n Spinner2,\n {\n loading: isOptimistic({ id: file.id }),\n children: /* @__PURE__ */ jsx67(FileIcon2, {})\n }\n )\n }\n ),\n /* @__PURE__ */ jsx67(\n Text7,\n {\n size: \"2\",\n truncate: true,\n wrap: \"nowrap\",\n children: file.filename\n }\n )\n ]\n }\n ),\n /* @__PURE__ */ jsx67(\n Flex21,\n {\n flexShrink: \"0\",\n children: /* @__PURE__ */ jsx67(\n IconButton6,\n {\n onClick: () => setFiles((prev) => prev.filter((prevFile) => prevFile.id !== file.id)),\n color: \"gray\",\n variant: \"ghost\",\n size: \"1\",\n children: /* @__PURE__ */ jsx67(Cross2Icon, {})\n }\n )\n }\n )\n ]\n }\n )\n },\n file.id\n ))\n }\n );\n};\n\n// src/components/threads/Thread/MessageForm/Field/Files/Control.tsx\nimport { useCallback as useCallback2 } from \"react\";\nimport { omit as omit4 } from \"radash\";\nimport dayjs2 from \"dayjs\";\nimport {\n FilePlusIcon\n} from \"@radix-ui/react-icons\";\nimport {\n IconButton as IconButton7,\n Flex as Flex22\n} from \"@radix-ui/themes\";\n\n// src/hooks/files/useCreateFile/index.ts\nimport {\n useMutation as useMutation2,\n useQueryClient as useQueryClient6\n} from \"@tanstack/react-query\";\n\n// src/hooks/files/useCreateFile/lib/mutationOptions/mutationFn/body/formData.ts\nvar formData = (variables) => {\n const data2 = new FormData();\n for (const key2 in variables) {\n data2.append(key2, variables[key2]);\n }\n return data2;\n};\n\n// src/hooks/files/useCreateFile/lib/mutationOptions/mutationFn/body/index.ts\nvar body2 = ({\n variables,\n superinterfaceContext\n}) => {\n if (variables.threadId) return formData(variables);\n if (!variables.assistantId) return formData(variables);\n if (!superinterfaceContext.threadIdStorageOptions?.get) return formData(variables);\n const threadId = superinterfaceContext.threadIdStorageOptions.get({ assistantId: variables.assistantId });\n if (!threadId) return formData(variables);\n return formData({\n ...variables,\n threadId\n });\n};\n\n// src/hooks/files/useCreateFile/lib/mutationOptions/mutationFn/index.ts\nvar mutationFn2 = ({\n superinterfaceContext,\n queryClient,\n threadContext\n}) => async (variables) => {\n const response = await fetch(`${superinterfaceContext.baseUrl}/files`, {\n method: \"POST\",\n body: body2({\n variables,\n superinterfaceContext\n })\n });\n const result = await response.json();\n return result;\n};\n\n// src/hooks/files/useCreateFile/lib/mutationOptions/index.ts\nvar mutationOptions2 = ({\n queryClient,\n threadContext,\n superinterfaceContext,\n onError\n}) => {\n const mutationKey = [\"createFile\", threadContext.variables];\n return {\n mutationFn: mutationFn2({\n queryClient,\n superinterfaceContext,\n threadContext\n }),\n onError,\n ...threadContext.defaultOptions.mutations,\n ...queryClient.getMutationDefaults(mutationKey),\n mutationKey\n };\n};\n\n// src/hooks/files/useCreateFile/index.ts\nvar useCreateFile = ({\n onError = () => {\n }\n} = {\n onError: () => {\n }\n}) => {\n const queryClient = useQueryClient6();\n const superinterfaceContext = useSuperinterfaceContext();\n const threadContext = useSuperinterfaceContext();\n const props = useMutation2(mutationOptions2({\n queryClient,\n threadContext,\n superinterfaceContext,\n onError\n }));\n return {\n ...props,\n createFile: (...args) => {\n const [firstArg, ...restArgs] = args;\n return props.mutateAsync({\n ...threadContext.variables,\n ...firstArg\n }, ...restArgs);\n }\n };\n};\n\n// src/components/threads/Thread/MessageForm/Field/Files/Control.tsx\nimport { jsx as jsx68, jsxs as jsxs24 } from \"react/jsx-runtime\";\nvar accept = `.c,text/x-c,\n.cs,text/x-csharp,\n.cpp,text/x-c++,\n.doc,application/msword,\n.docx,application/vnd.openxmlformats-officedocument.wordprocessingml.document,\n.html,text/html,\n.java,text/x-java,\n.json,application/json,\n.md,text/markdown,\n.pdf,application/pdf,\n.php,text/x-php,\n.pptx,application/vnd.openxmlformats-officedocument.presentationml.presentation,\n.py,text/x-python,\n.py,text/x-script.python,\n.rb,text/x-ruby,\n.tex,text/x-tex,\n.txt,text/plain,\n.css,text/css,\n.js,text/javascript,\n.sh,application/x-sh,\n.ts,application/typescript`;\nvar Control2 = (props) => {\n const { isDisabled, isLoading, setFiles } = useMessageFormContext();\n const { createFile } = useCreateFile();\n const { addToast } = useToasts();\n const onChange = useCallback2(async (event) => {\n const fileObjects = event.target.files;\n if (!fileObjects) return;\n const newFiles = Array.from(fileObjects).map((fileObject) => ({\n id: optimisticId(),\n filename: fileObject.name,\n object: \"file\",\n purpose: \"assistants\",\n created_at: dayjs2().unix(),\n bytes: fileObject.size,\n status: \"processed\",\n fileObject\n }));\n setFiles((prev) => [\n ...prev,\n ...newFiles.map((file) => omit4(file, [\"fileObject\"]))\n ]);\n for await (const newFile of newFiles) {\n await createFile(\n {\n file: newFile.fileObject\n },\n {\n onSuccess: ({\n file\n }) => setFiles((prev) => [\n ...prev.filter((prevFile) => prevFile.id !== newFile.id),\n file\n ]),\n onError: () => {\n addToast({ type: \"error\", message: \"Could not upload file. Please try again.\" });\n setFiles((prev) => prev.filter((prevFile) => prevFile.id !== newFile.id));\n }\n }\n );\n }\n }, [addToast, createFile, setFiles]);\n return /* @__PURE__ */ jsx68(\n Flex22,\n {\n pt: \"2\",\n pr: \"2\",\n flexGrow: \"0\",\n ...props,\n children: /* @__PURE__ */ jsxs24(\n IconButton7,\n {\n type: \"button\",\n variant: \"ghost\",\n color: \"gray\",\n disabled: isDisabled || isLoading,\n style: {\n position: \"relative\",\n overflow: \"hidden\"\n },\n children: [\n /* @__PURE__ */ jsx68(FilePlusIcon, {}),\n /* @__PURE__ */ jsx68(\n \"input\",\n {\n type: \"file\",\n multiple: true,\n accept,\n onChange,\n style: {\n cursor: \"pointer\",\n position: \"absolute\",\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n opacity: 0\n }\n }\n )\n ]\n }\n )\n }\n );\n};\n\n// src/components/threads/Thread/MessageForm/Field/Files/index.tsx\nvar Files = {\n Preview,\n Control: Control2\n};\n\n// src/components/threads/Thread/MessageForm/Field/index.tsx\nimport { jsx as jsx69 } from \"react/jsx-runtime\";\nvar Root6 = ({\n children,\n className,\n style\n}) => {\n const {\n formState: {\n errors\n }\n } = useFormContext2();\n return /* @__PURE__ */ jsx69(\n RadixContainer,\n {\n size: \"2\",\n flexGrow: \"0\",\n className,\n style,\n children: /* @__PURE__ */ jsx69(\n Flex23,\n {\n direction: \"column\",\n flexShrink: \"0\",\n children: /* @__PURE__ */ jsx69(\n Flex23,\n {\n direction: \"column\",\n flexShrink: \"0\",\n children: /* @__PURE__ */ jsx69(\n Flex23,\n {\n style: {\n borderRadius: \"var(--radius-2)\",\n borderWidth: \"1px\",\n borderStyle: \"solid\",\n borderColor: errors.content ? \"var(--red-9)\" : \"var(--gray-5)\",\n ...errors.content ? { backgroundColor: \"var(--red-2)\" } : {}\n },\n p: \"2\",\n pl: \"3\",\n wrap: \"wrap\",\n children\n }\n )\n }\n )\n }\n )\n }\n );\n};\nvar Field = {\n Root: Root6,\n Control,\n Files\n};\n\n// src/components/threads/Thread/MessageForm/index.tsx\nimport { jsx as jsx70, jsxs as jsxs25 } from \"react/jsx-runtime\";\nvar MessageForm = (props) => /* @__PURE__ */ jsx70(Root4, { ...props, children: /* @__PURE__ */ jsxs25(Field.Root, { children: [\n /* @__PURE__ */ jsx70(Field.Control, {}),\n /* @__PURE__ */ jsx70(Submit, {})\n] }) });\nMessageForm.Root = Root4;\nMessageForm.Field = Field;\nMessageForm.Submit = Submit;\n\n// src/components/threads/Thread/Root/index.tsx\nimport { Flex as Flex25 } from \"@radix-ui/themes\";\n\n// src/components/threads/Thread/Provider/index.tsx\nvar Provider2 = SuperinterfaceProvider;\n\n// src/components/toasts/ToastsProvider/index.tsx\nimport { useState as useState4, useCallback as useCallback3 } from \"react\";\nimport * as Toast2 from \"@radix-ui/react-toast\";\n\n// src/components/toasts/ToastsProvider/CustomToast.tsx\nimport * as Toast from \"@radix-ui/react-toast\";\nimport {\n Card as Card3,\n Text as Text8,\n Flex as Flex24\n} from \"@radix-ui/themes\";\nimport {\n CheckCircledIcon as CheckCircledIcon2,\n CrossCircledIcon\n} from \"@radix-ui/react-icons\";\nimport { jsx as jsx71, jsxs as jsxs26 } from \"react/jsx-runtime\";\nvar CustomToast = ({\n toast\n}) => /* @__PURE__ */ jsx71(Toast.Root, { children: /* @__PURE__ */ jsx71(Card3, { children: /* @__PURE__ */ jsx71(Toast.Title, { children: /* @__PURE__ */ jsxs26(Flex24, { children: [\n /* @__PURE__ */ jsx71(\n Flex24,\n {\n pr: \"2\",\n height: \"14px\",\n align: \"center\",\n children: toast.type === \"success\" ? /* @__PURE__ */ jsx71(\n CheckCircledIcon2,\n {\n color: \"var(--accent-9)\"\n }\n ) : /* @__PURE__ */ jsx71(\n CrossCircledIcon,\n {\n color: \"var(--red-9)\"\n }\n )\n }\n ),\n /* @__PURE__ */ jsx71(\n Text8,\n {\n weight: \"medium\",\n size: \"1\",\n children: toast.message\n }\n )\n] }) }) }) });\n\n// src/components/toasts/ToastsProvider/index.tsx\nimport { jsx as jsx72, jsxs as jsxs27 } from \"react/jsx-runtime\";\nvar ToastsProvider = ({\n children,\n bottom = 0\n}) => {\n const [toasts, setToasts] = useState4([]);\n const addToast = useCallback3((toast) => setToasts((prevToasts) => [\n ...prevToasts,\n toast\n ]), []);\n return /* @__PURE__ */ jsx72(\n ToastsContext.Provider,\n {\n value: {\n toasts,\n addToast\n },\n children: /* @__PURE__ */ jsxs27(Toast2.Provider, { children: [\n children,\n Array.from(toasts).map((toast, index) => /* @__PURE__ */ jsx72(\n CustomToast,\n {\n toast\n },\n index\n )),\n /* @__PURE__ */ jsx72(\n Toast2.Viewport,\n {\n style: {\n position: \"absolute\",\n bottom,\n right: 0,\n display: \"flex\",\n flexDirection: \"column\",\n padding: \"var(--space-5)\",\n gap: \"var(--space-3)\",\n width: \"390px\",\n maxWidth: \"100vw\",\n margin: 0,\n listStyle: \"none\",\n zIndex: 99999999999999,\n outline: \"none\"\n }\n }\n )\n ] })\n }\n );\n};\n\n// src/components/threads/Thread/Root/index.tsx\nimport { jsx as jsx73 } from \"react/jsx-runtime\";\nvar Root8 = ({\n children,\n style,\n className,\n ...rest\n}) => /* @__PURE__ */ jsx73(ToastsProvider, { bottom: \"var(--space-9)\", children: /* @__PURE__ */ jsx73(Provider2, { ...rest, children: /* @__PURE__ */ jsx73(\n Flex25,\n {\n direction: \"column\",\n flexGrow: \"1\",\n className,\n style,\n children\n }\n) }) });\n\n// src/components/threads/Thread/index.tsx\nimport { jsx as jsx74, jsxs as jsxs28 } from \"react/jsx-runtime\";\nvar Thread = (props) => /* @__PURE__ */ jsxs28(Root8, { ...props, children: [\n /* @__PURE__ */ jsx74(Messages, {}),\n /* @__PURE__ */ jsx74(MessageForm, {})\n] });\nThread.Root = Root8;\nThread.Messages = Messages;\nThread.MessageForm = MessageForm;\n\n// src/hooks/messages/useMessageContext/index.ts\nimport { useContext as useContext12 } from \"react\";\nvar useMessageContext = () => useContext12(MessageContext);\n\n// src/hooks/assistants/useAssistant/index.ts\nimport { useMemo as useMemo14 } from \"react\";\nimport {\n useQuery\n} from \"@tanstack/react-query\";\n\n// src/hooks/assistants/useAssistant/lib/queryOptions/index.ts\nimport { queryOptions as tanstackQueryOptions } from \"@tanstack/react-query\";\n\n// src/hooks/assistants/useAssistant/lib/queryOptions/queryFn.ts\nvar queryFn = ({\n superinterfaceContext\n}) => async ({\n queryKey\n}) => {\n const [_key, { assistantId }] = queryKey;\n const params = new URLSearchParams({\n publicApiKey: superinterfaceContext.variables.publicApiKey\n });\n return fetch(`${superinterfaceContext.baseUrl}/assistants/${assistantId}?${params}`).then(async (response) => {\n if (response.status !== 200) {\n try {\n const errorResponse = await response.json();\n throw new Error(errorResponse.error);\n } catch (error) {\n throw new Error(\"Failed to fetch\");\n }\n }\n return response.json();\n });\n};\n\n// src/hooks/assistants/useAssistant/lib/queryOptions/index.ts\nvar queryOptions2 = ({\n assistantId,\n superinterfaceContext\n}) => tanstackQueryOptions({\n queryKey: [\"assistants\", { assistantId }],\n queryFn: queryFn({ superinterfaceContext })\n});\n\n// src/hooks/assistants/useAssistant/index.ts\nvar useAssistant = ({\n assistantId\n}) => {\n const superinterfaceContext = useSuperinterfaceContext();\n const props = useQuery(queryOptions2({\n assistantId,\n superinterfaceContext\n }));\n return useMemo14(() => ({\n ...props,\n assistant: props.data ? props.data.assistant : null\n }), [props]);\n};\n\n// src/components/threads/ThreadDialog/Provider/index.tsx\nimport { useState as useState5 } from \"react\";\n\n// src/contexts/threads/ThreadDialogContext/index.ts\nimport { createContext as createContext11 } from \"react\";\nvar ThreadDialogContext = createContext11({\n isOpen: false,\n setIsOpen: () => {\n }\n});\n\n// src/hooks/threads/useThreadDialogContext/index.ts\nimport { useContext as useContext13 } from \"react\";\nvar useThreadDialogContext = () => useContext13(ThreadDialogContext);\n\n// src/components/threads/ThreadDialog/Provider/index.tsx\nimport { jsx as jsx75 } from \"react/jsx-runtime\";\nvar Provider4 = ({\n children\n}) => {\n const threadDialogContext = useThreadDialogContext();\n const [isOpen, setIsOpen] = useState5(threadDialogContext.isOpen);\n return /* @__PURE__ */ jsx75(\n ThreadDialogContext.Provider,\n {\n value: {\n isOpen,\n setIsOpen\n },\n children\n }\n );\n};\n\n// src/components/threads/ThreadDialog/Root/index.tsx\nimport { jsx as jsx76 } from \"react/jsx-runtime\";\nvar Root9 = ({\n children\n}) => /* @__PURE__ */ jsx76(Provider4, { children });\n\n// src/components/threads/ThreadDialog/Trigger/index.tsx\nimport {\n Flex as Flex26\n} from \"@radix-ui/themes\";\n\n// src/components/threads/ThreadDialog/Trigger/Button.tsx\nimport {\n IconButton as IconButton8\n} from \"@radix-ui/themes\";\nimport {\n ChatBubbleIcon\n} from \"@radix-ui/react-icons\";\nimport { jsx as jsx77 } from \"react/jsx-runtime\";\nvar Button4 = (props) => /* @__PURE__ */ jsx77(\n IconButton8,\n {\n size: \"4\",\n radius: \"full\",\n ...props,\n children: /* @__PURE__ */ jsx77(ChatBubbleIcon, {})\n }\n);\n\n// src/components/threads/ThreadDialog/Trigger/index.tsx\nimport { jsx as jsx78 } from \"react/jsx-runtime\";\nvar Root10 = ({\n children,\n style,\n className\n}) => {\n const { setIsOpen, isOpen } = useThreadDialogContext();\n return /* @__PURE__ */ jsx78(\n Flex26,\n {\n display: {\n initial: isOpen ? \"none\" : \"flex\",\n sm: \"flex\"\n },\n onClick: () => setIsOpen((prev) => !prev),\n direction: \"column\",\n flexShrink: \"0\",\n justify: \"end\",\n align: \"end\",\n position: \"fixed\",\n bottom: \"24px\",\n right: \"24px\",\n className,\n style: {\n zIndex: 9999999999,\n ...style ?? {}\n },\n children\n }\n );\n};\nvar Trigger = (args) => /* @__PURE__ */ jsx78(Root10, { ...args, children: /* @__PURE__ */ jsx78(Button4, {}) });\nTrigger.Root = Root10;\nTrigger.Button = Button4;\n\n// src/components/threads/ThreadDialog/Content/index.tsx\nimport {\n Card as Card4,\n Inset as Inset2,\n Flex as Flex28\n} from \"@radix-ui/themes\";\n\n// src/components/threads/ThreadDialog/Close/index.tsx\nimport {\n Cross1Icon\n} from \"@radix-ui/react-icons\";\nimport {\n IconButton as IconButton9,\n Flex as Flex27\n} from \"@radix-ui/themes\";\nimport { jsx as jsx79 } from \"react/jsx-runtime\";\nvar Close = () => {\n const { setIsOpen, isOpen } = useThreadDialogContext();\n return /* @__PURE__ */ jsx79(\n Flex27,\n {\n display: {\n initial: isOpen ? \"flex\" : \"none\",\n sm: \"none\"\n },\n onClick: () => setIsOpen((prev) => !prev),\n direction: \"column\",\n flexShrink: \"0\",\n justify: \"end\",\n align: \"end\",\n position: \"absolute\",\n top: \"24px\",\n right: \"24px\",\n style: {\n zIndex: 9999999999\n },\n children: /* @__PURE__ */ jsx79(\n IconButton9,\n {\n size: \"2\",\n variant: \"soft\",\n children: /* @__PURE__ */ jsx79(Cross1Icon, {})\n }\n )\n }\n );\n};\n\n// src/components/threads/ThreadDialog/Content/index.tsx\nimport { jsx as jsx80, jsxs as jsxs29 } from \"react/jsx-runtime\";\nvar Root11 = ({\n children,\n className,\n style\n}) => {\n const { isOpen } = useThreadDialogContext();\n if (!isOpen) return null;\n return /* @__PURE__ */ jsx80(\n Flex28,\n {\n className,\n direction: \"column\",\n justify: \"end\",\n position: \"fixed\",\n bottom: {\n initial: \"0\",\n sm: \"72px\"\n },\n right: {\n initial: \"0\",\n sm: \"24px\"\n },\n maxHeight: {\n initial: void 0,\n sm: \"720px\"\n },\n maxWidth: {\n initial: void 0,\n sm: \"400px\"\n },\n width: \"100%\",\n height: {\n initial: \"100%\",\n sm: \"calc(100% - 96px)\"\n },\n style: {\n zIndex: 9999999999,\n ...style\n },\n children: /* @__PURE__ */ jsxs29(\n Card4,\n {\n mb: {\n initial: void 0,\n sm: \"3\"\n },\n style: {\n position: \"relative\",\n display: \"flex\",\n flexGrow: 1\n },\n children: [\n /* @__PURE__ */ jsx80(\n Inset2,\n {\n clip: \"padding-box\",\n side: \"all\",\n pb: \"current\",\n style: {\n display: \"flex\",\n flexGrow: 1\n },\n children\n }\n ),\n /* @__PURE__ */ jsx80(Close, {})\n ]\n }\n )\n }\n );\n};\nvar Messages2 = ({\n className,\n style\n}) => /* @__PURE__ */ jsx80(\n Thread.Messages,\n {\n className,\n style: {\n paddingTop: \"var(--space-5)\",\n paddingRight: \"var(--space-5)\",\n paddingLeft: \"var(--space-5)\",\n ...style\n }\n }\n);\nvar FormContainer = ({\n children,\n className,\n style\n}) => /* @__PURE__ */ jsx80(\n Flex28,\n {\n direction: \"column\",\n pl: \"5\",\n pr: \"5\",\n pb: \"3\",\n flexShrink: \"0\",\n className,\n style,\n children\n }\n);\nvar Content7 = (props) => /* @__PURE__ */ jsx80(Root11, { ...props, children: /* @__PURE__ */ jsxs29(Thread.Root, { children: [\n /* @__PURE__ */ jsx80(Messages2, {}),\n /* @__PURE__ */ jsx80(FormContainer, { children: /* @__PURE__ */ jsx80(Thread.MessageForm, {}) })\n] }) });\nContent7.Root = Root11;\nContent7.Messages = Messages2;\nContent7.FormContainer = FormContainer;\n\n// src/components/threads/ThreadDialog/index.tsx\nimport { jsx as jsx81, jsxs as jsxs30 } from \"react/jsx-runtime\";\nvar ThreadDialog = () => /* @__PURE__ */ jsxs30(Root9, { children: [\n /* @__PURE__ */ jsx81(Content7, {}),\n /* @__PURE__ */ jsx81(Trigger, {})\n] });\nThreadDialog.Root = Root9;\nThreadDialog.Trigger = Trigger;\nThreadDialog.Content = Content7;\n\n// src/components/threads/AudioThread/Root/index.tsx\nimport { Flex as Flex29 } from \"@radix-ui/themes\";\n\n// src/contexts/threads/AudioThreadContext/index.ts\nimport { createContext as createContext12 } from \"react\";\nvar AudioThreadContext = createContext12({\n status: \"idle\",\n recorderProps: {\n status: \"idle\",\n start: async () => {\n },\n stop: async () => {\n },\n pause: async () => {\n },\n resume: async () => {\n },\n visualizationAnalyser: null\n },\n // @ts-ignore-next-line\n messageAudioProps: {\n visualizationAnalyser: null,\n playing: false,\n paused: false,\n isReady: false,\n play: async () => {\n },\n pause: async () => {\n }\n }\n});\n\n// src/hooks/misc/usePermission/index.ts\nimport { useEffect as useEffect7, useState as useState6 } from \"react\";\n\n// src/hooks/misc/usePermission/util.ts\nvar noop = () => {\n};\nfunction on(obj, ...args) {\n if (obj && obj.addEventListener) {\n obj.addEventListener(...args);\n }\n}\nfunction off(obj, ...args) {\n if (obj && obj.removeEventListener) {\n obj.removeEventListener(...args);\n }\n}\n\n// src/hooks/misc/usePermission/index.ts\nvar usePermission = (permissionDesc) => {\n const [state, setState] = useState6(\"\");\n useEffect7(() => {\n let mounted = true;\n let permissionStatus = null;\n const onChange = () => {\n if (!mounted) {\n return;\n }\n setState(() => permissionStatus?.state ?? \"\");\n };\n navigator.permissions.query(permissionDesc).then((status) => {\n permissionStatus = status;\n on(permissionStatus, \"change\", onChange);\n onChange();\n }).catch(noop);\n return () => {\n permissionStatus && off(permissionStatus, \"change\", onChange);\n mounted = false;\n permissionStatus = null;\n };\n }, [permissionDesc]);\n return state;\n};\n\n// src/components/threads/AudioThread/Root/lib/blobToData.ts\nvar blobToData = (blob) => new Promise((resolve) => {\n const reader = new FileReader();\n reader.onloadend = () => resolve(reader.result);\n reader.readAsDataURL(blob);\n});\n\n// src/hooks/audioThreads/useStatus/index.ts\nimport { useMemo as useMemo15 } from \"react\";\nvar useStatus = ({\n messageAudioProps,\n recorderProps,\n createMessageProps\n}) => {\n const latestMessageProps = useLatestMessage();\n const status = useMemo15(() => {\n if (recorderProps.status === \"recording\") return \"recording\";\n if (createMessageProps.isPending) return \"creatingMessage\";\n if (messageAudioProps.paused || !messageAudioProps.isAudioPlayed) return \"playerPaused\";\n if (messageAudioProps.playing || messageAudioProps.isPending) return \"playing\";\n if (!messageAudioProps.isAudioPlayed && !messageAudioProps.isReady) return \"loading\";\n if (latestMessageProps.latestMessage?.status === \"in_progress\") return \"creatingMessage\";\n if (recorderProps.status === \"idle\") return \"idle\";\n if (recorderProps.status === \"paused\") return \"recorderPaused\";\n return \"loading\";\n }, [\n latestMessageProps,\n messageAudioProps,\n recorderProps,\n createMessageProps\n ]);\n return {\n status\n };\n};\n\n// src/hooks/audioThreads/useRecorder/index.ts\nimport dayjs3 from \"dayjs\";\nimport { useAudioCapture } from \"use-audio-capture\";\nimport { useMemo as useMemo16, useRef as useRef7, useState as useState7, useCallback as useCallback4, useEffect as useEffect9 } from \"react\";\nimport { useAudioPlayer } from \"react-use-audio-player\";\n\n// src/hooks/misc/useInterval.ts\nimport { useEffect as useEffect8, useRef as useRef6 } from \"react\";\nvar useInterval = (callback, delay) => {\n const savedCallback = useRef6(() => {\n });\n useEffect8(() => {\n savedCallback.current = callback;\n });\n useEffect8(() => {\n if (delay !== null) {\n const interval = setInterval(() => savedCallback.current(), delay || 0);\n return () => clearInterval(interval);\n }\n return void 0;\n }, [delay]);\n};\n\n// src/hooks/audioThreads/useRecorder/index.ts\nvar useRecorder = ({\n isStopOnSilence,\n onStart,\n onStop\n}) => {\n const [silenceStart, setSilenceStart] = useState7(null);\n const [noiseStart, setNoiseStart] = useState7(null);\n const [mediaStream, setMediaStream] = useState7(null);\n const [status, setStatus] = useState7(\"idle\");\n const startAudioPlayer = useAudioPlayer();\n const endAudioPlayer = useAudioPlayer();\n const [isLoaded, setIsLoaded] = useState7(false);\n useEffect9(() => {\n if (isLoaded) return;\n setIsLoaded(true);\n }, [isLoaded, startAudioPlayer, endAudioPlayer]);\n const audioCaptureProps = useAudioCapture({\n onStart: (event, opts) => {\n setStatus(\"recording\");\n setMediaStream(opts.mediaStream);\n isInited.current = false;\n if (onStart) onStart(event, opts);\n setSilenceStart(null);\n setNoiseStart(null);\n },\n onStop: async (...args) => {\n setStatus(\"stopped\");\n if (onStop) await onStop(...args);\n setSilenceStart(null);\n setNoiseStart(null);\n },\n onPause: () => {\n setStatus(\"paused\");\n setSilenceStart(null);\n setNoiseStart(null);\n },\n onResume: () => {\n setStatus(\"recording\");\n setSilenceStart(null);\n setNoiseStart(null);\n }\n });\n const [audioEngine, setAudioEngine] = useState7(null);\n const isInited = useRef7(false);\n useEffect9(() => {\n if (!mediaStream) return;\n if (isInited.current) return;\n isInited.current = true;\n const audioContext = new AudioContext();\n setAudioEngine({\n source: audioContext.createMediaStreamSource(mediaStream),\n audioContext\n });\n }, [isInited, mediaStream]);\n const visualizationAnalyser = useMemo16(() => {\n if (!audioEngine) return null;\n const result = audioEngine.audioContext.createAnalyser();\n audioEngine.source.connect(result);\n return result;\n }, [audioEngine]);\n const silenceAnalyser = useMemo16(() => {\n if (!audioEngine) return null;\n const result = audioEngine.audioContext.createAnalyser();\n result.minDecibels = -60;\n audioEngine.source.connect(result);\n return result;\n }, [audioEngine]);\n const handleSilence = useCallback4(() => {\n if (!silenceAnalyser) return;\n const frequencyData = new Uint8Array(silenceAnalyser.frequencyBinCount);\n silenceAnalyser.getByteFrequencyData(frequencyData);\n const isSilent = frequencyData.every((f) => f === 0);\n setSilenceStart((silenceStart2) => {\n if (isSilent) return silenceStart2 || dayjs3();\n return null;\n });\n setNoiseStart((noiseStart2) => {\n if (isSilent) return noiseStart2;\n return noiseStart2 || dayjs3();\n });\n requestAnimationFrame(() => handleSilence());\n }, [silenceAnalyser, setNoiseStart, setSilenceStart]);\n useEffect9(() => {\n if (!isStopOnSilence) return;\n requestAnimationFrame(() => handleSilence());\n }, [handleSilence, isStopOnSilence]);\n useInterval(() => {\n if (!isStopOnSilence) return;\n if (status !== \"recording\") return;\n if (!silenceStart) return;\n if (!noiseStart) return;\n if (!silenceStart.isBefore(dayjs3().subtract(1.5, \"second\"))) return;\n audioCaptureProps.stop();\n }, 300);\n return {\n ...audioCaptureProps,\n status,\n visualizationAnalyser\n };\n};\n\n// src/hooks/audioThreads/useMessageAudio/index.ts\nimport { useMemo as useMemo17, useRef as useRef8, useState as useState8, useEffect as useEffect10 } from \"react\";\nimport nlp from \"compromise\";\nimport { Howler } from \"howler\";\nimport { useAudioPlayer as useAudioPlayer2 } from \"react-use-audio-player\";\n\n// src/hooks/audioThreads/useMessageAudio/lib/input.ts\nimport { isEmpty as isEmpty3 } from \"radash\";\nvar input = ({\n message\n}) => {\n const textContents = message.content.filter((c) => c.type === \"text\");\n const result = textContents.map((c) => c.text.value).join(\" \");\n if (isEmpty3(result)) return null;\n return result;\n};\n\n// src/hooks/audioThreads/useMessageAudio/lib/isHtmlAudioSupported.ts\nimport { detect } from \"detect-browser\";\nvar unsupportedNames = [\n \"safari\",\n \"ios\"\n];\nvar isHtmlAudioSupported = !unsupportedNames.includes(detect()?.name || \"\");\n\n// src/hooks/audioThreads/useMessageAudio/index.ts\nvar FULL_SENTENCE_REGEX = /[\\.?!]$/;\nvar getMessageSentences = ({\n messageId,\n input: input2\n}) => {\n const sentences = nlp(input2).sentences().json();\n return sentences.map((sentence) => ({\n messageId,\n sentence: sentence.text\n }));\n};\nvar useMessageAudio = ({\n onEnd\n}) => {\n const [isAudioPlayed, setIsAudioPlayed] = useState8(false);\n const [stoppedMessageIds, setStoppedMessageIds] = useState8([]);\n const [playedMessageSentences, setPlayedMessageSentences] = useState8([]);\n const audioPlayer = useAudioPlayer2();\n const nextAudioPlayer = useAudioPlayer2();\n const superinterfaceContext = useSuperinterfaceContext();\n const [isPlaying, setIsPlaying] = useState8(false);\n const latestMessageProps = useLatestMessage();\n const unplayedMessageSentences = useMemo17(() => {\n if (!latestMessageProps.latestMessage) return [];\n if (latestMessageProps.latestMessage.role !== \"assistant\") return [];\n if (stoppedMessageIds.includes(latestMessageProps.latestMessage.id)) return [];\n const input2 = input({\n message: latestMessageProps.latestMessage\n });\n if (!input2) return [];\n const messageSentences = getMessageSentences({\n messageId: latestMessageProps.latestMessage.id,\n input: input2\n });\n return messageSentences.filter((ms) => !playedMessageSentences.find((pms) => pms.messageId === ms.messageId && pms.sentence === ms.sentence));\n }, [latestMessageProps, playedMessageSentences]);\n useEffect10(() => {\n if (isPlaying) return;\n if (audioPlayer.playing) return;\n if (!latestMessageProps.latestMessage) return;\n if (latestMessageProps.latestMessage.role !== \"assistant\") return;\n const firstUnplayedMessageSentence = unplayedMessageSentences[0];\n if (!firstUnplayedMessageSentence) {\n return;\n }\n const isFullSentence = isOptimistic({ id: latestMessageProps.latestMessage.id }) || latestMessageProps.latestMessage.status !== \"in_progress\" || FULL_SENTENCE_REGEX.test(firstUnplayedMessageSentence.sentence);\n if (!isFullSentence) return;\n setIsPlaying(true);\n setPlayedMessageSentences((prev) => [...prev, firstUnplayedMessageSentence]);\n const searchParams = new URLSearchParams({\n input: firstUnplayedMessageSentence.sentence,\n ...superinterfaceContext.variables\n });\n audioPlayer.load(`${superinterfaceContext.baseUrl}/tts?${searchParams}`, {\n format: \"mp3\",\n autoplay: isAudioPlayed,\n html5: isHtmlAudioSupported,\n onplay: () => {\n setIsAudioPlayed(true);\n },\n onstop: () => {\n setStoppedMessageIds((prev) => [...prev, firstUnplayedMessageSentence.messageId]);\n setIsPlaying(false);\n },\n onload: () => {\n const nextUnplayedMessageSentence = unplayedMessageSentences[1];\n if (!nextUnplayedMessageSentence) return;\n const isNextFullSentence = FULL_SENTENCE_REGEX.test(nextUnplayedMessageSentence.sentence);\n if (!isNextFullSentence) return;\n const nextSearchParams = new URLSearchParams({\n input: nextUnplayedMessageSentence.sentence,\n ...superinterfaceContext.variables\n });\n nextAudioPlayer.load(`${superinterfaceContext.baseUrl}/tts?${nextSearchParams}`, {\n format: \"mp3\",\n autoplay: false,\n html5: isHtmlAudioSupported\n });\n },\n onend: () => {\n setIsPlaying(false);\n if (unplayedMessageSentences.length === 1 && latestMessageProps.latestMessage.status !== \"in_progress\") {\n onEnd();\n }\n }\n });\n }, [\n unplayedMessageSentences,\n isPlaying,\n superinterfaceContext,\n latestMessageProps,\n audioPlayer,\n nextAudioPlayer,\n playedMessageSentences,\n onEnd\n ]);\n useEffect10(() => {\n if (isHtmlAudioSupported) {\n if (!Howler?._howls[0]?._sounds[0]?._node) return;\n Howler._howls[0]._sounds[0]._node.crossOrigin = \"anonymous\";\n }\n }, [audioPlayer]);\n const [audioEngine, setAudioEngine] = useState8(null);\n const isAudioEngineInited = useRef8(false);\n useEffect10(() => {\n if (!audioPlayer.playing) return;\n if (isAudioEngineInited.current) return;\n isAudioEngineInited.current = true;\n if (isHtmlAudioSupported) {\n const audioContext = new AudioContext();\n setAudioEngine({\n // @ts-ignore-next-line\n source: audioContext.createMediaElementSource(Howler._howls[0]._sounds[0]._node),\n audioContext\n });\n } else {\n setAudioEngine({\n source: Howler.masterGain,\n audioContext: Howler.ctx\n });\n }\n }, [audioPlayer, isAudioEngineInited]);\n const visualizationAnalyser = useMemo17(() => {\n if (!audioEngine) return null;\n const result = audioEngine.audioContext.createAnalyser();\n audioEngine.source.connect(audioEngine.audioContext.destination);\n audioEngine.source.connect(result);\n return result;\n }, [audioEngine]);\n const isPending = useMemo17(() => isPlaying || unplayedMessageSentences.length > 0, [isPlaying, unplayedMessageSentences]);\n return {\n isPending,\n isAudioPlayed,\n ...audioPlayer,\n visualizationAnalyser\n };\n};\n\n// src/components/threads/AudioThread/Root/index.tsx\nimport {\n useQueryClient as useQueryClient7\n} from \"@tanstack/react-query\";\nimport { jsx as jsx82 } from \"react/jsx-runtime\";\nvar Content8 = ({\n children,\n className,\n style\n}) => {\n const { addToast } = useToasts();\n const queryClient = useQueryClient7();\n const threadContext = useSuperinterfaceContext();\n const createMessageProps = useCreateMessage({\n onError: (error) => {\n createMessageDefaultOnError({\n queryClient,\n addToast,\n threadContext\n })(error);\n recorderProps.start();\n }\n });\n const recorderProps = useRecorder({\n isStopOnSilence: true,\n onStart: async () => {\n },\n onStop: async (_event, chunks) => {\n const blob = new Blob(chunks, { type: chunks[0].type });\n const audioContent = await blobToData(blob);\n return createMessageProps.createMessage({\n // @ts-ignore-next-line\n audioContent\n });\n }\n });\n const microphonePermission = usePermission({ name: \"microphone\" });\n const messageAudioProps = useMessageAudio({\n onEnd: () => {\n if (microphonePermission === \"granted\") {\n recorderProps.start();\n }\n }\n });\n const { status } = useStatus({\n recorderProps,\n createMessageProps,\n messageAudioProps\n });\n return /* @__PURE__ */ jsx82(\n AudioThreadContext.Provider,\n {\n value: {\n status,\n recorderProps,\n messageAudioProps\n },\n children: /* @__PURE__ */ jsx82(\n Flex29,\n {\n direction: \"column\",\n flexGrow: \"1\",\n p: \"9\",\n className,\n style,\n children\n }\n )\n }\n );\n};\nvar Root12 = ({\n children,\n ...rest\n}) => /* @__PURE__ */ jsx82(ToastsProvider, { children: /* @__PURE__ */ jsx82(Content8, { ...rest, children }) });\n\n// src/components/threads/AudioThread/Visualization/index.tsx\nimport { useContext as useContext15, useState as useState10, useCallback as useCallback6, useEffect as useEffect12 } from \"react\";\nimport _9 from \"lodash\";\nimport { Flex as Flex31 } from \"@radix-ui/themes\";\n\n// src/hooks/threads/useAudioThreadContext/index.ts\nimport { useContext as useContext14 } from \"react\";\nvar useAudioThreadContext = () => useContext14(AudioThreadContext);\n\n// src/components/threads/AudioThread/BarsVisualizer/index.tsx\nimport _8 from \"lodash\";\nimport {\n Flex as Flex30,\n Grid\n} from \"@radix-ui/themes\";\nimport { useState as useState9, useEffect as useEffect11, useCallback as useCallback5 } from \"react\";\nimport { cluster } from \"radash\";\nimport { jsx as jsx83 } from \"react/jsx-runtime\";\nvar barCount = 4;\nvar BarsVisualizer = ({\n visualizationAnalyser,\n backgroundColor,\n height,\n barWidth\n}) => {\n const [barHeights, setBarHeights] = useState9([]);\n const draw = useCallback5(({ visualizationAnalyser: visualizationAnalyser2 }) => {\n if (!visualizationAnalyser2) {\n setBarHeights(Array(barCount).fill(0));\n return;\n }\n const frequencyData = new Uint8Array(visualizationAnalyser2.frequencyBinCount / 15);\n visualizationAnalyser2.getByteFrequencyData(frequencyData);\n const clusteredFrequencyData = cluster(frequencyData, frequencyData.length / barCount);\n setBarHeights(\n clusteredFrequencyData.map((frequencyDataCluster) => _8.mean(frequencyDataCluster) / 255 * 100)\n );\n requestAnimationFrame(() => draw({ visualizationAnalyser: visualizationAnalyser2 }));\n }, []);\n useEffect11(() => {\n draw({ visualizationAnalyser });\n }, [draw, visualizationAnalyser]);\n return /* @__PURE__ */ jsx83(\n Grid,\n {\n columns: `${barCount}`,\n gap: \"1\",\n width: \"auto\",\n style: {\n // TODO not sure why we need this\n gridTemplateColumns: \"repeat(4, minmax(0, 1fr))\"\n },\n children: barHeights.map((barHeight, index) => /* @__PURE__ */ jsx83(\n Flex30,\n {\n direction: \"column\",\n align: \"center\",\n justify: \"center\",\n height,\n children: /* @__PURE__ */ jsx83(\n Flex30,\n {\n minHeight: \"50%\",\n maxHeight: \"100%\",\n height: `${barHeight + 20}%`,\n width: barWidth,\n style: {\n backgroundColor,\n borderRadius: \"var(--radius-6)\"\n }\n }\n )\n },\n index\n ))\n }\n );\n};\n\n// src/components/threads/AudioThread/Visualization/index.tsx\nimport { jsx as jsx84, jsxs as jsxs31 } from \"react/jsx-runtime\";\nvar Visualization = (props) => {\n const audioThreadContext = useAudioThreadContext();\n const assistantNameContext = useContext15(AssistantNameContext);\n const [scale, setScale] = useState10(0);\n const draw = useCallback6(({ visualizationAnalyser }) => {\n if (!visualizationAnalyser) {\n setScale(1);\n return;\n }\n const frequencyData = new Uint8Array(visualizationAnalyser.frequencyBinCount / 15);\n visualizationAnalyser.getByteFrequencyData(frequencyData);\n setScale(1 + _9.mean(frequencyData) / 255 / 10);\n requestAnimationFrame(() => draw({ visualizationAnalyser }));\n }, []);\n useEffect12(() => {\n draw({ visualizationAnalyser: audioThreadContext.recorderProps.visualizationAnalyser });\n }, [draw, audioThreadContext]);\n return /* @__PURE__ */ jsxs31(\n Flex31,\n {\n direction: \"column\",\n align: \"center\",\n justify: \"center\",\n mb: \"3\",\n flexGrow: \"1\",\n ...props,\n children: [\n /* @__PURE__ */ jsx84(\n Flex31,\n {\n align: \"center\",\n justify: \"center\",\n height: \"200px\",\n width: \"200px\",\n style: {\n backgroundColor: audioThreadContext.status === \"playing\" ? \"var(--accent-4)\" : \"var(--gray-4)\",\n borderRadius: \"9999px\",\n scale\n },\n children: /* @__PURE__ */ jsx84(\n BarsVisualizer,\n {\n visualizationAnalyser: audioThreadContext.messageAudioProps.visualizationAnalyser,\n backgroundColor: audioThreadContext.status === \"playing\" ? \"var(--accent-11)\" : \"var(--gray-11)\",\n height: \"40px\",\n barWidth: \"24px\"\n }\n )\n }\n ),\n /* @__PURE__ */ jsxs31(\n Flex31,\n {\n ml: \"-22.5px\",\n gap: \"3\",\n pt: \"5\",\n children: [\n /* @__PURE__ */ jsx84(AssistantAvatar, {}),\n /* @__PURE__ */ jsx84(Name, { children: assistantNameContext })\n ]\n }\n )\n ]\n }\n );\n};\n\n// src/components/threads/AudioThread/Status/StatusMessages.tsx\nimport {\n Flex as Flex32,\n Text as Text9\n} from \"@radix-ui/themes\";\nimport { jsx as jsx85, jsxs as jsxs32 } from \"react/jsx-runtime\";\nvar html = ({ texts }) => `\n .status-messages-texts:after {\n content: '${texts[0]}';\n animation: texts ${texts.length * 5}s linear infinite;\n }\n\n @keyframes texts {\n ${texts.map((_10, i) => `\n ${i * 100 / texts.length}% {\n content: \"${texts[i]}\";\n }\n `).join(\"\")}\n }`;\nvar StatusMessages = ({\n texts,\n className,\n style\n}) => /* @__PURE__ */ jsxs32(\n Flex32,\n {\n justify: \"center\",\n pb: \"5\",\n className,\n style,\n children: [\n /* @__PURE__ */ jsx85(\n Text9,\n {\n size: \"2\",\n weight: \"regular\",\n color: \"gray\",\n className: \"status-messages-texts\"\n }\n ),\n /* @__PURE__ */ jsx85(\n \"style\",\n {\n dangerouslySetInnerHTML: {\n __html: html({ texts })\n }\n }\n )\n ]\n }\n);\n\n// src/components/threads/AudioThread/Status/index.tsx\nimport { jsx as jsx86 } from \"react/jsx-runtime\";\nvar Status = (props) => {\n const audioThreadContext = useAudioThreadContext();\n if (audioThreadContext.status === \"recording\") {\n return /* @__PURE__ */ jsx86(\n StatusMessages,\n {\n texts: [\n \"Start speaking\",\n \"Listening\",\n \"Finish speaking to send\",\n \"Click the button below to send manually\"\n ],\n ...props\n }\n );\n }\n if ([\"recorderPaused\", \"idle\", \"playerPaused\"].includes(audioThreadContext.status)) {\n return /* @__PURE__ */ jsx86(\n StatusMessages,\n {\n texts: [\n \"Click the button below to activate\"\n ],\n ...props\n }\n );\n }\n if (audioThreadContext.status === \"playing\") {\n return /* @__PURE__ */ jsx86(\n StatusMessages,\n {\n texts: [\n \"Click the button below to interrupt\"\n ],\n ...props\n }\n );\n }\n return /* @__PURE__ */ jsx86(\n StatusMessages,\n {\n texts: [\n \"Thinking\"\n ],\n ...props\n }\n );\n};\n\n// src/components/threads/AudioThread/Form/index.tsx\nimport {\n Flex as Flex34\n} from \"@radix-ui/themes\";\n\n// src/components/threads/AudioThread/Form/MicIcon.tsx\nimport { jsx as jsx87 } from \"react/jsx-runtime\";\nvar MicIcon = (props) => /* @__PURE__ */ jsx87(\n \"svg\",\n {\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n stroke: \"currentColor\",\n strokeWidth: 0,\n viewBox: \"0 0 384 512\",\n height: \"15\",\n width: \"15\",\n ...props,\n children: /* @__PURE__ */ jsx87(\n \"path\",\n {\n stroke: \"none\",\n d: \"M192 0c-53 0-96 43-96 96v160c0 53 43 96 96 96s96-43 96-96V96c0-53-43-96-96-96zM64 216c0-13.3-10.7-24-24-24s-24 10.7-24 24v40c0 89.1 66.2 162.7 152 174.4V464h-48c-13.3 0-24 10.7-24 24s10.7 24 24 24h144c13.3 0 24-10.7 24-24s-10.7-24-24-24h-48v-33.6c85.8-11.7 152-85.3 152-174.4v-40c0-13.3-10.7-24-24-24s-24 10.7-24 24v40c0 70.7-57.3 128-128 128S64 326.7 64 256v-40z\"\n }\n )\n }\n);\n\n// src/components/threads/AudioThread/Form/ActionButton/index.tsx\nimport {\n Flex as Flex33,\n IconButton as IconButton10\n} from \"@radix-ui/themes\";\nimport {\n StopIcon as StopIcon2,\n PauseIcon as PauseIcon2,\n ArrowUpIcon as ArrowUpIcon3,\n ResumeIcon\n} from \"@radix-ui/react-icons\";\nimport { jsx as jsx88, jsxs as jsxs33 } from \"react/jsx-runtime\";\nvar ActionButton = () => {\n const audioThreadContext = useAudioThreadContext();\n const superinterfaceContext = useSuperinterfaceContext();\n if (audioThreadContext.status === \"recording\") {\n return /* @__PURE__ */ jsxs33(\n Flex33,\n {\n align: \"center\",\n children: [\n /* @__PURE__ */ jsx88(\n Flex33,\n {\n mr: \"3\",\n ml: \"-7\",\n children: /* @__PURE__ */ jsx88(\n IconButton10,\n {\n onClick: audioThreadContext.recorderProps.pause,\n color: \"gray\",\n variant: \"soft\",\n size: \"1\",\n children: /* @__PURE__ */ jsx88(PauseIcon2, {})\n }\n )\n }\n ),\n /* @__PURE__ */ jsx88(\n IconButton10,\n {\n onClick: audioThreadContext.recorderProps.stop,\n highContrast: true,\n variant: \"soft\",\n size: \"4\",\n children: /* @__PURE__ */ jsx88(ArrowUpIcon3, {})\n }\n )\n ]\n }\n );\n }\n if (audioThreadContext.status === \"recorderPaused\") {\n return /* @__PURE__ */ jsx88(\n IconButton10,\n {\n onClick: audioThreadContext.recorderProps.resume,\n color: \"red\",\n size: \"4\",\n children: /* @__PURE__ */ jsx88(ResumeIcon, {})\n }\n );\n }\n if (audioThreadContext.status === \"idle\") {\n return /* @__PURE__ */ jsx88(\n IconButton10,\n {\n onClick: () => audioThreadContext.recorderProps.start(),\n size: \"4\",\n color: \"red\"\n }\n );\n }\n if (audioThreadContext.status === \"playing\") {\n return /* @__PURE__ */ jsx88(\n IconButton10,\n {\n onClick: () => {\n audioThreadContext.messageAudioProps.stop();\n superinterfaceContext.createMessageAbortControllerRef.current?.abort();\n audioThreadContext.recorderProps.start();\n },\n size: \"4\",\n color: \"gray\",\n variant: \"soft\",\n children: /* @__PURE__ */ jsx88(StopIcon2, {})\n }\n );\n }\n if (audioThreadContext.status === \"playerPaused\") {\n return /* @__PURE__ */ jsx88(\n IconButton10,\n {\n onClick: () => audioThreadContext.messageAudioProps.play(),\n size: \"4\",\n children: /* @__PURE__ */ jsx88(ResumeIcon, {})\n }\n );\n }\n return /* @__PURE__ */ jsx88(\n IconButton10,\n {\n size: \"4\",\n variant: \"soft\",\n disabled: true\n }\n );\n};\n\n// src/components/threads/AudioThread/Form/index.tsx\nimport { jsx as jsx89, jsxs as jsxs34 } from \"react/jsx-runtime\";\nvar Form = (props) => {\n const audioThreadContext = useAudioThreadContext();\n return /* @__PURE__ */ jsxs34(\n Flex34,\n {\n direction: \"column\",\n align: \"center\",\n ...props,\n children: [\n /* @__PURE__ */ jsxs34(\n Flex34,\n {\n pb: \"3\",\n align: \"center\",\n children: [\n /* @__PURE__ */ jsx89(\n Flex34,\n {\n ml: \"-22.5px\",\n mr: \"2\",\n align: \"center\",\n children: /* @__PURE__ */ jsx89(\n MicIcon,\n {\n style: {\n color: audioThreadContext.status === \"recording\" ? \"var(--accent-11)\" : \"var(--gray-11)\"\n }\n }\n )\n }\n ),\n /* @__PURE__ */ jsx89(\n Flex34,\n {\n px: \"2\",\n py: \"1\",\n style: {\n backgroundColor: audioThreadContext.status === \"recording\" ? \"var(--accent-4)\" : \"var(--gray-4)\",\n borderRadius: \"var(--radius-6)\"\n },\n children: /* @__PURE__ */ jsx89(\n BarsVisualizer,\n {\n visualizationAnalyser: audioThreadContext.recorderProps.visualizationAnalyser,\n backgroundColor: audioThreadContext.status === \"recording\" ? \"var(--accent-11)\" : \"var(--gray-11)\",\n height: \"20px\",\n barWidth: \"12px\"\n }\n )\n }\n )\n ]\n }\n ),\n /* @__PURE__ */ jsx89(ActionButton, {})\n ]\n }\n );\n};\n\n// src/components/threads/AudioThread/index.tsx\nimport { jsx as jsx90, jsxs as jsxs35 } from \"react/jsx-runtime\";\nvar AudioThread = (props) => /* @__PURE__ */ jsxs35(Root12, { ...props, children: [\n /* @__PURE__ */ jsx90(Visualization, {}),\n /* @__PURE__ */ jsx90(Status, {}),\n /* @__PURE__ */ jsx90(Form, {})\n] });\nAudioThread.Root = Root12;\nAudioThread.Visualization = Visualization;\nAudioThread.Status = Status;\nAudioThread.Form = Form;\n\n// src/components/threads/AudioThreadDialog/index.tsx\nimport { jsx as jsx91, jsxs as jsxs36 } from \"react/jsx-runtime\";\nvar AudioThreadDialog = (props) => /* @__PURE__ */ jsxs36(Root9, { ...props, children: [\n /* @__PURE__ */ jsx91(Content7.Root, { children: /* @__PURE__ */ jsx91(AudioThread, {}) }),\n /* @__PURE__ */ jsx91(Trigger, {})\n] });\nAudioThreadDialog.Root = Root9;\nAudioThreadDialog.Trigger = Trigger;\nAudioThreadDialog.Content = Content7;\n\n// src/components/markdown/MarkdownProvider/index.tsx\nimport { useMemo as useMemo18 } from \"react\";\nimport { jsx as jsx92 } from \"react/jsx-runtime\";\nvar MarkdownProvider = ({\n children,\n ...rest\n}) => {\n const prevMarkdownContext = useMarkdownContext();\n const value = useMemo18(() => merge(prevMarkdownContext, rest), [rest, prevMarkdownContext]);\n return /* @__PURE__ */ jsx92(\n MarkdownContext.Provider,\n {\n value,\n children\n }\n );\n};\n\n// src/components/avatars/Avatar.tsx\nimport { Avatar as RadixAvatar } from \"@radix-ui/themes\";\n\n// src/components/imageAvatars/ImageAvatar/index.tsx\nimport { Avatar as Avatar4 } from \"@radix-ui/themes\";\n\n// src/components/imageAvatars/ImageAvatar/lib/optimizedSrc/path.ts\nvar width = ({\n size\n}) => {\n if (size === \"1\") {\n return 48;\n } else if (size === \"2\") {\n return 64;\n } else if (size === \"3\") {\n return 96;\n } else if (size === \"4\") {\n return 96;\n } else if (size === \"5\") {\n return 128;\n } else if (size === \"6\") {\n return 256;\n } else if (size === \"7\") {\n return 256;\n } else if (size === \"8\") {\n return 256;\n } else if (size === \"9\") {\n return 384;\n }\n return 384;\n};\nvar path = ({\n imageAvatar,\n size\n}) => `/_next/image?url=${encodeURIComponent(imageAvatar.url)}&w=${width({ size })}&q=95`;\n\n// src/components/imageAvatars/ImageAvatar/lib/optimizedSrc/host.ts\nvar host = ({\n superinterfaceContext\n}) => {\n if (!superinterfaceContext.baseUrl) return \"\";\n if (!/^https?:\\/\\//i.test(superinterfaceContext.baseUrl)) return \"\";\n return new URL(superinterfaceContext.baseUrl).origin;\n};\n\n// src/components/imageAvatars/ImageAvatar/lib/optimizedSrc/index.ts\nvar optimizedSrc = ({\n imageAvatar,\n size,\n superinterfaceContext\n}) => {\n if (!imageAvatar.url) return \"\";\n if (imageAvatar.url.endsWith(\".svg\")) return imageAvatar.url;\n return `${host({ superinterfaceContext })}${path({ imageAvatar, size })}`;\n};\n\n// src/components/imageAvatars/ImageAvatar/index.tsx\nimport { jsx as jsx93 } from \"react/jsx-runtime\";\nvar ImageAvatar = ({\n imageAvatar,\n size,\n className,\n style\n}) => {\n const superinterfaceContext = useSuperinterfaceContext();\n return /* @__PURE__ */ jsx93(\n Avatar4,\n {\n className,\n style,\n fallback: \"\",\n src: optimizedSrc({ imageAvatar, size, superinterfaceContext }),\n size\n }\n );\n};\n\n// src/components/iconAvatars/IconAvatar.tsx\nimport { useMemo as useMemo19 } from \"react\";\nimport { Avatar as Avatar5 } from \"@radix-ui/themes\";\n\n// src/lib/iconAvatars/iconAvatarComponents.ts\nimport {\n BackpackIcon,\n RocketIcon,\n MagicWandIcon,\n CubeIcon,\n TargetIcon,\n DiscIcon,\n GlobeIcon,\n StarIcon,\n LightningBoltIcon as LightningBoltIcon2,\n FaceIcon,\n PersonIcon as PersonIcon2,\n HeartIcon\n} from \"@radix-ui/react-icons\";\nvar iconAvatarComponents = {\n [\"BACKPACK\" /* BACKPACK */]: BackpackIcon,\n [\"ROCKET\" /* ROCKET */]: RocketIcon,\n [\"MAGIC_WAND\" /* MAGIC_WAND */]: MagicWandIcon,\n [\"CUBE\" /* CUBE */]: CubeIcon,\n [\"TARGET\" /* TARGET */]: TargetIcon,\n [\"DISC\" /* DISC */]: DiscIcon,\n [\"GLOBE\" /* GLOBE */]: GlobeIcon,\n [\"STAR\" /* STAR */]: StarIcon,\n [\"LIGHTNING_BOLT\" /* LIGHTNING_BOLT */]: LightningBoltIcon2,\n [\"FACE\" /* FACE */]: FaceIcon,\n [\"PERSON\" /* PERSON */]: PersonIcon2,\n [\"HEART\" /* HEART */]: HeartIcon\n};\n\n// src/components/iconAvatars/IconAvatar.tsx\nimport { jsx as jsx94 } from \"react/jsx-runtime\";\nvar IconAvatar = ({\n iconAvatar,\n size,\n className,\n style\n}) => {\n const Component = useMemo19(() => iconAvatarComponents[iconAvatar.name], [iconAvatar]);\n return /* @__PURE__ */ jsx94(\n Avatar5,\n {\n className,\n style,\n size,\n fallback: Component ? /* @__PURE__ */ jsx94(Component, {}) : \"\"\n }\n );\n};\n\n// src/components/avatars/Avatar.tsx\nimport { jsx as jsx95 } from \"react/jsx-runtime\";\nvar Avatar6 = ({\n avatar,\n size = \"1\",\n className,\n style\n}) => {\n if (avatar) {\n if (avatar.type === \"IMAGE\" /* IMAGE */ && avatar.imageAvatar) {\n return /* @__PURE__ */ jsx95(\n ImageAvatar,\n {\n imageAvatar: avatar.imageAvatar,\n size,\n className,\n style\n }\n );\n }\n if (avatar.type === \"ICON\" /* ICON */ && avatar.iconAvatar) {\n return /* @__PURE__ */ jsx95(\n IconAvatar,\n {\n iconAvatar: avatar.iconAvatar,\n size,\n className,\n style\n }\n );\n }\n }\n return /* @__PURE__ */ jsx95(\n RadixAvatar,\n {\n fallback: \"\",\n size,\n className,\n style\n }\n );\n};\n\n// src/components/components/ComponentsProvider.tsx\nimport { useMemo as useMemo20 } from \"react\";\n\n// src/hooks/components/useComponents.ts\nimport { useContext as useContext16 } from \"react\";\nvar useComponents = () => useContext16(ComponentsContext);\n\n// src/components/components/ComponentsProvider.tsx\nimport { jsx as jsx96 } from \"react/jsx-runtime\";\nvar ComponentsProvider = ({\n children,\n ...rest\n}) => {\n const prevComponents = useComponents();\n const value = useMemo20(() => merge(prevComponents, rest), [rest, prevComponents]);\n return /* @__PURE__ */ jsx96(\n ComponentsContext.Provider,\n {\n value,\n children\n }\n );\n};\n\n// src/components/assistants/AssistantProvider/index.tsx\nimport { jsx as jsx97 } from \"react/jsx-runtime\";\nvar AssistantProvider = ({\n children\n}) => {\n const superinterfaceContext = useSuperinterfaceContext();\n const { assistant } = useAssistant({\n assistantId: superinterfaceContext.variables.assistantId\n });\n return /* @__PURE__ */ jsx97(AssistantNameContext.Provider, { value: assistant?.name ?? \"\", children: /* @__PURE__ */ jsx97(\n AssistantAvatarContext.Provider,\n {\n value: /* @__PURE__ */ jsx97(Avatar6, { avatar: assistant?.avatar }),\n children\n }\n ) });\n};\nexport {\n AssistantAvatarContext,\n AssistantNameContext,\n AssistantProvider,\n AudioThread,\n AudioThreadDialog,\n Avatar6 as Avatar,\n ComponentsProvider,\n FunctionBase,\n FunctionComponentsContext,\n MarkdownContext,\n MarkdownProvider,\n RunStep,\n Suggestions,\n SuperinterfaceProvider,\n Thread,\n ThreadDialog,\n ThreadDialogContext,\n UserAvatarContext,\n useAssistant,\n useComponents,\n useCreateMessage,\n useIsMutatingMessage,\n useLatestMessage,\n useMarkdownContext,\n useMessageContext,\n useMessageFormContext,\n useMessages,\n useSuperinterfaceContext,\n useSuperinterfaceContext as useThreadContext,\n useThreadDialogContext\n};\n","import _ from 'lodash'\nimport { customizer } from './customizer'\n\n// @ts-ignore-next-line\nexport const merge = (obj, ...sources) =>\n _.mergeWith(_.cloneDeep(obj), ...sources, customizer)\n","import { detect } from 'detect-browser'\n\nconst unsupportedNames = [\n 'safari',\n 'ios',\n]\n\nexport const isHtmlAudioSupported = !unsupportedNames.includes(detect()?.name || '')\n","'use client'\nimport { useRef } from 'react'\nimport { MessagesPage } from '@/types'\nimport {\n InfiniteData,\n UseInfiniteQueryOptions,\n UseMutationOptions,\n} from '@tanstack/react-query'\nimport { merge } from '@/lib/misc/merge'\nimport { SuperinterfaceContext } from '@/contexts/core/SuperinterfaceContext'\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\nimport type { ThreadStorageOptions } from '@/types'\n\nexport type Args = {\n children: React.ReactNode\n baseUrl?: string\n variables?: {\n [key: string]: any\n }\n defaultOptions?: {\n queries?: UseInfiniteQueryOptions<InfiniteData<MessagesPage>>\n mutations?: UseMutationOptions\n }\n threadIdStorageOptions?: ThreadStorageOptions | null\n}\n\nexport const SuperinterfaceProvider = ({\n children,\n baseUrl,\n variables,\n defaultOptions,\n threadIdStorageOptions,\n}: Args) => {\n const superinterfaceContext = useSuperinterfaceContext()\n const createMessageAbortControllerRef = useRef<AbortController | null>(null)\n\n const value = merge(\n superinterfaceContext,\n {\n ...(baseUrl ? { baseUrl } : {}),\n ...(variables ? { variables } : {}),\n ...(defaultOptions ? { defaultOptions } : {}),\n ...(threadIdStorageOptions ? { threadIdStorageOptions } : {}),\n createMessageAbortControllerRef,\n }\n )\n\n return (\n <SuperinterfaceContext.Provider\n value={value}\n >\n {children}\n </SuperinterfaceContext.Provider>\n )\n}\n","import _ from 'lodash'\n\n// @ts-ignore-next-line\nexport const customizer = (objectValue, srcValue) => {\n if (!_.isArray(objectValue)) return\n\n return srcValue\n}\n","'use client'\n\nimport { createContext } from 'react'\nimport { baseUrl } from '@/lib/superinterfaceCloud/baseUrl'\nimport { cookieOptions } from '@/lib/threadIdStorage/cookieOptions'\nimport { localStorageOptions } from '@/lib/threadIdStorage/localStorageOptions'\nimport { isIframe } from '@/lib/iframes/isIframe'\nimport type { ThreadStorageOptions } from '@/types'\n\nexport const SuperinterfaceContext = createContext<{\n baseUrl: string | null\n variables: Record<string, any>\n defaultOptions: {\n queries: Record<string, any>\n mutations: Record<string, any>\n }\n threadIdStorageOptions: ThreadStorageOptions | null\n createMessageAbortControllerRef: React.MutableRefObject<AbortController | null>\n}>({\n baseUrl,\n variables: {},\n defaultOptions: {\n queries: {},\n mutations: {},\n },\n threadIdStorageOptions: isIframe() ? localStorageOptions : cookieOptions,\n createMessageAbortControllerRef: { current: null },\n})\n","export const baseUrl = 'https://superinterface.ai/api/cloud'\n","import Cookies from 'js-cookie'\nimport { key } from '@/lib/threadIdStorage/key'\n\nexport const get = ({\n assistantId,\n}: {\n assistantId: string\n}) => (\n Cookies.get(key({ assistantId })) ?? null\n)\n","export const key = ({\n assistantId,\n}: {\n assistantId: string\n}) => (\n `superinterface-${assistantId}-threadId`\n)\n","import Cookies from 'js-cookie'\nimport { key } from '@/lib/threadIdStorage/key'\n\nexport const set = ({\n assistantId,\n threadId,\n}: {\n assistantId: string\n threadId: string\n}) => (\n Cookies.set(key({ assistantId }), threadId)\n)\n","import Cookies from 'js-cookie'\nimport { key } from '@/lib/threadIdStorage/key'\n\nexport const remove = ({\n assistantId,\n}: {\n assistantId: string\n}) => (\n Cookies.remove(key({ assistantId }))\n)\n","import type { ThreadStorageOptions } from '@/types'\nimport { get } from './get'\nimport { set } from './set'\nimport { remove } from './remove'\n\nexport const cookieOptions: ThreadStorageOptions = {\n get,\n set,\n remove,\n}\n","import { key } from '@/lib/threadIdStorage/key'\n\nexport const get = ({\n assistantId,\n}: {\n assistantId: string\n}) => (\n window.localStorage.getItem(key({ assistantId }))\n)\n","import { key } from '@/lib/threadIdStorage/key'\n\nexport const set = ({\n assistantId,\n threadId,\n}: {\n assistantId: string\n threadId: string\n}) => (\n window.localStorage.setItem(key({ assistantId }), threadId)\n)\n","import { key } from '@/lib/threadIdStorage/key'\n\nexport const remove = ({\n assistantId,\n}: {\n assistantId: string\n}) => (\n window.localStorage.removeItem(key({ assistantId }))\n)\n","import type { ThreadStorageOptions } from '@/types'\nimport { get } from './get'\nimport { set } from './set'\nimport { remove } from './remove'\n\nexport const localStorageOptions: ThreadStorageOptions = {\n get,\n set,\n remove,\n}\n","export const isIframe = () => {\n if (typeof window === 'undefined') return false\n\n return window.self !== window.top\n}\n","'use client'\nimport { useContext } from 'react'\nimport { SuperinterfaceContext } from '@/contexts/core/SuperinterfaceContext'\n\nexport const useSuperinterfaceContext = () => (\n useContext(SuperinterfaceContext)\n)\n","import {\n Flex,\n} from '@radix-ui/themes'\nimport { Message } from '@/components/threads/Thread/Message'\nimport { StyleProps } from '@/types'\nimport { Content } from './Content'\nimport { Progress } from './Progress'\nimport { Root } from './Root'\nimport { NextPageSkeleton } from './NextPageSkeleton'\n\ntype Args = {\n children?: React.ReactNode\n} & StyleProps\n\nexport const Messages = ({\n children,\n className,\n style,\n}: Args) => (\n <Root\n style={style}\n className={className}\n >\n <Flex\n flexShrink=\"0\"\n height=\"var(--space-3)\"\n />\n\n <Progress />\n\n {children}\n\n <Content />\n\n <NextPageSkeleton />\n\n <Flex\n flexShrink=\"0\"\n flexGrow=\"1\"\n minHeight=\"var(--space-5)\"\n />\n </Root>\n)\n\nMessages.Root = Root\nMessages.Message = Message\nMessages.NextPageSkeleton = NextPageSkeleton\n","import _ from 'lodash'\nimport { useMemo } from 'react'\nimport { isEmpty } from 'radash'\nimport {\n Box,\n} from '@radix-ui/themes'\nimport { StartingContentSkeleton } from '@/components/skeletons/StartingContentSkeleton'\nimport { SerializedMessage } from '@/types'\nimport { RunSteps } from '@/components/runSteps/RunSteps'\nimport { useIsMutatingMessage } from '@/hooks/messages/useIsMutatingMessage'\nimport { Provider } from './Provider'\nimport { Attachments } from './Attachments'\nimport { ContentPart } from './ContentPart'\nimport type { StyleProps } from '@/types'\n\ntype Args = {\n message: SerializedMessage\n}\n\nexport const Message = ({\n message,\n className,\n style,\n}: Args & StyleProps) => {\n const [olderRunSteps, laterRunSteps] = useMemo(() => {\n if (!message.runSteps.length) return [[], []]\n\n const messageCreationRunStepIndex = message.runSteps.findIndex((runStep) => {\n if (runStep.step_details.type !== 'message_creation') return\n\n return runStep.step_details.message_creation.message_id === message.id\n })\n\n let nextRunStepIndex = message.runSteps.slice(0, messageCreationRunStepIndex).findLastIndex((runStep) => (\n runStep.step_details.type === 'message_creation'\n ))\n if (nextRunStepIndex === -1) {\n nextRunStepIndex = 0\n }\n const laterRunSteps = message.runSteps.slice(nextRunStepIndex, messageCreationRunStepIndex)\n\n const prevRunStepIndex = message.runSteps.slice(messageCreationRunStepIndex + 1).findIndex((runStep) => (\n runStep.step_details.type === 'message_creation'\n ))\n\n let olderRunSteps\n\n if (prevRunStepIndex === -1) {\n olderRunSteps = message.runSteps.slice(messageCreationRunStepIndex + 1)\n } else {\n olderRunSteps = message.runSteps.slice(messageCreationRunStepIndex + 1, messageCreationRunStepIndex + prevRunStepIndex)\n }\n\n return [olderRunSteps, laterRunSteps]\n }, [message])\n\n const isMutatingMessage = useIsMutatingMessage()\n\n const isInProgress = useMemo(() => {\n if (!isMutatingMessage) return false\n if (message.status === 'in_progress') return true\n\n return message.runSteps.some((rs) => rs.status === 'in_progress')\n }, [message])\n\n return (\n <Provider value={{ message }}>\n <Box\n className={className}\n style={style}\n >\n <RunSteps\n runSteps={olderRunSteps}\n />\n\n <Box>\n <Attachments\n message={message}\n />\n\n {message.content.map((content, index) => (\n <ContentPart\n key={index}\n content={content}\n />\n ))}\n\n {isInProgress && isEmpty(laterRunSteps) && (\n <StartingContentSkeleton />\n )}\n </Box>\n\n <RunSteps\n runSteps={laterRunSteps}\n />\n\n {isInProgress && !isEmpty(laterRunSteps) && (\n <Box>\n <StartingContentSkeleton />\n </Box>\n )}\n </Box>\n </Provider>\n )\n}\n","import {\n Skeleton,\n} from '@radix-ui/themes'\n\nexport const StartingContentSkeleton = () => (\n <Skeleton\n loading\n mt=\"1\"\n height=\"var(--space-4)\"\n width=\"var(--space-4)\"\n style={{\n borderRadius: 'var(--radius-6)',\n flexShrink: 0,\n }}\n />\n)\n","import { Flex } from '@radix-ui/themes'\nimport { useContext } from 'react'\nimport type { SerializedRunStep } from '@/types'\nimport { ComponentsContext } from '@/contexts/components/ComponentsContext'\n\ntype Args = {\n runSteps: SerializedRunStep[]\n}\n\nexport const RunSteps = ({\n runSteps,\n}: Args) => {\n const componentsContext = useContext(ComponentsContext)\n const Component = componentsContext.components.RunStep\n\n return (\n <Flex\n direction=\"column-reverse\"\n >\n {runSteps.map((runStep) => (\n <Component\n key={runStep.id}\n runStep={runStep}\n />\n ))}\n </Flex>\n )\n}\n","'use client'\nimport { createContext } from 'react'\nimport { RunStep } from '@/components/runSteps/RunStep'\n\nexport const ComponentsContext = createContext({\n components: {\n RunStep,\n },\n})\n","import OpenAI from 'openai'\nimport {\n Flex,\n} from '@radix-ui/themes'\nimport type { SerializedRunStep, StyleProps } from '@/types'\nimport { ToolCall } from './ToolCall'\nimport { Starting } from './Starting'\n\ntype Args = {\n stepDetails: OpenAI.Beta.Threads.Runs.ToolCallsStepDetails\n runStep: SerializedRunStep\n} & StyleProps\n\nconst Root = ({\n children,\n className,\n style,\n}: {\n children: React.ReactNode\n} & StyleProps) => (\n <Flex\n direction=\"column\"\n className={className}\n style={style}\n >\n {children}\n </Flex>\n)\n\nexport const ToolCalls = ({\n stepDetails,\n runStep,\n className,\n style,\n}: Args) => (\n <Root\n className={className}\n style={style}\n >\n {!stepDetails.tool_calls.length && (\n <Starting />\n )}\n {stepDetails.tool_calls.map((toolCall) => (\n <ToolCall\n key={toolCall.id}\n toolCall={toolCall}\n runStep={runStep}\n />\n ))}\n </Root>\n)\n\nToolCalls.Root = Root\nToolCalls.Starting = Starting\nToolCalls.ToolCall = ToolCall\n","'use client'\nimport { useContext } from 'react'\nimport OpenAI from 'openai'\nimport type { SerializedRunStep } from '@/types'\nimport { FunctionComponentsContext } from '@/contexts/functions/FunctionComponentsContext'\nimport { DefaultFunction } from './DefaultFunction'\n\ntype Args = {\n fn: OpenAI.Beta.Threads.Runs.FunctionToolCall.Function\n runStep: SerializedRunStep\n}\n\nexport const Fn = ({\n fn,\n runStep,\n}: Args) => {\n const functionComponentsContext = useContext(FunctionComponentsContext)\n const Component = functionComponentsContext[fn.name] || DefaultFunction\n\n return (\n // @ts-ignore-next-line\n <Component\n fn={fn}\n runStep={runStep}\n />\n )\n}\n","'use client'\nimport { createContext } from 'react'\n\ntype FunctionComponents = {\n [key: string]: React.ReactNode\n}\n\nexport const FunctionComponentsContext = createContext({} as FunctionComponents)\n","import OpenAI from 'openai'\nimport {\n Popover,\n Flex,\n} from '@radix-ui/themes'\nimport { ToolCallBase } from '@/components/toolCalls/ToolCallBase'\nimport { ToolCallTitle } from '@/components/toolCalls/ToolCallBase/ToolCallTitle'\nimport { ToolCallIcon } from '@/components/toolCalls/ToolCallBase/ToolCallIcon'\nimport { Content } from './Content'\n\ntype Args = {\n fn: OpenAI.Beta.Threads.Runs.FunctionToolCall.Function\n runStep: OpenAI.Beta.Threads.Runs.RunStep\n title: string\n}\n\nexport const FunctionBase = ({\n fn,\n runStep,\n title,\n}: Args) => (\n <Popover.Root>\n <Popover.Trigger>\n <Flex>\n <ToolCallBase>\n <ToolCallIcon runStep={runStep} />\n <ToolCallTitle>\n {title}\n </ToolCallTitle>\n </ToolCallBase>\n </Flex>\n </Popover.Trigger>\n <Popover.Content\n style={{\n maxHeight: '200px',\n }}\n >\n <Content fn={fn} />\n </Popover.Content>\n </Popover.Root>\n)\n","import {\n Flex,\n Button,\n} from '@radix-ui/themes'\n\nexport const ToolCallBase = ({\n children,\n}: {\n children: React.ReactNode\n}) => (\n <Flex\n py=\"1\"\n ml=\"-2\"\n >\n <Button\n size=\"1\"\n color=\"gold\"\n variant=\"outline\"\n style={{\n boxShadow: 'none',\n }}\n >\n {children}\n </Button>\n </Flex>\n)\n","import {\n Text,\n} from '@radix-ui/themes'\n\ntype Args = {\n children: React.ReactNode\n}\n\nexport const ToolCallTitle = ({\n children,\n}: Args) => (\n <Text\n weight=\"regular\"\n >\n {children}\n </Text>\n)\n","import {\n CircleIcon,\n CircleBackslashIcon,\n CheckCircledIcon,\n} from '@radix-ui/react-icons'\nimport type { SerializedRunStep } from '@/types'\n\ntype Args = {\n runStep: SerializedRunStep\n}\n\nexport const ToolCallIcon = ({\n runStep,\n}: Args) => {\n if (runStep.completed_at) {\n return (\n <CheckCircledIcon />\n )\n } else if (runStep.cancelled_at || runStep.failed_at || runStep.status === 'expired') {\n return (\n <CircleBackslashIcon />\n )\n } else {\n return (\n <CircleIcon />\n )\n }\n}\n","import { useMemo } from 'react'\nimport { Code, Box } from '@radix-ui/themes'\nimport OpenAI from 'openai'\nimport { formattedJsonOrRaw } from './lib/formattedJsonOrRaw'\n\ntype Args = {\n fn: OpenAI.Beta.Threads.Runs.FunctionToolCall.Function\n}\n\nexport const Content = ({\n fn,\n}: Args) => {\n const args = useMemo(() => (\n formattedJsonOrRaw({\n value: fn.arguments,\n })\n ), [fn])\n\n const output = useMemo(() => (\n formattedJsonOrRaw({\n value: fn.output,\n })\n ), [fn])\n\n return (\n <Code\n variant=\"ghost\"\n color=\"gold\"\n style={{\n whiteSpace: 'pre',\n wordBreak: 'break-word',\n }}\n >\n {args && <Box>\n {args}\n </Box>}\n {output && <Box>\n {output}\n </Box>}\n </Code>\n )\n}\n","export const formattedJsonOrRaw = ({\n value,\n}: {\n value: string | null\n}) => {\n if (!value) {\n return null\n }\n\n try {\n return JSON.stringify(JSON.parse(value), null, 2)\n } catch (error) {\n if (typeof value === 'string') {\n return value\n } else {\n return JSON.stringify(value, null, 2)\n }\n }\n}\n","import OpenAI from 'openai'\n\ntype Args = {\n fn: OpenAI.Beta.Threads.Runs.FunctionToolCall.Function\n runStep: OpenAI.Beta.Threads.Runs.RunStep\n}\n\nexport const title = ({\n fn,\n runStep,\n}: Args) => {\n if (runStep.completed_at) {\n return `Finished ${fn.name}`\n } else if (runStep.cancelled_at) {\n return `Cancelled ${fn.name}`\n } else {\n return `Calling ${fn.name}`\n }\n}\n","import OpenAI from 'openai'\nimport { FunctionBase } from '@/components/functions/FunctionBase'\nimport { title } from './lib/title'\n\ntype Args = {\n fn: OpenAI.Beta.Threads.Runs.FunctionToolCall.Function\n runStep: OpenAI.Beta.Threads.Runs.RunStep\n}\n\nexport const DefaultFunction = ({\n fn,\n runStep,\n}: Args) => (\n <FunctionBase\n fn={fn}\n runStep={runStep}\n title={title({ runStep, fn })}\n />\n)\n","import OpenAI from 'openai'\nimport {\n Popover,\n Flex,\n} from '@radix-ui/themes'\nimport { ToolCallBase } from '@/components/toolCalls/ToolCallBase'\nimport { ToolCallTitle } from '@/components/toolCalls/ToolCallBase/ToolCallTitle'\nimport { ToolCallIcon } from '@/components/toolCalls/ToolCallBase/ToolCallIcon'\nimport type { SerializedRunStep } from '@/types'\nimport { Content } from './Content'\n\nexport const CodeInterpreter = ({\n codeInterpreter,\n runStep,\n}: {\n codeInterpreter: OpenAI.Beta.Threads.Runs.CodeInterpreterToolCall.CodeInterpreter\n runStep: SerializedRunStep\n}) => (\n <Popover.Root>\n <Popover.Trigger>\n <Flex>\n <ToolCallBase>\n <ToolCallIcon runStep={runStep} />\n <ToolCallTitle>\n Using code interpreter\n </ToolCallTitle>\n </ToolCallBase>\n </Flex>\n </Popover.Trigger>\n <Popover.Content\n maxHeight=\"200px\"\n >\n <Content\n codeInterpreter={codeInterpreter}\n />\n </Popover.Content>\n </Popover.Root>\n)\n","import { Code, Box } from '@radix-ui/themes'\nimport OpenAI from 'openai'\n\ntype Args = {\n codeInterpreter: OpenAI.Beta.Threads.Runs.CodeInterpreterToolCall.CodeInterpreter\n}\n\nexport const Content = ({\n codeInterpreter,\n}: Args) => {\n if (!codeInterpreter.input) {\n return null\n }\n\n return (\n <Code\n variant=\"ghost\"\n color=\"gold\"\n style={{\n whiteSpace: 'pre',\n wordBreak: 'break-word',\n }}\n >\n <Box>\n {codeInterpreter.input}\n </Box>\n <Box>\n {JSON.stringify(codeInterpreter.outputs)}\n </Box>\n </Code>\n )\n}\n","import { ToolCallBase } from '@/components/toolCalls/ToolCallBase'\nimport { ToolCallTitle } from '@/components/toolCalls/ToolCallBase/ToolCallTitle'\nimport { ToolCallIcon } from '@/components/toolCalls/ToolCallBase/ToolCallIcon'\nimport type { SerializedRunStep, ToolCall } from '@/types'\n\nexport const FileSearch = ({\n runStep,\n toolCall,\n}: {\n toolCall: ToolCall\n runStep: SerializedRunStep\n}) => (\n <ToolCallBase>\n <ToolCallIcon runStep={runStep} />\n <ToolCallTitle>\n Searching files\n </ToolCallTitle>\n </ToolCallBase>\n)\n","import { ToolCallBase } from '@/components/toolCalls/ToolCallBase'\nimport { ToolCallTitle } from '@/components/toolCalls/ToolCallBase/ToolCallTitle'\nimport { ToolCallIcon } from '@/components/toolCalls/ToolCallBase/ToolCallIcon'\nimport type { SerializedRunStep, ToolCall } from '@/types'\n\nexport const Fallback = ({\n runStep,\n toolCall,\n}: {\n toolCall: ToolCall\n runStep: SerializedRunStep\n}) => (\n <ToolCallBase>\n <ToolCallIcon runStep={runStep} />\n <ToolCallTitle>\n Using tool: {toolCall.type}\n </ToolCallTitle>\n </ToolCallBase>\n)\n","import { Fn } from './Fn'\nimport { CodeInterpreter } from './CodeInterpreter'\nimport { FileSearch } from './FileSearch'\nimport { Fallback } from './Fallback'\nimport type { SerializedRunStep, ToolCall as ToolCallType } from '@/types'\n\ntype Args = {\n toolCall: ToolCallType\n runStep: SerializedRunStep\n}\n\nexport const ToolCall = ({\n toolCall,\n runStep,\n}: Args) => {\n if (toolCall.type === 'function') {\n return (\n <Fn\n fn={toolCall.function}\n runStep={runStep}\n />\n )\n }\n\n if (toolCall.type === 'code_interpreter') {\n return (\n <CodeInterpreter\n codeInterpreter={toolCall.code_interpreter}\n runStep={runStep}\n />\n )\n }\n\n if (toolCall.type === 'file_search') {\n return (\n <FileSearch\n toolCall={toolCall}\n runStep={runStep}\n />\n )\n }\n\n return (\n <Fallback\n toolCall={toolCall}\n runStep={runStep}\n />\n )\n}\n","import {\n Popover,\n Text,\n} from '@radix-ui/themes'\nimport {\n CircleIcon,\n} from '@radix-ui/react-icons'\nimport { ToolCallBase } from '@/components/toolCalls/ToolCallBase'\nimport { ToolCallTitle } from '@/components/toolCalls/ToolCallBase/ToolCallTitle'\n\nexport const Starting = () => (\n <Popover.Root>\n <ToolCallBase>\n <CircleIcon />\n <ToolCallTitle>\n Starting actions\n </ToolCallTitle>\n </ToolCallBase>\n <Popover.Content\n style={{\n maxHeight: '500px',\n }}\n >\n <Text>\n Getting ready to connect to domain API\n </Text>\n </Popover.Content>\n </Popover.Root>\n)\n","import type { SerializedRunStep, StyleProps } from '@/types'\nimport { ToolCalls } from './ToolCalls'\n\ntype Args = {\n runStep: SerializedRunStep\n} & StyleProps\n\nexport const RunStep = ({\n runStep,\n className,\n style,\n}: Args) => {\n if (runStep.step_details.type === 'tool_calls') {\n return (\n <ToolCalls\n className={className}\n style={style}\n stepDetails={runStep.step_details}\n runStep={runStep}\n />\n )\n }\n\n return null\n}\n\nRunStep.ToolCalls = ToolCalls\n","import { useMemo } from 'react'\nimport { useIsMutating } from '@tanstack/react-query'\nimport { useThreadContext } from '@/hooks/threads/useThreadContext'\n\nexport const useIsMutatingMessage = () => {\n const threadContext = useThreadContext()\n\n const mutatingMessagesCount = useIsMutating({\n mutationKey: ['createMessage', threadContext.variables],\n })\n\n const isMutatingMessage = useMemo(() => (\n mutatingMessagesCount > 0\n ), [mutatingMessagesCount])\n\n return isMutatingMessage\n}\n","'use client'\nimport { createContext } from 'react'\nimport { SerializedMessage } from '@/types'\n\nexport const MessageContext = createContext<{\n message: SerializedMessage | null\n}>({\n message: null,\n})\n","import { MessageContext } from '@/contexts/messages/MessageContext'\n\nexport const Provider = MessageContext.Provider\n","import { SerializedMessage } from '@/types'\nimport {\n Flex,\n Badge,\n} from '@radix-ui/themes'\nimport {\n FileIcon,\n} from '@radix-ui/react-icons'\n\nexport const Attachments = ({\n message,\n}: {\n message: SerializedMessage\n}) => {\n if (!message.attachments?.length) return null\n\n return (\n <Flex\n align=\"start\"\n pb=\"1\"\n >\n <Badge\n color=\"gray\"\n variant=\"surface\"\n >\n <FileIcon />\n {message.attachments.length} file{message.attachments.length > 1 ? 's' : ''}\n </Badge>\n </Flex>\n )\n}\n","import OpenAI from 'openai'\nimport React, { useState, useEffect, useMemo } from 'react'\nimport { compile } from '@mdx-js/mdx'\nimport { MDXProvider, useMDXComponents } from '@mdx-js/react'\nimport * as runtime from 'react/jsx-runtime'\nimport { recmaFallbackComponentPlugin } from '@/lib/recma/recmaFallbackComponentPlugin'\nimport { useMarkdownContext } from '@/hooks/markdown/useMarkdownContext'\n\nconst evaluate = async ({\n code,\n}: {\n code: string\n}) => {\n const fn = new Function('runtime', 'useMDXComponents', code)\n return fn({ ...runtime, useMDXComponents })\n}\n\nexport const TextContent = ({\n content\n}: {\n content: OpenAI.Beta.Threads.Messages.TextContentBlock;\n}) => {\n const { getRemarkPlugins, components } = useMarkdownContext()\n const remarkPlugins = useMemo(() => getRemarkPlugins({ content }), [content, getRemarkPlugins])\n\n const [MDXComponent, setMDXComponent] = useState<React.ComponentType | null>(null)\n\n useEffect(() => {\n const compileMDX = async () => {\n try {\n const compiled = await compile(content.text.value, {\n outputFormat: 'function-body',\n remarkPlugins,\n recmaPlugins: [recmaFallbackComponentPlugin],\n providerImportSource: '@mdx-js/react',\n })\n\n const code = String(compiled)\n\n const module = await evaluate({ code })\n\n const { default: MDXContent } = module\n\n setMDXComponent(() => MDXContent)\n } catch (error) {\n }\n }\n\n compileMDX()\n }, [content, remarkPlugins])\n\n if (!MDXComponent) return content.text.value\n\n return (\n <MDXProvider\n components={components}\n >\n <MDXComponent />\n </MDXProvider>\n )\n}\n","import { visit, CONTINUE, SKIP } from 'estree-util-visit';\nimport type {\n Node,\n VariableDeclaration,\n FunctionDeclaration,\n BlockStatement,\n IfStatement,\n CallExpression,\n AssignmentExpression,\n} from 'estree';\n\nexport const recmaFallbackComponentPlugin = () => {\n return (tree: Node) => {\n // Step 1: Change variable declarations from 'const' to 'let'\n visit(tree, (node) => {\n if (node.type === 'VariableDeclaration' && node.kind === 'const') {\n const varDecl = node as VariableDeclaration;\n\n for (const declarator of varDecl.declarations) {\n // Check for both _components and direct component destructuring patterns\n if (\n (declarator.id.type === 'ObjectPattern' &&\n declarator.init?.type === 'Identifier' &&\n declarator.init.name === '_components') ||\n (declarator.id.type === 'ObjectPattern' &&\n declarator.init?.type === 'ObjectExpression')\n ) {\n varDecl.kind = 'let';\n return SKIP;\n }\n }\n }\n return CONTINUE;\n });\n\n // Step 2: Modify the _missingMdxReference function\n visit(tree, (node) => {\n if (\n node.type === 'FunctionDeclaration' &&\n node.id?.type === 'Identifier' &&\n node.id.name === '_missingMdxReference'\n ) {\n const funcNode = node as FunctionDeclaration;\n\n funcNode.body = {\n type: 'BlockStatement',\n body: [\n {\n type: 'IfStatement',\n test: { type: 'Identifier', name: 'component' },\n consequent: {\n type: 'ReturnStatement',\n argument: {\n type: 'FunctionExpression',\n id: null,\n params: [{ type: 'Identifier', name: 'props' }],\n body: {\n type: 'BlockStatement',\n body: [\n {\n type: 'ReturnStatement',\n argument: {\n type: 'BinaryExpression',\n operator: '+',\n left: {\n type: 'BinaryExpression',\n operator: '+',\n left: { type: 'Literal', value: '<' },\n right: { type: 'Identifier', name: 'id' }\n },\n right: {\n type: 'BinaryExpression',\n operator: '+',\n left: { type: 'Literal', value: '></'},\n right: {\n type: 'BinaryExpression',\n operator: '+',\n left: { type: 'Identifier', name: 'id' },\n right: { type: 'Literal', value: '>' }\n }\n }\n }\n }\n ]\n },\n generator: false,\n async: false\n }\n },\n alternate: null\n }\n ]\n } as BlockStatement;\n\n return SKIP;\n }\n return CONTINUE;\n });\n\n // Step 3: Modify the if statements to assign the missing component\n visit(tree, (node) => {\n if (node.type === 'IfStatement') {\n const ifNode = node as IfStatement;\n\n if (\n ifNode.test.type === 'UnaryExpression' &&\n ifNode.test.operator === '!' &&\n ifNode.test.argument.type === 'Identifier'\n ) {\n const componentName = ifNode.test.argument.name;\n\n if (\n ifNode.consequent.type === 'ExpressionStatement' &&\n ifNode.consequent.expression.type === 'CallExpression' &&\n ifNode.consequent.expression.callee.type === 'Identifier' &&\n ifNode.consequent.expression.callee.name === '_missingMdxReference'\n ) {\n // Create the assignment expression\n const assignmentExpr: AssignmentExpression = {\n type: 'AssignmentExpression',\n operator: '=',\n left: { type: 'Identifier', name: componentName },\n right: ifNode.consequent.expression as CallExpression,\n };\n\n ifNode.consequent = {\n type: 'ExpressionStatement',\n expression: assignmentExpr,\n };\n\n return SKIP;\n }\n }\n }\n return CONTINUE;\n });\n };\n};\n","import { useContext } from 'react'\nimport { MarkdownContext } from '@/contexts/markdown/MarkdownContext'\n\nexport const useMarkdownContext = () => (\n useContext(MarkdownContext)\n)\n","'use client'\nimport { createContext } from 'react'\nimport { components } from './lib/components'\nimport { getRemarkPlugins } from './lib/getRemarkPlugins'\n\nexport type MarkdownContextType = {\n components: typeof components,\n getRemarkPlugins: typeof getRemarkPlugins,\n}\n\nexport const MarkdownContext = createContext<MarkdownContextType>({\n components,\n getRemarkPlugins,\n})\n","import { Heading, Table } from '@radix-ui/themes'\nimport { Paragraph } from './Paragraph'\nimport { Link } from './Link'\nimport { UnorderedList } from './UnorderedList'\nimport { OrderedList } from './OrderedList'\nimport { ListItem } from './ListItem'\nimport { Strong } from './Strong'\nimport { Pre } from './Pre'\nimport { Code } from './Code'\nimport { Img } from './Img'\nimport { Annotation } from './Annotation'\n\nexport const components: Record<string, any> = {\n p: Paragraph,\n a: Link,\n strong: Strong,\n ul: UnorderedList,\n ol: OrderedList,\n li: ListItem,\n pre: Pre,\n code: Code,\n img: Img,\n annotation: Annotation,\n h1: (props: JSX.IntrinsicElements['h1']) => <Heading as=\"h1\">{props.children}</Heading>,\n h2: (props: JSX.IntrinsicElements['h2']) => <Heading as=\"h2\" size=\"5\">{props.children}</Heading>,\n h3: (props: JSX.IntrinsicElements['h3']) => <Heading as=\"h3\" size=\"4\">{props.children}</Heading>,\n h4: (props: JSX.IntrinsicElements['h4']) => <Heading as=\"h4\" size=\"3\">{props.children}</Heading>,\n h5: (props: JSX.IntrinsicElements['h5']) => <Heading as=\"h5\" size=\"3\">{props.children}</Heading>,\n h6: (props: JSX.IntrinsicElements['h6']) => <Heading as=\"h6\" size=\"3\">{props.children}</Heading>,\n table: (props: JSX.IntrinsicElements['table']) => (\n <>\n <style>{`.rt-TableRootTable { overflow: inherit; }`}</style>\n <Table.Root\n {...props}\n variant=\"surface\"\n mb=\"3\"\n />\n </>\n ),\n thead: (props: JSX.IntrinsicElements['thead']) => (\n <Table.Header\n {...props}\n />\n ),\n tbody: (props: JSX.IntrinsicElements['tbody']) => (\n <Table.Body\n {...props}\n />\n ),\n tr: (props: JSX.IntrinsicElements['tr']) => (\n <Table.Row\n {...props}\n />\n ),\n td: ({ width, ...rest }: JSX.IntrinsicElements['td']) => (\n <Table.Cell\n {...rest}\n width={width as string}\n />\n ),\n th: (props: JSX.IntrinsicElements['th']) => (\n <Table.ColumnHeaderCell\n {...props}\n />\n ),\n}\n","import {\n Box,\n Text,\n} from '@radix-ui/themes'\n\nexport const Paragraph = ({ children }: JSX.IntrinsicElements['p']) => (\n <Box\n pb=\"3\"\n >\n <Text\n size=\"3\"\n style={{\n whiteSpace: 'pre-line',\n wordBreak: 'break-word',\n }}\n >\n {children}\n </Text>\n </Box>\n)\n","import {\n Link as RadixLink,\n} from '@radix-ui/themes'\n\ntype Args = JSX.IntrinsicElements['a']\n\nexport const Link = ({\n children,\n href,\n download,\n target = '_blank',\n}: Args) => (\n <RadixLink\n href={href}\n target={target}\n download={download}\n >\n {children}\n </RadixLink>\n)\n","import {\n Box,\n} from '@radix-ui/themes'\n\nexport const UnorderedList = ({ children }: JSX.IntrinsicElements['ul']) => (\n <Box\n pb=\"3\"\n asChild\n >\n <ul\n style={{\n listStylePosition: 'inside',\n }}\n >\n {children}\n </ul>\n </Box>\n)\n","import {\n Box,\n} from '@radix-ui/themes'\n\nexport const OrderedList = ({ children }: JSX.IntrinsicElements['ul']) => (\n <Box\n pb=\"3\"\n asChild\n >\n <ol\n style={{\n listStylePosition: 'inside',\n }}\n >\n {children}\n </ol>\n </Box>\n)\n","import {\n Box,\n} from '@radix-ui/themes'\n\nexport const ListItem = ({ children }: JSX.IntrinsicElements['li']) => (\n <Box\n pb=\"1\"\n >\n <li>\n {children}\n </li>\n </Box>\n)\n","import {\n Strong as RadixStrong,\n} from '@radix-ui/themes'\n\nexport const Strong = ({ children }: JSX.IntrinsicElements['strong']) => (\n <RadixStrong>\n {children}\n </RadixStrong>\n)\n","import {\n Box,\n} from '@radix-ui/themes'\n\nexport const Pre = ({ children }: JSX.IntrinsicElements['pre']) => (\n <Box\n style={{\n whiteSpace: 'pre-wrap',\n wordBreak: 'break-word',\n }}\n >\n {children}\n </Box>\n)\n","import {\n Code as RadixCode,\n} from '@radix-ui/themes'\nimport { Suggestions } from '@/components/suggestions/Suggestions'\n\nexport const Code = ({\n children,\n className,\n}: JSX.IntrinsicElements['code']) => {\n if (className === 'language-suggestions') {\n return <Suggestions>{children}</Suggestions>\n }\n\n return (\n <RadixCode>\n {children}\n </RadixCode>\n )\n}\n","import { useMemo } from 'react'\nimport { useLatestMessage } from '@/hooks/messages/useLatestMessage'\nimport type { StyleProps } from '@/types'\nimport { Content } from './Content'\nimport { Item } from './Item'\n\nexport const Suggestions = ({\n children,\n className,\n style,\n}: {\n children: React.ReactNode\n} & StyleProps) => {\n const latestMessageProps = useLatestMessage()\n\n const isDisabled = useMemo(() => (\n // @ts-ignore-next-line\n latestMessageProps.latestMessage?.metadata?.isBlocking\n ), [latestMessageProps])\n\n if (latestMessageProps.isLoading) return null\n if (isDisabled) return null\n\n return (\n <Content\n className={className}\n style={style}\n >\n {children}\n </Content>\n )\n}\n\nSuggestions.Item = Item\n","import { useMemo } from 'react'\nimport { useMessages } from '@/hooks/messages/useMessages'\n\nexport const useLatestMessage = () => {\n const props = useMessages()\n\n return useMemo(() => ({\n ...props,\n latestMessage: props.messages[0] || null,\n }), [props])\n}\n","import { useMemo } from 'react'\nimport {\n InfiniteData,\n useInfiniteQuery,\n useQueryClient,\n} from '@tanstack/react-query'\nimport { SerializedMessage, MessagesPage } from '@/types'\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\nimport { useThreadContext } from '@/hooks/threads/useThreadContext'\nimport { messagesQueryOptions } from '@/lib/messages/messagesQueryOptions'\n\nconst messages = ({\n props,\n}: {\n props: {\n data: InfiniteData<MessagesPage> | undefined\n },\n}) => {\n if (!props.data) return []\n\n return props.data.pages.reduce<SerializedMessage[]>((acc, page) => (\n acc.concat(page.data)\n ), [])\n}\n\n\nexport const useMessages = () => {\n const queryClient = useQueryClient()\n const threadContext = useThreadContext()\n const superinterfaceContext = useSuperinterfaceContext()\n\n const props = useInfiniteQuery(messagesQueryOptions({\n queryClient,\n threadContext,\n superinterfaceContext,\n }))\n\n return useMemo(() => ({\n ...props,\n // @ts-ignore-next-line\n messages: messages({ props }),\n }), [props])\n}\n","import {\n useQueryClient,\n infiniteQueryOptions,\n} from '@tanstack/react-query'\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\nimport { useThreadContext } from '@/hooks/threads/useThreadContext'\nimport { MessagesPage } from '@/types'\nimport { variableParams } from './variableParams'\n\ntype QueryFunctionArgs = {\n queryKey: Readonly<[string, { [key: string]: any }]>\n pageParam?: string\n}\n\nexport const queryOptions = ({\n queryKeyBase,\n path,\n queryClient,\n threadContext,\n superinterfaceContext,\n}: {\n queryKeyBase: string[]\n path: string,\n queryClient: ReturnType<typeof useQueryClient>,\n threadContext: ReturnType<typeof useThreadContext>,\n superinterfaceContext: ReturnType<typeof useSuperinterfaceContext>,\n}) => {\n const queryKey = [...queryKeyBase, threadContext.variables]\n\n return infiniteQueryOptions<MessagesPage>({\n // @ts-ignore-next-line\n queryFn: async ({\n pageParam,\n queryKey,\n }: QueryFunctionArgs) => {\n const [_key, variables] = queryKey\n const params = new URLSearchParams({\n ...(pageParam ? { pageParam } : {}),\n ...variableParams({ variables, superinterfaceContext }),\n })\n\n return fetch(`${superinterfaceContext.baseUrl}${path}?${params}`)\n .then(async (response) => {\n if (response.status !== 200) {\n try {\n const errorResponse = await response.json() as { error: string }\n throw new Error(errorResponse.error)\n } catch (error) {\n throw new Error('Failed to fetch')\n }\n }\n\n return response.json() as Promise<MessagesPage>\n })\n },\n initialPageParam: undefined,\n getNextPageParam: (lastPage: MessagesPage) => {\n if (!lastPage.hasNextPage) return null\n\n return lastPage.lastId\n },\n limit: 10,\n ...threadContext.defaultOptions.queries,\n ...queryClient.getQueryDefaults(queryKey),\n queryKey,\n })\n}\n","import { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\n\nexport const variableParams = ({\n variables,\n superinterfaceContext,\n}: {\n variables: {\n [key: string]: any\n }\n superinterfaceContext: ReturnType<typeof useSuperinterfaceContext>\n}) => {\n if (variables.threadId) return variables\n if (!variables.assistantId) return variables\n if (!superinterfaceContext.threadIdStorageOptions?.get) return variables\n\n const threadId = superinterfaceContext.threadIdStorageOptions.get({ assistantId: variables.assistantId })\n if (!threadId) return variables\n\n return {\n ...variables,\n threadId,\n }\n}\n","import { useQueryClient } from '@tanstack/react-query'\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\nimport { useThreadContext } from '@/hooks/threads/useThreadContext'\nimport { queryOptions } from '@/lib/threads/queryOptions'\n\nexport const messagesQueryOptions = ({\n queryClient,\n threadContext,\n superinterfaceContext,\n}: {\n queryClient: ReturnType<typeof useQueryClient>,\n threadContext: ReturnType<typeof useThreadContext>,\n superinterfaceContext: ReturnType<typeof useSuperinterfaceContext>,\n}) => (\n queryOptions({\n queryKeyBase: ['messages'],\n path: '/messages',\n queryClient,\n threadContext,\n superinterfaceContext,\n })\n)\n","import { useMemo } from 'react'\nimport { isEmpty } from 'radash'\nimport { onlyText } from 'react-children-utilities'\nimport { useIsMutatingMessage } from '@/hooks/messages/useIsMutatingMessage'\nimport {\n Flex,\n} from '@radix-ui/themes'\nimport type { StyleProps } from '@/types'\nimport { Item } from './Item'\n\nexport const Content = ({\n children,\n className,\n style,\n}: {\n children: React.ReactNode\n} & StyleProps) => {\n const isMutatingMessage = useIsMutatingMessage()\n\n const suggestions = useMemo(() => (\n onlyText(children).split(/\\r?\\n/).filter((c) => !isEmpty(c)).map((c) => c.trim())\n ), [children])\n\n if (isEmpty(suggestions)) return null\n\n return (\n <Flex\n gap=\"2\"\n py=\"2\"\n wrap=\"wrap\"\n className={className}\n style={style}\n >\n {suggestions.map((suggestion) => (\n <Item\n key={suggestion}\n suggestion={suggestion}\n isDisabled={isMutatingMessage}\n />\n ))}\n </Flex>\n )\n}\n","import {\n ArrowUpIcon,\n} from '@radix-ui/react-icons'\nimport {\n Text,\n Button,\n Spinner,\n} from '@radix-ui/themes'\nimport { useCreateMessage } from '@/hooks/messages/useCreateMessage'\nimport {\n useQueryClient,\n} from '@tanstack/react-query'\nimport { useThreadContext } from '@/hooks/threads/useThreadContext'\nimport { useToasts } from '@/hooks/toasts/useToasts'\nimport { createMessageDefaultOnError } from '@/lib/errors/createMessageDefaultOnError'\nimport type { StyleProps } from '@/types'\n\nexport const Item = ({\n suggestion,\n isDisabled,\n className,\n style,\n}: {\n suggestion: string\n isDisabled: boolean\n} & StyleProps) => {\n const { addToast } = useToasts()\n const queryClient = useQueryClient()\n const threadContext = useThreadContext()\n\n const { createMessage, isPending } = useCreateMessage({\n onError: createMessageDefaultOnError({\n queryClient,\n addToast,\n threadContext,\n }),\n })\n\n return (\n <Content\n onClick={() => {\n createMessage({\n // @ts-ignore-next-line\n content: suggestion,\n })\n }}\n isDisabled={isDisabled}\n isPending={isPending}\n className={className}\n style={style}\n >\n {suggestion}\n </Content>\n )\n}\n\nconst Content = ({\n onClick,\n isDisabled,\n isPending,\n children,\n className,\n style,\n}: {\n onClick: () => void\n isDisabled: boolean\n isPending: boolean\n children: React.ReactNode\n} & StyleProps) => (\n <Button\n className={className}\n variant=\"soft\"\n onClick={onClick}\n disabled={isDisabled}\n style={{\n minHeight: 'var(--base-button-height)',\n height: 'inherit',\n flexShrink: 1,\n ...(style ?? {}),\n }}\n >\n <Text\n size=\"1\"\n weight=\"regular\"\n >\n {children}\n </Text>\n\n <Spinner loading={isPending}>\n <ArrowUpIcon\n style={{\n flexShrink: 0,\n }}\n />\n </Spinner>\n </Button>\n)\n\nItem.Content = Content\n","import { partob } from 'radash'\nimport {\n useMutation,\n useQueryClient,\n} from '@tanstack/react-query'\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\nimport { useThreadContext } from '@/hooks/threads/useThreadContext'\nimport { mutationOptions } from './lib/mutationOptions'\n\nexport const useCreateMessage = ({\n onError = () => {},\n}: {\n onError?: (error: unknown) => void\n} = {\n onError: () => {},\n}) => {\n const queryClient = useQueryClient()\n const superinterfaceContext = useSuperinterfaceContext()\n const threadContext = useThreadContext()\n\n const props = useMutation(mutationOptions({\n queryClient,\n threadContext,\n superinterfaceContext,\n onError,\n }))\n\n return {\n ...props,\n createMessage: partob(props.mutateAsync, threadContext.variables),\n }\n}\n","import OpenAI from 'openai'\nimport { omit } from 'radash'\nimport { QueryClient } from '@tanstack/react-query'\nimport { data } from './data'\n\ntype Variables = {\n content: string\n attachments: OpenAI.Beta.Threads.Messages.Message['attachments'] | undefined\n [key: string]: any\n}\n\nexport const onMutate = ({\n queryClient,\n}: {\n queryClient: QueryClient,\n}) => async (\n newMessage: Variables,\n) => {\n const queryKey = ['messages', omit(newMessage, ['content', 'attachments'])]\n await queryClient.cancelQueries({ queryKey })\n\n const prevMessages = queryClient.getQueryData(queryKey)\n\n queryClient.setQueryData(\n queryKey,\n data({ newMessage })\n )\n\n return {\n prevMessages,\n newMessage,\n }\n}\n","import dayjs from 'dayjs'\nimport OpenAI from 'openai'\nimport { optimisticId } from '@/lib/optimistic/optimisticId'\n\ntype Args = {\n newMessage: {\n content: string\n attachments: OpenAI.Beta.Threads.Messages.Message['attachments'] | undefined\n }\n}\n\nexport const data = ({\n newMessage,\n}: Args) => (prevData: any) => {\n const message = {\n id: optimisticId(),\n role: 'user' as OpenAI.Beta.Threads.Messages.Message['role'],\n created_at: dayjs().unix(),\n object: 'thread.message' as OpenAI.Beta.Threads.Messages.Message['object'],\n content: [\n {\n type: 'text',\n text: {\n annotations: [],\n value: newMessage.content,\n },\n } as OpenAI.Beta.Threads.Messages.TextContentBlock,\n ],\n run_id: null,\n assistant_id: null,\n thread_id: null,\n attachments: newMessage.attachments ?? [],\n metadata: {},\n runSteps: [],\n }\n\n if (!prevData) {\n return {\n pageParams: [],\n pages: [\n {\n data: [message],\n hasNextPage: false,\n lastId: message.id,\n },\n ],\n }\n }\n\n const [latestPage, ...pagesRest] = prevData.pages\n\n return {\n ...prevData,\n pages: [\n {\n ...latestPage,\n data: [\n message,\n ...latestPage.data,\n ],\n },\n ...pagesRest,\n ],\n }\n}\n","import { uid } from 'radash'\n\nexport const optimisticId = () => (\n `-${uid(24)}`\n)\n","import { JSONParser } from '@streamparser/json-whatwg'\nimport {\n useQueryClient,\n} from '@tanstack/react-query'\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\nimport { useThreadContext } from '@/hooks/threads/useThreadContext'\nimport { handleResponse } from './handleResponse'\nimport { body } from './body'\n\nexport const mutationFn = ({\n superinterfaceContext,\n queryClient,\n threadContext,\n}: {\n superinterfaceContext: ReturnType<typeof useSuperinterfaceContext>\n queryClient: ReturnType<typeof useQueryClient>\n threadContext: ReturnType<typeof useThreadContext>\n}) => async (variables: {\n content: string\n [key: string]: any\n}) => {\n const abortController = new AbortController()\n superinterfaceContext.createMessageAbortControllerRef.current = abortController\n\n const response = await fetch(`${superinterfaceContext.baseUrl}/messages`, {\n method: 'POST',\n body: JSON.stringify(body({\n variables,\n superinterfaceContext,\n })),\n signal: abortController.signal,\n })\n\n if (response.status !== 200) {\n try {\n const errorResponse = await response.json() as { error: string }\n throw new Error(errorResponse.error)\n } catch (error) {\n throw new Error('Failed to send your message, try again. If you are the owner, check the logs.')\n }\n }\n\n if (response.body == null) {\n throw new Error('The response body is empty.');\n }\n\n const parser = new JSONParser({ stringBufferSize: undefined, paths: ['$'], separator: '' })\n const reader = response.body.pipeThrough(parser).getReader()\n\n const messagesQueryKey = ['messages', threadContext.variables]\n\n while (true) {\n const { done, value } = await reader.read()\n\n if (done) break\n\n handleResponse({\n value,\n messagesQueryKey,\n queryClient,\n superinterfaceContext,\n })\n }\n}\n","import OpenAI from 'openai'\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\n\nexport const threadCreated = ({\n value,\n superinterfaceContext,\n}: {\n value: OpenAI.Beta.Assistants.AssistantStreamEvent.ThreadCreated\n superinterfaceContext: ReturnType<typeof useSuperinterfaceContext>\n}) => {\n if (!superinterfaceContext.threadIdStorageOptions?.set) return\n // @ts-ignore-next-line\n if (!value.data.metadata?.assistantId) return\n // @ts-ignore-next-line\n if (!value.data.metadata?.threadId) return\n\n superinterfaceContext.threadIdStorageOptions.set({\n // @ts-ignore-next-line\n assistantId: value.data.metadata.assistantId,\n // @ts-ignore-next-line\n threadId: value.data.metadata.threadId,\n })\n}\n","import _ from 'lodash'\n\ntype Args = {\n id: string\n}\n\nexport const isOptimistic = ({\n id,\n}: Args) => (\n _.startsWith(id, '-')\n)\n","import { last } from 'radash'\nimport { SerializedMessage } from '@/types'\nimport { isOptimistic } from '@/lib/optimistic/isOptimistic'\n\nexport const extendMessage = ({\n message,\n messages,\n}: {\n message: SerializedMessage\n messages: SerializedMessage[]\n}) => {\n const prevRunMessages = messages.filter((m: SerializedMessage) => (\n m.run_id === message.run_id\n ))\n\n const prevOptimitisticRunMessages = prevRunMessages.filter((m: SerializedMessage) => (\n isOptimistic({ id: m.id })\n ))\n\n const runSteps = last(prevOptimitisticRunMessages)?.runSteps ?? last(prevRunMessages)?.runSteps ?? []\n\n return {\n ...message,\n runSteps,\n }\n}\n","import { QueryClient } from '@tanstack/react-query'\nimport { SerializedMessage, ThreadMessageCreatedEvent } from '@/types'\nimport { isOptimistic } from '@/lib/optimistic/isOptimistic'\nimport { extendMessage } from './extendMessage'\nimport { MessagesQueryKey } from '@/types'\n\nconst appendMessage = ({\n message,\n messages,\n}: {\n message: SerializedMessage\n messages: SerializedMessage[]\n}) => {\n const prevMessages = messages.filter((m: SerializedMessage) => (\n m.run_id != message.run_id || !isOptimistic({ id: m.id })\n ))\n\n return [\n extendMessage({ message, messages }),\n ...prevMessages,\n ]\n}\n\nexport const threadMessageCreated = ({\n value,\n messagesQueryKey,\n queryClient,\n}: {\n value: ThreadMessageCreatedEvent\n messagesQueryKey: MessagesQueryKey\n queryClient: QueryClient\n}) => (\n queryClient.setQueryData(\n messagesQueryKey,\n (prevData: any) => {\n if (!prevData) {\n return {\n pageParams: [],\n pages: [\n {\n data: appendMessage({ message: value.data, messages: [] }),\n hasNextPage: false,\n lastId: value.data.id,\n },\n ],\n }\n }\n\n const [latestPage, ...pagesRest] = prevData.pages\n\n return {\n ...prevData,\n pages: [\n {\n ...latestPage,\n data: appendMessage({ message: value.data, messages: latestPage.data }),\n },\n ...pagesRest,\n ],\n }\n }\n )\n)\n","import { QueryClient } from '@tanstack/react-query'\nimport OpenAI from 'openai'\nimport _ from 'lodash'\nimport { omit } from 'radash'\nimport { MessagesQueryKey } from '@/types'\n\nconst updatedContentPart = ({\n prevContentPart,\n delta,\n}: {\n prevContentPart: OpenAI.Beta.Threads.Messages.MessageContent\n delta: OpenAI.Beta.Threads.Messages.MessageContentDelta\n}) => {\n if (!prevContentPart) {\n return omit(delta, ['index'])\n }\n\n if (delta.type === 'text' && delta.text && prevContentPart.type == 'text' && prevContentPart.text) {\n return {\n ...prevContentPart,\n text: {\n ...prevContentPart.text,\n value: `${prevContentPart.text.value}${delta.text.value}`,\n annotations: [\n ...(prevContentPart.text.annotations ?? []),\n ...(delta.text.annotations ?? []),\n ]\n },\n }\n }\n\n return prevContentPart\n}\n\nconst updatedContent = ({\n content,\n value,\n}: {\n content: OpenAI.Beta.Threads.Messages.MessageContent\n value: OpenAI.Beta.Assistants.AssistantStreamEvent.ThreadMessageDelta\n}) => {\n if (!value.data.delta.content) return content\n\n const result = _.cloneDeep(content)\n\n value.data.delta.content.forEach((delta: OpenAI.Beta.Threads.Messages.MessageContentDelta) => {\n // @ts-ignore-next-line\n result[delta.index] = updatedContentPart({\n // @ts-ignore-next-line\n prevContentPart: result[delta.index],\n delta,\n })\n })\n\n return result\n}\n\nexport const threadMessageDelta = ({\n value,\n queryClient,\n messagesQueryKey,\n}: {\n value: OpenAI.Beta.Assistants.AssistantStreamEvent.ThreadMessageDelta\n messagesQueryKey: MessagesQueryKey\n queryClient: QueryClient\n}) => (\n queryClient.setQueryData(\n messagesQueryKey,\n (prevData: any) => {\n if (!prevData) {\n return {\n pageParams: [],\n pages: [\n {\n data: [],\n hasNextPage: false,\n lastId: null,\n },\n ],\n }\n }\n\n const [latestPage, ...pagesRest] = prevData.pages\n const [latestMessage, ...messagesRest] = latestPage.data\n\n return {\n ...prevData,\n pages: [\n {\n ...latestPage,\n data: [\n {\n ...latestMessage,\n content: updatedContent({ content: latestMessage.content, value }),\n },\n ...messagesRest,\n ],\n },\n ...pagesRest,\n ],\n }\n }\n )\n)\n","import { replace } from 'radash'\nimport { ThreadMessageCompletedEvent } from '@/types'\nimport { extendMessage } from './extendMessage'\nimport {\n QueryClient,\n} from '@tanstack/react-query'\nimport { MessagesQueryKey } from '@/types'\n\nexport const threadMessageCompleted = ({\n value,\n queryClient,\n messagesQueryKey,\n}: {\n messagesQueryKey: MessagesQueryKey\n value: ThreadMessageCompletedEvent\n queryClient: QueryClient\n}) => (\n queryClient.setQueryData(\n messagesQueryKey,\n (prevData: any) => {\n if (!prevData) {\n return {\n pageParams: [],\n pages: [\n {\n data: [],\n hasNextPage: false,\n lastId: null,\n },\n ],\n }\n }\n\n const [latestPage, ...pagesRest] = prevData.pages\n\n return {\n ...prevData,\n pages: [\n {\n ...latestPage,\n data: replace(latestPage.data, extendMessage({ message: value.data, messages: latestPage.data }), (m) => m.id === value.data.id),\n },\n ...pagesRest,\n ],\n }\n }\n )\n)\n","import { QueryClient } from '@tanstack/react-query'\nimport OpenAI from 'openai'\nimport { optimisticId } from '@/lib/optimistic/optimisticId'\nimport { MessagesQueryKey } from '@/types'\n\nexport const threadRunCreated = ({\n value,\n queryClient,\n messagesQueryKey,\n}: {\n value: OpenAI.Beta.Assistants.AssistantStreamEvent.ThreadRunCreated\n messagesQueryKey: MessagesQueryKey\n queryClient: QueryClient\n}) => (\n queryClient.setQueryData(\n messagesQueryKey,\n (prevData: any) => {\n if (!prevData) return prevData\n\n const [latestPage, ...pagesRest] = prevData.pages\n\n return {\n ...prevData,\n pages: [\n {\n ...latestPage,\n data: [\n {\n id: optimisticId(),\n assistant_id: value.data.assistant_id,\n content: [],\n created_at: value.data.created_at,\n attachments: [],\n metadata: {},\n status: 'in_progress',\n role: 'assistant',\n runSteps: [],\n run_id: value.data.id,\n thread_id: value.data.thread_id,\n },\n ...latestPage.data,\n ]\n },\n ...pagesRest,\n ],\n }\n }\n )\n)\n","import { QueryClient } from '@tanstack/react-query'\nimport OpenAI from 'openai'\nimport { MessagesQueryKey } from '@/types'\n\nexport const threadRunFailed = ({\n value,\n queryClient,\n messagesQueryKey,\n}: {\n value: OpenAI.Beta.Assistants.AssistantStreamEvent.ThreadRunCreated\n messagesQueryKey: MessagesQueryKey\n queryClient: QueryClient\n}) => {\n throw new Error('Failed to send your message, try again. If you are the owner, check the logs.')\n}\n","import { QueryClient } from '@tanstack/react-query'\nimport OpenAI from 'openai'\nimport { SerializedMessage, MessagesQueryKey } from '@/types'\n\nexport const threadRunStepCreated = ({\n value,\n queryClient,\n messagesQueryKey,\n}: {\n value: OpenAI.Beta.Assistants.AssistantStreamEvent.ThreadRunStepCreated\n messagesQueryKey: MessagesQueryKey\n queryClient: QueryClient\n}) => (\n queryClient.setQueryData(\n messagesQueryKey,\n (prevData: any) => {\n if (!prevData) return prevData\n\n const [latestPage, ...pagesRest] = prevData.pages\n\n return {\n ...prevData,\n pages: [\n {\n ...latestPage,\n data: latestPage.data.map((m: SerializedMessage) => {\n if (m.run_id === value.data.run_id) {\n return {\n ...m,\n runSteps: [\n value.data,\n ...m.runSteps,\n ],\n }\n }\n\n return m\n }),\n },\n ...pagesRest,\n ],\n }\n }\n )\n)\n","import { QueryClient } from '@tanstack/react-query'\nimport _ from 'lodash'\nimport { omit } from 'radash'\nimport OpenAI from 'openai'\nimport { SerializedMessage, SerializedRunStep, ThreadRunStepDeltaEvent, MessagesQueryKey } from '@/types'\n\nconst updatedToolCall = ({\n toolCall,\n delta,\n}: {\n toolCall: OpenAI.Beta.Threads.Runs.ToolCall\n delta: OpenAI.Beta.Threads.Runs.ToolCallDelta\n}) => {\n if (!toolCall) {\n return omit(delta, ['index'])\n }\n\n if (delta.type === 'function' && delta.function && toolCall.type === 'function' && toolCall.function) {\n const result = _.cloneDeep(toolCall)\n\n for (const [key, value] of Object.entries(delta.function)) {\n // @ts-ignore-next-line\n result.function[key] = `${result.function[key] ?? ''}${value}`\n }\n\n return result\n }\n\n return toolCall\n}\n\nconst updatedRunStep = ({\n runStep,\n value,\n}: {\n runStep: SerializedRunStep\n value: ThreadRunStepDeltaEvent\n}) => {\n // @ts-ignore-next-line\n if (!runStep?.step_details?.tool_calls) return runStep\n\n if (value.data.delta?.step_details?.type === 'tool_calls') {\n if (!value.data.delta.step_details.tool_calls) return runStep\n\n // @ts-ignore-next-line\n const newToolCalls = _.cloneDeep(runStep.step_details.tool_calls)\n\n value.data.delta.step_details.tool_calls.forEach((delta: OpenAI.Beta.Threads.Runs.ToolCallDelta) => (\n newToolCalls[delta.index] = updatedToolCall({\n toolCall: newToolCalls[delta.index],\n delta,\n })\n ))\n\n return {\n ...runStep,\n step_details: {\n ...runStep.step_details,\n ...value.data.delta.step_details,\n tool_calls: newToolCalls,\n },\n }\n } else {\n return runStep\n }\n}\n\n\nexport const threadRunStepDelta = ({\n value,\n queryClient,\n messagesQueryKey,\n}: {\n value: ThreadRunStepDeltaEvent\n messagesQueryKey: MessagesQueryKey\n queryClient: QueryClient\n}) => (\n queryClient.setQueryData(\n messagesQueryKey,\n (prevData: any) => {\n if (!prevData) return prevData\n\n const [latestPage, ...pagesRest] = prevData.pages\n\n return {\n ...prevData,\n pages: [\n {\n ...latestPage,\n data: latestPage.data.map((m: SerializedMessage) => {\n if (m.run_id === value.data.run_id) {\n return {\n ...m,\n runSteps: m.runSteps.map((rs: SerializedRunStep) => {\n if (rs.id === value.data.id) {\n return updatedRunStep({ runStep: rs, value })\n }\n\n return rs\n }),\n }\n }\n\n return m\n }),\n },\n ...pagesRest,\n ],\n }\n }\n )\n)\n","import { QueryClient } from '@tanstack/react-query'\nimport OpenAI from 'openai'\nimport { SerializedRunStep, SerializedMessage, MessagesQueryKey } from '@/types'\nimport { replace } from 'radash'\n\nexport const threadRunStepCompleted = ({\n value,\n queryClient,\n messagesQueryKey,\n}: {\n value: OpenAI.Beta.Assistants.AssistantStreamEvent.ThreadRunStepCompleted\n messagesQueryKey: MessagesQueryKey\n queryClient: QueryClient\n}) => (\n queryClient.setQueryData(\n messagesQueryKey,\n (prevData: any) => {\n if (!prevData) return prevData\n\n const [latestPage, ...pagesRest] = prevData.pages\n\n return {\n ...prevData,\n pages: [\n {\n ...latestPage,\n data: latestPage.data.map((m: SerializedMessage) => {\n if (m.run_id === value.data.run_id) {\n return {\n ...m,\n runSteps: replace(m.runSteps, value.data, (rs: SerializedRunStep) => rs.id === value.data.id),\n }\n }\n\n return m\n }),\n },\n ...pagesRest,\n ],\n }\n }\n )\n)\n","import { QueryClient } from '@tanstack/react-query'\nimport { ToolCall } from '@/types'\nimport _ from 'lodash'\nimport OpenAI from 'openai'\nimport { map } from 'radash'\nimport { MessagesQueryKey } from '@/types'\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\n\nexport const threadRunRequiresAction = async ({\n value,\n queryClient,\n messagesQueryKey,\n superinterfaceContext,\n}: {\n value: OpenAI.Beta.Assistants.AssistantStreamEvent.ThreadRunRequiresAction & {\n data: {\n required_action: {\n type: 'submit_client_tool_outputs'\n submit_client_tool_outputs: {\n tool_calls: ToolCall[]\n }\n }\n }\n }\n messagesQueryKey: MessagesQueryKey\n queryClient: QueryClient\n superinterfaceContext: ReturnType<typeof useSuperinterfaceContext>\n}) => {\n // @ts-ignore-next-line\n if (value.data.required_action.type === 'submit_client_tool_outputs') {\n // @ts-ignore-next-line\n const toolCalls = value.data.required_action.submit_client_tool_outputs.tool_calls\n\n const toolOutputs = await map(toolCalls, async (toolCall: ToolCall) => {\n if (toolCall.type !== 'function') {\n return {\n toolCallId: toolCall.id,\n output: `Error: client tool type ${toolCall.type} is not supported.`,\n }\n }\n\n // @ts-ignore-next-line\n const fn = window[toolCall.function.name as string]\n\n if (!fn) {\n return {\n toolCallId: toolCall.id,\n output: `Error: client function ${toolCall.function.name} is not defined.`,\n }\n }\n\n const args = toolCall.function.arguments\n const parsedArgs = JSON.parse(args)\n\n let output\n\n try {\n output = await fn(parsedArgs)\n } catch (error: any) {\n output = `Error: ${error.message}`\n }\n\n return {\n toolCallId: toolCall.id,\n output,\n }\n })\n\n return fetch(`${superinterfaceContext.baseUrl}/threads/runs/submit-client-tool-outputs`, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({\n toolOutputs,\n ...superinterfaceContext.variables,\n })\n })\n }\n}\n","import { threadCreated } from './threadCreated'\nimport { threadMessageCreated } from './threadMessageCreated'\nimport { threadMessageDelta } from './threadMessageDelta'\nimport { threadMessageCompleted } from './threadMessageCompleted'\nimport { threadRunCreated } from './threadRunCreated'\nimport { threadRunFailed } from './threadRunFailed'\nimport { threadRunStepCreated } from './threadRunStepCreated'\nimport { threadRunStepDelta } from './threadRunStepDelta'\nimport { threadRunStepCompleted } from './threadRunStepCompleted'\nimport { threadRunRequiresAction } from './threadRunRequiresAction'\n\nexport const handlers = {\n 'thread.created': threadCreated,\n 'thread.message.created': threadMessageCreated,\n 'thread.message.delta': threadMessageDelta,\n 'thread.message.completed': threadMessageCompleted,\n 'thread.run.created': threadRunCreated,\n 'thread.run.failed': threadRunFailed,\n 'thread.run.step.created': threadRunStepCreated,\n 'thread.run.step.delta': threadRunStepDelta,\n 'thread.run.step.completed': threadRunStepCompleted,\n 'thread.run.requires_action': threadRunRequiresAction,\n}\n","import OpenAI from 'openai'\nimport {\n useQueryClient,\n} from '@tanstack/react-query'\nimport { MessagesQueryKey } from '@/types'\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\nimport { handlers } from './handlers'\n\nexport const handleResponse = ({\n value,\n messagesQueryKey,\n queryClient,\n superinterfaceContext,\n}: {\n value: {\n value: OpenAI.Beta.Assistants.AssistantStreamEvent\n }\n messagesQueryKey: MessagesQueryKey\n queryClient: ReturnType<typeof useQueryClient>\n superinterfaceContext: ReturnType<typeof useSuperinterfaceContext>\n}) => {\n // @ts-ignore-next-line\n const handler = handlers[value.value.event]\n\n if (!handler) {\n return console.log('Missing handler', { value })\n }\n\n return handler({\n value: value.value,\n queryClient,\n messagesQueryKey,\n superinterfaceContext,\n })\n}\n","import { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\n\nexport const body = ({\n variables,\n superinterfaceContext,\n}: {\n variables: {\n [key: string]: any\n }\n superinterfaceContext: ReturnType<typeof useSuperinterfaceContext>\n}) => {\n if (variables.threadId) return variables\n if (!variables.assistantId) return variables\n if (!superinterfaceContext.threadIdStorageOptions?.get) return variables\n\n const threadId = superinterfaceContext.threadIdStorageOptions.get({ assistantId: variables.assistantId })\n if (!threadId) return variables\n\n return {\n ...variables,\n threadId,\n }\n}\n","import _ from 'lodash'\nimport {\n useQueryClient,\n} from '@tanstack/react-query'\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\nimport { useThreadContext } from '@/hooks/threads/useThreadContext'\nimport { onMutate } from './onMutate'\nimport { mutationFn } from './mutationFn'\n\nexport const mutationOptions = ({\n queryClient,\n threadContext,\n superinterfaceContext,\n onError,\n}: {\n queryClient: ReturnType<typeof useQueryClient>,\n threadContext: ReturnType<typeof useThreadContext>,\n superinterfaceContext: ReturnType<typeof useSuperinterfaceContext>,\n onError: (error: unknown) => void\n}) => {\n const mutationKey = ['createMessage', threadContext.variables]\n\n return {\n mutationFn: mutationFn({\n queryClient,\n superinterfaceContext,\n threadContext,\n }),\n onMutate: onMutate({ queryClient }),\n onError,\n ...threadContext.defaultOptions.mutations,\n ...queryClient.getMutationDefaults(mutationKey),\n mutationKey,\n }\n}\n","import { useContext } from 'react'\nimport { ToastsContext } from '@/contexts/toasts/ToastsContext'\n\nexport const useToasts = () => (\n useContext(ToastsContext)\n)\n","'use client'\nimport { createContext } from 'react'\nimport { Toast } from '@/types'\n\nexport const ToastsContext = createContext<{\n toasts: Toast[]\n addToast: (toast: Toast) => void\n}>({\n toasts: [],\n addToast: () => {},\n})\n","import {\n QueryClient,\n} from '@tanstack/react-query'\nimport { Toast } from '@/types'\nimport { useThreadContext } from '@/hooks/threads/useThreadContext'\n\nexport const createMessageDefaultOnError = ({\n queryClient,\n addToast,\n threadContext,\n}: {\n queryClient: QueryClient\n addToast: (toast: Toast) => void\n threadContext: ReturnType<typeof useThreadContext>\n}) => (error: any) => {\n if (error.name === 'AbortError') {\n queryClient.invalidateQueries({ queryKey: ['messages', threadContext.variables] })\n queryClient.invalidateQueries({ queryKey: ['runs', threadContext.variables] })\n return\n }\n\n addToast({ type: 'error', message: error.message })\n}\n","import {\n Box,\n} from '@radix-ui/themes'\n\nexport const Image = (props: JSX.IntrinsicElements['img']) => (\n <Box\n pb=\"3\"\n >\n <img\n {...props}\n style={{\n maxWidth: '100%',\n height: 'auto',\n }}\n />\n </Box>\n)\n","// list is from https://www.npmjs.com/package/video-extensions\nconst videoExtensions = [\n '3g2',\n '3gp',\n 'aaf',\n 'asf',\n 'avchd',\n 'avi',\n 'drc',\n 'flv',\n 'm2v',\n 'm3u8',\n 'm4p',\n 'm4v',\n 'mkv',\n 'mng',\n 'mov',\n 'mp2',\n 'mp4',\n 'mpe',\n 'mpeg',\n 'mpg',\n 'mpv',\n 'mxf',\n 'nsv',\n 'ogg',\n 'ogv',\n 'qt',\n 'rm',\n 'rmvb',\n 'roq',\n 'svi',\n 'vob',\n 'webm',\n 'wmv',\n 'yuv',\n]\n\nexport const isVideoSrc = ({\n src,\n}: {\n src: string\n}) => (\n videoExtensions.includes(src.split('.').pop() || '')\n)\n","export const isAudioSrc = ({\n src,\n}: {\n src: string\n}) => (\n src.endsWith('.mp3') || src.endsWith('.wav')\n)\n","import {\n Flex,\n} from '@radix-ui/themes'\nimport '@vidstack/react/player/styles/base.css'\nimport {\n VideoMimeType,\n MediaPlayer,\n MediaProvider,\n Controls,\n} from '@vidstack/react'\nimport { PlayButton } from '@/components/media/PlayButton'\nimport { VolumeButton } from '@/components/media/VolumeButton'\nimport { Time } from '@/components/media/Time'\nimport { MediaContainer } from '@/components/media/MediaContainer'\nimport { FullscreenButton } from './FullscreenButton'\n\nexport const Video = ({\n src,\n}: {\n src: string\n}) => (\n <MediaContainer>\n <MediaPlayer\n src={{\n src,\n type: `video/${src.split('.').pop()}` as VideoMimeType,\n }}\n playsInline\n hideControlsOnMouseLeave\n crossOrigin\n >\n <MediaProvider />\n\n <style>\n {`\n .superinterface-video-controls {\n opacity: 0;\n transition: opacity 0.2s ease-out;\n }\n\n .superinterface-video-controls[data-visible] {\n opacity: 1;\n }\n `}\n </style>\n <Flex\n asChild\n position=\"absolute\"\n bottom=\"0\"\n left=\"0\"\n right=\"0\"\n className=\"superinterface-video-controls\"\n p=\"3\"\n style={{\n zIndex: 10,\n background: 'var(--accent-4)',\n }}\n >\n <Controls.Root>\n <Flex\n asChild\n align=\"center\"\n gap=\"3\"\n flexGrow=\"1\"\n >\n <Controls.Group>\n <PlayButton />\n <Time />\n <VolumeButton />\n <FullscreenButton />\n </Controls.Group>\n </Flex>\n </Controls.Root>\n </Flex>\n </MediaPlayer>\n </MediaContainer>\n)\n","import {\n PlayButton as VidstackPlayButton,\n useMediaState,\n} from '@vidstack/react'\nimport {\n IconButton,\n} from '@radix-ui/themes'\nimport {\n PlayIcon,\n PauseIcon,\n} from '@radix-ui/react-icons'\n\nexport const PlayButton = () => {\n const isPaused = useMediaState('paused')\n\n return (\n <IconButton\n variant=\"ghost\"\n asChild\n >\n <VidstackPlayButton>\n {isPaused ? <PlayIcon /> : <PauseIcon />}\n </VidstackPlayButton>\n </IconButton>\n )\n}\n","import {\n MuteButton,\n useMediaState,\n useMediaRemote,\n} from '@vidstack/react'\nimport {\n IconButton,\n HoverCard,\n Slider,\n} from '@radix-ui/themes'\nimport {\n SpeakerModerateIcon,\n SpeakerOffIcon,\n} from '@radix-ui/react-icons'\n\nexport const VolumeButton = () => {\n const volume = useMediaState('volume')\n const isMuted = useMediaState('muted')\n const remote = useMediaRemote()\n\n return (\n <HoverCard.Root>\n <HoverCard.Trigger>\n <IconButton\n variant=\"ghost\"\n asChild\n >\n <MuteButton>\n {(isMuted || volume === 0) ? <SpeakerOffIcon /> : <SpeakerModerateIcon />}\n </MuteButton>\n </IconButton>\n </HoverCard.Trigger>\n <HoverCard.Content\n size=\"1\"\n side=\"top\"\n height=\"100px\"\n >\n <Slider\n size=\"1\"\n variant=\"soft\"\n orientation=\"vertical\"\n value={[volume * 100]}\n onValueChange={([value]) => (\n remote.changeVolume(value / 100)\n )}\n />\n </HoverCard.Content>\n </HoverCard.Root>\n )\n}\n","import {\n useState,\n useEffect,\n useMemo,\n} from 'react'\nimport {\n useMediaState,\n useMediaRemote,\n} from '@vidstack/react'\nimport {\n Slider,\n} from '@radix-ui/themes'\n\nexport const Time = () => {\n const time = useMediaState('currentTime')\n const duration = useMediaState('duration')\n const seeking = useMediaState('seeking')\n const canSeek = useMediaState('canSeek')\n const remote = useMediaRemote()\n\n const [value, setValue] = useState(0)\n\n useEffect(() => {\n if (seeking) return;\n setValue((time / duration) * 100);\n }, [time, duration, seeking])\n\n const step = useMemo(() => (\n (1 / duration) * 100\n ), [duration])\n\n return (\n <Slider\n size=\"1\"\n variant=\"soft\"\n value={[value]}\n disabled={!canSeek}\n step={Number.isFinite(step) ? step : 1}\n onValueChange={([value]) => {\n setValue(value)\n remote.seeking((value / 100) * duration)\n }}\n onValueCommit={([value]) => {\n remote.seek((value / 100) * duration)\n }}\n />\n )\n}\n","import {\n Card,\n Inset,\n} from '@radix-ui/themes'\n\nexport const MediaContainer = ({\n children,\n}: {\n children: React.ReactNode\n}) => (\n <Card\n mb=\"3\"\n >\n <Inset\n clip=\"padding-box\"\n style={{\n display: 'flex',\n flexDirection: 'column',\n }}\n >\n {children}\n </Inset>\n </Card>\n)\n","import {\n FullscreenButton as VidstackFullscreenButton,\n useMediaState,\n} from '@vidstack/react'\nimport {\n IconButton,\n} from '@radix-ui/themes'\nimport {\n EnterFullScreenIcon,\n ExitFullScreenIcon,\n} from '@radix-ui/react-icons'\n\nexport const FullscreenButton = () => {\n const isFullscreen = useMediaState('fullscreen')\n\n return (\n <IconButton\n variant=\"ghost\"\n asChild\n >\n <VidstackFullscreenButton>\n {isFullscreen ? <ExitFullScreenIcon /> : <EnterFullScreenIcon />}\n </VidstackFullscreenButton>\n </IconButton>\n )\n}\n","import {\n Flex,\n} from '@radix-ui/themes'\nimport '@vidstack/react/player/styles/base.css'\nimport {\n MediaPlayer,\n MediaProvider,\n Controls,\n AudioMimeType,\n} from '@vidstack/react'\nimport { PlayButton } from '@/components/media/PlayButton'\nimport { VolumeButton } from '@/components/media/VolumeButton'\nimport { Time } from '@/components/media/Time'\nimport { MediaContainer } from '@/components/media/MediaContainer'\n\nexport const Audio = ({\n src,\n}: {\n src: string\n}) => (\n <MediaContainer>\n <MediaPlayer\n src={{\n src,\n type: `audio/${src.split('.').pop()}` as AudioMimeType,\n }}\n viewType=\"audio\"\n crossOrigin\n playsInline\n >\n <MediaProvider />\n\n <Flex\n asChild\n p=\"3\"\n flexGrow=\"1\"\n style={{\n zIndex: 10,\n background: 'var(--accent-4)',\n }}\n >\n <Controls.Root>\n <Flex\n asChild\n align=\"center\"\n gap=\"3\"\n flexGrow=\"1\"\n >\n <Controls.Group>\n <PlayButton />\n <Time />\n <VolumeButton />\n </Controls.Group>\n </Flex>\n </Controls.Root>\n </Flex>\n </MediaPlayer>\n </MediaContainer>\n)\n","import { Image } from '@/components/images/Image'\nimport { isVideoSrc } from './lib/isVideoSrc'\nimport { isAudioSrc } from './lib/isAudioSrc'\nimport { Video } from './Video'\nimport { Audio } from './Audio'\n\nexport const Img = (props: JSX.IntrinsicElements['img']) => {\n if (!props.src) {\n return (\n <Image\n {...props}\n />\n )\n } else if (isVideoSrc({ src: props.src })) {\n return (\n <Video\n src={props.src!}\n />\n )\n } else if (isAudioSrc({ src: props.src })) {\n return (\n <Audio\n src={props.src!}\n />\n )\n } else {\n return (\n <Image\n {...props}\n />\n )\n }\n}\n","import {\n QuoteIcon,\n} from '@radix-ui/react-icons'\nimport OpenAI from 'openai'\nimport { AnnotationBase } from './AnnotationBase'\nimport { FilePathAnnotation } from './FilePathAnnotation'\n\nexport const Annotation = ({\n annotation,\n children,\n}: {\n annotation: OpenAI.Beta.Threads.Messages.Annotation\n children: React.ReactNode\n}) => {\n if (annotation.type === 'file_citation') {\n return (\n <AnnotationBase\n icon={<QuoteIcon />}\n content=\"File cited.\"\n />\n )\n } else if (annotation.type === 'file_path') {\n return (\n <FilePathAnnotation\n annotation={annotation}\n >\n {children}\n </FilePathAnnotation>\n )\n }\n\n return null\n}\n","import {\n IconButton,\n Popover,\n Flex,\n Text,\n} from '@radix-ui/themes'\n\nexport const AnnotationBase = ({\n icon,\n content,\n}: {\n icon: React.ReactNode,\n content: string\n}) => (\n <Popover.Root>\n <Popover.Trigger>\n <IconButton\n variant=\"soft\"\n color=\"gray\"\n size=\"1\"\n >\n {icon}\n </IconButton>\n </Popover.Trigger>\n <Popover.Content\n size=\"1\"\n >\n <Flex\n direction=\"column\"\n >\n <Text\n size=\"1\"\n color=\"gray\"\n >\n {content}\n </Text>\n </Flex>\n </Popover.Content>\n </Popover.Root>\n)\n","import OpenAI from 'openai'\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\nimport { Link } from '@/contexts/markdown/MarkdownContext/lib/components/Link'\n\nexport const FilePathAnnotation = ({\n annotation,\n children,\n}: {\n annotation: OpenAI.Beta.Threads.Messages.FilePathAnnotation\n children: React.ReactNode\n}) => {\n const superinterfaceContext = useSuperinterfaceContext()\n const nextSearchParams = new URLSearchParams(superinterfaceContext.variables)\n\n return (\n <Link\n href={`${superinterfaceContext.baseUrl}/files/${annotation.file_path.file_id}/contents?${nextSearchParams}`}\n target=\"_self\"\n download\n >\n {children}\n </Link>\n )\n}\n","import OpenAI from 'openai'\nimport remarkGfm from 'remark-gfm'\nimport { remarkAnnotation } from '@/lib/remark/remarkAnnotation'\n\nexport const getRemarkPlugins = ({\n content,\n}: {\n content: OpenAI.Beta.Threads.Messages.TextContentBlock\n}) => [\n remarkAnnotation({ content }),\n remarkGfm,\n]\n","import OpenAI from 'openai'\nimport { isNumber } from 'radash'\nimport type { Node, Literal, Position } from 'unist'\nimport type { Text, Link } from 'mdast'\n// @ts-ignore-next-line\nimport flatMap from 'unist-util-flatmap'\n\ninterface AnnotationNode extends Literal {\n type: 'annotation'\n value: string\n position?: Position\n data: {\n hName: 'annotation'\n hProperties: {\n annotation: any\n }\n }\n}\n\nconst sortedAnnotations = ({\n content,\n}: {\n content: OpenAI.Beta.Threads.Messages.TextContentBlock\n}) =>\n content.text.annotations.sort((a, b) => a.start_index - b.start_index)\n\nexport const remarkAnnotation = ({\n content,\n}: {\n content: OpenAI.Beta.Threads.Messages.TextContentBlock\n}) => {\n return () => {\n return (tree: any) => {\n flatMap(tree, (node: Node) => {\n // Process text and link nodes\n if (node.type === 'text' || node.type === 'link') {\n return processNodeWithAnnotations({ node, content })\n } else {\n // Return other nodes as-is\n return [node]\n }\n })\n }\n }\n}\n\nconst processNodeWithAnnotations = ({\n node,\n content,\n}: {\n node: Node\n content: OpenAI.Beta.Threads.Messages.TextContentBlock\n}): Node[] => {\n if (!content.text?.annotations?.length) {\n return [node]\n }\n\n if (!node.position) {\n return [node]\n }\n\n const annotations = sortedAnnotations({ content })\n\n if (node.type === 'text') {\n // node is a Text node\n return processTextNode({ node: node as Text, annotations })\n } else if (node.type === 'link') {\n // node is a Link node\n const linkNode = node as Link\n // Process link node's children\n linkNode.children = flatMap(linkNode.children, (childNode: Node) => {\n if (childNode.type === 'text') {\n return processTextNode({ node: childNode as Text, annotations })\n } else {\n return [childNode]\n }\n })\n return [linkNode]\n } else {\n // Return node as-is\n return [node]\n }\n}\n\nconst processTextNode = ({\n node,\n annotations,\n}: {\n node: Text\n annotations: any[]\n}): Node[] => {\n if (!node.position || !node.value) {\n return [node]\n }\n\n const nodeStart = node.position.start.offset!\n const nodeEnd = node.position.end.offset!\n\n if (!isNumber(nodeStart) || !isNumber(nodeEnd)) {\n return [node]\n }\n\n const newNodes: Node[] = []\n let lastIndex = nodeStart\n\n annotations.forEach((annotation) => {\n const annotationStart = annotation.start_index\n const annotationEnd = annotation.end_index\n\n if (nodeEnd <= annotationStart || nodeStart >= annotationEnd) {\n return\n }\n\n const start = Math.max(nodeStart, annotationStart)\n const end = Math.min(nodeEnd, annotationEnd)\n\n if (lastIndex < start) {\n newNodes.push(createTextNode({ node, startOffset: lastIndex, endOffset: start }))\n }\n\n newNodes.push(\n createAnnotationNode({\n node,\n startOffset: start,\n endOffset: end,\n annotation,\n })\n )\n lastIndex = end\n })\n\n if (lastIndex < nodeEnd) {\n newNodes.push(createTextNode({ node, startOffset: lastIndex, endOffset: nodeEnd }))\n }\n\n return newNodes\n}\n\nconst createTextNode = ({\n node,\n startOffset,\n endOffset,\n}: {\n node: Text\n startOffset: number\n endOffset: number\n}): Text => {\n const valueStart = startOffset - node.position!.start.offset!\n const valueEnd = endOffset - node.position!.start.offset!\n\n return {\n type: 'text',\n value: node.value.slice(valueStart, valueEnd),\n position: {\n start: {\n ...node.position!.start,\n offset: startOffset,\n },\n end: {\n ...node.position!.end,\n offset: endOffset,\n },\n },\n }\n}\n\nconst createAnnotationNode = ({\n node,\n startOffset,\n endOffset,\n annotation,\n}: {\n node: Text\n startOffset: number\n endOffset: number\n annotation: any\n}): AnnotationNode => {\n const valueStart = startOffset - node.position!.start.offset!\n const valueEnd = endOffset - node.position!.start.offset!\n\n return {\n type: 'annotation',\n value: node.value.slice(valueStart, valueEnd),\n position: {\n start: {\n ...node.position!.start,\n offset: startOffset,\n },\n end: {\n ...node.position!.end,\n offset: endOffset,\n },\n },\n data: {\n hName: 'annotation',\n hProperties: {\n annotation,\n },\n },\n }\n}\n","import OpenAI from 'openai'\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\nimport { Image } from '@/components/images/Image'\n\nexport const ImageFileContent = ({\n content,\n}: {\n content: OpenAI.Beta.Threads.Messages.ImageFileContentBlock\n}) => {\n const superinterfaceContext = useSuperinterfaceContext()\n const nextSearchParams = new URLSearchParams(superinterfaceContext.variables)\n\n return (\n <Image\n alt=\"\"\n src={`${superinterfaceContext.baseUrl}/files/${content.image_file.file_id}/contents?${nextSearchParams}`}\n />\n )\n}\n","import OpenAI from 'openai'\nimport { TextContent } from './TextContent'\nimport { ImageFileContent } from './ImageFileContent'\n\nexport const ContentPart = ({\n content,\n}: {\n content: OpenAI.Beta.Threads.Messages.Message['content'][0]\n}) => {\n if (content.type === 'text') {\n return (\n <TextContent\n content={content}\n />\n )\n }\n\n if (content.type === 'image_file') {\n return (\n <ImageFileContent\n content={content}\n />\n )\n }\n\n return null\n}\n","'use client'\nimport { useEffect } from 'react'\nimport { useMessages } from '@/hooks/messages/useMessages'\nimport { useMessageGroups } from '@/hooks/messageGroups/useMessageGroups'\nimport { MessageGroup as MessageGroupType } from '@/types'\nimport { MessagesSkeleton } from '@/components/skeletons/MessagesSkeleton'\nimport { useToasts } from '@/hooks/toasts/useToasts'\nimport { MessageGroup } from './MessageGroup'\n\nexport const Content = () => {\n const {\n messages,\n isLoading,\n isLoadingError,\n } = useMessages()\n\n const { addToast } = useToasts()\n\n const { messageGroups } = useMessageGroups({\n messages,\n })\n\n useEffect(() => {\n if (isLoadingError) {\n addToast({ type: 'error', message: 'Could not load messages. Please try again.' })\n }\n }, [isLoadingError, addToast])\n\n if (isLoading || isLoadingError) {\n return (\n <MessagesSkeleton />\n )\n }\n\n return (\n <>\n {messageGroups.map((messageGroup: MessageGroupType) => (\n <MessageGroup\n key={messageGroup.id}\n messageGroup={messageGroup}\n />\n ))}\n </>\n )\n}\n","import { useMemo } from 'react'\nimport { messageGroups as getMessageGroups } from './lib/messageGroups'\nimport { SerializedMessage } from '@/types'\n\ntype Args = {\n messages: SerializedMessage[]\n}\n\nexport const useMessageGroups = ({\n messages,\n}: Args) => (\n useMemo(\n () => ({\n messageGroups: getMessageGroups({ messages }),\n }),\n [messages]\n )\n)\n","import _ from 'lodash'\nimport { last } from 'radash'\nimport { SerializedMessage, MessageGroup } from '@/types'\nimport { order } from '@/lib/messages/order'\nimport { newGroup } from './newGroup'\n\ntype Args = {\n messages: SerializedMessage[]\n}\n\nexport const messageGroups = ({\n messages,\n}: Args) =>\n _.reduce(\n order({ messages }),\n (groups: MessageGroup[], message: SerializedMessage) => {\n const group = last(groups)\n\n if (!group) return newGroup({ groups, message })\n\n if (group.role !== message.role) {\n return newGroup({\n groups,\n message,\n })\n }\n\n return [\n ..._.dropRight(groups),\n {\n ...group,\n messages: [...group.messages, message],\n },\n ]\n },\n []\n )\n","import { sort } from 'radash'\nimport { SerializedMessage } from '@/types'\n\ntype Args = {\n messages: SerializedMessage[]\n}\n\nexport const order = ({ messages }: Args) =>\n sort(messages, m => m.created_at, true)\n","import { SerializedMessage } from '@/types'\n\ntype Args = {\n message: SerializedMessage\n}\n\nexport const newGroupItem = ({ message }: Args) => ({\n id: message.id,\n role: message.role,\n createdAt: message.created_at,\n messages: [message],\n})\n","import { SerializedMessage, MessageGroup } from '@/types'\nimport { newGroupItem } from './newGroupItem'\n\ntype Args = {\n groups: MessageGroup[]\n message: SerializedMessage\n}\n\nexport const newGroup = ({ groups, message }: Args) => [\n ...groups,\n newGroupItem({\n message,\n }),\n]\n","import { forwardRef } from 'react'\nimport {\n Flex,\n Avatar,\n Box,\n Skeleton,\n} from '@radix-ui/themes'\nimport { MessageGroupBase } from '@/components/messageGroups/MessageGroupBase'\nimport { Name } from '@/components/messageGroups/MessageGroupBase/Name'\n\nexport const MessagesSkeleton = forwardRef(function MessagesSkeleton(_props, ref) {\n return (\n <MessageGroupBase\n // @ts-ignore-next-line\n ref={ref}\n >\n <Skeleton loading>\n <Avatar\n fallback={<Flex />}\n size=\"1\"\n />\n </Skeleton>\n\n <Box\n pb=\"3\"\n >\n <Name>\n <Skeleton\n loading\n style={{\n width: '128px',\n }}\n />\n </Name>\n\n <Skeleton\n loading\n style={{\n width: '256px',\n }}\n />\n\n <Skeleton\n loading\n style={{\n width: '256px',\n marginTop: 'var(--space-2)',\n }}\n />\n\n <Skeleton\n loading\n style={{\n width: '256px',\n marginTop: 'var(--space-2)',\n }}\n />\n </Box>\n </MessageGroupBase>\n )\n})\n","import { forwardRef } from 'react'\nimport {\n Flex,\n Container,\n} from '@radix-ui/themes'\n\ntype Args = {\n children: React.ReactNode\n}\n\nexport const MessageGroupBase = forwardRef(function MessageGroupBase({\n children,\n}: Args, ref: React.Ref<HTMLDivElement>) {\n return (\n <Container\n ref={ref}\n size=\"2\"\n flexGrow=\"0\"\n >\n <Flex\n flexShrink=\"0\"\n gap=\"3\"\n >\n {children}\n </Flex>\n </Container>\n )\n})\n","import {\n Flex,\n Text,\n} from '@radix-ui/themes'\n\ntype Args = {\n children: React.ReactNode\n}\n\nexport const Name = ({\n children,\n}: Args) => (\n <Flex\n align=\"center\"\n height=\"var(--space-5)\"\n >\n <Text\n size=\"2\"\n weight=\"bold\"\n >\n {children}\n </Text>\n </Flex>\n)\n","'use client'\nimport { useContext } from 'react'\nimport {\n Box,\n} from '@radix-ui/themes'\nimport { MessageGroupBase } from '@/components/messageGroups/MessageGroupBase'\nimport { Name } from '@/components/messageGroups/MessageGroupBase/Name'\nimport { AssistantAvatar } from '@/components/messageGroups/MessageGroupBase/AssistantAvatar'\nimport { AssistantNameContext } from '@/contexts/assistants/AssistantNameContext'\nimport { UserAvatar } from '@/components/messageGroups/MessageGroupBase/UserAvatar'\nimport { MessageGroup as MessageGroupType } from '@/types'\nimport { Content } from './Content'\n\ntype Args = {\n messageGroup: MessageGroupType\n}\n\nexport const MessageGroup = ({\n messageGroup,\n}: Args) => {\n const assistantNameContext = useContext(AssistantNameContext)\n\n return (\n <MessageGroupBase>\n {messageGroup.role === 'user' ? (\n <UserAvatar />\n ) : (\n <AssistantAvatar />\n )}\n\n <Box flexGrow=\"1\">\n <Name>\n {messageGroup.role === 'user' ? 'You' : assistantNameContext}\n </Name>\n\n <Content\n messageGroup={messageGroup}\n />\n </Box>\n </MessageGroupBase>\n )\n}\n","'use client'\nimport { useContext } from 'react'\nimport {\n Flex,\n} from '@radix-ui/themes'\nimport { AssistantAvatarContext } from '@/contexts/assistants/AssistantAvatarContext'\n\nexport const AssistantAvatar = () => {\n const AssistantAvatarContextValue = useContext(AssistantAvatarContext)\n\n return (\n <Flex\n flexShrink=\"0\"\n height=\"24px\"\n width=\"24px\"\n style={{\n borderRadius: 'var(--radius-3)',\n overflow: 'hidden',\n }}\n >\n {AssistantAvatarContextValue}\n </Flex>\n )\n}\n","'use client'\nimport { createContext } from 'react'\nimport {\n Avatar,\n} from '@radix-ui/themes'\nimport {\n LightningBoltIcon,\n} from '@radix-ui/react-icons'\n\nexport const AssistantAvatarContext = createContext(\n <Avatar\n fallback={<LightningBoltIcon />}\n size=\"1\"\n />\n)\n","'use client'\nimport { createContext } from 'react'\n\nexport const AssistantNameContext = createContext('Assistant')\n","'use client'\nimport { useContext } from 'react'\nimport {\n Flex,\n} from '@radix-ui/themes'\nimport { UserAvatarContext } from '@/contexts/users/UserAvatarContext'\n\nexport const UserAvatar = () => {\n const UserAvatarContextValue = useContext(UserAvatarContext)\n\n return (\n <Flex\n flexShrink=\"0\"\n height=\"24px\"\n width=\"24px\"\n style={{\n borderRadius: 'var(--radius-3)',\n overflow: 'hidden',\n }}\n >\n {UserAvatarContextValue}\n </Flex>\n )\n}\n","'use client'\nimport { createContext } from 'react'\nimport {\n Avatar,\n} from '@radix-ui/themes'\nimport {\n PersonIcon,\n} from '@radix-ui/react-icons'\n\nexport const UserAvatarContext = createContext(\n <Avatar\n fallback={<PersonIcon />}\n size=\"1\"\n />\n)\n","import { Flex } from '@radix-ui/themes'\nimport { MessageGroup } from '@/types'\nimport { Message } from '@/components/threads/Thread/Message'\n\ntype Args = {\n messageGroup: MessageGroup\n}\n\nexport const Content = ({\n messageGroup,\n}: Args) => (\n <Flex\n direction=\"column-reverse\"\n >\n {messageGroup.messages.map((message) => (\n <Message\n key={message.id}\n message={message}\n />\n ))}\n </Flex>\n)\n","import { useMemo } from 'react'\nimport { StartingSkeleton } from '@/components/skeletons/StartingSkeleton'\nimport { useLatestMessage } from '@/hooks/messages/useLatestMessage'\nimport { isOptimistic } from '@/lib/optimistic/isOptimistic'\nimport { useIsMutatingMessage } from '@/hooks/messages/useIsMutatingMessage'\n\nexport const Progress = () => {\n const { latestMessage } = useLatestMessage()\n const isMutatingMessage = useIsMutatingMessage()\n\n const isVisible = useMemo(() => {\n if (!latestMessage) return false\n if (latestMessage.role !== 'user') return false\n if (latestMessage.status === 'in_progress') return false\n if (!isOptimistic({ id: latestMessage.id })) return false\n if (!isMutatingMessage) return false\n\n return true\n }, [latestMessage, isMutatingMessage])\n\n if (!isVisible) return null\n\n return (\n <StartingSkeleton />\n )\n}\n","'use client'\nimport { useContext } from 'react'\nimport { Box } from '@radix-ui/themes'\nimport { StartingContentSkeleton } from '@/components/skeletons/StartingContentSkeleton'\nimport { MessageGroupBase } from '@/components/messageGroups/MessageGroupBase'\nimport { Name } from '@/components/messageGroups/MessageGroupBase/Name'\nimport { AssistantAvatar } from '@/components/messageGroups/MessageGroupBase/AssistantAvatar'\nimport { AssistantNameContext } from '@/contexts/assistants/AssistantNameContext'\n\ntype Args = {\n children?: React.ReactNode\n}\n\nexport const StartingSkeleton = ({\n children,\n}: Args) => {\n const assistantNameContext = useContext(AssistantNameContext)\n\n return (\n <MessageGroupBase>\n <AssistantAvatar />\n\n <Box>\n <Name>\n {assistantNameContext}\n </Name>\n\n {children}\n\n <StartingContentSkeleton />\n </Box>\n </MessageGroupBase>\n )\n}\n","'use client'\n\nimport { Flex } from '@radix-ui/themes'\nimport { useInfiniteScroll } from '@/hooks/misc/useInfiniteScroll'\nimport { useMessages } from '@/hooks/messages/useMessages'\nimport type { StyleProps } from '@/types'\n\nexport const Root = ({\n children,\n style,\n className,\n}: {\n children: React.ReactNode\n} & StyleProps) => {\n const {\n isFetchingNextPage,\n hasNextPage,\n fetchNextPage,\n } = useMessages()\n\n const { containerRef, loaderRef } = useInfiniteScroll({\n isFetchingNextPage,\n hasNextPage,\n fetchNextPage,\n })\n\n return (\n <Flex\n ref={containerRef}\n direction=\"column-reverse\"\n flexGrow=\"1\"\n style={{\n overflow: 'auto',\n ...(style ?? {}),\n }}\n className={className}\n >\n {children}\n\n {hasNextPage && (\n <Flex\n ref={loaderRef}\n />\n )}\n\n <Flex\n flexShrink=\"0\"\n flexGrow=\"1\"\n />\n </Flex>\n )\n}\n","import { useRef } from 'react'\nimport { useInView } from 'react-intersection-observer'\nimport { useThrottledEffect } from '@/hooks/misc/useThrottledEffect'\n\ntype Args = {\n isFetchingNextPage: boolean\n hasNextPage: boolean\n fetchNextPage: () => void\n}\n\nexport const useInfiniteScroll = ({\n isFetchingNextPage,\n hasNextPage,\n fetchNextPage,\n}: Args) => {\n const containerRef = useRef(null)\n\n const { ref: loaderRef, inView } = useInView({\n root: containerRef.current,\n rootMargin: '0px',\n threshold: 0.1,\n })\n\n useThrottledEffect(\n () => {\n if (isFetchingNextPage) return\n if (!inView) return\n if (!hasNextPage) return\n\n fetchNextPage()\n },\n 500,\n [inView, isFetchingNextPage, hasNextPage, fetchNextPage]\n )\n\n return {\n containerRef,\n loaderRef,\n inView,\n }\n}\n","import _ from 'lodash'\nimport { useRef, useEffect, useCallback } from 'react'\n\nexport const useThrottledEffect = (cb: Function, delay: number, additionalDeps: any[]) => {\n const cbRef = useRef(cb)\n\n const throttledCb = useCallback(\n _.throttle((...args: any[]) => cbRef.current(...args), delay, {\n leading: true,\n trailing: true,\n }),\n [delay]\n )\n useEffect(() => {\n cbRef.current = cb\n })\n // set additionalDeps to execute effect, when other values change (not only on delay change)\n useEffect(throttledCb, [throttledCb, ...additionalDeps])\n}\n","'use client'\nimport { useMessages } from '@/hooks/messages/useMessages'\nimport { MessagesSkeleton } from '@/components/skeletons/MessagesSkeleton'\n\nexport const NextPageSkeleton = () => {\n const {\n hasNextPage,\n } = useMessages()\n\n if (!hasNextPage) {\n return null\n }\n\n return (\n <MessagesSkeleton />\n )\n}\n","'use client'\n\nimport {\n ArrowUpIcon,\n StopIcon,\n} from '@radix-ui/react-icons'\nimport {\n IconButton,\n Flex,\n} from '@radix-ui/themes'\nimport { useMessageFormContext } from '@/hooks/messages/useMessageFormContext'\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\nimport type { StyleProps } from '@/types'\n\nconst Root = ({\n children,\n style,\n className,\n}: {\n children: React.ReactNode\n} & StyleProps) => (\n <Flex\n flexShrink=\"0\"\n align=\"end\"\n style={style}\n className={className}\n >\n {children}\n </Flex>\n)\n\nconst Button = (props: StyleProps) => {\n const superinterfaceContext = useSuperinterfaceContext()\n const { isDisabled, isLoading, isFileLoading } = useMessageFormContext()\n\n if (isLoading) {\n return (\n <IconButton\n type=\"button\"\n onClick={() => superinterfaceContext.createMessageAbortControllerRef.current?.abort()}\n {...props}\n >\n <StopIcon />\n </IconButton>\n )\n }\n\n return (\n <IconButton\n type=\"submit\"\n disabled={isDisabled || isFileLoading}\n {...props}\n >\n <ArrowUpIcon />\n </IconButton>\n )\n}\n\nexport const Submit = (props: StyleProps) => (\n <Root {...props}>\n <Button />\n </Root>\n)\n\nSubmit.Root = Root\nSubmit.Button = Button\n","import { useContext } from 'react'\nimport { MessageFormContext } from '@/contexts/messages/MessageFormContext'\n\nexport const useMessageFormContext = () => (\n useContext(MessageFormContext)\n)\n","'use client'\nimport OpenAI from 'openai'\nimport { createContext, Dispatch, SetStateAction } from 'react'\n\nexport const MessageFormContext = createContext({\n content: '',\n isDisabled: false,\n isLoading: false,\n files: [] as OpenAI.Files.FileObject[],\n setFiles: (() => {}) as Dispatch<SetStateAction<OpenAI.Files.FileObject[]>>,\n isFileLoading: false,\n})\n","'use client'\nimport OpenAI from 'openai'\nimport {\n useQueryClient,\n} from '@tanstack/react-query'\nimport { useMemo, useState } from 'react'\nimport { useForm, SubmitHandler, FormProvider } from 'react-hook-form'\nimport { Box } from '@radix-ui/themes'\nimport { useLatestMessage } from '@/hooks/messages/useLatestMessage'\nimport { useCreateMessage } from '@/hooks/messages/useCreateMessage'\nimport { useThreadContext } from '@/hooks/threads/useThreadContext'\nimport { formOptions } from './lib/formOptions'\nimport { MessageFormContext } from '@/contexts/messages/MessageFormContext'\nimport { useToasts } from '@/hooks/toasts/useToasts'\nimport { useIsMutatingMessage } from '@/hooks/messages/useIsMutatingMessage'\nimport { partob } from 'radash'\nimport { isOptimistic } from '@/lib/optimistic/isOptimistic'\nimport { createMessageDefaultOnError } from '@/lib/errors/createMessageDefaultOnError'\nimport type { StyleProps } from '@/types'\n\ntype Inputs = {\n content: string\n attachments?: OpenAI.Beta.Threads.Message.Attachment[]\n}\n\nexport const Root = ({\n children,\n onSubmit: onSubmitArg,\n isDisabled: isDisabledArg,\n style,\n className,\n}: {\n children: React.ReactNode\n onSubmit?: SubmitHandler<Inputs & { reset: any, createMessage: any }>\n isDisabled?: boolean\n} & StyleProps) => {\n const [files, setFiles] = useState<OpenAI.Files.FileObject[]>([])\n const formProps = useForm<Inputs>(formOptions)\n\n const {\n handleSubmit,\n formState: { isSubmitting },\n reset,\n watch,\n } = formProps\n\n const { addToast } = useToasts()\n const queryClient = useQueryClient()\n const threadContext = useThreadContext()\n\n const { createMessage } = useCreateMessage({\n onError: createMessageDefaultOnError({\n queryClient,\n addToast,\n threadContext,\n }),\n })\n\n const isMutatingMessage = useIsMutatingMessage()\n\n const isFileLoading = useMemo(() => (\n files.some((file) => isOptimistic({ id: file.id }))\n ), [files])\n\n const isLoading = useMemo(() => (\n isMutatingMessage || isSubmitting\n ), [\n isMutatingMessage,\n isSubmitting,\n ])\n\n const { latestMessage } = useLatestMessage()\n\n const isDisabled = useMemo(() => (\n // @ts-ignore-next-line\n latestMessage?.metadata?.isBlocking || isDisabledArg\n ), [latestMessage, isDisabledArg])\n\n const onSubmit: SubmitHandler<Inputs> = onSubmitArg ? partob(onSubmitArg, { reset, createMessage }) : async (data) => {\n if (isFileLoading) return\n if (isLoading) return\n if (isDisabled) return\n\n reset()\n setFiles([])\n\n const attachments = files.map((file) => ({\n file_id: file.id,\n tools: [\n {\n type: 'file_search',\n },\n ],\n }))\n\n await createMessage({\n // @ts-ignore-next-line\n content: data.content,\n ...(attachments.length ? { attachments } : {}),\n })\n }\n\n const content = watch('content')\n\n return (\n <MessageFormContext.Provider\n value={{\n isDisabled,\n isLoading,\n files,\n setFiles,\n isFileLoading,\n content,\n }}\n >\n <FormProvider {...formProps}>\n <Box\n asChild\n flexShrink=\"0\"\n style={style}\n className={className}\n >\n <form\n onSubmit={handleSubmit(onSubmit)}\n >\n {children}\n </form>\n </Box>\n </FormProvider>\n </MessageFormContext.Provider>\n )\n}\n","import { z } from 'zod'\nimport { zodResolver } from '@hookform/resolvers/zod'\n\nconst schema = z.object({\n content: z.string().min(1),\n})\n\nexport const formOptions = {\n resolver: zodResolver(schema),\n}\n","'use client'\nimport { useFormContext } from 'react-hook-form'\nimport {\n Container as RadixContainer,\n Flex,\n} from '@radix-ui/themes'\nimport { Control } from './Control'\nimport { Files } from './Files'\nimport type { StyleProps } from '@/types'\n\nconst Root = ({\n children,\n className,\n style,\n}: {\n children: React.ReactNode\n} & StyleProps) => {\n const {\n formState: {\n errors,\n },\n } = useFormContext()\n\n return (\n <RadixContainer\n size=\"2\"\n flexGrow=\"0\"\n className={className}\n style={style}\n >\n <Flex\n direction=\"column\"\n flexShrink=\"0\"\n >\n <Flex\n direction=\"column\"\n flexShrink=\"0\"\n >\n <Flex\n style={{\n borderRadius: 'var(--radius-2)',\n borderWidth: '1px',\n borderStyle: 'solid',\n borderColor: errors.content ? 'var(--red-9)' : 'var(--gray-5)',\n ...(errors.content ? { backgroundColor: 'var(--red-2)' } : {}),\n }}\n p=\"2\"\n pl=\"3\"\n wrap=\"wrap\"\n >\n {children}\n </Flex>\n </Flex>\n </Flex>\n </RadixContainer>\n )\n}\n\nexport const Field = {\n Root,\n Control,\n Files,\n}\n","import {\n Flex,\n} from '@radix-ui/themes'\nimport { useFormContext } from 'react-hook-form'\nimport { usePrevious } from '@/hooks/misc/usePrevious'\nimport { useContext, useMemo, useRef, useEffect } from 'react'\nimport { AssistantNameContext } from '@/contexts/assistants/AssistantNameContext'\nimport { TextareaBase } from '@/components/textareas/TextareaBase'\nimport { useMessageFormContext } from '@/hooks/messages/useMessageFormContext'\nimport type { StyleProps } from '@/types'\n\nconst Root = ({\n children,\n style,\n className,\n}: {\n children: React.ReactNode\n} & StyleProps) => (\n <Flex\n flexGrow=\"1\"\n pt=\"4px\"\n style={style}\n className={className}\n >\n {children}\n </Flex>\n)\n\nconst Input = (props: Omit<StyleProps, 'style'> & {\n style?: Omit<React.CSSProperties, 'minHeight' | 'maxHeight' | 'height'>\n placeholder?: string\n}) => {\n const assistantNameContext = useContext(AssistantNameContext)\n const {\n register,\n } = useFormContext()\n\n const { isDisabled, isLoading } = useMessageFormContext()\n\n const isSubmitDisabled = useMemo(() => (\n isDisabled || isLoading\n ), [isDisabled, isLoading])\n\n const isDisabledPrevious = usePrevious(isDisabled)\n\n const textareaRef = useRef<HTMLTextAreaElement>(null)\n const textareaProps = register('content')\n\n useEffect(() => {\n if (isDisabled) return\n if (!isDisabledPrevious) return\n if (!textareaRef.current) return\n\n textareaRef.current.focus()\n }, [isDisabled, isDisabledPrevious, textareaProps])\n\n return (\n <TextareaBase\n minRows={1}\n placeholder={props.placeholder ?? `Message ${assistantNameContext}...`}\n disabled={isDisabled}\n onKeyDown={(e: any) => {\n if (e.key === 'Enter' && !e.shiftKey) {\n e.preventDefault()\n\n if (isSubmitDisabled) return\n e.currentTarget.form?.requestSubmit()\n }\n }}\n {...textareaProps}\n {...props}\n ref={(e: any) => {\n textareaProps.ref(e)\n // @ts-ignore-next-line\n textareaRef.current = e\n }}\n />\n )\n}\n\nexport const Control = (props: StyleProps) => (\n <Root {...props}>\n <Input />\n </Root>\n)\n\nControl.Root = Root\nControl.Input = Input\n","import { useEffect, useRef } from 'react'\n\nexport const usePrevious = <T,>(state: T): T | undefined => {\n const ref = useRef<T>()\n\n useEffect(() => {\n ref.current = state\n })\n\n return ref.current\n}\n","import { forwardRef } from 'react'\nimport TextareaAutosize from 'react-textarea-autosize'\nimport type { StyleProps } from '@/types'\n\ntype Props = React.ComponentProps<typeof TextareaAutosize> & StyleProps\n\nexport const TextareaBase = forwardRef(function TextareaBase({\n style,\n className,\n ...rest\n}: Props, ref) {\n return (\n <>\n <style>\n {`.superinterface-textarea { min-height: inherit; height: 30px; }\n.superinterface-textarea::placeholder { color: var(--gray-a10); }`}\n </style>\n\n <TextareaAutosize\n // @ts-ignore-next-line\n ref={ref}\n className={`rt-reset superinterface-textarea ${className ?? ''}`}\n style={{\n border: 0,\n outline: 0,\n boxSizing: 'border-box',\n resize: 'none',\n color: 'var(--gray-12)',\n flexGrow: 1,\n display: 'flex',\n ...(style ?? {}),\n }}\n {...rest}\n />\n </>\n )\n})\n","import {\n Flex,\n Card,\n Spinner,\n Text,\n IconButton,\n} from '@radix-ui/themes'\nimport {\n FileIcon,\n Cross2Icon,\n} from '@radix-ui/react-icons'\nimport { useMessageFormContext } from '@/hooks/messages/useMessageFormContext'\nimport { isOptimistic } from '@/lib/optimistic/isOptimistic'\nimport type { StyleProps } from '@/types'\n\nexport const Preview = (props: StyleProps) => {\n const { files, setFiles } = useMessageFormContext()\n\n if (!files.length) {\n return null\n }\n\n return (\n <Flex\n flexBasis=\"100%\"\n direction=\"column\"\n pb=\"2\"\n gap=\"1\"\n {...props}\n >\n {files.map((file) => (\n <Card\n key={file.id}\n variant=\"ghost\"\n >\n <Flex\n align=\"center\"\n justify=\"between\"\n gap=\"1\"\n >\n <Flex\n align=\"center\"\n gap=\"1\"\n flexShrink=\"1\"\n minWidth=\"0\"\n maxWidth=\"250px\"\n >\n <Flex\n flexShrink=\"0\"\n >\n <Spinner\n loading={isOptimistic({ id: file.id })}\n >\n <FileIcon />\n </Spinner>\n </Flex>\n\n <Text\n size=\"2\"\n truncate\n wrap=\"nowrap\"\n >\n {file.filename}\n </Text>\n </Flex>\n\n <Flex\n flexShrink=\"0\"\n >\n <IconButton\n onClick={() => (\n setFiles((prev) => (\n prev.filter((prevFile) => prevFile.id !== file.id)\n ))\n )}\n color=\"gray\"\n variant=\"ghost\"\n size=\"1\"\n >\n <Cross2Icon />\n </IconButton>\n </Flex>\n </Flex>\n </Card>\n ))}\n </Flex>\n )\n}\n","'use client'\n\nimport type OpenAI from 'openai'\nimport { useCallback } from 'react'\nimport { omit } from 'radash'\nimport dayjs from 'dayjs'\nimport { optimisticId } from '@/lib/optimistic/optimisticId'\nimport {\n FilePlusIcon,\n} from '@radix-ui/react-icons'\nimport {\n IconButton,\n Flex,\n} from '@radix-ui/themes'\nimport { useToasts } from '@/hooks/toasts/useToasts'\nimport { useMessageFormContext } from '@/hooks/messages/useMessageFormContext'\nimport { useCreateFile } from '@/hooks/files/useCreateFile'\nimport type { StyleProps } from '@/types'\n\nconst accept = `.c,text/x-c,\n.cs,text/x-csharp,\n.cpp,text/x-c++,\n.doc,application/msword,\n.docx,application/vnd.openxmlformats-officedocument.wordprocessingml.document,\n.html,text/html,\n.java,text/x-java,\n.json,application/json,\n.md,text/markdown,\n.pdf,application/pdf,\n.php,text/x-php,\n.pptx,application/vnd.openxmlformats-officedocument.presentationml.presentation,\n.py,text/x-python,\n.py,text/x-script.python,\n.rb,text/x-ruby,\n.tex,text/x-tex,\n.txt,text/plain,\n.css,text/css,\n.js,text/javascript,\n.sh,application/x-sh,\n.ts,application/typescript`\n\nexport const Control = (props: StyleProps) => {\n const { isDisabled, isLoading, setFiles } = useMessageFormContext()\n const { createFile } = useCreateFile()\n const { addToast } = useToasts()\n\n const onChange = useCallback(async (event: React.ChangeEvent<HTMLInputElement>) => {\n const fileObjects = event.target.files\n if (!fileObjects) return\n\n const newFiles = Array.from(fileObjects).map((fileObject) => ({\n id: optimisticId(),\n filename: fileObject.name,\n object: 'file' as 'file',\n purpose: 'assistants' as 'assistants',\n created_at: dayjs().unix(),\n bytes: fileObject.size,\n status: 'processed' as 'processed',\n fileObject,\n }))\n\n setFiles((prev: OpenAI.Files.FileObject[]) => [\n ...prev,\n ...newFiles.map((file) => omit(file, ['fileObject'])),\n ])\n\n for await (const newFile of newFiles) {\n await createFile({\n file: newFile.fileObject,\n },\n {\n onSuccess: ({\n file,\n }: {\n file: OpenAI.Files.FileObject\n }) => (\n setFiles((prev) => ([\n ...prev.filter((prevFile) => prevFile.id !== newFile.id),\n file,\n ]))\n ),\n onError: () => {\n addToast({ type: 'error', message: 'Could not upload file. Please try again.' })\n setFiles((prev) => (\n prev.filter((prevFile) => prevFile.id !== newFile.id)\n ))\n },\n })\n }\n }, [addToast, createFile, setFiles])\n\n return (\n <Flex\n pt=\"2\"\n pr=\"2\"\n flexGrow=\"0\"\n {...props}\n >\n <IconButton\n type=\"button\"\n variant=\"ghost\"\n color=\"gray\"\n disabled={isDisabled || isLoading}\n style={{\n position: 'relative',\n overflow: 'hidden',\n }}\n >\n <FilePlusIcon />\n <input\n type=\"file\"\n multiple\n accept={accept}\n onChange={onChange}\n style={{\n cursor: 'pointer',\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n opacity: 0,\n }}\n />\n </IconButton>\n </Flex>\n )\n}\n","import { partob } from 'radash'\nimport {\n useMutation,\n useQueryClient,\n} from '@tanstack/react-query'\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\nimport { useThreadContext } from '@/hooks/threads/useThreadContext'\nimport { mutationOptions } from './lib/mutationOptions'\n\nexport const useCreateFile = ({\n onError = () => {},\n}: {\n onError?: (error: unknown) => void\n} = {\n onError: () => {},\n}) => {\n const queryClient = useQueryClient()\n const superinterfaceContext = useSuperinterfaceContext()\n const threadContext = useThreadContext()\n\n const props = useMutation(mutationOptions({\n queryClient,\n threadContext,\n superinterfaceContext,\n onError,\n }))\n\n return {\n ...props,\n createFile: (...args: any[]) => {\n const [firstArg, ...restArgs] = args\n return props.mutateAsync({\n ...threadContext.variables,\n ...firstArg,\n }, ...restArgs)\n },\n }\n}\n","export const formData = (variables: any) => {\n const data = new FormData()\n\n for (const key in variables) {\n data.append(key, variables[key])\n }\n\n return data\n}\n","import { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\nimport { formData } from './formData'\n\nexport const body = ({\n variables,\n superinterfaceContext,\n}: {\n variables: {\n [key: string]: any\n }\n superinterfaceContext: ReturnType<typeof useSuperinterfaceContext>\n}) => {\n if (variables.threadId) return formData(variables)\n if (!variables.assistantId) return formData(variables)\n if (!superinterfaceContext.threadIdStorageOptions?.get) return formData(variables)\n\n const threadId = superinterfaceContext.threadIdStorageOptions.get({ assistantId: variables.assistantId })\n if (!threadId) return formData(variables)\n\n return formData({\n ...variables,\n threadId,\n })\n}\n","import {\n useQueryClient,\n} from '@tanstack/react-query'\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\nimport { useThreadContext } from '@/hooks/threads/useThreadContext'\nimport { body } from './body'\n\nexport const mutationFn = ({\n superinterfaceContext,\n queryClient,\n threadContext,\n}: {\n superinterfaceContext: ReturnType<typeof useSuperinterfaceContext>\n queryClient: ReturnType<typeof useQueryClient>\n threadContext: ReturnType<typeof useThreadContext>\n}) => async (variables: {\n content: string\n [key: string]: any\n}) => {\n const response = await fetch(`${superinterfaceContext.baseUrl}/files`, {\n method: 'POST',\n body: body({\n variables,\n superinterfaceContext,\n }),\n })\n\n const result = await response.json()\n return result\n}\n","import _ from 'lodash'\nimport {\n useQueryClient,\n} from '@tanstack/react-query'\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\nimport { useThreadContext } from '@/hooks/threads/useThreadContext'\nimport { mutationFn } from './mutationFn'\n\nexport const mutationOptions = ({\n queryClient,\n threadContext,\n superinterfaceContext,\n onError,\n}: {\n queryClient: ReturnType<typeof useQueryClient>,\n threadContext: ReturnType<typeof useThreadContext>,\n superinterfaceContext: ReturnType<typeof useSuperinterfaceContext>,\n onError: (error: unknown) => void\n}) => {\n const mutationKey = ['createFile', threadContext.variables]\n\n return {\n mutationFn: mutationFn({\n queryClient,\n superinterfaceContext,\n threadContext,\n }),\n onError,\n ...threadContext.defaultOptions.mutations,\n ...queryClient.getMutationDefaults(mutationKey),\n mutationKey,\n }\n}\n","import { Preview } from './Preview'\nimport { Control } from './Control'\n\nexport const Files = {\n Preview,\n Control,\n}\n","import type { StyleProps } from '@/types'\nimport { Submit } from './Submit'\nimport { Root } from './Root'\nimport { Field } from './Field'\n\nexport const MessageForm = (props: StyleProps) => (\n <Root {...props}>\n <Field.Root>\n <Field.Control />\n <Submit />\n </Field.Root>\n </Root>\n)\n\nMessageForm.Root = Root\nMessageForm.Field = Field\nMessageForm.Submit = Submit\n","import { Flex } from '@radix-ui/themes'\nimport {\n Provider,\n Args as ThreadProviderArgs,\n} from '@/components/threads/Thread/Provider'\nimport type { StyleProps } from '@/types'\nimport { ToastsProvider } from '@/components/toasts/ToastsProvider'\n\nexport type Args = ThreadProviderArgs & StyleProps\n\nexport const Root = ({\n children,\n style,\n className,\n ...rest\n}: Args) => (\n <ToastsProvider bottom=\"var(--space-9)\">\n <Provider {...rest}>\n <Flex\n direction=\"column\"\n flexGrow=\"1\"\n className={className}\n style={style}\n >\n {children}\n </Flex>\n </Provider>\n </ToastsProvider>\n)\n","'use client'\n\nimport { SuperinterfaceProvider } from '@/components/core/SuperinterfaceProvider'\nimport type { Args as SuperinterfaceProviderArgs } from '@/components/core/SuperinterfaceProvider'\n\nexport type Args = SuperinterfaceProviderArgs\nexport const Provider = SuperinterfaceProvider\n","import { useState, useCallback } from 'react'\nimport * as Toast from '@radix-ui/react-toast'\nimport { ToastsContext } from '@/contexts/toasts/ToastsContext'\nimport { CustomToast } from './CustomToast'\nimport { Toast as ToastType } from '@/types'\n\nexport const ToastsProvider = ({\n children,\n bottom = 0,\n}: {\n children: React.ReactNode\n bottom?: number | string\n}) => {\n const [toasts, setToasts] = useState<ToastType[]>([])\n const addToast = useCallback((toast: ToastType) => (\n setToasts((prevToasts) => [\n ...prevToasts,\n toast,\n ])\n ), [])\n\n return (\n <ToastsContext.Provider\n value={{\n toasts,\n addToast,\n }}\n >\n <Toast.Provider>\n {children}\n\n {Array.from(toasts).map((toast: ToastType, index: number) => (\n <CustomToast\n key={index}\n toast={toast}\n />\n ))}\n\n <Toast.Viewport\n style={{\n position: 'absolute',\n bottom,\n right: 0,\n display: 'flex',\n flexDirection: 'column',\n padding: 'var(--space-5)',\n gap: 'var(--space-3)',\n width: '390px',\n maxWidth: '100vw',\n margin: 0,\n listStyle: 'none',\n zIndex: 99999999999999,\n outline: 'none',\n }}\n />\n </Toast.Provider>\n </ToastsContext.Provider>\n )\n}\n","import * as Toast from '@radix-ui/react-toast'\nimport {\n Card,\n Text,\n Flex,\n} from '@radix-ui/themes'\nimport {\n CheckCircledIcon,\n CrossCircledIcon,\n} from '@radix-ui/react-icons'\nimport { Toast as ToastType } from '@/types'\n\nexport const CustomToast = ({\n toast,\n}: {\n toast: ToastType,\n}) => (\n <Toast.Root>\n <Card>\n <Toast.Title>\n <Flex>\n <Flex\n pr=\"2\"\n height=\"14px\"\n align=\"center\"\n >\n {toast.type === 'success' ? (\n <CheckCircledIcon\n color=\"var(--accent-9)\"\n />\n ) : (\n <CrossCircledIcon\n color=\"var(--red-9)\"\n />\n )}\n </Flex>\n <Text\n weight=\"medium\"\n size=\"1\"\n >\n {toast.message}\n </Text>\n </Flex>\n </Toast.Title>\n </Card>\n </Toast.Root>\n)\n","import { Messages } from '@/components/threads/Thread/Messages'\nimport { MessageForm } from '@/components/threads/Thread/MessageForm'\nimport { Root, Args as RootArgs } from '@/components/threads/Thread/Root'\n\ntype Args = Omit<RootArgs, 'children'>\n\nexport const Thread = (props: Args) => (\n <Root {...props}>\n <Messages />\n <MessageForm />\n </Root>\n)\n\nThread.Root = Root\nThread.Messages = Messages\nThread.MessageForm = MessageForm\n","import { useContext } from 'react'\nimport { MessageContext } from '@/contexts/messages/MessageContext'\n\nexport const useMessageContext = () => (\n useContext(MessageContext)\n)\n","import { useMemo } from 'react'\nimport {\n useQuery,\n} from '@tanstack/react-query'\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\nimport { queryOptions } from './lib/queryOptions'\n\ntype Args = {\n assistantId: string\n}\n\nexport const useAssistant = ({\n assistantId,\n}: Args) => {\n const superinterfaceContext = useSuperinterfaceContext()\n const props = useQuery(queryOptions({\n assistantId,\n superinterfaceContext,\n }))\n\n return useMemo(() => ({\n ...props,\n assistant: props.data ? props.data.assistant : null,\n }), [props])\n}\n","import { queryOptions as tanstackQueryOptions } from '@tanstack/react-query'\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\nimport { queryFn } from './queryFn'\n\ntype Args = {\n assistantId: string\n superinterfaceContext: ReturnType<typeof useSuperinterfaceContext>\n}\n\nexport const queryOptions = ({\n assistantId,\n superinterfaceContext,\n}: Args) => (\n tanstackQueryOptions({\n queryKey: ['assistants', { assistantId }],\n queryFn: queryFn({ superinterfaceContext }),\n })\n)\n","import { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\n\ntype QueryFunctionArgs = {\n queryKey: Readonly<['assistants', { assistantId: string }]>\n}\n\nexport const queryFn = ({\n superinterfaceContext,\n}: {\n superinterfaceContext: ReturnType<typeof useSuperinterfaceContext>\n}) => async ({\n queryKey,\n}: QueryFunctionArgs) => {\n const [_key, { assistantId }] = queryKey\n\n const params = new URLSearchParams({\n publicApiKey: superinterfaceContext.variables.publicApiKey,\n })\n\n return fetch(`${superinterfaceContext.baseUrl}/assistants/${assistantId}?${params}`)\n .then(async (response) => {\n if (response.status !== 200) {\n try {\n const errorResponse = await response.json() as { error: string }\n throw new Error(errorResponse.error)\n } catch (error) {\n throw new Error('Failed to fetch')\n }\n }\n\n return response.json() as Promise<any>\n })\n}\n","import { useState } from 'react'\nimport { ThreadDialogContext } from '@/contexts/threads/ThreadDialogContext'\nimport { useThreadDialogContext } from '@/hooks/threads/useThreadDialogContext'\n\ntype Args = {\n children: React.ReactNode\n}\n\nexport const Provider = ({\n children,\n}: Args) => {\n const threadDialogContext = useThreadDialogContext()\n const [isOpen, setIsOpen] = useState<boolean>(threadDialogContext.isOpen)\n\n return (\n <ThreadDialogContext.Provider\n value={{\n isOpen,\n setIsOpen,\n }}\n >\n {children}\n </ThreadDialogContext.Provider>\n )\n}\n","'use client'\nimport { createContext, Dispatch, SetStateAction } from 'react'\n\nexport const ThreadDialogContext = createContext<{\n isOpen: boolean\n setIsOpen: Dispatch<SetStateAction<boolean>>\n}>({\n isOpen: false,\n setIsOpen: () => {},\n})\n","import { useContext } from 'react'\nimport { ThreadDialogContext } from '@/contexts/threads/ThreadDialogContext'\n\nexport const useThreadDialogContext = () => (\n useContext(ThreadDialogContext)\n)\n","import { Provider } from '@/components/threads/ThreadDialog/Provider'\n\ntype Args = {\n children: React.ReactNode\n}\n\nexport const Root = ({\n children,\n}: Args) => (\n <Provider>\n {children}\n </Provider>\n)\n","import {\n Flex,\n} from '@radix-ui/themes'\nimport { useThreadDialogContext } from '@/hooks/threads/useThreadDialogContext'\nimport { Button } from './Button'\nimport type { StyleProps } from '@/types'\n\ntype Args = {\n children: React.ReactNode\n} & StyleProps\n\nconst Root = ({\n children,\n style,\n className,\n}: Args) => {\n const { setIsOpen, isOpen } = useThreadDialogContext()\n\n return (\n <Flex\n display={{\n initial: isOpen ? 'none' : 'flex',\n sm: 'flex',\n }}\n onClick={() => setIsOpen((prev) => !prev)}\n direction=\"column\"\n flexShrink=\"0\"\n justify=\"end\"\n align=\"end\"\n position=\"fixed\"\n bottom=\"24px\"\n right=\"24px\"\n className={className}\n style={{\n zIndex: 9999999999,\n ...(style ?? {}),\n }}\n >\n {children}\n </Flex>\n )\n}\n\nexport const Trigger = (args: Omit<Args, 'children'>) => (\n <Root {...args}>\n <Button />\n </Root>\n)\n\nTrigger.Root = Root\nTrigger.Button = Button\n","import {\n IconButton,\n} from '@radix-ui/themes'\nimport {\n ChatBubbleIcon,\n} from '@radix-ui/react-icons'\nimport type { StyleProps } from '@/types'\n\nexport const Button = (props: StyleProps) => (\n <IconButton\n size=\"4\"\n radius=\"full\"\n {...props}\n >\n <ChatBubbleIcon />\n </IconButton>\n)\n","import {\n Card,\n Inset,\n Flex,\n} from '@radix-ui/themes'\nimport { useThreadDialogContext } from '@/hooks/threads/useThreadDialogContext'\nimport { Thread } from '@/components/threads/Thread'\nimport { Close } from '@/components/threads/ThreadDialog/Close'\nimport type { StyleProps } from '@/types'\n\ntype Args = {\n children: React.ReactNode\n} & StyleProps\n\nconst Root = ({\n children,\n className,\n style,\n}: Args) => {\n const { isOpen } = useThreadDialogContext()\n if (!isOpen) return null\n\n return (\n <Flex\n className={className}\n direction=\"column\"\n justify=\"end\"\n position=\"fixed\"\n bottom={{\n initial: '0',\n sm: '72px',\n }}\n right={{\n initial: '0',\n sm: '24px',\n }}\n maxHeight={{\n initial: undefined,\n sm: '720px',\n }}\n maxWidth={{\n initial: undefined,\n sm: '400px',\n }}\n width=\"100%\"\n height={{\n initial: '100%',\n sm: 'calc(100% - 96px)',\n }}\n style={{\n zIndex: 9999999999,\n ...style,\n }}\n >\n <Card\n mb={{\n initial: undefined,\n sm: '3',\n }}\n style={{\n position: 'relative',\n display: 'flex',\n flexGrow: 1,\n }}\n >\n <Inset\n clip=\"padding-box\"\n side=\"all\"\n pb=\"current\"\n style={{\n display: 'flex',\n flexGrow: 1,\n }}\n >\n {children}\n </Inset>\n <Close />\n </Card>\n </Flex>\n )\n}\n\nconst Messages = ({\n className,\n style,\n}: StyleProps) => (\n <Thread.Messages\n className={className}\n style={{\n paddingTop: 'var(--space-5)',\n paddingRight: 'var(--space-5)',\n paddingLeft: 'var(--space-5)',\n ...style,\n }}\n />\n)\n\nconst FormContainer = ({\n children,\n className,\n style,\n}: {\n children: React.ReactNode\n} & StyleProps) => (\n <Flex\n direction=\"column\"\n pl=\"5\"\n pr=\"5\"\n pb=\"3\"\n flexShrink=\"0\"\n className={className}\n style={style}\n >\n {children}\n </Flex>\n)\n\nexport const Content = (props: StyleProps) => (\n <Root {...props}>\n <Thread.Root>\n <Messages />\n <FormContainer>\n <Thread.MessageForm />\n </FormContainer>\n </Thread.Root>\n </Root>\n)\n\nContent.Root = Root\nContent.Messages = Messages\nContent.FormContainer = FormContainer\n","import {\n Cross1Icon,\n} from '@radix-ui/react-icons'\nimport {\n IconButton,\n Flex,\n} from '@radix-ui/themes'\nimport { useThreadDialogContext } from '@/hooks/threads/useThreadDialogContext'\n\nexport const Close = () => {\n const { setIsOpen, isOpen } = useThreadDialogContext()\n\n return (\n <Flex\n display={{\n initial: isOpen ? 'flex' : 'none',\n sm: 'none',\n }}\n onClick={() => setIsOpen((prev) => !prev)}\n direction=\"column\"\n flexShrink=\"0\"\n justify=\"end\"\n align=\"end\"\n position=\"absolute\"\n top=\"24px\"\n right='24px'\n style={{\n zIndex: 9999999999,\n }}\n >\n <IconButton\n size=\"2\"\n variant=\"soft\"\n >\n <Cross1Icon />\n </IconButton>\n </Flex>\n )\n}\n","import { Root } from '@/components/threads/ThreadDialog/Root'\nimport { Trigger } from '@/components/threads/ThreadDialog/Trigger'\nimport { Content } from '@/components/threads/ThreadDialog/Content'\n\nexport const ThreadDialog = () => (\n <Root>\n <Content />\n <Trigger />\n </Root>\n)\n\nThreadDialog.Root = Root\nThreadDialog.Trigger = Trigger\nThreadDialog.Content = Content\n","'use client'\n\n// import 'regenerator-runtime/runtime'\nimport { Flex } from '@radix-ui/themes'\nimport _ from 'lodash'\nimport { AudioThreadContext } from '@/contexts/threads/AudioThreadContext'\nimport { useCreateMessage } from '@/hooks/messages/useCreateMessage'\nimport { usePermission } from '@/hooks/misc/usePermission'\nimport { blobToData } from './lib/blobToData'\nimport { useStatus } from '@/hooks/audioThreads/useStatus'\nimport { useRecorder } from '@/hooks/audioThreads/useRecorder'\nimport { useMessageAudio } from '@/hooks/audioThreads/useMessageAudio'\nimport {\n useQueryClient,\n} from '@tanstack/react-query'\nimport { useThreadContext } from '@/hooks/threads/useThreadContext'\nimport { useToasts } from '@/hooks/toasts/useToasts'\nimport { createMessageDefaultOnError } from '@/lib/errors/createMessageDefaultOnError'\nimport { ToastsProvider } from '@/components/toasts/ToastsProvider'\nimport type { StyleProps } from '@/types'\n\nexport type Args = {\n children: React.ReactNode\n} & StyleProps\n\nconst Content = ({\n children,\n className,\n style,\n}: Args) => {\n const { addToast } = useToasts()\n const queryClient = useQueryClient()\n const threadContext = useThreadContext()\n\n const createMessageProps = useCreateMessage({\n onError: (error: unknown) => {\n createMessageDefaultOnError({\n queryClient,\n addToast,\n threadContext,\n })(error)\n\n recorderProps.start()\n }\n })\n\n const recorderProps = useRecorder({\n isStopOnSilence: true,\n onStart: async () => {\n },\n onStop: async (_event: any, chunks: BlobPart[]) => {\n // @ts-ignore-next-line\n const blob = new Blob(chunks, { type: chunks[0].type })\n const audioContent = await blobToData(blob)\n\n return createMessageProps.createMessage({\n // @ts-ignore-next-line\n audioContent,\n })\n },\n })\n\n const microphonePermission = usePermission({ name: 'microphone' })\n\n const messageAudioProps = useMessageAudio({\n onEnd: () => {\n if (microphonePermission === 'granted') {\n recorderProps.start()\n }\n }\n })\n\n const { status } = useStatus({\n recorderProps,\n createMessageProps,\n messageAudioProps,\n })\n\n return (\n <AudioThreadContext.Provider\n value={{\n status,\n recorderProps,\n messageAudioProps,\n }}\n >\n <Flex\n direction=\"column\"\n flexGrow=\"1\"\n p=\"9\"\n className={className}\n style={style}\n >\n {children}\n </Flex>\n </AudioThreadContext.Provider>\n )\n}\n\nexport const Root = ({\n children,\n ...rest\n}: Args) => (\n <ToastsProvider>\n <Content {...rest}>\n {children}\n </Content>\n </ToastsProvider>\n)\n","'use client'\nimport { createContext } from 'react'\nimport { statusMessages } from '@/hooks/audioThreads/useStatus/lib/statusMessages'\nimport { useRecorder } from '@/hooks/audioThreads/useRecorder'\nimport { useMessageAudio } from '@/hooks/audioThreads/useMessageAudio'\n\nexport const AudioThreadContext = createContext<{\n status: keyof typeof statusMessages\n recorderProps: ReturnType<typeof useRecorder>\n messageAudioProps: ReturnType<typeof useMessageAudio>\n}>({\n status: 'idle',\n recorderProps: {\n status: 'idle',\n start: async () => {},\n stop: async () => {},\n pause: async () => {},\n resume: async () => {},\n visualizationAnalyser: null,\n },\n // @ts-ignore-next-line\n messageAudioProps: {\n visualizationAnalyser: null,\n playing: false,\n paused: false,\n isReady: false,\n play: async () => {},\n pause: async () => {},\n },\n})\n","// From: https://github.com/streamich/react-use/blob/ade8d3905f544305515d010737b4ae604cc51024/src/usePermission.ts\nimport { useEffect, useState } from 'react';\nimport { noop, off, on } from './util';\n\nexport type IState = PermissionState | '';\n\ninterface IPushPermissionDescriptor extends PermissionDescriptor {\n name: 'push';\n userVisibleOnly?: boolean;\n}\n\n// @ts-ignore-next-line\ninterface IMidiPermissionDescriptor extends PermissionDescriptor {\n name: 'midi';\n sysex?: boolean;\n}\n\n// @ts-ignore-next-line\ninterface IDevicePermissionDescriptor extends PermissionDescriptor {\n name: 'camera' | 'microphone' | 'speaker';\n deviceId?: string;\n}\n\nexport type IPermissionDescriptor =\n | PermissionDescriptor\n | IPushPermissionDescriptor\n | IMidiPermissionDescriptor\n | IDevicePermissionDescriptor;\n\n// const usePermission = <T extends PermissionDescriptor>(permissionDesc: T): IState => {\nexport const usePermission = (permissionDesc: IPermissionDescriptor): IState => {\n const [state, setState] = useState<IState>('');\n\n useEffect(() => {\n let mounted = true;\n let permissionStatus: PermissionStatus | null = null;\n\n const onChange = () => {\n if (!mounted) {\n return;\n }\n setState(() => permissionStatus?.state ?? '');\n };\n\n navigator.permissions\n // @ts-ignore-next-line\n .query(permissionDesc)\n .then((status) => {\n permissionStatus = status;\n on(permissionStatus, 'change', onChange);\n onChange();\n })\n .catch(noop);\n\n return () => {\n permissionStatus && off(permissionStatus, 'change', onChange);\n mounted = false;\n permissionStatus = null;\n };\n }, [permissionDesc]);\n\n return state;\n};\n","// From: https://github.com/streamich/react-use/blob/ade8d3905f544305515d010737b4ae604cc51024/src/misc/util.ts\nexport const noop = () => {};\n\nexport function on<T extends Window | Document | HTMLElement | EventTarget>(\n obj: T | null,\n ...args: Parameters<T['addEventListener']> | [string, Function | null, ...any]\n): void {\n if (obj && obj.addEventListener) {\n obj.addEventListener(...(args as Parameters<HTMLElement['addEventListener']>));\n }\n}\n\nexport function off<T extends Window | Document | HTMLElement | EventTarget>(\n obj: T | null,\n ...args: Parameters<T['removeEventListener']> | [string, Function | null, ...any]\n): void {\n if (obj && obj.removeEventListener) {\n obj.removeEventListener(...(args as Parameters<HTMLElement['removeEventListener']>));\n }\n\n}\n","export const blobToData = (blob: Blob) => (\n new Promise((resolve) => {\n const reader = new FileReader()\n reader.onloadend = () => resolve(reader.result)\n reader.readAsDataURL(blob)\n })\n)\n","import { useMemo } from 'react'\nimport { useCreateMessage } from '@/hooks/messages/useCreateMessage'\nimport { useRecorder } from '@/hooks/audioThreads/useRecorder'\nimport { useMessageAudio } from '@/hooks/audioThreads/useMessageAudio'\nimport { useLatestMessage } from '@/hooks/messages/useLatestMessage'\nimport { statusMessages } from './lib/statusMessages'\n\ntype Args = {\n messageAudioProps: ReturnType<typeof useMessageAudio>\n recorderProps: ReturnType<typeof useRecorder>\n createMessageProps: ReturnType<typeof useCreateMessage>\n}\n\nexport const useStatus = ({\n messageAudioProps,\n recorderProps,\n createMessageProps,\n}: Args) => {\n const latestMessageProps = useLatestMessage()\n\n const status = useMemo((): keyof typeof statusMessages => {\n if (recorderProps.status === 'recording') return 'recording'\n if (createMessageProps.isPending) return 'creatingMessage'\n\n if (messageAudioProps.paused || !messageAudioProps.isAudioPlayed) return 'playerPaused'\n if (messageAudioProps.playing || messageAudioProps.isPending) return 'playing'\n if (!messageAudioProps.isAudioPlayed && !messageAudioProps.isReady) return 'loading'\n if (latestMessageProps.latestMessage?.status === 'in_progress') return 'creatingMessage'\n if (recorderProps.status === 'idle') return 'idle'\n if (recorderProps.status === 'paused') return 'recorderPaused'\n\n return 'loading'\n }, [\n latestMessageProps,\n messageAudioProps,\n recorderProps,\n createMessageProps,\n ])\n\n return {\n status,\n }\n}\n","import dayjs, { Dayjs } from 'dayjs'\nimport { useAudioCapture, UseAudioCaptureProps } from 'use-audio-capture'\nimport { useMemo, useRef, useState, useCallback, useEffect } from 'react'\nimport { useAudioPlayer } from 'react-use-audio-player'\nimport { useInterval } from '@/hooks/misc/useInterval'\nimport { AudioEngine } from '@/types'\n\ntype Args = UseAudioCaptureProps & {\n isStopOnSilence: boolean\n}\n\nexport const useRecorder = ({\n isStopOnSilence,\n onStart,\n onStop,\n}: Args) => {\n const [silenceStart, setSilenceStart] = useState<Dayjs | null>(null)\n const [noiseStart, setNoiseStart] = useState<Dayjs | null>(null)\n const [mediaStream, setMediaStream] = useState<MediaStream | null>(null)\n const [status, setStatus] = useState<'idle' | 'recording' | 'stopped' | 'paused'>('idle')\n const startAudioPlayer = useAudioPlayer()\n const endAudioPlayer = useAudioPlayer()\n const [isLoaded, setIsLoaded] = useState(false)\n\n useEffect(() => {\n if (isLoaded) return\n setIsLoaded(true)\n\n // startAudioPlayer.load('/sounds/warning.wav', {\n // html5: true,\n // })\n // endAudioPlayer.load('/sounds/success.wav', {\n // html5: true,\n // })\n }, [isLoaded, startAudioPlayer, endAudioPlayer])\n\n const audioCaptureProps = useAudioCapture({\n onStart: (event, opts) => {\n // startAudioPlayer.play()\n setStatus('recording')\n setMediaStream(opts.mediaStream)\n isInited.current = false\n if (onStart) onStart(event, opts)\n\n setSilenceStart(null)\n setNoiseStart(null)\n },\n onStop: async (...args) => {\n // endAudioPlayer.play()\n setStatus('stopped')\n if (onStop) await onStop(...args)\n setSilenceStart(null)\n setNoiseStart(null)\n },\n onPause: () => {\n setStatus('paused')\n\n setSilenceStart(null)\n setNoiseStart(null)\n },\n onResume: () => {\n setStatus('recording')\n\n setSilenceStart(null)\n setNoiseStart(null)\n },\n })\n\n const [audioEngine, setAudioEngine] = useState<AudioEngine | null>(null)\n\n const isInited = useRef(false)\n\n useEffect(() => {\n if (!mediaStream) return\n if (isInited.current) return\n isInited.current = true\n\n const audioContext = new AudioContext()\n\n setAudioEngine({\n source: audioContext.createMediaStreamSource(mediaStream),\n audioContext,\n })\n }, [isInited, mediaStream])\n\n const visualizationAnalyser = useMemo(() => {\n if (!audioEngine) return null\n\n const result = audioEngine.audioContext.createAnalyser()\n\n audioEngine.source.connect(result)\n return result\n }, [audioEngine])\n\n const silenceAnalyser = useMemo(() => {\n if (!audioEngine) return null\n\n const result = audioEngine.audioContext.createAnalyser()\n result.minDecibels = -60\n\n audioEngine.source.connect(result)\n return result\n }, [audioEngine])\n\n const handleSilence = useCallback(() => {\n if (!silenceAnalyser) return\n\n const frequencyData = new Uint8Array(silenceAnalyser.frequencyBinCount)\n silenceAnalyser.getByteFrequencyData(frequencyData)\n\n const isSilent = frequencyData.every((f) => f === 0)\n\n setSilenceStart((silenceStart: Dayjs | null) => {\n if (isSilent) return silenceStart || dayjs()\n\n return null\n })\n\n setNoiseStart((noiseStart: Dayjs | null) => {\n if (isSilent) return noiseStart\n\n return noiseStart || dayjs()\n })\n\n requestAnimationFrame(() => handleSilence())\n }, [silenceAnalyser, setNoiseStart, setSilenceStart])\n\n useEffect(() => {\n if (!isStopOnSilence) return\n\n requestAnimationFrame(() => handleSilence())\n }, [handleSilence, isStopOnSilence])\n\n useInterval(() => {\n if (!isStopOnSilence) return\n if (status !== 'recording') return\n if (!silenceStart) return\n if (!noiseStart) return\n if (!silenceStart.isBefore(dayjs().subtract(1.5, 'second'))) return\n\n audioCaptureProps.stop()\n }, 300)\n\n return {\n ...audioCaptureProps,\n status,\n visualizationAnalyser,\n }\n}\n","import { useEffect, useRef } from 'react';\n\nexport const useInterval = (callback: Function, delay?: number | null) => {\n const savedCallback = useRef<Function>(() => {})\n\n useEffect(() => {\n savedCallback.current = callback\n })\n\n useEffect(() => {\n if (delay !== null) {\n const interval = setInterval(() => savedCallback.current(), delay || 0)\n return () => clearInterval(interval)\n }\n\n return undefined\n }, [delay])\n}\n","import { useMemo, useRef, useState, useEffect } from 'react'\nimport nlp from 'compromise'\nimport { Howler } from 'howler'\nimport { useAudioPlayer } from 'react-use-audio-player'\nimport { useLatestMessage } from '@/hooks/messages/useLatestMessage'\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\nimport { AudioEngine } from '@/types'\nimport { isOptimistic } from '@/lib/optimistic/isOptimistic'\nimport { input as getInput } from './lib/input'\nimport { isHtmlAudioSupported } from './lib/isHtmlAudioSupported'\n\ntype MessageSentence = {\n messageId: string\n sentence: string\n}\n\nconst FULL_SENTENCE_REGEX = /[\\.?!]$/\n\nconst getMessageSentences = ({\n messageId,\n input,\n}: {\n messageId: string\n input: string\n}) => {\n const sentences = nlp(input).sentences().json()\n\n return sentences.map((sentence: { text: string }) => ({\n messageId,\n sentence: sentence.text,\n }))\n}\n\nexport const useMessageAudio = ({\n onEnd,\n}: {\n onEnd: () => void\n}) => {\n const [isAudioPlayed, setIsAudioPlayed] = useState(false)\n const [stoppedMessageIds, setStoppedMessageIds] = useState<string[]>([])\n const [playedMessageSentences, setPlayedMessageSentences] = useState<MessageSentence[]>([])\n const audioPlayer = useAudioPlayer()\n const nextAudioPlayer = useAudioPlayer()\n const superinterfaceContext = useSuperinterfaceContext()\n const [isPlaying, setIsPlaying] = useState(false)\n\n const latestMessageProps = useLatestMessage()\n\n const unplayedMessageSentences = useMemo(() => {\n if (!latestMessageProps.latestMessage) return []\n if (latestMessageProps.latestMessage.role !== 'assistant') return []\n if (stoppedMessageIds.includes(latestMessageProps.latestMessage.id)) return []\n\n const input = getInput({\n message: latestMessageProps.latestMessage,\n })\n\n if (!input) return []\n\n const messageSentences = getMessageSentences({\n messageId: latestMessageProps.latestMessage.id,\n input,\n })\n\n return messageSentences.filter((ms: { messageId: string, sentence: string }) => (\n !playedMessageSentences.find((pms) => pms.messageId === ms.messageId && pms.sentence === ms.sentence)\n ))\n }, [latestMessageProps, playedMessageSentences])\n\n useEffect(() => {\n if (isPlaying) return\n if (audioPlayer.playing) return\n if (!latestMessageProps.latestMessage) return\n if (latestMessageProps.latestMessage.role !== 'assistant') return\n\n const firstUnplayedMessageSentence = unplayedMessageSentences[0]\n if (!firstUnplayedMessageSentence) {\n return\n }\n\n const isFullSentence = isOptimistic({ id: latestMessageProps.latestMessage.id }) ||\n latestMessageProps.latestMessage.status !== 'in_progress' ||\n FULL_SENTENCE_REGEX.test(firstUnplayedMessageSentence.sentence)\n\n if (!isFullSentence) return\n setIsPlaying(true)\n\n setPlayedMessageSentences((prev) => [...prev, firstUnplayedMessageSentence])\n\n const searchParams = new URLSearchParams({\n input: firstUnplayedMessageSentence.sentence,\n ...superinterfaceContext.variables,\n })\n\n audioPlayer.load(`${superinterfaceContext.baseUrl}/tts?${searchParams}`, {\n format: 'mp3',\n autoplay: isAudioPlayed,\n html5: isHtmlAudioSupported,\n onplay: () => {\n setIsAudioPlayed(true)\n },\n onstop: () => {\n setStoppedMessageIds((prev) => [...prev, firstUnplayedMessageSentence.messageId])\n setIsPlaying(false)\n },\n onload: () => {\n const nextUnplayedMessageSentence = unplayedMessageSentences[1]\n if (!nextUnplayedMessageSentence) return\n\n const isNextFullSentence = FULL_SENTENCE_REGEX.test(nextUnplayedMessageSentence.sentence)\n if (!isNextFullSentence) return\n\n const nextSearchParams = new URLSearchParams({\n input: nextUnplayedMessageSentence.sentence,\n ...superinterfaceContext.variables,\n })\n\n nextAudioPlayer.load(`${superinterfaceContext.baseUrl}/tts?${nextSearchParams}`, {\n format: 'mp3',\n autoplay: false,\n html5: isHtmlAudioSupported,\n })\n },\n onend: () => {\n setIsPlaying(false)\n\n if (unplayedMessageSentences.length === 1 && latestMessageProps.latestMessage.status !== 'in_progress') {\n onEnd()\n }\n },\n })\n }, [\n unplayedMessageSentences,\n isPlaying,\n superinterfaceContext,\n latestMessageProps,\n audioPlayer,\n nextAudioPlayer,\n playedMessageSentences,\n onEnd,\n ])\n\n useEffect(() => {\n if (isHtmlAudioSupported) {\n // @ts-ignore-next-line\n if (!Howler?._howls[0]?._sounds[0]?._node) return\n\n // @ts-ignore-next-line\n Howler._howls[0]._sounds[0]._node.crossOrigin = 'anonymous'\n }\n }, [audioPlayer])\n\n const [audioEngine, setAudioEngine] = useState<AudioEngine | null>(null)\n\n const isAudioEngineInited = useRef(false)\n\n useEffect(() => {\n if (!audioPlayer.playing) return\n if (isAudioEngineInited.current) return\n isAudioEngineInited.current = true\n\n if (isHtmlAudioSupported) {\n const audioContext = new AudioContext()\n setAudioEngine({\n // @ts-ignore-next-line\n source: audioContext.createMediaElementSource(Howler._howls[0]._sounds[0]._node),\n audioContext,\n })\n } else {\n setAudioEngine({\n source: Howler.masterGain,\n audioContext: Howler.ctx,\n })\n }\n }, [audioPlayer, isAudioEngineInited])\n\n const visualizationAnalyser = useMemo(() => {\n if (!audioEngine) return null\n\n const result = audioEngine.audioContext.createAnalyser()\n\n audioEngine.source.connect(audioEngine.audioContext.destination)\n audioEngine.source.connect(result)\n return result\n }, [audioEngine])\n\n const isPending = useMemo(() => isPlaying || unplayedMessageSentences.length > 0, [isPlaying, unplayedMessageSentences])\n\n return {\n isPending,\n isAudioPlayed,\n ...audioPlayer,\n visualizationAnalyser,\n }\n}\n","import OpenAI from 'openai'\nimport { isEmpty } from 'radash'\nimport { SerializedMessage } from '@/types'\n\ntype Args = {\n message: SerializedMessage\n}\n\nexport const input = ({\n message,\n}: Args) => {\n const textContents = (message.content as OpenAI.Beta.Threads.Messages.TextContentBlock[]).filter((c: OpenAI.Beta.Threads.Messages.TextContentBlock) => (\n c.type === 'text'\n ))\n\n const result = textContents.map((c: OpenAI.Beta.Threads.Messages.TextContentBlock) => (\n c.text.value\n )).join(' ')\n\n if (isEmpty(result)) return null\n\n return result\n}\n","import { useContext, useState, useCallback, useEffect } from 'react'\nimport _ from 'lodash'\nimport { Flex } from '@radix-ui/themes'\nimport { AssistantAvatar } from '@/components/messageGroups/MessageGroupBase/AssistantAvatar'\nimport { Name } from '@/components/messageGroups/MessageGroupBase/Name'\nimport { AssistantNameContext } from '@/contexts/assistants/AssistantNameContext'\nimport { useAudioThreadContext } from '@/hooks/threads/useAudioThreadContext'\nimport { BarsVisualizer } from '@/components/threads/AudioThread/BarsVisualizer'\nimport type { StyleProps } from '@/types'\n\nexport const Visualization = (props: StyleProps) => {\n const audioThreadContext = useAudioThreadContext()\n const assistantNameContext = useContext(AssistantNameContext)\n const [scale, setScale] = useState(0)\n\n const draw = useCallback(({ visualizationAnalyser }: { visualizationAnalyser: AnalyserNode | null }) => {\n if (!visualizationAnalyser) {\n setScale(1)\n return\n }\n\n const frequencyData = new Uint8Array(visualizationAnalyser.frequencyBinCount / 15)\n visualizationAnalyser.getByteFrequencyData(frequencyData)\n\n setScale(1 + _.mean(frequencyData) / 255 / 10)\n\n requestAnimationFrame(() => draw({ visualizationAnalyser }))\n }, [])\n\n useEffect(() => {\n draw({ visualizationAnalyser: audioThreadContext.recorderProps.visualizationAnalyser })\n }, [draw, audioThreadContext])\n\n return (\n <Flex\n direction=\"column\"\n align=\"center\"\n justify=\"center\"\n mb=\"3\"\n flexGrow=\"1\"\n {...props}\n >\n <Flex\n align=\"center\"\n justify=\"center\"\n height=\"200px\"\n width=\"200px\"\n style={{\n backgroundColor: audioThreadContext.status === 'playing' ? 'var(--accent-4)' : 'var(--gray-4)',\n borderRadius: '9999px',\n scale,\n }}\n >\n <BarsVisualizer\n visualizationAnalyser={audioThreadContext.messageAudioProps.visualizationAnalyser}\n backgroundColor={audioThreadContext.status === 'playing' ? 'var(--accent-11)' : 'var(--gray-11)'}\n height=\"40px\"\n barWidth=\"24px\"\n />\n </Flex>\n\n <Flex\n ml=\"-22.5px\"\n gap=\"3\"\n pt=\"5\"\n >\n <AssistantAvatar />\n <Name>\n {assistantNameContext}\n </Name>\n </Flex>\n </Flex>\n )\n}\n","import { useContext } from 'react'\nimport { AudioThreadContext } from '@/contexts/threads/AudioThreadContext'\n\nexport const useAudioThreadContext = () => (\n useContext(AudioThreadContext)\n)\n","'use client'\nimport _ from 'lodash'\nimport {\n Flex,\n Grid,\n} from '@radix-ui/themes'\nimport { useState, useEffect, useCallback } from 'react'\nimport { cluster } from 'radash'\n\nconst barCount = 4\n\nexport const BarsVisualizer = ({\n visualizationAnalyser,\n backgroundColor,\n height,\n barWidth,\n}: {\n visualizationAnalyser: AnalyserNode | null\n backgroundColor: string\n height: string\n barWidth: string\n}) => {\n const [barHeights, setBarHeights] = useState<number[]>([])\n\n const draw = useCallback(({ visualizationAnalyser }: { visualizationAnalyser: AnalyserNode | null }) => {\n if (!visualizationAnalyser) {\n setBarHeights(Array(barCount).fill(0))\n return\n }\n\n const frequencyData = new Uint8Array(visualizationAnalyser.frequencyBinCount / 15)\n visualizationAnalyser.getByteFrequencyData(frequencyData)\n\n // @ts-ignore-next-line\n const clusteredFrequencyData = cluster(frequencyData, frequencyData.length / barCount)\n\n setBarHeights(\n clusteredFrequencyData.map((frequencyDataCluster) => (\n _.mean(frequencyDataCluster) / 255 * 100\n ))\n )\n\n requestAnimationFrame(() => draw({ visualizationAnalyser }))\n }, [])\n\n useEffect(() => {\n draw({ visualizationAnalyser })\n }, [draw, visualizationAnalyser])\n\n return (\n <Grid\n columns={`${barCount}`}\n gap=\"1\"\n width=\"auto\"\n style={{\n // TODO not sure why we need this\n gridTemplateColumns: 'repeat(4, minmax(0, 1fr))',\n }}\n >\n {barHeights.map((barHeight, index) => (\n <Flex\n key={index}\n direction=\"column\"\n align=\"center\"\n justify=\"center\"\n height={height}\n >\n <Flex\n minHeight=\"50%\"\n maxHeight=\"100%\"\n height={`${barHeight + 20}%`}\n width={barWidth}\n style={{\n backgroundColor,\n borderRadius: 'var(--radius-6)',\n }}\n />\n </Flex>\n ))}\n </Grid>\n )\n}\n","import {\n Flex,\n Text,\n} from '@radix-ui/themes'\nimport type { StyleProps } from '@/types'\n\nconst html = ({ texts }: { texts: string[] }) => `\n .status-messages-texts:after {\n content: '${texts[0]}';\n animation: texts ${texts.length * 5}s linear infinite;\n }\n\n @keyframes texts {\n ${texts.map((_, i) => `\n ${i * 100 / texts.length}% {\n content: \"${texts[i]}\";\n }\n `).join('')}\n }`\n\nexport const StatusMessages = ({\n texts,\n className,\n style,\n}: {\n texts: string[]\n} & StyleProps) => (\n <Flex\n justify=\"center\"\n pb=\"5\"\n className={className}\n style={style}\n >\n <Text\n size=\"2\"\n weight=\"regular\"\n color=\"gray\"\n className=\"status-messages-texts\"\n />\n\n <style\n dangerouslySetInnerHTML={{\n __html: html({ texts }),\n }}\n />\n </Flex>\n)\n","import { useAudioThreadContext } from '@/hooks/threads/useAudioThreadContext'\nimport type { StyleProps } from '@/types'\nimport { StatusMessages } from './StatusMessages'\n\nexport const Status = (props: StyleProps) => {\n const audioThreadContext = useAudioThreadContext()\n\n if (audioThreadContext.status === 'recording') {\n return (\n <StatusMessages\n texts={[\n 'Start speaking',\n 'Listening',\n 'Finish speaking to send',\n 'Click the button below to send manually',\n ]}\n {...props}\n />\n )\n }\n\n if (['recorderPaused', 'idle', 'playerPaused'].includes(audioThreadContext.status)) {\n return (\n <StatusMessages\n texts={[\n 'Click the button below to activate',\n ]}\n {...props}\n />\n )\n }\n\n if (audioThreadContext.status === 'playing') {\n return (\n <StatusMessages\n texts={[\n 'Click the button below to interrupt',\n ]}\n {...props}\n />\n )\n }\n\n return (\n <StatusMessages\n texts={[\n 'Thinking',\n ]}\n {...props}\n />\n )\n}\n","import {\n Flex,\n} from '@radix-ui/themes'\nimport { BarsVisualizer } from '@/components/threads/AudioThread/BarsVisualizer'\nimport { useAudioThreadContext } from '@/hooks/threads/useAudioThreadContext'\nimport { MicIcon } from './MicIcon'\nimport { ActionButton } from './ActionButton'\nimport type { StyleProps } from '@/types'\n\nexport const Form = (props: StyleProps) => {\n const audioThreadContext = useAudioThreadContext()\n\n return (\n <Flex\n direction=\"column\"\n align=\"center\"\n {...props}\n >\n <Flex\n pb=\"3\"\n align=\"center\"\n >\n <Flex\n ml=\"-22.5px\"\n mr=\"2\"\n align=\"center\"\n >\n <MicIcon\n style={{\n color: audioThreadContext.status === 'recording' ? 'var(--accent-11)' : 'var(--gray-11)',\n }}\n />\n </Flex>\n\n <Flex\n px=\"2\"\n py=\"1\"\n style= {{\n backgroundColor: audioThreadContext.status === 'recording' ? 'var(--accent-4)' : 'var(--gray-4)',\n borderRadius: 'var(--radius-6)',\n }}\n >\n <BarsVisualizer\n visualizationAnalyser={audioThreadContext.recorderProps.visualizationAnalyser}\n backgroundColor={audioThreadContext.status === 'recording' ? 'var(--accent-11)' : 'var(--gray-11)'}\n height=\"20px\"\n barWidth=\"12px\"\n />\n </Flex>\n </Flex>\n\n <ActionButton />\n </Flex>\n )\n}\n","import { SVGProps } from 'react'\n\nexport const MicIcon = (props: SVGProps<SVGSVGElement>) => (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"currentColor\"\n stroke=\"currentColor\"\n strokeWidth={0}\n viewBox=\"0 0 384 512\"\n height=\"15\"\n width=\"15\"\n {...props}\n >\n <path\n stroke=\"none\"\n d=\"M192 0c-53 0-96 43-96 96v160c0 53 43 96 96 96s96-43 96-96V96c0-53-43-96-96-96zM64 216c0-13.3-10.7-24-24-24s-24 10.7-24 24v40c0 89.1 66.2 162.7 152 174.4V464h-48c-13.3 0-24 10.7-24 24s10.7 24 24 24h144c13.3 0 24-10.7 24-24s-10.7-24-24-24h-48v-33.6c85.8-11.7 152-85.3 152-174.4v-40c0-13.3-10.7-24-24-24s-24 10.7-24 24v40c0 70.7-57.3 128-128 128S64 326.7 64 256v-40z\"\n />\n </svg>\n)\n","import {\n Flex,\n IconButton,\n} from '@radix-ui/themes'\nimport {\n StopIcon,\n PauseIcon,\n ArrowUpIcon,\n ResumeIcon,\n} from '@radix-ui/react-icons'\nimport { useAudioThreadContext } from '@/hooks/threads/useAudioThreadContext'\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\n\nexport const ActionButton = () => {\n const audioThreadContext = useAudioThreadContext()\n const superinterfaceContext = useSuperinterfaceContext()\n\n if (audioThreadContext.status === 'recording') {\n return (\n <Flex\n align=\"center\"\n >\n <Flex\n mr=\"3\"\n ml=\"-7\"\n >\n <IconButton\n onClick={audioThreadContext.recorderProps.pause}\n color=\"gray\"\n variant=\"soft\"\n size=\"1\"\n >\n <PauseIcon />\n </IconButton>\n </Flex>\n\n <IconButton\n onClick={audioThreadContext.recorderProps.stop}\n highContrast\n variant=\"soft\"\n size=\"4\"\n >\n <ArrowUpIcon />\n </IconButton>\n </Flex>\n )\n }\n\n if (audioThreadContext.status === 'recorderPaused') {\n return (\n <IconButton\n onClick={audioThreadContext.recorderProps.resume}\n color=\"red\"\n size=\"4\"\n >\n <ResumeIcon />\n </IconButton>\n )\n }\n\n if (audioThreadContext.status === 'idle') {\n return (\n <IconButton\n onClick={() => audioThreadContext.recorderProps.start()}\n size=\"4\"\n color=\"red\"\n />\n )\n }\n\n if (audioThreadContext.status === 'playing') {\n return (\n <IconButton\n onClick={() => {\n audioThreadContext.messageAudioProps.stop()\n superinterfaceContext.createMessageAbortControllerRef.current?.abort()\n audioThreadContext.recorderProps.start()\n }}\n size=\"4\"\n color=\"gray\"\n variant=\"soft\"\n >\n <StopIcon />\n </IconButton>\n )\n }\n\n if (audioThreadContext.status === 'playerPaused') {\n return (\n <IconButton\n onClick={() => audioThreadContext.messageAudioProps.play()}\n size=\"4\"\n >\n <ResumeIcon />\n </IconButton>\n )\n }\n\n return (\n <IconButton\n size=\"4\"\n variant=\"soft\"\n disabled\n />\n )\n}\n","import { Root, Args as RootArgs } from './Root'\nimport { Visualization } from './Visualization'\nimport { Status } from './Status'\nimport { Form } from './Form'\n\ntype Args = Omit<RootArgs, 'children'>\n\nexport const AudioThread = (props: Args) => (\n <Root {...props}>\n <Visualization />\n <Status />\n <Form />\n </Root>\n)\n\nAudioThread.Root = Root\nAudioThread.Visualization = Visualization\nAudioThread.Status = Status\nAudioThread.Form = Form\n","import { AudioThread } from '@/components/threads/AudioThread'\nimport { Root } from '@/components/threads/ThreadDialog/Root'\nimport { Trigger } from '@/components/threads/ThreadDialog/Trigger'\nimport { Content } from '@/components/threads/ThreadDialog/Content'\nimport type { StyleProps } from '@/types'\n\nexport const AudioThreadDialog = (props: StyleProps) => (\n <Root {...props}>\n <Content.Root>\n <AudioThread />\n </Content.Root>\n <Trigger />\n </Root>\n)\n\nAudioThreadDialog.Root = Root\nAudioThreadDialog.Trigger = Trigger\nAudioThreadDialog.Content = Content\n","import { useMemo } from 'react'\nimport { MarkdownContext, type MarkdownContextType } from '@/contexts/markdown/MarkdownContext'\nimport { useMarkdownContext } from '@/hooks/markdown/useMarkdownContext'\nimport { merge } from '@/lib/misc/merge'\n\nexport const MarkdownProvider = ({\n children,\n ...rest\n}: {\n children: React.ReactNode\n} & Partial<MarkdownContextType>) => {\n const prevMarkdownContext = useMarkdownContext()\n\n const value = useMemo(() => (\n merge(prevMarkdownContext, rest)\n ), [rest, prevMarkdownContext])\n\n return (\n <MarkdownContext.Provider\n value={value}\n >\n {children}\n </MarkdownContext.Provider>\n )\n}\n","import { AvatarType as AvatarTypeEnum } from '@/lib/enums'\nimport { Avatar as AvatarType, StyleProps } from '@/types'\nimport { Avatar as RadixAvatar } from '@radix-ui/themes'\nimport { ImageAvatar } from '@/components/imageAvatars/ImageAvatar'\nimport { IconAvatar } from '@/components/iconAvatars/IconAvatar'\n\nexport const Avatar = ({\n avatar,\n size = '1',\n className,\n style,\n}: {\n avatar: AvatarType\n size?: '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9'\n} & StyleProps) => {\n if (avatar) {\n if (avatar.type === AvatarTypeEnum.IMAGE && avatar.imageAvatar) {\n return (\n <ImageAvatar\n imageAvatar={avatar.imageAvatar}\n size={size}\n className={className}\n style={style}\n />\n )\n }\n\n if (avatar.type === AvatarTypeEnum.ICON && avatar.iconAvatar) {\n return (\n <IconAvatar\n iconAvatar={avatar.iconAvatar}\n size={size}\n className={className}\n style={style}\n />\n )\n }\n }\n\n return (\n <RadixAvatar\n fallback=\"\"\n size={size}\n className={className}\n style={style}\n />\n )\n}\n","import { Avatar } from '@radix-ui/themes'\nimport { Size, ImageAvatar as ImageAvatarType, StyleProps } from '@/types'\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\nimport { optimizedSrc } from './lib/optimizedSrc'\n\nexport const ImageAvatar = ({\n imageAvatar,\n size,\n className,\n style,\n}: {\n imageAvatar: ImageAvatarType\n size: Size\n} & StyleProps) => {\n const superinterfaceContext = useSuperinterfaceContext()\n\n return (\n <Avatar\n className={className}\n style={style}\n fallback=\"\"\n src={optimizedSrc({ imageAvatar, size, superinterfaceContext })}\n size={size}\n />\n )\n}\n","import { Size, ImageAvatar } from '@/types'\n\nconst width = ({\n size,\n}: {\n size: Size\n}) => {\n if (size === '1') {\n return 48\n } else if (size === '2') {\n return 64\n } else if (size === '3') {\n return 96\n } else if (size === '4') {\n return 96\n } else if (size === '5') {\n return 128\n } else if (size === '6') {\n return 256\n } else if (size === '7') {\n return 256\n } else if (size === '8') {\n return 256\n } else if (size === '9') {\n return 384\n }\n\n return 384\n}\n\nexport const path = ({\n imageAvatar,\n size,\n}: {\n imageAvatar: ImageAvatar\n size: Size\n}) => (\n `/_next/image?url=${encodeURIComponent(imageAvatar.url)}&w=${width({ size })}&q=95`\n)\n","import { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\n\nexport const host = ({\n superinterfaceContext,\n}: {\n superinterfaceContext: ReturnType<typeof useSuperinterfaceContext>\n}) => {\n if (!superinterfaceContext.baseUrl) return ''\n if (!/^https?:\\/\\//i.test(superinterfaceContext.baseUrl)) return ''\n\n return new URL(superinterfaceContext.baseUrl).origin\n}\n","import { Size, ImageAvatar } from '@/types'\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\nimport { path } from './path'\nimport { host } from './host'\n\nexport const optimizedSrc = ({\n imageAvatar,\n size,\n superinterfaceContext,\n}: {\n imageAvatar: ImageAvatar\n size: Size\n superinterfaceContext: ReturnType<typeof useSuperinterfaceContext>\n}) => {\n if (!imageAvatar.url) return ''\n if (imageAvatar.url.endsWith('.svg')) return imageAvatar.url\n\n return `${host({ superinterfaceContext })}${path({ imageAvatar, size })}`\n}\n","import { useMemo } from 'react'\nimport { IconAvatar as IconAvatarType, StyleProps } from '@/types'\nimport { Avatar } from '@radix-ui/themes'\nimport { iconAvatarComponents } from '@/lib/iconAvatars/iconAvatarComponents'\n\nexport const IconAvatar = ({\n iconAvatar,\n size,\n className,\n style,\n}: {\n iconAvatar: IconAvatarType\n size: '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9'\n} & StyleProps) => {\n const Component = useMemo(() => (\n iconAvatarComponents[iconAvatar.name]\n ), [iconAvatar])\n\n return (\n <Avatar\n className={className}\n style={style}\n size={size}\n fallback={(\n Component ? (\n <Component />\n ) : (\n ''\n )\n )}\n />\n )\n}\n","import { IconAvatarName } from '@/lib/enums'\nimport {\n BackpackIcon,\n RocketIcon,\n MagicWandIcon,\n CubeIcon,\n TargetIcon,\n DiscIcon,\n GlobeIcon,\n StarIcon,\n LightningBoltIcon,\n FaceIcon,\n PersonIcon,\n HeartIcon,\n} from '@radix-ui/react-icons'\n\nexport const iconAvatarComponents = {\n [IconAvatarName.BACKPACK]: BackpackIcon,\n [IconAvatarName.ROCKET]: RocketIcon,\n [IconAvatarName.MAGIC_WAND]: MagicWandIcon,\n [IconAvatarName.CUBE]: CubeIcon,\n [IconAvatarName.TARGET]: TargetIcon,\n [IconAvatarName.DISC]: DiscIcon,\n [IconAvatarName.GLOBE]: GlobeIcon,\n [IconAvatarName.STAR]: StarIcon,\n [IconAvatarName.LIGHTNING_BOLT]: LightningBoltIcon,\n [IconAvatarName.FACE]: FaceIcon,\n [IconAvatarName.PERSON]: PersonIcon,\n [IconAvatarName.HEART]: HeartIcon,\n}\n","import { useMemo } from 'react'\nimport { ComponentsContext } from '@/contexts/components/ComponentsContext'\nimport { useComponents } from '@/hooks/components/useComponents'\nimport { merge } from '@/lib/misc/merge'\n\nexport const ComponentsProvider = ({\n children,\n ...rest\n}: {\n children: React.ReactNode\n}) => {\n const prevComponents = useComponents()\n\n const value = useMemo(() => (\n merge(prevComponents, rest)\n ), [rest, prevComponents])\n\n return (\n <ComponentsContext.Provider\n value={value}\n >\n {children}\n </ComponentsContext.Provider>\n )\n}\n","import { useContext } from 'react'\nimport { ComponentsContext } from '@/contexts/components/ComponentsContext'\n\nexport const useComponents = () => (\n useContext(ComponentsContext)\n)\n","import { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext'\nimport { AssistantAvatarContext } from '@/contexts/assistants/AssistantAvatarContext'\nimport { AssistantNameContext } from '@/contexts/assistants/AssistantNameContext'\nimport { useAssistant } from '@/hooks/assistants/useAssistant'\nimport { Avatar } from '@/components/avatars/Avatar'\n\ntype Args = {\n children: React.ReactNode\n}\n\nexport const AssistantProvider = ({\n children,\n}: Args) => {\n const superinterfaceContext = useSuperinterfaceContext()\n const { assistant } = useAssistant({\n assistantId: superinterfaceContext.variables.assistantId,\n })\n\n return (\n <AssistantNameContext.Provider value={assistant?.name ?? ''}>\n <AssistantAvatarContext.Provider\n value={<Avatar avatar={assistant?.avatar} />}\n >\n {children}\n </AssistantAvatarContext.Provider>\n </AssistantNameContext.Provider>\n )\n}\n"]}
1
+ {"version":3,"sources":["/Users/domas/Developer/supercorp/superinterface/packages/react/dist/index.js","../src/components/core/SuperinterfaceProvider/index.tsx","../src/lib/misc/merge/index.ts","../src/lib/misc/merge/customizer.ts","../src/contexts/core/SuperinterfaceContext/index.tsx","../src/lib/superinterfaceCloud/baseUrl.ts","../src/lib/threadIdStorage/cookieOptions/get.ts","../src/lib/threadIdStorage/key.ts","../src/lib/threadIdStorage/cookieOptions/set.ts","../src/lib/threadIdStorage/cookieOptions/remove.ts","../src/lib/threadIdStorage/cookieOptions/index.ts","../src/lib/threadIdStorage/localStorageOptions/get.ts","../src/lib/threadIdStorage/localStorageOptions/set.ts","../src/lib/threadIdStorage/localStorageOptions/remove.ts","../src/lib/threadIdStorage/localStorageOptions/index.ts","../src/lib/iframes/isIframe.ts","../src/hooks/core/useSuperinterfaceContext/index.ts","../src/components/threads/Thread/Messages/index.tsx","../src/components/threads/Thread/Message/index.tsx","../src/components/skeletons/StartingContentSkeleton/index.tsx","../src/components/runSteps/RunSteps/index.tsx","../src/contexts/components/ComponentsContext/index.tsx","../src/components/runSteps/RunStep/index.tsx","../src/components/runSteps/RunStep/ToolCalls/index.tsx","../src/components/runSteps/RunStep/ToolCalls/ToolCall/index.tsx","../src/components/runSteps/RunStep/ToolCalls/ToolCall/Fn/index.tsx","../src/contexts/functions/FunctionComponentsContext/index.tsx","../src/components/functions/FunctionBase/index.tsx","../src/components/toolCalls/ToolCallBase/index.tsx","../src/components/toolCalls/ToolCallBase/ToolCallTitle.tsx","../src/components/toolCalls/ToolCallBase/ToolCallIcon.tsx","../src/components/functions/FunctionBase/Content/index.tsx","../src/components/functions/FunctionBase/Content/lib/formattedJsonOrRaw.ts","../src/components/runSteps/RunStep/ToolCalls/ToolCall/Fn/DefaultFunction/lib/title.ts","../src/components/runSteps/RunStep/ToolCalls/ToolCall/Fn/DefaultFunction/index.tsx","../src/components/runSteps/RunStep/ToolCalls/ToolCall/CodeInterpreter/index.tsx","../src/components/runSteps/RunStep/ToolCalls/ToolCall/CodeInterpreter/Content.tsx","../src/components/runSteps/RunStep/ToolCalls/ToolCall/FileSearch.tsx","../src/components/runSteps/RunStep/ToolCalls/ToolCall/Fallback.tsx","../src/components/runSteps/RunStep/ToolCalls/Starting/index.tsx","../src/hooks/messages/useIsMutatingMessage/index.ts","../src/contexts/messages/MessageContext/index.ts","../src/components/threads/Thread/Message/Provider.tsx","../src/components/threads/Thread/Message/Attachments/index.tsx","../src/components/threads/Thread/Message/ContentPart/index.tsx","../src/components/threads/Thread/Message/ContentPart/TextContent.tsx","../src/lib/recma/recmaFallbackComponentPlugin.ts","../src/hooks/markdown/useMarkdownContext/index.ts","../src/contexts/markdown/MarkdownContext/index.ts","../src/contexts/markdown/MarkdownContext/lib/components/index.tsx","../src/contexts/markdown/MarkdownContext/lib/components/Paragraph.tsx","../src/contexts/markdown/MarkdownContext/lib/components/Link.tsx","../src/contexts/markdown/MarkdownContext/lib/components/UnorderedList.tsx","../src/contexts/markdown/MarkdownContext/lib/components/OrderedList.tsx","../src/contexts/markdown/MarkdownContext/lib/components/ListItem.tsx","../src/contexts/markdown/MarkdownContext/lib/components/Strong.tsx","../src/contexts/markdown/MarkdownContext/lib/components/Pre.tsx","../src/contexts/markdown/MarkdownContext/lib/components/Code.tsx","../src/components/suggestions/Suggestions/index.tsx","../src/hooks/messages/useLatestMessage/index.ts","../src/hooks/messages/useMessages/index.tsx","../src/lib/threads/queryOptions/index.ts","../src/lib/threads/queryOptions/variableParams.ts","../src/lib/messages/messagesQueryOptions.ts","../src/components/suggestions/Suggestions/Content.tsx","../src/components/suggestions/Suggestions/Item.tsx","../src/hooks/messages/useCreateMessage/index.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/onMutate/index.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/onMutate/data.ts","../src/lib/optimistic/optimisticId.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/index.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadCreated.ts","../src/lib/optimistic/isOptimistic.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/extendMessage.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadMessageCreated.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadMessageDelta.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadMessageCompleted.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadRunCreated.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadRunFailed.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadRunStepCreated.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadRunStepDelta.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadRunStepCompleted.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadRunRequiresAction.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/index.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/index.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/body.ts","../src/hooks/messages/useCreateMessage/lib/mutationOptions/index.ts","../src/hooks/toasts/useToasts/index.ts","../src/contexts/toasts/ToastsContext/index.ts","../src/lib/errors/createMessageDefaultOnError.ts","../src/contexts/markdown/MarkdownContext/lib/components/Img/index.tsx","../src/components/images/Image.tsx","../src/contexts/markdown/MarkdownContext/lib/components/Img/lib/isVideoSrc.ts","../src/contexts/markdown/MarkdownContext/lib/components/Img/lib/isAudioSrc.ts","../src/contexts/markdown/MarkdownContext/lib/components/Img/Video/index.tsx","../src/components/media/PlayButton.tsx","../src/components/media/VolumeButton.tsx","../src/components/media/Time.tsx","../src/components/media/MediaContainer.tsx","../src/contexts/markdown/MarkdownContext/lib/components/Img/Video/FullscreenButton.tsx","../src/contexts/markdown/MarkdownContext/lib/components/Img/Audio/index.tsx","../src/contexts/markdown/MarkdownContext/lib/components/Annotation/index.tsx","../src/contexts/markdown/MarkdownContext/lib/components/Annotation/AnnotationBase.tsx","../src/contexts/markdown/MarkdownContext/lib/components/Annotation/FilePathAnnotation.tsx","../src/contexts/markdown/MarkdownContext/lib/getRemarkPlugins.ts","../src/lib/remark/remarkAnnotation.ts","../../../node_modules/react-error-boundary/dist/react-error-boundary.esm.js","../src/components/threads/Thread/Message/ContentPart/ImageFileContent.tsx","../src/components/threads/Thread/Messages/Content/index.tsx","../src/hooks/messageGroups/useMessageGroups/index.ts","../src/hooks/messageGroups/useMessageGroups/lib/messageGroups/index.ts","../src/lib/messages/order.ts","../src/hooks/messageGroups/useMessageGroups/lib/messageGroups/newGroup/newGroupItem.ts","../src/hooks/messageGroups/useMessageGroups/lib/messageGroups/newGroup/index.ts","../src/components/skeletons/MessagesSkeleton/index.tsx","../src/components/messageGroups/MessageGroupBase/index.tsx","../src/components/messageGroups/MessageGroupBase/Name.tsx","../src/components/threads/Thread/Messages/Content/MessageGroup/index.tsx","../src/components/messageGroups/MessageGroupBase/AssistantAvatar.tsx","../src/contexts/assistants/AssistantAvatarContext/index.tsx","../src/contexts/assistants/AssistantNameContext/index.tsx","../src/components/messageGroups/MessageGroupBase/UserAvatar.tsx","../src/contexts/users/UserAvatarContext/index.tsx","../src/components/threads/Thread/Messages/Content/MessageGroup/Content/index.tsx","../src/components/threads/Thread/Messages/Progress/index.tsx","../src/components/skeletons/StartingSkeleton/index.tsx","../src/components/threads/Thread/Messages/Root/index.tsx","../src/hooks/misc/useInfiniteScroll/index.tsx","../src/hooks/misc/useThrottledEffect/index.tsx","../src/components/threads/Thread/Messages/NextPageSkeleton.tsx","../src/components/threads/Thread/MessageForm/Submit/index.tsx","../src/hooks/messages/useMessageFormContext/index.ts","../src/contexts/messages/MessageFormContext/index.ts","../src/components/threads/Thread/MessageForm/Root/index.tsx","../src/components/threads/Thread/MessageForm/Root/lib/formOptions.ts","../src/components/threads/Thread/MessageForm/Field/index.tsx","../src/components/threads/Thread/MessageForm/Field/Control.tsx","../src/hooks/misc/usePrevious.ts","../src/components/textareas/TextareaBase/index.tsx","../src/components/threads/Thread/MessageForm/Field/Files/Preview.tsx","../src/components/threads/Thread/MessageForm/Field/Files/Control.tsx","../src/hooks/files/useCreateFile/index.ts","../src/hooks/files/useCreateFile/lib/mutationOptions/mutationFn/body/formData.ts","../src/hooks/files/useCreateFile/lib/mutationOptions/mutationFn/body/index.ts","../src/hooks/files/useCreateFile/lib/mutationOptions/mutationFn/index.ts","../src/hooks/files/useCreateFile/lib/mutationOptions/index.ts","../src/components/threads/Thread/MessageForm/Field/Files/index.tsx","../src/components/threads/Thread/MessageForm/index.tsx","../src/components/threads/Thread/Root/index.tsx","../src/components/threads/Thread/Provider/index.tsx","../src/components/toasts/ToastsProvider/index.tsx","../src/components/toasts/ToastsProvider/CustomToast.tsx","../src/components/threads/Thread/index.tsx","../src/hooks/messages/useMessageContext/index.ts","../src/hooks/assistants/useAssistant/index.ts","../src/hooks/assistants/useAssistant/lib/queryOptions/index.ts","../src/hooks/assistants/useAssistant/lib/queryOptions/queryFn.ts","../src/components/threads/ThreadDialog/Provider/index.tsx","../src/contexts/threads/ThreadDialogContext/index.ts","../src/hooks/threads/useThreadDialogContext/index.ts","../src/components/threads/ThreadDialog/Root/index.tsx","../src/components/threads/ThreadDialog/Trigger/index.tsx","../src/components/threads/ThreadDialog/Trigger/Button.tsx","../src/components/threads/ThreadDialog/Content/index.tsx","../src/components/threads/ThreadDialog/Close/index.tsx","../src/components/threads/ThreadDialog/index.tsx","../src/components/threads/AudioThread/Root/index.tsx","../src/contexts/threads/AudioThreadContext/index.ts","../src/hooks/misc/usePermission/index.ts","../src/hooks/misc/usePermission/util.ts","../src/components/threads/AudioThread/Root/lib/blobToData.ts","../src/hooks/audioThreads/useStatus/index.ts","../src/hooks/audioThreads/useRecorder/index.ts","../src/hooks/misc/useInterval.ts","../src/hooks/audioThreads/useMessageAudio/index.ts","../src/hooks/audioThreads/useMessageAudio/lib/input.ts","../src/hooks/audioThreads/useMessageAudio/lib/isHtmlAudioSupported.ts","../src/components/threads/AudioThread/Visualization/index.tsx","../src/hooks/threads/useAudioThreadContext/index.ts","../src/components/threads/AudioThread/BarsVisualizer/index.tsx","../src/components/threads/AudioThread/Status/index.tsx","../src/components/threads/AudioThread/Status/StatusMessages.tsx","../src/components/threads/AudioThread/Form/index.tsx","../src/components/threads/AudioThread/Form/MicIcon.tsx","../src/components/threads/AudioThread/Form/ActionButton/index.tsx","../src/components/threads/AudioThread/index.tsx","../src/components/threads/AudioThreadDialog/index.tsx","../src/components/markdown/MarkdownProvider/index.tsx","../src/components/avatars/Avatar.tsx","../src/lib/enums/index.ts","../src/components/imageAvatars/ImageAvatar/index.tsx","../src/components/imageAvatars/ImageAvatar/lib/optimizedSrc/path.ts","../src/components/imageAvatars/ImageAvatar/lib/optimizedSrc/host.ts","../src/components/imageAvatars/ImageAvatar/lib/optimizedSrc/index.ts","../src/components/iconAvatars/IconAvatar.tsx","../src/lib/iconAvatars/iconAvatarComponents.ts","../src/components/components/ComponentsProvider.tsx","../src/hooks/components/useComponents.ts","../src/components/assistants/AssistantProvider/index.tsx"],"names":["useRef","_","customizer","objectValue","srcValue","isArray","merge","obj","_len","arguments","length","sources","Array","_key","mergeWith","cloneDeep","createContext","baseUrl","Cookies","key","_ref","assistantId","concat","get","_Cookies$get","set","threadId","remove","cookieOptions","window","localStorage","getItem","setItem","removeItem","localStorageOptions","isIframe","self","top","SuperinterfaceContext","variables","defaultOptions","queries","mutations","threadIdStorageOptions","createMessageAbortControllerRef","current","useContext","useSuperinterfaceContext","jsx","_jsx","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","SuperinterfaceProvider","children","superinterfaceContext","Provider","Flex","c","_c","useMemo","isEmpty","Box","Skeleton","StartingContentSkeleton","loading","mt","height","width","style","borderRadius","flexShrink","FunctionComponentsContext","Popover","Button","ToolCallBase","py","ml","size","color","variant","boxShadow","Text","ToolCallTitle","weight","CircleIcon","CircleBackslashIcon","CheckCircledIcon","ToolCallIcon","t0","$","runStep","completed_at","t1","for","cancelled_at","failed_at","status","_t","_t2","Code","formattedJsonOrRaw","JSON","stringify","parse","error","jsxs","_jsxs","Content","fn","t2","args","t3","t4","output","t5","whiteSpace","wordBreak","t6","t7","t8","FunctionBase","title","Root","Trigger","maxHeight","name","DefaultFunction","Fn","functionComponentsContext","Component","codeInterpreter","input","outputs","CodeInterpreter","FileSearch","toolCall","Fallback","type","ToolCall","function","code_interpreter","_t3","Starting","className","direction","ToolCalls","_ref2","stepDetails","tool_calls","map","id","RunStep","step_details","ComponentsContext","components","RunSteps","runSteps","componentsContext","useIsMutating","useIsMutatingMessage","threadContext","mutationKey","mutatingMessagesCount","isMutatingMessage","MessageContext","message","Badge","FileIcon","Attachments","_message$attachments","attachments","align","pb","React","useState","useEffect","compile","MDXProvider","useMDXComponents","runtime","visit","CONTINUE","SKIP","recmaFallbackComponentPlugin","tree","node","kind","varDecl","declarations","declarator","_declarator$init","_declarator$init2","init","_node$id","funcNode","body","test","consequent","argument","params","operator","left","right","generator","async","alternate","ifNode","componentName","expression","callee","assignmentExpr","Heading","Table","Paragraph","Link","RadixLink","href","download","target","UnorderedList","asChild","listStylePosition","OrderedList","ListItem","Strong","RadixStrong","Pre","RadixCode","useInfiniteQuery","useQueryClient","infiniteQueryOptions","variableParams","_superinterfaceContex","asyncGeneratorStep","n","a","u","done","Promise","resolve","then","_asyncToGenerator","_next","_throw","queryOptions","queryKeyBase","path","queryClient","queryKey","queryFn","_queryFn","pageParam","URLSearchParams","fetch","_ref3","response","errorResponse","json","Error","_x2","_x","initialPageParam","getNextPageParam","lastPage","hasNextPage","lastId","limit","getQueryDefaults","messagesQueryOptions","messages","props","data","pages","reduce","acc","page","useMessages","useLatestMessage","latestMessage","onlyText","ArrowUpIcon","Spinner","partob","useMutation","omit","dayjs","uid","optimisticId","newMessage","prevData","_newMessage$attachmen","role","created_at","unix","object","content","text","annotations","run_id","assistant_id","thread_id","metadata","pageParams","latestPage","pagesRest","onMutate","prevMessages","cancelQueries","getQueryData","setQueryData","JSONParser","threadCreated","_value$data$metadata","_value$data$metadata2","isOptimistic","startsWith","last","extendMessage","_last$runSteps","_last","_last2","prevRunMessages","m","prevOptimitisticRunMessages","appendMessage","threadMessageCreated","messagesQueryKey","updatedContentPart","prevContentPart","delta","_prevContentPart$text","_delta$text$annotatio","updatedContent","result","index","threadMessageDelta","messagesRest","replace","threadMessageCompleted","threadRunCreated","threadRunFailed","threadRunStepCreated","updatedToolCall","entries","_result$function$key","updatedRunStep","_runStep$step_details","_value$data$delta","newToolCalls","threadRunStepDelta","rs","threadRunStepCompleted","threadRunRequiresAction","toolCalls","toolOutputs","required_action","submit_client_tool_outputs","parsedArgs","toolCallId","method","headers","handlers","handleResponse","handler","event","console","log","mutationFn","abortController","parser","reader","AbortController","signal","stringBufferSize","paths","separator","pipeThrough","getReader","read","mutationOptions","onError","getMutationDefaults","useCreateMessage","_temp","_temp2","mutateAsync","createMessage","ToastsContext","toasts","addToast","useToasts","createMessageDefaultOnError","invalidateQueries","Item","suggestion","isDisabled","isPending","onClick","disabled","minHeight","suggestions","split","c_0","trim","gap","wrap","Suggestions","_latestMessageProps$l","latestMessageProps","isBlocking","isLoading","Image","maxWidth","videoExtensions","isVideoSrc","src","includes","pop","isAudioSrc","endsWith","MediaPlayer","MediaProvider","Controls","PlayButton","VidstackPlayButton","useMediaState","IconButton","PlayIcon","PauseIcon","isPaused","MuteButton","useMediaRemote","HoverCard","Slider","SpeakerModerateIcon","SpeakerOffIcon","VolumeButton","volume","isMuted","remote","changeVolume","side","orientation","onValueChange","Time","time","duration","seeking","canSeek","setValue","step","isFinite","value_0","t9","value_1","seek","onValueCommit","Card","Inset","MediaContainer","mb","clip","display","flexDirection","FullscreenButton","VidstackFullscreenButton","EnterFullScreenIcon","ExitFullScreenIcon","isFullscreen","Video","playsInline","hideControlsOnMouseLeave","crossOrigin","position","bottom","p","zIndex","background","flexGrow","Group","Audio","viewType","Img","QuoteIcon","AnnotationBase","icon","FilePathAnnotation","annotation","nextSearchParams","file_path","file_id","Annotation","Fragment","_Fragment","_excluded","_objectWithoutProperties","_objectWithoutPropertiesLoose","s","propertyIsEnumerable","hasOwnProperty","strong","ul","ol","li","pre","code","img","h1","as","h2","h3","h4","h5","h6","table","thead","Header","tbody","Body","tr","Row","td","rest","Cell","th","ColumnHeaderCell","remarkGfm","isNumber","flatMap","sortedAnnotations","sort","b","start_index","remarkAnnotation","processNodeWithAnnotations","_content$text","processTextNode","linkNode","childNode","_ref4","nodeStart","start","offset","nodeEnd","end","newNodes","lastIndex","annotationStart","annotationEnd","end_index","Math","max","min","createTextNode","startOffset","endOffset","createAnnotationNode","_ref5","valueStart","valueEnd","slice","_ref6","hName","hProperties","getRemarkPlugins","MarkdownContext","useMarkdownContext","createElement","forwardRef","ErrorBoundaryContext","initialState","didCatch","ErrorBoundary","resetErrorBoundary","bind","state","_this$props$onReset","_this$props","onReset","reason","setState","componentDidCatch","info","_this$props$onError","_this$props2","componentDidUpdate","prevProps","prevState","resetKeys","hasArrayChanged","_this$props$onReset2","_this$props3","next","prev","render","fallbackRender","FallbackComponent","fallback","childToRender","getDerivedStateFromError","some","item","is","evaluate","Function","TextContent","remarkPlugins","MDXComponent","setMDXComponent","compileMDX","compiled","module","MDXContent","outputFormat","recmaPlugins","providerImportSource","default","ImageFileContent","image_file","alt","ContentPart","Message","bb0","message_creation","message_id","messageCreationRunStepIndex","findIndex","nextRunStepIndex","findLastIndex","laterRunSteps","_t4","prevRunStepIndex","olderRunSteps","_t5","_t6","_t7","olderRunSteps_0","laterRunSteps_0","bb1","_t8","_temp3","isInProgress","_temp4","t10","t11","t12","runStep_0","runStep_1","order","newGroupItem","createdAt","newGroup","groups","messageGroups","group","dropRight","useMessageGroups","Avatar","Container","MessageGroupBase","ref","Name","MessagesSkeleton","_props","marginTop","LightningBoltIcon","AssistantAvatarContext","AssistantAvatar","AssistantAvatarContextValue","overflow","AssistantNameContext","PersonIcon","UserAvatarContext","UserAvatar","UserAvatarContextValue","messageGroup","MessageGroup","assistantNameContext","isLoadingError","StartingSkeleton","Progress","isVisible","useInView","useCallback","useThrottledEffect","cb","delay","additionalDeps","cbRef","throttledCb","throttle","leading","trailing","useInfiniteScroll","isFetchingNextPage","fetchNextPage","containerRef","root","rootMargin","threshold","loaderRef","inView","NextPageSkeleton","Messages","StopIcon","MessageFormContext","files","setFiles","isFileLoading","useMessageFormContext","abort","Submit","useForm","FormProvider","z","zodResolver","schema","string","formOptions","resolver","onSubmit","onSubmitArg","isDisabledArg","formProps","handleSubmit","formState","isSubmitting","reset","watch","file","_latestMessage$metada","file_0","tools","useFormContext","RadixContainer","usePrevious","TextareaAutosize","TextareaBase","_className","_style","border","outline","boxSizing","resize","pt","Input","_props$placeholder","register","isSubmitDisabled","isDisabledPrevious","textareaRef","textareaProps","focus","minRows","placeholder","onKeyDown","shiftKey","_e$currentTarget$form","preventDefault","currentTarget","form","requestSubmit","e_0","Control","Cross2Icon","Preview","justify","minWidth","truncate","filename","prevFile","flexBasis","FilePlusIcon","formData","FormData","append","useCreateFile","firstArg","restArgs","createFile","_asyncIterator","asyncIterator","iterator","AsyncFromSyncIterator","AsyncFromSyncIteratorContinuation","reject","prototype","return","_return","throw","accept","onChange","fileObjects","newFiles","_iteratorAbruptCompletion","_didIteratorError","_iteratorError","_loop","_iterator","_step","err","from","fileObject","purpose","bytes","newFile","onSuccess","pr","multiple","cursor","opacity","Files","errors","borderWidth","borderStyle","borderColor","backgroundColor","pl","Field","MessageForm","Toast","CrossCircledIcon","CustomToast","toast","Title","ToastsProvider","setToasts","prevToasts","Toast2","Viewport","padding","margin","listStyle","toast_0","Thread","useMessageContext","useQuery","tanstackQueryOptions","publicApiKey","useAssistant","assistant","ThreadDialogContext","isOpen","setIsOpen","useThreadDialogContext","threadDialogContext","ChatBubbleIcon","radius","initial","sm","Cross1Icon","Close","t13","paddingTop","paddingRight","paddingLeft","FormContainer","ThreadDialog","AudioThreadContext","recorderProps","_start","stop","_stop","pause","_pause","resume","_resume","visualizationAnalyser","messageAudioProps","playing","paused","isReady","play","_play","_pause2","noop","on","addEventListener","off","removeEventListener","_len2","_key2","usePermission","permissionDesc","mounted","permissionStatus","_permissionStatus$sta","_permissionStatus","navigator","permissions","query","catch","blobToData","blob","FileReader","onloadend","readAsDataURL","useStatus","createMessageProps","isAudioPlayed","useAudioCapture","useAudioPlayer","useInterval","callback","savedCallback","interval","setInterval","clearInterval","useRecorder","isStopOnSilence","onStart","_onStart","onStop","_onStop","silenceStart","setSilenceStart","noiseStart","setNoiseStart","mediaStream","setMediaStream","setStatus","startAudioPlayer","endAudioPlayer","isLoaded","setIsLoaded","audioCaptureProps","opts","isInited","_onStop2","onPause","onResume","audioEngine","setAudioEngine","audioContext","AudioContext","source","createMediaStreamSource","createAnalyser","connect","silenceAnalyser","result_0","minDecibels","handleSilence","frequencyData","Uint8Array","frequencyBinCount","getByteFrequencyData","isSilent","every","f","silenceStart_0","noiseStart_0","requestAnimationFrame","isBefore","subtract","nlp","Howler","textContents","join","detect","_detect","unsupportedNames","isHtmlAudioSupported","FULL_SENTENCE_REGEX","getMessageSentences","messageId","sentences","sentence","useMessageAudio","onEnd","setIsAudioPlayed","stoppedMessageIds","setStoppedMessageIds","playedMessageSentences","setPlayedMessageSentences","audioPlayer","nextAudioPlayer","isPlaying","setIsPlaying","messageSentences","ms","find","pms","unplayedMessageSentences","firstUnplayedMessageSentence","isFullSentence","searchParams","load","format","autoplay","html5","onplay","onstop","prev_0","onload","nextUnplayedMessageSentence","isNextFullSentence","onend","isAudioEngineInited","createMediaElementSource","_howls","_sounds","_node","masterGain","ctx","destination","_Howler$_howls$","_event","chunks","audioContent","Blob","microphonePermission","useAudioThreadContext","Grid","cluster","barCount","BarsVisualizer","barWidth","barHeights","setBarHeights","draw","visualizationAnalyser_0","fill","clusteredFrequencyData","frequencyDataCluster","mean","columns","gridTemplateColumns","barHeight","Visualization","audioThreadContext","scale","setScale","html","texts","StatusMessages","dangerouslySetInnerHTML","__html","Status","MicIcon","xmlns","stroke","strokeWidth","viewBox","d","ResumeIcon","ActionButton","mr","highContrast","_t9","_t10","Form","px","AudioThread","AudioThreadDialog","MarkdownProvider","prevMarkdownContext","IconAvatarName","AvatarType","RadixAvatar","imageAvatar","encodeURIComponent","url","host","URL","origin","optimizedSrc","ImageAvatar","BackpackIcon","RocketIcon","MagicWandIcon","CubeIcon","TargetIcon","DiscIcon","GlobeIcon","StarIcon","FaceIcon","HeartIcon","iconAvatarComponents","BACKPACK","ROCKET","MAGIC_WAND","CUBE","TARGET","DISC","GLOBE","STAR","LIGHTNING_BOLT","FACE","PERSON","HEART","IconAvatar","iconAvatar","avatar","IMAGE","ICON","useComponents","ComponentsProvider","prevComponents","AssistantProvider","_assistant$name","Avatar6","useThreadContext"],"mappings":"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","sourcesContent":["// src/components/core/SuperinterfaceProvider/index.tsx\nimport { useRef } from \"react\";\n\n// src/lib/misc/merge/index.ts\nimport _2 from \"lodash\";\n\n// src/lib/misc/merge/customizer.ts\nimport _ from \"lodash\";\nvar customizer = (objectValue, srcValue) => {\n if (!_.isArray(objectValue)) return;\n return srcValue;\n};\n\n// src/lib/misc/merge/index.ts\nvar merge = function merge2(obj) {\n for (var _len = arguments.length, sources = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n sources[_key - 1] = arguments[_key];\n }\n return _2.mergeWith(_2.cloneDeep(obj), ...sources, customizer);\n};\n\n// src/contexts/core/SuperinterfaceContext/index.tsx\nimport { createContext } from \"react\";\n\n// src/lib/superinterfaceCloud/baseUrl.ts\nvar baseUrl = \"https://superinterface.ai/api/cloud\";\n\n// src/lib/threadIdStorage/cookieOptions/get.ts\nimport Cookies from \"js-cookie\";\n\n// src/lib/threadIdStorage/key.ts\nvar key = (_ref) => {\n var {\n assistantId\n } = _ref;\n return \"superinterface-\".concat(assistantId, \"-threadId\");\n};\n\n// src/lib/threadIdStorage/cookieOptions/get.ts\nvar get = (_ref) => {\n var _Cookies$get;\n var {\n assistantId\n } = _ref;\n return (_Cookies$get = Cookies.get(key({\n assistantId\n }))) !== null && _Cookies$get !== void 0 ? _Cookies$get : null;\n};\n\n// src/lib/threadIdStorage/cookieOptions/set.ts\nimport Cookies2 from \"js-cookie\";\nvar set = (_ref) => {\n var {\n assistantId,\n threadId\n } = _ref;\n return Cookies2.set(key({\n assistantId\n }), threadId);\n};\n\n// src/lib/threadIdStorage/cookieOptions/remove.ts\nimport Cookies3 from \"js-cookie\";\nvar remove = (_ref) => {\n var {\n assistantId\n } = _ref;\n return Cookies3.remove(key({\n assistantId\n }));\n};\n\n// src/lib/threadIdStorage/cookieOptions/index.ts\nvar cookieOptions = {\n get,\n set,\n remove\n};\n\n// src/lib/threadIdStorage/localStorageOptions/get.ts\nvar get2 = (_ref) => {\n var {\n assistantId\n } = _ref;\n return window.localStorage.getItem(key({\n assistantId\n }));\n};\n\n// src/lib/threadIdStorage/localStorageOptions/set.ts\nvar set2 = (_ref) => {\n var {\n assistantId,\n threadId\n } = _ref;\n return window.localStorage.setItem(key({\n assistantId\n }), threadId);\n};\n\n// src/lib/threadIdStorage/localStorageOptions/remove.ts\nvar remove2 = (_ref) => {\n var {\n assistantId\n } = _ref;\n return window.localStorage.removeItem(key({\n assistantId\n }));\n};\n\n// src/lib/threadIdStorage/localStorageOptions/index.ts\nvar localStorageOptions = {\n get: get2,\n set: set2,\n remove: remove2\n};\n\n// src/lib/iframes/isIframe.ts\nvar isIframe = () => {\n if (typeof window === \"undefined\") return false;\n return window.self !== window.top;\n};\n\n// src/contexts/core/SuperinterfaceContext/index.tsx\nvar SuperinterfaceContext = /* @__PURE__ */ createContext({\n baseUrl,\n variables: {},\n defaultOptions: {\n queries: {},\n mutations: {}\n },\n threadIdStorageOptions: isIframe() ? localStorageOptions : cookieOptions,\n createMessageAbortControllerRef: {\n current: null\n }\n});\n\n// src/hooks/core/useSuperinterfaceContext/index.ts\nimport { useContext } from \"react\";\nvar useSuperinterfaceContext = () => {\n return useContext(SuperinterfaceContext);\n};\n\n// src/components/core/SuperinterfaceProvider/index.tsx\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction ownKeys(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys(Object(t), true).forEach(function(r2) {\n _defineProperty(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty(e, r, t) {\n return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar SuperinterfaceProvider = (_ref) => {\n var {\n children,\n baseUrl: baseUrl2,\n variables,\n defaultOptions,\n threadIdStorageOptions\n } = _ref;\n var superinterfaceContext = useSuperinterfaceContext();\n var createMessageAbortControllerRef = useRef(null);\n var value = merge(superinterfaceContext, _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, baseUrl2 ? {\n baseUrl: baseUrl2\n } : {}), variables ? {\n variables\n } : {}), defaultOptions ? {\n defaultOptions\n } : {}), threadIdStorageOptions ? {\n threadIdStorageOptions\n } : {}), {}, {\n createMessageAbortControllerRef\n }));\n return /* @__PURE__ */ _jsx(SuperinterfaceContext.Provider, {\n value,\n children\n });\n};\n\n// src/components/threads/Thread/Messages/index.tsx\nimport { Flex as Flex18 } from \"@radix-ui/themes\";\n\n// src/components/threads/Thread/Message/index.tsx\nimport { c as _c26 } from \"react-compiler-runtime\";\nimport { useMemo as useMemo10 } from \"react\";\nimport { isEmpty as isEmpty2 } from \"radash\";\nimport { Box as Box9 } from \"@radix-ui/themes\";\n\n// src/components/skeletons/StartingContentSkeleton/index.tsx\nimport { Skeleton } from \"@radix-ui/themes\";\nimport { jsx as _jsx2 } from \"react/jsx-runtime\";\nvar StartingContentSkeleton = () => /* @__PURE__ */ _jsx2(Skeleton, {\n loading: true,\n mt: \"1\",\n height: \"var(--space-4)\",\n width: \"var(--space-4)\",\n style: {\n borderRadius: \"var(--radius-6)\",\n flexShrink: 0\n }\n});\n\n// src/components/runSteps/RunSteps/index.tsx\nimport { c as _c7 } from \"react-compiler-runtime\";\nimport { Flex as Flex5 } from \"@radix-ui/themes\";\nimport { useContext as useContext3 } from \"react\";\n\n// src/contexts/components/ComponentsContext/index.tsx\nimport { createContext as createContext3 } from \"react\";\n\n// src/components/runSteps/RunStep/index.tsx\nimport { c as _c6 } from \"react-compiler-runtime\";\n\n// src/components/runSteps/RunStep/ToolCalls/index.tsx\nimport { Flex as Flex4 } from \"@radix-ui/themes\";\n\n// src/components/runSteps/RunStep/ToolCalls/ToolCall/index.tsx\nimport { c as _c5 } from \"react-compiler-runtime\";\n\n// src/components/runSteps/RunStep/ToolCalls/ToolCall/Fn/index.tsx\nimport { c as _c3 } from \"react-compiler-runtime\";\nimport { useContext as useContext2 } from \"react\";\n\n// src/contexts/functions/FunctionComponentsContext/index.tsx\nimport { createContext as createContext2 } from \"react\";\nvar FunctionComponentsContext = /* @__PURE__ */ createContext2({});\n\n// src/components/functions/FunctionBase/index.tsx\nimport { Popover, Flex as Flex2 } from \"@radix-ui/themes\";\n\n// src/components/toolCalls/ToolCallBase/index.tsx\nimport { Flex, Button } from \"@radix-ui/themes\";\nimport { jsx as _jsx3 } from \"react/jsx-runtime\";\nvar ToolCallBase = (_ref) => {\n var {\n children\n } = _ref;\n return /* @__PURE__ */ _jsx3(Flex, {\n py: \"1\",\n ml: \"-2\",\n children: /* @__PURE__ */ _jsx3(Button, {\n size: \"1\",\n color: \"gold\",\n variant: \"outline\",\n style: {\n boxShadow: \"none\"\n },\n children\n })\n });\n};\n\n// src/components/toolCalls/ToolCallBase/ToolCallTitle.tsx\nimport { Text } from \"@radix-ui/themes\";\nimport { jsx as _jsx4 } from \"react/jsx-runtime\";\nvar ToolCallTitle = (_ref) => {\n var {\n children\n } = _ref;\n return /* @__PURE__ */ _jsx4(Text, {\n weight: \"regular\",\n children\n });\n};\n\n// src/components/toolCalls/ToolCallBase/ToolCallIcon.tsx\nimport { c as _c } from \"react-compiler-runtime\";\nimport { CircleIcon, CircleBackslashIcon, CheckCircledIcon } from \"@radix-ui/react-icons\";\nimport { jsx as _jsx5 } from \"react/jsx-runtime\";\nvar ToolCallIcon = (t0) => {\n var $ = _c(3);\n var {\n runStep\n } = t0;\n if (runStep.completed_at) {\n var t1;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t1 = /* @__PURE__ */ _jsx5(CheckCircledIcon, {});\n $[0] = t1;\n } else {\n t1 = $[0];\n }\n return t1;\n } else {\n if (runStep.cancelled_at || runStep.failed_at || runStep.status === \"expired\") {\n var _t;\n if ($[1] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t = /* @__PURE__ */ _jsx5(CircleBackslashIcon, {});\n $[1] = _t;\n } else {\n _t = $[1];\n }\n return _t;\n } else {\n var _t2;\n if ($[2] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t2 = /* @__PURE__ */ _jsx5(CircleIcon, {});\n $[2] = _t2;\n } else {\n _t2 = $[2];\n }\n return _t2;\n }\n }\n};\n\n// src/components/functions/FunctionBase/Content/index.tsx\nimport { c as _c2 } from \"react-compiler-runtime\";\nimport { useMemo } from \"react\";\nimport { Code, Box } from \"@radix-ui/themes\";\n\n// src/components/functions/FunctionBase/Content/lib/formattedJsonOrRaw.ts\nvar formattedJsonOrRaw = (_ref) => {\n var {\n value\n } = _ref;\n if (!value) {\n return null;\n }\n try {\n return JSON.stringify(JSON.parse(value), null, 2);\n } catch (error) {\n if (typeof value === \"string\") {\n return value;\n } else {\n return JSON.stringify(value, null, 2);\n }\n }\n};\n\n// src/components/functions/FunctionBase/Content/index.tsx\nimport { jsx as _jsx6, jsxs as _jsxs } from \"react/jsx-runtime\";\nvar Content = (t0) => {\n var $ = _c2(12);\n var {\n fn\n } = t0;\n var t1;\n var t2;\n if ($[0] !== fn.arguments) {\n t2 = formattedJsonOrRaw({\n value: fn.arguments\n });\n $[0] = fn.arguments;\n $[1] = t2;\n } else {\n t2 = $[1];\n }\n t1 = t2;\n var args = t1;\n var t3;\n var t4;\n if ($[2] !== fn.output) {\n t4 = formattedJsonOrRaw({\n value: fn.output\n });\n $[2] = fn.output;\n $[3] = t4;\n } else {\n t4 = $[3];\n }\n t3 = t4;\n var output = t3;\n var t5;\n if ($[4] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t5 = {\n whiteSpace: \"pre\",\n wordBreak: \"break-word\"\n };\n $[4] = t5;\n } else {\n t5 = $[4];\n }\n var t6;\n if ($[5] !== args) {\n t6 = args && /* @__PURE__ */ _jsx6(Box, {\n children: args\n });\n $[5] = args;\n $[6] = t6;\n } else {\n t6 = $[6];\n }\n var t7;\n if ($[7] !== output) {\n t7 = output && /* @__PURE__ */ _jsx6(Box, {\n children: output\n });\n $[7] = output;\n $[8] = t7;\n } else {\n t7 = $[8];\n }\n var t8;\n if ($[9] !== t6 || $[10] !== t7) {\n t8 = /* @__PURE__ */ _jsxs(Code, {\n variant: \"ghost\",\n color: \"gold\",\n style: t5,\n children: [t6, t7]\n });\n $[9] = t6;\n $[10] = t7;\n $[11] = t8;\n } else {\n t8 = $[11];\n }\n return t8;\n};\n\n// src/components/functions/FunctionBase/index.tsx\nimport { jsx as _jsx7, jsxs as _jsxs2 } from \"react/jsx-runtime\";\nvar FunctionBase = (_ref) => {\n var {\n fn,\n runStep,\n title: title2\n } = _ref;\n return /* @__PURE__ */ _jsxs2(Popover.Root, {\n children: [/* @__PURE__ */ _jsx7(Popover.Trigger, {\n children: /* @__PURE__ */ _jsx7(Flex2, {\n children: /* @__PURE__ */ _jsxs2(ToolCallBase, {\n children: [/* @__PURE__ */ _jsx7(ToolCallIcon, {\n runStep\n }), /* @__PURE__ */ _jsx7(ToolCallTitle, {\n children: title2\n })]\n })\n })\n }), /* @__PURE__ */ _jsx7(Popover.Content, {\n style: {\n maxHeight: \"200px\"\n },\n children: /* @__PURE__ */ _jsx7(Content, {\n fn\n })\n })]\n });\n};\n\n// src/components/runSteps/RunStep/ToolCalls/ToolCall/Fn/DefaultFunction/lib/title.ts\nvar title = (_ref) => {\n var {\n fn,\n runStep\n } = _ref;\n if (runStep.completed_at) {\n return \"Finished \".concat(fn.name);\n } else if (runStep.cancelled_at) {\n return \"Cancelled \".concat(fn.name);\n } else {\n return \"Calling \".concat(fn.name);\n }\n};\n\n// src/components/runSteps/RunStep/ToolCalls/ToolCall/Fn/DefaultFunction/index.tsx\nimport { jsx as _jsx8 } from \"react/jsx-runtime\";\nvar DefaultFunction = (_ref) => {\n var {\n fn,\n runStep\n } = _ref;\n return /* @__PURE__ */ _jsx8(FunctionBase, {\n fn,\n runStep,\n title: title({\n runStep,\n fn\n })\n });\n};\n\n// src/components/runSteps/RunStep/ToolCalls/ToolCall/Fn/index.tsx\nimport { jsx as _jsx9 } from \"react/jsx-runtime\";\nvar Fn = (t0) => {\n var $ = _c3(4);\n var {\n fn,\n runStep\n } = t0;\n var functionComponentsContext = useContext2(FunctionComponentsContext);\n var Component2 = functionComponentsContext[fn.name] || DefaultFunction;\n var t1;\n if ($[0] !== Component2 || $[1] !== fn || $[2] !== runStep) {\n t1 = /* @__PURE__ */ _jsx9(Component2, {\n fn,\n runStep\n });\n $[0] = Component2;\n $[1] = fn;\n $[2] = runStep;\n $[3] = t1;\n } else {\n t1 = $[3];\n }\n return t1;\n};\n\n// src/components/runSteps/RunStep/ToolCalls/ToolCall/CodeInterpreter/index.tsx\nimport { Popover as Popover2, Flex as Flex3 } from \"@radix-ui/themes\";\n\n// src/components/runSteps/RunStep/ToolCalls/ToolCall/CodeInterpreter/Content.tsx\nimport { c as _c4 } from \"react-compiler-runtime\";\nimport { Code as Code2, Box as Box2 } from \"@radix-ui/themes\";\nimport { jsx as _jsx10, jsxs as _jsxs3 } from \"react/jsx-runtime\";\nvar Content2 = (t0) => {\n var $ = _c4(10);\n var {\n codeInterpreter\n } = t0;\n if (!codeInterpreter.input) {\n return null;\n }\n var t1;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t1 = {\n whiteSpace: \"pre\",\n wordBreak: \"break-word\"\n };\n $[0] = t1;\n } else {\n t1 = $[0];\n }\n var t2;\n if ($[1] !== codeInterpreter.input) {\n t2 = /* @__PURE__ */ _jsx10(Box2, {\n children: codeInterpreter.input\n });\n $[1] = codeInterpreter.input;\n $[2] = t2;\n } else {\n t2 = $[2];\n }\n var t3;\n if ($[3] !== codeInterpreter.outputs) {\n t3 = JSON.stringify(codeInterpreter.outputs);\n $[3] = codeInterpreter.outputs;\n $[4] = t3;\n } else {\n t3 = $[4];\n }\n var t4;\n if ($[5] !== t3) {\n t4 = /* @__PURE__ */ _jsx10(Box2, {\n children: t3\n });\n $[5] = t3;\n $[6] = t4;\n } else {\n t4 = $[6];\n }\n var t5;\n if ($[7] !== t2 || $[8] !== t4) {\n t5 = /* @__PURE__ */ _jsxs3(Code2, {\n variant: \"ghost\",\n color: \"gold\",\n style: t1,\n children: [t2, t4]\n });\n $[7] = t2;\n $[8] = t4;\n $[9] = t5;\n } else {\n t5 = $[9];\n }\n return t5;\n};\n\n// src/components/runSteps/RunStep/ToolCalls/ToolCall/CodeInterpreter/index.tsx\nimport { jsx as _jsx11, jsxs as _jsxs4 } from \"react/jsx-runtime\";\nvar CodeInterpreter = (_ref) => {\n var {\n codeInterpreter,\n runStep\n } = _ref;\n return /* @__PURE__ */ _jsxs4(Popover2.Root, {\n children: [/* @__PURE__ */ _jsx11(Popover2.Trigger, {\n children: /* @__PURE__ */ _jsx11(Flex3, {\n children: /* @__PURE__ */ _jsxs4(ToolCallBase, {\n children: [/* @__PURE__ */ _jsx11(ToolCallIcon, {\n runStep\n }), /* @__PURE__ */ _jsx11(ToolCallTitle, {\n children: \"Using code interpreter\"\n })]\n })\n })\n }), /* @__PURE__ */ _jsx11(Popover2.Content, {\n maxHeight: \"200px\",\n children: /* @__PURE__ */ _jsx11(Content2, {\n codeInterpreter\n })\n })]\n });\n};\n\n// src/components/runSteps/RunStep/ToolCalls/ToolCall/FileSearch.tsx\nimport { jsx as _jsx12, jsxs as _jsxs5 } from \"react/jsx-runtime\";\nvar FileSearch = (_ref) => {\n var {\n runStep,\n toolCall\n } = _ref;\n return /* @__PURE__ */ _jsxs5(ToolCallBase, {\n children: [/* @__PURE__ */ _jsx12(ToolCallIcon, {\n runStep\n }), /* @__PURE__ */ _jsx12(ToolCallTitle, {\n children: \"Searching files\"\n })]\n });\n};\n\n// src/components/runSteps/RunStep/ToolCalls/ToolCall/Fallback.tsx\nimport { jsx as _jsx13, jsxs as _jsxs6 } from \"react/jsx-runtime\";\nvar Fallback = (_ref) => {\n var {\n runStep,\n toolCall\n } = _ref;\n return /* @__PURE__ */ _jsxs6(ToolCallBase, {\n children: [/* @__PURE__ */ _jsx13(ToolCallIcon, {\n runStep\n }), /* @__PURE__ */ _jsxs6(ToolCallTitle, {\n children: [\"Using tool: \", toolCall.type]\n })]\n });\n};\n\n// src/components/runSteps/RunStep/ToolCalls/ToolCall/index.tsx\nimport { jsx as _jsx14 } from \"react/jsx-runtime\";\nvar ToolCall = (t0) => {\n var $ = _c5(12);\n var {\n toolCall,\n runStep\n } = t0;\n if (toolCall.type === \"function\") {\n var _t;\n if ($[0] !== runStep || $[1] !== toolCall.function) {\n _t = /* @__PURE__ */ _jsx14(Fn, {\n fn: toolCall.function,\n runStep\n });\n $[0] = runStep;\n $[1] = toolCall.function;\n $[2] = _t;\n } else {\n _t = $[2];\n }\n return _t;\n }\n if (toolCall.type === \"code_interpreter\") {\n var _t2;\n if ($[3] !== runStep || $[4] !== toolCall.code_interpreter) {\n _t2 = /* @__PURE__ */ _jsx14(CodeInterpreter, {\n codeInterpreter: toolCall.code_interpreter,\n runStep\n });\n $[3] = runStep;\n $[4] = toolCall.code_interpreter;\n $[5] = _t2;\n } else {\n _t2 = $[5];\n }\n return _t2;\n }\n if (toolCall.type === \"file_search\") {\n var _t3;\n if ($[6] !== runStep || $[7] !== toolCall) {\n _t3 = /* @__PURE__ */ _jsx14(FileSearch, {\n toolCall,\n runStep\n });\n $[6] = runStep;\n $[7] = toolCall;\n $[8] = _t3;\n } else {\n _t3 = $[8];\n }\n return _t3;\n }\n var t1;\n if ($[9] !== runStep || $[10] !== toolCall) {\n t1 = /* @__PURE__ */ _jsx14(Fallback, {\n toolCall,\n runStep\n });\n $[9] = runStep;\n $[10] = toolCall;\n $[11] = t1;\n } else {\n t1 = $[11];\n }\n return t1;\n};\n\n// src/components/runSteps/RunStep/ToolCalls/Starting/index.tsx\nimport { Popover as Popover3, Text as Text2 } from \"@radix-ui/themes\";\nimport { CircleIcon as CircleIcon2 } from \"@radix-ui/react-icons\";\nimport { jsx as _jsx15, jsxs as _jsxs7 } from \"react/jsx-runtime\";\nvar Starting = () => /* @__PURE__ */ _jsxs7(Popover3.Root, {\n children: [/* @__PURE__ */ _jsxs7(ToolCallBase, {\n children: [/* @__PURE__ */ _jsx15(CircleIcon2, {}), /* @__PURE__ */ _jsx15(ToolCallTitle, {\n children: \"Starting actions\"\n })]\n }), /* @__PURE__ */ _jsx15(Popover3.Content, {\n style: {\n maxHeight: \"500px\"\n },\n children: /* @__PURE__ */ _jsx15(Text2, {\n children: \"Getting ready to connect to domain API\"\n })\n })]\n});\n\n// src/components/runSteps/RunStep/ToolCalls/index.tsx\nimport { jsx as _jsx16, jsxs as _jsxs8 } from \"react/jsx-runtime\";\nvar Root = (_ref) => {\n var {\n children,\n className,\n style\n } = _ref;\n return /* @__PURE__ */ _jsx16(Flex4, {\n direction: \"column\",\n className,\n style,\n children\n });\n};\nvar ToolCalls = (_ref2) => {\n var {\n stepDetails,\n runStep,\n className,\n style\n } = _ref2;\n return /* @__PURE__ */ _jsxs8(Root, {\n className,\n style,\n children: [!stepDetails.tool_calls.length && /* @__PURE__ */ _jsx16(Starting, {}), stepDetails.tool_calls.map((toolCall) => /* @__PURE__ */ _jsx16(ToolCall, {\n toolCall,\n runStep\n }, toolCall.id))]\n });\n};\nToolCalls.Root = Root;\nToolCalls.Starting = Starting;\nToolCalls.ToolCall = ToolCall;\n\n// src/components/runSteps/RunStep/index.tsx\nimport { jsx as _jsx17 } from \"react/jsx-runtime\";\nvar RunStep = (t0) => {\n var $ = _c6(4);\n var {\n runStep,\n className,\n style\n } = t0;\n if (runStep.step_details.type === \"tool_calls\") {\n var t1;\n if ($[0] !== className || $[1] !== runStep || $[2] !== style) {\n t1 = /* @__PURE__ */ _jsx17(ToolCalls, {\n className,\n style,\n stepDetails: runStep.step_details,\n runStep\n });\n $[0] = className;\n $[1] = runStep;\n $[2] = style;\n $[3] = t1;\n } else {\n t1 = $[3];\n }\n return t1;\n }\n return null;\n};\nRunStep.ToolCalls = ToolCalls;\n\n// src/contexts/components/ComponentsContext/index.tsx\nvar ComponentsContext = /* @__PURE__ */ createContext3({\n components: {\n RunStep\n }\n});\n\n// src/components/runSteps/RunSteps/index.tsx\nimport { jsx as _jsx18 } from \"react/jsx-runtime\";\nvar RunSteps = (t0) => {\n var $ = _c7(7);\n var {\n runSteps\n } = t0;\n var componentsContext = useContext3(ComponentsContext);\n var Component2 = componentsContext.components.RunStep;\n var t1;\n if ($[0] !== Component2 || $[1] !== runSteps) {\n var _t;\n if ($[3] !== Component2) {\n _t = (runStep) => /* @__PURE__ */ _jsx18(Component2, {\n runStep\n }, runStep.id);\n $[3] = Component2;\n $[4] = _t;\n } else {\n _t = $[4];\n }\n t1 = runSteps.map(_t);\n $[0] = Component2;\n $[1] = runSteps;\n $[2] = t1;\n } else {\n t1 = $[2];\n }\n var t2;\n if ($[5] !== t1) {\n t2 = /* @__PURE__ */ _jsx18(Flex5, {\n direction: \"column-reverse\",\n children: t1\n });\n $[5] = t1;\n $[6] = t2;\n } else {\n t2 = $[6];\n }\n return t2;\n};\n\n// src/hooks/messages/useIsMutatingMessage/index.ts\nimport { c as _c8 } from \"react-compiler-runtime\";\nimport { useMemo as useMemo2 } from \"react\";\nimport { useIsMutating } from \"@tanstack/react-query\";\nvar useIsMutatingMessage = () => {\n var $ = _c8(2);\n var threadContext = useSuperinterfaceContext();\n var t0;\n if ($[0] !== threadContext.variables) {\n t0 = {\n mutationKey: [\"createMessage\", threadContext.variables]\n };\n $[0] = threadContext.variables;\n $[1] = t0;\n } else {\n t0 = $[1];\n }\n var mutatingMessagesCount = useIsMutating(t0);\n var t1;\n t1 = mutatingMessagesCount > 0;\n var isMutatingMessage = t1;\n return isMutatingMessage;\n};\n\n// src/contexts/messages/MessageContext/index.ts\nimport { createContext as createContext4 } from \"react\";\nvar MessageContext = /* @__PURE__ */ createContext4({\n message: null\n});\n\n// src/components/threads/Thread/Message/Provider.tsx\nvar Provider = MessageContext.Provider;\n\n// src/components/threads/Thread/Message/Attachments/index.tsx\nimport { c as _c9 } from \"react-compiler-runtime\";\nimport { Flex as Flex6, Badge } from \"@radix-ui/themes\";\nimport { FileIcon } from \"@radix-ui/react-icons\";\nimport { jsx as _jsx19, jsxs as _jsxs9 } from \"react/jsx-runtime\";\nvar Attachments = (t0) => {\n var _message$attachments;\n var $ = _c9(4);\n var {\n message\n } = t0;\n if (!((_message$attachments = message.attachments) !== null && _message$attachments !== void 0 && _message$attachments.length)) {\n return null;\n }\n var t1;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t1 = /* @__PURE__ */ _jsx19(FileIcon, {});\n $[0] = t1;\n } else {\n t1 = $[0];\n }\n var t2 = message.attachments.length > 1 ? \"s\" : \"\";\n var t3;\n if ($[1] !== message.attachments.length || $[2] !== t2) {\n t3 = /* @__PURE__ */ _jsx19(Flex6, {\n align: \"start\",\n pb: \"1\",\n children: /* @__PURE__ */ _jsxs9(Badge, {\n color: \"gray\",\n variant: \"surface\",\n children: [t1, message.attachments.length, \" file\", t2]\n })\n });\n $[1] = message.attachments.length;\n $[2] = t2;\n $[3] = t3;\n } else {\n t3 = $[3];\n }\n return t3;\n};\n\n// src/components/threads/Thread/Message/ContentPart/index.tsx\nimport { c as _c25 } from \"react-compiler-runtime\";\n\n// src/components/threads/Thread/Message/ContentPart/TextContent.tsx\nimport { c as _c23 } from \"react-compiler-runtime\";\nimport React, { useState as useState3, useEffect as useEffect2, useMemo as useMemo9 } from \"react\";\nimport { Badge as Badge2 } from \"@radix-ui/themes\";\nimport { compile } from \"@mdx-js/mdx\";\nimport { MDXProvider, useMDXComponents } from \"@mdx-js/react\";\nimport * as runtime from \"react/jsx-runtime\";\n\n// src/lib/recma/recmaFallbackComponentPlugin.ts\nimport { visit, CONTINUE, SKIP } from \"estree-util-visit\";\nvar recmaFallbackComponentPlugin = () => {\n return (tree) => {\n visit(tree, (node) => {\n if (node.type === \"VariableDeclaration\" && node.kind === \"const\") {\n var varDecl = node;\n for (var declarator of varDecl.declarations) {\n var _declarator$init, _declarator$init2;\n if (declarator.id.type === \"ObjectPattern\" && ((_declarator$init = declarator.init) === null || _declarator$init === void 0 ? void 0 : _declarator$init.type) === \"Identifier\" && declarator.init.name === \"_components\" || declarator.id.type === \"ObjectPattern\" && ((_declarator$init2 = declarator.init) === null || _declarator$init2 === void 0 ? void 0 : _declarator$init2.type) === \"ObjectExpression\") {\n varDecl.kind = \"let\";\n return SKIP;\n }\n }\n }\n return CONTINUE;\n });\n visit(tree, (node) => {\n var _node$id;\n if (node.type === \"FunctionDeclaration\" && ((_node$id = node.id) === null || _node$id === void 0 ? void 0 : _node$id.type) === \"Identifier\" && node.id.name === \"_missingMdxReference\") {\n var funcNode = node;\n funcNode.body = {\n type: \"BlockStatement\",\n body: [{\n type: \"IfStatement\",\n test: {\n type: \"Identifier\",\n name: \"component\"\n },\n consequent: {\n type: \"ReturnStatement\",\n argument: {\n type: \"FunctionExpression\",\n id: null,\n params: [{\n type: \"Identifier\",\n name: \"props\"\n }],\n body: {\n type: \"BlockStatement\",\n body: [{\n type: \"ReturnStatement\",\n argument: {\n type: \"BinaryExpression\",\n operator: \"+\",\n left: {\n type: \"BinaryExpression\",\n operator: \"+\",\n left: {\n type: \"Literal\",\n value: \"<\"\n },\n right: {\n type: \"Identifier\",\n name: \"id\"\n }\n },\n right: {\n type: \"BinaryExpression\",\n operator: \"+\",\n left: {\n type: \"Literal\",\n value: \"></\"\n },\n right: {\n type: \"BinaryExpression\",\n operator: \"+\",\n left: {\n type: \"Identifier\",\n name: \"id\"\n },\n right: {\n type: \"Literal\",\n value: \">\"\n }\n }\n }\n }\n }]\n },\n generator: false,\n async: false\n }\n },\n alternate: null\n }]\n };\n return SKIP;\n }\n return CONTINUE;\n });\n visit(tree, (node) => {\n if (node.type === \"IfStatement\") {\n var ifNode = node;\n if (ifNode.test.type === \"UnaryExpression\" && ifNode.test.operator === \"!\" && ifNode.test.argument.type === \"Identifier\") {\n var componentName = ifNode.test.argument.name;\n if (ifNode.consequent.type === \"ExpressionStatement\" && ifNode.consequent.expression.type === \"CallExpression\" && ifNode.consequent.expression.callee.type === \"Identifier\" && ifNode.consequent.expression.callee.name === \"_missingMdxReference\") {\n var assignmentExpr = {\n type: \"AssignmentExpression\",\n operator: \"=\",\n left: {\n type: \"Identifier\",\n name: componentName\n },\n right: ifNode.consequent.expression\n };\n ifNode.consequent = {\n type: \"ExpressionStatement\",\n expression: assignmentExpr\n };\n return SKIP;\n }\n }\n }\n return CONTINUE;\n });\n };\n};\n\n// src/hooks/markdown/useMarkdownContext/index.ts\nimport { useContext as useContext5 } from \"react\";\n\n// src/contexts/markdown/MarkdownContext/index.ts\nimport { createContext as createContext6 } from \"react\";\n\n// src/contexts/markdown/MarkdownContext/lib/components/index.tsx\nimport { Heading, Table } from \"@radix-ui/themes\";\n\n// src/contexts/markdown/MarkdownContext/lib/components/Paragraph.tsx\nimport { Box as Box3, Text as Text3 } from \"@radix-ui/themes\";\nimport { jsx as _jsx20 } from \"react/jsx-runtime\";\nvar Paragraph = (_ref) => {\n var {\n children\n } = _ref;\n return /* @__PURE__ */ _jsx20(Box3, {\n pb: \"3\",\n children: /* @__PURE__ */ _jsx20(Text3, {\n size: \"3\",\n style: {\n whiteSpace: \"pre-line\",\n wordBreak: \"break-word\"\n },\n children\n })\n });\n};\n\n// src/contexts/markdown/MarkdownContext/lib/components/Link.tsx\nimport { Link as RadixLink } from \"@radix-ui/themes\";\nimport { jsx as _jsx21 } from \"react/jsx-runtime\";\nvar Link = (_ref) => {\n var {\n children,\n href,\n download,\n target = \"_blank\"\n } = _ref;\n return /* @__PURE__ */ _jsx21(RadixLink, {\n href,\n target,\n download,\n children\n });\n};\n\n// src/contexts/markdown/MarkdownContext/lib/components/UnorderedList.tsx\nimport { Box as Box4 } from \"@radix-ui/themes\";\nimport { jsx as _jsx22 } from \"react/jsx-runtime\";\nvar UnorderedList = (_ref) => {\n var {\n children\n } = _ref;\n return /* @__PURE__ */ _jsx22(Box4, {\n pb: \"3\",\n asChild: true,\n children: /* @__PURE__ */ _jsx22(\"ul\", {\n style: {\n listStylePosition: \"inside\"\n },\n children\n })\n });\n};\n\n// src/contexts/markdown/MarkdownContext/lib/components/OrderedList.tsx\nimport { Box as Box5 } from \"@radix-ui/themes\";\nimport { jsx as _jsx23 } from \"react/jsx-runtime\";\nvar OrderedList = (_ref) => {\n var {\n children\n } = _ref;\n return /* @__PURE__ */ _jsx23(Box5, {\n pb: \"3\",\n asChild: true,\n children: /* @__PURE__ */ _jsx23(\"ol\", {\n style: {\n listStylePosition: \"inside\"\n },\n children\n })\n });\n};\n\n// src/contexts/markdown/MarkdownContext/lib/components/ListItem.tsx\nimport { Box as Box6 } from \"@radix-ui/themes\";\nimport { jsx as _jsx24 } from \"react/jsx-runtime\";\nvar ListItem = (_ref) => {\n var {\n children\n } = _ref;\n return /* @__PURE__ */ _jsx24(Box6, {\n pb: \"1\",\n children: /* @__PURE__ */ _jsx24(\"li\", {\n children\n })\n });\n};\n\n// src/contexts/markdown/MarkdownContext/lib/components/Strong.tsx\nimport { Strong as RadixStrong } from \"@radix-ui/themes\";\nimport { jsx as _jsx25 } from \"react/jsx-runtime\";\nvar Strong = (_ref) => {\n var {\n children\n } = _ref;\n return /* @__PURE__ */ _jsx25(RadixStrong, {\n children\n });\n};\n\n// src/contexts/markdown/MarkdownContext/lib/components/Pre.tsx\nimport { Box as Box7 } from \"@radix-ui/themes\";\nimport { jsx as _jsx26 } from \"react/jsx-runtime\";\nvar Pre = (_ref) => {\n var {\n children\n } = _ref;\n return /* @__PURE__ */ _jsx26(Box7, {\n style: {\n whiteSpace: \"pre-wrap\",\n wordBreak: \"break-word\"\n },\n children\n });\n};\n\n// src/contexts/markdown/MarkdownContext/lib/components/Code.tsx\nimport { c as _c15 } from \"react-compiler-runtime\";\nimport { Code as RadixCode } from \"@radix-ui/themes\";\n\n// src/components/suggestions/Suggestions/index.tsx\nimport { c as _c14 } from \"react-compiler-runtime\";\nimport { useMemo as useMemo6 } from \"react\";\n\n// src/hooks/messages/useLatestMessage/index.ts\nimport { c as _c11 } from \"react-compiler-runtime\";\nimport { useMemo as useMemo4 } from \"react\";\n\n// src/hooks/messages/useMessages/index.tsx\nimport { c as _c10 } from \"react-compiler-runtime\";\nimport { useMemo as useMemo3 } from \"react\";\nimport { useInfiniteQuery, useQueryClient } from \"@tanstack/react-query\";\n\n// src/lib/threads/queryOptions/index.ts\nimport { infiniteQueryOptions } from \"@tanstack/react-query\";\n\n// src/lib/threads/queryOptions/variableParams.ts\nfunction ownKeys2(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread2(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys2(Object(t), true).forEach(function(r2) {\n _defineProperty2(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys2(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty2(e, r, t) {\n return (r = _toPropertyKey2(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey2(t) {\n var i = _toPrimitive2(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive2(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar variableParams = (_ref) => {\n var _superinterfaceContex;\n var {\n variables,\n superinterfaceContext\n } = _ref;\n if (variables.threadId) return variables;\n if (!variables.assistantId) return variables;\n if (!((_superinterfaceContex = superinterfaceContext.threadIdStorageOptions) !== null && _superinterfaceContex !== void 0 && _superinterfaceContex.get)) return variables;\n var threadId = superinterfaceContext.threadIdStorageOptions.get({\n assistantId: variables.assistantId\n });\n if (!threadId) return variables;\n return _objectSpread2(_objectSpread2({}, variables), {}, {\n threadId\n });\n};\n\n// src/lib/threads/queryOptions/index.ts\nfunction asyncGeneratorStep(n, t, e, r, o, a, c) {\n try {\n var i = n[a](c), u = i.value;\n } catch (n2) {\n return void e(n2);\n }\n i.done ? t(u) : Promise.resolve(u).then(r, o);\n}\nfunction _asyncToGenerator(n) {\n return function() {\n var t = this, e = arguments;\n return new Promise(function(r, o) {\n var a = n.apply(t, e);\n function _next(n2) {\n asyncGeneratorStep(a, r, o, _next, _throw, \"next\", n2);\n }\n function _throw(n2) {\n asyncGeneratorStep(a, r, o, _next, _throw, \"throw\", n2);\n }\n _next(void 0);\n });\n };\n}\nfunction ownKeys3(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread3(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys3(Object(t), true).forEach(function(r2) {\n _defineProperty3(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys3(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty3(e, r, t) {\n return (r = _toPropertyKey3(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey3(t) {\n var i = _toPrimitive3(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive3(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar queryOptions = (_ref) => {\n var {\n queryKeyBase,\n path: path2,\n queryClient,\n threadContext,\n superinterfaceContext\n } = _ref;\n var queryKey = [...queryKeyBase, threadContext.variables];\n return infiniteQueryOptions(_objectSpread3(_objectSpread3(_objectSpread3({\n // @ts-ignore-next-line\n queryFn: function() {\n var _queryFn = _asyncToGenerator(function* (_ref2) {\n var {\n pageParam,\n queryKey: queryKey2\n } = _ref2;\n var [_key, variables] = queryKey2;\n var params = new URLSearchParams(_objectSpread3(_objectSpread3({}, pageParam ? {\n pageParam\n } : {}), variableParams({\n variables,\n superinterfaceContext\n })));\n return fetch(\"\".concat(superinterfaceContext.baseUrl).concat(path2, \"?\").concat(params)).then(/* @__PURE__ */ function() {\n var _ref3 = _asyncToGenerator(function* (response) {\n if (response.status !== 200) {\n try {\n var errorResponse = yield response.json();\n throw new Error(errorResponse.error);\n } catch (error) {\n throw new Error(\"Failed to fetch\");\n }\n }\n return response.json();\n });\n return function(_x2) {\n return _ref3.apply(this, arguments);\n };\n }());\n });\n function queryFn2(_x) {\n return _queryFn.apply(this, arguments);\n }\n return queryFn2;\n }(),\n initialPageParam: void 0,\n getNextPageParam: (lastPage) => {\n if (!lastPage.hasNextPage) return null;\n return lastPage.lastId;\n },\n limit: 10\n }, threadContext.defaultOptions.queries), queryClient.getQueryDefaults(queryKey)), {}, {\n queryKey\n }));\n};\n\n// src/lib/messages/messagesQueryOptions.ts\nvar messagesQueryOptions = (_ref) => {\n var {\n queryClient,\n threadContext,\n superinterfaceContext\n } = _ref;\n return queryOptions({\n queryKeyBase: [\"messages\"],\n path: \"/messages\",\n queryClient,\n threadContext,\n superinterfaceContext\n });\n};\n\n// src/hooks/messages/useMessages/index.tsx\nfunction ownKeys4(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread4(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys4(Object(t), true).forEach(function(r2) {\n _defineProperty4(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys4(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty4(e, r, t) {\n return (r = _toPropertyKey4(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey4(t) {\n var i = _toPrimitive4(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive4(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar messages = (_ref) => {\n var {\n props\n } = _ref;\n if (!props.data) return [];\n return props.data.pages.reduce((acc, page) => acc.concat(page.data), []);\n};\nvar useMessages = () => {\n var $ = _c10(9);\n var queryClient = useQueryClient();\n var threadContext = useSuperinterfaceContext();\n var superinterfaceContext = useSuperinterfaceContext();\n var t0;\n if ($[0] !== queryClient || $[1] !== superinterfaceContext || $[2] !== threadContext) {\n t0 = messagesQueryOptions({\n queryClient,\n threadContext,\n superinterfaceContext\n });\n $[0] = queryClient;\n $[1] = superinterfaceContext;\n $[2] = threadContext;\n $[3] = t0;\n } else {\n t0 = $[3];\n }\n var props = useInfiniteQuery(t0);\n var t1;\n var t2;\n if ($[4] !== props) {\n t2 = messages({\n props\n });\n $[4] = props;\n $[5] = t2;\n } else {\n t2 = $[5];\n }\n var t3;\n if ($[6] !== props || $[7] !== t2) {\n t3 = _objectSpread4(_objectSpread4({}, props), {}, {\n messages: t2\n });\n $[6] = props;\n $[7] = t2;\n $[8] = t3;\n } else {\n t3 = $[8];\n }\n t1 = t3;\n return t1;\n};\n\n// src/hooks/messages/useLatestMessage/index.ts\nfunction ownKeys5(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread5(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys5(Object(t), true).forEach(function(r2) {\n _defineProperty5(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys5(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty5(e, r, t) {\n return (r = _toPropertyKey5(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey5(t) {\n var i = _toPrimitive5(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive5(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar useLatestMessage = () => {\n var $ = _c11(3);\n var props = useMessages();\n var t0;\n var t1 = props.messages[0] || null;\n var t2;\n if ($[0] !== props || $[1] !== t1) {\n t2 = _objectSpread5(_objectSpread5({}, props), {}, {\n latestMessage: t1\n });\n $[0] = props;\n $[1] = t1;\n $[2] = t2;\n } else {\n t2 = $[2];\n }\n t0 = t2;\n return t0;\n};\n\n// src/components/suggestions/Suggestions/Content.tsx\nimport { useMemo as useMemo5 } from \"react\";\nimport { isEmpty } from \"radash\";\nimport { onlyText } from \"react-children-utilities\";\nimport { Flex as Flex7 } from \"@radix-ui/themes\";\n\n// src/components/suggestions/Suggestions/Item.tsx\nimport { c as _c13 } from \"react-compiler-runtime\";\nimport { ArrowUpIcon } from \"@radix-ui/react-icons\";\nimport { Text as Text4, Button as Button2, Spinner } from \"@radix-ui/themes\";\n\n// src/hooks/messages/useCreateMessage/index.ts\nimport { c as _c12 } from \"react-compiler-runtime\";\nimport { partob } from \"radash\";\nimport { useMutation, useQueryClient as useQueryClient2 } from \"@tanstack/react-query\";\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/onMutate/index.ts\nimport { omit } from \"radash\";\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/onMutate/data.ts\nimport dayjs from \"dayjs\";\n\n// src/lib/optimistic/optimisticId.ts\nimport { uid } from \"radash\";\nvar optimisticId = () => \"-\".concat(uid(24));\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/onMutate/data.ts\nfunction ownKeys6(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread6(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys6(Object(t), true).forEach(function(r2) {\n _defineProperty6(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys6(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty6(e, r, t) {\n return (r = _toPropertyKey6(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey6(t) {\n var i = _toPrimitive6(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive6(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar data = (_ref) => {\n var {\n newMessage\n } = _ref;\n return (prevData) => {\n var _newMessage$attachmen;\n var message = {\n id: optimisticId(),\n role: \"user\",\n created_at: dayjs().unix(),\n object: \"thread.message\",\n content: [{\n type: \"text\",\n text: {\n annotations: [],\n value: newMessage.content\n }\n }],\n run_id: null,\n assistant_id: null,\n thread_id: null,\n attachments: (_newMessage$attachmen = newMessage.attachments) !== null && _newMessage$attachmen !== void 0 ? _newMessage$attachmen : [],\n metadata: {},\n runSteps: []\n };\n if (!prevData) {\n return {\n pageParams: [],\n pages: [{\n data: [message],\n hasNextPage: false,\n lastId: message.id\n }]\n };\n }\n var [latestPage, ...pagesRest] = prevData.pages;\n return _objectSpread6(_objectSpread6({}, prevData), {}, {\n pages: [_objectSpread6(_objectSpread6({}, latestPage), {}, {\n data: [message, ...latestPage.data]\n }), ...pagesRest]\n });\n };\n};\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/onMutate/index.ts\nfunction asyncGeneratorStep2(n, t, e, r, o, a, c) {\n try {\n var i = n[a](c), u = i.value;\n } catch (n2) {\n return void e(n2);\n }\n i.done ? t(u) : Promise.resolve(u).then(r, o);\n}\nfunction _asyncToGenerator2(n) {\n return function() {\n var t = this, e = arguments;\n return new Promise(function(r, o) {\n var a = n.apply(t, e);\n function _next(n2) {\n asyncGeneratorStep2(a, r, o, _next, _throw, \"next\", n2);\n }\n function _throw(n2) {\n asyncGeneratorStep2(a, r, o, _next, _throw, \"throw\", n2);\n }\n _next(void 0);\n });\n };\n}\nvar onMutate = (_ref) => {\n var {\n queryClient\n } = _ref;\n return /* @__PURE__ */ function() {\n var _ref2 = _asyncToGenerator2(function* (newMessage) {\n var queryKey = [\"messages\", omit(newMessage, [\"content\", \"attachments\"])];\n yield queryClient.cancelQueries({\n queryKey\n });\n var prevMessages = queryClient.getQueryData(queryKey);\n queryClient.setQueryData(queryKey, data({\n newMessage\n }));\n return {\n prevMessages,\n newMessage\n };\n });\n return function(_x) {\n return _ref2.apply(this, arguments);\n };\n }();\n};\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/index.ts\nimport { JSONParser } from \"@streamparser/json-whatwg\";\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadCreated.ts\nvar threadCreated = (_ref) => {\n var _superinterfaceContex, _value$data$metadata, _value$data$metadata2;\n var {\n value,\n superinterfaceContext\n } = _ref;\n if (!((_superinterfaceContex = superinterfaceContext.threadIdStorageOptions) !== null && _superinterfaceContex !== void 0 && _superinterfaceContex.set)) return;\n if (!((_value$data$metadata = value.data.metadata) !== null && _value$data$metadata !== void 0 && _value$data$metadata.assistantId)) return;\n if (!((_value$data$metadata2 = value.data.metadata) !== null && _value$data$metadata2 !== void 0 && _value$data$metadata2.threadId)) return;\n superinterfaceContext.threadIdStorageOptions.set({\n // @ts-ignore-next-line\n assistantId: value.data.metadata.assistantId,\n // @ts-ignore-next-line\n threadId: value.data.metadata.threadId\n });\n};\n\n// src/lib/optimistic/isOptimistic.ts\nimport _3 from \"lodash\";\nvar isOptimistic = (_ref) => {\n var {\n id\n } = _ref;\n return _3.startsWith(id, \"-\");\n};\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/extendMessage.ts\nimport { last } from \"radash\";\nfunction ownKeys7(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread7(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys7(Object(t), true).forEach(function(r2) {\n _defineProperty7(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys7(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty7(e, r, t) {\n return (r = _toPropertyKey7(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey7(t) {\n var i = _toPrimitive7(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive7(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar extendMessage = (_ref) => {\n var _ref2, _last$runSteps, _last, _last2;\n var {\n message,\n messages: messages2\n } = _ref;\n var prevRunMessages = messages2.filter((m) => m.run_id === message.run_id);\n var prevOptimitisticRunMessages = prevRunMessages.filter((m) => isOptimistic({\n id: m.id\n }));\n var runSteps = (_ref2 = (_last$runSteps = (_last = last(prevOptimitisticRunMessages)) === null || _last === void 0 ? void 0 : _last.runSteps) !== null && _last$runSteps !== void 0 ? _last$runSteps : (_last2 = last(prevRunMessages)) === null || _last2 === void 0 ? void 0 : _last2.runSteps) !== null && _ref2 !== void 0 ? _ref2 : [];\n return _objectSpread7(_objectSpread7({}, message), {}, {\n runSteps\n });\n};\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadMessageCreated.ts\nfunction ownKeys8(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread8(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys8(Object(t), true).forEach(function(r2) {\n _defineProperty8(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys8(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty8(e, r, t) {\n return (r = _toPropertyKey8(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey8(t) {\n var i = _toPrimitive8(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive8(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar appendMessage = (_ref) => {\n var {\n message,\n messages: messages2\n } = _ref;\n var prevMessages = messages2.filter((m) => m.run_id != message.run_id || !isOptimistic({\n id: m.id\n }));\n return [extendMessage({\n message,\n messages: messages2\n }), ...prevMessages];\n};\nvar threadMessageCreated = (_ref2) => {\n var {\n value,\n messagesQueryKey,\n queryClient\n } = _ref2;\n return queryClient.setQueryData(messagesQueryKey, (prevData) => {\n if (!prevData) {\n return {\n pageParams: [],\n pages: [{\n data: appendMessage({\n message: value.data,\n messages: []\n }),\n hasNextPage: false,\n lastId: value.data.id\n }]\n };\n }\n var [latestPage, ...pagesRest] = prevData.pages;\n return _objectSpread8(_objectSpread8({}, prevData), {}, {\n pages: [_objectSpread8(_objectSpread8({}, latestPage), {}, {\n data: appendMessage({\n message: value.data,\n messages: latestPage.data\n })\n }), ...pagesRest]\n });\n });\n};\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadMessageDelta.ts\nimport _4 from \"lodash\";\nimport { omit as omit2 } from \"radash\";\nfunction ownKeys9(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread9(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys9(Object(t), true).forEach(function(r2) {\n _defineProperty9(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys9(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty9(e, r, t) {\n return (r = _toPropertyKey9(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey9(t) {\n var i = _toPrimitive9(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive9(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar updatedContentPart = (_ref) => {\n var {\n prevContentPart,\n delta\n } = _ref;\n if (!prevContentPart) {\n return omit2(delta, [\"index\"]);\n }\n if (delta.type === \"text\" && delta.text && prevContentPart.type == \"text\" && prevContentPart.text) {\n var _prevContentPart$text, _delta$text$annotatio;\n return _objectSpread9(_objectSpread9({}, prevContentPart), {}, {\n text: _objectSpread9(_objectSpread9({}, prevContentPart.text), {}, {\n value: \"\".concat(prevContentPart.text.value).concat(delta.text.value),\n annotations: [...(_prevContentPart$text = prevContentPart.text.annotations) !== null && _prevContentPart$text !== void 0 ? _prevContentPart$text : [], ...(_delta$text$annotatio = delta.text.annotations) !== null && _delta$text$annotatio !== void 0 ? _delta$text$annotatio : []]\n })\n });\n }\n return prevContentPart;\n};\nvar updatedContent = (_ref2) => {\n var {\n content,\n value\n } = _ref2;\n if (!value.data.delta.content) return content;\n var result = _4.cloneDeep(content);\n value.data.delta.content.forEach((delta) => {\n result[delta.index] = updatedContentPart({\n // @ts-ignore-next-line\n prevContentPart: result[delta.index],\n delta\n });\n });\n return result;\n};\nvar threadMessageDelta = (_ref3) => {\n var {\n value,\n queryClient,\n messagesQueryKey\n } = _ref3;\n return queryClient.setQueryData(messagesQueryKey, (prevData) => {\n if (!prevData) {\n return {\n pageParams: [],\n pages: [{\n data: [],\n hasNextPage: false,\n lastId: null\n }]\n };\n }\n var [latestPage, ...pagesRest] = prevData.pages;\n var [latestMessage, ...messagesRest] = latestPage.data;\n return _objectSpread9(_objectSpread9({}, prevData), {}, {\n pages: [_objectSpread9(_objectSpread9({}, latestPage), {}, {\n data: [_objectSpread9(_objectSpread9({}, latestMessage), {}, {\n content: updatedContent({\n content: latestMessage.content,\n value\n })\n }), ...messagesRest]\n }), ...pagesRest]\n });\n });\n};\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadMessageCompleted.ts\nimport { replace } from \"radash\";\nfunction ownKeys10(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread10(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys10(Object(t), true).forEach(function(r2) {\n _defineProperty10(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys10(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty10(e, r, t) {\n return (r = _toPropertyKey10(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey10(t) {\n var i = _toPrimitive10(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive10(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar threadMessageCompleted = (_ref) => {\n var {\n value,\n queryClient,\n messagesQueryKey\n } = _ref;\n return queryClient.setQueryData(messagesQueryKey, (prevData) => {\n if (!prevData) {\n return {\n pageParams: [],\n pages: [{\n data: [],\n hasNextPage: false,\n lastId: null\n }]\n };\n }\n var [latestPage, ...pagesRest] = prevData.pages;\n return _objectSpread10(_objectSpread10({}, prevData), {}, {\n pages: [_objectSpread10(_objectSpread10({}, latestPage), {}, {\n data: replace(latestPage.data, extendMessage({\n message: value.data,\n messages: latestPage.data\n }), (m) => m.id === value.data.id)\n }), ...pagesRest]\n });\n });\n};\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadRunCreated.ts\nfunction ownKeys11(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread11(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys11(Object(t), true).forEach(function(r2) {\n _defineProperty11(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys11(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty11(e, r, t) {\n return (r = _toPropertyKey11(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey11(t) {\n var i = _toPrimitive11(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive11(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar threadRunCreated = (_ref) => {\n var {\n value,\n queryClient,\n messagesQueryKey\n } = _ref;\n return queryClient.setQueryData(messagesQueryKey, (prevData) => {\n if (!prevData) return prevData;\n var [latestPage, ...pagesRest] = prevData.pages;\n return _objectSpread11(_objectSpread11({}, prevData), {}, {\n pages: [_objectSpread11(_objectSpread11({}, latestPage), {}, {\n data: [{\n id: optimisticId(),\n assistant_id: value.data.assistant_id,\n content: [],\n created_at: value.data.created_at,\n attachments: [],\n metadata: {},\n status: \"in_progress\",\n role: \"assistant\",\n runSteps: [],\n run_id: value.data.id,\n thread_id: value.data.thread_id\n }, ...latestPage.data]\n }), ...pagesRest]\n });\n });\n};\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadRunFailed.ts\nvar threadRunFailed = (_ref) => {\n var {\n value,\n queryClient,\n messagesQueryKey\n } = _ref;\n throw new Error(\"Failed to send your message, try again. If you are the owner, check the logs.\");\n};\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadRunStepCreated.ts\nfunction ownKeys12(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread12(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys12(Object(t), true).forEach(function(r2) {\n _defineProperty12(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys12(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty12(e, r, t) {\n return (r = _toPropertyKey12(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey12(t) {\n var i = _toPrimitive12(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive12(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar threadRunStepCreated = (_ref) => {\n var {\n value,\n queryClient,\n messagesQueryKey\n } = _ref;\n return queryClient.setQueryData(messagesQueryKey, (prevData) => {\n if (!prevData) return prevData;\n var [latestPage, ...pagesRest] = prevData.pages;\n return _objectSpread12(_objectSpread12({}, prevData), {}, {\n pages: [_objectSpread12(_objectSpread12({}, latestPage), {}, {\n data: latestPage.data.map((m) => {\n if (m.run_id === value.data.run_id) {\n return _objectSpread12(_objectSpread12({}, m), {}, {\n runSteps: [value.data, ...m.runSteps]\n });\n }\n return m;\n })\n }), ...pagesRest]\n });\n });\n};\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadRunStepDelta.ts\nimport _5 from \"lodash\";\nimport { omit as omit3 } from \"radash\";\nfunction ownKeys13(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread13(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys13(Object(t), true).forEach(function(r2) {\n _defineProperty13(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys13(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty13(e, r, t) {\n return (r = _toPropertyKey13(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey13(t) {\n var i = _toPrimitive13(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive13(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar updatedToolCall = (_ref) => {\n var {\n toolCall,\n delta\n } = _ref;\n if (!toolCall) {\n return omit3(delta, [\"index\"]);\n }\n if (delta.type === \"function\" && delta.function && toolCall.type === \"function\" && toolCall.function) {\n var result = _5.cloneDeep(toolCall);\n for (var [key2, value] of Object.entries(delta.function)) {\n var _result$function$key;\n result.function[key2] = \"\".concat((_result$function$key = result.function[key2]) !== null && _result$function$key !== void 0 ? _result$function$key : \"\").concat(value);\n }\n return result;\n }\n return toolCall;\n};\nvar updatedRunStep = (_ref2) => {\n var _runStep$step_details, _value$data$delta;\n var {\n runStep,\n value\n } = _ref2;\n if (!(runStep !== null && runStep !== void 0 && (_runStep$step_details = runStep.step_details) !== null && _runStep$step_details !== void 0 && _runStep$step_details.tool_calls)) return runStep;\n if (((_value$data$delta = value.data.delta) === null || _value$data$delta === void 0 || (_value$data$delta = _value$data$delta.step_details) === null || _value$data$delta === void 0 ? void 0 : _value$data$delta.type) === \"tool_calls\") {\n if (!value.data.delta.step_details.tool_calls) return runStep;\n var newToolCalls = _5.cloneDeep(runStep.step_details.tool_calls);\n value.data.delta.step_details.tool_calls.forEach((delta) => newToolCalls[delta.index] = updatedToolCall({\n toolCall: newToolCalls[delta.index],\n delta\n }));\n return _objectSpread13(_objectSpread13({}, runStep), {}, {\n step_details: _objectSpread13(_objectSpread13(_objectSpread13({}, runStep.step_details), value.data.delta.step_details), {}, {\n tool_calls: newToolCalls\n })\n });\n } else {\n return runStep;\n }\n};\nvar threadRunStepDelta = (_ref3) => {\n var {\n value,\n queryClient,\n messagesQueryKey\n } = _ref3;\n return queryClient.setQueryData(messagesQueryKey, (prevData) => {\n if (!prevData) return prevData;\n var [latestPage, ...pagesRest] = prevData.pages;\n return _objectSpread13(_objectSpread13({}, prevData), {}, {\n pages: [_objectSpread13(_objectSpread13({}, latestPage), {}, {\n data: latestPage.data.map((m) => {\n if (m.run_id === value.data.run_id) {\n return _objectSpread13(_objectSpread13({}, m), {}, {\n runSteps: m.runSteps.map((rs) => {\n if (rs.id === value.data.id) {\n return updatedRunStep({\n runStep: rs,\n value\n });\n }\n return rs;\n })\n });\n }\n return m;\n })\n }), ...pagesRest]\n });\n });\n};\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadRunStepCompleted.ts\nimport { replace as replace2 } from \"radash\";\nfunction ownKeys14(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread14(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys14(Object(t), true).forEach(function(r2) {\n _defineProperty14(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys14(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty14(e, r, t) {\n return (r = _toPropertyKey14(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey14(t) {\n var i = _toPrimitive14(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive14(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar threadRunStepCompleted = (_ref) => {\n var {\n value,\n queryClient,\n messagesQueryKey\n } = _ref;\n return queryClient.setQueryData(messagesQueryKey, (prevData) => {\n if (!prevData) return prevData;\n var [latestPage, ...pagesRest] = prevData.pages;\n return _objectSpread14(_objectSpread14({}, prevData), {}, {\n pages: [_objectSpread14(_objectSpread14({}, latestPage), {}, {\n data: latestPage.data.map((m) => {\n if (m.run_id === value.data.run_id) {\n return _objectSpread14(_objectSpread14({}, m), {}, {\n runSteps: replace2(m.runSteps, value.data, (rs) => rs.id === value.data.id)\n });\n }\n return m;\n })\n }), ...pagesRest]\n });\n });\n};\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/threadRunRequiresAction.ts\nimport { map } from \"radash\";\nfunction ownKeys15(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread15(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys15(Object(t), true).forEach(function(r2) {\n _defineProperty15(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys15(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty15(e, r, t) {\n return (r = _toPropertyKey15(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey15(t) {\n var i = _toPrimitive15(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive15(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nfunction asyncGeneratorStep3(n, t, e, r, o, a, c) {\n try {\n var i = n[a](c), u = i.value;\n } catch (n2) {\n return void e(n2);\n }\n i.done ? t(u) : Promise.resolve(u).then(r, o);\n}\nfunction _asyncToGenerator3(n) {\n return function() {\n var t = this, e = arguments;\n return new Promise(function(r, o) {\n var a = n.apply(t, e);\n function _next(n2) {\n asyncGeneratorStep3(a, r, o, _next, _throw, \"next\", n2);\n }\n function _throw(n2) {\n asyncGeneratorStep3(a, r, o, _next, _throw, \"throw\", n2);\n }\n _next(void 0);\n });\n };\n}\nvar threadRunRequiresAction = /* @__PURE__ */ function() {\n var _ref2 = _asyncToGenerator3(function* (_ref) {\n var {\n value,\n queryClient,\n messagesQueryKey,\n superinterfaceContext\n } = _ref;\n if (value.data.required_action.type === \"submit_client_tool_outputs\") {\n var toolCalls = value.data.required_action.submit_client_tool_outputs.tool_calls;\n var toolOutputs = yield map(toolCalls, /* @__PURE__ */ function() {\n var _ref3 = _asyncToGenerator3(function* (toolCall) {\n if (toolCall.type !== \"function\") {\n return {\n toolCallId: toolCall.id,\n output: \"Error: client tool type \".concat(toolCall.type, \" is not supported.\")\n };\n }\n var fn = window[toolCall.function.name];\n if (!fn) {\n return {\n toolCallId: toolCall.id,\n output: \"Error: client function \".concat(toolCall.function.name, \" is not defined.\")\n };\n }\n var args = toolCall.function.arguments;\n var parsedArgs = JSON.parse(args);\n var output;\n try {\n output = yield fn(parsedArgs);\n } catch (error) {\n output = \"Error: \".concat(error.message);\n }\n return {\n toolCallId: toolCall.id,\n output\n };\n });\n return function(_x2) {\n return _ref3.apply(this, arguments);\n };\n }());\n return fetch(\"\".concat(superinterfaceContext.baseUrl, \"/threads/runs/submit-client-tool-outputs\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(_objectSpread15({\n toolOutputs\n }, superinterfaceContext.variables))\n });\n }\n });\n return function threadRunRequiresAction2(_x) {\n return _ref2.apply(this, arguments);\n };\n}();\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/handlers/index.ts\nvar handlers = {\n \"thread.created\": threadCreated,\n \"thread.message.created\": threadMessageCreated,\n \"thread.message.delta\": threadMessageDelta,\n \"thread.message.completed\": threadMessageCompleted,\n \"thread.run.created\": threadRunCreated,\n \"thread.run.failed\": threadRunFailed,\n \"thread.run.step.created\": threadRunStepCreated,\n \"thread.run.step.delta\": threadRunStepDelta,\n \"thread.run.step.completed\": threadRunStepCompleted,\n \"thread.run.requires_action\": threadRunRequiresAction\n};\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/handleResponse/index.ts\nvar handleResponse = (_ref) => {\n var {\n value,\n messagesQueryKey,\n queryClient,\n superinterfaceContext\n } = _ref;\n var handler = handlers[value.value.event];\n if (!handler) {\n return console.log(\"Missing handler\", {\n value\n });\n }\n return handler({\n value: value.value,\n queryClient,\n messagesQueryKey,\n superinterfaceContext\n });\n};\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/body.ts\nfunction ownKeys16(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread16(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys16(Object(t), true).forEach(function(r2) {\n _defineProperty16(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys16(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty16(e, r, t) {\n return (r = _toPropertyKey16(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey16(t) {\n var i = _toPrimitive16(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive16(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar body = (_ref) => {\n var _superinterfaceContex;\n var {\n variables,\n superinterfaceContext\n } = _ref;\n if (variables.threadId) return variables;\n if (!variables.assistantId) return variables;\n if (!((_superinterfaceContex = superinterfaceContext.threadIdStorageOptions) !== null && _superinterfaceContex !== void 0 && _superinterfaceContex.get)) return variables;\n var threadId = superinterfaceContext.threadIdStorageOptions.get({\n assistantId: variables.assistantId\n });\n if (!threadId) return variables;\n return _objectSpread16(_objectSpread16({}, variables), {}, {\n threadId\n });\n};\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/mutationFn/index.ts\nfunction asyncGeneratorStep4(n, t, e, r, o, a, c) {\n try {\n var i = n[a](c), u = i.value;\n } catch (n2) {\n return void e(n2);\n }\n i.done ? t(u) : Promise.resolve(u).then(r, o);\n}\nfunction _asyncToGenerator4(n) {\n return function() {\n var t = this, e = arguments;\n return new Promise(function(r, o) {\n var a = n.apply(t, e);\n function _next(n2) {\n asyncGeneratorStep4(a, r, o, _next, _throw, \"next\", n2);\n }\n function _throw(n2) {\n asyncGeneratorStep4(a, r, o, _next, _throw, \"throw\", n2);\n }\n _next(void 0);\n });\n };\n}\nvar mutationFn = (_ref) => {\n var {\n superinterfaceContext,\n queryClient,\n threadContext\n } = _ref;\n return /* @__PURE__ */ function() {\n var _ref2 = _asyncToGenerator4(function* (variables) {\n var abortController = new AbortController();\n superinterfaceContext.createMessageAbortControllerRef.current = abortController;\n var response = yield fetch(\"\".concat(superinterfaceContext.baseUrl, \"/messages\"), {\n method: \"POST\",\n body: JSON.stringify(body({\n variables,\n superinterfaceContext\n })),\n signal: abortController.signal\n });\n if (response.status !== 200) {\n try {\n var errorResponse = yield response.json();\n throw new Error(errorResponse.error);\n } catch (error) {\n throw new Error(\"Failed to send your message, try again. If you are the owner, check the logs.\");\n }\n }\n if (response.body == null) {\n throw new Error(\"The response body is empty.\");\n }\n var parser = new JSONParser({\n stringBufferSize: void 0,\n paths: [\"$\"],\n separator: \"\"\n });\n var reader = response.body.pipeThrough(parser).getReader();\n var messagesQueryKey = [\"messages\", threadContext.variables];\n while (true) {\n var {\n done,\n value\n } = yield reader.read();\n if (done) break;\n handleResponse({\n value,\n messagesQueryKey,\n queryClient,\n superinterfaceContext\n });\n }\n });\n return function(_x) {\n return _ref2.apply(this, arguments);\n };\n }();\n};\n\n// src/hooks/messages/useCreateMessage/lib/mutationOptions/index.ts\nfunction ownKeys17(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread17(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys17(Object(t), true).forEach(function(r2) {\n _defineProperty17(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys17(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty17(e, r, t) {\n return (r = _toPropertyKey17(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey17(t) {\n var i = _toPrimitive17(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive17(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar mutationOptions = (_ref) => {\n var {\n queryClient,\n threadContext,\n superinterfaceContext,\n onError\n } = _ref;\n var mutationKey = [\"createMessage\", threadContext.variables];\n return _objectSpread17(_objectSpread17(_objectSpread17({\n mutationFn: mutationFn({\n queryClient,\n superinterfaceContext,\n threadContext\n }),\n onMutate: onMutate({\n queryClient\n }),\n onError\n }, threadContext.defaultOptions.mutations), queryClient.getMutationDefaults(mutationKey)), {}, {\n mutationKey\n });\n};\n\n// src/hooks/messages/useCreateMessage/index.ts\nfunction ownKeys18(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread18(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys18(Object(t), true).forEach(function(r2) {\n _defineProperty18(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys18(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty18(e, r, t) {\n return (r = _toPropertyKey18(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey18(t) {\n var i = _toPrimitive18(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive18(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar useCreateMessage = (t0) => {\n var $ = _c12(15);\n var t1;\n if ($[0] !== t0) {\n t1 = t0 === void 0 ? {\n onError: _temp\n } : t0;\n $[0] = t0;\n $[1] = t1;\n } else {\n t1 = $[1];\n }\n var {\n onError: t2\n } = t1;\n var t3;\n if ($[2] !== t2) {\n t3 = t2 === void 0 ? _temp2 : t2;\n $[2] = t2;\n $[3] = t3;\n } else {\n t3 = $[3];\n }\n var onError = t3;\n var queryClient = useQueryClient2();\n var superinterfaceContext = useSuperinterfaceContext();\n var threadContext = useSuperinterfaceContext();\n var t4;\n if ($[4] !== onError || $[5] !== queryClient || $[6] !== superinterfaceContext || $[7] !== threadContext) {\n t4 = mutationOptions({\n queryClient,\n threadContext,\n superinterfaceContext,\n onError\n });\n $[4] = onError;\n $[5] = queryClient;\n $[6] = superinterfaceContext;\n $[7] = threadContext;\n $[8] = t4;\n } else {\n t4 = $[8];\n }\n var props = useMutation(t4);\n var t5;\n if ($[9] !== props.mutateAsync || $[10] !== threadContext.variables) {\n t5 = partob(props.mutateAsync, threadContext.variables);\n $[9] = props.mutateAsync;\n $[10] = threadContext.variables;\n $[11] = t5;\n } else {\n t5 = $[11];\n }\n var t6;\n if ($[12] !== props || $[13] !== t5) {\n t6 = _objectSpread18(_objectSpread18({}, props), {}, {\n createMessage: t5\n });\n $[12] = props;\n $[13] = t5;\n $[14] = t6;\n } else {\n t6 = $[14];\n }\n return t6;\n};\nfunction _temp() {\n}\nfunction _temp2() {\n}\n\n// src/components/suggestions/Suggestions/Item.tsx\nimport { useQueryClient as useQueryClient3 } from \"@tanstack/react-query\";\n\n// src/hooks/toasts/useToasts/index.ts\nimport { useContext as useContext4 } from \"react\";\n\n// src/contexts/toasts/ToastsContext/index.ts\nimport { createContext as createContext5 } from \"react\";\nvar ToastsContext = /* @__PURE__ */ createContext5({\n toasts: [],\n addToast: () => {\n }\n});\n\n// src/hooks/toasts/useToasts/index.ts\nvar useToasts = () => {\n return useContext4(ToastsContext);\n};\n\n// src/lib/errors/createMessageDefaultOnError.ts\nvar createMessageDefaultOnError = (_ref) => {\n var {\n queryClient,\n addToast,\n threadContext\n } = _ref;\n return (error) => {\n if (error.name === \"AbortError\") {\n queryClient.invalidateQueries({\n queryKey: [\"messages\", threadContext.variables]\n });\n queryClient.invalidateQueries({\n queryKey: [\"runs\", threadContext.variables]\n });\n return;\n }\n addToast({\n type: \"error\",\n message: error.message\n });\n };\n};\n\n// src/components/suggestions/Suggestions/Item.tsx\nimport { jsx as _jsx27, jsxs as _jsxs10 } from \"react/jsx-runtime\";\nfunction ownKeys19(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread19(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys19(Object(t), true).forEach(function(r2) {\n _defineProperty19(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys19(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty19(e, r, t) {\n return (r = _toPropertyKey19(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey19(t) {\n var i = _toPrimitive19(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive19(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar Item = (t0) => {\n var $ = _c13(16);\n var {\n suggestion,\n isDisabled,\n className,\n style\n } = t0;\n var {\n addToast\n } = useToasts();\n var queryClient = useQueryClient3();\n var threadContext = useSuperinterfaceContext();\n var t1;\n if ($[0] !== addToast || $[1] !== queryClient || $[2] !== threadContext) {\n t1 = createMessageDefaultOnError({\n queryClient,\n addToast,\n threadContext\n });\n $[0] = addToast;\n $[1] = queryClient;\n $[2] = threadContext;\n $[3] = t1;\n } else {\n t1 = $[3];\n }\n var t2;\n if ($[4] !== t1) {\n t2 = {\n onError: t1\n };\n $[4] = t1;\n $[5] = t2;\n } else {\n t2 = $[5];\n }\n var {\n createMessage,\n isPending\n } = useCreateMessage(t2);\n var t3;\n if ($[6] !== createMessage || $[7] !== suggestion) {\n t3 = () => {\n createMessage({\n content: suggestion\n });\n };\n $[6] = createMessage;\n $[7] = suggestion;\n $[8] = t3;\n } else {\n t3 = $[8];\n }\n var t4;\n if ($[9] !== className || $[10] !== isDisabled || $[11] !== isPending || $[12] !== style || $[13] !== suggestion || $[14] !== t3) {\n t4 = /* @__PURE__ */ _jsx27(Content3, {\n onClick: t3,\n isDisabled,\n isPending,\n className,\n style,\n children: suggestion\n });\n $[9] = className;\n $[10] = isDisabled;\n $[11] = isPending;\n $[12] = style;\n $[13] = suggestion;\n $[14] = t3;\n $[15] = t4;\n } else {\n t4 = $[15];\n }\n return t4;\n};\nvar Content3 = (_ref) => {\n var {\n onClick,\n isDisabled,\n isPending,\n children,\n className,\n style\n } = _ref;\n return /* @__PURE__ */ _jsxs10(Button2, {\n className,\n variant: \"soft\",\n onClick,\n disabled: isDisabled,\n style: _objectSpread19({\n minHeight: \"var(--base-button-height)\",\n height: \"inherit\",\n flexShrink: 1\n }, style !== null && style !== void 0 ? style : {}),\n children: [/* @__PURE__ */ _jsx27(Text4, {\n size: \"1\",\n weight: \"regular\",\n children\n }), /* @__PURE__ */ _jsx27(Spinner, {\n loading: isPending,\n children: /* @__PURE__ */ _jsx27(ArrowUpIcon, {\n style: {\n flexShrink: 0\n }\n })\n })]\n });\n};\nItem.Content = Content3;\n\n// src/components/suggestions/Suggestions/Content.tsx\nimport { jsx as _jsx28 } from \"react/jsx-runtime\";\nvar Content4 = (_ref) => {\n var {\n children,\n className,\n style\n } = _ref;\n var isMutatingMessage = useIsMutatingMessage();\n var suggestions = useMemo5(() => onlyText(children).split(/\\r?\\n/).filter((c) => !isEmpty(c)).map((c_0) => c_0.trim()), [children]);\n if (isEmpty(suggestions)) return null;\n return /* @__PURE__ */ _jsx28(Flex7, {\n gap: \"2\",\n py: \"2\",\n wrap: \"wrap\",\n className,\n style,\n children: suggestions.map((suggestion) => /* @__PURE__ */ _jsx28(Item, {\n suggestion,\n isDisabled: isMutatingMessage\n }, suggestion))\n });\n};\n\n// src/components/suggestions/Suggestions/index.tsx\nimport { jsx as _jsx29 } from \"react/jsx-runtime\";\nvar Suggestions = (t0) => {\n var _latestMessageProps$l;\n var $ = _c14(4);\n var {\n children,\n className,\n style\n } = t0;\n var latestMessageProps = useLatestMessage();\n var t1;\n t1 = (_latestMessageProps$l = latestMessageProps.latestMessage) === null || _latestMessageProps$l === void 0 || (_latestMessageProps$l = _latestMessageProps$l.metadata) === null || _latestMessageProps$l === void 0 ? void 0 : _latestMessageProps$l.isBlocking;\n var isDisabled = t1;\n if (latestMessageProps.isLoading) {\n return null;\n }\n if (isDisabled) {\n return null;\n }\n var t2;\n if ($[0] !== children || $[1] !== className || $[2] !== style) {\n t2 = /* @__PURE__ */ _jsx29(Content4, {\n className,\n style,\n children\n });\n $[0] = children;\n $[1] = className;\n $[2] = style;\n $[3] = t2;\n } else {\n t2 = $[3];\n }\n return t2;\n};\nSuggestions.Item = Item;\n\n// src/contexts/markdown/MarkdownContext/lib/components/Code.tsx\nimport { jsx as _jsx30 } from \"react/jsx-runtime\";\nvar Code3 = (t0) => {\n var $ = _c15(4);\n var {\n children,\n className\n } = t0;\n if (className === \"language-suggestions\") {\n var _t;\n if ($[0] !== children) {\n _t = /* @__PURE__ */ _jsx30(Suggestions, {\n children\n });\n $[0] = children;\n $[1] = _t;\n } else {\n _t = $[1];\n }\n return _t;\n }\n var t1;\n if ($[2] !== children) {\n t1 = /* @__PURE__ */ _jsx30(RadixCode, {\n children\n });\n $[2] = children;\n $[3] = t1;\n } else {\n t1 = $[3];\n }\n return t1;\n};\n\n// src/contexts/markdown/MarkdownContext/lib/components/Img/index.tsx\nimport { c as _c20 } from \"react-compiler-runtime\";\n\n// src/components/images/Image.tsx\nimport { Box as Box8 } from \"@radix-ui/themes\";\nimport { jsx as _jsx31 } from \"react/jsx-runtime\";\nfunction ownKeys20(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread20(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys20(Object(t), true).forEach(function(r2) {\n _defineProperty20(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys20(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty20(e, r, t) {\n return (r = _toPropertyKey20(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey20(t) {\n var i = _toPrimitive20(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive20(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar Image = (props) => /* @__PURE__ */ _jsx31(Box8, {\n pb: \"3\",\n children: /* @__PURE__ */ _jsx31(\"img\", _objectSpread20(_objectSpread20({}, props), {}, {\n style: {\n maxWidth: \"100%\",\n height: \"auto\"\n }\n }))\n});\n\n// src/contexts/markdown/MarkdownContext/lib/components/Img/lib/isVideoSrc.ts\nvar videoExtensions = [\"3g2\", \"3gp\", \"aaf\", \"asf\", \"avchd\", \"avi\", \"drc\", \"flv\", \"m2v\", \"m3u8\", \"m4p\", \"m4v\", \"mkv\", \"mng\", \"mov\", \"mp2\", \"mp4\", \"mpe\", \"mpeg\", \"mpg\", \"mpv\", \"mxf\", \"nsv\", \"ogg\", \"ogv\", \"qt\", \"rm\", \"rmvb\", \"roq\", \"svi\", \"vob\", \"webm\", \"wmv\", \"yuv\"];\nvar isVideoSrc = (_ref) => {\n var {\n src\n } = _ref;\n return videoExtensions.includes(src.split(\".\").pop() || \"\");\n};\n\n// src/contexts/markdown/MarkdownContext/lib/components/Img/lib/isAudioSrc.ts\nvar isAudioSrc = (_ref) => {\n var {\n src\n } = _ref;\n return src.endsWith(\".mp3\") || src.endsWith(\".wav\");\n};\n\n// src/contexts/markdown/MarkdownContext/lib/components/Img/Video/index.tsx\nimport { Flex as Flex8 } from \"@radix-ui/themes\";\nimport \"@vidstack/react/player/styles/base.css\";\nimport { MediaPlayer, MediaProvider, Controls } from \"@vidstack/react\";\n\n// src/components/media/PlayButton.tsx\nimport { c as _c16 } from \"react-compiler-runtime\";\nimport { PlayButton as VidstackPlayButton, useMediaState } from \"@vidstack/react\";\nimport { IconButton } from \"@radix-ui/themes\";\nimport { PlayIcon, PauseIcon } from \"@radix-ui/react-icons\";\nimport { jsx as _jsx32 } from \"react/jsx-runtime\";\nvar PlayButton = () => {\n var $ = _c16(2);\n var isPaused = useMediaState(\"paused\");\n var t0;\n if ($[0] !== isPaused) {\n t0 = /* @__PURE__ */ _jsx32(IconButton, {\n variant: \"ghost\",\n asChild: true,\n children: /* @__PURE__ */ _jsx32(VidstackPlayButton, {\n children: isPaused ? /* @__PURE__ */ _jsx32(PlayIcon, {}) : /* @__PURE__ */ _jsx32(PauseIcon, {})\n })\n });\n $[0] = isPaused;\n $[1] = t0;\n } else {\n t0 = $[1];\n }\n return t0;\n};\n\n// src/components/media/VolumeButton.tsx\nimport { c as _c17 } from \"react-compiler-runtime\";\nimport { MuteButton, useMediaState as useMediaState2, useMediaRemote } from \"@vidstack/react\";\nimport { IconButton as IconButton2, HoverCard, Slider } from \"@radix-ui/themes\";\nimport { SpeakerModerateIcon, SpeakerOffIcon } from \"@radix-ui/react-icons\";\nimport { jsx as _jsx33, jsxs as _jsxs11 } from \"react/jsx-runtime\";\nvar VolumeButton = () => {\n var $ = _c17(13);\n var volume = useMediaState2(\"volume\");\n var isMuted = useMediaState2(\"muted\");\n var remote = useMediaRemote();\n var t0;\n if ($[0] !== isMuted || $[1] !== volume) {\n t0 = /* @__PURE__ */ _jsx33(HoverCard.Trigger, {\n children: /* @__PURE__ */ _jsx33(IconButton2, {\n variant: \"ghost\",\n asChild: true,\n children: /* @__PURE__ */ _jsx33(MuteButton, {\n children: isMuted || volume === 0 ? /* @__PURE__ */ _jsx33(SpeakerOffIcon, {}) : /* @__PURE__ */ _jsx33(SpeakerModerateIcon, {})\n })\n })\n });\n $[0] = isMuted;\n $[1] = volume;\n $[2] = t0;\n } else {\n t0 = $[2];\n }\n var t1 = volume * 100;\n var t2;\n if ($[3] !== t1) {\n t2 = [t1];\n $[3] = t1;\n $[4] = t2;\n } else {\n t2 = $[4];\n }\n var t3;\n if ($[5] !== remote) {\n t3 = (t42) => {\n var [value] = t42;\n return remote.changeVolume(value / 100);\n };\n $[5] = remote;\n $[6] = t3;\n } else {\n t3 = $[6];\n }\n var t4;\n if ($[7] !== t2 || $[8] !== t3) {\n t4 = /* @__PURE__ */ _jsx33(HoverCard.Content, {\n size: \"1\",\n side: \"top\",\n height: \"100px\",\n children: /* @__PURE__ */ _jsx33(Slider, {\n size: \"1\",\n variant: \"soft\",\n orientation: \"vertical\",\n value: t2,\n onValueChange: t3\n })\n });\n $[7] = t2;\n $[8] = t3;\n $[9] = t4;\n } else {\n t4 = $[9];\n }\n var t5;\n if ($[10] !== t0 || $[11] !== t4) {\n t5 = /* @__PURE__ */ _jsxs11(HoverCard.Root, {\n children: [t0, t4]\n });\n $[10] = t0;\n $[11] = t4;\n $[12] = t5;\n } else {\n t5 = $[12];\n }\n return t5;\n};\n\n// src/components/media/Time.tsx\nimport { c as _c18 } from \"react-compiler-runtime\";\nimport { useState, useEffect, useMemo as useMemo7 } from \"react\";\nimport { useMediaState as useMediaState3, useMediaRemote as useMediaRemote2 } from \"@vidstack/react\";\nimport { Slider as Slider2 } from \"@radix-ui/themes\";\nimport { jsx as _jsx34 } from \"react/jsx-runtime\";\nvar Time = () => {\n var $ = _c18(17);\n var time = useMediaState3(\"currentTime\");\n var duration = useMediaState3(\"duration\");\n var seeking = useMediaState3(\"seeking\");\n var canSeek = useMediaState3(\"canSeek\");\n var remote = useMediaRemote2();\n var [value, setValue] = useState(0);\n var t0;\n var t1;\n if ($[0] !== duration || $[1] !== seeking || $[2] !== time) {\n t0 = () => {\n if (seeking) {\n return;\n }\n setValue(time / duration * 100);\n };\n t1 = [time, duration, seeking];\n $[0] = duration;\n $[1] = seeking;\n $[2] = time;\n $[3] = t0;\n $[4] = t1;\n } else {\n t0 = $[3];\n t1 = $[4];\n }\n useEffect(t0, t1);\n var t2;\n t2 = 1 / duration * 100;\n var step = t2;\n var t3;\n if ($[5] !== value) {\n t3 = [value];\n $[5] = value;\n $[6] = t3;\n } else {\n t3 = $[6];\n }\n var t4 = !canSeek;\n var t5 = Number.isFinite(step) ? step : 1;\n var t6;\n var t7;\n if ($[7] !== duration || $[8] !== remote) {\n t6 = (t82) => {\n var [value_0] = t82;\n setValue(value_0);\n remote.seeking(value_0 / 100 * duration);\n };\n t7 = (t9) => {\n var [value_1] = t9;\n remote.seek(value_1 / 100 * duration);\n };\n $[7] = duration;\n $[8] = remote;\n $[9] = t6;\n $[10] = t7;\n } else {\n t6 = $[9];\n t7 = $[10];\n }\n var t8;\n if ($[11] !== t3 || $[12] !== t4 || $[13] !== t5 || $[14] !== t6 || $[15] !== t7) {\n t8 = /* @__PURE__ */ _jsx34(Slider2, {\n size: \"1\",\n variant: \"soft\",\n value: t3,\n disabled: t4,\n step: t5,\n onValueChange: t6,\n onValueCommit: t7\n });\n $[11] = t3;\n $[12] = t4;\n $[13] = t5;\n $[14] = t6;\n $[15] = t7;\n $[16] = t8;\n } else {\n t8 = $[16];\n }\n return t8;\n};\n\n// src/components/media/MediaContainer.tsx\nimport { Card, Inset } from \"@radix-ui/themes\";\nimport { jsx as _jsx35 } from \"react/jsx-runtime\";\nvar MediaContainer = (_ref) => {\n var {\n children\n } = _ref;\n return /* @__PURE__ */ _jsx35(Card, {\n mb: \"3\",\n children: /* @__PURE__ */ _jsx35(Inset, {\n clip: \"padding-box\",\n style: {\n display: \"flex\",\n flexDirection: \"column\"\n },\n children\n })\n });\n};\n\n// src/contexts/markdown/MarkdownContext/lib/components/Img/Video/FullscreenButton.tsx\nimport { c as _c19 } from \"react-compiler-runtime\";\nimport { FullscreenButton as VidstackFullscreenButton, useMediaState as useMediaState4 } from \"@vidstack/react\";\nimport { IconButton as IconButton3 } from \"@radix-ui/themes\";\nimport { EnterFullScreenIcon, ExitFullScreenIcon } from \"@radix-ui/react-icons\";\nimport { jsx as _jsx36 } from \"react/jsx-runtime\";\nvar FullscreenButton = () => {\n var $ = _c19(2);\n var isFullscreen = useMediaState4(\"fullscreen\");\n var t0;\n if ($[0] !== isFullscreen) {\n t0 = /* @__PURE__ */ _jsx36(IconButton3, {\n variant: \"ghost\",\n asChild: true,\n children: /* @__PURE__ */ _jsx36(VidstackFullscreenButton, {\n children: isFullscreen ? /* @__PURE__ */ _jsx36(ExitFullScreenIcon, {}) : /* @__PURE__ */ _jsx36(EnterFullScreenIcon, {})\n })\n });\n $[0] = isFullscreen;\n $[1] = t0;\n } else {\n t0 = $[1];\n }\n return t0;\n};\n\n// src/contexts/markdown/MarkdownContext/lib/components/Img/Video/index.tsx\nimport { jsx as _jsx37, jsxs as _jsxs12 } from \"react/jsx-runtime\";\nvar Video = (_ref) => {\n var {\n src\n } = _ref;\n return /* @__PURE__ */ _jsx37(MediaContainer, {\n children: /* @__PURE__ */ _jsxs12(MediaPlayer, {\n src: {\n src,\n type: \"video/\".concat(src.split(\".\").pop())\n },\n playsInline: true,\n hideControlsOnMouseLeave: true,\n crossOrigin: true,\n children: [/* @__PURE__ */ _jsx37(MediaProvider, {}), /* @__PURE__ */ _jsx37(\"style\", {\n children: \"\\n .superinterface-video-controls {\\n opacity: 0;\\n transition: opacity 0.2s ease-out;\\n }\\n\\n .superinterface-video-controls[data-visible] {\\n opacity: 1;\\n }\\n \"\n }), /* @__PURE__ */ _jsx37(Flex8, {\n asChild: true,\n position: \"absolute\",\n bottom: \"0\",\n left: \"0\",\n right: \"0\",\n className: \"superinterface-video-controls\",\n p: \"3\",\n style: {\n zIndex: 10,\n background: \"var(--accent-4)\"\n },\n children: /* @__PURE__ */ _jsx37(Controls.Root, {\n children: /* @__PURE__ */ _jsx37(Flex8, {\n asChild: true,\n align: \"center\",\n gap: \"3\",\n flexGrow: \"1\",\n children: /* @__PURE__ */ _jsxs12(Controls.Group, {\n children: [/* @__PURE__ */ _jsx37(PlayButton, {}), /* @__PURE__ */ _jsx37(Time, {}), /* @__PURE__ */ _jsx37(VolumeButton, {}), /* @__PURE__ */ _jsx37(FullscreenButton, {})]\n })\n })\n })\n })]\n })\n });\n};\n\n// src/contexts/markdown/MarkdownContext/lib/components/Img/Audio/index.tsx\nimport { Flex as Flex9 } from \"@radix-ui/themes\";\nimport \"@vidstack/react/player/styles/base.css\";\nimport { MediaPlayer as MediaPlayer2, MediaProvider as MediaProvider2, Controls as Controls2 } from \"@vidstack/react\";\nimport { jsx as _jsx38, jsxs as _jsxs13 } from \"react/jsx-runtime\";\nvar Audio = (_ref) => {\n var {\n src\n } = _ref;\n return /* @__PURE__ */ _jsx38(MediaContainer, {\n children: /* @__PURE__ */ _jsxs13(MediaPlayer2, {\n src: {\n src,\n type: \"audio/\".concat(src.split(\".\").pop())\n },\n viewType: \"audio\",\n crossOrigin: true,\n playsInline: true,\n children: [/* @__PURE__ */ _jsx38(MediaProvider2, {}), /* @__PURE__ */ _jsx38(Flex9, {\n asChild: true,\n p: \"3\",\n flexGrow: \"1\",\n style: {\n zIndex: 10,\n background: \"var(--accent-4)\"\n },\n children: /* @__PURE__ */ _jsx38(Controls2.Root, {\n children: /* @__PURE__ */ _jsx38(Flex9, {\n asChild: true,\n align: \"center\",\n gap: \"3\",\n flexGrow: \"1\",\n children: /* @__PURE__ */ _jsxs13(Controls2.Group, {\n children: [/* @__PURE__ */ _jsx38(PlayButton, {}), /* @__PURE__ */ _jsx38(Time, {}), /* @__PURE__ */ _jsx38(VolumeButton, {})]\n })\n })\n })\n })]\n })\n });\n};\n\n// src/contexts/markdown/MarkdownContext/lib/components/Img/index.tsx\nimport { jsx as _jsx39 } from \"react/jsx-runtime\";\nfunction ownKeys21(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread21(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys21(Object(t), true).forEach(function(r2) {\n _defineProperty21(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys21(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty21(e, r, t) {\n return (r = _toPropertyKey21(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey21(t) {\n var i = _toPrimitive21(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive21(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar Img = (props) => {\n var $ = _c20(8);\n if (!props.src) {\n var t0;\n if ($[0] !== props) {\n t0 = /* @__PURE__ */ _jsx39(Image, _objectSpread21({}, props));\n $[0] = props;\n $[1] = t0;\n } else {\n t0 = $[1];\n }\n return t0;\n } else {\n if (isVideoSrc({\n src: props.src\n })) {\n var _t;\n if ($[2] !== props.src) {\n _t = /* @__PURE__ */ _jsx39(Video, {\n src: props.src\n });\n $[2] = props.src;\n $[3] = _t;\n } else {\n _t = $[3];\n }\n return _t;\n } else {\n if (isAudioSrc({\n src: props.src\n })) {\n var _t2;\n if ($[4] !== props.src) {\n _t2 = /* @__PURE__ */ _jsx39(Audio, {\n src: props.src\n });\n $[4] = props.src;\n $[5] = _t2;\n } else {\n _t2 = $[5];\n }\n return _t2;\n } else {\n var _t3;\n if ($[6] !== props) {\n _t3 = /* @__PURE__ */ _jsx39(Image, _objectSpread21({}, props));\n $[6] = props;\n $[7] = _t3;\n } else {\n _t3 = $[7];\n }\n return _t3;\n }\n }\n }\n};\n\n// src/contexts/markdown/MarkdownContext/lib/components/Annotation/index.tsx\nimport { c as _c22 } from \"react-compiler-runtime\";\nimport { QuoteIcon } from \"@radix-ui/react-icons\";\n\n// src/contexts/markdown/MarkdownContext/lib/components/Annotation/AnnotationBase.tsx\nimport { IconButton as IconButton4, Popover as Popover4, Flex as Flex10, Text as Text5 } from \"@radix-ui/themes\";\nimport { jsx as _jsx40, jsxs as _jsxs14 } from \"react/jsx-runtime\";\nvar AnnotationBase = (_ref) => {\n var {\n icon,\n content\n } = _ref;\n return /* @__PURE__ */ _jsxs14(Popover4.Root, {\n children: [/* @__PURE__ */ _jsx40(Popover4.Trigger, {\n children: /* @__PURE__ */ _jsx40(IconButton4, {\n variant: \"soft\",\n color: \"gray\",\n size: \"1\",\n children: icon\n })\n }), /* @__PURE__ */ _jsx40(Popover4.Content, {\n size: \"1\",\n children: /* @__PURE__ */ _jsx40(Flex10, {\n direction: \"column\",\n children: /* @__PURE__ */ _jsx40(Text5, {\n size: \"1\",\n color: \"gray\",\n children: content\n })\n })\n })]\n });\n};\n\n// src/contexts/markdown/MarkdownContext/lib/components/Annotation/FilePathAnnotation.tsx\nimport { c as _c21 } from \"react-compiler-runtime\";\nimport { jsx as _jsx41 } from \"react/jsx-runtime\";\nvar FilePathAnnotation = (t0) => {\n var $ = _c21(3);\n var {\n annotation,\n children\n } = t0;\n var superinterfaceContext = useSuperinterfaceContext();\n var nextSearchParams = new URLSearchParams(superinterfaceContext.variables);\n var t1 = \"\".concat(superinterfaceContext.baseUrl, \"/files/\").concat(annotation.file_path.file_id, \"/contents?\").concat(nextSearchParams);\n var t2;\n if ($[0] !== children || $[1] !== t1) {\n t2 = /* @__PURE__ */ _jsx41(Link, {\n href: t1,\n target: \"_self\",\n download: true,\n children\n });\n $[0] = children;\n $[1] = t1;\n $[2] = t2;\n } else {\n t2 = $[2];\n }\n return t2;\n};\n\n// src/contexts/markdown/MarkdownContext/lib/components/Annotation/index.tsx\nimport { jsx as _jsx42 } from \"react/jsx-runtime\";\nvar Annotation = (t0) => {\n var $ = _c22(4);\n var {\n annotation,\n children\n } = t0;\n if (annotation.type === \"file_citation\") {\n var t1;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t1 = /* @__PURE__ */ _jsx42(AnnotationBase, {\n icon: /* @__PURE__ */ _jsx42(QuoteIcon, {}),\n content: \"File cited.\"\n });\n $[0] = t1;\n } else {\n t1 = $[0];\n }\n return t1;\n } else {\n if (annotation.type === \"file_path\") {\n var _t;\n if ($[1] !== annotation || $[2] !== children) {\n _t = /* @__PURE__ */ _jsx42(FilePathAnnotation, {\n annotation,\n children\n });\n $[1] = annotation;\n $[2] = children;\n $[3] = _t;\n } else {\n _t = $[3];\n }\n return _t;\n }\n }\n return null;\n};\n\n// src/contexts/markdown/MarkdownContext/lib/components/index.tsx\nimport { jsx as _jsx43, Fragment as _Fragment, jsxs as _jsxs15 } from \"react/jsx-runtime\";\nvar _excluded = [\"width\"];\nfunction _objectWithoutProperties(e, t) {\n if (null == e) return {};\n var o, r, i = _objectWithoutPropertiesLoose(e, t);\n if (Object.getOwnPropertySymbols) {\n var s = Object.getOwnPropertySymbols(e);\n for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);\n }\n return i;\n}\nfunction _objectWithoutPropertiesLoose(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (e.includes(n)) continue;\n t[n] = r[n];\n }\n return t;\n}\nfunction ownKeys22(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread22(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys22(Object(t), true).forEach(function(r2) {\n _defineProperty22(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys22(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty22(e, r, t) {\n return (r = _toPropertyKey22(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey22(t) {\n var i = _toPrimitive22(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive22(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar components = {\n p: Paragraph,\n a: Link,\n strong: Strong,\n ul: UnorderedList,\n ol: OrderedList,\n li: ListItem,\n pre: Pre,\n code: Code3,\n img: Img,\n annotation: Annotation,\n h1: (props) => /* @__PURE__ */ _jsx43(Heading, {\n as: \"h1\",\n children: props.children\n }),\n h2: (props) => /* @__PURE__ */ _jsx43(Heading, {\n as: \"h2\",\n size: \"5\",\n children: props.children\n }),\n h3: (props) => /* @__PURE__ */ _jsx43(Heading, {\n as: \"h3\",\n size: \"4\",\n children: props.children\n }),\n h4: (props) => /* @__PURE__ */ _jsx43(Heading, {\n as: \"h4\",\n size: \"3\",\n children: props.children\n }),\n h5: (props) => /* @__PURE__ */ _jsx43(Heading, {\n as: \"h5\",\n size: \"3\",\n children: props.children\n }),\n h6: (props) => /* @__PURE__ */ _jsx43(Heading, {\n as: \"h6\",\n size: \"3\",\n children: props.children\n }),\n table: (props) => /* @__PURE__ */ _jsxs15(_Fragment, {\n children: [/* @__PURE__ */ _jsx43(\"style\", {\n children: \".rt-TableRootTable { overflow: inherit; }\"\n }), /* @__PURE__ */ _jsx43(Table.Root, _objectSpread22(_objectSpread22({}, props), {}, {\n variant: \"surface\",\n mb: \"3\"\n }))]\n }),\n thead: (props) => /* @__PURE__ */ _jsx43(Table.Header, _objectSpread22({}, props)),\n tbody: (props) => /* @__PURE__ */ _jsx43(Table.Body, _objectSpread22({}, props)),\n tr: (props) => /* @__PURE__ */ _jsx43(Table.Row, _objectSpread22({}, props)),\n td: (_ref) => {\n var {\n width: width2\n } = _ref, rest = _objectWithoutProperties(_ref, _excluded);\n return /* @__PURE__ */ _jsx43(Table.Cell, _objectSpread22(_objectSpread22({}, rest), {}, {\n width: width2\n }));\n },\n th: (props) => /* @__PURE__ */ _jsx43(Table.ColumnHeaderCell, _objectSpread22({}, props))\n};\n\n// src/contexts/markdown/MarkdownContext/lib/getRemarkPlugins.ts\nimport remarkGfm from \"remark-gfm\";\n\n// src/lib/remark/remarkAnnotation.ts\nimport { isNumber } from \"radash\";\nimport flatMap from \"unist-util-flatmap\";\nfunction ownKeys23(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread23(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys23(Object(t), true).forEach(function(r2) {\n _defineProperty23(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys23(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty23(e, r, t) {\n return (r = _toPropertyKey23(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey23(t) {\n var i = _toPrimitive23(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive23(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar sortedAnnotations = (_ref) => {\n var {\n content\n } = _ref;\n return content.text.annotations.sort((a, b) => a.start_index - b.start_index);\n};\nvar remarkAnnotation = (_ref2) => {\n var {\n content\n } = _ref2;\n return () => {\n return (tree) => {\n flatMap(tree, (node) => {\n if (node.type === \"text\" || node.type === \"link\") {\n return processNodeWithAnnotations({\n node,\n content\n });\n } else {\n return [node];\n }\n });\n };\n };\n};\nvar processNodeWithAnnotations = (_ref3) => {\n var _content$text;\n var {\n node,\n content\n } = _ref3;\n if (!((_content$text = content.text) !== null && _content$text !== void 0 && (_content$text = _content$text.annotations) !== null && _content$text !== void 0 && _content$text.length)) {\n return [node];\n }\n if (!node.position) {\n return [node];\n }\n var annotations = sortedAnnotations({\n content\n });\n if (node.type === \"text\") {\n return processTextNode({\n node,\n annotations\n });\n } else if (node.type === \"link\") {\n var linkNode = node;\n linkNode.children = flatMap(linkNode.children, (childNode) => {\n if (childNode.type === \"text\") {\n return processTextNode({\n node: childNode,\n annotations\n });\n } else {\n return [childNode];\n }\n });\n return [linkNode];\n } else {\n return [node];\n }\n};\nvar processTextNode = (_ref4) => {\n var {\n node,\n annotations\n } = _ref4;\n if (!node.position || !node.value) {\n return [node];\n }\n var nodeStart = node.position.start.offset;\n var nodeEnd = node.position.end.offset;\n if (!isNumber(nodeStart) || !isNumber(nodeEnd)) {\n return [node];\n }\n var newNodes = [];\n var lastIndex = nodeStart;\n annotations.forEach((annotation) => {\n var annotationStart = annotation.start_index;\n var annotationEnd = annotation.end_index;\n if (nodeEnd <= annotationStart || nodeStart >= annotationEnd) {\n return;\n }\n var start = Math.max(nodeStart, annotationStart);\n var end = Math.min(nodeEnd, annotationEnd);\n if (lastIndex < start) {\n newNodes.push(createTextNode({\n node,\n startOffset: lastIndex,\n endOffset: start\n }));\n }\n newNodes.push(createAnnotationNode({\n node,\n startOffset: start,\n endOffset: end,\n annotation\n }));\n lastIndex = end;\n });\n if (lastIndex < nodeEnd) {\n newNodes.push(createTextNode({\n node,\n startOffset: lastIndex,\n endOffset: nodeEnd\n }));\n }\n return newNodes;\n};\nvar createTextNode = (_ref5) => {\n var {\n node,\n startOffset,\n endOffset\n } = _ref5;\n var valueStart = startOffset - node.position.start.offset;\n var valueEnd = endOffset - node.position.start.offset;\n return {\n type: \"text\",\n value: node.value.slice(valueStart, valueEnd),\n position: {\n start: _objectSpread23(_objectSpread23({}, node.position.start), {}, {\n offset: startOffset\n }),\n end: _objectSpread23(_objectSpread23({}, node.position.end), {}, {\n offset: endOffset\n })\n }\n };\n};\nvar createAnnotationNode = (_ref6) => {\n var {\n node,\n startOffset,\n endOffset,\n annotation\n } = _ref6;\n var valueStart = startOffset - node.position.start.offset;\n var valueEnd = endOffset - node.position.start.offset;\n return {\n type: \"annotation\",\n value: node.value.slice(valueStart, valueEnd),\n position: {\n start: _objectSpread23(_objectSpread23({}, node.position.start), {}, {\n offset: startOffset\n }),\n end: _objectSpread23(_objectSpread23({}, node.position.end), {}, {\n offset: endOffset\n })\n },\n data: {\n hName: \"annotation\",\n hProperties: {\n annotation\n }\n }\n };\n};\n\n// src/contexts/markdown/MarkdownContext/lib/getRemarkPlugins.ts\nvar getRemarkPlugins = (_ref) => {\n var {\n content\n } = _ref;\n return [remarkAnnotation({\n content\n }), remarkGfm];\n};\n\n// src/contexts/markdown/MarkdownContext/index.ts\nvar MarkdownContext = /* @__PURE__ */ createContext6({\n components,\n getRemarkPlugins\n});\n\n// src/hooks/markdown/useMarkdownContext/index.ts\nvar useMarkdownContext = () => {\n return useContext5(MarkdownContext);\n};\n\n// ../../node_modules/react-error-boundary/dist/react-error-boundary.esm.js\nimport { createContext as createContext7, Component, createElement, useContext as useContext6, useState as useState2, useMemo as useMemo8, forwardRef } from \"react\";\nvar ErrorBoundaryContext = /* @__PURE__ */ createContext7(null);\nvar initialState = {\n didCatch: false,\n error: null\n};\nvar ErrorBoundary = class extends Component {\n constructor(props) {\n super(props);\n this.resetErrorBoundary = this.resetErrorBoundary.bind(this);\n this.state = initialState;\n }\n static getDerivedStateFromError(error) {\n return {\n didCatch: true,\n error\n };\n }\n resetErrorBoundary() {\n var {\n error\n } = this.state;\n if (error !== null) {\n var _this$props$onReset, _this$props;\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n (_this$props$onReset = (_this$props = this.props).onReset) === null || _this$props$onReset === void 0 ? void 0 : _this$props$onReset.call(_this$props, {\n args,\n reason: \"imperative-api\"\n });\n this.setState(initialState);\n }\n }\n componentDidCatch(error, info) {\n var _this$props$onError, _this$props2;\n (_this$props$onError = (_this$props2 = this.props).onError) === null || _this$props$onError === void 0 ? void 0 : _this$props$onError.call(_this$props2, error, info);\n }\n componentDidUpdate(prevProps, prevState) {\n var {\n didCatch\n } = this.state;\n var {\n resetKeys\n } = this.props;\n if (didCatch && prevState.error !== null && hasArrayChanged(prevProps.resetKeys, resetKeys)) {\n var _this$props$onReset2, _this$props3;\n (_this$props$onReset2 = (_this$props3 = this.props).onReset) === null || _this$props$onReset2 === void 0 ? void 0 : _this$props$onReset2.call(_this$props3, {\n next: resetKeys,\n prev: prevProps.resetKeys,\n reason: \"keys\"\n });\n this.setState(initialState);\n }\n }\n render() {\n var {\n children,\n fallbackRender,\n FallbackComponent,\n fallback\n } = this.props;\n var {\n didCatch,\n error\n } = this.state;\n var childToRender = children;\n if (didCatch) {\n var props = {\n error,\n resetErrorBoundary: this.resetErrorBoundary\n };\n if (typeof fallbackRender === \"function\") {\n childToRender = fallbackRender(props);\n } else if (FallbackComponent) {\n childToRender = /* @__PURE__ */ createElement(FallbackComponent, props);\n } else if (fallback !== void 0) {\n childToRender = fallback;\n } else {\n throw error;\n }\n }\n return /* @__PURE__ */ createElement(ErrorBoundaryContext.Provider, {\n value: {\n didCatch,\n error,\n resetErrorBoundary: this.resetErrorBoundary\n }\n }, childToRender);\n }\n};\nfunction hasArrayChanged() {\n var a = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : [];\n var b = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : [];\n return a.length !== b.length || a.some((item, index) => !Object.is(item, b[index]));\n}\n\n// src/components/threads/Thread/Message/ContentPart/TextContent.tsx\nimport { jsx as _jsx44 } from \"react/jsx-runtime\";\nfunction ownKeys24(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread24(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys24(Object(t), true).forEach(function(r2) {\n _defineProperty24(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys24(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty24(e, r, t) {\n return (r = _toPropertyKey24(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey24(t) {\n var i = _toPrimitive24(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive24(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nfunction asyncGeneratorStep5(n, t, e, r, o, a, c) {\n try {\n var i = n[a](c), u = i.value;\n } catch (n2) {\n return void e(n2);\n }\n i.done ? t(u) : Promise.resolve(u).then(r, o);\n}\nfunction _asyncToGenerator5(n) {\n return function() {\n var t = this, e = arguments;\n return new Promise(function(r, o) {\n var a = n.apply(t, e);\n function _next(n2) {\n asyncGeneratorStep5(a, r, o, _next, _throw, \"next\", n2);\n }\n function _throw(n2) {\n asyncGeneratorStep5(a, r, o, _next, _throw, \"throw\", n2);\n }\n _next(void 0);\n });\n };\n}\nvar evaluate = /* @__PURE__ */ function() {\n var _ref2 = _asyncToGenerator5(function* (_ref) {\n var {\n code\n } = _ref;\n var fn = new Function(\"runtime\", \"useMDXComponents\", code);\n return fn(_objectSpread24(_objectSpread24({}, runtime), {}, {\n useMDXComponents\n }));\n });\n return function evaluate2(_x) {\n return _ref2.apply(this, arguments);\n };\n}();\nvar TextContent = (t0) => {\n var $ = _c23(13);\n var {\n content\n } = t0;\n var {\n getRemarkPlugins: getRemarkPlugins2,\n components: components2\n } = useMarkdownContext();\n var t1;\n var t2;\n if ($[0] !== content || $[1] !== getRemarkPlugins2) {\n t2 = getRemarkPlugins2({\n content\n });\n $[0] = content;\n $[1] = getRemarkPlugins2;\n $[2] = t2;\n } else {\n t2 = $[2];\n }\n t1 = t2;\n var remarkPlugins = t1;\n var [MDXComponent, setMDXComponent] = useState3(null);\n var t3;\n var t4;\n if ($[3] !== content || $[4] !== remarkPlugins) {\n t3 = () => {\n var compileMDX = /* @__PURE__ */ function() {\n var _ref3 = _asyncToGenerator5(function* () {\n ;\n try {\n var compiled = yield compile(content.text.value, {\n outputFormat: \"function-body\",\n remarkPlugins,\n recmaPlugins: [recmaFallbackComponentPlugin],\n providerImportSource: \"@mdx-js/react\"\n });\n var code = String(compiled);\n console.log(code);\n var module = yield evaluate({\n code\n });\n var {\n default: MDXContent\n } = module;\n setMDXComponent(() => MDXContent);\n } catch (t52) {\n var error = t52;\n }\n });\n return function compileMDX2() {\n return _ref3.apply(this, arguments);\n };\n }();\n compileMDX();\n };\n t4 = [content, remarkPlugins];\n $[3] = content;\n $[4] = remarkPlugins;\n $[5] = t3;\n $[6] = t4;\n } else {\n t3 = $[5];\n t4 = $[6];\n }\n useEffect2(t3, t4);\n if (!MDXComponent) {\n return content.text.value;\n }\n var t5;\n if ($[7] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t5 = /* @__PURE__ */ _jsx44(Badge2, {\n color: \"red\",\n mb: \"2\",\n children: \"Could not render message.\"\n });\n $[7] = t5;\n } else {\n t5 = $[7];\n }\n var t6;\n if ($[8] !== MDXComponent) {\n t6 = /* @__PURE__ */ _jsx44(MDXComponent, {});\n $[8] = MDXComponent;\n $[9] = t6;\n } else {\n t6 = $[9];\n }\n var t7;\n if ($[10] !== components2 || $[11] !== t6) {\n t7 = /* @__PURE__ */ _jsx44(ErrorBoundary, {\n fallback: t5,\n children: /* @__PURE__ */ _jsx44(MDXProvider, {\n components: components2,\n children: t6\n })\n });\n $[10] = components2;\n $[11] = t6;\n $[12] = t7;\n } else {\n t7 = $[12];\n }\n return t7;\n};\n\n// src/components/threads/Thread/Message/ContentPart/ImageFileContent.tsx\nimport { c as _c24 } from \"react-compiler-runtime\";\nimport { jsx as _jsx45 } from \"react/jsx-runtime\";\nvar ImageFileContent = (t0) => {\n var $ = _c24(2);\n var {\n content\n } = t0;\n var superinterfaceContext = useSuperinterfaceContext();\n var nextSearchParams = new URLSearchParams(superinterfaceContext.variables);\n var t1 = \"\".concat(superinterfaceContext.baseUrl, \"/files/\").concat(content.image_file.file_id, \"/contents?\").concat(nextSearchParams);\n var t2;\n if ($[0] !== t1) {\n t2 = /* @__PURE__ */ _jsx45(Image, {\n alt: \"\",\n src: t1\n });\n $[0] = t1;\n $[1] = t2;\n } else {\n t2 = $[1];\n }\n return t2;\n};\n\n// src/components/threads/Thread/Message/ContentPart/index.tsx\nimport { jsx as _jsx46 } from \"react/jsx-runtime\";\nvar ContentPart = (t0) => {\n var $ = _c25(4);\n var {\n content\n } = t0;\n if (content.type === \"text\") {\n var t1;\n if ($[0] !== content) {\n t1 = /* @__PURE__ */ _jsx46(TextContent, {\n content\n });\n $[0] = content;\n $[1] = t1;\n } else {\n t1 = $[1];\n }\n return t1;\n }\n if (content.type === \"image_file\") {\n var _t;\n if ($[2] !== content) {\n _t = /* @__PURE__ */ _jsx46(ImageFileContent, {\n content\n });\n $[2] = content;\n $[3] = _t;\n } else {\n _t = $[3];\n }\n return _t;\n }\n return null;\n};\n\n// src/components/threads/Thread/Message/index.tsx\nimport { jsx as _jsx47, jsxs as _jsxs16 } from \"react/jsx-runtime\";\nvar Message = (t0) => {\n var $ = _c26(51);\n var {\n message,\n className,\n style\n } = t0;\n var t1;\n bb0: {\n if (!message.runSteps.length) {\n var _t;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t = [[], []];\n $[0] = _t;\n } else {\n _t = $[0];\n }\n t1 = _t;\n break bb0;\n }\n var _t2;\n if ($[1] !== message.id) {\n _t2 = (runStep) => {\n if (runStep.step_details.type !== \"message_creation\") {\n return;\n }\n return runStep.step_details.message_creation.message_id === message.id;\n };\n $[1] = message.id;\n $[2] = _t2;\n } else {\n _t2 = $[2];\n }\n var messageCreationRunStepIndex = message.runSteps.findIndex(_t2);\n var _t3;\n if ($[3] !== message.runSteps || $[4] !== messageCreationRunStepIndex) {\n var nextRunStepIndex = message.runSteps.slice(0, messageCreationRunStepIndex).findLastIndex(_temp3);\n if (nextRunStepIndex === -1) {\n nextRunStepIndex = 0;\n }\n _t3 = message.runSteps.slice(nextRunStepIndex, messageCreationRunStepIndex);\n $[3] = message.runSteps;\n $[4] = messageCreationRunStepIndex;\n $[5] = _t3;\n } else {\n _t3 = $[5];\n }\n var laterRunSteps = _t3;\n var _t4;\n if ($[6] !== message.runSteps || $[7] !== messageCreationRunStepIndex) {\n _t4 = message.runSteps.slice(messageCreationRunStepIndex + 1).findIndex(_temp22);\n $[6] = message.runSteps;\n $[7] = messageCreationRunStepIndex;\n $[8] = _t4;\n } else {\n _t4 = $[8];\n }\n var prevRunStepIndex = _t4;\n var olderRunSteps;\n if (prevRunStepIndex === -1) {\n var _t5;\n if ($[9] !== message.runSteps || $[10] !== messageCreationRunStepIndex) {\n _t5 = message.runSteps.slice(messageCreationRunStepIndex + 1);\n $[9] = message.runSteps;\n $[10] = messageCreationRunStepIndex;\n $[11] = _t5;\n } else {\n _t5 = $[11];\n }\n olderRunSteps = _t5;\n } else {\n var _t6;\n if ($[12] !== message.runSteps || $[13] !== messageCreationRunStepIndex || $[14] !== prevRunStepIndex) {\n _t6 = message.runSteps.slice(messageCreationRunStepIndex + 1, messageCreationRunStepIndex + prevRunStepIndex);\n $[12] = message.runSteps;\n $[13] = messageCreationRunStepIndex;\n $[14] = prevRunStepIndex;\n $[15] = _t6;\n } else {\n _t6 = $[15];\n }\n olderRunSteps = _t6;\n }\n var _t7;\n if ($[16] !== laterRunSteps || $[17] !== olderRunSteps) {\n _t7 = [olderRunSteps, laterRunSteps];\n $[16] = laterRunSteps;\n $[17] = olderRunSteps;\n $[18] = _t7;\n } else {\n _t7 = $[18];\n }\n t1 = _t7;\n }\n var [olderRunSteps_0, laterRunSteps_0] = t1;\n var isMutatingMessage = useIsMutatingMessage();\n var t2;\n bb1: {\n if (!isMutatingMessage) {\n t2 = false;\n break bb1;\n }\n if (message.status === \"in_progress\") {\n t2 = true;\n break bb1;\n }\n var _t8;\n if ($[19] !== message.runSteps) {\n _t8 = message.runSteps.some(_temp32);\n $[19] = message.runSteps;\n $[20] = _t8;\n } else {\n _t8 = $[20];\n }\n t2 = _t8;\n }\n var isInProgress = t2;\n var t3;\n if ($[21] !== message) {\n t3 = {\n message\n };\n $[21] = message;\n $[22] = t3;\n } else {\n t3 = $[22];\n }\n var t4;\n if ($[23] !== olderRunSteps_0) {\n t4 = /* @__PURE__ */ _jsx47(RunSteps, {\n runSteps: olderRunSteps_0\n });\n $[23] = olderRunSteps_0;\n $[24] = t4;\n } else {\n t4 = $[24];\n }\n var t5;\n if ($[25] !== message) {\n t5 = /* @__PURE__ */ _jsx47(Attachments, {\n message\n });\n $[25] = message;\n $[26] = t5;\n } else {\n t5 = $[26];\n }\n var t6;\n if ($[27] !== message.content) {\n t6 = message.content.map(_temp4);\n $[27] = message.content;\n $[28] = t6;\n } else {\n t6 = $[28];\n }\n var t7;\n if ($[29] !== isInProgress || $[30] !== laterRunSteps_0) {\n t7 = isInProgress && isEmpty2(laterRunSteps_0) && /* @__PURE__ */ _jsx47(StartingContentSkeleton, {});\n $[29] = isInProgress;\n $[30] = laterRunSteps_0;\n $[31] = t7;\n } else {\n t7 = $[31];\n }\n var t8;\n if ($[32] !== t5 || $[33] !== t6 || $[34] !== t7) {\n t8 = /* @__PURE__ */ _jsxs16(Box9, {\n children: [t5, t6, t7]\n });\n $[32] = t5;\n $[33] = t6;\n $[34] = t7;\n $[35] = t8;\n } else {\n t8 = $[35];\n }\n var t9;\n if ($[36] !== laterRunSteps_0) {\n t9 = /* @__PURE__ */ _jsx47(RunSteps, {\n runSteps: laterRunSteps_0\n });\n $[36] = laterRunSteps_0;\n $[37] = t9;\n } else {\n t9 = $[37];\n }\n var t10;\n if ($[38] !== isInProgress || $[39] !== laterRunSteps_0) {\n t10 = isInProgress && !isEmpty2(laterRunSteps_0) && /* @__PURE__ */ _jsx47(Box9, {\n children: /* @__PURE__ */ _jsx47(StartingContentSkeleton, {})\n });\n $[38] = isInProgress;\n $[39] = laterRunSteps_0;\n $[40] = t10;\n } else {\n t10 = $[40];\n }\n var t11;\n if ($[41] !== className || $[42] !== style || $[43] !== t10 || $[44] !== t4 || $[45] !== t8 || $[46] !== t9) {\n t11 = /* @__PURE__ */ _jsxs16(Box9, {\n className,\n style,\n children: [t4, t8, t9, t10]\n });\n $[41] = className;\n $[42] = style;\n $[43] = t10;\n $[44] = t4;\n $[45] = t8;\n $[46] = t9;\n $[47] = t11;\n } else {\n t11 = $[47];\n }\n var t12;\n if ($[48] !== t11 || $[49] !== t3) {\n t12 = /* @__PURE__ */ _jsx47(Provider, {\n value: t3,\n children: t11\n });\n $[48] = t11;\n $[49] = t3;\n $[50] = t12;\n } else {\n t12 = $[50];\n }\n return t12;\n};\nfunction _temp3(runStep_0) {\n return runStep_0.step_details.type === \"message_creation\";\n}\nfunction _temp22(runStep_1) {\n return runStep_1.step_details.type === \"message_creation\";\n}\nfunction _temp32(rs) {\n return rs.status === \"in_progress\";\n}\nfunction _temp4(content, index) {\n return /* @__PURE__ */ _jsx47(ContentPart, {\n content\n }, index);\n}\n\n// src/components/threads/Thread/Messages/Content/index.tsx\nimport { c as _c33 } from \"react-compiler-runtime\";\nimport { useEffect as useEffect3 } from \"react\";\n\n// src/hooks/messageGroups/useMessageGroups/index.ts\nimport { c as _c27 } from \"react-compiler-runtime\";\nimport { useMemo as useMemo11 } from \"react\";\n\n// src/hooks/messageGroups/useMessageGroups/lib/messageGroups/index.ts\nimport _6 from \"lodash\";\nimport { last as last2 } from \"radash\";\n\n// src/lib/messages/order.ts\nimport { sort } from \"radash\";\nvar order = (_ref) => {\n var {\n messages: messages2\n } = _ref;\n return sort(messages2, (m) => m.created_at, true);\n};\n\n// src/hooks/messageGroups/useMessageGroups/lib/messageGroups/newGroup/newGroupItem.ts\nvar newGroupItem = (_ref) => {\n var {\n message\n } = _ref;\n return {\n id: message.id,\n role: message.role,\n createdAt: message.created_at,\n messages: [message]\n };\n};\n\n// src/hooks/messageGroups/useMessageGroups/lib/messageGroups/newGroup/index.ts\nvar newGroup = (_ref) => {\n var {\n groups,\n message\n } = _ref;\n return [...groups, newGroupItem({\n message\n })];\n};\n\n// src/hooks/messageGroups/useMessageGroups/lib/messageGroups/index.ts\nfunction ownKeys25(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread25(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys25(Object(t), true).forEach(function(r2) {\n _defineProperty25(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys25(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty25(e, r, t) {\n return (r = _toPropertyKey25(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey25(t) {\n var i = _toPrimitive25(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive25(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar messageGroups = (_ref) => {\n var {\n messages: messages2\n } = _ref;\n return _6.reduce(order({\n messages: messages2\n }), (groups, message) => {\n var group = last2(groups);\n if (!group) return newGroup({\n groups,\n message\n });\n if (group.role !== message.role) {\n return newGroup({\n groups,\n message\n });\n }\n return [..._6.dropRight(groups), _objectSpread25(_objectSpread25({}, group), {}, {\n messages: [...group.messages, message]\n })];\n }, []);\n};\n\n// src/hooks/messageGroups/useMessageGroups/index.ts\nvar useMessageGroups = (t0) => {\n var $ = _c27(4);\n var {\n messages: messages2\n } = t0;\n var t1;\n var t2;\n if ($[0] !== messages2) {\n t2 = messageGroups({\n messages: messages2\n });\n $[0] = messages2;\n $[1] = t2;\n } else {\n t2 = $[1];\n }\n var t3;\n if ($[2] !== t2) {\n t3 = {\n messageGroups: t2\n };\n $[2] = t2;\n $[3] = t3;\n } else {\n t3 = $[3];\n }\n t1 = t3;\n return t1;\n};\n\n// src/components/skeletons/MessagesSkeleton/index.tsx\nimport { c as _c29 } from \"react-compiler-runtime\";\nimport { forwardRef as forwardRef3 } from \"react\";\nimport { Flex as Flex13, Avatar, Box as Box10, Skeleton as Skeleton2 } from \"@radix-ui/themes\";\n\n// src/components/messageGroups/MessageGroupBase/index.tsx\nimport { c as _c28 } from \"react-compiler-runtime\";\nimport { forwardRef as forwardRef2 } from \"react\";\nimport { Flex as Flex11, Container } from \"@radix-ui/themes\";\nimport { jsx as _jsx48 } from \"react/jsx-runtime\";\nvar MessageGroupBase = /* @__PURE__ */ forwardRef2(function MessageGroupBase2(t0, ref) {\n var $ = _c28(5);\n var {\n children\n } = t0;\n var t1;\n if ($[0] !== children) {\n t1 = /* @__PURE__ */ _jsx48(Flex11, {\n flexShrink: \"0\",\n gap: \"3\",\n children\n });\n $[0] = children;\n $[1] = t1;\n } else {\n t1 = $[1];\n }\n var t2;\n if ($[2] !== ref || $[3] !== t1) {\n t2 = /* @__PURE__ */ _jsx48(Container, {\n ref,\n size: \"2\",\n flexGrow: \"0\",\n children: t1\n });\n $[2] = ref;\n $[3] = t1;\n $[4] = t2;\n } else {\n t2 = $[4];\n }\n return t2;\n});\n\n// src/components/messageGroups/MessageGroupBase/Name.tsx\nimport { Flex as Flex12, Text as Text6 } from \"@radix-ui/themes\";\nimport { jsx as _jsx49 } from \"react/jsx-runtime\";\nvar Name = (_ref) => {\n var {\n children\n } = _ref;\n return /* @__PURE__ */ _jsx49(Flex12, {\n align: \"center\",\n height: \"var(--space-5)\",\n children: /* @__PURE__ */ _jsx49(Text6, {\n size: \"2\",\n weight: \"bold\",\n children\n })\n });\n};\n\n// src/components/skeletons/MessagesSkeleton/index.tsx\nimport { jsx as _jsx50, jsxs as _jsxs17 } from \"react/jsx-runtime\";\nvar MessagesSkeleton = /* @__PURE__ */ forwardRef3(function MessagesSkeleton2(_props, ref) {\n var $ = _c29(7);\n var t0;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t0 = /* @__PURE__ */ _jsx50(Skeleton2, {\n loading: true,\n children: /* @__PURE__ */ _jsx50(Avatar, {\n fallback: /* @__PURE__ */ _jsx50(Flex13, {}),\n size: \"1\"\n })\n });\n $[0] = t0;\n } else {\n t0 = $[0];\n }\n var t1;\n if ($[1] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t1 = /* @__PURE__ */ _jsx50(Name, {\n children: /* @__PURE__ */ _jsx50(Skeleton2, {\n loading: true,\n style: {\n width: \"128px\"\n }\n })\n });\n $[1] = t1;\n } else {\n t1 = $[1];\n }\n var t2;\n if ($[2] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t2 = /* @__PURE__ */ _jsx50(Skeleton2, {\n loading: true,\n style: {\n width: \"256px\"\n }\n });\n $[2] = t2;\n } else {\n t2 = $[2];\n }\n var t3;\n if ($[3] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t3 = /* @__PURE__ */ _jsx50(Skeleton2, {\n loading: true,\n style: {\n width: \"256px\",\n marginTop: \"var(--space-2)\"\n }\n });\n $[3] = t3;\n } else {\n t3 = $[3];\n }\n var t4;\n if ($[4] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t4 = /* @__PURE__ */ _jsxs17(Box10, {\n pb: \"3\",\n children: [t1, t2, t3, /* @__PURE__ */ _jsx50(Skeleton2, {\n loading: true,\n style: {\n width: \"256px\",\n marginTop: \"var(--space-2)\"\n }\n })]\n });\n $[4] = t4;\n } else {\n t4 = $[4];\n }\n var t5;\n if ($[5] !== ref) {\n t5 = /* @__PURE__ */ _jsxs17(MessageGroupBase, {\n ref,\n children: [t0, t4]\n });\n $[5] = ref;\n $[6] = t5;\n } else {\n t5 = $[6];\n }\n return t5;\n});\n\n// src/components/threads/Thread/Messages/Content/MessageGroup/index.tsx\nimport { c as _c32 } from \"react-compiler-runtime\";\nimport { useContext as useContext9 } from \"react\";\nimport { Box as Box11 } from \"@radix-ui/themes\";\n\n// src/components/messageGroups/MessageGroupBase/AssistantAvatar.tsx\nimport { c as _c30 } from \"react-compiler-runtime\";\nimport { useContext as useContext7 } from \"react\";\nimport { Flex as Flex14 } from \"@radix-ui/themes\";\n\n// src/contexts/assistants/AssistantAvatarContext/index.tsx\nimport { createContext as createContext8 } from \"react\";\nimport { Avatar as Avatar2 } from \"@radix-ui/themes\";\nimport { LightningBoltIcon } from \"@radix-ui/react-icons\";\nimport { jsx as _jsx51 } from \"react/jsx-runtime\";\nvar AssistantAvatarContext = /* @__PURE__ */ createContext8(/* @__PURE__ */ _jsx51(Avatar2, {\n fallback: /* @__PURE__ */ _jsx51(LightningBoltIcon, {}),\n size: \"1\"\n}));\n\n// src/components/messageGroups/MessageGroupBase/AssistantAvatar.tsx\nimport { jsx as _jsx52 } from \"react/jsx-runtime\";\nvar AssistantAvatar = () => {\n var $ = _c30(3);\n var AssistantAvatarContextValue = useContext7(AssistantAvatarContext);\n var t0;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t0 = {\n borderRadius: \"var(--radius-3)\",\n overflow: \"hidden\"\n };\n $[0] = t0;\n } else {\n t0 = $[0];\n }\n var t1;\n if ($[1] !== AssistantAvatarContextValue) {\n t1 = /* @__PURE__ */ _jsx52(Flex14, {\n flexShrink: \"0\",\n height: \"24px\",\n width: \"24px\",\n style: t0,\n children: AssistantAvatarContextValue\n });\n $[1] = AssistantAvatarContextValue;\n $[2] = t1;\n } else {\n t1 = $[2];\n }\n return t1;\n};\n\n// src/contexts/assistants/AssistantNameContext/index.tsx\nimport { createContext as createContext9 } from \"react\";\nvar AssistantNameContext = /* @__PURE__ */ createContext9(\"Assistant\");\n\n// src/components/messageGroups/MessageGroupBase/UserAvatar.tsx\nimport { c as _c31 } from \"react-compiler-runtime\";\nimport { useContext as useContext8 } from \"react\";\nimport { Flex as Flex15 } from \"@radix-ui/themes\";\n\n// src/contexts/users/UserAvatarContext/index.tsx\nimport { createContext as createContext10 } from \"react\";\nimport { Avatar as Avatar3 } from \"@radix-ui/themes\";\nimport { PersonIcon } from \"@radix-ui/react-icons\";\nimport { jsx as _jsx53 } from \"react/jsx-runtime\";\nvar UserAvatarContext = /* @__PURE__ */ createContext10(/* @__PURE__ */ _jsx53(Avatar3, {\n fallback: /* @__PURE__ */ _jsx53(PersonIcon, {}),\n size: \"1\"\n}));\n\n// src/components/messageGroups/MessageGroupBase/UserAvatar.tsx\nimport { jsx as _jsx54 } from \"react/jsx-runtime\";\nvar UserAvatar = () => {\n var $ = _c31(3);\n var UserAvatarContextValue = useContext8(UserAvatarContext);\n var t0;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t0 = {\n borderRadius: \"var(--radius-3)\",\n overflow: \"hidden\"\n };\n $[0] = t0;\n } else {\n t0 = $[0];\n }\n var t1;\n if ($[1] !== UserAvatarContextValue) {\n t1 = /* @__PURE__ */ _jsx54(Flex15, {\n flexShrink: \"0\",\n height: \"24px\",\n width: \"24px\",\n style: t0,\n children: UserAvatarContextValue\n });\n $[1] = UserAvatarContextValue;\n $[2] = t1;\n } else {\n t1 = $[2];\n }\n return t1;\n};\n\n// src/components/threads/Thread/Messages/Content/MessageGroup/Content/index.tsx\nimport { Flex as Flex16 } from \"@radix-ui/themes\";\nimport { jsx as _jsx55 } from \"react/jsx-runtime\";\nvar Content5 = (_ref) => {\n var {\n messageGroup\n } = _ref;\n return /* @__PURE__ */ _jsx55(Flex16, {\n direction: \"column-reverse\",\n children: messageGroup.messages.map((message) => /* @__PURE__ */ _jsx55(Message, {\n message\n }, message.id))\n });\n};\n\n// src/components/threads/Thread/Messages/Content/MessageGroup/index.tsx\nimport { jsx as _jsx56, jsxs as _jsxs18 } from \"react/jsx-runtime\";\nvar MessageGroup = (t0) => {\n var $ = _c32(12);\n var {\n messageGroup\n } = t0;\n var assistantNameContext = useContext9(AssistantNameContext);\n var t1;\n if ($[0] !== messageGroup.role) {\n t1 = messageGroup.role === \"user\" ? /* @__PURE__ */ _jsx56(UserAvatar, {}) : /* @__PURE__ */ _jsx56(AssistantAvatar, {});\n $[0] = messageGroup.role;\n $[1] = t1;\n } else {\n t1 = $[1];\n }\n var t2 = messageGroup.role === \"user\" ? \"You\" : assistantNameContext;\n var t3;\n if ($[2] !== t2) {\n t3 = /* @__PURE__ */ _jsx56(Name, {\n children: t2\n });\n $[2] = t2;\n $[3] = t3;\n } else {\n t3 = $[3];\n }\n var t4;\n if ($[4] !== messageGroup) {\n t4 = /* @__PURE__ */ _jsx56(Content5, {\n messageGroup\n });\n $[4] = messageGroup;\n $[5] = t4;\n } else {\n t4 = $[5];\n }\n var t5;\n if ($[6] !== t3 || $[7] !== t4) {\n t5 = /* @__PURE__ */ _jsxs18(Box11, {\n flexGrow: \"1\",\n children: [t3, t4]\n });\n $[6] = t3;\n $[7] = t4;\n $[8] = t5;\n } else {\n t5 = $[8];\n }\n var t6;\n if ($[9] !== t1 || $[10] !== t5) {\n t6 = /* @__PURE__ */ _jsxs18(MessageGroupBase, {\n children: [t1, t5]\n });\n $[9] = t1;\n $[10] = t5;\n $[11] = t6;\n } else {\n t6 = $[11];\n }\n return t6;\n};\n\n// src/components/threads/Thread/Messages/Content/index.tsx\nimport { jsx as _jsx57, Fragment as _Fragment2 } from \"react/jsx-runtime\";\nvar Content6 = () => {\n var $ = _c33(11);\n var {\n messages: messages2,\n isLoading,\n isLoadingError\n } = useMessages();\n var {\n addToast\n } = useToasts();\n var t0;\n if ($[0] !== messages2) {\n t0 = {\n messages: messages2\n };\n $[0] = messages2;\n $[1] = t0;\n } else {\n t0 = $[1];\n }\n var {\n messageGroups: messageGroups2\n } = useMessageGroups(t0);\n var t1;\n var t2;\n if ($[2] !== addToast || $[3] !== isLoadingError) {\n t1 = () => {\n if (isLoadingError) {\n addToast({\n type: \"error\",\n message: \"Could not load messages. Please try again.\"\n });\n }\n };\n t2 = [isLoadingError, addToast];\n $[2] = addToast;\n $[3] = isLoadingError;\n $[4] = t1;\n $[5] = t2;\n } else {\n t1 = $[4];\n t2 = $[5];\n }\n useEffect3(t1, t2);\n if (isLoading || isLoadingError) {\n var _t;\n if ($[6] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t = /* @__PURE__ */ _jsx57(MessagesSkeleton, {});\n $[6] = _t;\n } else {\n _t = $[6];\n }\n return _t;\n }\n var t3;\n if ($[7] !== messageGroups2) {\n t3 = messageGroups2.map(_temp5);\n $[7] = messageGroups2;\n $[8] = t3;\n } else {\n t3 = $[8];\n }\n var t4;\n if ($[9] !== t3) {\n t4 = /* @__PURE__ */ _jsx57(_Fragment2, {\n children: t3\n });\n $[9] = t3;\n $[10] = t4;\n } else {\n t4 = $[10];\n }\n return t4;\n};\nfunction _temp5(messageGroup) {\n return /* @__PURE__ */ _jsx57(MessageGroup, {\n messageGroup\n }, messageGroup.id);\n}\n\n// src/components/threads/Thread/Messages/Progress/index.tsx\nimport { c as _c35 } from \"react-compiler-runtime\";\nimport { useMemo as useMemo12 } from \"react\";\n\n// src/components/skeletons/StartingSkeleton/index.tsx\nimport { c as _c34 } from \"react-compiler-runtime\";\nimport { useContext as useContext10 } from \"react\";\nimport { Box as Box12 } from \"@radix-ui/themes\";\nimport { jsx as _jsx58, jsxs as _jsxs19 } from \"react/jsx-runtime\";\nvar StartingSkeleton = (t0) => {\n var $ = _c34(7);\n var {\n children\n } = t0;\n var assistantNameContext = useContext10(AssistantNameContext);\n var t1;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t1 = /* @__PURE__ */ _jsx58(AssistantAvatar, {});\n $[0] = t1;\n } else {\n t1 = $[0];\n }\n var t2;\n if ($[1] !== assistantNameContext) {\n t2 = /* @__PURE__ */ _jsx58(Name, {\n children: assistantNameContext\n });\n $[1] = assistantNameContext;\n $[2] = t2;\n } else {\n t2 = $[2];\n }\n var t3;\n if ($[3] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t3 = /* @__PURE__ */ _jsx58(StartingContentSkeleton, {});\n $[3] = t3;\n } else {\n t3 = $[3];\n }\n var t4;\n if ($[4] !== children || $[5] !== t2) {\n t4 = /* @__PURE__ */ _jsxs19(MessageGroupBase, {\n children: [t1, /* @__PURE__ */ _jsxs19(Box12, {\n children: [t2, children, t3]\n })]\n });\n $[4] = children;\n $[5] = t2;\n $[6] = t4;\n } else {\n t4 = $[6];\n }\n return t4;\n};\n\n// src/components/threads/Thread/Messages/Progress/index.tsx\nimport { jsx as _jsx59 } from \"react/jsx-runtime\";\nvar Progress = () => {\n var $ = _c35(1);\n var {\n latestMessage\n } = useLatestMessage();\n var isMutatingMessage = useIsMutatingMessage();\n var t0;\n bb0: {\n if (!latestMessage) {\n t0 = false;\n break bb0;\n }\n if (latestMessage.role !== \"user\") {\n t0 = false;\n break bb0;\n }\n if (latestMessage.status === \"in_progress\") {\n t0 = false;\n break bb0;\n }\n if (!isOptimistic({\n id: latestMessage.id\n })) {\n t0 = false;\n break bb0;\n }\n if (!isMutatingMessage) {\n t0 = false;\n break bb0;\n }\n t0 = true;\n }\n var isVisible = t0;\n if (!isVisible) {\n return null;\n }\n var t1;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t1 = /* @__PURE__ */ _jsx59(StartingSkeleton, {});\n $[0] = t1;\n } else {\n t1 = $[0];\n }\n return t1;\n};\n\n// src/components/threads/Thread/Messages/Root/index.tsx\nimport { c as _c36 } from \"react-compiler-runtime\";\nimport { Flex as Flex17 } from \"@radix-ui/themes\";\n\n// src/hooks/misc/useInfiniteScroll/index.tsx\nimport { useRef as useRef3 } from \"react\";\nimport { useInView } from \"react-intersection-observer\";\n\n// src/hooks/misc/useThrottledEffect/index.tsx\nimport _7 from \"lodash\";\nimport { useRef as useRef2, useEffect as useEffect4, useCallback } from \"react\";\nvar useThrottledEffect = (cb, delay, additionalDeps) => {\n var cbRef = useRef2(cb);\n var throttledCb = useCallback(_7.throttle(function() {\n return cbRef.current(...arguments);\n }, delay, {\n leading: true,\n trailing: true\n }), [delay]);\n useEffect4(() => {\n cbRef.current = cb;\n });\n useEffect4(throttledCb, [throttledCb, ...additionalDeps]);\n};\n\n// src/hooks/misc/useInfiniteScroll/index.tsx\nvar useInfiniteScroll = (_ref) => {\n var {\n isFetchingNextPage,\n hasNextPage,\n fetchNextPage\n } = _ref;\n var containerRef = useRef3(null);\n var {\n ref: loaderRef,\n inView\n } = useInView({\n root: containerRef.current,\n rootMargin: \"0px\",\n threshold: 0.1\n });\n useThrottledEffect(() => {\n if (isFetchingNextPage) return;\n if (!inView) return;\n if (!hasNextPage) return;\n fetchNextPage();\n }, 500, [inView, isFetchingNextPage, hasNextPage, fetchNextPage]);\n return {\n containerRef,\n loaderRef,\n inView\n };\n};\n\n// src/components/threads/Thread/Messages/Root/index.tsx\nimport { jsx as _jsx60, jsxs as _jsxs20 } from \"react/jsx-runtime\";\nfunction ownKeys26(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread26(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys26(Object(t), true).forEach(function(r2) {\n _defineProperty26(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys26(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty26(e, r, t) {\n return (r = _toPropertyKey26(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey26(t) {\n var i = _toPrimitive26(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive26(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar Root2 = (t0) => {\n var $ = _c36(18);\n var {\n children,\n style,\n className\n } = t0;\n var {\n isFetchingNextPage,\n hasNextPage,\n fetchNextPage\n } = useMessages();\n var t1;\n if ($[0] !== fetchNextPage || $[1] !== hasNextPage || $[2] !== isFetchingNextPage) {\n t1 = {\n isFetchingNextPage,\n hasNextPage,\n fetchNextPage\n };\n $[0] = fetchNextPage;\n $[1] = hasNextPage;\n $[2] = isFetchingNextPage;\n $[3] = t1;\n } else {\n t1 = $[3];\n }\n var {\n containerRef,\n loaderRef\n } = useInfiniteScroll(t1);\n var t2;\n if ($[4] !== style) {\n t2 = style !== null && style !== void 0 ? style : {};\n $[4] = style;\n $[5] = t2;\n } else {\n t2 = $[5];\n }\n var t3;\n if ($[6] !== t2) {\n t3 = _objectSpread26({\n overflow: \"auto\"\n }, t2);\n $[6] = t2;\n $[7] = t3;\n } else {\n t3 = $[7];\n }\n var t4;\n if ($[8] !== hasNextPage || $[9] !== loaderRef) {\n t4 = hasNextPage && /* @__PURE__ */ _jsx60(Flex17, {\n ref: loaderRef\n });\n $[8] = hasNextPage;\n $[9] = loaderRef;\n $[10] = t4;\n } else {\n t4 = $[10];\n }\n var t5;\n if ($[11] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t5 = /* @__PURE__ */ _jsx60(Flex17, {\n flexShrink: \"0\",\n flexGrow: \"1\"\n });\n $[11] = t5;\n } else {\n t5 = $[11];\n }\n var t6;\n if ($[12] !== children || $[13] !== className || $[14] !== containerRef || $[15] !== t3 || $[16] !== t4) {\n t6 = /* @__PURE__ */ _jsxs20(Flex17, {\n ref: containerRef,\n direction: \"column-reverse\",\n flexGrow: \"1\",\n style: t3,\n className,\n children: [children, t4, t5]\n });\n $[12] = children;\n $[13] = className;\n $[14] = containerRef;\n $[15] = t3;\n $[16] = t4;\n $[17] = t6;\n } else {\n t6 = $[17];\n }\n return t6;\n};\n\n// src/components/threads/Thread/Messages/NextPageSkeleton.tsx\nimport { c as _c37 } from \"react-compiler-runtime\";\nimport { jsx as _jsx61 } from \"react/jsx-runtime\";\nvar NextPageSkeleton = () => {\n var $ = _c37(1);\n var {\n hasNextPage\n } = useMessages();\n if (!hasNextPage) {\n return null;\n }\n var t0;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t0 = /* @__PURE__ */ _jsx61(MessagesSkeleton, {});\n $[0] = t0;\n } else {\n t0 = $[0];\n }\n return t0;\n};\n\n// src/components/threads/Thread/Messages/index.tsx\nimport { jsx as _jsx62, jsxs as _jsxs21 } from \"react/jsx-runtime\";\nvar Messages = (_ref) => {\n var {\n children,\n className,\n style\n } = _ref;\n return /* @__PURE__ */ _jsxs21(Root2, {\n style,\n className,\n children: [/* @__PURE__ */ _jsx62(Flex18, {\n flexShrink: \"0\",\n height: \"var(--space-3)\"\n }), /* @__PURE__ */ _jsx62(Progress, {}), children, /* @__PURE__ */ _jsx62(Content6, {}), /* @__PURE__ */ _jsx62(NextPageSkeleton, {}), /* @__PURE__ */ _jsx62(Flex18, {\n flexShrink: \"0\",\n flexGrow: \"1\",\n minHeight: \"var(--space-5)\"\n })]\n });\n};\nMessages.Root = Root2;\nMessages.Message = Message;\nMessages.NextPageSkeleton = NextPageSkeleton;\n\n// src/components/threads/Thread/MessageForm/Submit/index.tsx\nimport { c as _c38 } from \"react-compiler-runtime\";\nimport { ArrowUpIcon as ArrowUpIcon2, StopIcon } from \"@radix-ui/react-icons\";\nimport { IconButton as IconButton5, Flex as Flex19 } from \"@radix-ui/themes\";\n\n// src/hooks/messages/useMessageFormContext/index.ts\nimport { useContext as useContext11 } from \"react\";\n\n// src/contexts/messages/MessageFormContext/index.ts\nimport { createContext as createContext11 } from \"react\";\nvar MessageFormContext = /* @__PURE__ */ createContext11({\n content: \"\",\n isDisabled: false,\n isLoading: false,\n files: [],\n setFiles: () => {\n },\n isFileLoading: false\n});\n\n// src/hooks/messages/useMessageFormContext/index.ts\nvar useMessageFormContext = () => {\n return useContext11(MessageFormContext);\n};\n\n// src/components/threads/Thread/MessageForm/Submit/index.tsx\nimport { jsx as _jsx63 } from \"react/jsx-runtime\";\nfunction ownKeys27(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread27(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys27(Object(t), true).forEach(function(r2) {\n _defineProperty27(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys27(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty27(e, r, t) {\n return (r = _toPropertyKey27(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey27(t) {\n var i = _toPrimitive27(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive27(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar Root3 = (_ref) => {\n var {\n children,\n style,\n className\n } = _ref;\n return /* @__PURE__ */ _jsx63(Flex19, {\n flexShrink: \"0\",\n align: \"end\",\n style,\n className,\n children\n });\n};\nvar Button3 = (props) => {\n var $ = _c38(10);\n var superinterfaceContext = useSuperinterfaceContext();\n var {\n isDisabled,\n isLoading,\n isFileLoading\n } = useMessageFormContext();\n if (isLoading) {\n var _t;\n if ($[0] !== superinterfaceContext.createMessageAbortControllerRef.current) {\n _t = () => {\n var _superinterfaceContex;\n return (_superinterfaceContex = superinterfaceContext.createMessageAbortControllerRef.current) === null || _superinterfaceContex === void 0 ? void 0 : _superinterfaceContex.abort();\n };\n $[0] = superinterfaceContext.createMessageAbortControllerRef.current;\n $[1] = _t;\n } else {\n _t = $[1];\n }\n var _t2;\n if ($[2] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t2 = /* @__PURE__ */ _jsx63(StopIcon, {});\n $[2] = _t2;\n } else {\n _t2 = $[2];\n }\n var _t3;\n if ($[3] !== props || $[4] !== _t) {\n _t3 = /* @__PURE__ */ _jsx63(IconButton5, _objectSpread27(_objectSpread27({\n type: \"button\",\n onClick: _t\n }, props), {}, {\n children: _t2\n }));\n $[3] = props;\n $[4] = _t;\n $[5] = _t3;\n } else {\n _t3 = $[5];\n }\n return _t3;\n }\n var t0 = isDisabled || isFileLoading;\n var t1;\n if ($[6] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t1 = /* @__PURE__ */ _jsx63(ArrowUpIcon2, {});\n $[6] = t1;\n } else {\n t1 = $[6];\n }\n var t2;\n if ($[7] !== props || $[8] !== t0) {\n t2 = /* @__PURE__ */ _jsx63(IconButton5, _objectSpread27(_objectSpread27({\n type: \"submit\",\n disabled: t0\n }, props), {}, {\n children: t1\n }));\n $[7] = props;\n $[8] = t0;\n $[9] = t2;\n } else {\n t2 = $[9];\n }\n return t2;\n};\nvar Submit = (props) => /* @__PURE__ */ _jsx63(Root3, _objectSpread27(_objectSpread27({}, props), {}, {\n children: /* @__PURE__ */ _jsx63(Button3, {})\n}));\nSubmit.Root = Root3;\nSubmit.Button = Button3;\n\n// src/components/threads/Thread/MessageForm/Root/index.tsx\nimport { useQueryClient as useQueryClient4 } from \"@tanstack/react-query\";\nimport { useMemo as useMemo13, useState as useState4 } from \"react\";\nimport { useForm, FormProvider } from \"react-hook-form\";\nimport { Box as Box13 } from \"@radix-ui/themes\";\n\n// src/components/threads/Thread/MessageForm/Root/lib/formOptions.ts\nimport { z } from \"zod\";\nimport { zodResolver } from \"@hookform/resolvers/zod\";\nvar schema = z.object({\n content: z.string().min(1)\n});\nvar formOptions = {\n resolver: zodResolver(schema)\n};\n\n// src/components/threads/Thread/MessageForm/Root/index.tsx\nimport { partob as partob2 } from \"radash\";\nimport { jsx as _jsx64 } from \"react/jsx-runtime\";\nfunction ownKeys28(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread28(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys28(Object(t), true).forEach(function(r2) {\n _defineProperty28(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys28(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty28(e, r, t) {\n return (r = _toPropertyKey28(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey28(t) {\n var i = _toPrimitive28(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive28(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nfunction asyncGeneratorStep6(n, t, e, r, o, a, c) {\n try {\n var i = n[a](c), u = i.value;\n } catch (n2) {\n return void e(n2);\n }\n i.done ? t(u) : Promise.resolve(u).then(r, o);\n}\nfunction _asyncToGenerator6(n) {\n return function() {\n var t = this, e = arguments;\n return new Promise(function(r, o) {\n var a = n.apply(t, e);\n function _next(n2) {\n asyncGeneratorStep6(a, r, o, _next, _throw, \"next\", n2);\n }\n function _throw(n2) {\n asyncGeneratorStep6(a, r, o, _next, _throw, \"throw\", n2);\n }\n _next(void 0);\n });\n };\n}\nvar Root4 = (_ref) => {\n \"use no memo\";\n var {\n children,\n onSubmit: onSubmitArg,\n isDisabled: isDisabledArg,\n style,\n className\n } = _ref;\n var [files, setFiles] = useState4([]);\n var formProps = useForm(formOptions);\n var {\n handleSubmit,\n formState: {\n isSubmitting\n },\n reset,\n watch\n } = formProps;\n var {\n addToast\n } = useToasts();\n var queryClient = useQueryClient4();\n var threadContext = useSuperinterfaceContext();\n var {\n createMessage\n } = useCreateMessage({\n onError: createMessageDefaultOnError({\n queryClient,\n addToast,\n threadContext\n })\n });\n var isMutatingMessage = useIsMutatingMessage();\n var isFileLoading = useMemo13(() => files.some((file) => isOptimistic({\n id: file.id\n })), [files]);\n var isLoading = useMemo13(() => isMutatingMessage || isSubmitting, [isMutatingMessage, isSubmitting]);\n var {\n latestMessage\n } = useLatestMessage();\n var isDisabled = useMemo13(() => {\n var _latestMessage$metada;\n return (\n // @ts-ignore-next-line\n (latestMessage === null || latestMessage === void 0 || (_latestMessage$metada = latestMessage.metadata) === null || _latestMessage$metada === void 0 ? void 0 : _latestMessage$metada.isBlocking) || isDisabledArg\n );\n }, [latestMessage, isDisabledArg]);\n var onSubmit = onSubmitArg ? partob2(onSubmitArg, {\n reset,\n createMessage\n }) : /* @__PURE__ */ function() {\n var _ref2 = _asyncToGenerator6(function* (data2) {\n if (isFileLoading) return;\n if (isLoading) return;\n if (isDisabled) return;\n reset();\n setFiles([]);\n var attachments = files.map((file_0) => ({\n file_id: file_0.id,\n tools: [{\n type: \"file_search\"\n }]\n }));\n yield createMessage(_objectSpread28({\n // @ts-ignore-next-line\n content: data2.content\n }, attachments.length ? {\n attachments\n } : {}));\n });\n return function(_x) {\n return _ref2.apply(this, arguments);\n };\n }();\n var content = watch(\"content\");\n return /* @__PURE__ */ _jsx64(MessageFormContext.Provider, {\n value: {\n isDisabled,\n isLoading,\n files,\n setFiles,\n isFileLoading,\n content\n },\n children: /* @__PURE__ */ _jsx64(FormProvider, _objectSpread28(_objectSpread28({}, formProps), {}, {\n children: /* @__PURE__ */ _jsx64(Box13, {\n asChild: true,\n flexShrink: \"0\",\n style,\n className,\n children: /* @__PURE__ */ _jsx64(\"form\", {\n onSubmit: handleSubmit(onSubmit),\n children\n })\n })\n }))\n });\n};\n\n// src/components/threads/Thread/MessageForm/Field/index.tsx\nimport { useFormContext as useFormContext2 } from \"react-hook-form\";\nimport { Container as RadixContainer, Flex as Flex23 } from \"@radix-ui/themes\";\n\n// src/components/threads/Thread/MessageForm/Field/Control.tsx\nimport { Flex as Flex20 } from \"@radix-ui/themes\";\nimport { useFormContext } from \"react-hook-form\";\n\n// src/hooks/misc/usePrevious.ts\nimport { useEffect as useEffect5, useRef as useRef4 } from \"react\";\nvar usePrevious = (state) => {\n var ref = useRef4();\n useEffect5(() => {\n ref.current = state;\n });\n return ref.current;\n};\n\n// src/components/threads/Thread/MessageForm/Field/Control.tsx\nimport { useContext as useContext12, useMemo as useMemo14, useRef as useRef5, useEffect as useEffect6 } from \"react\";\n\n// src/components/textareas/TextareaBase/index.tsx\nimport { c as _c39 } from \"react-compiler-runtime\";\nimport { forwardRef as forwardRef4 } from \"react\";\nimport TextareaAutosize from \"react-textarea-autosize\";\nimport { jsx as _jsx65, Fragment as _Fragment3, jsxs as _jsxs22 } from \"react/jsx-runtime\";\nvar _excluded2 = [\"style\", \"className\"];\nfunction ownKeys29(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread29(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys29(Object(t), true).forEach(function(r2) {\n _defineProperty29(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys29(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty29(e, r, t) {\n return (r = _toPropertyKey29(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey29(t) {\n var i = _toPrimitive29(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive29(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nfunction _objectWithoutProperties2(e, t) {\n if (null == e) return {};\n var o, r, i = _objectWithoutPropertiesLoose2(e, t);\n if (Object.getOwnPropertySymbols) {\n var s = Object.getOwnPropertySymbols(e);\n for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);\n }\n return i;\n}\nfunction _objectWithoutPropertiesLoose2(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (e.includes(n)) continue;\n t[n] = r[n];\n }\n return t;\n}\nvar TextareaBase = /* @__PURE__ */ forwardRef4(function TextareaBase2(t0, ref) {\n var _className;\n var $ = _c39(14);\n var className;\n var rest;\n var style;\n if ($[0] !== t0) {\n var _t = t0;\n ({\n style,\n className\n } = _t);\n rest = _objectWithoutProperties2(_t, _excluded2);\n _t;\n $[0] = t0;\n $[1] = className;\n $[2] = rest;\n $[3] = style;\n } else {\n className = $[1];\n rest = $[2];\n style = $[3];\n }\n var t1;\n if ($[4] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t1 = /* @__PURE__ */ _jsx65(\"style\", {\n children: \".superinterface-textarea { min-height: inherit; height: 30px; }\\n.superinterface-textarea::placeholder { color: var(--gray-a10); }\"\n });\n $[4] = t1;\n } else {\n t1 = $[4];\n }\n var t2 = \"rt-reset superinterface-textarea \".concat((_className = className) !== null && _className !== void 0 ? _className : \"\");\n var t3;\n if ($[5] !== style) {\n var _style;\n t3 = (_style = style) !== null && _style !== void 0 ? _style : {};\n $[5] = style;\n $[6] = t3;\n } else {\n t3 = $[6];\n }\n var t4;\n if ($[7] !== t3) {\n t4 = _objectSpread29({\n border: 0,\n outline: 0,\n boxSizing: \"border-box\",\n resize: \"none\",\n color: \"var(--gray-12)\",\n flexGrow: 1,\n display: \"flex\"\n }, t3);\n $[7] = t3;\n $[8] = t4;\n } else {\n t4 = $[8];\n }\n var t5;\n if ($[9] !== ref || $[10] !== rest || $[11] !== t2 || $[12] !== t4) {\n t5 = /* @__PURE__ */ _jsxs22(_Fragment3, {\n children: [t1, /* @__PURE__ */ _jsx65(TextareaAutosize, _objectSpread29({\n ref,\n className: t2,\n style: t4\n }, rest))]\n });\n $[9] = ref;\n $[10] = rest;\n $[11] = t2;\n $[12] = t4;\n $[13] = t5;\n } else {\n t5 = $[13];\n }\n return t5;\n});\n\n// src/components/threads/Thread/MessageForm/Field/Control.tsx\nimport { jsx as _jsx66 } from \"react/jsx-runtime\";\nfunction ownKeys30(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread30(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys30(Object(t), true).forEach(function(r2) {\n _defineProperty30(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys30(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty30(e, r, t) {\n return (r = _toPropertyKey30(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey30(t) {\n var i = _toPrimitive30(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive30(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar Root5 = (_ref) => {\n var {\n children,\n style,\n className\n } = _ref;\n return /* @__PURE__ */ _jsx66(Flex20, {\n flexGrow: \"1\",\n pt: \"4px\",\n style,\n className,\n children\n });\n};\nvar Input = (props) => {\n \"use no memo\";\n var _props$placeholder;\n var assistantNameContext = useContext12(AssistantNameContext);\n var {\n register\n } = useFormContext();\n var {\n isDisabled,\n isLoading\n } = useMessageFormContext();\n var isSubmitDisabled = useMemo14(() => isDisabled || isLoading, [isDisabled, isLoading]);\n var isDisabledPrevious = usePrevious(isDisabled);\n var textareaRef = useRef5(null);\n var textareaProps = register(\"content\");\n useEffect6(() => {\n if (isDisabled) return;\n if (!isDisabledPrevious) return;\n if (!textareaRef.current) return;\n textareaRef.current.focus();\n }, [isDisabled, isDisabledPrevious, textareaProps]);\n return /* @__PURE__ */ _jsx66(TextareaBase, _objectSpread30(_objectSpread30(_objectSpread30({\n minRows: 1,\n placeholder: (_props$placeholder = props.placeholder) !== null && _props$placeholder !== void 0 ? _props$placeholder : \"Message \".concat(assistantNameContext, \"...\"),\n disabled: isDisabled,\n onKeyDown: (e) => {\n if (e.key === \"Enter\" && !e.shiftKey) {\n var _e$currentTarget$form;\n e.preventDefault();\n if (isSubmitDisabled) return;\n (_e$currentTarget$form = e.currentTarget.form) === null || _e$currentTarget$form === void 0 || _e$currentTarget$form.requestSubmit();\n }\n }\n }, textareaProps), props), {}, {\n ref: (e_0) => {\n textareaProps.ref(e_0);\n textareaRef.current = e_0;\n }\n }));\n};\nvar Control = (props) => /* @__PURE__ */ _jsx66(Root5, _objectSpread30(_objectSpread30({}, props), {}, {\n children: /* @__PURE__ */ _jsx66(Input, {})\n}));\nControl.Root = Root5;\nControl.Input = Input;\n\n// src/components/threads/Thread/MessageForm/Field/Files/Preview.tsx\nimport { c as _c40 } from \"react-compiler-runtime\";\nimport { Flex as Flex21, Card as Card2, Spinner as Spinner2, Text as Text7, IconButton as IconButton6 } from \"@radix-ui/themes\";\nimport { FileIcon as FileIcon2, Cross2Icon } from \"@radix-ui/react-icons\";\nimport { jsx as _jsx67, jsxs as _jsxs23 } from \"react/jsx-runtime\";\nfunction ownKeys31(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread31(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys31(Object(t), true).forEach(function(r2) {\n _defineProperty31(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys31(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty31(e, r, t) {\n return (r = _toPropertyKey31(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey31(t) {\n var i = _toPrimitive31(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive31(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar Preview = (props) => {\n var $ = _c40(8);\n var {\n files,\n setFiles\n } = useMessageFormContext();\n if (!files.length) {\n return null;\n }\n var t0;\n if ($[0] !== files || $[1] !== setFiles) {\n var _t;\n if ($[3] !== setFiles) {\n _t = (file) => /* @__PURE__ */ _jsx67(Card2, {\n variant: \"ghost\",\n children: /* @__PURE__ */ _jsxs23(Flex21, {\n align: \"center\",\n justify: \"between\",\n gap: \"1\",\n children: [/* @__PURE__ */ _jsxs23(Flex21, {\n align: \"center\",\n gap: \"1\",\n flexShrink: \"1\",\n minWidth: \"0\",\n maxWidth: \"250px\",\n children: [/* @__PURE__ */ _jsx67(Flex21, {\n flexShrink: \"0\",\n children: /* @__PURE__ */ _jsx67(Spinner2, {\n loading: isOptimistic({\n id: file.id\n }),\n children: /* @__PURE__ */ _jsx67(FileIcon2, {})\n })\n }), /* @__PURE__ */ _jsx67(Text7, {\n size: \"2\",\n truncate: true,\n wrap: \"nowrap\",\n children: file.filename\n })]\n }), /* @__PURE__ */ _jsx67(Flex21, {\n flexShrink: \"0\",\n children: /* @__PURE__ */ _jsx67(IconButton6, {\n onClick: () => setFiles((prev) => prev.filter((prevFile) => prevFile.id !== file.id)),\n color: \"gray\",\n variant: \"ghost\",\n size: \"1\",\n children: /* @__PURE__ */ _jsx67(Cross2Icon, {})\n })\n })]\n })\n }, file.id);\n $[3] = setFiles;\n $[4] = _t;\n } else {\n _t = $[4];\n }\n t0 = files.map(_t);\n $[0] = files;\n $[1] = setFiles;\n $[2] = t0;\n } else {\n t0 = $[2];\n }\n var t1;\n if ($[5] !== props || $[6] !== t0) {\n t1 = /* @__PURE__ */ _jsx67(Flex21, _objectSpread31(_objectSpread31({\n flexBasis: \"100%\",\n direction: \"column\",\n pb: \"2\",\n gap: \"1\"\n }, props), {}, {\n children: t0\n }));\n $[5] = props;\n $[6] = t0;\n $[7] = t1;\n } else {\n t1 = $[7];\n }\n return t1;\n};\n\n// src/components/threads/Thread/MessageForm/Field/Files/Control.tsx\nimport { useCallback as useCallback2 } from \"react\";\nimport { omit as omit4 } from \"radash\";\nimport dayjs2 from \"dayjs\";\nimport { FilePlusIcon } from \"@radix-ui/react-icons\";\nimport { IconButton as IconButton7, Flex as Flex22 } from \"@radix-ui/themes\";\n\n// src/hooks/files/useCreateFile/index.ts\nimport { c as _c41 } from \"react-compiler-runtime\";\nimport { useMutation as useMutation2, useQueryClient as useQueryClient5 } from \"@tanstack/react-query\";\n\n// src/hooks/files/useCreateFile/lib/mutationOptions/mutationFn/body/formData.ts\nvar formData = (variables) => {\n var data2 = new FormData();\n for (var key2 in variables) {\n data2.append(key2, variables[key2]);\n }\n return data2;\n};\n\n// src/hooks/files/useCreateFile/lib/mutationOptions/mutationFn/body/index.ts\nfunction ownKeys32(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread32(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys32(Object(t), true).forEach(function(r2) {\n _defineProperty32(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys32(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty32(e, r, t) {\n return (r = _toPropertyKey32(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey32(t) {\n var i = _toPrimitive32(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive32(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar body2 = (_ref) => {\n var _superinterfaceContex;\n var {\n variables,\n superinterfaceContext\n } = _ref;\n if (variables.threadId) return formData(variables);\n if (!variables.assistantId) return formData(variables);\n if (!((_superinterfaceContex = superinterfaceContext.threadIdStorageOptions) !== null && _superinterfaceContex !== void 0 && _superinterfaceContex.get)) return formData(variables);\n var threadId = superinterfaceContext.threadIdStorageOptions.get({\n assistantId: variables.assistantId\n });\n if (!threadId) return formData(variables);\n return formData(_objectSpread32(_objectSpread32({}, variables), {}, {\n threadId\n }));\n};\n\n// src/hooks/files/useCreateFile/lib/mutationOptions/mutationFn/index.ts\nfunction asyncGeneratorStep7(n, t, e, r, o, a, c) {\n try {\n var i = n[a](c), u = i.value;\n } catch (n2) {\n return void e(n2);\n }\n i.done ? t(u) : Promise.resolve(u).then(r, o);\n}\nfunction _asyncToGenerator7(n) {\n return function() {\n var t = this, e = arguments;\n return new Promise(function(r, o) {\n var a = n.apply(t, e);\n function _next(n2) {\n asyncGeneratorStep7(a, r, o, _next, _throw, \"next\", n2);\n }\n function _throw(n2) {\n asyncGeneratorStep7(a, r, o, _next, _throw, \"throw\", n2);\n }\n _next(void 0);\n });\n };\n}\nvar mutationFn2 = (_ref) => {\n var {\n superinterfaceContext,\n queryClient,\n threadContext\n } = _ref;\n return /* @__PURE__ */ function() {\n var _ref2 = _asyncToGenerator7(function* (variables) {\n var response = yield fetch(\"\".concat(superinterfaceContext.baseUrl, \"/files\"), {\n method: \"POST\",\n body: body2({\n variables,\n superinterfaceContext\n })\n });\n var result = yield response.json();\n return result;\n });\n return function(_x) {\n return _ref2.apply(this, arguments);\n };\n }();\n};\n\n// src/hooks/files/useCreateFile/lib/mutationOptions/index.ts\nfunction ownKeys33(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread33(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys33(Object(t), true).forEach(function(r2) {\n _defineProperty33(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys33(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty33(e, r, t) {\n return (r = _toPropertyKey33(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey33(t) {\n var i = _toPrimitive33(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive33(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar mutationOptions2 = (_ref) => {\n var {\n queryClient,\n threadContext,\n superinterfaceContext,\n onError\n } = _ref;\n var mutationKey = [\"createFile\", threadContext.variables];\n return _objectSpread33(_objectSpread33(_objectSpread33({\n mutationFn: mutationFn2({\n queryClient,\n superinterfaceContext,\n threadContext\n }),\n onError\n }, threadContext.defaultOptions.mutations), queryClient.getMutationDefaults(mutationKey)), {}, {\n mutationKey\n });\n};\n\n// src/hooks/files/useCreateFile/index.ts\nfunction ownKeys34(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread34(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys34(Object(t), true).forEach(function(r2) {\n _defineProperty34(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys34(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty34(e, r, t) {\n return (r = _toPropertyKey34(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey34(t) {\n var i = _toPrimitive34(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive34(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar useCreateFile = (t0) => {\n var $ = _c41(15);\n var t1;\n if ($[0] !== t0) {\n t1 = t0 === void 0 ? {\n onError: _temp6\n } : t0;\n $[0] = t0;\n $[1] = t1;\n } else {\n t1 = $[1];\n }\n var {\n onError: t2\n } = t1;\n var t3;\n if ($[2] !== t2) {\n t3 = t2 === void 0 ? _temp23 : t2;\n $[2] = t2;\n $[3] = t3;\n } else {\n t3 = $[3];\n }\n var onError = t3;\n var queryClient = useQueryClient5();\n var superinterfaceContext = useSuperinterfaceContext();\n var threadContext = useSuperinterfaceContext();\n var t4;\n if ($[4] !== onError || $[5] !== queryClient || $[6] !== superinterfaceContext || $[7] !== threadContext) {\n t4 = mutationOptions2({\n queryClient,\n threadContext,\n superinterfaceContext,\n onError\n });\n $[4] = onError;\n $[5] = queryClient;\n $[6] = superinterfaceContext;\n $[7] = threadContext;\n $[8] = t4;\n } else {\n t4 = $[8];\n }\n var props = useMutation2(t4);\n var t5;\n if ($[9] !== props || $[10] !== threadContext.variables) {\n t5 = function t52() {\n for (var _len = arguments.length, t62 = new Array(_len), _key = 0; _key < _len; _key++) {\n t62[_key] = arguments[_key];\n }\n var args = t62;\n var [firstArg, ...restArgs] = args;\n return props.mutateAsync(_objectSpread34(_objectSpread34({}, threadContext.variables), firstArg), ...restArgs);\n };\n $[9] = props;\n $[10] = threadContext.variables;\n $[11] = t5;\n } else {\n t5 = $[11];\n }\n var t6;\n if ($[12] !== props || $[13] !== t5) {\n t6 = _objectSpread34(_objectSpread34({}, props), {}, {\n createFile: t5\n });\n $[12] = props;\n $[13] = t5;\n $[14] = t6;\n } else {\n t6 = $[14];\n }\n return t6;\n};\nfunction _temp6() {\n}\nfunction _temp23() {\n}\n\n// src/components/threads/Thread/MessageForm/Field/Files/Control.tsx\nimport { jsx as _jsx68, jsxs as _jsxs24 } from \"react/jsx-runtime\";\nfunction ownKeys35(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread35(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys35(Object(t), true).forEach(function(r2) {\n _defineProperty35(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys35(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty35(e, r, t) {\n return (r = _toPropertyKey35(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey35(t) {\n var i = _toPrimitive35(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive35(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nfunction asyncGeneratorStep8(n, t, e, r, o, a, c) {\n try {\n var i = n[a](c), u = i.value;\n } catch (n2) {\n return void e(n2);\n }\n i.done ? t(u) : Promise.resolve(u).then(r, o);\n}\nfunction _asyncToGenerator8(n) {\n return function() {\n var t = this, e = arguments;\n return new Promise(function(r, o) {\n var a = n.apply(t, e);\n function _next(n2) {\n asyncGeneratorStep8(a, r, o, _next, _throw, \"next\", n2);\n }\n function _throw(n2) {\n asyncGeneratorStep8(a, r, o, _next, _throw, \"throw\", n2);\n }\n _next(void 0);\n });\n };\n}\nfunction _asyncIterator(r) {\n var n, t, o, e = 2;\n for (\"undefined\" != typeof Symbol && (t = Symbol.asyncIterator, o = Symbol.iterator); e--; ) {\n if (t && null != (n = r[t])) return n.call(r);\n if (o && null != (n = r[o])) return new AsyncFromSyncIterator(n.call(r));\n t = \"@@asyncIterator\", o = \"@@iterator\";\n }\n throw new TypeError(\"Object is not async iterable\");\n}\nfunction AsyncFromSyncIterator(r) {\n function AsyncFromSyncIteratorContinuation(r2) {\n if (Object(r2) !== r2) return Promise.reject(new TypeError(r2 + \" is not an object.\"));\n var n = r2.done;\n return Promise.resolve(r2.value).then(function(r3) {\n return { value: r3, done: n };\n });\n }\n return AsyncFromSyncIterator = function AsyncFromSyncIterator2(r2) {\n this.s = r2, this.n = r2.next;\n }, AsyncFromSyncIterator.prototype = { s: null, n: null, next: function next() {\n return AsyncFromSyncIteratorContinuation(this.n.apply(this.s, arguments));\n }, return: function _return(r2) {\n var n = this.s.return;\n return void 0 === n ? Promise.resolve({ value: r2, done: true }) : AsyncFromSyncIteratorContinuation(n.apply(this.s, arguments));\n }, throw: function _throw(r2) {\n var n = this.s.return;\n return void 0 === n ? Promise.reject(r2) : AsyncFromSyncIteratorContinuation(n.apply(this.s, arguments));\n } }, new AsyncFromSyncIterator(r);\n}\nvar accept = \".c,text/x-c,\\n.cs,text/x-csharp,\\n.cpp,text/x-c++,\\n.doc,application/msword,\\n.docx,application/vnd.openxmlformats-officedocument.wordprocessingml.document,\\n.html,text/html,\\n.java,text/x-java,\\n.json,application/json,\\n.md,text/markdown,\\n.pdf,application/pdf,\\n.php,text/x-php,\\n.pptx,application/vnd.openxmlformats-officedocument.presentationml.presentation,\\n.py,text/x-python,\\n.py,text/x-script.python,\\n.rb,text/x-ruby,\\n.tex,text/x-tex,\\n.txt,text/plain,\\n.css,text/css,\\n.js,text/javascript,\\n.sh,application/x-sh,\\n.ts,application/typescript\";\nvar Control2 = (props) => {\n var {\n isDisabled,\n isLoading,\n setFiles\n } = useMessageFormContext();\n var {\n createFile\n } = useCreateFile();\n var {\n addToast\n } = useToasts();\n var onChange = useCallback2(/* @__PURE__ */ function() {\n var _ref = _asyncToGenerator8(function* (event) {\n var fileObjects = event.target.files;\n if (!fileObjects) return;\n var newFiles = Array.from(fileObjects).map((fileObject) => ({\n id: optimisticId(),\n filename: fileObject.name,\n object: \"file\",\n purpose: \"assistants\",\n created_at: dayjs2().unix(),\n bytes: fileObject.size,\n status: \"processed\",\n fileObject\n }));\n setFiles((prev) => [...prev, ...newFiles.map((file) => omit4(file, [\"fileObject\"]))]);\n var _iteratorAbruptCompletion = false;\n var _didIteratorError = false;\n var _iteratorError;\n try {\n var _loop = function* _loop2() {\n var newFile = _step.value;\n {\n yield createFile({\n file: newFile.fileObject\n }, {\n onSuccess: (_ref2) => {\n var {\n file\n } = _ref2;\n return setFiles((prev) => [...prev.filter((prevFile) => prevFile.id !== newFile.id), file]);\n },\n onError: () => {\n addToast({\n type: \"error\",\n message: \"Could not upload file. Please try again.\"\n });\n setFiles((prev) => prev.filter((prevFile) => prevFile.id !== newFile.id));\n }\n });\n }\n };\n for (var _iterator = _asyncIterator(newFiles), _step; _iteratorAbruptCompletion = !(_step = yield _iterator.next()).done; _iteratorAbruptCompletion = false) {\n yield* _loop();\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (_iteratorAbruptCompletion && _iterator.return != null) {\n yield _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n });\n return function(_x) {\n return _ref.apply(this, arguments);\n };\n }(), [addToast, createFile, setFiles]);\n return /* @__PURE__ */ _jsx68(Flex22, _objectSpread35(_objectSpread35({\n pt: \"2\",\n pr: \"2\",\n flexGrow: \"0\"\n }, props), {}, {\n children: /* @__PURE__ */ _jsxs24(IconButton7, {\n type: \"button\",\n variant: \"ghost\",\n color: \"gray\",\n disabled: isDisabled || isLoading,\n style: {\n position: \"relative\",\n overflow: \"hidden\"\n },\n children: [/* @__PURE__ */ _jsx68(FilePlusIcon, {}), /* @__PURE__ */ _jsx68(\"input\", {\n type: \"file\",\n multiple: true,\n accept,\n onChange,\n style: {\n cursor: \"pointer\",\n position: \"absolute\",\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n opacity: 0\n }\n })]\n })\n }));\n};\n\n// src/components/threads/Thread/MessageForm/Field/Files/index.tsx\nvar Files = {\n Preview,\n Control: Control2\n};\n\n// src/components/threads/Thread/MessageForm/Field/index.tsx\nimport { jsx as _jsx69 } from \"react/jsx-runtime\";\nfunction ownKeys36(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread36(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys36(Object(t), true).forEach(function(r2) {\n _defineProperty36(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys36(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty36(e, r, t) {\n return (r = _toPropertyKey36(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey36(t) {\n var i = _toPrimitive36(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive36(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar Root6 = (_ref) => {\n \"use no memo\";\n var {\n children,\n className,\n style\n } = _ref;\n var {\n formState: {\n errors\n }\n } = useFormContext2();\n return /* @__PURE__ */ _jsx69(RadixContainer, {\n size: \"2\",\n flexGrow: \"0\",\n className,\n style,\n children: /* @__PURE__ */ _jsx69(Flex23, {\n direction: \"column\",\n flexShrink: \"0\",\n children: /* @__PURE__ */ _jsx69(Flex23, {\n direction: \"column\",\n flexShrink: \"0\",\n children: /* @__PURE__ */ _jsx69(Flex23, {\n style: _objectSpread36({\n borderRadius: \"var(--radius-2)\",\n borderWidth: \"1px\",\n borderStyle: \"solid\",\n borderColor: errors.content ? \"var(--red-9)\" : \"var(--gray-5)\"\n }, errors.content ? {\n backgroundColor: \"var(--red-2)\"\n } : {}),\n p: \"2\",\n pl: \"3\",\n wrap: \"wrap\",\n children\n })\n })\n })\n });\n};\nvar Field = {\n Root: Root6,\n Control,\n Files\n};\n\n// src/components/threads/Thread/MessageForm/index.tsx\nimport { jsx as _jsx70, jsxs as _jsxs25 } from \"react/jsx-runtime\";\nfunction ownKeys37(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread37(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys37(Object(t), true).forEach(function(r2) {\n _defineProperty37(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys37(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty37(e, r, t) {\n return (r = _toPropertyKey37(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey37(t) {\n var i = _toPrimitive37(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive37(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar MessageForm = (props) => /* @__PURE__ */ _jsx70(Root4, _objectSpread37(_objectSpread37({}, props), {}, {\n children: /* @__PURE__ */ _jsxs25(Field.Root, {\n children: [/* @__PURE__ */ _jsx70(Field.Control, {}), /* @__PURE__ */ _jsx70(Submit, {})]\n })\n}));\nMessageForm.Root = Root4;\nMessageForm.Field = Field;\nMessageForm.Submit = Submit;\n\n// src/components/threads/Thread/Root/index.tsx\nimport { Flex as Flex25 } from \"@radix-ui/themes\";\n\n// src/components/threads/Thread/Provider/index.tsx\nvar Provider2 = SuperinterfaceProvider;\n\n// src/components/toasts/ToastsProvider/index.tsx\nimport { c as _c42 } from \"react-compiler-runtime\";\nimport { useState as useState5, useCallback as useCallback3 } from \"react\";\nimport * as Toast2 from \"@radix-ui/react-toast\";\n\n// src/components/toasts/ToastsProvider/CustomToast.tsx\nimport * as Toast from \"@radix-ui/react-toast\";\nimport { Card as Card3, Text as Text8, Flex as Flex24 } from \"@radix-ui/themes\";\nimport { CheckCircledIcon as CheckCircledIcon2, CrossCircledIcon } from \"@radix-ui/react-icons\";\nimport { jsx as _jsx71, jsxs as _jsxs26 } from \"react/jsx-runtime\";\nvar CustomToast = (_ref) => {\n var {\n toast\n } = _ref;\n return /* @__PURE__ */ _jsx71(Toast.Root, {\n children: /* @__PURE__ */ _jsx71(Card3, {\n children: /* @__PURE__ */ _jsx71(Toast.Title, {\n children: /* @__PURE__ */ _jsxs26(Flex24, {\n children: [/* @__PURE__ */ _jsx71(Flex24, {\n pr: \"2\",\n height: \"14px\",\n align: \"center\",\n children: toast.type === \"success\" ? /* @__PURE__ */ _jsx71(CheckCircledIcon2, {\n color: \"var(--accent-9)\"\n }) : /* @__PURE__ */ _jsx71(CrossCircledIcon, {\n color: \"var(--red-9)\"\n })\n }), /* @__PURE__ */ _jsx71(Text8, {\n weight: \"medium\",\n size: \"1\",\n children: toast.message\n })]\n })\n })\n })\n });\n};\n\n// src/components/toasts/ToastsProvider/index.tsx\nimport { jsx as _jsx72, jsxs as _jsxs27 } from \"react/jsx-runtime\";\nvar ToastsProvider = (t0) => {\n var $ = _c42(15);\n var {\n children,\n bottom: t1\n } = t0;\n var bottom = t1 === void 0 ? 0 : t1;\n var t2;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t2 = [];\n $[0] = t2;\n } else {\n t2 = $[0];\n }\n var [toasts, setToasts] = useState5(t2);\n var t3;\n if ($[1] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t3 = (toast) => setToasts((prevToasts) => [...prevToasts, toast]);\n $[1] = t3;\n } else {\n t3 = $[1];\n }\n var addToast = t3;\n var t4;\n if ($[2] !== toasts) {\n t4 = {\n toasts,\n addToast\n };\n $[2] = toasts;\n $[3] = t4;\n } else {\n t4 = $[3];\n }\n var t5;\n if ($[4] !== toasts) {\n t5 = Array.from(toasts).map(_temp7);\n $[4] = toasts;\n $[5] = t5;\n } else {\n t5 = $[5];\n }\n var t6;\n if ($[6] !== bottom) {\n t6 = /* @__PURE__ */ _jsx72(Toast2.Viewport, {\n style: {\n position: \"absolute\",\n bottom,\n right: 0,\n display: \"flex\",\n flexDirection: \"column\",\n padding: \"var(--space-5)\",\n gap: \"var(--space-3)\",\n width: \"390px\",\n maxWidth: \"100vw\",\n margin: 0,\n listStyle: \"none\",\n zIndex: 99999999999999,\n outline: \"none\"\n }\n });\n $[6] = bottom;\n $[7] = t6;\n } else {\n t6 = $[7];\n }\n var t7;\n if ($[8] !== children || $[9] !== t5 || $[10] !== t6) {\n t7 = /* @__PURE__ */ _jsxs27(Toast2.Provider, {\n children: [children, t5, t6]\n });\n $[8] = children;\n $[9] = t5;\n $[10] = t6;\n $[11] = t7;\n } else {\n t7 = $[11];\n }\n var t8;\n if ($[12] !== t4 || $[13] !== t7) {\n t8 = /* @__PURE__ */ _jsx72(ToastsContext.Provider, {\n value: t4,\n children: t7\n });\n $[12] = t4;\n $[13] = t7;\n $[14] = t8;\n } else {\n t8 = $[14];\n }\n return t8;\n};\nfunction _temp7(toast_0, index) {\n return /* @__PURE__ */ _jsx72(CustomToast, {\n toast: toast_0\n }, index);\n}\n\n// src/components/threads/Thread/Root/index.tsx\nimport { jsx as _jsx73 } from \"react/jsx-runtime\";\nvar _excluded3 = [\"children\", \"style\", \"className\"];\nfunction ownKeys38(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread38(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys38(Object(t), true).forEach(function(r2) {\n _defineProperty38(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys38(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty38(e, r, t) {\n return (r = _toPropertyKey38(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey38(t) {\n var i = _toPrimitive38(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive38(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nfunction _objectWithoutProperties3(e, t) {\n if (null == e) return {};\n var o, r, i = _objectWithoutPropertiesLoose3(e, t);\n if (Object.getOwnPropertySymbols) {\n var s = Object.getOwnPropertySymbols(e);\n for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);\n }\n return i;\n}\nfunction _objectWithoutPropertiesLoose3(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (e.includes(n)) continue;\n t[n] = r[n];\n }\n return t;\n}\nvar Root8 = (_ref) => {\n var {\n children,\n style,\n className\n } = _ref, rest = _objectWithoutProperties3(_ref, _excluded3);\n return /* @__PURE__ */ _jsx73(ToastsProvider, {\n bottom: \"var(--space-9)\",\n children: /* @__PURE__ */ _jsx73(Provider2, _objectSpread38(_objectSpread38({}, rest), {}, {\n children: /* @__PURE__ */ _jsx73(Flex25, {\n direction: \"column\",\n flexGrow: \"1\",\n className,\n style,\n children\n })\n }))\n });\n};\n\n// src/components/threads/Thread/index.tsx\nimport { jsx as _jsx74, jsxs as _jsxs28 } from \"react/jsx-runtime\";\nfunction ownKeys39(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread39(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys39(Object(t), true).forEach(function(r2) {\n _defineProperty39(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys39(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty39(e, r, t) {\n return (r = _toPropertyKey39(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey39(t) {\n var i = _toPrimitive39(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive39(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar Thread = (props) => /* @__PURE__ */ _jsxs28(Root8, _objectSpread39(_objectSpread39({}, props), {}, {\n children: [/* @__PURE__ */ _jsx74(Messages, {}), /* @__PURE__ */ _jsx74(MessageForm, {})]\n}));\nThread.Root = Root8;\nThread.Messages = Messages;\nThread.MessageForm = MessageForm;\n\n// src/hooks/messages/useMessageContext/index.ts\nimport { useContext as useContext13 } from \"react\";\nvar useMessageContext = () => {\n return useContext13(MessageContext);\n};\n\n// src/hooks/assistants/useAssistant/index.ts\nimport { c as _c43 } from \"react-compiler-runtime\";\nimport { useMemo as useMemo15 } from \"react\";\nimport { useQuery } from \"@tanstack/react-query\";\n\n// src/hooks/assistants/useAssistant/lib/queryOptions/index.ts\nimport { queryOptions as tanstackQueryOptions } from \"@tanstack/react-query\";\n\n// src/hooks/assistants/useAssistant/lib/queryOptions/queryFn.ts\nfunction asyncGeneratorStep9(n, t, e, r, o, a, c) {\n try {\n var i = n[a](c), u = i.value;\n } catch (n2) {\n return void e(n2);\n }\n i.done ? t(u) : Promise.resolve(u).then(r, o);\n}\nfunction _asyncToGenerator9(n) {\n return function() {\n var t = this, e = arguments;\n return new Promise(function(r, o) {\n var a = n.apply(t, e);\n function _next(n2) {\n asyncGeneratorStep9(a, r, o, _next, _throw, \"next\", n2);\n }\n function _throw(n2) {\n asyncGeneratorStep9(a, r, o, _next, _throw, \"throw\", n2);\n }\n _next(void 0);\n });\n };\n}\nvar queryFn = (_ref) => {\n var {\n superinterfaceContext\n } = _ref;\n return /* @__PURE__ */ function() {\n var _ref3 = _asyncToGenerator9(function* (_ref2) {\n var {\n queryKey\n } = _ref2;\n var [_key, {\n assistantId\n }] = queryKey;\n var params = new URLSearchParams({\n publicApiKey: superinterfaceContext.variables.publicApiKey\n });\n return fetch(\"\".concat(superinterfaceContext.baseUrl, \"/assistants/\").concat(assistantId, \"?\").concat(params)).then(/* @__PURE__ */ function() {\n var _ref4 = _asyncToGenerator9(function* (response) {\n if (response.status !== 200) {\n try {\n var errorResponse = yield response.json();\n throw new Error(errorResponse.error);\n } catch (error) {\n throw new Error(\"Failed to fetch\");\n }\n }\n return response.json();\n });\n return function(_x2) {\n return _ref4.apply(this, arguments);\n };\n }());\n });\n return function(_x) {\n return _ref3.apply(this, arguments);\n };\n }();\n};\n\n// src/hooks/assistants/useAssistant/lib/queryOptions/index.ts\nvar queryOptions2 = (_ref) => {\n var {\n assistantId,\n superinterfaceContext\n } = _ref;\n return tanstackQueryOptions({\n queryKey: [\"assistants\", {\n assistantId\n }],\n queryFn: queryFn({\n superinterfaceContext\n })\n });\n};\n\n// src/hooks/assistants/useAssistant/index.ts\nfunction ownKeys40(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread40(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys40(Object(t), true).forEach(function(r2) {\n _defineProperty40(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys40(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty40(e, r, t) {\n return (r = _toPropertyKey40(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey40(t) {\n var i = _toPrimitive40(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive40(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar useAssistant = (t0) => {\n var $ = _c43(6);\n var {\n assistantId\n } = t0;\n var superinterfaceContext = useSuperinterfaceContext();\n var t1;\n if ($[0] !== assistantId || $[1] !== superinterfaceContext) {\n t1 = queryOptions2({\n assistantId,\n superinterfaceContext\n });\n $[0] = assistantId;\n $[1] = superinterfaceContext;\n $[2] = t1;\n } else {\n t1 = $[2];\n }\n var props = useQuery(t1);\n var t2;\n var t3 = props.data ? props.data.assistant : null;\n var t4;\n if ($[3] !== props || $[4] !== t3) {\n t4 = _objectSpread40(_objectSpread40({}, props), {}, {\n assistant: t3\n });\n $[3] = props;\n $[4] = t3;\n $[5] = t4;\n } else {\n t4 = $[5];\n }\n t2 = t4;\n return t2;\n};\n\n// src/components/threads/ThreadDialog/Provider/index.tsx\nimport { c as _c44 } from \"react-compiler-runtime\";\nimport { useState as useState6 } from \"react\";\n\n// src/contexts/threads/ThreadDialogContext/index.ts\nimport { createContext as createContext12 } from \"react\";\nvar ThreadDialogContext = /* @__PURE__ */ createContext12({\n isOpen: false,\n setIsOpen: () => {\n }\n});\n\n// src/hooks/threads/useThreadDialogContext/index.ts\nimport { useContext as useContext14 } from \"react\";\nvar useThreadDialogContext = () => {\n return useContext14(ThreadDialogContext);\n};\n\n// src/components/threads/ThreadDialog/Provider/index.tsx\nimport { jsx as _jsx75 } from \"react/jsx-runtime\";\nvar Provider4 = (t0) => {\n var $ = _c44(5);\n var {\n children\n } = t0;\n var threadDialogContext = useThreadDialogContext();\n var [isOpen, setIsOpen] = useState6(threadDialogContext.isOpen);\n var t1;\n if ($[0] !== isOpen) {\n t1 = {\n isOpen,\n setIsOpen\n };\n $[0] = isOpen;\n $[1] = t1;\n } else {\n t1 = $[1];\n }\n var t2;\n if ($[2] !== children || $[3] !== t1) {\n t2 = /* @__PURE__ */ _jsx75(ThreadDialogContext.Provider, {\n value: t1,\n children\n });\n $[2] = children;\n $[3] = t1;\n $[4] = t2;\n } else {\n t2 = $[4];\n }\n return t2;\n};\n\n// src/components/threads/ThreadDialog/Root/index.tsx\nimport { jsx as _jsx76 } from \"react/jsx-runtime\";\nvar Root9 = (_ref) => {\n var {\n children\n } = _ref;\n return /* @__PURE__ */ _jsx76(Provider4, {\n children\n });\n};\n\n// src/components/threads/ThreadDialog/Trigger/index.tsx\nimport { c as _c45 } from \"react-compiler-runtime\";\nimport { Flex as Flex26 } from \"@radix-ui/themes\";\n\n// src/components/threads/ThreadDialog/Trigger/Button.tsx\nimport { IconButton as IconButton8 } from \"@radix-ui/themes\";\nimport { ChatBubbleIcon } from \"@radix-ui/react-icons\";\nimport { jsx as _jsx77 } from \"react/jsx-runtime\";\nfunction ownKeys41(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread41(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys41(Object(t), true).forEach(function(r2) {\n _defineProperty41(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys41(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty41(e, r, t) {\n return (r = _toPropertyKey41(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey41(t) {\n var i = _toPrimitive41(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive41(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar Button4 = (props) => /* @__PURE__ */ _jsx77(IconButton8, _objectSpread41(_objectSpread41({\n size: \"4\",\n radius: \"full\"\n}, props), {}, {\n children: /* @__PURE__ */ _jsx77(ChatBubbleIcon, {})\n}));\n\n// src/components/threads/ThreadDialog/Trigger/index.tsx\nimport { jsx as _jsx78 } from \"react/jsx-runtime\";\nfunction ownKeys42(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread42(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys42(Object(t), true).forEach(function(r2) {\n _defineProperty42(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys42(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty42(e, r, t) {\n return (r = _toPropertyKey42(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey42(t) {\n var i = _toPrimitive42(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive42(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar Root10 = (t0) => {\n var $ = _c45(14);\n var {\n children,\n style,\n className\n } = t0;\n var {\n setIsOpen,\n isOpen\n } = useThreadDialogContext();\n var t1 = isOpen ? \"none\" : \"flex\";\n var t2;\n if ($[0] !== t1) {\n t2 = {\n initial: t1,\n sm: \"flex\"\n };\n $[0] = t1;\n $[1] = t2;\n } else {\n t2 = $[1];\n }\n var t3;\n if ($[2] !== setIsOpen) {\n t3 = () => setIsOpen(_temp8);\n $[2] = setIsOpen;\n $[3] = t3;\n } else {\n t3 = $[3];\n }\n var t4;\n if ($[4] !== style) {\n t4 = style !== null && style !== void 0 ? style : {};\n $[4] = style;\n $[5] = t4;\n } else {\n t4 = $[5];\n }\n var t5;\n if ($[6] !== t4) {\n t5 = _objectSpread42({\n zIndex: 9999999999\n }, t4);\n $[6] = t4;\n $[7] = t5;\n } else {\n t5 = $[7];\n }\n var t6;\n if ($[8] !== children || $[9] !== className || $[10] !== t2 || $[11] !== t3 || $[12] !== t5) {\n t6 = /* @__PURE__ */ _jsx78(Flex26, {\n display: t2,\n onClick: t3,\n direction: \"column\",\n flexShrink: \"0\",\n justify: \"end\",\n align: \"end\",\n position: \"fixed\",\n bottom: \"24px\",\n right: \"24px\",\n className,\n style: t5,\n children\n });\n $[8] = children;\n $[9] = className;\n $[10] = t2;\n $[11] = t3;\n $[12] = t5;\n $[13] = t6;\n } else {\n t6 = $[13];\n }\n return t6;\n};\nvar Trigger = (args) => /* @__PURE__ */ _jsx78(Root10, _objectSpread42(_objectSpread42({}, args), {}, {\n children: /* @__PURE__ */ _jsx78(Button4, {})\n}));\nTrigger.Root = Root10;\nTrigger.Button = Button4;\nfunction _temp8(prev) {\n return !prev;\n}\n\n// src/components/threads/ThreadDialog/Content/index.tsx\nimport { c as _c47 } from \"react-compiler-runtime\";\nimport { Card as Card4, Inset as Inset2, Flex as Flex28 } from \"@radix-ui/themes\";\n\n// src/components/threads/ThreadDialog/Close/index.tsx\nimport { c as _c46 } from \"react-compiler-runtime\";\nimport { Cross1Icon } from \"@radix-ui/react-icons\";\nimport { IconButton as IconButton9, Flex as Flex27 } from \"@radix-ui/themes\";\nimport { jsx as _jsx79 } from \"react/jsx-runtime\";\nvar Close = () => {\n var $ = _c46(9);\n var {\n setIsOpen,\n isOpen\n } = useThreadDialogContext();\n var t0 = isOpen ? \"flex\" : \"none\";\n var t1;\n if ($[0] !== t0) {\n t1 = {\n initial: t0,\n sm: \"none\"\n };\n $[0] = t0;\n $[1] = t1;\n } else {\n t1 = $[1];\n }\n var t2;\n if ($[2] !== setIsOpen) {\n t2 = () => setIsOpen(_temp9);\n $[2] = setIsOpen;\n $[3] = t2;\n } else {\n t2 = $[3];\n }\n var t3;\n if ($[4] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t3 = {\n zIndex: 9999999999\n };\n $[4] = t3;\n } else {\n t3 = $[4];\n }\n var t4;\n if ($[5] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t4 = /* @__PURE__ */ _jsx79(IconButton9, {\n size: \"2\",\n variant: \"soft\",\n children: /* @__PURE__ */ _jsx79(Cross1Icon, {})\n });\n $[5] = t4;\n } else {\n t4 = $[5];\n }\n var t5;\n if ($[6] !== t1 || $[7] !== t2) {\n t5 = /* @__PURE__ */ _jsx79(Flex27, {\n display: t1,\n onClick: t2,\n direction: \"column\",\n flexShrink: \"0\",\n justify: \"end\",\n align: \"end\",\n position: \"absolute\",\n top: \"24px\",\n right: \"24px\",\n style: t3,\n children: t4\n });\n $[6] = t1;\n $[7] = t2;\n $[8] = t5;\n } else {\n t5 = $[8];\n }\n return t5;\n};\nfunction _temp9(prev) {\n return !prev;\n}\n\n// src/components/threads/ThreadDialog/Content/index.tsx\nimport { jsx as _jsx80, jsxs as _jsxs29 } from \"react/jsx-runtime\";\nfunction ownKeys43(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread43(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys43(Object(t), true).forEach(function(r2) {\n _defineProperty43(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys43(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty43(e, r, t) {\n return (r = _toPropertyKey43(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey43(t) {\n var i = _toPrimitive43(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive43(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar Root11 = (t0) => {\n var $ = _c47(19);\n var {\n children,\n className,\n style\n } = t0;\n var {\n isOpen\n } = useThreadDialogContext();\n if (!isOpen) {\n return null;\n }\n var t1;\n var t2;\n var t3;\n var t4;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t1 = {\n initial: \"0\",\n sm: \"72px\"\n };\n t2 = {\n initial: \"0\",\n sm: \"24px\"\n };\n t3 = {\n initial: void 0,\n sm: \"720px\"\n };\n t4 = {\n initial: void 0,\n sm: \"400px\"\n };\n $[0] = t1;\n $[1] = t2;\n $[2] = t3;\n $[3] = t4;\n } else {\n t1 = $[0];\n t2 = $[1];\n t3 = $[2];\n t4 = $[3];\n }\n var t5;\n if ($[4] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t5 = {\n initial: \"100%\",\n sm: \"calc(100% - 96px)\"\n };\n $[4] = t5;\n } else {\n t5 = $[4];\n }\n var t6;\n if ($[5] !== style) {\n t6 = _objectSpread43({\n zIndex: 9999999999\n }, style);\n $[5] = style;\n $[6] = t6;\n } else {\n t6 = $[6];\n }\n var t7;\n var t8;\n if ($[7] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t7 = {\n initial: void 0,\n sm: \"3\"\n };\n t8 = {\n position: \"relative\",\n display: \"flex\",\n flexGrow: 1\n };\n $[7] = t7;\n $[8] = t8;\n } else {\n t7 = $[7];\n t8 = $[8];\n }\n var t9;\n if ($[9] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t9 = {\n display: \"flex\",\n flexGrow: 1\n };\n $[9] = t9;\n } else {\n t9 = $[9];\n }\n var t10;\n if ($[10] !== children) {\n t10 = /* @__PURE__ */ _jsx80(Inset2, {\n clip: \"padding-box\",\n side: \"all\",\n pb: \"current\",\n style: t9,\n children\n });\n $[10] = children;\n $[11] = t10;\n } else {\n t10 = $[11];\n }\n var t11;\n if ($[12] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t11 = /* @__PURE__ */ _jsx80(Close, {});\n $[12] = t11;\n } else {\n t11 = $[12];\n }\n var t12;\n if ($[13] !== t10) {\n t12 = /* @__PURE__ */ _jsxs29(Card4, {\n mb: t7,\n style: t8,\n children: [t10, t11]\n });\n $[13] = t10;\n $[14] = t12;\n } else {\n t12 = $[14];\n }\n var t13;\n if ($[15] !== className || $[16] !== t12 || $[17] !== t6) {\n t13 = /* @__PURE__ */ _jsx80(Flex28, {\n className,\n direction: \"column\",\n justify: \"end\",\n position: \"fixed\",\n bottom: t1,\n right: t2,\n maxHeight: t3,\n maxWidth: t4,\n width: \"100%\",\n height: t5,\n style: t6,\n children: t12\n });\n $[15] = className;\n $[16] = t12;\n $[17] = t6;\n $[18] = t13;\n } else {\n t13 = $[18];\n }\n return t13;\n};\nvar Messages2 = (_ref) => {\n var {\n className,\n style\n } = _ref;\n return /* @__PURE__ */ _jsx80(Thread.Messages, {\n className,\n style: _objectSpread43({\n paddingTop: \"var(--space-5)\",\n paddingRight: \"var(--space-5)\",\n paddingLeft: \"var(--space-5)\"\n }, style)\n });\n};\nvar FormContainer = (_ref2) => {\n var {\n children,\n className,\n style\n } = _ref2;\n return /* @__PURE__ */ _jsx80(Flex28, {\n direction: \"column\",\n pl: \"5\",\n pr: \"5\",\n pb: \"3\",\n flexShrink: \"0\",\n className,\n style,\n children\n });\n};\nvar Content7 = (props) => /* @__PURE__ */ _jsx80(Root11, _objectSpread43(_objectSpread43({}, props), {}, {\n children: /* @__PURE__ */ _jsxs29(Thread.Root, {\n children: [/* @__PURE__ */ _jsx80(Messages2, {}), /* @__PURE__ */ _jsx80(FormContainer, {\n children: /* @__PURE__ */ _jsx80(Thread.MessageForm, {})\n })]\n })\n}));\nContent7.Root = Root11;\nContent7.Messages = Messages2;\nContent7.FormContainer = FormContainer;\n\n// src/components/threads/ThreadDialog/index.tsx\nimport { jsx as _jsx81, jsxs as _jsxs30 } from \"react/jsx-runtime\";\nvar ThreadDialog = () => /* @__PURE__ */ _jsxs30(Root9, {\n children: [/* @__PURE__ */ _jsx81(Content7, {}), /* @__PURE__ */ _jsx81(Trigger, {})]\n});\nThreadDialog.Root = Root9;\nThreadDialog.Trigger = Trigger;\nThreadDialog.Content = Content7;\n\n// src/components/threads/AudioThread/Root/index.tsx\nimport { c as _c52 } from \"react-compiler-runtime\";\nimport { Flex as Flex29 } from \"@radix-ui/themes\";\n\n// src/contexts/threads/AudioThreadContext/index.ts\nimport { createContext as createContext13 } from \"react\";\nfunction asyncGeneratorStep10(n, t, e, r, o, a, c) {\n try {\n var i = n[a](c), u = i.value;\n } catch (n2) {\n return void e(n2);\n }\n i.done ? t(u) : Promise.resolve(u).then(r, o);\n}\nfunction _asyncToGenerator10(n) {\n return function() {\n var t = this, e = arguments;\n return new Promise(function(r, o) {\n var a = n.apply(t, e);\n function _next(n2) {\n asyncGeneratorStep10(a, r, o, _next, _throw, \"next\", n2);\n }\n function _throw(n2) {\n asyncGeneratorStep10(a, r, o, _next, _throw, \"throw\", n2);\n }\n _next(void 0);\n });\n };\n}\nvar AudioThreadContext = /* @__PURE__ */ createContext13({\n status: \"idle\",\n recorderProps: {\n status: \"idle\",\n start: function() {\n var _start = _asyncToGenerator10(function* () {\n });\n function start() {\n return _start.apply(this, arguments);\n }\n return start;\n }(),\n stop: function() {\n var _stop = _asyncToGenerator10(function* () {\n });\n function stop() {\n return _stop.apply(this, arguments);\n }\n return stop;\n }(),\n pause: function() {\n var _pause = _asyncToGenerator10(function* () {\n });\n function pause() {\n return _pause.apply(this, arguments);\n }\n return pause;\n }(),\n resume: function() {\n var _resume = _asyncToGenerator10(function* () {\n });\n function resume() {\n return _resume.apply(this, arguments);\n }\n return resume;\n }(),\n visualizationAnalyser: null\n },\n // @ts-ignore-next-line\n messageAudioProps: {\n visualizationAnalyser: null,\n playing: false,\n paused: false,\n isReady: false,\n play: function() {\n var _play = _asyncToGenerator10(function* () {\n });\n function play() {\n return _play.apply(this, arguments);\n }\n return play;\n }(),\n pause: function() {\n var _pause2 = _asyncToGenerator10(function* () {\n });\n function pause() {\n return _pause2.apply(this, arguments);\n }\n return pause;\n }()\n }\n});\n\n// src/hooks/misc/usePermission/index.ts\nimport { c as _c48 } from \"react-compiler-runtime\";\nimport { useEffect as useEffect7, useState as useState7 } from \"react\";\n\n// src/hooks/misc/usePermission/util.ts\nvar noop = () => {\n};\nfunction on(obj) {\n if (obj && obj.addEventListener) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n obj.addEventListener(...args);\n }\n}\nfunction off(obj) {\n if (obj && obj.removeEventListener) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n obj.removeEventListener(...args);\n }\n}\n\n// src/hooks/misc/usePermission/index.ts\nvar usePermission = (permissionDesc) => {\n var $ = _c48(3);\n var [state, setState] = useState7(\"\");\n var t0;\n var t1;\n if ($[0] !== permissionDesc) {\n t0 = () => {\n var mounted;\n mounted = true;\n var permissionStatus;\n permissionStatus = null;\n var onChange = () => {\n if (!mounted) {\n return;\n }\n setState(() => {\n var _permissionStatus$sta, _permissionStatus;\n return (_permissionStatus$sta = (_permissionStatus = permissionStatus) === null || _permissionStatus === void 0 ? void 0 : _permissionStatus.state) !== null && _permissionStatus$sta !== void 0 ? _permissionStatus$sta : \"\";\n });\n };\n navigator.permissions.query(permissionDesc).then((status) => {\n permissionStatus = status;\n on(permissionStatus, \"change\", onChange);\n onChange();\n }).catch(noop);\n return () => {\n permissionStatus && off(permissionStatus, \"change\", onChange);\n mounted = false;\n permissionStatus = null;\n };\n };\n t1 = [permissionDesc];\n $[0] = permissionDesc;\n $[1] = t0;\n $[2] = t1;\n } else {\n t0 = $[1];\n t1 = $[2];\n }\n useEffect7(t0, t1);\n return state;\n};\n\n// src/components/threads/AudioThread/Root/lib/blobToData.ts\nvar blobToData = (blob) => new Promise((resolve) => {\n var reader = new FileReader();\n reader.onloadend = () => resolve(reader.result);\n reader.readAsDataURL(blob);\n});\n\n// src/hooks/audioThreads/useStatus/index.ts\nimport { c as _c49 } from \"react-compiler-runtime\";\nimport { useMemo as useMemo16 } from \"react\";\nvar useStatus = (t0) => {\n var $ = _c49(2);\n var {\n messageAudioProps,\n recorderProps,\n createMessageProps\n } = t0;\n var latestMessageProps = useLatestMessage();\n var t1;\n bb0: {\n var _latestMessageProps$l;\n if (recorderProps.status === \"recording\") {\n t1 = \"recording\";\n break bb0;\n }\n if (createMessageProps.isPending) {\n t1 = \"creatingMessage\";\n break bb0;\n }\n if (messageAudioProps.paused || !messageAudioProps.isAudioPlayed) {\n t1 = \"playerPaused\";\n break bb0;\n }\n if (messageAudioProps.playing || messageAudioProps.isPending) {\n t1 = \"playing\";\n break bb0;\n }\n if (!messageAudioProps.isAudioPlayed && !messageAudioProps.isReady) {\n t1 = \"loading\";\n break bb0;\n }\n if (((_latestMessageProps$l = latestMessageProps.latestMessage) === null || _latestMessageProps$l === void 0 ? void 0 : _latestMessageProps$l.status) === \"in_progress\") {\n t1 = \"creatingMessage\";\n break bb0;\n }\n if (recorderProps.status === \"idle\") {\n t1 = \"idle\";\n break bb0;\n }\n if (recorderProps.status === \"paused\") {\n t1 = \"recorderPaused\";\n break bb0;\n }\n t1 = \"loading\";\n }\n var status = t1;\n var t2;\n if ($[0] !== status) {\n t2 = {\n status\n };\n $[0] = status;\n $[1] = t2;\n } else {\n t2 = $[1];\n }\n return t2;\n};\n\n// src/hooks/audioThreads/useRecorder/index.ts\nimport dayjs3 from \"dayjs\";\nimport { useAudioCapture } from \"use-audio-capture\";\nimport { useMemo as useMemo17, useRef as useRef7, useState as useState8, useCallback as useCallback4, useEffect as useEffect9 } from \"react\";\nimport { useAudioPlayer } from \"react-use-audio-player\";\n\n// src/hooks/misc/useInterval.ts\nimport { c as _c50 } from \"react-compiler-runtime\";\nimport { useEffect as useEffect8, useRef as useRef6 } from \"react\";\nvar useInterval = (callback, delay) => {\n var $ = _c50(5);\n var savedCallback = useRef6(_temp10);\n var t0;\n if ($[0] !== callback) {\n t0 = () => {\n savedCallback.current = callback;\n };\n $[0] = callback;\n $[1] = t0;\n } else {\n t0 = $[1];\n }\n useEffect8(t0);\n var t1;\n var t2;\n if ($[2] !== delay) {\n t1 = () => {\n if (delay !== null) {\n var interval = setInterval(() => savedCallback.current(), delay || 0);\n return () => clearInterval(interval);\n }\n };\n t2 = [delay];\n $[2] = delay;\n $[3] = t1;\n $[4] = t2;\n } else {\n t1 = $[3];\n t2 = $[4];\n }\n useEffect8(t1, t2);\n};\nfunction _temp10() {\n}\n\n// src/hooks/audioThreads/useRecorder/index.ts\nfunction ownKeys44(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread44(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys44(Object(t), true).forEach(function(r2) {\n _defineProperty44(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys44(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty44(e, r, t) {\n return (r = _toPropertyKey44(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey44(t) {\n var i = _toPrimitive44(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive44(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nfunction asyncGeneratorStep11(n, t, e, r, o, a, c) {\n try {\n var i = n[a](c), u = i.value;\n } catch (n2) {\n return void e(n2);\n }\n i.done ? t(u) : Promise.resolve(u).then(r, o);\n}\nfunction _asyncToGenerator11(n) {\n return function() {\n var t = this, e = arguments;\n return new Promise(function(r, o) {\n var a = n.apply(t, e);\n function _next(n2) {\n asyncGeneratorStep11(a, r, o, _next, _throw, \"next\", n2);\n }\n function _throw(n2) {\n asyncGeneratorStep11(a, r, o, _next, _throw, \"throw\", n2);\n }\n _next(void 0);\n });\n };\n}\nvar useRecorder = (_ref) => {\n var {\n isStopOnSilence,\n onStart: _onStart,\n onStop: _onStop\n } = _ref;\n var [silenceStart, setSilenceStart] = useState8(null);\n var [noiseStart, setNoiseStart] = useState8(null);\n var [mediaStream, setMediaStream] = useState8(null);\n var [status, setStatus] = useState8(\"idle\");\n var startAudioPlayer = useAudioPlayer();\n var endAudioPlayer = useAudioPlayer();\n var [isLoaded, setIsLoaded] = useState8(false);\n useEffect9(() => {\n if (isLoaded) return;\n setIsLoaded(true);\n }, [isLoaded, startAudioPlayer, endAudioPlayer]);\n var audioCaptureProps = useAudioCapture({\n onStart: (event, opts) => {\n setStatus(\"recording\");\n setMediaStream(opts.mediaStream);\n isInited.current = false;\n if (_onStart) _onStart(event, opts);\n setSilenceStart(null);\n setNoiseStart(null);\n },\n onStop: function() {\n var _onStop2 = _asyncToGenerator11(function* () {\n setStatus(\"stopped\");\n if (_onStop) yield _onStop(...arguments);\n setSilenceStart(null);\n setNoiseStart(null);\n });\n function onStop() {\n return _onStop2.apply(this, arguments);\n }\n return onStop;\n }(),\n onPause: () => {\n setStatus(\"paused\");\n setSilenceStart(null);\n setNoiseStart(null);\n },\n onResume: () => {\n setStatus(\"recording\");\n setSilenceStart(null);\n setNoiseStart(null);\n }\n });\n var [audioEngine, setAudioEngine] = useState8(null);\n var isInited = useRef7(false);\n useEffect9(() => {\n if (!mediaStream) return;\n if (isInited.current) return;\n isInited.current = true;\n var audioContext = new AudioContext();\n setAudioEngine({\n source: audioContext.createMediaStreamSource(mediaStream),\n audioContext\n });\n }, [isInited, mediaStream]);\n var visualizationAnalyser = useMemo17(() => {\n if (!audioEngine) return null;\n var result = audioEngine.audioContext.createAnalyser();\n audioEngine.source.connect(result);\n return result;\n }, [audioEngine]);\n var silenceAnalyser = useMemo17(() => {\n if (!audioEngine) return null;\n var result_0 = audioEngine.audioContext.createAnalyser();\n result_0.minDecibels = -60;\n audioEngine.source.connect(result_0);\n return result_0;\n }, [audioEngine]);\n var handleSilence = useCallback4(() => {\n if (!silenceAnalyser) return;\n var frequencyData = new Uint8Array(silenceAnalyser.frequencyBinCount);\n silenceAnalyser.getByteFrequencyData(frequencyData);\n var isSilent = frequencyData.every((f) => f === 0);\n setSilenceStart((silenceStart_0) => {\n if (isSilent) return silenceStart_0 || dayjs3();\n return null;\n });\n setNoiseStart((noiseStart_0) => {\n if (isSilent) return noiseStart_0;\n return noiseStart_0 || dayjs3();\n });\n requestAnimationFrame(() => handleSilence());\n }, [silenceAnalyser, setNoiseStart, setSilenceStart]);\n useEffect9(() => {\n if (!isStopOnSilence) return;\n requestAnimationFrame(() => handleSilence());\n }, [handleSilence, isStopOnSilence]);\n useInterval(() => {\n if (!isStopOnSilence) return;\n if (status !== \"recording\") return;\n if (!silenceStart) return;\n if (!noiseStart) return;\n if (!silenceStart.isBefore(dayjs3().subtract(1.5, \"second\"))) return;\n audioCaptureProps.stop();\n }, 300);\n return _objectSpread44(_objectSpread44({}, audioCaptureProps), {}, {\n status,\n visualizationAnalyser\n });\n};\n\n// src/hooks/audioThreads/useMessageAudio/index.ts\nimport { c as _c51 } from \"react-compiler-runtime\";\nimport { useMemo as useMemo18, useRef as useRef8, useState as useState9, useEffect as useEffect10 } from \"react\";\nimport nlp from \"compromise\";\nimport { Howler } from \"howler\";\nimport { useAudioPlayer as useAudioPlayer2 } from \"react-use-audio-player\";\n\n// src/hooks/audioThreads/useMessageAudio/lib/input.ts\nimport { isEmpty as isEmpty3 } from \"radash\";\nvar input = (_ref) => {\n var {\n message\n } = _ref;\n var textContents = message.content.filter((c) => c.type === \"text\");\n var result = textContents.map((c) => c.text.value).join(\" \");\n if (isEmpty3(result)) return null;\n return result;\n};\n\n// src/hooks/audioThreads/useMessageAudio/lib/isHtmlAudioSupported.ts\nimport { detect } from \"detect-browser\";\nvar _detect;\nvar unsupportedNames = [\"safari\", \"ios\"];\nvar isHtmlAudioSupported = !unsupportedNames.includes(((_detect = detect()) === null || _detect === void 0 ? void 0 : _detect.name) || \"\");\n\n// src/hooks/audioThreads/useMessageAudio/index.ts\nfunction ownKeys45(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread45(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys45(Object(t), true).forEach(function(r2) {\n _defineProperty45(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys45(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty45(e, r, t) {\n return (r = _toPropertyKey45(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey45(t) {\n var i = _toPrimitive45(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive45(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar FULL_SENTENCE_REGEX = /[\\.?!]$/;\nvar getMessageSentences = (_ref) => {\n var {\n messageId,\n input: input2\n } = _ref;\n var sentences = nlp(input2).sentences().json();\n return sentences.map((sentence) => ({\n messageId,\n sentence: sentence.text\n }));\n};\nvar useMessageAudio = (t0) => {\n var $ = _c51(44);\n var {\n onEnd\n } = t0;\n var [isAudioPlayed, setIsAudioPlayed] = useState9(false);\n var t1;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t1 = [];\n $[0] = t1;\n } else {\n t1 = $[0];\n }\n var [stoppedMessageIds, setStoppedMessageIds] = useState9(t1);\n var t2;\n if ($[1] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t2 = [];\n $[1] = t2;\n } else {\n t2 = $[1];\n }\n var [playedMessageSentences, setPlayedMessageSentences] = useState9(t2);\n var audioPlayer = useAudioPlayer2();\n var nextAudioPlayer = useAudioPlayer2();\n var superinterfaceContext = useSuperinterfaceContext();\n var [isPlaying, setIsPlaying] = useState9(false);\n var latestMessageProps = useLatestMessage();\n var t3;\n bb0: {\n if (!latestMessageProps.latestMessage) {\n var _t;\n if ($[2] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t = [];\n $[2] = _t;\n } else {\n _t = $[2];\n }\n t3 = _t;\n break bb0;\n }\n if (latestMessageProps.latestMessage.role !== \"assistant\") {\n var _t2;\n if ($[3] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t2 = [];\n $[3] = _t2;\n } else {\n _t2 = $[3];\n }\n t3 = _t2;\n break bb0;\n }\n if (stoppedMessageIds.includes(latestMessageProps.latestMessage.id)) {\n var _t3;\n if ($[4] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t3 = [];\n $[4] = _t3;\n } else {\n _t3 = $[4];\n }\n t3 = _t3;\n break bb0;\n }\n var _t4;\n if ($[5] !== latestMessageProps.latestMessage || $[6] !== playedMessageSentences) {\n var input2 = input({\n message: latestMessageProps.latestMessage\n });\n if (!input2) {\n var _t5;\n if ($[9] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t5 = [];\n $[9] = _t5;\n } else {\n _t5 = $[9];\n }\n t3 = _t5;\n break bb0;\n }\n var messageSentences = getMessageSentences({\n messageId: latestMessageProps.latestMessage.id,\n input: input2\n });\n var _t6;\n if ($[10] !== playedMessageSentences) {\n _t6 = (ms) => !playedMessageSentences.find((pms) => pms.messageId === ms.messageId && pms.sentence === ms.sentence);\n $[10] = playedMessageSentences;\n $[11] = _t6;\n } else {\n _t6 = $[11];\n }\n _t4 = messageSentences.filter(_t6);\n $[5] = latestMessageProps.latestMessage;\n $[6] = playedMessageSentences;\n $[7] = _t4;\n $[8] = t3;\n } else {\n _t4 = $[7];\n t3 = $[8];\n }\n t3 = _t4;\n }\n var unplayedMessageSentences = t3;\n var t4;\n if ($[12] !== audioPlayer || $[13] !== isAudioPlayed || $[14] !== isPlaying || $[15] !== latestMessageProps.latestMessage || $[16] !== nextAudioPlayer || $[17] !== onEnd || $[18] !== superinterfaceContext || $[19] !== unplayedMessageSentences) {\n t4 = () => {\n if (isPlaying) {\n return;\n }\n if (audioPlayer.playing) {\n return;\n }\n if (!latestMessageProps.latestMessage) {\n return;\n }\n if (latestMessageProps.latestMessage.role !== \"assistant\") {\n return;\n }\n var firstUnplayedMessageSentence = unplayedMessageSentences[0];\n if (!firstUnplayedMessageSentence) {\n return;\n }\n var isFullSentence = isOptimistic({\n id: latestMessageProps.latestMessage.id\n }) || latestMessageProps.latestMessage.status !== \"in_progress\" || FULL_SENTENCE_REGEX.test(firstUnplayedMessageSentence.sentence);\n if (!isFullSentence) {\n return;\n }\n setIsPlaying(true);\n setPlayedMessageSentences((prev) => [...prev, firstUnplayedMessageSentence]);\n var searchParams = new URLSearchParams(_objectSpread45({\n input: firstUnplayedMessageSentence.sentence\n }, superinterfaceContext.variables));\n audioPlayer.load(\"\".concat(superinterfaceContext.baseUrl, \"/tts?\").concat(searchParams), {\n format: \"mp3\",\n autoplay: isAudioPlayed,\n html5: isHtmlAudioSupported,\n onplay: () => {\n setIsAudioPlayed(true);\n },\n onstop: () => {\n setStoppedMessageIds((prev_0) => [...prev_0, firstUnplayedMessageSentence.messageId]);\n setIsPlaying(false);\n },\n onload: () => {\n var nextUnplayedMessageSentence = unplayedMessageSentences[1];\n if (!nextUnplayedMessageSentence) {\n return;\n }\n var isNextFullSentence = FULL_SENTENCE_REGEX.test(nextUnplayedMessageSentence.sentence);\n if (!isNextFullSentence) {\n return;\n }\n var nextSearchParams = new URLSearchParams(_objectSpread45({\n input: nextUnplayedMessageSentence.sentence\n }, superinterfaceContext.variables));\n nextAudioPlayer.load(\"\".concat(superinterfaceContext.baseUrl, \"/tts?\").concat(nextSearchParams), {\n format: \"mp3\",\n autoplay: false,\n html5: isHtmlAudioSupported\n });\n },\n onend: () => {\n setIsPlaying(false);\n if (unplayedMessageSentences.length === 1 && latestMessageProps.latestMessage.status !== \"in_progress\") {\n onEnd();\n }\n }\n });\n };\n $[12] = audioPlayer;\n $[13] = isAudioPlayed;\n $[14] = isPlaying;\n $[15] = latestMessageProps.latestMessage;\n $[16] = nextAudioPlayer;\n $[17] = onEnd;\n $[18] = superinterfaceContext;\n $[19] = unplayedMessageSentences;\n $[20] = t4;\n } else {\n t4 = $[20];\n }\n var t5;\n if ($[21] !== audioPlayer || $[22] !== isPlaying || $[23] !== latestMessageProps || $[24] !== nextAudioPlayer || $[25] !== onEnd || $[26] !== playedMessageSentences || $[27] !== superinterfaceContext || $[28] !== unplayedMessageSentences) {\n t5 = [unplayedMessageSentences, isPlaying, superinterfaceContext, latestMessageProps, audioPlayer, nextAudioPlayer, playedMessageSentences, onEnd];\n $[21] = audioPlayer;\n $[22] = isPlaying;\n $[23] = latestMessageProps;\n $[24] = nextAudioPlayer;\n $[25] = onEnd;\n $[26] = playedMessageSentences;\n $[27] = superinterfaceContext;\n $[28] = unplayedMessageSentences;\n $[29] = t5;\n } else {\n t5 = $[29];\n }\n useEffect10(t4, t5);\n var t6;\n if ($[30] !== audioPlayer) {\n t6 = [audioPlayer];\n $[30] = audioPlayer;\n $[31] = t6;\n } else {\n t6 = $[31];\n }\n useEffect10(_temp11, t6);\n var [audioEngine, setAudioEngine] = useState9(null);\n var isAudioEngineInited = useRef8(false);\n var t7;\n if ($[32] !== audioPlayer.playing) {\n t7 = () => {\n if (!audioPlayer.playing) {\n return;\n }\n if (isAudioEngineInited.current) {\n return;\n }\n isAudioEngineInited.current = true;\n if (isHtmlAudioSupported) {\n var audioContext = new AudioContext();\n setAudioEngine({\n source: audioContext.createMediaElementSource(Howler._howls[0]._sounds[0]._node),\n audioContext\n });\n } else {\n setAudioEngine({\n source: Howler.masterGain,\n audioContext: Howler.ctx\n });\n }\n };\n $[32] = audioPlayer.playing;\n $[33] = t7;\n } else {\n t7 = $[33];\n }\n var t8;\n if ($[34] !== audioPlayer) {\n t8 = [audioPlayer, isAudioEngineInited];\n $[34] = audioPlayer;\n $[35] = t8;\n } else {\n t8 = $[35];\n }\n useEffect10(t7, t8);\n var t9;\n bb1: {\n if (!audioEngine) {\n t9 = null;\n break bb1;\n }\n var result;\n if ($[36] !== audioEngine.audioContext || $[37] !== audioEngine.source) {\n result = audioEngine.audioContext.createAnalyser();\n audioEngine.source.connect(audioEngine.audioContext.destination);\n audioEngine.source.connect(result);\n $[36] = audioEngine.audioContext;\n $[37] = audioEngine.source;\n $[38] = result;\n } else {\n result = $[38];\n }\n t9 = result;\n }\n var visualizationAnalyser = t9;\n var t10;\n t10 = isPlaying || unplayedMessageSentences.length > 0;\n var isPending = t10;\n var t11;\n if ($[39] !== audioPlayer || $[40] !== isAudioPlayed || $[41] !== isPending || $[42] !== visualizationAnalyser) {\n t11 = _objectSpread45(_objectSpread45({\n isPending,\n isAudioPlayed\n }, audioPlayer), {}, {\n visualizationAnalyser\n });\n $[39] = audioPlayer;\n $[40] = isAudioPlayed;\n $[41] = isPending;\n $[42] = visualizationAnalyser;\n $[43] = t11;\n } else {\n t11 = $[43];\n }\n return t11;\n};\nfunction _temp11() {\n if (isHtmlAudioSupported) {\n var _Howler$_howls$;\n if (!(Howler !== null && Howler !== void 0 && (_Howler$_howls$ = Howler._howls[0]) !== null && _Howler$_howls$ !== void 0 && (_Howler$_howls$ = _Howler$_howls$._sounds[0]) !== null && _Howler$_howls$ !== void 0 && _Howler$_howls$._node)) {\n return;\n }\n Howler._howls[0]._sounds[0]._node.crossOrigin = \"anonymous\";\n }\n}\n\n// src/components/threads/AudioThread/Root/index.tsx\nimport { useQueryClient as useQueryClient6 } from \"@tanstack/react-query\";\nimport { jsx as _jsx82 } from \"react/jsx-runtime\";\nvar _excluded4 = [\"children\"];\nfunction ownKeys46(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread46(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys46(Object(t), true).forEach(function(r2) {\n _defineProperty46(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys46(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty46(e, r, t) {\n return (r = _toPropertyKey46(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey46(t) {\n var i = _toPrimitive46(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive46(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nfunction _objectWithoutProperties4(e, t) {\n if (null == e) return {};\n var o, r, i = _objectWithoutPropertiesLoose4(e, t);\n if (Object.getOwnPropertySymbols) {\n var s = Object.getOwnPropertySymbols(e);\n for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);\n }\n return i;\n}\nfunction _objectWithoutPropertiesLoose4(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (e.includes(n)) continue;\n t[n] = r[n];\n }\n return t;\n}\nfunction asyncGeneratorStep12(n, t, e, r, o, a, c) {\n try {\n var i = n[a](c), u = i.value;\n } catch (n2) {\n return void e(n2);\n }\n i.done ? t(u) : Promise.resolve(u).then(r, o);\n}\nfunction _asyncToGenerator12(n) {\n return function() {\n var t = this, e = arguments;\n return new Promise(function(r, o) {\n var a = n.apply(t, e);\n function _next(n2) {\n asyncGeneratorStep12(a, r, o, _next, _throw, \"next\", n2);\n }\n function _throw(n2) {\n asyncGeneratorStep12(a, r, o, _next, _throw, \"throw\", n2);\n }\n _next(void 0);\n });\n };\n}\nvar Content8 = (t0) => {\n var $ = _c52(21);\n var {\n children,\n className,\n style\n } = t0;\n var {\n addToast\n } = useToasts();\n var queryClient = useQueryClient6();\n var threadContext = useSuperinterfaceContext();\n var createMessageProps = useCreateMessage({\n onError: (error) => {\n createMessageDefaultOnError({\n queryClient,\n addToast,\n threadContext\n })(error);\n recorderProps.start();\n }\n });\n var t1;\n if ($[0] !== createMessageProps) {\n t1 = {\n isStopOnSilence: true,\n onStart: _temp12,\n onStop: function() {\n var _onStop = _asyncToGenerator12(function* (_event, chunks) {\n var blob = new Blob(chunks, {\n type: chunks[0].type\n });\n var audioContent = yield blobToData(blob);\n return createMessageProps.createMessage({\n audioContent\n });\n });\n function onStop(_x, _x2) {\n return _onStop.apply(this, arguments);\n }\n return onStop;\n }()\n };\n $[0] = createMessageProps;\n $[1] = t1;\n } else {\n t1 = $[1];\n }\n var recorderProps = useRecorder(t1);\n var t2;\n if ($[2] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t2 = {\n name: \"microphone\"\n };\n $[2] = t2;\n } else {\n t2 = $[2];\n }\n var microphonePermission = usePermission(t2);\n var t3;\n if ($[3] !== microphonePermission || $[4] !== recorderProps) {\n t3 = {\n onEnd: () => {\n if (microphonePermission === \"granted\") {\n recorderProps.start();\n }\n }\n };\n $[3] = microphonePermission;\n $[4] = recorderProps;\n $[5] = t3;\n } else {\n t3 = $[5];\n }\n var messageAudioProps = useMessageAudio(t3);\n var t4 = recorderProps;\n var t5;\n if ($[6] !== createMessageProps || $[7] !== messageAudioProps || $[8] !== t4) {\n t5 = {\n recorderProps: t4,\n createMessageProps,\n messageAudioProps\n };\n $[6] = createMessageProps;\n $[7] = messageAudioProps;\n $[8] = t4;\n $[9] = t5;\n } else {\n t5 = $[9];\n }\n var {\n status\n } = useStatus(t5);\n var t6 = recorderProps;\n var t7;\n if ($[10] !== messageAudioProps || $[11] !== status || $[12] !== t6) {\n t7 = {\n status,\n recorderProps: t6,\n messageAudioProps\n };\n $[10] = messageAudioProps;\n $[11] = status;\n $[12] = t6;\n $[13] = t7;\n } else {\n t7 = $[13];\n }\n var t8;\n if ($[14] !== children || $[15] !== className || $[16] !== style) {\n t8 = /* @__PURE__ */ _jsx82(Flex29, {\n direction: \"column\",\n flexGrow: \"1\",\n p: \"9\",\n className,\n style,\n children\n });\n $[14] = children;\n $[15] = className;\n $[16] = style;\n $[17] = t8;\n } else {\n t8 = $[17];\n }\n var t9;\n if ($[18] !== t7 || $[19] !== t8) {\n t9 = /* @__PURE__ */ _jsx82(AudioThreadContext.Provider, {\n value: t7,\n children: t8\n });\n $[18] = t7;\n $[19] = t8;\n $[20] = t9;\n } else {\n t9 = $[20];\n }\n return t9;\n};\nvar Root12 = (_ref) => {\n var {\n children\n } = _ref, rest = _objectWithoutProperties4(_ref, _excluded4);\n return /* @__PURE__ */ _jsx82(ToastsProvider, {\n children: /* @__PURE__ */ _jsx82(Content8, _objectSpread46(_objectSpread46({}, rest), {}, {\n children\n }))\n });\n};\nfunction _temp12() {\n return _temp24.apply(this, arguments);\n}\nfunction _temp24() {\n _temp24 = _asyncToGenerator12(function* () {\n });\n return _temp24.apply(this, arguments);\n}\n\n// src/components/threads/AudioThread/Visualization/index.tsx\nimport { useContext as useContext16, useState as useState11, useCallback as useCallback6, useEffect as useEffect12 } from \"react\";\nimport _9 from \"lodash\";\nimport { Flex as Flex31 } from \"@radix-ui/themes\";\n\n// src/hooks/threads/useAudioThreadContext/index.ts\nimport { useContext as useContext15 } from \"react\";\nvar useAudioThreadContext = () => {\n return useContext15(AudioThreadContext);\n};\n\n// src/components/threads/AudioThread/BarsVisualizer/index.tsx\nimport _8 from \"lodash\";\nimport { Flex as Flex30, Grid } from \"@radix-ui/themes\";\nimport { useState as useState10, useEffect as useEffect11, useCallback as useCallback5 } from \"react\";\nimport { cluster } from \"radash\";\nimport { jsx as _jsx83 } from \"react/jsx-runtime\";\nvar barCount = 4;\nvar BarsVisualizer = (_ref) => {\n var {\n visualizationAnalyser,\n backgroundColor,\n height,\n barWidth\n } = _ref;\n var [barHeights, setBarHeights] = useState10([]);\n var draw = useCallback5((_ref2) => {\n var {\n visualizationAnalyser: visualizationAnalyser_0\n } = _ref2;\n if (!visualizationAnalyser_0) {\n setBarHeights(Array(barCount).fill(0));\n return;\n }\n var frequencyData = new Uint8Array(visualizationAnalyser_0.frequencyBinCount / 15);\n visualizationAnalyser_0.getByteFrequencyData(frequencyData);\n var clusteredFrequencyData = cluster(frequencyData, frequencyData.length / barCount);\n setBarHeights(clusteredFrequencyData.map((frequencyDataCluster) => _8.mean(frequencyDataCluster) / 255 * 100));\n requestAnimationFrame(() => draw({\n visualizationAnalyser: visualizationAnalyser_0\n }));\n }, []);\n useEffect11(() => {\n draw({\n visualizationAnalyser\n });\n }, [draw, visualizationAnalyser]);\n return /* @__PURE__ */ _jsx83(Grid, {\n columns: \"\".concat(barCount),\n gap: \"1\",\n width: \"auto\",\n style: {\n // TODO not sure why we need this\n gridTemplateColumns: \"repeat(4, minmax(0, 1fr))\"\n },\n children: barHeights.map((barHeight, index) => /* @__PURE__ */ _jsx83(Flex30, {\n direction: \"column\",\n align: \"center\",\n justify: \"center\",\n height,\n children: /* @__PURE__ */ _jsx83(Flex30, {\n minHeight: \"50%\",\n maxHeight: \"100%\",\n height: \"\".concat(barHeight + 20, \"%\"),\n width: barWidth,\n style: {\n backgroundColor,\n borderRadius: \"var(--radius-6)\"\n }\n })\n }, index))\n });\n};\n\n// src/components/threads/AudioThread/Visualization/index.tsx\nimport { jsx as _jsx84, jsxs as _jsxs31 } from \"react/jsx-runtime\";\nfunction ownKeys47(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread47(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys47(Object(t), true).forEach(function(r2) {\n _defineProperty47(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys47(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty47(e, r, t) {\n return (r = _toPropertyKey47(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey47(t) {\n var i = _toPrimitive47(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive47(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar Visualization = (props) => {\n var audioThreadContext = useAudioThreadContext();\n var assistantNameContext = useContext16(AssistantNameContext);\n var [scale, setScale] = useState11(0);\n var draw = useCallback6((_ref) => {\n var {\n visualizationAnalyser\n } = _ref;\n if (!visualizationAnalyser) {\n setScale(1);\n return;\n }\n var frequencyData = new Uint8Array(visualizationAnalyser.frequencyBinCount / 15);\n visualizationAnalyser.getByteFrequencyData(frequencyData);\n setScale(1 + _9.mean(frequencyData) / 255 / 10);\n requestAnimationFrame(() => draw({\n visualizationAnalyser\n }));\n }, []);\n useEffect12(() => {\n draw({\n visualizationAnalyser: audioThreadContext.recorderProps.visualizationAnalyser\n });\n }, [draw, audioThreadContext]);\n return /* @__PURE__ */ _jsxs31(Flex31, _objectSpread47(_objectSpread47({\n direction: \"column\",\n align: \"center\",\n justify: \"center\",\n mb: \"3\",\n flexGrow: \"1\"\n }, props), {}, {\n children: [/* @__PURE__ */ _jsx84(Flex31, {\n align: \"center\",\n justify: \"center\",\n height: \"200px\",\n width: \"200px\",\n style: {\n backgroundColor: audioThreadContext.status === \"playing\" ? \"var(--accent-4)\" : \"var(--gray-4)\",\n borderRadius: \"9999px\",\n scale\n },\n children: /* @__PURE__ */ _jsx84(BarsVisualizer, {\n visualizationAnalyser: audioThreadContext.messageAudioProps.visualizationAnalyser,\n backgroundColor: audioThreadContext.status === \"playing\" ? \"var(--accent-11)\" : \"var(--gray-11)\",\n height: \"40px\",\n barWidth: \"24px\"\n })\n }), /* @__PURE__ */ _jsxs31(Flex31, {\n ml: \"-22.5px\",\n gap: \"3\",\n pt: \"5\",\n children: [/* @__PURE__ */ _jsx84(AssistantAvatar, {}), /* @__PURE__ */ _jsx84(Name, {\n children: assistantNameContext\n })]\n })]\n }));\n};\n\n// src/components/threads/AudioThread/Status/index.tsx\nimport { c as _c53 } from \"react-compiler-runtime\";\n\n// src/components/threads/AudioThread/Status/StatusMessages.tsx\nimport { Flex as Flex32, Text as Text9 } from \"@radix-ui/themes\";\nimport { jsx as _jsx85, jsxs as _jsxs32 } from \"react/jsx-runtime\";\nvar html = (_ref) => {\n var {\n texts\n } = _ref;\n return \"\\n .status-messages-texts:after {\\n content: '\".concat(texts[0], \"';\\n animation: texts \").concat(texts.length * 5, \"s linear infinite;\\n }\\n\\n @keyframes texts {\\n \").concat(texts.map((_10, i) => \"\\n \".concat(i * 100 / texts.length, '% {\\n content: \"').concat(texts[i], '\";\\n }\\n ')).join(\"\"), \"\\n }\");\n};\nvar StatusMessages = (_ref2) => {\n var {\n texts,\n className,\n style\n } = _ref2;\n return /* @__PURE__ */ _jsxs32(Flex32, {\n justify: \"center\",\n pb: \"5\",\n className,\n style,\n children: [/* @__PURE__ */ _jsx85(Text9, {\n size: \"2\",\n weight: \"regular\",\n color: \"gray\",\n className: \"status-messages-texts\"\n }), /* @__PURE__ */ _jsx85(\"style\", {\n dangerouslySetInnerHTML: {\n __html: html({\n texts\n })\n }\n })]\n });\n};\n\n// src/components/threads/AudioThread/Status/index.tsx\nimport { jsx as _jsx86 } from \"react/jsx-runtime\";\nfunction ownKeys48(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread48(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys48(Object(t), true).forEach(function(r2) {\n _defineProperty48(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys48(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty48(e, r, t) {\n return (r = _toPropertyKey48(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey48(t) {\n var i = _toPrimitive48(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive48(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar Status = (props) => {\n var $ = _c53(12);\n var audioThreadContext = useAudioThreadContext();\n if (audioThreadContext.status === \"recording\") {\n var _t;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t = [\"Start speaking\", \"Listening\", \"Finish speaking to send\", \"Click the button below to send manually\"];\n $[0] = _t;\n } else {\n _t = $[0];\n }\n var _t2;\n if ($[1] !== props) {\n _t2 = /* @__PURE__ */ _jsx86(StatusMessages, _objectSpread48({\n texts: _t\n }, props));\n $[1] = props;\n $[2] = _t2;\n } else {\n _t2 = $[2];\n }\n return _t2;\n }\n if ([\"recorderPaused\", \"idle\", \"playerPaused\"].includes(audioThreadContext.status)) {\n var _t3;\n if ($[3] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t3 = [\"Click the button below to activate\"];\n $[3] = _t3;\n } else {\n _t3 = $[3];\n }\n var _t4;\n if ($[4] !== props) {\n _t4 = /* @__PURE__ */ _jsx86(StatusMessages, _objectSpread48({\n texts: _t3\n }, props));\n $[4] = props;\n $[5] = _t4;\n } else {\n _t4 = $[5];\n }\n return _t4;\n }\n if (audioThreadContext.status === \"playing\") {\n var _t5;\n if ($[6] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t5 = [\"Click the button below to interrupt\"];\n $[6] = _t5;\n } else {\n _t5 = $[6];\n }\n var _t6;\n if ($[7] !== props) {\n _t6 = /* @__PURE__ */ _jsx86(StatusMessages, _objectSpread48({\n texts: _t5\n }, props));\n $[7] = props;\n $[8] = _t6;\n } else {\n _t6 = $[8];\n }\n return _t6;\n }\n var t0;\n if ($[9] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t0 = [\"Thinking\"];\n $[9] = t0;\n } else {\n t0 = $[9];\n }\n var t1;\n if ($[10] !== props) {\n t1 = /* @__PURE__ */ _jsx86(StatusMessages, _objectSpread48({\n texts: t0\n }, props));\n $[10] = props;\n $[11] = t1;\n } else {\n t1 = $[11];\n }\n return t1;\n};\n\n// src/components/threads/AudioThread/Form/index.tsx\nimport { c as _c55 } from \"react-compiler-runtime\";\nimport { Flex as Flex34 } from \"@radix-ui/themes\";\n\n// src/components/threads/AudioThread/Form/MicIcon.tsx\nimport { jsx as _jsx87 } from \"react/jsx-runtime\";\nfunction ownKeys49(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread49(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys49(Object(t), true).forEach(function(r2) {\n _defineProperty49(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys49(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty49(e, r, t) {\n return (r = _toPropertyKey49(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey49(t) {\n var i = _toPrimitive49(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive49(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar MicIcon = (props) => /* @__PURE__ */ _jsx87(\"svg\", _objectSpread49(_objectSpread49({\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n stroke: \"currentColor\",\n strokeWidth: 0,\n viewBox: \"0 0 384 512\",\n height: \"15\",\n width: \"15\"\n}, props), {}, {\n children: /* @__PURE__ */ _jsx87(\"path\", {\n stroke: \"none\",\n d: \"M192 0c-53 0-96 43-96 96v160c0 53 43 96 96 96s96-43 96-96V96c0-53-43-96-96-96zM64 216c0-13.3-10.7-24-24-24s-24 10.7-24 24v40c0 89.1 66.2 162.7 152 174.4V464h-48c-13.3 0-24 10.7-24 24s10.7 24 24 24h144c13.3 0 24-10.7 24-24s-10.7-24-24-24h-48v-33.6c85.8-11.7 152-85.3 152-174.4v-40c0-13.3-10.7-24-24-24s-24 10.7-24 24v40c0 70.7-57.3 128-128 128S64 326.7 64 256v-40z\"\n })\n}));\n\n// src/components/threads/AudioThread/Form/ActionButton/index.tsx\nimport { c as _c54 } from \"react-compiler-runtime\";\nimport { Flex as Flex33, IconButton as IconButton10 } from \"@radix-ui/themes\";\nimport { StopIcon as StopIcon2, PauseIcon as PauseIcon2, ArrowUpIcon as ArrowUpIcon3, ResumeIcon } from \"@radix-ui/react-icons\";\nimport { jsx as _jsx88, jsxs as _jsxs33 } from \"react/jsx-runtime\";\nvar ActionButton = () => {\n var $ = _c54(27);\n var audioThreadContext = useAudioThreadContext();\n var superinterfaceContext = useSuperinterfaceContext();\n if (audioThreadContext.status === \"recording\") {\n var _t;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t = /* @__PURE__ */ _jsx88(PauseIcon2, {});\n $[0] = _t;\n } else {\n _t = $[0];\n }\n var t1;\n if ($[1] !== audioThreadContext.recorderProps.pause) {\n t1 = /* @__PURE__ */ _jsx88(Flex33, {\n mr: \"3\",\n ml: \"-7\",\n children: /* @__PURE__ */ _jsx88(IconButton10, {\n onClick: audioThreadContext.recorderProps.pause,\n color: \"gray\",\n variant: \"soft\",\n size: \"1\",\n children: _t\n })\n });\n $[1] = audioThreadContext.recorderProps.pause;\n $[2] = t1;\n } else {\n t1 = $[2];\n }\n var t2;\n if ($[3] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t2 = /* @__PURE__ */ _jsx88(ArrowUpIcon3, {});\n $[3] = t2;\n } else {\n t2 = $[3];\n }\n var t3;\n if ($[4] !== audioThreadContext.recorderProps.stop) {\n t3 = /* @__PURE__ */ _jsx88(IconButton10, {\n onClick: audioThreadContext.recorderProps.stop,\n highContrast: true,\n variant: \"soft\",\n size: \"4\",\n children: t2\n });\n $[4] = audioThreadContext.recorderProps.stop;\n $[5] = t3;\n } else {\n t3 = $[5];\n }\n var t4;\n if ($[6] !== t1 || $[7] !== t3) {\n t4 = /* @__PURE__ */ _jsxs33(Flex33, {\n align: \"center\",\n children: [t1, t3]\n });\n $[6] = t1;\n $[7] = t3;\n $[8] = t4;\n } else {\n t4 = $[8];\n }\n return t4;\n }\n if (audioThreadContext.status === \"recorderPaused\") {\n var _t2;\n if ($[9] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t2 = /* @__PURE__ */ _jsx88(ResumeIcon, {});\n $[9] = _t2;\n } else {\n _t2 = $[9];\n }\n var _t3;\n if ($[10] !== audioThreadContext.recorderProps.resume) {\n _t3 = /* @__PURE__ */ _jsx88(IconButton10, {\n onClick: audioThreadContext.recorderProps.resume,\n color: \"red\",\n size: \"4\",\n children: _t2\n });\n $[10] = audioThreadContext.recorderProps.resume;\n $[11] = _t3;\n } else {\n _t3 = $[11];\n }\n return _t3;\n }\n if (audioThreadContext.status === \"idle\") {\n var _t4;\n if ($[12] !== audioThreadContext.recorderProps) {\n _t4 = /* @__PURE__ */ _jsx88(IconButton10, {\n onClick: () => audioThreadContext.recorderProps.start(),\n size: \"4\",\n color: \"red\"\n });\n $[12] = audioThreadContext.recorderProps;\n $[13] = _t4;\n } else {\n _t4 = $[13];\n }\n return _t4;\n }\n if (audioThreadContext.status === \"playing\") {\n var _t5;\n if ($[14] !== audioThreadContext.messageAudioProps || $[15] !== audioThreadContext.recorderProps || $[16] !== superinterfaceContext.createMessageAbortControllerRef.current) {\n _t5 = () => {\n var _superinterfaceContex;\n audioThreadContext.messageAudioProps.stop();\n (_superinterfaceContex = superinterfaceContext.createMessageAbortControllerRef.current) === null || _superinterfaceContex === void 0 || _superinterfaceContex.abort();\n audioThreadContext.recorderProps.start();\n };\n $[14] = audioThreadContext.messageAudioProps;\n $[15] = audioThreadContext.recorderProps;\n $[16] = superinterfaceContext.createMessageAbortControllerRef.current;\n $[17] = _t5;\n } else {\n _t5 = $[17];\n }\n var _t6;\n if ($[18] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t6 = /* @__PURE__ */ _jsx88(StopIcon2, {});\n $[18] = _t6;\n } else {\n _t6 = $[18];\n }\n var _t7;\n if ($[19] !== _t5) {\n _t7 = /* @__PURE__ */ _jsx88(IconButton10, {\n onClick: _t5,\n size: \"4\",\n color: \"gray\",\n variant: \"soft\",\n children: _t6\n });\n $[19] = _t5;\n $[20] = _t7;\n } else {\n _t7 = $[20];\n }\n return _t7;\n }\n if (audioThreadContext.status === \"playerPaused\") {\n var _t8;\n if ($[21] !== audioThreadContext.messageAudioProps) {\n _t8 = () => audioThreadContext.messageAudioProps.play();\n $[21] = audioThreadContext.messageAudioProps;\n $[22] = _t8;\n } else {\n _t8 = $[22];\n }\n var _t9;\n if ($[23] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t9 = /* @__PURE__ */ _jsx88(ResumeIcon, {});\n $[23] = _t9;\n } else {\n _t9 = $[23];\n }\n var _t10;\n if ($[24] !== _t8) {\n _t10 = /* @__PURE__ */ _jsx88(IconButton10, {\n onClick: _t8,\n size: \"4\",\n children: _t9\n });\n $[24] = _t8;\n $[25] = _t10;\n } else {\n _t10 = $[25];\n }\n return _t10;\n }\n var t0;\n if ($[26] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t0 = /* @__PURE__ */ _jsx88(IconButton10, {\n size: \"4\",\n variant: \"soft\",\n disabled: true\n });\n $[26] = t0;\n } else {\n t0 = $[26];\n }\n return t0;\n};\n\n// src/components/threads/AudioThread/Form/index.tsx\nimport { jsx as _jsx89, jsxs as _jsxs34 } from \"react/jsx-runtime\";\nfunction ownKeys50(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread50(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys50(Object(t), true).forEach(function(r2) {\n _defineProperty50(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys50(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty50(e, r, t) {\n return (r = _toPropertyKey50(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey50(t) {\n var i = _toPrimitive50(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive50(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar Form = (props) => {\n var $ = _c55(17);\n var audioThreadContext = useAudioThreadContext();\n var t0 = audioThreadContext.status === \"recording\" ? \"var(--accent-11)\" : \"var(--gray-11)\";\n var t1;\n if ($[0] !== t0) {\n t1 = /* @__PURE__ */ _jsx89(Flex34, {\n ml: \"-22.5px\",\n mr: \"2\",\n align: \"center\",\n children: /* @__PURE__ */ _jsx89(MicIcon, {\n style: {\n color: t0\n }\n })\n });\n $[0] = t0;\n $[1] = t1;\n } else {\n t1 = $[1];\n }\n var t2 = audioThreadContext.status === \"recording\" ? \"var(--accent-4)\" : \"var(--gray-4)\";\n var t3;\n if ($[2] !== t2) {\n t3 = {\n backgroundColor: t2,\n borderRadius: \"var(--radius-6)\"\n };\n $[2] = t2;\n $[3] = t3;\n } else {\n t3 = $[3];\n }\n var t4 = audioThreadContext.status === \"recording\" ? \"var(--accent-11)\" : \"var(--gray-11)\";\n var t5;\n if ($[4] !== audioThreadContext.recorderProps.visualizationAnalyser || $[5] !== t4) {\n t5 = /* @__PURE__ */ _jsx89(BarsVisualizer, {\n visualizationAnalyser: audioThreadContext.recorderProps.visualizationAnalyser,\n backgroundColor: t4,\n height: \"20px\",\n barWidth: \"12px\"\n });\n $[4] = audioThreadContext.recorderProps.visualizationAnalyser;\n $[5] = t4;\n $[6] = t5;\n } else {\n t5 = $[6];\n }\n var t6;\n if ($[7] !== t3 || $[8] !== t5) {\n t6 = /* @__PURE__ */ _jsx89(Flex34, {\n px: \"2\",\n py: \"1\",\n style: t3,\n children: t5\n });\n $[7] = t3;\n $[8] = t5;\n $[9] = t6;\n } else {\n t6 = $[9];\n }\n var t7;\n if ($[10] !== t1 || $[11] !== t6) {\n t7 = /* @__PURE__ */ _jsxs34(Flex34, {\n pb: \"3\",\n align: \"center\",\n children: [t1, t6]\n });\n $[10] = t1;\n $[11] = t6;\n $[12] = t7;\n } else {\n t7 = $[12];\n }\n var t8;\n if ($[13] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t8 = /* @__PURE__ */ _jsx89(ActionButton, {});\n $[13] = t8;\n } else {\n t8 = $[13];\n }\n var t9;\n if ($[14] !== props || $[15] !== t7) {\n t9 = /* @__PURE__ */ _jsxs34(Flex34, _objectSpread50(_objectSpread50({\n direction: \"column\",\n align: \"center\"\n }, props), {}, {\n children: [t7, t8]\n }));\n $[14] = props;\n $[15] = t7;\n $[16] = t9;\n } else {\n t9 = $[16];\n }\n return t9;\n};\n\n// src/components/threads/AudioThread/index.tsx\nimport { jsx as _jsx90, jsxs as _jsxs35 } from \"react/jsx-runtime\";\nfunction ownKeys51(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread51(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys51(Object(t), true).forEach(function(r2) {\n _defineProperty51(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys51(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty51(e, r, t) {\n return (r = _toPropertyKey51(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey51(t) {\n var i = _toPrimitive51(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive51(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar AudioThread = (props) => /* @__PURE__ */ _jsxs35(Root12, _objectSpread51(_objectSpread51({}, props), {}, {\n children: [/* @__PURE__ */ _jsx90(Visualization, {}), /* @__PURE__ */ _jsx90(Status, {}), /* @__PURE__ */ _jsx90(Form, {})]\n}));\nAudioThread.Root = Root12;\nAudioThread.Visualization = Visualization;\nAudioThread.Status = Status;\nAudioThread.Form = Form;\n\n// src/components/threads/AudioThreadDialog/index.tsx\nimport { jsx as _jsx91, jsxs as _jsxs36 } from \"react/jsx-runtime\";\nfunction ownKeys52(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function(r2) {\n return Object.getOwnPropertyDescriptor(e, r2).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread52(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys52(Object(t), true).forEach(function(r2) {\n _defineProperty52(e, r2, t[r2]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys52(Object(t)).forEach(function(r2) {\n Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));\n });\n }\n return e;\n}\nfunction _defineProperty52(e, r, t) {\n return (r = _toPropertyKey52(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;\n}\nfunction _toPropertyKey52(t) {\n var i = _toPrimitive52(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _toPrimitive52(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nvar AudioThreadDialog = (props) => /* @__PURE__ */ _jsxs36(Root9, _objectSpread52(_objectSpread52({}, props), {}, {\n children: [/* @__PURE__ */ _jsx91(Content7.Root, {\n children: /* @__PURE__ */ _jsx91(AudioThread, {})\n }), /* @__PURE__ */ _jsx91(Trigger, {})]\n}));\nAudioThreadDialog.Root = Root9;\nAudioThreadDialog.Trigger = Trigger;\nAudioThreadDialog.Content = Content7;\n\n// src/components/markdown/MarkdownProvider/index.tsx\nimport { c as _c56 } from \"react-compiler-runtime\";\nimport { useMemo as useMemo19 } from \"react\";\nimport { jsx as _jsx92 } from \"react/jsx-runtime\";\nvar _excluded5 = [\"children\"];\nfunction _objectWithoutProperties5(e, t) {\n if (null == e) return {};\n var o, r, i = _objectWithoutPropertiesLoose5(e, t);\n if (Object.getOwnPropertySymbols) {\n var s = Object.getOwnPropertySymbols(e);\n for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);\n }\n return i;\n}\nfunction _objectWithoutPropertiesLoose5(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (e.includes(n)) continue;\n t[n] = r[n];\n }\n return t;\n}\nvar MarkdownProvider = (t0) => {\n var $ = _c56(9);\n var children;\n var rest;\n if ($[0] !== t0) {\n var _t = t0;\n ({\n children\n } = _t);\n rest = _objectWithoutProperties5(_t, _excluded5);\n _t;\n $[0] = t0;\n $[1] = children;\n $[2] = rest;\n } else {\n children = $[1];\n rest = $[2];\n }\n var prevMarkdownContext = useMarkdownContext();\n var t1;\n var t2;\n if ($[3] !== prevMarkdownContext || $[4] !== rest) {\n t2 = merge(prevMarkdownContext, rest);\n $[3] = prevMarkdownContext;\n $[4] = rest;\n $[5] = t2;\n } else {\n t2 = $[5];\n }\n t1 = t2;\n var value = t1;\n var t3;\n if ($[6] !== children || $[7] !== value) {\n t3 = /* @__PURE__ */ _jsx92(MarkdownContext.Provider, {\n value,\n children\n });\n $[6] = children;\n $[7] = value;\n $[8] = t3;\n } else {\n t3 = $[8];\n }\n return t3;\n};\n\n// src/components/avatars/Avatar.tsx\nimport { c as _c59 } from \"react-compiler-runtime\";\n\n// src/lib/enums/index.ts\nvar IconAvatarName = /* @__PURE__ */ function(IconAvatarName2) {\n IconAvatarName2[\"BACKPACK\"] = \"BACKPACK\";\n IconAvatarName2[\"ROCKET\"] = \"ROCKET\";\n IconAvatarName2[\"MAGIC_WAND\"] = \"MAGIC_WAND\";\n IconAvatarName2[\"CUBE\"] = \"CUBE\";\n IconAvatarName2[\"TARGET\"] = \"TARGET\";\n IconAvatarName2[\"DISC\"] = \"DISC\";\n IconAvatarName2[\"GLOBE\"] = \"GLOBE\";\n IconAvatarName2[\"STAR\"] = \"STAR\";\n IconAvatarName2[\"LIGHTNING_BOLT\"] = \"LIGHTNING_BOLT\";\n IconAvatarName2[\"FACE\"] = \"FACE\";\n IconAvatarName2[\"PERSON\"] = \"PERSON\";\n IconAvatarName2[\"HEART\"] = \"HEART\";\n return IconAvatarName2;\n}({});\nvar AvatarType = /* @__PURE__ */ function(AvatarType2) {\n AvatarType2[\"ICON\"] = \"ICON\";\n AvatarType2[\"IMAGE\"] = \"IMAGE\";\n return AvatarType2;\n}({});\n\n// src/components/avatars/Avatar.tsx\nimport { Avatar as RadixAvatar } from \"@radix-ui/themes\";\n\n// src/components/imageAvatars/ImageAvatar/index.tsx\nimport { c as _c57 } from \"react-compiler-runtime\";\nimport { Avatar as Avatar4 } from \"@radix-ui/themes\";\n\n// src/components/imageAvatars/ImageAvatar/lib/optimizedSrc/path.ts\nvar width = (_ref) => {\n var {\n size\n } = _ref;\n if (size === \"1\") {\n return 48;\n } else if (size === \"2\") {\n return 64;\n } else if (size === \"3\") {\n return 96;\n } else if (size === \"4\") {\n return 96;\n } else if (size === \"5\") {\n return 128;\n } else if (size === \"6\") {\n return 256;\n } else if (size === \"7\") {\n return 256;\n } else if (size === \"8\") {\n return 256;\n } else if (size === \"9\") {\n return 384;\n }\n return 384;\n};\nvar path = (_ref2) => {\n var {\n imageAvatar,\n size\n } = _ref2;\n return \"/_next/image?url=\".concat(encodeURIComponent(imageAvatar.url), \"&w=\").concat(width({\n size\n }), \"&q=95\");\n};\n\n// src/components/imageAvatars/ImageAvatar/lib/optimizedSrc/host.ts\nvar host = (_ref) => {\n var {\n superinterfaceContext\n } = _ref;\n if (!superinterfaceContext.baseUrl) return \"\";\n if (!/^https?:\\/\\//i.test(superinterfaceContext.baseUrl)) return \"\";\n return new URL(superinterfaceContext.baseUrl).origin;\n};\n\n// src/components/imageAvatars/ImageAvatar/lib/optimizedSrc/index.ts\nvar optimizedSrc = (_ref) => {\n var {\n imageAvatar,\n size,\n superinterfaceContext\n } = _ref;\n if (!imageAvatar.url) return \"\";\n if (imageAvatar.url.endsWith(\".svg\")) return imageAvatar.url;\n return \"\".concat(host({\n superinterfaceContext\n })).concat(path({\n imageAvatar,\n size\n }));\n};\n\n// src/components/imageAvatars/ImageAvatar/index.tsx\nimport { jsx as _jsx93 } from \"react/jsx-runtime\";\nvar ImageAvatar = (t0) => {\n var $ = _c57(9);\n var {\n imageAvatar,\n size,\n className,\n style\n } = t0;\n var superinterfaceContext = useSuperinterfaceContext();\n var t1;\n if ($[0] !== imageAvatar || $[1] !== size || $[2] !== superinterfaceContext) {\n t1 = optimizedSrc({\n imageAvatar,\n size,\n superinterfaceContext\n });\n $[0] = imageAvatar;\n $[1] = size;\n $[2] = superinterfaceContext;\n $[3] = t1;\n } else {\n t1 = $[3];\n }\n var t2;\n if ($[4] !== className || $[5] !== size || $[6] !== style || $[7] !== t1) {\n t2 = /* @__PURE__ */ _jsx93(Avatar4, {\n className,\n style,\n fallback: \"\",\n src: t1,\n size\n });\n $[4] = className;\n $[5] = size;\n $[6] = style;\n $[7] = t1;\n $[8] = t2;\n } else {\n t2 = $[8];\n }\n return t2;\n};\n\n// src/components/iconAvatars/IconAvatar.tsx\nimport { c as _c58 } from \"react-compiler-runtime\";\nimport { useMemo as useMemo20 } from \"react\";\nimport { Avatar as Avatar5 } from \"@radix-ui/themes\";\n\n// src/lib/iconAvatars/iconAvatarComponents.ts\nimport { BackpackIcon, RocketIcon, MagicWandIcon, CubeIcon, TargetIcon, DiscIcon, GlobeIcon, StarIcon, LightningBoltIcon as LightningBoltIcon2, FaceIcon, PersonIcon as PersonIcon2, HeartIcon } from \"@radix-ui/react-icons\";\nvar iconAvatarComponents = {\n [IconAvatarName.BACKPACK]: BackpackIcon,\n [IconAvatarName.ROCKET]: RocketIcon,\n [IconAvatarName.MAGIC_WAND]: MagicWandIcon,\n [IconAvatarName.CUBE]: CubeIcon,\n [IconAvatarName.TARGET]: TargetIcon,\n [IconAvatarName.DISC]: DiscIcon,\n [IconAvatarName.GLOBE]: GlobeIcon,\n [IconAvatarName.STAR]: StarIcon,\n [IconAvatarName.LIGHTNING_BOLT]: LightningBoltIcon2,\n [IconAvatarName.FACE]: FaceIcon,\n [IconAvatarName.PERSON]: PersonIcon2,\n [IconAvatarName.HEART]: HeartIcon\n};\n\n// src/components/iconAvatars/IconAvatar.tsx\nimport { jsx as _jsx94 } from \"react/jsx-runtime\";\nvar IconAvatar = (t0) => {\n var $ = _c58(7);\n var {\n iconAvatar,\n size,\n className,\n style\n } = t0;\n var t1;\n t1 = iconAvatarComponents[iconAvatar.name];\n var Component2 = t1;\n var t2;\n if ($[0] !== Component2) {\n t2 = Component2 ? /* @__PURE__ */ _jsx94(Component2, {}) : \"\";\n $[0] = Component2;\n $[1] = t2;\n } else {\n t2 = $[1];\n }\n var t3;\n if ($[2] !== className || $[3] !== size || $[4] !== style || $[5] !== t2) {\n t3 = /* @__PURE__ */ _jsx94(Avatar5, {\n className,\n style,\n size,\n fallback: t2\n });\n $[2] = className;\n $[3] = size;\n $[4] = style;\n $[5] = t2;\n $[6] = t3;\n } else {\n t3 = $[6];\n }\n return t3;\n};\n\n// src/components/avatars/Avatar.tsx\nimport { jsx as _jsx95 } from \"react/jsx-runtime\";\nvar Avatar6 = (t0) => {\n var $ = _c59(14);\n var {\n avatar,\n size: t1,\n className,\n style\n } = t0;\n var size = t1 === void 0 ? \"1\" : t1;\n if (avatar) {\n if (avatar.type === AvatarType.IMAGE && avatar.imageAvatar) {\n var _t;\n if ($[0] !== avatar.imageAvatar || $[1] !== className || $[2] !== size || $[3] !== style) {\n _t = /* @__PURE__ */ _jsx95(ImageAvatar, {\n imageAvatar: avatar.imageAvatar,\n size,\n className,\n style\n });\n $[0] = avatar.imageAvatar;\n $[1] = className;\n $[2] = size;\n $[3] = style;\n $[4] = _t;\n } else {\n _t = $[4];\n }\n return _t;\n }\n if (avatar.type === AvatarType.ICON && avatar.iconAvatar) {\n var _t2;\n if ($[5] !== avatar.iconAvatar || $[6] !== className || $[7] !== size || $[8] !== style) {\n _t2 = /* @__PURE__ */ _jsx95(IconAvatar, {\n iconAvatar: avatar.iconAvatar,\n size,\n className,\n style\n });\n $[5] = avatar.iconAvatar;\n $[6] = className;\n $[7] = size;\n $[8] = style;\n $[9] = _t2;\n } else {\n _t2 = $[9];\n }\n return _t2;\n }\n }\n var t2;\n if ($[10] !== className || $[11] !== size || $[12] !== style) {\n t2 = /* @__PURE__ */ _jsx95(RadixAvatar, {\n fallback: \"\",\n size,\n className,\n style\n });\n $[10] = className;\n $[11] = size;\n $[12] = style;\n $[13] = t2;\n } else {\n t2 = $[13];\n }\n return t2;\n};\n\n// src/components/components/ComponentsProvider.tsx\nimport { c as _c60 } from \"react-compiler-runtime\";\nimport { useMemo as useMemo21 } from \"react\";\n\n// src/hooks/components/useComponents.ts\nimport { useContext as useContext17 } from \"react\";\nvar useComponents = () => {\n return useContext17(ComponentsContext);\n};\n\n// src/components/components/ComponentsProvider.tsx\nimport { jsx as _jsx96 } from \"react/jsx-runtime\";\nvar _excluded6 = [\"children\"];\nfunction _objectWithoutProperties6(e, t) {\n if (null == e) return {};\n var o, r, i = _objectWithoutPropertiesLoose6(e, t);\n if (Object.getOwnPropertySymbols) {\n var s = Object.getOwnPropertySymbols(e);\n for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);\n }\n return i;\n}\nfunction _objectWithoutPropertiesLoose6(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (e.includes(n)) continue;\n t[n] = r[n];\n }\n return t;\n}\nvar ComponentsProvider = (t0) => {\n var $ = _c60(9);\n var children;\n var rest;\n if ($[0] !== t0) {\n var _t = t0;\n ({\n children\n } = _t);\n rest = _objectWithoutProperties6(_t, _excluded6);\n _t;\n $[0] = t0;\n $[1] = children;\n $[2] = rest;\n } else {\n children = $[1];\n rest = $[2];\n }\n var prevComponents = useComponents();\n var t1;\n var t2;\n if ($[3] !== prevComponents || $[4] !== rest) {\n t2 = merge(prevComponents, rest);\n $[3] = prevComponents;\n $[4] = rest;\n $[5] = t2;\n } else {\n t2 = $[5];\n }\n t1 = t2;\n var value = t1;\n var t3;\n if ($[6] !== children || $[7] !== value) {\n t3 = /* @__PURE__ */ _jsx96(ComponentsContext.Provider, {\n value,\n children\n });\n $[6] = children;\n $[7] = value;\n $[8] = t3;\n } else {\n t3 = $[8];\n }\n return t3;\n};\n\n// src/components/assistants/AssistantProvider/index.tsx\nimport { c as _c61 } from \"react-compiler-runtime\";\nimport { jsx as _jsx97 } from \"react/jsx-runtime\";\nvar AssistantProvider = (t0) => {\n var _assistant$name;\n var $ = _c61(10);\n var {\n children\n } = t0;\n var superinterfaceContext = useSuperinterfaceContext();\n var t1;\n if ($[0] !== superinterfaceContext.variables.assistantId) {\n t1 = {\n assistantId: superinterfaceContext.variables.assistantId\n };\n $[0] = superinterfaceContext.variables.assistantId;\n $[1] = t1;\n } else {\n t1 = $[1];\n }\n var {\n assistant\n } = useAssistant(t1);\n var t2 = (_assistant$name = assistant === null || assistant === void 0 ? void 0 : assistant.name) !== null && _assistant$name !== void 0 ? _assistant$name : \"\";\n var t3 = assistant === null || assistant === void 0 ? void 0 : assistant.avatar;\n var t4;\n if ($[2] !== t3) {\n t4 = /* @__PURE__ */ _jsx97(Avatar6, {\n avatar: t3\n });\n $[2] = t3;\n $[3] = t4;\n } else {\n t4 = $[3];\n }\n var t5;\n if ($[4] !== children || $[5] !== t4) {\n t5 = /* @__PURE__ */ _jsx97(AssistantAvatarContext.Provider, {\n value: t4,\n children\n });\n $[4] = children;\n $[5] = t4;\n $[6] = t5;\n } else {\n t5 = $[6];\n }\n var t6;\n if ($[7] !== t2 || $[8] !== t5) {\n t6 = /* @__PURE__ */ _jsx97(AssistantNameContext.Provider, {\n value: t2,\n children: t5\n });\n $[7] = t2;\n $[8] = t5;\n $[9] = t6;\n } else {\n t6 = $[9];\n }\n return t6;\n};\nexport {\n AssistantAvatarContext,\n AssistantNameContext,\n AssistantProvider,\n AudioThread,\n AudioThreadDialog,\n Avatar6 as Avatar,\n ComponentsProvider,\n FunctionBase,\n FunctionComponentsContext,\n MarkdownContext,\n MarkdownProvider,\n RunStep,\n Suggestions,\n SuperinterfaceProvider,\n Thread,\n ThreadDialog,\n ThreadDialogContext,\n UserAvatarContext,\n useAssistant,\n useComponents,\n useCreateMessage,\n useIsMutatingMessage,\n useLatestMessage,\n useMarkdownContext,\n useMessageContext,\n useMessageFormContext,\n useMessages,\n useSuperinterfaceContext,\n useSuperinterfaceContext as useThreadContext,\n useThreadDialogContext\n};\n","'use client';\n\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { useRef } from 'react';\nimport { merge } from '@/lib/misc/merge';\nimport { SuperinterfaceContext } from '@/contexts/core/SuperinterfaceContext';\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var SuperinterfaceProvider = _ref => {\n var {\n children,\n baseUrl,\n variables,\n defaultOptions,\n threadIdStorageOptions\n } = _ref;\n var superinterfaceContext = useSuperinterfaceContext();\n var createMessageAbortControllerRef = useRef(null);\n var value = merge(superinterfaceContext, _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, baseUrl ? {\n baseUrl\n } : {}), variables ? {\n variables\n } : {}), defaultOptions ? {\n defaultOptions\n } : {}), threadIdStorageOptions ? {\n threadIdStorageOptions\n } : {}), {}, {\n createMessageAbortControllerRef\n }));\n return /*#__PURE__*/_jsx(SuperinterfaceContext.Provider, {\n value: value,\n children: children\n });\n};","import _ from 'lodash';\nimport { customizer } from './customizer';\n\n// @ts-ignore-next-line\nexport var merge = function merge(obj) {\n for (var _len = arguments.length, sources = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n sources[_key - 1] = arguments[_key];\n }\n return _.mergeWith(_.cloneDeep(obj), ...sources, customizer);\n};","import _ from 'lodash';\n\n// @ts-ignore-next-line\nexport var customizer = (objectValue, srcValue) => {\n if (!_.isArray(objectValue)) return;\n return srcValue;\n};","'use client';\n\nimport { createContext } from 'react';\nimport { baseUrl } from '@/lib/superinterfaceCloud/baseUrl';\nimport { cookieOptions } from '@/lib/threadIdStorage/cookieOptions';\nimport { localStorageOptions } from '@/lib/threadIdStorage/localStorageOptions';\nimport { isIframe } from '@/lib/iframes/isIframe';\nexport var SuperinterfaceContext = /*#__PURE__*/createContext({\n baseUrl,\n variables: {},\n defaultOptions: {\n queries: {},\n mutations: {}\n },\n threadIdStorageOptions: isIframe() ? localStorageOptions : cookieOptions,\n createMessageAbortControllerRef: {\n current: null\n }\n});","export var baseUrl = 'https://superinterface.ai/api/cloud';","import Cookies from 'js-cookie';\nimport { key } from '@/lib/threadIdStorage/key';\nexport var get = _ref => {\n var _Cookies$get;\n var {\n assistantId\n } = _ref;\n return (_Cookies$get = Cookies.get(key({\n assistantId\n }))) !== null && _Cookies$get !== void 0 ? _Cookies$get : null;\n};","export var key = _ref => {\n var {\n assistantId\n } = _ref;\n return \"superinterface-\".concat(assistantId, \"-threadId\");\n};","import Cookies from 'js-cookie';\nimport { key } from '@/lib/threadIdStorage/key';\nexport var set = _ref => {\n var {\n assistantId,\n threadId\n } = _ref;\n return Cookies.set(key({\n assistantId\n }), threadId);\n};","import Cookies from 'js-cookie';\nimport { key } from '@/lib/threadIdStorage/key';\nexport var remove = _ref => {\n var {\n assistantId\n } = _ref;\n return Cookies.remove(key({\n assistantId\n }));\n};","import { get } from './get';\nimport { set } from './set';\nimport { remove } from './remove';\nexport var cookieOptions = {\n get,\n set,\n remove\n};","import { key } from '@/lib/threadIdStorage/key';\nexport var get = _ref => {\n var {\n assistantId\n } = _ref;\n return window.localStorage.getItem(key({\n assistantId\n }));\n};","import { key } from '@/lib/threadIdStorage/key';\nexport var set = _ref => {\n var {\n assistantId,\n threadId\n } = _ref;\n return window.localStorage.setItem(key({\n assistantId\n }), threadId);\n};","import { key } from '@/lib/threadIdStorage/key';\nexport var remove = _ref => {\n var {\n assistantId\n } = _ref;\n return window.localStorage.removeItem(key({\n assistantId\n }));\n};","import { get } from './get';\nimport { set } from './set';\nimport { remove } from './remove';\nexport var localStorageOptions = {\n get,\n set,\n remove\n};","export var isIframe = () => {\n if (typeof window === 'undefined') return false;\n return window.self !== window.top;\n};","'use client';\n\nimport { useContext } from 'react';\nimport { SuperinterfaceContext } from '@/contexts/core/SuperinterfaceContext';\nexport var useSuperinterfaceContext = () => {\n return useContext(SuperinterfaceContext);\n};","import { Flex } from '@radix-ui/themes';\nimport { Message } from '@/components/threads/Thread/Message';\nimport { Content } from './Content';\nimport { Progress } from './Progress';\nimport { Root } from './Root';\nimport { NextPageSkeleton } from './NextPageSkeleton';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var Messages = _ref => {\n var {\n children,\n className,\n style\n } = _ref;\n return /*#__PURE__*/_jsxs(Root, {\n style: style,\n className: className,\n children: [/*#__PURE__*/_jsx(Flex, {\n flexShrink: \"0\",\n height: \"var(--space-3)\"\n }), /*#__PURE__*/_jsx(Progress, {}), children, /*#__PURE__*/_jsx(Content, {}), /*#__PURE__*/_jsx(NextPageSkeleton, {}), /*#__PURE__*/_jsx(Flex, {\n flexShrink: \"0\",\n flexGrow: \"1\",\n minHeight: \"var(--space-5)\"\n })]\n });\n};\nMessages.Root = Root;\nMessages.Message = Message;\nMessages.NextPageSkeleton = NextPageSkeleton;","import { c as _c } from \"react-compiler-runtime\";\nimport { useMemo } from 'react';\nimport { isEmpty } from 'radash';\nimport { Box } from '@radix-ui/themes';\nimport { StartingContentSkeleton } from '@/components/skeletons/StartingContentSkeleton';\nimport { RunSteps } from '@/components/runSteps/RunSteps';\nimport { useIsMutatingMessage } from '@/hooks/messages/useIsMutatingMessage';\nimport { Provider } from './Provider';\nimport { Attachments } from './Attachments';\nimport { ContentPart } from './ContentPart';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var Message = t0 => {\n var $ = _c(51);\n var {\n message,\n className,\n style\n } = t0;\n var t1;\n bb0: {\n if (!message.runSteps.length) {\n var _t;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t = [[], []];\n $[0] = _t;\n } else {\n _t = $[0];\n }\n t1 = _t;\n break bb0;\n }\n var _t2;\n if ($[1] !== message.id) {\n _t2 = runStep => {\n if (runStep.step_details.type !== \"message_creation\") {\n return;\n }\n return runStep.step_details.message_creation.message_id === message.id;\n };\n $[1] = message.id;\n $[2] = _t2;\n } else {\n _t2 = $[2];\n }\n var messageCreationRunStepIndex = message.runSteps.findIndex(_t2);\n var _t3;\n if ($[3] !== message.runSteps || $[4] !== messageCreationRunStepIndex) {\n var nextRunStepIndex = message.runSteps.slice(0, messageCreationRunStepIndex).findLastIndex(_temp);\n if (nextRunStepIndex === -1) {\n nextRunStepIndex = 0;\n }\n _t3 = message.runSteps.slice(nextRunStepIndex, messageCreationRunStepIndex);\n $[3] = message.runSteps;\n $[4] = messageCreationRunStepIndex;\n $[5] = _t3;\n } else {\n _t3 = $[5];\n }\n var laterRunSteps = _t3;\n var _t4;\n if ($[6] !== message.runSteps || $[7] !== messageCreationRunStepIndex) {\n _t4 = message.runSteps.slice(messageCreationRunStepIndex + 1).findIndex(_temp2);\n $[6] = message.runSteps;\n $[7] = messageCreationRunStepIndex;\n $[8] = _t4;\n } else {\n _t4 = $[8];\n }\n var prevRunStepIndex = _t4;\n var olderRunSteps;\n if (prevRunStepIndex === -1) {\n var _t5;\n if ($[9] !== message.runSteps || $[10] !== messageCreationRunStepIndex) {\n _t5 = message.runSteps.slice(messageCreationRunStepIndex + 1);\n $[9] = message.runSteps;\n $[10] = messageCreationRunStepIndex;\n $[11] = _t5;\n } else {\n _t5 = $[11];\n }\n olderRunSteps = _t5;\n } else {\n var _t6;\n if ($[12] !== message.runSteps || $[13] !== messageCreationRunStepIndex || $[14] !== prevRunStepIndex) {\n _t6 = message.runSteps.slice(messageCreationRunStepIndex + 1, messageCreationRunStepIndex + prevRunStepIndex);\n $[12] = message.runSteps;\n $[13] = messageCreationRunStepIndex;\n $[14] = prevRunStepIndex;\n $[15] = _t6;\n } else {\n _t6 = $[15];\n }\n olderRunSteps = _t6;\n }\n var _t7;\n if ($[16] !== laterRunSteps || $[17] !== olderRunSteps) {\n _t7 = [olderRunSteps, laterRunSteps];\n $[16] = laterRunSteps;\n $[17] = olderRunSteps;\n $[18] = _t7;\n } else {\n _t7 = $[18];\n }\n t1 = _t7;\n }\n var [olderRunSteps_0, laterRunSteps_0] = t1;\n var isMutatingMessage = useIsMutatingMessage();\n var t2;\n bb1: {\n if (!isMutatingMessage) {\n t2 = false;\n break bb1;\n }\n if (message.status === \"in_progress\") {\n t2 = true;\n break bb1;\n }\n var _t8;\n if ($[19] !== message.runSteps) {\n _t8 = message.runSteps.some(_temp3);\n $[19] = message.runSteps;\n $[20] = _t8;\n } else {\n _t8 = $[20];\n }\n t2 = _t8;\n }\n var isInProgress = t2;\n var t3;\n if ($[21] !== message) {\n t3 = {\n message\n };\n $[21] = message;\n $[22] = t3;\n } else {\n t3 = $[22];\n }\n var t4;\n if ($[23] !== olderRunSteps_0) {\n t4 = /*#__PURE__*/_jsx(RunSteps, {\n runSteps: olderRunSteps_0\n });\n $[23] = olderRunSteps_0;\n $[24] = t4;\n } else {\n t4 = $[24];\n }\n var t5;\n if ($[25] !== message) {\n t5 = /*#__PURE__*/_jsx(Attachments, {\n message: message\n });\n $[25] = message;\n $[26] = t5;\n } else {\n t5 = $[26];\n }\n var t6;\n if ($[27] !== message.content) {\n t6 = message.content.map(_temp4);\n $[27] = message.content;\n $[28] = t6;\n } else {\n t6 = $[28];\n }\n var t7;\n if ($[29] !== isInProgress || $[30] !== laterRunSteps_0) {\n t7 = isInProgress && isEmpty(laterRunSteps_0) && /*#__PURE__*/_jsx(StartingContentSkeleton, {});\n $[29] = isInProgress;\n $[30] = laterRunSteps_0;\n $[31] = t7;\n } else {\n t7 = $[31];\n }\n var t8;\n if ($[32] !== t5 || $[33] !== t6 || $[34] !== t7) {\n t8 = /*#__PURE__*/_jsxs(Box, {\n children: [t5, t6, t7]\n });\n $[32] = t5;\n $[33] = t6;\n $[34] = t7;\n $[35] = t8;\n } else {\n t8 = $[35];\n }\n var t9;\n if ($[36] !== laterRunSteps_0) {\n t9 = /*#__PURE__*/_jsx(RunSteps, {\n runSteps: laterRunSteps_0\n });\n $[36] = laterRunSteps_0;\n $[37] = t9;\n } else {\n t9 = $[37];\n }\n var t10;\n if ($[38] !== isInProgress || $[39] !== laterRunSteps_0) {\n t10 = isInProgress && !isEmpty(laterRunSteps_0) && /*#__PURE__*/_jsx(Box, {\n children: /*#__PURE__*/_jsx(StartingContentSkeleton, {})\n });\n $[38] = isInProgress;\n $[39] = laterRunSteps_0;\n $[40] = t10;\n } else {\n t10 = $[40];\n }\n var t11;\n if ($[41] !== className || $[42] !== style || $[43] !== t10 || $[44] !== t4 || $[45] !== t8 || $[46] !== t9) {\n t11 = /*#__PURE__*/_jsxs(Box, {\n className: className,\n style: style,\n children: [t4, t8, t9, t10]\n });\n $[41] = className;\n $[42] = style;\n $[43] = t10;\n $[44] = t4;\n $[45] = t8;\n $[46] = t9;\n $[47] = t11;\n } else {\n t11 = $[47];\n }\n var t12;\n if ($[48] !== t11 || $[49] !== t3) {\n t12 = /*#__PURE__*/_jsx(Provider, {\n value: t3,\n children: t11\n });\n $[48] = t11;\n $[49] = t3;\n $[50] = t12;\n } else {\n t12 = $[50];\n }\n return t12;\n};\nfunction _temp(runStep_0) {\n return runStep_0.step_details.type === \"message_creation\";\n}\nfunction _temp2(runStep_1) {\n return runStep_1.step_details.type === \"message_creation\";\n}\nfunction _temp3(rs) {\n return rs.status === \"in_progress\";\n}\nfunction _temp4(content, index) {\n return /*#__PURE__*/_jsx(ContentPart, {\n content: content\n }, index);\n}","import { Skeleton } from '@radix-ui/themes';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var StartingContentSkeleton = () => /*#__PURE__*/_jsx(Skeleton, {\n loading: true,\n mt: \"1\",\n height: \"var(--space-4)\",\n width: \"var(--space-4)\",\n style: {\n borderRadius: 'var(--radius-6)',\n flexShrink: 0\n }\n});","import { c as _c } from \"react-compiler-runtime\";\nimport { Flex } from '@radix-ui/themes';\nimport { useContext } from 'react';\nimport { ComponentsContext } from '@/contexts/components/ComponentsContext';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var RunSteps = t0 => {\n var $ = _c(7);\n var {\n runSteps\n } = t0;\n var componentsContext = useContext(ComponentsContext);\n var Component = componentsContext.components.RunStep;\n var t1;\n if ($[0] !== Component || $[1] !== runSteps) {\n var _t;\n if ($[3] !== Component) {\n _t = runStep => /*#__PURE__*/_jsx(Component, {\n runStep: runStep\n }, runStep.id);\n $[3] = Component;\n $[4] = _t;\n } else {\n _t = $[4];\n }\n t1 = runSteps.map(_t);\n $[0] = Component;\n $[1] = runSteps;\n $[2] = t1;\n } else {\n t1 = $[2];\n }\n var t2;\n if ($[5] !== t1) {\n t2 = /*#__PURE__*/_jsx(Flex, {\n direction: \"column-reverse\",\n children: t1\n });\n $[5] = t1;\n $[6] = t2;\n } else {\n t2 = $[6];\n }\n return t2;\n};","'use client';\n\nimport { createContext } from 'react';\nimport { RunStep } from '@/components/runSteps/RunStep';\nexport var ComponentsContext = /*#__PURE__*/createContext({\n components: {\n RunStep\n }\n});","import { c as _c } from \"react-compiler-runtime\";\nimport { ToolCalls } from './ToolCalls';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var RunStep = t0 => {\n var $ = _c(4);\n var {\n runStep,\n className,\n style\n } = t0;\n if (runStep.step_details.type === \"tool_calls\") {\n var t1;\n if ($[0] !== className || $[1] !== runStep || $[2] !== style) {\n t1 = /*#__PURE__*/_jsx(ToolCalls, {\n className: className,\n style: style,\n stepDetails: runStep.step_details,\n runStep: runStep\n });\n $[0] = className;\n $[1] = runStep;\n $[2] = style;\n $[3] = t1;\n } else {\n t1 = $[3];\n }\n return t1;\n }\n return null;\n};\nRunStep.ToolCalls = ToolCalls;","import { Flex } from '@radix-ui/themes';\nimport { ToolCall } from './ToolCall';\nimport { Starting } from './Starting';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nvar Root = _ref => {\n var {\n children,\n className,\n style\n } = _ref;\n return /*#__PURE__*/_jsx(Flex, {\n direction: \"column\",\n className: className,\n style: style,\n children: children\n });\n};\nexport var ToolCalls = _ref2 => {\n var {\n stepDetails,\n runStep,\n className,\n style\n } = _ref2;\n return /*#__PURE__*/_jsxs(Root, {\n className: className,\n style: style,\n children: [!stepDetails.tool_calls.length && /*#__PURE__*/_jsx(Starting, {}), stepDetails.tool_calls.map(toolCall => /*#__PURE__*/_jsx(ToolCall, {\n toolCall: toolCall,\n runStep: runStep\n }, toolCall.id))]\n });\n};\nToolCalls.Root = Root;\nToolCalls.Starting = Starting;\nToolCalls.ToolCall = ToolCall;","import { c as _c } from \"react-compiler-runtime\";\nimport { Fn } from './Fn';\nimport { CodeInterpreter } from './CodeInterpreter';\nimport { FileSearch } from './FileSearch';\nimport { Fallback } from './Fallback';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var ToolCall = t0 => {\n var $ = _c(12);\n var {\n toolCall,\n runStep\n } = t0;\n if (toolCall.type === \"function\") {\n var _t;\n if ($[0] !== runStep || $[1] !== toolCall.function) {\n _t = /*#__PURE__*/_jsx(Fn, {\n fn: toolCall.function,\n runStep: runStep\n });\n $[0] = runStep;\n $[1] = toolCall.function;\n $[2] = _t;\n } else {\n _t = $[2];\n }\n return _t;\n }\n if (toolCall.type === \"code_interpreter\") {\n var _t2;\n if ($[3] !== runStep || $[4] !== toolCall.code_interpreter) {\n _t2 = /*#__PURE__*/_jsx(CodeInterpreter, {\n codeInterpreter: toolCall.code_interpreter,\n runStep: runStep\n });\n $[3] = runStep;\n $[4] = toolCall.code_interpreter;\n $[5] = _t2;\n } else {\n _t2 = $[5];\n }\n return _t2;\n }\n if (toolCall.type === \"file_search\") {\n var _t3;\n if ($[6] !== runStep || $[7] !== toolCall) {\n _t3 = /*#__PURE__*/_jsx(FileSearch, {\n toolCall: toolCall,\n runStep: runStep\n });\n $[6] = runStep;\n $[7] = toolCall;\n $[8] = _t3;\n } else {\n _t3 = $[8];\n }\n return _t3;\n }\n var t1;\n if ($[9] !== runStep || $[10] !== toolCall) {\n t1 = /*#__PURE__*/_jsx(Fallback, {\n toolCall: toolCall,\n runStep: runStep\n });\n $[9] = runStep;\n $[10] = toolCall;\n $[11] = t1;\n } else {\n t1 = $[11];\n }\n return t1;\n};","'use client';\n\nimport { c as _c } from \"react-compiler-runtime\";\nimport { useContext } from 'react';\nimport { FunctionComponentsContext } from '@/contexts/functions/FunctionComponentsContext';\nimport { DefaultFunction } from './DefaultFunction';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var Fn = t0 => {\n var $ = _c(4);\n var {\n fn,\n runStep\n } = t0;\n var functionComponentsContext = useContext(FunctionComponentsContext);\n var Component = functionComponentsContext[fn.name] || DefaultFunction;\n var t1;\n if ($[0] !== Component || $[1] !== fn || $[2] !== runStep) {\n t1 = /*#__PURE__*/_jsx(Component, {\n fn: fn,\n runStep: runStep\n });\n $[0] = Component;\n $[1] = fn;\n $[2] = runStep;\n $[3] = t1;\n } else {\n t1 = $[3];\n }\n return t1;\n};","'use client';\n\nimport { createContext } from 'react';\nexport var FunctionComponentsContext = /*#__PURE__*/createContext({});","import { Popover, Flex } from '@radix-ui/themes';\nimport { ToolCallBase } from '@/components/toolCalls/ToolCallBase';\nimport { ToolCallTitle } from '@/components/toolCalls/ToolCallBase/ToolCallTitle';\nimport { ToolCallIcon } from '@/components/toolCalls/ToolCallBase/ToolCallIcon';\nimport { Content } from './Content';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var FunctionBase = _ref => {\n var {\n fn,\n runStep,\n title\n } = _ref;\n return /*#__PURE__*/_jsxs(Popover.Root, {\n children: [/*#__PURE__*/_jsx(Popover.Trigger, {\n children: /*#__PURE__*/_jsx(Flex, {\n children: /*#__PURE__*/_jsxs(ToolCallBase, {\n children: [/*#__PURE__*/_jsx(ToolCallIcon, {\n runStep: runStep\n }), /*#__PURE__*/_jsx(ToolCallTitle, {\n children: title\n })]\n })\n })\n }), /*#__PURE__*/_jsx(Popover.Content, {\n style: {\n maxHeight: '200px'\n },\n children: /*#__PURE__*/_jsx(Content, {\n fn: fn\n })\n })]\n });\n};","import { Flex, Button } from '@radix-ui/themes';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var ToolCallBase = _ref => {\n var {\n children\n } = _ref;\n return /*#__PURE__*/_jsx(Flex, {\n py: \"1\",\n ml: \"-2\",\n children: /*#__PURE__*/_jsx(Button, {\n size: \"1\",\n color: \"gold\",\n variant: \"outline\",\n style: {\n boxShadow: 'none'\n },\n children: children\n })\n });\n};","import { Text } from '@radix-ui/themes';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var ToolCallTitle = _ref => {\n var {\n children\n } = _ref;\n return /*#__PURE__*/_jsx(Text, {\n weight: \"regular\",\n children: children\n });\n};","import { c as _c } from \"react-compiler-runtime\";\nimport { CircleIcon, CircleBackslashIcon, CheckCircledIcon } from '@radix-ui/react-icons';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var ToolCallIcon = t0 => {\n var $ = _c(3);\n var {\n runStep\n } = t0;\n if (runStep.completed_at) {\n var t1;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t1 = /*#__PURE__*/_jsx(CheckCircledIcon, {});\n $[0] = t1;\n } else {\n t1 = $[0];\n }\n return t1;\n } else {\n if (runStep.cancelled_at || runStep.failed_at || runStep.status === \"expired\") {\n var _t;\n if ($[1] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t = /*#__PURE__*/_jsx(CircleBackslashIcon, {});\n $[1] = _t;\n } else {\n _t = $[1];\n }\n return _t;\n } else {\n var _t2;\n if ($[2] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t2 = /*#__PURE__*/_jsx(CircleIcon, {});\n $[2] = _t2;\n } else {\n _t2 = $[2];\n }\n return _t2;\n }\n }\n};","import { c as _c } from \"react-compiler-runtime\";\nimport { useMemo } from 'react';\nimport { Code, Box } from '@radix-ui/themes';\nimport { formattedJsonOrRaw } from './lib/formattedJsonOrRaw';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var Content = t0 => {\n var $ = _c(12);\n var {\n fn\n } = t0;\n var t1;\n var t2;\n if ($[0] !== fn.arguments) {\n t2 = formattedJsonOrRaw({\n value: fn.arguments\n });\n $[0] = fn.arguments;\n $[1] = t2;\n } else {\n t2 = $[1];\n }\n t1 = t2;\n var args = t1;\n var t3;\n var t4;\n if ($[2] !== fn.output) {\n t4 = formattedJsonOrRaw({\n value: fn.output\n });\n $[2] = fn.output;\n $[3] = t4;\n } else {\n t4 = $[3];\n }\n t3 = t4;\n var output = t3;\n var t5;\n if ($[4] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t5 = {\n whiteSpace: \"pre\",\n wordBreak: \"break-word\"\n };\n $[4] = t5;\n } else {\n t5 = $[4];\n }\n var t6;\n if ($[5] !== args) {\n t6 = args && /*#__PURE__*/_jsx(Box, {\n children: args\n });\n $[5] = args;\n $[6] = t6;\n } else {\n t6 = $[6];\n }\n var t7;\n if ($[7] !== output) {\n t7 = output && /*#__PURE__*/_jsx(Box, {\n children: output\n });\n $[7] = output;\n $[8] = t7;\n } else {\n t7 = $[8];\n }\n var t8;\n if ($[9] !== t6 || $[10] !== t7) {\n t8 = /*#__PURE__*/_jsxs(Code, {\n variant: \"ghost\",\n color: \"gold\",\n style: t5,\n children: [t6, t7]\n });\n $[9] = t6;\n $[10] = t7;\n $[11] = t8;\n } else {\n t8 = $[11];\n }\n return t8;\n};","export var formattedJsonOrRaw = _ref => {\n var {\n value\n } = _ref;\n if (!value) {\n return null;\n }\n try {\n return JSON.stringify(JSON.parse(value), null, 2);\n } catch (error) {\n if (typeof value === 'string') {\n return value;\n } else {\n return JSON.stringify(value, null, 2);\n }\n }\n};","export var title = _ref => {\n var {\n fn,\n runStep\n } = _ref;\n if (runStep.completed_at) {\n return \"Finished \".concat(fn.name);\n } else if (runStep.cancelled_at) {\n return \"Cancelled \".concat(fn.name);\n } else {\n return \"Calling \".concat(fn.name);\n }\n};","import { FunctionBase } from '@/components/functions/FunctionBase';\nimport { title } from './lib/title';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var DefaultFunction = _ref => {\n var {\n fn,\n runStep\n } = _ref;\n return /*#__PURE__*/_jsx(FunctionBase, {\n fn: fn,\n runStep: runStep,\n title: title({\n runStep,\n fn\n })\n });\n};","import { Popover, Flex } from '@radix-ui/themes';\nimport { ToolCallBase } from '@/components/toolCalls/ToolCallBase';\nimport { ToolCallTitle } from '@/components/toolCalls/ToolCallBase/ToolCallTitle';\nimport { ToolCallIcon } from '@/components/toolCalls/ToolCallBase/ToolCallIcon';\nimport { Content } from './Content';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var CodeInterpreter = _ref => {\n var {\n codeInterpreter,\n runStep\n } = _ref;\n return /*#__PURE__*/_jsxs(Popover.Root, {\n children: [/*#__PURE__*/_jsx(Popover.Trigger, {\n children: /*#__PURE__*/_jsx(Flex, {\n children: /*#__PURE__*/_jsxs(ToolCallBase, {\n children: [/*#__PURE__*/_jsx(ToolCallIcon, {\n runStep: runStep\n }), /*#__PURE__*/_jsx(ToolCallTitle, {\n children: \"Using code interpreter\"\n })]\n })\n })\n }), /*#__PURE__*/_jsx(Popover.Content, {\n maxHeight: \"200px\",\n children: /*#__PURE__*/_jsx(Content, {\n codeInterpreter: codeInterpreter\n })\n })]\n });\n};","import { c as _c } from \"react-compiler-runtime\";\nimport { Code, Box } from '@radix-ui/themes';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var Content = t0 => {\n var $ = _c(10);\n var {\n codeInterpreter\n } = t0;\n if (!codeInterpreter.input) {\n return null;\n }\n var t1;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t1 = {\n whiteSpace: \"pre\",\n wordBreak: \"break-word\"\n };\n $[0] = t1;\n } else {\n t1 = $[0];\n }\n var t2;\n if ($[1] !== codeInterpreter.input) {\n t2 = /*#__PURE__*/_jsx(Box, {\n children: codeInterpreter.input\n });\n $[1] = codeInterpreter.input;\n $[2] = t2;\n } else {\n t2 = $[2];\n }\n var t3;\n if ($[3] !== codeInterpreter.outputs) {\n t3 = JSON.stringify(codeInterpreter.outputs);\n $[3] = codeInterpreter.outputs;\n $[4] = t3;\n } else {\n t3 = $[4];\n }\n var t4;\n if ($[5] !== t3) {\n t4 = /*#__PURE__*/_jsx(Box, {\n children: t3\n });\n $[5] = t3;\n $[6] = t4;\n } else {\n t4 = $[6];\n }\n var t5;\n if ($[7] !== t2 || $[8] !== t4) {\n t5 = /*#__PURE__*/_jsxs(Code, {\n variant: \"ghost\",\n color: \"gold\",\n style: t1,\n children: [t2, t4]\n });\n $[7] = t2;\n $[8] = t4;\n $[9] = t5;\n } else {\n t5 = $[9];\n }\n return t5;\n};","import { ToolCallBase } from '@/components/toolCalls/ToolCallBase';\nimport { ToolCallTitle } from '@/components/toolCalls/ToolCallBase/ToolCallTitle';\nimport { ToolCallIcon } from '@/components/toolCalls/ToolCallBase/ToolCallIcon';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var FileSearch = _ref => {\n var {\n runStep,\n toolCall\n } = _ref;\n return /*#__PURE__*/_jsxs(ToolCallBase, {\n children: [/*#__PURE__*/_jsx(ToolCallIcon, {\n runStep: runStep\n }), /*#__PURE__*/_jsx(ToolCallTitle, {\n children: \"Searching files\"\n })]\n });\n};","import { ToolCallBase } from '@/components/toolCalls/ToolCallBase';\nimport { ToolCallTitle } from '@/components/toolCalls/ToolCallBase/ToolCallTitle';\nimport { ToolCallIcon } from '@/components/toolCalls/ToolCallBase/ToolCallIcon';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var Fallback = _ref => {\n var {\n runStep,\n toolCall\n } = _ref;\n return /*#__PURE__*/_jsxs(ToolCallBase, {\n children: [/*#__PURE__*/_jsx(ToolCallIcon, {\n runStep: runStep\n }), /*#__PURE__*/_jsxs(ToolCallTitle, {\n children: [\"Using tool: \", toolCall.type]\n })]\n });\n};","import { Popover, Text } from '@radix-ui/themes';\nimport { CircleIcon } from '@radix-ui/react-icons';\nimport { ToolCallBase } from '@/components/toolCalls/ToolCallBase';\nimport { ToolCallTitle } from '@/components/toolCalls/ToolCallBase/ToolCallTitle';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var Starting = () => /*#__PURE__*/_jsxs(Popover.Root, {\n children: [/*#__PURE__*/_jsxs(ToolCallBase, {\n children: [/*#__PURE__*/_jsx(CircleIcon, {}), /*#__PURE__*/_jsx(ToolCallTitle, {\n children: \"Starting actions\"\n })]\n }), /*#__PURE__*/_jsx(Popover.Content, {\n style: {\n maxHeight: '500px'\n },\n children: /*#__PURE__*/_jsx(Text, {\n children: \"Getting ready to connect to domain API\"\n })\n })]\n});","import { c as _c } from \"react-compiler-runtime\";\nimport { useMemo } from 'react';\nimport { useIsMutating } from '@tanstack/react-query';\nimport { useThreadContext } from '@/hooks/threads/useThreadContext';\nexport var useIsMutatingMessage = () => {\n var $ = _c(2);\n var threadContext = useThreadContext();\n var t0;\n if ($[0] !== threadContext.variables) {\n t0 = {\n mutationKey: [\"createMessage\", threadContext.variables]\n };\n $[0] = threadContext.variables;\n $[1] = t0;\n } else {\n t0 = $[1];\n }\n var mutatingMessagesCount = useIsMutating(t0);\n var t1;\n t1 = mutatingMessagesCount > 0;\n var isMutatingMessage = t1;\n return isMutatingMessage;\n};","'use client';\n\nimport { createContext } from 'react';\nexport var MessageContext = /*#__PURE__*/createContext({\n message: null\n});","import { MessageContext } from '@/contexts/messages/MessageContext';\nexport var Provider = MessageContext.Provider;","import { c as _c } from \"react-compiler-runtime\";\nimport { Flex, Badge } from '@radix-ui/themes';\nimport { FileIcon } from '@radix-ui/react-icons';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var Attachments = t0 => {\n var _message$attachments;\n var $ = _c(4);\n var {\n message\n } = t0;\n if (!((_message$attachments = message.attachments) !== null && _message$attachments !== void 0 && _message$attachments.length)) {\n return null;\n }\n var t1;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t1 = /*#__PURE__*/_jsx(FileIcon, {});\n $[0] = t1;\n } else {\n t1 = $[0];\n }\n var t2 = message.attachments.length > 1 ? \"s\" : \"\";\n var t3;\n if ($[1] !== message.attachments.length || $[2] !== t2) {\n t3 = /*#__PURE__*/_jsx(Flex, {\n align: \"start\",\n pb: \"1\",\n children: /*#__PURE__*/_jsxs(Badge, {\n color: \"gray\",\n variant: \"surface\",\n children: [t1, message.attachments.length, \" file\", t2]\n })\n });\n $[1] = message.attachments.length;\n $[2] = t2;\n $[3] = t3;\n } else {\n t3 = $[3];\n }\n return t3;\n};","import { c as _c } from \"react-compiler-runtime\";\nimport { TextContent } from './TextContent';\nimport { ImageFileContent } from './ImageFileContent';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var ContentPart = t0 => {\n var $ = _c(4);\n var {\n content\n } = t0;\n if (content.type === \"text\") {\n var t1;\n if ($[0] !== content) {\n t1 = /*#__PURE__*/_jsx(TextContent, {\n content: content\n });\n $[0] = content;\n $[1] = t1;\n } else {\n t1 = $[1];\n }\n return t1;\n }\n if (content.type === \"image_file\") {\n var _t;\n if ($[2] !== content) {\n _t = /*#__PURE__*/_jsx(ImageFileContent, {\n content: content\n });\n $[2] = content;\n $[3] = _t;\n } else {\n _t = $[3];\n }\n return _t;\n }\n return null;\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }\nfunction _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"next\", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"throw\", n); } _next(void 0); }); }; }\nimport { c as _c } from \"react-compiler-runtime\";\nimport React, { useState, useEffect, useMemo } from 'react';\nimport { Badge } from '@radix-ui/themes';\nimport { compile } from '@mdx-js/mdx';\nimport { MDXProvider, useMDXComponents } from '@mdx-js/react';\nimport * as runtime from 'react/jsx-runtime';\nimport { recmaFallbackComponentPlugin } from '@/lib/recma/recmaFallbackComponentPlugin';\nimport { useMarkdownContext } from '@/hooks/markdown/useMarkdownContext';\nimport { ErrorBoundary } from 'react-error-boundary';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nvar evaluate = /*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator(function* (_ref) {\n var {\n code\n } = _ref;\n var fn = new Function('runtime', 'useMDXComponents', code);\n return fn(_objectSpread(_objectSpread({}, runtime), {}, {\n useMDXComponents\n }));\n });\n return function evaluate(_x) {\n return _ref2.apply(this, arguments);\n };\n}();\nexport var TextContent = t0 => {\n var $ = _c(13);\n var {\n content\n } = t0;\n var {\n getRemarkPlugins,\n components\n } = useMarkdownContext();\n var t1;\n var t2;\n if ($[0] !== content || $[1] !== getRemarkPlugins) {\n t2 = getRemarkPlugins({\n content\n });\n $[0] = content;\n $[1] = getRemarkPlugins;\n $[2] = t2;\n } else {\n t2 = $[2];\n }\n t1 = t2;\n var remarkPlugins = t1;\n var [MDXComponent, setMDXComponent] = useState(null);\n var t3;\n var t4;\n if ($[3] !== content || $[4] !== remarkPlugins) {\n t3 = () => {\n var compileMDX = /*#__PURE__*/function () {\n var _ref3 = _asyncToGenerator(function* () {\n ;\n try {\n var compiled = yield compile(content.text.value, {\n outputFormat: \"function-body\",\n remarkPlugins,\n recmaPlugins: [recmaFallbackComponentPlugin],\n providerImportSource: \"@mdx-js/react\"\n });\n var code = String(compiled);\n console.log(code);\n var module = yield evaluate({\n code\n });\n var {\n default: MDXContent\n } = module;\n setMDXComponent(() => MDXContent);\n } catch (t5) {\n var error = t5;\n }\n });\n return function compileMDX() {\n return _ref3.apply(this, arguments);\n };\n }();\n compileMDX();\n };\n t4 = [content, remarkPlugins];\n $[3] = content;\n $[4] = remarkPlugins;\n $[5] = t3;\n $[6] = t4;\n } else {\n t3 = $[5];\n t4 = $[6];\n }\n useEffect(t3, t4);\n if (!MDXComponent) {\n return content.text.value;\n }\n var t5;\n if ($[7] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t5 = /*#__PURE__*/_jsx(Badge, {\n color: \"red\",\n mb: \"2\",\n children: \"Could not render message.\"\n });\n $[7] = t5;\n } else {\n t5 = $[7];\n }\n var t6;\n if ($[8] !== MDXComponent) {\n t6 = /*#__PURE__*/_jsx(MDXComponent, {});\n $[8] = MDXComponent;\n $[9] = t6;\n } else {\n t6 = $[9];\n }\n var t7;\n if ($[10] !== components || $[11] !== t6) {\n t7 = /*#__PURE__*/_jsx(ErrorBoundary, {\n fallback: t5,\n children: /*#__PURE__*/_jsx(MDXProvider, {\n components: components,\n children: t6\n })\n });\n $[10] = components;\n $[11] = t6;\n $[12] = t7;\n } else {\n t7 = $[12];\n }\n return t7;\n};","import { visit, CONTINUE, SKIP } from 'estree-util-visit';\nexport var recmaFallbackComponentPlugin = () => {\n return tree => {\n // Step 1: Change variable declarations from 'const' to 'let'\n visit(tree, node => {\n if (node.type === 'VariableDeclaration' && node.kind === 'const') {\n var varDecl = node;\n for (var declarator of varDecl.declarations) {\n var _declarator$init, _declarator$init2;\n // Check for both _components and direct component destructuring patterns\n if (declarator.id.type === 'ObjectPattern' && ((_declarator$init = declarator.init) === null || _declarator$init === void 0 ? void 0 : _declarator$init.type) === 'Identifier' && declarator.init.name === '_components' || declarator.id.type === 'ObjectPattern' && ((_declarator$init2 = declarator.init) === null || _declarator$init2 === void 0 ? void 0 : _declarator$init2.type) === 'ObjectExpression') {\n varDecl.kind = 'let';\n return SKIP;\n }\n }\n }\n return CONTINUE;\n });\n\n // Step 2: Modify the _missingMdxReference function\n visit(tree, node => {\n var _node$id;\n if (node.type === 'FunctionDeclaration' && ((_node$id = node.id) === null || _node$id === void 0 ? void 0 : _node$id.type) === 'Identifier' && node.id.name === '_missingMdxReference') {\n var funcNode = node;\n funcNode.body = {\n type: 'BlockStatement',\n body: [{\n type: 'IfStatement',\n test: {\n type: 'Identifier',\n name: 'component'\n },\n consequent: {\n type: 'ReturnStatement',\n argument: {\n type: 'FunctionExpression',\n id: null,\n params: [{\n type: 'Identifier',\n name: 'props'\n }],\n body: {\n type: 'BlockStatement',\n body: [{\n type: 'ReturnStatement',\n argument: {\n type: 'BinaryExpression',\n operator: '+',\n left: {\n type: 'BinaryExpression',\n operator: '+',\n left: {\n type: 'Literal',\n value: '<'\n },\n right: {\n type: 'Identifier',\n name: 'id'\n }\n },\n right: {\n type: 'BinaryExpression',\n operator: '+',\n left: {\n type: 'Literal',\n value: '></'\n },\n right: {\n type: 'BinaryExpression',\n operator: '+',\n left: {\n type: 'Identifier',\n name: 'id'\n },\n right: {\n type: 'Literal',\n value: '>'\n }\n }\n }\n }\n }]\n },\n generator: false,\n async: false\n }\n },\n alternate: null\n }]\n };\n return SKIP;\n }\n return CONTINUE;\n });\n\n // Step 3: Modify the if statements to assign the missing component\n visit(tree, node => {\n if (node.type === 'IfStatement') {\n var ifNode = node;\n if (ifNode.test.type === 'UnaryExpression' && ifNode.test.operator === '!' && ifNode.test.argument.type === 'Identifier') {\n var componentName = ifNode.test.argument.name;\n if (ifNode.consequent.type === 'ExpressionStatement' && ifNode.consequent.expression.type === 'CallExpression' && ifNode.consequent.expression.callee.type === 'Identifier' && ifNode.consequent.expression.callee.name === '_missingMdxReference') {\n // Create the assignment expression\n var assignmentExpr = {\n type: 'AssignmentExpression',\n operator: '=',\n left: {\n type: 'Identifier',\n name: componentName\n },\n right: ifNode.consequent.expression\n };\n ifNode.consequent = {\n type: 'ExpressionStatement',\n expression: assignmentExpr\n };\n return SKIP;\n }\n }\n }\n return CONTINUE;\n });\n };\n};","import { useContext } from 'react';\nimport { MarkdownContext } from '@/contexts/markdown/MarkdownContext';\nexport var useMarkdownContext = () => {\n return useContext(MarkdownContext);\n};","'use client';\n\nimport { createContext } from 'react';\nimport { components } from './lib/components';\nimport { getRemarkPlugins } from './lib/getRemarkPlugins';\nexport var MarkdownContext = /*#__PURE__*/createContext({\n components,\n getRemarkPlugins\n});","var _excluded = [\"width\"];\nfunction _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var s = Object.getOwnPropertySymbols(e); for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }\nfunction _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (e.includes(n)) continue; t[n] = r[n]; } return t; }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { Heading, Table } from '@radix-ui/themes';\nimport { Paragraph } from './Paragraph';\nimport { Link } from './Link';\nimport { UnorderedList } from './UnorderedList';\nimport { OrderedList } from './OrderedList';\nimport { ListItem } from './ListItem';\nimport { Strong } from './Strong';\nimport { Pre } from './Pre';\nimport { Code } from './Code';\nimport { Img } from './Img';\nimport { Annotation } from './Annotation';\nimport { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var components = {\n p: Paragraph,\n a: Link,\n strong: Strong,\n ul: UnorderedList,\n ol: OrderedList,\n li: ListItem,\n pre: Pre,\n code: Code,\n img: Img,\n annotation: Annotation,\n h1: props => /*#__PURE__*/_jsx(Heading, {\n as: \"h1\",\n children: props.children\n }),\n h2: props => /*#__PURE__*/_jsx(Heading, {\n as: \"h2\",\n size: \"5\",\n children: props.children\n }),\n h3: props => /*#__PURE__*/_jsx(Heading, {\n as: \"h3\",\n size: \"4\",\n children: props.children\n }),\n h4: props => /*#__PURE__*/_jsx(Heading, {\n as: \"h4\",\n size: \"3\",\n children: props.children\n }),\n h5: props => /*#__PURE__*/_jsx(Heading, {\n as: \"h5\",\n size: \"3\",\n children: props.children\n }),\n h6: props => /*#__PURE__*/_jsx(Heading, {\n as: \"h6\",\n size: \"3\",\n children: props.children\n }),\n table: props => /*#__PURE__*/_jsxs(_Fragment, {\n children: [/*#__PURE__*/_jsx(\"style\", {\n children: \".rt-TableRootTable { overflow: inherit; }\"\n }), /*#__PURE__*/_jsx(Table.Root, _objectSpread(_objectSpread({}, props), {}, {\n variant: \"surface\",\n mb: \"3\"\n }))]\n }),\n thead: props => /*#__PURE__*/_jsx(Table.Header, _objectSpread({}, props)),\n tbody: props => /*#__PURE__*/_jsx(Table.Body, _objectSpread({}, props)),\n tr: props => /*#__PURE__*/_jsx(Table.Row, _objectSpread({}, props)),\n td: _ref => {\n var {\n width\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/_jsx(Table.Cell, _objectSpread(_objectSpread({}, rest), {}, {\n width: width\n }));\n },\n th: props => /*#__PURE__*/_jsx(Table.ColumnHeaderCell, _objectSpread({}, props))\n};","import { Box, Text } from '@radix-ui/themes';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var Paragraph = _ref => {\n var {\n children\n } = _ref;\n return /*#__PURE__*/_jsx(Box, {\n pb: \"3\",\n children: /*#__PURE__*/_jsx(Text, {\n size: \"3\",\n style: {\n whiteSpace: 'pre-line',\n wordBreak: 'break-word'\n },\n children: children\n })\n });\n};","import { Link as RadixLink } from '@radix-ui/themes';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var Link = _ref => {\n var {\n children,\n href,\n download,\n target = '_blank'\n } = _ref;\n return /*#__PURE__*/_jsx(RadixLink, {\n href: href,\n target: target,\n download: download,\n children: children\n });\n};","import { Box } from '@radix-ui/themes';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var UnorderedList = _ref => {\n var {\n children\n } = _ref;\n return /*#__PURE__*/_jsx(Box, {\n pb: \"3\",\n asChild: true,\n children: /*#__PURE__*/_jsx(\"ul\", {\n style: {\n listStylePosition: 'inside'\n },\n children: children\n })\n });\n};","import { Box } from '@radix-ui/themes';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var OrderedList = _ref => {\n var {\n children\n } = _ref;\n return /*#__PURE__*/_jsx(Box, {\n pb: \"3\",\n asChild: true,\n children: /*#__PURE__*/_jsx(\"ol\", {\n style: {\n listStylePosition: 'inside'\n },\n children: children\n })\n });\n};","import { Box } from '@radix-ui/themes';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var ListItem = _ref => {\n var {\n children\n } = _ref;\n return /*#__PURE__*/_jsx(Box, {\n pb: \"1\",\n children: /*#__PURE__*/_jsx(\"li\", {\n children: children\n })\n });\n};","import { Strong as RadixStrong } from '@radix-ui/themes';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var Strong = _ref => {\n var {\n children\n } = _ref;\n return /*#__PURE__*/_jsx(RadixStrong, {\n children: children\n });\n};","import { Box } from '@radix-ui/themes';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var Pre = _ref => {\n var {\n children\n } = _ref;\n return /*#__PURE__*/_jsx(Box, {\n style: {\n whiteSpace: 'pre-wrap',\n wordBreak: 'break-word'\n },\n children: children\n });\n};","import { c as _c } from \"react-compiler-runtime\";\nimport { Code as RadixCode } from '@radix-ui/themes';\nimport { Suggestions } from '@/components/suggestions/Suggestions';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var Code = t0 => {\n var $ = _c(4);\n var {\n children,\n className\n } = t0;\n if (className === \"language-suggestions\") {\n var _t;\n if ($[0] !== children) {\n _t = /*#__PURE__*/_jsx(Suggestions, {\n children: children\n });\n $[0] = children;\n $[1] = _t;\n } else {\n _t = $[1];\n }\n return _t;\n }\n var t1;\n if ($[2] !== children) {\n t1 = /*#__PURE__*/_jsx(RadixCode, {\n children: children\n });\n $[2] = children;\n $[3] = t1;\n } else {\n t1 = $[3];\n }\n return t1;\n};","import { c as _c } from \"react-compiler-runtime\";\nimport { useMemo } from 'react';\nimport { useLatestMessage } from '@/hooks/messages/useLatestMessage';\nimport { Content } from './Content';\nimport { Item } from './Item';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var Suggestions = t0 => {\n var _latestMessageProps$l;\n var $ = _c(4);\n var {\n children,\n className,\n style\n } = t0;\n var latestMessageProps = useLatestMessage();\n var t1;\n t1 = (_latestMessageProps$l = latestMessageProps.latestMessage) === null || _latestMessageProps$l === void 0 || (_latestMessageProps$l = _latestMessageProps$l.metadata) === null || _latestMessageProps$l === void 0 ? void 0 : _latestMessageProps$l.isBlocking;\n var isDisabled = t1;\n if (latestMessageProps.isLoading) {\n return null;\n }\n if (isDisabled) {\n return null;\n }\n var t2;\n if ($[0] !== children || $[1] !== className || $[2] !== style) {\n t2 = /*#__PURE__*/_jsx(Content, {\n className: className,\n style: style,\n children: children\n });\n $[0] = children;\n $[1] = className;\n $[2] = style;\n $[3] = t2;\n } else {\n t2 = $[3];\n }\n return t2;\n};\nSuggestions.Item = Item;","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { c as _c } from \"react-compiler-runtime\";\nimport { useMemo } from 'react';\nimport { useMessages } from '@/hooks/messages/useMessages';\nexport var useLatestMessage = () => {\n var $ = _c(3);\n var props = useMessages();\n var t0;\n var t1 = props.messages[0] || null;\n var t2;\n if ($[0] !== props || $[1] !== t1) {\n t2 = _objectSpread(_objectSpread({}, props), {}, {\n latestMessage: t1\n });\n $[0] = props;\n $[1] = t1;\n $[2] = t2;\n } else {\n t2 = $[2];\n }\n t0 = t2;\n return t0;\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { c as _c } from \"react-compiler-runtime\";\nimport { useMemo } from 'react';\nimport { useInfiniteQuery, useQueryClient } from '@tanstack/react-query';\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext';\nimport { useThreadContext } from '@/hooks/threads/useThreadContext';\nimport { messagesQueryOptions } from '@/lib/messages/messagesQueryOptions';\nvar messages = _ref => {\n var {\n props\n } = _ref;\n if (!props.data) return [];\n return props.data.pages.reduce((acc, page) => acc.concat(page.data), []);\n};\nexport var useMessages = () => {\n var $ = _c(9);\n var queryClient = useQueryClient();\n var threadContext = useThreadContext();\n var superinterfaceContext = useSuperinterfaceContext();\n var t0;\n if ($[0] !== queryClient || $[1] !== superinterfaceContext || $[2] !== threadContext) {\n t0 = messagesQueryOptions({\n queryClient,\n threadContext,\n superinterfaceContext\n });\n $[0] = queryClient;\n $[1] = superinterfaceContext;\n $[2] = threadContext;\n $[3] = t0;\n } else {\n t0 = $[3];\n }\n var props = useInfiniteQuery(t0);\n var t1;\n var t2;\n if ($[4] !== props) {\n t2 = messages({\n props\n });\n $[4] = props;\n $[5] = t2;\n } else {\n t2 = $[5];\n }\n var t3;\n if ($[6] !== props || $[7] !== t2) {\n t3 = _objectSpread(_objectSpread({}, props), {}, {\n messages: t2\n });\n $[6] = props;\n $[7] = t2;\n $[8] = t3;\n } else {\n t3 = $[8];\n }\n t1 = t3;\n return t1;\n};","function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }\nfunction _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"next\", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"throw\", n); } _next(void 0); }); }; }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { infiniteQueryOptions } from '@tanstack/react-query';\nimport { variableParams } from './variableParams';\nexport var queryOptions = _ref => {\n var {\n queryKeyBase,\n path,\n queryClient,\n threadContext,\n superinterfaceContext\n } = _ref;\n var queryKey = [...queryKeyBase, threadContext.variables];\n return infiniteQueryOptions(_objectSpread(_objectSpread(_objectSpread({\n // @ts-ignore-next-line\n queryFn: function () {\n var _queryFn = _asyncToGenerator(function* (_ref2) {\n var {\n pageParam,\n queryKey\n } = _ref2;\n var [_key, variables] = queryKey;\n var params = new URLSearchParams(_objectSpread(_objectSpread({}, pageParam ? {\n pageParam\n } : {}), variableParams({\n variables,\n superinterfaceContext\n })));\n return fetch(\"\".concat(superinterfaceContext.baseUrl).concat(path, \"?\").concat(params)).then(/*#__PURE__*/function () {\n var _ref3 = _asyncToGenerator(function* (response) {\n if (response.status !== 200) {\n try {\n var errorResponse = yield response.json();\n throw new Error(errorResponse.error);\n } catch (error) {\n throw new Error('Failed to fetch');\n }\n }\n return response.json();\n });\n return function (_x2) {\n return _ref3.apply(this, arguments);\n };\n }());\n });\n function queryFn(_x) {\n return _queryFn.apply(this, arguments);\n }\n return queryFn;\n }(),\n initialPageParam: undefined,\n getNextPageParam: lastPage => {\n if (!lastPage.hasNextPage) return null;\n return lastPage.lastId;\n },\n limit: 10\n }, threadContext.defaultOptions.queries), queryClient.getQueryDefaults(queryKey)), {}, {\n queryKey\n }));\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nexport var variableParams = _ref => {\n var _superinterfaceContex;\n var {\n variables,\n superinterfaceContext\n } = _ref;\n if (variables.threadId) return variables;\n if (!variables.assistantId) return variables;\n if (!((_superinterfaceContex = superinterfaceContext.threadIdStorageOptions) !== null && _superinterfaceContex !== void 0 && _superinterfaceContex.get)) return variables;\n var threadId = superinterfaceContext.threadIdStorageOptions.get({\n assistantId: variables.assistantId\n });\n if (!threadId) return variables;\n return _objectSpread(_objectSpread({}, variables), {}, {\n threadId\n });\n};","import { queryOptions } from '@/lib/threads/queryOptions';\nexport var messagesQueryOptions = _ref => {\n var {\n queryClient,\n threadContext,\n superinterfaceContext\n } = _ref;\n return queryOptions({\n queryKeyBase: ['messages'],\n path: '/messages',\n queryClient,\n threadContext,\n superinterfaceContext\n });\n};","import { useMemo } from 'react';\nimport { isEmpty } from 'radash';\nimport { onlyText } from 'react-children-utilities';\nimport { useIsMutatingMessage } from '@/hooks/messages/useIsMutatingMessage';\nimport { Flex } from '@radix-ui/themes';\nimport { Item } from './Item';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var Content = _ref => {\n var {\n children,\n className,\n style\n } = _ref;\n var isMutatingMessage = useIsMutatingMessage();\n var suggestions = useMemo(() => onlyText(children).split(/\\r?\\n/).filter(c => !isEmpty(c)).map(c_0 => c_0.trim()), [children]);\n if (isEmpty(suggestions)) return null;\n return /*#__PURE__*/_jsx(Flex, {\n gap: \"2\",\n py: \"2\",\n wrap: \"wrap\",\n className: className,\n style: style,\n children: suggestions.map(suggestion => /*#__PURE__*/_jsx(Item, {\n suggestion: suggestion,\n isDisabled: isMutatingMessage\n }, suggestion))\n });\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { c as _c } from \"react-compiler-runtime\";\nimport { ArrowUpIcon } from '@radix-ui/react-icons';\nimport { Text, Button, Spinner } from '@radix-ui/themes';\nimport { useCreateMessage } from '@/hooks/messages/useCreateMessage';\nimport { useQueryClient } from '@tanstack/react-query';\nimport { useThreadContext } from '@/hooks/threads/useThreadContext';\nimport { useToasts } from '@/hooks/toasts/useToasts';\nimport { createMessageDefaultOnError } from '@/lib/errors/createMessageDefaultOnError';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var Item = t0 => {\n var $ = _c(16);\n var {\n suggestion,\n isDisabled,\n className,\n style\n } = t0;\n var {\n addToast\n } = useToasts();\n var queryClient = useQueryClient();\n var threadContext = useThreadContext();\n var t1;\n if ($[0] !== addToast || $[1] !== queryClient || $[2] !== threadContext) {\n t1 = createMessageDefaultOnError({\n queryClient,\n addToast,\n threadContext\n });\n $[0] = addToast;\n $[1] = queryClient;\n $[2] = threadContext;\n $[3] = t1;\n } else {\n t1 = $[3];\n }\n var t2;\n if ($[4] !== t1) {\n t2 = {\n onError: t1\n };\n $[4] = t1;\n $[5] = t2;\n } else {\n t2 = $[5];\n }\n var {\n createMessage,\n isPending\n } = useCreateMessage(t2);\n var t3;\n if ($[6] !== createMessage || $[7] !== suggestion) {\n t3 = () => {\n createMessage({\n content: suggestion\n });\n };\n $[6] = createMessage;\n $[7] = suggestion;\n $[8] = t3;\n } else {\n t3 = $[8];\n }\n var t4;\n if ($[9] !== className || $[10] !== isDisabled || $[11] !== isPending || $[12] !== style || $[13] !== suggestion || $[14] !== t3) {\n t4 = /*#__PURE__*/_jsx(Content, {\n onClick: t3,\n isDisabled: isDisabled,\n isPending: isPending,\n className: className,\n style: style,\n children: suggestion\n });\n $[9] = className;\n $[10] = isDisabled;\n $[11] = isPending;\n $[12] = style;\n $[13] = suggestion;\n $[14] = t3;\n $[15] = t4;\n } else {\n t4 = $[15];\n }\n return t4;\n};\nvar Content = _ref => {\n var {\n onClick,\n isDisabled,\n isPending,\n children,\n className,\n style\n } = _ref;\n return /*#__PURE__*/_jsxs(Button, {\n className: className,\n variant: \"soft\",\n onClick: onClick,\n disabled: isDisabled,\n style: _objectSpread({\n minHeight: 'var(--base-button-height)',\n height: 'inherit',\n flexShrink: 1\n }, style !== null && style !== void 0 ? style : {}),\n children: [/*#__PURE__*/_jsx(Text, {\n size: \"1\",\n weight: \"regular\",\n children: children\n }), /*#__PURE__*/_jsx(Spinner, {\n loading: isPending,\n children: /*#__PURE__*/_jsx(ArrowUpIcon, {\n style: {\n flexShrink: 0\n }\n })\n })]\n });\n};\nItem.Content = Content;","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { c as _c } from \"react-compiler-runtime\";\nimport { partob } from 'radash';\nimport { useMutation, useQueryClient } from '@tanstack/react-query';\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext';\nimport { useThreadContext } from '@/hooks/threads/useThreadContext';\nimport { mutationOptions } from './lib/mutationOptions';\nexport var useCreateMessage = t0 => {\n var $ = _c(15);\n var t1;\n if ($[0] !== t0) {\n t1 = t0 === undefined ? {\n onError: _temp\n } : t0;\n $[0] = t0;\n $[1] = t1;\n } else {\n t1 = $[1];\n }\n var {\n onError: t2\n } = t1;\n var t3;\n if ($[2] !== t2) {\n t3 = t2 === undefined ? _temp2 : t2;\n $[2] = t2;\n $[3] = t3;\n } else {\n t3 = $[3];\n }\n var onError = t3;\n var queryClient = useQueryClient();\n var superinterfaceContext = useSuperinterfaceContext();\n var threadContext = useThreadContext();\n var t4;\n if ($[4] !== onError || $[5] !== queryClient || $[6] !== superinterfaceContext || $[7] !== threadContext) {\n t4 = mutationOptions({\n queryClient,\n threadContext,\n superinterfaceContext,\n onError\n });\n $[4] = onError;\n $[5] = queryClient;\n $[6] = superinterfaceContext;\n $[7] = threadContext;\n $[8] = t4;\n } else {\n t4 = $[8];\n }\n var props = useMutation(t4);\n var t5;\n if ($[9] !== props.mutateAsync || $[10] !== threadContext.variables) {\n t5 = partob(props.mutateAsync, threadContext.variables);\n $[9] = props.mutateAsync;\n $[10] = threadContext.variables;\n $[11] = t5;\n } else {\n t5 = $[11];\n }\n var t6;\n if ($[12] !== props || $[13] !== t5) {\n t6 = _objectSpread(_objectSpread({}, props), {}, {\n createMessage: t5\n });\n $[12] = props;\n $[13] = t5;\n $[14] = t6;\n } else {\n t6 = $[14];\n }\n return t6;\n};\nfunction _temp() {}\nfunction _temp2() {}","function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }\nfunction _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"next\", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"throw\", n); } _next(void 0); }); }; }\nimport { omit } from 'radash';\nimport { data } from './data';\nexport var onMutate = _ref => {\n var {\n queryClient\n } = _ref;\n return /*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator(function* (newMessage) {\n var queryKey = ['messages', omit(newMessage, ['content', 'attachments'])];\n yield queryClient.cancelQueries({\n queryKey\n });\n var prevMessages = queryClient.getQueryData(queryKey);\n queryClient.setQueryData(queryKey, data({\n newMessage\n }));\n return {\n prevMessages,\n newMessage\n };\n });\n return function (_x) {\n return _ref2.apply(this, arguments);\n };\n }();\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport dayjs from 'dayjs';\nimport { optimisticId } from '@/lib/optimistic/optimisticId';\nexport var data = _ref => {\n var {\n newMessage\n } = _ref;\n return prevData => {\n var _newMessage$attachmen;\n var message = {\n id: optimisticId(),\n role: 'user',\n created_at: dayjs().unix(),\n object: 'thread.message',\n content: [{\n type: 'text',\n text: {\n annotations: [],\n value: newMessage.content\n }\n }],\n run_id: null,\n assistant_id: null,\n thread_id: null,\n attachments: (_newMessage$attachmen = newMessage.attachments) !== null && _newMessage$attachmen !== void 0 ? _newMessage$attachmen : [],\n metadata: {},\n runSteps: []\n };\n if (!prevData) {\n return {\n pageParams: [],\n pages: [{\n data: [message],\n hasNextPage: false,\n lastId: message.id\n }]\n };\n }\n var [latestPage, ...pagesRest] = prevData.pages;\n return _objectSpread(_objectSpread({}, prevData), {}, {\n pages: [_objectSpread(_objectSpread({}, latestPage), {}, {\n data: [message, ...latestPage.data]\n }), ...pagesRest]\n });\n };\n};","import { uid } from 'radash';\nexport var optimisticId = () => \"-\".concat(uid(24));","function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }\nfunction _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"next\", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"throw\", n); } _next(void 0); }); }; }\nimport { JSONParser } from '@streamparser/json-whatwg';\nimport { handleResponse } from './handleResponse';\nimport { body } from './body';\nexport var mutationFn = _ref => {\n var {\n superinterfaceContext,\n queryClient,\n threadContext\n } = _ref;\n return /*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator(function* (variables) {\n var abortController = new AbortController();\n superinterfaceContext.createMessageAbortControllerRef.current = abortController;\n var response = yield fetch(\"\".concat(superinterfaceContext.baseUrl, \"/messages\"), {\n method: 'POST',\n body: JSON.stringify(body({\n variables,\n superinterfaceContext\n })),\n signal: abortController.signal\n });\n if (response.status !== 200) {\n try {\n var errorResponse = yield response.json();\n throw new Error(errorResponse.error);\n } catch (error) {\n throw new Error('Failed to send your message, try again. If you are the owner, check the logs.');\n }\n }\n if (response.body == null) {\n throw new Error('The response body is empty.');\n }\n var parser = new JSONParser({\n stringBufferSize: undefined,\n paths: ['$'],\n separator: ''\n });\n var reader = response.body.pipeThrough(parser).getReader();\n var messagesQueryKey = ['messages', threadContext.variables];\n while (true) {\n var {\n done,\n value\n } = yield reader.read();\n if (done) break;\n handleResponse({\n value,\n messagesQueryKey,\n queryClient,\n superinterfaceContext\n });\n }\n });\n return function (_x) {\n return _ref2.apply(this, arguments);\n };\n }();\n};","export var threadCreated = _ref => {\n var _superinterfaceContex, _value$data$metadata, _value$data$metadata2;\n var {\n value,\n superinterfaceContext\n } = _ref;\n if (!((_superinterfaceContex = superinterfaceContext.threadIdStorageOptions) !== null && _superinterfaceContex !== void 0 && _superinterfaceContex.set)) return;\n // @ts-ignore-next-line\n if (!((_value$data$metadata = value.data.metadata) !== null && _value$data$metadata !== void 0 && _value$data$metadata.assistantId)) return;\n // @ts-ignore-next-line\n if (!((_value$data$metadata2 = value.data.metadata) !== null && _value$data$metadata2 !== void 0 && _value$data$metadata2.threadId)) return;\n superinterfaceContext.threadIdStorageOptions.set({\n // @ts-ignore-next-line\n assistantId: value.data.metadata.assistantId,\n // @ts-ignore-next-line\n threadId: value.data.metadata.threadId\n });\n};","import _ from 'lodash';\nexport var isOptimistic = _ref => {\n var {\n id\n } = _ref;\n return _.startsWith(id, '-');\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { last } from 'radash';\nimport { isOptimistic } from '@/lib/optimistic/isOptimistic';\nexport var extendMessage = _ref => {\n var _ref2, _last$runSteps, _last, _last2;\n var {\n message,\n messages\n } = _ref;\n var prevRunMessages = messages.filter(m => m.run_id === message.run_id);\n var prevOptimitisticRunMessages = prevRunMessages.filter(m => isOptimistic({\n id: m.id\n }));\n var runSteps = (_ref2 = (_last$runSteps = (_last = last(prevOptimitisticRunMessages)) === null || _last === void 0 ? void 0 : _last.runSteps) !== null && _last$runSteps !== void 0 ? _last$runSteps : (_last2 = last(prevRunMessages)) === null || _last2 === void 0 ? void 0 : _last2.runSteps) !== null && _ref2 !== void 0 ? _ref2 : [];\n return _objectSpread(_objectSpread({}, message), {}, {\n runSteps\n });\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { isOptimistic } from '@/lib/optimistic/isOptimistic';\nimport { extendMessage } from './extendMessage';\nvar appendMessage = _ref => {\n var {\n message,\n messages\n } = _ref;\n var prevMessages = messages.filter(m => m.run_id != message.run_id || !isOptimistic({\n id: m.id\n }));\n return [extendMessage({\n message,\n messages\n }), ...prevMessages];\n};\nexport var threadMessageCreated = _ref2 => {\n var {\n value,\n messagesQueryKey,\n queryClient\n } = _ref2;\n return queryClient.setQueryData(messagesQueryKey, prevData => {\n if (!prevData) {\n return {\n pageParams: [],\n pages: [{\n data: appendMessage({\n message: value.data,\n messages: []\n }),\n hasNextPage: false,\n lastId: value.data.id\n }]\n };\n }\n var [latestPage, ...pagesRest] = prevData.pages;\n return _objectSpread(_objectSpread({}, prevData), {}, {\n pages: [_objectSpread(_objectSpread({}, latestPage), {}, {\n data: appendMessage({\n message: value.data,\n messages: latestPage.data\n })\n }), ...pagesRest]\n });\n });\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport _ from 'lodash';\nimport { omit } from 'radash';\nvar updatedContentPart = _ref => {\n var {\n prevContentPart,\n delta\n } = _ref;\n if (!prevContentPart) {\n return omit(delta, ['index']);\n }\n if (delta.type === 'text' && delta.text && prevContentPart.type == 'text' && prevContentPart.text) {\n var _prevContentPart$text, _delta$text$annotatio;\n return _objectSpread(_objectSpread({}, prevContentPart), {}, {\n text: _objectSpread(_objectSpread({}, prevContentPart.text), {}, {\n value: \"\".concat(prevContentPart.text.value).concat(delta.text.value),\n annotations: [...((_prevContentPart$text = prevContentPart.text.annotations) !== null && _prevContentPart$text !== void 0 ? _prevContentPart$text : []), ...((_delta$text$annotatio = delta.text.annotations) !== null && _delta$text$annotatio !== void 0 ? _delta$text$annotatio : [])]\n })\n });\n }\n return prevContentPart;\n};\nvar updatedContent = _ref2 => {\n var {\n content,\n value\n } = _ref2;\n if (!value.data.delta.content) return content;\n var result = _.cloneDeep(content);\n value.data.delta.content.forEach(delta => {\n // @ts-ignore-next-line\n result[delta.index] = updatedContentPart({\n // @ts-ignore-next-line\n prevContentPart: result[delta.index],\n delta\n });\n });\n return result;\n};\nexport var threadMessageDelta = _ref3 => {\n var {\n value,\n queryClient,\n messagesQueryKey\n } = _ref3;\n return queryClient.setQueryData(messagesQueryKey, prevData => {\n if (!prevData) {\n return {\n pageParams: [],\n pages: [{\n data: [],\n hasNextPage: false,\n lastId: null\n }]\n };\n }\n var [latestPage, ...pagesRest] = prevData.pages;\n var [latestMessage, ...messagesRest] = latestPage.data;\n return _objectSpread(_objectSpread({}, prevData), {}, {\n pages: [_objectSpread(_objectSpread({}, latestPage), {}, {\n data: [_objectSpread(_objectSpread({}, latestMessage), {}, {\n content: updatedContent({\n content: latestMessage.content,\n value\n })\n }), ...messagesRest]\n }), ...pagesRest]\n });\n });\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { replace } from 'radash';\nimport { extendMessage } from './extendMessage';\nexport var threadMessageCompleted = _ref => {\n var {\n value,\n queryClient,\n messagesQueryKey\n } = _ref;\n return queryClient.setQueryData(messagesQueryKey, prevData => {\n if (!prevData) {\n return {\n pageParams: [],\n pages: [{\n data: [],\n hasNextPage: false,\n lastId: null\n }]\n };\n }\n var [latestPage, ...pagesRest] = prevData.pages;\n return _objectSpread(_objectSpread({}, prevData), {}, {\n pages: [_objectSpread(_objectSpread({}, latestPage), {}, {\n data: replace(latestPage.data, extendMessage({\n message: value.data,\n messages: latestPage.data\n }), m => m.id === value.data.id)\n }), ...pagesRest]\n });\n });\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { optimisticId } from '@/lib/optimistic/optimisticId';\nexport var threadRunCreated = _ref => {\n var {\n value,\n queryClient,\n messagesQueryKey\n } = _ref;\n return queryClient.setQueryData(messagesQueryKey, prevData => {\n if (!prevData) return prevData;\n var [latestPage, ...pagesRest] = prevData.pages;\n return _objectSpread(_objectSpread({}, prevData), {}, {\n pages: [_objectSpread(_objectSpread({}, latestPage), {}, {\n data: [{\n id: optimisticId(),\n assistant_id: value.data.assistant_id,\n content: [],\n created_at: value.data.created_at,\n attachments: [],\n metadata: {},\n status: 'in_progress',\n role: 'assistant',\n runSteps: [],\n run_id: value.data.id,\n thread_id: value.data.thread_id\n }, ...latestPage.data]\n }), ...pagesRest]\n });\n });\n};","export var threadRunFailed = _ref => {\n var {\n value,\n queryClient,\n messagesQueryKey\n } = _ref;\n throw new Error('Failed to send your message, try again. If you are the owner, check the logs.');\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nexport var threadRunStepCreated = _ref => {\n var {\n value,\n queryClient,\n messagesQueryKey\n } = _ref;\n return queryClient.setQueryData(messagesQueryKey, prevData => {\n if (!prevData) return prevData;\n var [latestPage, ...pagesRest] = prevData.pages;\n return _objectSpread(_objectSpread({}, prevData), {}, {\n pages: [_objectSpread(_objectSpread({}, latestPage), {}, {\n data: latestPage.data.map(m => {\n if (m.run_id === value.data.run_id) {\n return _objectSpread(_objectSpread({}, m), {}, {\n runSteps: [value.data, ...m.runSteps]\n });\n }\n return m;\n })\n }), ...pagesRest]\n });\n });\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport _ from 'lodash';\nimport { omit } from 'radash';\nvar updatedToolCall = _ref => {\n var {\n toolCall,\n delta\n } = _ref;\n if (!toolCall) {\n return omit(delta, ['index']);\n }\n if (delta.type === 'function' && delta.function && toolCall.type === 'function' && toolCall.function) {\n var result = _.cloneDeep(toolCall);\n for (var [key, value] of Object.entries(delta.function)) {\n var _result$function$key;\n // @ts-ignore-next-line\n result.function[key] = \"\".concat((_result$function$key = result.function[key]) !== null && _result$function$key !== void 0 ? _result$function$key : '').concat(value);\n }\n return result;\n }\n return toolCall;\n};\nvar updatedRunStep = _ref2 => {\n var _runStep$step_details, _value$data$delta;\n var {\n runStep,\n value\n } = _ref2;\n // @ts-ignore-next-line\n if (!(runStep !== null && runStep !== void 0 && (_runStep$step_details = runStep.step_details) !== null && _runStep$step_details !== void 0 && _runStep$step_details.tool_calls)) return runStep;\n if (((_value$data$delta = value.data.delta) === null || _value$data$delta === void 0 || (_value$data$delta = _value$data$delta.step_details) === null || _value$data$delta === void 0 ? void 0 : _value$data$delta.type) === 'tool_calls') {\n if (!value.data.delta.step_details.tool_calls) return runStep;\n\n // @ts-ignore-next-line\n var newToolCalls = _.cloneDeep(runStep.step_details.tool_calls);\n value.data.delta.step_details.tool_calls.forEach(delta => newToolCalls[delta.index] = updatedToolCall({\n toolCall: newToolCalls[delta.index],\n delta\n }));\n return _objectSpread(_objectSpread({}, runStep), {}, {\n step_details: _objectSpread(_objectSpread(_objectSpread({}, runStep.step_details), value.data.delta.step_details), {}, {\n tool_calls: newToolCalls\n })\n });\n } else {\n return runStep;\n }\n};\nexport var threadRunStepDelta = _ref3 => {\n var {\n value,\n queryClient,\n messagesQueryKey\n } = _ref3;\n return queryClient.setQueryData(messagesQueryKey, prevData => {\n if (!prevData) return prevData;\n var [latestPage, ...pagesRest] = prevData.pages;\n return _objectSpread(_objectSpread({}, prevData), {}, {\n pages: [_objectSpread(_objectSpread({}, latestPage), {}, {\n data: latestPage.data.map(m => {\n if (m.run_id === value.data.run_id) {\n return _objectSpread(_objectSpread({}, m), {}, {\n runSteps: m.runSteps.map(rs => {\n if (rs.id === value.data.id) {\n return updatedRunStep({\n runStep: rs,\n value\n });\n }\n return rs;\n })\n });\n }\n return m;\n })\n }), ...pagesRest]\n });\n });\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { replace } from 'radash';\nexport var threadRunStepCompleted = _ref => {\n var {\n value,\n queryClient,\n messagesQueryKey\n } = _ref;\n return queryClient.setQueryData(messagesQueryKey, prevData => {\n if (!prevData) return prevData;\n var [latestPage, ...pagesRest] = prevData.pages;\n return _objectSpread(_objectSpread({}, prevData), {}, {\n pages: [_objectSpread(_objectSpread({}, latestPage), {}, {\n data: latestPage.data.map(m => {\n if (m.run_id === value.data.run_id) {\n return _objectSpread(_objectSpread({}, m), {}, {\n runSteps: replace(m.runSteps, value.data, rs => rs.id === value.data.id)\n });\n }\n return m;\n })\n }), ...pagesRest]\n });\n });\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }\nfunction _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"next\", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"throw\", n); } _next(void 0); }); }; }\nimport { map } from 'radash';\nexport var threadRunRequiresAction = /*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator(function* (_ref) {\n var {\n value,\n queryClient,\n messagesQueryKey,\n superinterfaceContext\n } = _ref;\n // @ts-ignore-next-line\n if (value.data.required_action.type === 'submit_client_tool_outputs') {\n // @ts-ignore-next-line\n var toolCalls = value.data.required_action.submit_client_tool_outputs.tool_calls;\n var toolOutputs = yield map(toolCalls, /*#__PURE__*/function () {\n var _ref3 = _asyncToGenerator(function* (toolCall) {\n if (toolCall.type !== 'function') {\n return {\n toolCallId: toolCall.id,\n output: \"Error: client tool type \".concat(toolCall.type, \" is not supported.\")\n };\n }\n\n // @ts-ignore-next-line\n var fn = window[toolCall.function.name];\n if (!fn) {\n return {\n toolCallId: toolCall.id,\n output: \"Error: client function \".concat(toolCall.function.name, \" is not defined.\")\n };\n }\n var args = toolCall.function.arguments;\n var parsedArgs = JSON.parse(args);\n var output;\n try {\n output = yield fn(parsedArgs);\n } catch (error) {\n output = \"Error: \".concat(error.message);\n }\n return {\n toolCallId: toolCall.id,\n output\n };\n });\n return function (_x2) {\n return _ref3.apply(this, arguments);\n };\n }());\n return fetch(\"\".concat(superinterfaceContext.baseUrl, \"/threads/runs/submit-client-tool-outputs\"), {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json'\n },\n body: JSON.stringify(_objectSpread({\n toolOutputs\n }, superinterfaceContext.variables))\n });\n }\n });\n return function threadRunRequiresAction(_x) {\n return _ref2.apply(this, arguments);\n };\n}();","import { threadCreated } from './threadCreated';\nimport { threadMessageCreated } from './threadMessageCreated';\nimport { threadMessageDelta } from './threadMessageDelta';\nimport { threadMessageCompleted } from './threadMessageCompleted';\nimport { threadRunCreated } from './threadRunCreated';\nimport { threadRunFailed } from './threadRunFailed';\nimport { threadRunStepCreated } from './threadRunStepCreated';\nimport { threadRunStepDelta } from './threadRunStepDelta';\nimport { threadRunStepCompleted } from './threadRunStepCompleted';\nimport { threadRunRequiresAction } from './threadRunRequiresAction';\nexport var handlers = {\n 'thread.created': threadCreated,\n 'thread.message.created': threadMessageCreated,\n 'thread.message.delta': threadMessageDelta,\n 'thread.message.completed': threadMessageCompleted,\n 'thread.run.created': threadRunCreated,\n 'thread.run.failed': threadRunFailed,\n 'thread.run.step.created': threadRunStepCreated,\n 'thread.run.step.delta': threadRunStepDelta,\n 'thread.run.step.completed': threadRunStepCompleted,\n 'thread.run.requires_action': threadRunRequiresAction\n};","import { handlers } from './handlers';\nexport var handleResponse = _ref => {\n var {\n value,\n messagesQueryKey,\n queryClient,\n superinterfaceContext\n } = _ref;\n // @ts-ignore-next-line\n var handler = handlers[value.value.event];\n if (!handler) {\n return console.log('Missing handler', {\n value\n });\n }\n return handler({\n value: value.value,\n queryClient,\n messagesQueryKey,\n superinterfaceContext\n });\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nexport var body = _ref => {\n var _superinterfaceContex;\n var {\n variables,\n superinterfaceContext\n } = _ref;\n if (variables.threadId) return variables;\n if (!variables.assistantId) return variables;\n if (!((_superinterfaceContex = superinterfaceContext.threadIdStorageOptions) !== null && _superinterfaceContex !== void 0 && _superinterfaceContex.get)) return variables;\n var threadId = superinterfaceContext.threadIdStorageOptions.get({\n assistantId: variables.assistantId\n });\n if (!threadId) return variables;\n return _objectSpread(_objectSpread({}, variables), {}, {\n threadId\n });\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { onMutate } from './onMutate';\nimport { mutationFn } from './mutationFn';\nexport var mutationOptions = _ref => {\n var {\n queryClient,\n threadContext,\n superinterfaceContext,\n onError\n } = _ref;\n var mutationKey = ['createMessage', threadContext.variables];\n return _objectSpread(_objectSpread(_objectSpread({\n mutationFn: mutationFn({\n queryClient,\n superinterfaceContext,\n threadContext\n }),\n onMutate: onMutate({\n queryClient\n }),\n onError\n }, threadContext.defaultOptions.mutations), queryClient.getMutationDefaults(mutationKey)), {}, {\n mutationKey\n });\n};","import { useContext } from 'react';\nimport { ToastsContext } from '@/contexts/toasts/ToastsContext';\nexport var useToasts = () => {\n return useContext(ToastsContext);\n};","'use client';\n\nimport { createContext } from 'react';\nexport var ToastsContext = /*#__PURE__*/createContext({\n toasts: [],\n addToast: () => {}\n});","export var createMessageDefaultOnError = _ref => {\n var {\n queryClient,\n addToast,\n threadContext\n } = _ref;\n return error => {\n if (error.name === 'AbortError') {\n queryClient.invalidateQueries({\n queryKey: ['messages', threadContext.variables]\n });\n queryClient.invalidateQueries({\n queryKey: ['runs', threadContext.variables]\n });\n return;\n }\n addToast({\n type: 'error',\n message: error.message\n });\n };\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { c as _c } from \"react-compiler-runtime\";\nimport { Image } from '@/components/images/Image';\nimport { isVideoSrc } from './lib/isVideoSrc';\nimport { isAudioSrc } from './lib/isAudioSrc';\nimport { Video } from './Video';\nimport { Audio } from './Audio';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var Img = props => {\n var $ = _c(8);\n if (!props.src) {\n var t0;\n if ($[0] !== props) {\n t0 = /*#__PURE__*/_jsx(Image, _objectSpread({}, props));\n $[0] = props;\n $[1] = t0;\n } else {\n t0 = $[1];\n }\n return t0;\n } else {\n if (isVideoSrc({\n src: props.src\n })) {\n var _t;\n if ($[2] !== props.src) {\n _t = /*#__PURE__*/_jsx(Video, {\n src: props.src\n });\n $[2] = props.src;\n $[3] = _t;\n } else {\n _t = $[3];\n }\n return _t;\n } else {\n if (isAudioSrc({\n src: props.src\n })) {\n var _t2;\n if ($[4] !== props.src) {\n _t2 = /*#__PURE__*/_jsx(Audio, {\n src: props.src\n });\n $[4] = props.src;\n $[5] = _t2;\n } else {\n _t2 = $[5];\n }\n return _t2;\n } else {\n var _t3;\n if ($[6] !== props) {\n _t3 = /*#__PURE__*/_jsx(Image, _objectSpread({}, props));\n $[6] = props;\n $[7] = _t3;\n } else {\n _t3 = $[7];\n }\n return _t3;\n }\n }\n }\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { Box } from '@radix-ui/themes';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var Image = props => /*#__PURE__*/_jsx(Box, {\n pb: \"3\",\n children: /*#__PURE__*/_jsx(\"img\", _objectSpread(_objectSpread({}, props), {}, {\n style: {\n maxWidth: '100%',\n height: 'auto'\n }\n }))\n});","// list is from https://www.npmjs.com/package/video-extensions\nvar videoExtensions = ['3g2', '3gp', 'aaf', 'asf', 'avchd', 'avi', 'drc', 'flv', 'm2v', 'm3u8', 'm4p', 'm4v', 'mkv', 'mng', 'mov', 'mp2', 'mp4', 'mpe', 'mpeg', 'mpg', 'mpv', 'mxf', 'nsv', 'ogg', 'ogv', 'qt', 'rm', 'rmvb', 'roq', 'svi', 'vob', 'webm', 'wmv', 'yuv'];\nexport var isVideoSrc = _ref => {\n var {\n src\n } = _ref;\n return videoExtensions.includes(src.split('.').pop() || '');\n};","export var isAudioSrc = _ref => {\n var {\n src\n } = _ref;\n return src.endsWith('.mp3') || src.endsWith('.wav');\n};","import { Flex } from '@radix-ui/themes';\nimport '@vidstack/react/player/styles/base.css';\nimport { MediaPlayer, MediaProvider, Controls } from '@vidstack/react';\nimport { PlayButton } from '@/components/media/PlayButton';\nimport { VolumeButton } from '@/components/media/VolumeButton';\nimport { Time } from '@/components/media/Time';\nimport { MediaContainer } from '@/components/media/MediaContainer';\nimport { FullscreenButton } from './FullscreenButton';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var Video = _ref => {\n var {\n src\n } = _ref;\n return /*#__PURE__*/_jsx(MediaContainer, {\n children: /*#__PURE__*/_jsxs(MediaPlayer, {\n src: {\n src,\n type: \"video/\".concat(src.split('.').pop())\n },\n playsInline: true,\n hideControlsOnMouseLeave: true,\n crossOrigin: true,\n children: [/*#__PURE__*/_jsx(MediaProvider, {}), /*#__PURE__*/_jsx(\"style\", {\n children: \"\\n .superinterface-video-controls {\\n opacity: 0;\\n transition: opacity 0.2s ease-out;\\n }\\n\\n .superinterface-video-controls[data-visible] {\\n opacity: 1;\\n }\\n \"\n }), /*#__PURE__*/_jsx(Flex, {\n asChild: true,\n position: \"absolute\",\n bottom: \"0\",\n left: \"0\",\n right: \"0\",\n className: \"superinterface-video-controls\",\n p: \"3\",\n style: {\n zIndex: 10,\n background: 'var(--accent-4)'\n },\n children: /*#__PURE__*/_jsx(Controls.Root, {\n children: /*#__PURE__*/_jsx(Flex, {\n asChild: true,\n align: \"center\",\n gap: \"3\",\n flexGrow: \"1\",\n children: /*#__PURE__*/_jsxs(Controls.Group, {\n children: [/*#__PURE__*/_jsx(PlayButton, {}), /*#__PURE__*/_jsx(Time, {}), /*#__PURE__*/_jsx(VolumeButton, {}), /*#__PURE__*/_jsx(FullscreenButton, {})]\n })\n })\n })\n })]\n })\n });\n};","import { c as _c } from \"react-compiler-runtime\";\nimport { PlayButton as VidstackPlayButton, useMediaState } from '@vidstack/react';\nimport { IconButton } from '@radix-ui/themes';\nimport { PlayIcon, PauseIcon } from '@radix-ui/react-icons';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var PlayButton = () => {\n var $ = _c(2);\n var isPaused = useMediaState(\"paused\");\n var t0;\n if ($[0] !== isPaused) {\n t0 = /*#__PURE__*/_jsx(IconButton, {\n variant: \"ghost\",\n asChild: true,\n children: /*#__PURE__*/_jsx(VidstackPlayButton, {\n children: isPaused ? /*#__PURE__*/_jsx(PlayIcon, {}) : /*#__PURE__*/_jsx(PauseIcon, {})\n })\n });\n $[0] = isPaused;\n $[1] = t0;\n } else {\n t0 = $[1];\n }\n return t0;\n};","import { c as _c } from \"react-compiler-runtime\";\nimport { MuteButton, useMediaState, useMediaRemote } from '@vidstack/react';\nimport { IconButton, HoverCard, Slider } from '@radix-ui/themes';\nimport { SpeakerModerateIcon, SpeakerOffIcon } from '@radix-ui/react-icons';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var VolumeButton = () => {\n var $ = _c(13);\n var volume = useMediaState(\"volume\");\n var isMuted = useMediaState(\"muted\");\n var remote = useMediaRemote();\n var t0;\n if ($[0] !== isMuted || $[1] !== volume) {\n t0 = /*#__PURE__*/_jsx(HoverCard.Trigger, {\n children: /*#__PURE__*/_jsx(IconButton, {\n variant: \"ghost\",\n asChild: true,\n children: /*#__PURE__*/_jsx(MuteButton, {\n children: isMuted || volume === 0 ? /*#__PURE__*/_jsx(SpeakerOffIcon, {}) : /*#__PURE__*/_jsx(SpeakerModerateIcon, {})\n })\n })\n });\n $[0] = isMuted;\n $[1] = volume;\n $[2] = t0;\n } else {\n t0 = $[2];\n }\n var t1 = volume * 100;\n var t2;\n if ($[3] !== t1) {\n t2 = [t1];\n $[3] = t1;\n $[4] = t2;\n } else {\n t2 = $[4];\n }\n var t3;\n if ($[5] !== remote) {\n t3 = t4 => {\n var [value] = t4;\n return remote.changeVolume(value / 100);\n };\n $[5] = remote;\n $[6] = t3;\n } else {\n t3 = $[6];\n }\n var t4;\n if ($[7] !== t2 || $[8] !== t3) {\n t4 = /*#__PURE__*/_jsx(HoverCard.Content, {\n size: \"1\",\n side: \"top\",\n height: \"100px\",\n children: /*#__PURE__*/_jsx(Slider, {\n size: \"1\",\n variant: \"soft\",\n orientation: \"vertical\",\n value: t2,\n onValueChange: t3\n })\n });\n $[7] = t2;\n $[8] = t3;\n $[9] = t4;\n } else {\n t4 = $[9];\n }\n var t5;\n if ($[10] !== t0 || $[11] !== t4) {\n t5 = /*#__PURE__*/_jsxs(HoverCard.Root, {\n children: [t0, t4]\n });\n $[10] = t0;\n $[11] = t4;\n $[12] = t5;\n } else {\n t5 = $[12];\n }\n return t5;\n};","import { c as _c } from \"react-compiler-runtime\";\nimport { useState, useEffect, useMemo } from 'react';\nimport { useMediaState, useMediaRemote } from '@vidstack/react';\nimport { Slider } from '@radix-ui/themes';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var Time = () => {\n var $ = _c(17);\n var time = useMediaState(\"currentTime\");\n var duration = useMediaState(\"duration\");\n var seeking = useMediaState(\"seeking\");\n var canSeek = useMediaState(\"canSeek\");\n var remote = useMediaRemote();\n var [value, setValue] = useState(0);\n var t0;\n var t1;\n if ($[0] !== duration || $[1] !== seeking || $[2] !== time) {\n t0 = () => {\n if (seeking) {\n return;\n }\n setValue(time / duration * 100);\n };\n t1 = [time, duration, seeking];\n $[0] = duration;\n $[1] = seeking;\n $[2] = time;\n $[3] = t0;\n $[4] = t1;\n } else {\n t0 = $[3];\n t1 = $[4];\n }\n useEffect(t0, t1);\n var t2;\n t2 = 1 / duration * 100;\n var step = t2;\n var t3;\n if ($[5] !== value) {\n t3 = [value];\n $[5] = value;\n $[6] = t3;\n } else {\n t3 = $[6];\n }\n var t4 = !canSeek;\n var t5 = Number.isFinite(step) ? step : 1;\n var t6;\n var t7;\n if ($[7] !== duration || $[8] !== remote) {\n t6 = t8 => {\n var [value_0] = t8;\n setValue(value_0);\n remote.seeking(value_0 / 100 * duration);\n };\n t7 = t9 => {\n var [value_1] = t9;\n remote.seek(value_1 / 100 * duration);\n };\n $[7] = duration;\n $[8] = remote;\n $[9] = t6;\n $[10] = t7;\n } else {\n t6 = $[9];\n t7 = $[10];\n }\n var t8;\n if ($[11] !== t3 || $[12] !== t4 || $[13] !== t5 || $[14] !== t6 || $[15] !== t7) {\n t8 = /*#__PURE__*/_jsx(Slider, {\n size: \"1\",\n variant: \"soft\",\n value: t3,\n disabled: t4,\n step: t5,\n onValueChange: t6,\n onValueCommit: t7\n });\n $[11] = t3;\n $[12] = t4;\n $[13] = t5;\n $[14] = t6;\n $[15] = t7;\n $[16] = t8;\n } else {\n t8 = $[16];\n }\n return t8;\n};","import { Card, Inset } from '@radix-ui/themes';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var MediaContainer = _ref => {\n var {\n children\n } = _ref;\n return /*#__PURE__*/_jsx(Card, {\n mb: \"3\",\n children: /*#__PURE__*/_jsx(Inset, {\n clip: \"padding-box\",\n style: {\n display: 'flex',\n flexDirection: 'column'\n },\n children: children\n })\n });\n};","import { c as _c } from \"react-compiler-runtime\";\nimport { FullscreenButton as VidstackFullscreenButton, useMediaState } from '@vidstack/react';\nimport { IconButton } from '@radix-ui/themes';\nimport { EnterFullScreenIcon, ExitFullScreenIcon } from '@radix-ui/react-icons';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var FullscreenButton = () => {\n var $ = _c(2);\n var isFullscreen = useMediaState(\"fullscreen\");\n var t0;\n if ($[0] !== isFullscreen) {\n t0 = /*#__PURE__*/_jsx(IconButton, {\n variant: \"ghost\",\n asChild: true,\n children: /*#__PURE__*/_jsx(VidstackFullscreenButton, {\n children: isFullscreen ? /*#__PURE__*/_jsx(ExitFullScreenIcon, {}) : /*#__PURE__*/_jsx(EnterFullScreenIcon, {})\n })\n });\n $[0] = isFullscreen;\n $[1] = t0;\n } else {\n t0 = $[1];\n }\n return t0;\n};","import { Flex } from '@radix-ui/themes';\nimport '@vidstack/react/player/styles/base.css';\nimport { MediaPlayer, MediaProvider, Controls } from '@vidstack/react';\nimport { PlayButton } from '@/components/media/PlayButton';\nimport { VolumeButton } from '@/components/media/VolumeButton';\nimport { Time } from '@/components/media/Time';\nimport { MediaContainer } from '@/components/media/MediaContainer';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var Audio = _ref => {\n var {\n src\n } = _ref;\n return /*#__PURE__*/_jsx(MediaContainer, {\n children: /*#__PURE__*/_jsxs(MediaPlayer, {\n src: {\n src,\n type: \"audio/\".concat(src.split('.').pop())\n },\n viewType: \"audio\",\n crossOrigin: true,\n playsInline: true,\n children: [/*#__PURE__*/_jsx(MediaProvider, {}), /*#__PURE__*/_jsx(Flex, {\n asChild: true,\n p: \"3\",\n flexGrow: \"1\",\n style: {\n zIndex: 10,\n background: 'var(--accent-4)'\n },\n children: /*#__PURE__*/_jsx(Controls.Root, {\n children: /*#__PURE__*/_jsx(Flex, {\n asChild: true,\n align: \"center\",\n gap: \"3\",\n flexGrow: \"1\",\n children: /*#__PURE__*/_jsxs(Controls.Group, {\n children: [/*#__PURE__*/_jsx(PlayButton, {}), /*#__PURE__*/_jsx(Time, {}), /*#__PURE__*/_jsx(VolumeButton, {})]\n })\n })\n })\n })]\n })\n });\n};","import { c as _c } from \"react-compiler-runtime\";\nimport { QuoteIcon } from '@radix-ui/react-icons';\nimport { AnnotationBase } from './AnnotationBase';\nimport { FilePathAnnotation } from './FilePathAnnotation';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var Annotation = t0 => {\n var $ = _c(4);\n var {\n annotation,\n children\n } = t0;\n if (annotation.type === \"file_citation\") {\n var t1;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t1 = /*#__PURE__*/_jsx(AnnotationBase, {\n icon: /*#__PURE__*/_jsx(QuoteIcon, {}),\n content: \"File cited.\"\n });\n $[0] = t1;\n } else {\n t1 = $[0];\n }\n return t1;\n } else {\n if (annotation.type === \"file_path\") {\n var _t;\n if ($[1] !== annotation || $[2] !== children) {\n _t = /*#__PURE__*/_jsx(FilePathAnnotation, {\n annotation: annotation,\n children: children\n });\n $[1] = annotation;\n $[2] = children;\n $[3] = _t;\n } else {\n _t = $[3];\n }\n return _t;\n }\n }\n return null;\n};","import { IconButton, Popover, Flex, Text } from '@radix-ui/themes';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var AnnotationBase = _ref => {\n var {\n icon,\n content\n } = _ref;\n return /*#__PURE__*/_jsxs(Popover.Root, {\n children: [/*#__PURE__*/_jsx(Popover.Trigger, {\n children: /*#__PURE__*/_jsx(IconButton, {\n variant: \"soft\",\n color: \"gray\",\n size: \"1\",\n children: icon\n })\n }), /*#__PURE__*/_jsx(Popover.Content, {\n size: \"1\",\n children: /*#__PURE__*/_jsx(Flex, {\n direction: \"column\",\n children: /*#__PURE__*/_jsx(Text, {\n size: \"1\",\n color: \"gray\",\n children: content\n })\n })\n })]\n });\n};","import { c as _c } from \"react-compiler-runtime\";\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext';\nimport { Link } from '@/contexts/markdown/MarkdownContext/lib/components/Link';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var FilePathAnnotation = t0 => {\n var $ = _c(3);\n var {\n annotation,\n children\n } = t0;\n var superinterfaceContext = useSuperinterfaceContext();\n var nextSearchParams = new URLSearchParams(superinterfaceContext.variables);\n var t1 = \"\".concat(superinterfaceContext.baseUrl, \"/files/\").concat(annotation.file_path.file_id, \"/contents?\").concat(nextSearchParams);\n var t2;\n if ($[0] !== children || $[1] !== t1) {\n t2 = /*#__PURE__*/_jsx(Link, {\n href: t1,\n target: \"_self\",\n download: true,\n children: children\n });\n $[0] = children;\n $[1] = t1;\n $[2] = t2;\n } else {\n t2 = $[2];\n }\n return t2;\n};","import remarkGfm from 'remark-gfm';\nimport { remarkAnnotation } from '@/lib/remark/remarkAnnotation';\nexport var getRemarkPlugins = _ref => {\n var {\n content\n } = _ref;\n return [remarkAnnotation({\n content\n }), remarkGfm];\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { isNumber } from 'radash';\n// @ts-ignore-next-line\nimport flatMap from 'unist-util-flatmap';\nvar sortedAnnotations = _ref => {\n var {\n content\n } = _ref;\n return content.text.annotations.sort((a, b) => a.start_index - b.start_index);\n};\nexport var remarkAnnotation = _ref2 => {\n var {\n content\n } = _ref2;\n return () => {\n return tree => {\n flatMap(tree, node => {\n // Process text and link nodes\n if (node.type === 'text' || node.type === 'link') {\n return processNodeWithAnnotations({\n node,\n content\n });\n } else {\n // Return other nodes as-is\n return [node];\n }\n });\n };\n };\n};\nvar processNodeWithAnnotations = _ref3 => {\n var _content$text;\n var {\n node,\n content\n } = _ref3;\n if (!((_content$text = content.text) !== null && _content$text !== void 0 && (_content$text = _content$text.annotations) !== null && _content$text !== void 0 && _content$text.length)) {\n return [node];\n }\n if (!node.position) {\n return [node];\n }\n var annotations = sortedAnnotations({\n content\n });\n if (node.type === 'text') {\n // node is a Text node\n return processTextNode({\n node: node,\n annotations\n });\n } else if (node.type === 'link') {\n // node is a Link node\n var linkNode = node;\n // Process link node's children\n linkNode.children = flatMap(linkNode.children, childNode => {\n if (childNode.type === 'text') {\n return processTextNode({\n node: childNode,\n annotations\n });\n } else {\n return [childNode];\n }\n });\n return [linkNode];\n } else {\n // Return node as-is\n return [node];\n }\n};\nvar processTextNode = _ref4 => {\n var {\n node,\n annotations\n } = _ref4;\n if (!node.position || !node.value) {\n return [node];\n }\n var nodeStart = node.position.start.offset;\n var nodeEnd = node.position.end.offset;\n if (!isNumber(nodeStart) || !isNumber(nodeEnd)) {\n return [node];\n }\n var newNodes = [];\n var lastIndex = nodeStart;\n annotations.forEach(annotation => {\n var annotationStart = annotation.start_index;\n var annotationEnd = annotation.end_index;\n if (nodeEnd <= annotationStart || nodeStart >= annotationEnd) {\n return;\n }\n var start = Math.max(nodeStart, annotationStart);\n var end = Math.min(nodeEnd, annotationEnd);\n if (lastIndex < start) {\n newNodes.push(createTextNode({\n node,\n startOffset: lastIndex,\n endOffset: start\n }));\n }\n newNodes.push(createAnnotationNode({\n node,\n startOffset: start,\n endOffset: end,\n annotation\n }));\n lastIndex = end;\n });\n if (lastIndex < nodeEnd) {\n newNodes.push(createTextNode({\n node,\n startOffset: lastIndex,\n endOffset: nodeEnd\n }));\n }\n return newNodes;\n};\nvar createTextNode = _ref5 => {\n var {\n node,\n startOffset,\n endOffset\n } = _ref5;\n var valueStart = startOffset - node.position.start.offset;\n var valueEnd = endOffset - node.position.start.offset;\n return {\n type: 'text',\n value: node.value.slice(valueStart, valueEnd),\n position: {\n start: _objectSpread(_objectSpread({}, node.position.start), {}, {\n offset: startOffset\n }),\n end: _objectSpread(_objectSpread({}, node.position.end), {}, {\n offset: endOffset\n })\n }\n };\n};\nvar createAnnotationNode = _ref6 => {\n var {\n node,\n startOffset,\n endOffset,\n annotation\n } = _ref6;\n var valueStart = startOffset - node.position.start.offset;\n var valueEnd = endOffset - node.position.start.offset;\n return {\n type: 'annotation',\n value: node.value.slice(valueStart, valueEnd),\n position: {\n start: _objectSpread(_objectSpread({}, node.position.start), {}, {\n offset: startOffset\n }),\n end: _objectSpread(_objectSpread({}, node.position.end), {}, {\n offset: endOffset\n })\n },\n data: {\n hName: 'annotation',\n hProperties: {\n annotation\n }\n }\n };\n};","'use client';\n\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { createContext, Component, createElement, useContext, useState, useMemo, forwardRef } from 'react';\nvar ErrorBoundaryContext = /*#__PURE__*/createContext(null);\nvar initialState = {\n didCatch: false,\n error: null\n};\nclass ErrorBoundary extends Component {\n constructor(props) {\n super(props);\n this.resetErrorBoundary = this.resetErrorBoundary.bind(this);\n this.state = initialState;\n }\n static getDerivedStateFromError(error) {\n return {\n didCatch: true,\n error\n };\n }\n resetErrorBoundary() {\n var {\n error\n } = this.state;\n if (error !== null) {\n var _this$props$onReset, _this$props;\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n (_this$props$onReset = (_this$props = this.props).onReset) === null || _this$props$onReset === void 0 ? void 0 : _this$props$onReset.call(_this$props, {\n args,\n reason: \"imperative-api\"\n });\n this.setState(initialState);\n }\n }\n componentDidCatch(error, info) {\n var _this$props$onError, _this$props2;\n (_this$props$onError = (_this$props2 = this.props).onError) === null || _this$props$onError === void 0 ? void 0 : _this$props$onError.call(_this$props2, error, info);\n }\n componentDidUpdate(prevProps, prevState) {\n var {\n didCatch\n } = this.state;\n var {\n resetKeys\n } = this.props;\n\n // There's an edge case where if the thing that triggered the error happens to *also* be in the resetKeys array,\n // we'd end up resetting the error boundary immediately.\n // This would likely trigger a second error to be thrown.\n // So we make sure that we don't check the resetKeys on the first call of cDU after the error is set.\n\n if (didCatch && prevState.error !== null && hasArrayChanged(prevProps.resetKeys, resetKeys)) {\n var _this$props$onReset2, _this$props3;\n (_this$props$onReset2 = (_this$props3 = this.props).onReset) === null || _this$props$onReset2 === void 0 ? void 0 : _this$props$onReset2.call(_this$props3, {\n next: resetKeys,\n prev: prevProps.resetKeys,\n reason: \"keys\"\n });\n this.setState(initialState);\n }\n }\n render() {\n var {\n children,\n fallbackRender,\n FallbackComponent,\n fallback\n } = this.props;\n var {\n didCatch,\n error\n } = this.state;\n var childToRender = children;\n if (didCatch) {\n var props = {\n error,\n resetErrorBoundary: this.resetErrorBoundary\n };\n if (typeof fallbackRender === \"function\") {\n childToRender = fallbackRender(props);\n } else if (FallbackComponent) {\n childToRender = /*#__PURE__*/createElement(FallbackComponent, props);\n } else if (fallback !== undefined) {\n childToRender = fallback;\n } else {\n throw error;\n }\n }\n return /*#__PURE__*/createElement(ErrorBoundaryContext.Provider, {\n value: {\n didCatch,\n error,\n resetErrorBoundary: this.resetErrorBoundary\n }\n }, childToRender);\n }\n}\nfunction hasArrayChanged() {\n var a = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var b = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];\n return a.length !== b.length || a.some((item, index) => !Object.is(item, b[index]));\n}\nfunction assertErrorBoundaryContext(value) {\n if (value == null || typeof value.didCatch !== \"boolean\" || typeof value.resetErrorBoundary !== \"function\") {\n throw new Error(\"ErrorBoundaryContext not found\");\n }\n}\nfunction useErrorBoundary() {\n var context = useContext(ErrorBoundaryContext);\n assertErrorBoundaryContext(context);\n var [state, setState] = useState({\n error: null,\n hasError: false\n });\n var memoized = useMemo(() => ({\n resetBoundary: () => {\n context.resetErrorBoundary();\n setState({\n error: null,\n hasError: false\n });\n },\n showBoundary: error => setState({\n error,\n hasError: true\n })\n }), [context.resetErrorBoundary]);\n if (state.hasError) {\n throw state.error;\n }\n return memoized;\n}\nfunction withErrorBoundary(component, errorBoundaryProps) {\n var Wrapped = /*#__PURE__*/forwardRef((props, ref) => /*#__PURE__*/createElement(ErrorBoundary, errorBoundaryProps, /*#__PURE__*/createElement(component, _objectSpread(_objectSpread({}, props), {}, {\n ref\n }))));\n\n // Format for display in DevTools\n var name = component.displayName || component.name || \"Unknown\";\n Wrapped.displayName = \"withErrorBoundary(\".concat(name, \")\");\n return Wrapped;\n}\nexport { ErrorBoundary, ErrorBoundaryContext, useErrorBoundary, withErrorBoundary };","import { c as _c } from \"react-compiler-runtime\";\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext';\nimport { Image } from '@/components/images/Image';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var ImageFileContent = t0 => {\n var $ = _c(2);\n var {\n content\n } = t0;\n var superinterfaceContext = useSuperinterfaceContext();\n var nextSearchParams = new URLSearchParams(superinterfaceContext.variables);\n var t1 = \"\".concat(superinterfaceContext.baseUrl, \"/files/\").concat(content.image_file.file_id, \"/contents?\").concat(nextSearchParams);\n var t2;\n if ($[0] !== t1) {\n t2 = /*#__PURE__*/_jsx(Image, {\n alt: \"\",\n src: t1\n });\n $[0] = t1;\n $[1] = t2;\n } else {\n t2 = $[1];\n }\n return t2;\n};","'use client';\n\nimport { c as _c } from \"react-compiler-runtime\";\nimport { useEffect } from 'react';\nimport { useMessages } from '@/hooks/messages/useMessages';\nimport { useMessageGroups } from '@/hooks/messageGroups/useMessageGroups';\nimport { MessagesSkeleton } from '@/components/skeletons/MessagesSkeleton';\nimport { useToasts } from '@/hooks/toasts/useToasts';\nimport { MessageGroup } from './MessageGroup';\nimport { jsx as _jsx, Fragment as _Fragment } from \"react/jsx-runtime\";\nexport var Content = () => {\n var $ = _c(11);\n var {\n messages,\n isLoading,\n isLoadingError\n } = useMessages();\n var {\n addToast\n } = useToasts();\n var t0;\n if ($[0] !== messages) {\n t0 = {\n messages\n };\n $[0] = messages;\n $[1] = t0;\n } else {\n t0 = $[1];\n }\n var {\n messageGroups\n } = useMessageGroups(t0);\n var t1;\n var t2;\n if ($[2] !== addToast || $[3] !== isLoadingError) {\n t1 = () => {\n if (isLoadingError) {\n addToast({\n type: \"error\",\n message: \"Could not load messages. Please try again.\"\n });\n }\n };\n t2 = [isLoadingError, addToast];\n $[2] = addToast;\n $[3] = isLoadingError;\n $[4] = t1;\n $[5] = t2;\n } else {\n t1 = $[4];\n t2 = $[5];\n }\n useEffect(t1, t2);\n if (isLoading || isLoadingError) {\n var _t;\n if ($[6] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t = /*#__PURE__*/_jsx(MessagesSkeleton, {});\n $[6] = _t;\n } else {\n _t = $[6];\n }\n return _t;\n }\n var t3;\n if ($[7] !== messageGroups) {\n t3 = messageGroups.map(_temp);\n $[7] = messageGroups;\n $[8] = t3;\n } else {\n t3 = $[8];\n }\n var t4;\n if ($[9] !== t3) {\n t4 = /*#__PURE__*/_jsx(_Fragment, {\n children: t3\n });\n $[9] = t3;\n $[10] = t4;\n } else {\n t4 = $[10];\n }\n return t4;\n};\nfunction _temp(messageGroup) {\n return /*#__PURE__*/_jsx(MessageGroup, {\n messageGroup: messageGroup\n }, messageGroup.id);\n}","import { c as _c } from \"react-compiler-runtime\";\nimport { useMemo } from 'react';\nimport { messageGroups as getMessageGroups } from './lib/messageGroups';\nexport var useMessageGroups = t0 => {\n var $ = _c(4);\n var {\n messages\n } = t0;\n var t1;\n var t2;\n if ($[0] !== messages) {\n t2 = getMessageGroups({\n messages\n });\n $[0] = messages;\n $[1] = t2;\n } else {\n t2 = $[1];\n }\n var t3;\n if ($[2] !== t2) {\n t3 = {\n messageGroups: t2\n };\n $[2] = t2;\n $[3] = t3;\n } else {\n t3 = $[3];\n }\n t1 = t3;\n return t1;\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport _ from 'lodash';\nimport { last } from 'radash';\nimport { order } from '@/lib/messages/order';\nimport { newGroup } from './newGroup';\nexport var messageGroups = _ref => {\n var {\n messages\n } = _ref;\n return _.reduce(order({\n messages\n }), (groups, message) => {\n var group = last(groups);\n if (!group) return newGroup({\n groups,\n message\n });\n if (group.role !== message.role) {\n return newGroup({\n groups,\n message\n });\n }\n return [..._.dropRight(groups), _objectSpread(_objectSpread({}, group), {}, {\n messages: [...group.messages, message]\n })];\n }, []);\n};","import { sort } from 'radash';\nexport var order = _ref => {\n var {\n messages\n } = _ref;\n return sort(messages, m => m.created_at, true);\n};","export var newGroupItem = _ref => {\n var {\n message\n } = _ref;\n return {\n id: message.id,\n role: message.role,\n createdAt: message.created_at,\n messages: [message]\n };\n};","import { newGroupItem } from './newGroupItem';\nexport var newGroup = _ref => {\n var {\n groups,\n message\n } = _ref;\n return [...groups, newGroupItem({\n message\n })];\n};","import { c as _c } from \"react-compiler-runtime\";\nimport { forwardRef } from 'react';\nimport { Flex, Avatar, Box, Skeleton } from '@radix-ui/themes';\nimport { MessageGroupBase } from '@/components/messageGroups/MessageGroupBase';\nimport { Name } from '@/components/messageGroups/MessageGroupBase/Name';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var MessagesSkeleton = /*#__PURE__*/forwardRef(function MessagesSkeleton(_props, ref) {\n var $ = _c(7);\n var t0;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t0 = /*#__PURE__*/_jsx(Skeleton, {\n loading: true,\n children: /*#__PURE__*/_jsx(Avatar, {\n fallback: /*#__PURE__*/_jsx(Flex, {}),\n size: \"1\"\n })\n });\n $[0] = t0;\n } else {\n t0 = $[0];\n }\n var t1;\n if ($[1] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t1 = /*#__PURE__*/_jsx(Name, {\n children: /*#__PURE__*/_jsx(Skeleton, {\n loading: true,\n style: {\n width: \"128px\"\n }\n })\n });\n $[1] = t1;\n } else {\n t1 = $[1];\n }\n var t2;\n if ($[2] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t2 = /*#__PURE__*/_jsx(Skeleton, {\n loading: true,\n style: {\n width: \"256px\"\n }\n });\n $[2] = t2;\n } else {\n t2 = $[2];\n }\n var t3;\n if ($[3] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t3 = /*#__PURE__*/_jsx(Skeleton, {\n loading: true,\n style: {\n width: \"256px\",\n marginTop: \"var(--space-2)\"\n }\n });\n $[3] = t3;\n } else {\n t3 = $[3];\n }\n var t4;\n if ($[4] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t4 = /*#__PURE__*/_jsxs(Box, {\n pb: \"3\",\n children: [t1, t2, t3, /*#__PURE__*/_jsx(Skeleton, {\n loading: true,\n style: {\n width: \"256px\",\n marginTop: \"var(--space-2)\"\n }\n })]\n });\n $[4] = t4;\n } else {\n t4 = $[4];\n }\n var t5;\n if ($[5] !== ref) {\n t5 = /*#__PURE__*/_jsxs(MessageGroupBase, {\n ref: ref,\n children: [t0, t4]\n });\n $[5] = ref;\n $[6] = t5;\n } else {\n t5 = $[6];\n }\n return t5;\n});","import { c as _c } from \"react-compiler-runtime\";\nimport { forwardRef } from 'react';\nimport { Flex, Container } from '@radix-ui/themes';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var MessageGroupBase = /*#__PURE__*/forwardRef(function MessageGroupBase(t0, ref) {\n var $ = _c(5);\n var {\n children\n } = t0;\n var t1;\n if ($[0] !== children) {\n t1 = /*#__PURE__*/_jsx(Flex, {\n flexShrink: \"0\",\n gap: \"3\",\n children: children\n });\n $[0] = children;\n $[1] = t1;\n } else {\n t1 = $[1];\n }\n var t2;\n if ($[2] !== ref || $[3] !== t1) {\n t2 = /*#__PURE__*/_jsx(Container, {\n ref: ref,\n size: \"2\",\n flexGrow: \"0\",\n children: t1\n });\n $[2] = ref;\n $[3] = t1;\n $[4] = t2;\n } else {\n t2 = $[4];\n }\n return t2;\n});","import { Flex, Text } from '@radix-ui/themes';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var Name = _ref => {\n var {\n children\n } = _ref;\n return /*#__PURE__*/_jsx(Flex, {\n align: \"center\",\n height: \"var(--space-5)\",\n children: /*#__PURE__*/_jsx(Text, {\n size: \"2\",\n weight: \"bold\",\n children: children\n })\n });\n};","'use client';\n\nimport { c as _c } from \"react-compiler-runtime\";\nimport { useContext } from 'react';\nimport { Box } from '@radix-ui/themes';\nimport { MessageGroupBase } from '@/components/messageGroups/MessageGroupBase';\nimport { Name } from '@/components/messageGroups/MessageGroupBase/Name';\nimport { AssistantAvatar } from '@/components/messageGroups/MessageGroupBase/AssistantAvatar';\nimport { AssistantNameContext } from '@/contexts/assistants/AssistantNameContext';\nimport { UserAvatar } from '@/components/messageGroups/MessageGroupBase/UserAvatar';\nimport { Content } from './Content';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var MessageGroup = t0 => {\n var $ = _c(12);\n var {\n messageGroup\n } = t0;\n var assistantNameContext = useContext(AssistantNameContext);\n var t1;\n if ($[0] !== messageGroup.role) {\n t1 = messageGroup.role === \"user\" ? /*#__PURE__*/_jsx(UserAvatar, {}) : /*#__PURE__*/_jsx(AssistantAvatar, {});\n $[0] = messageGroup.role;\n $[1] = t1;\n } else {\n t1 = $[1];\n }\n var t2 = messageGroup.role === \"user\" ? \"You\" : assistantNameContext;\n var t3;\n if ($[2] !== t2) {\n t3 = /*#__PURE__*/_jsx(Name, {\n children: t2\n });\n $[2] = t2;\n $[3] = t3;\n } else {\n t3 = $[3];\n }\n var t4;\n if ($[4] !== messageGroup) {\n t4 = /*#__PURE__*/_jsx(Content, {\n messageGroup: messageGroup\n });\n $[4] = messageGroup;\n $[5] = t4;\n } else {\n t4 = $[5];\n }\n var t5;\n if ($[6] !== t3 || $[7] !== t4) {\n t5 = /*#__PURE__*/_jsxs(Box, {\n flexGrow: \"1\",\n children: [t3, t4]\n });\n $[6] = t3;\n $[7] = t4;\n $[8] = t5;\n } else {\n t5 = $[8];\n }\n var t6;\n if ($[9] !== t1 || $[10] !== t5) {\n t6 = /*#__PURE__*/_jsxs(MessageGroupBase, {\n children: [t1, t5]\n });\n $[9] = t1;\n $[10] = t5;\n $[11] = t6;\n } else {\n t6 = $[11];\n }\n return t6;\n};","'use client';\n\nimport { c as _c } from \"react-compiler-runtime\";\nimport { useContext } from 'react';\nimport { Flex } from '@radix-ui/themes';\nimport { AssistantAvatarContext } from '@/contexts/assistants/AssistantAvatarContext';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var AssistantAvatar = () => {\n var $ = _c(3);\n var AssistantAvatarContextValue = useContext(AssistantAvatarContext);\n var t0;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t0 = {\n borderRadius: \"var(--radius-3)\",\n overflow: \"hidden\"\n };\n $[0] = t0;\n } else {\n t0 = $[0];\n }\n var t1;\n if ($[1] !== AssistantAvatarContextValue) {\n t1 = /*#__PURE__*/_jsx(Flex, {\n flexShrink: \"0\",\n height: \"24px\",\n width: \"24px\",\n style: t0,\n children: AssistantAvatarContextValue\n });\n $[1] = AssistantAvatarContextValue;\n $[2] = t1;\n } else {\n t1 = $[2];\n }\n return t1;\n};","'use client';\n\nimport { createContext } from 'react';\nimport { Avatar } from '@radix-ui/themes';\nimport { LightningBoltIcon } from '@radix-ui/react-icons';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var AssistantAvatarContext = /*#__PURE__*/createContext(/*#__PURE__*/_jsx(Avatar, {\n fallback: /*#__PURE__*/_jsx(LightningBoltIcon, {}),\n size: \"1\"\n}));","'use client';\n\nimport { createContext } from 'react';\nexport var AssistantNameContext = /*#__PURE__*/createContext('Assistant');","'use client';\n\nimport { c as _c } from \"react-compiler-runtime\";\nimport { useContext } from 'react';\nimport { Flex } from '@radix-ui/themes';\nimport { UserAvatarContext } from '@/contexts/users/UserAvatarContext';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var UserAvatar = () => {\n var $ = _c(3);\n var UserAvatarContextValue = useContext(UserAvatarContext);\n var t0;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t0 = {\n borderRadius: \"var(--radius-3)\",\n overflow: \"hidden\"\n };\n $[0] = t0;\n } else {\n t0 = $[0];\n }\n var t1;\n if ($[1] !== UserAvatarContextValue) {\n t1 = /*#__PURE__*/_jsx(Flex, {\n flexShrink: \"0\",\n height: \"24px\",\n width: \"24px\",\n style: t0,\n children: UserAvatarContextValue\n });\n $[1] = UserAvatarContextValue;\n $[2] = t1;\n } else {\n t1 = $[2];\n }\n return t1;\n};","'use client';\n\nimport { createContext } from 'react';\nimport { Avatar } from '@radix-ui/themes';\nimport { PersonIcon } from '@radix-ui/react-icons';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var UserAvatarContext = /*#__PURE__*/createContext(/*#__PURE__*/_jsx(Avatar, {\n fallback: /*#__PURE__*/_jsx(PersonIcon, {}),\n size: \"1\"\n}));","import { Flex } from '@radix-ui/themes';\nimport { Message } from '@/components/threads/Thread/Message';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var Content = _ref => {\n var {\n messageGroup\n } = _ref;\n return /*#__PURE__*/_jsx(Flex, {\n direction: \"column-reverse\",\n children: messageGroup.messages.map(message => /*#__PURE__*/_jsx(Message, {\n message: message\n }, message.id))\n });\n};","import { c as _c } from \"react-compiler-runtime\";\nimport { useMemo } from 'react';\nimport { StartingSkeleton } from '@/components/skeletons/StartingSkeleton';\nimport { useLatestMessage } from '@/hooks/messages/useLatestMessage';\nimport { isOptimistic } from '@/lib/optimistic/isOptimistic';\nimport { useIsMutatingMessage } from '@/hooks/messages/useIsMutatingMessage';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var Progress = () => {\n var $ = _c(1);\n var {\n latestMessage\n } = useLatestMessage();\n var isMutatingMessage = useIsMutatingMessage();\n var t0;\n bb0: {\n if (!latestMessage) {\n t0 = false;\n break bb0;\n }\n if (latestMessage.role !== \"user\") {\n t0 = false;\n break bb0;\n }\n if (latestMessage.status === \"in_progress\") {\n t0 = false;\n break bb0;\n }\n if (!isOptimistic({\n id: latestMessage.id\n })) {\n t0 = false;\n break bb0;\n }\n if (!isMutatingMessage) {\n t0 = false;\n break bb0;\n }\n t0 = true;\n }\n var isVisible = t0;\n if (!isVisible) {\n return null;\n }\n var t1;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t1 = /*#__PURE__*/_jsx(StartingSkeleton, {});\n $[0] = t1;\n } else {\n t1 = $[0];\n }\n return t1;\n};","'use client';\n\nimport { c as _c } from \"react-compiler-runtime\";\nimport { useContext } from 'react';\nimport { Box } from '@radix-ui/themes';\nimport { StartingContentSkeleton } from '@/components/skeletons/StartingContentSkeleton';\nimport { MessageGroupBase } from '@/components/messageGroups/MessageGroupBase';\nimport { Name } from '@/components/messageGroups/MessageGroupBase/Name';\nimport { AssistantAvatar } from '@/components/messageGroups/MessageGroupBase/AssistantAvatar';\nimport { AssistantNameContext } from '@/contexts/assistants/AssistantNameContext';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var StartingSkeleton = t0 => {\n var $ = _c(7);\n var {\n children\n } = t0;\n var assistantNameContext = useContext(AssistantNameContext);\n var t1;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t1 = /*#__PURE__*/_jsx(AssistantAvatar, {});\n $[0] = t1;\n } else {\n t1 = $[0];\n }\n var t2;\n if ($[1] !== assistantNameContext) {\n t2 = /*#__PURE__*/_jsx(Name, {\n children: assistantNameContext\n });\n $[1] = assistantNameContext;\n $[2] = t2;\n } else {\n t2 = $[2];\n }\n var t3;\n if ($[3] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t3 = /*#__PURE__*/_jsx(StartingContentSkeleton, {});\n $[3] = t3;\n } else {\n t3 = $[3];\n }\n var t4;\n if ($[4] !== children || $[5] !== t2) {\n t4 = /*#__PURE__*/_jsxs(MessageGroupBase, {\n children: [t1, /*#__PURE__*/_jsxs(Box, {\n children: [t2, children, t3]\n })]\n });\n $[4] = children;\n $[5] = t2;\n $[6] = t4;\n } else {\n t4 = $[6];\n }\n return t4;\n};","'use client';\n\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { c as _c } from \"react-compiler-runtime\";\nimport { Flex } from '@radix-ui/themes';\nimport { useInfiniteScroll } from '@/hooks/misc/useInfiniteScroll';\nimport { useMessages } from '@/hooks/messages/useMessages';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var Root = t0 => {\n var $ = _c(18);\n var {\n children,\n style,\n className\n } = t0;\n var {\n isFetchingNextPage,\n hasNextPage,\n fetchNextPage\n } = useMessages();\n var t1;\n if ($[0] !== fetchNextPage || $[1] !== hasNextPage || $[2] !== isFetchingNextPage) {\n t1 = {\n isFetchingNextPage,\n hasNextPage,\n fetchNextPage\n };\n $[0] = fetchNextPage;\n $[1] = hasNextPage;\n $[2] = isFetchingNextPage;\n $[3] = t1;\n } else {\n t1 = $[3];\n }\n var {\n containerRef,\n loaderRef\n } = useInfiniteScroll(t1);\n var t2;\n if ($[4] !== style) {\n t2 = style !== null && style !== void 0 ? style : {};\n $[4] = style;\n $[5] = t2;\n } else {\n t2 = $[5];\n }\n var t3;\n if ($[6] !== t2) {\n t3 = _objectSpread({\n overflow: \"auto\"\n }, t2);\n $[6] = t2;\n $[7] = t3;\n } else {\n t3 = $[7];\n }\n var t4;\n if ($[8] !== hasNextPage || $[9] !== loaderRef) {\n t4 = hasNextPage && /*#__PURE__*/_jsx(Flex, {\n ref: loaderRef\n });\n $[8] = hasNextPage;\n $[9] = loaderRef;\n $[10] = t4;\n } else {\n t4 = $[10];\n }\n var t5;\n if ($[11] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t5 = /*#__PURE__*/_jsx(Flex, {\n flexShrink: \"0\",\n flexGrow: \"1\"\n });\n $[11] = t5;\n } else {\n t5 = $[11];\n }\n var t6;\n if ($[12] !== children || $[13] !== className || $[14] !== containerRef || $[15] !== t3 || $[16] !== t4) {\n t6 = /*#__PURE__*/_jsxs(Flex, {\n ref: containerRef,\n direction: \"column-reverse\",\n flexGrow: \"1\",\n style: t3,\n className: className,\n children: [children, t4, t5]\n });\n $[12] = children;\n $[13] = className;\n $[14] = containerRef;\n $[15] = t3;\n $[16] = t4;\n $[17] = t6;\n } else {\n t6 = $[17];\n }\n return t6;\n};","import { useRef } from 'react';\nimport { useInView } from 'react-intersection-observer';\nimport { useThrottledEffect } from '@/hooks/misc/useThrottledEffect';\nexport var useInfiniteScroll = _ref => {\n var {\n isFetchingNextPage,\n hasNextPage,\n fetchNextPage\n } = _ref;\n var containerRef = useRef(null);\n var {\n ref: loaderRef,\n inView\n } = useInView({\n root: containerRef.current,\n rootMargin: '0px',\n threshold: 0.1\n });\n useThrottledEffect(() => {\n if (isFetchingNextPage) return;\n if (!inView) return;\n if (!hasNextPage) return;\n fetchNextPage();\n }, 500, [inView, isFetchingNextPage, hasNextPage, fetchNextPage]);\n return {\n containerRef,\n loaderRef,\n inView\n };\n};","import _ from 'lodash';\nimport { useRef, useEffect, useCallback } from 'react';\nexport var useThrottledEffect = (cb, delay, additionalDeps) => {\n var cbRef = useRef(cb);\n var throttledCb = useCallback(_.throttle(function () {\n return cbRef.current(...arguments);\n }, delay, {\n leading: true,\n trailing: true\n }), [delay]);\n useEffect(() => {\n cbRef.current = cb;\n });\n // set additionalDeps to execute effect, when other values change (not only on delay change)\n useEffect(throttledCb, [throttledCb, ...additionalDeps]);\n};","'use client';\n\nimport { c as _c } from \"react-compiler-runtime\";\nimport { useMessages } from '@/hooks/messages/useMessages';\nimport { MessagesSkeleton } from '@/components/skeletons/MessagesSkeleton';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var NextPageSkeleton = () => {\n var $ = _c(1);\n var {\n hasNextPage\n } = useMessages();\n if (!hasNextPage) {\n return null;\n }\n var t0;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t0 = /*#__PURE__*/_jsx(MessagesSkeleton, {});\n $[0] = t0;\n } else {\n t0 = $[0];\n }\n return t0;\n};","'use client';\n\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { c as _c } from \"react-compiler-runtime\";\nimport { ArrowUpIcon, StopIcon } from '@radix-ui/react-icons';\nimport { IconButton, Flex } from '@radix-ui/themes';\nimport { useMessageFormContext } from '@/hooks/messages/useMessageFormContext';\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nvar Root = _ref => {\n var {\n children,\n style,\n className\n } = _ref;\n return /*#__PURE__*/_jsx(Flex, {\n flexShrink: \"0\",\n align: \"end\",\n style: style,\n className: className,\n children: children\n });\n};\nvar Button = props => {\n var $ = _c(10);\n var superinterfaceContext = useSuperinterfaceContext();\n var {\n isDisabled,\n isLoading,\n isFileLoading\n } = useMessageFormContext();\n if (isLoading) {\n var _t;\n if ($[0] !== superinterfaceContext.createMessageAbortControllerRef.current) {\n _t = () => {\n var _superinterfaceContex;\n return (_superinterfaceContex = superinterfaceContext.createMessageAbortControllerRef.current) === null || _superinterfaceContex === void 0 ? void 0 : _superinterfaceContex.abort();\n };\n $[0] = superinterfaceContext.createMessageAbortControllerRef.current;\n $[1] = _t;\n } else {\n _t = $[1];\n }\n var _t2;\n if ($[2] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t2 = /*#__PURE__*/_jsx(StopIcon, {});\n $[2] = _t2;\n } else {\n _t2 = $[2];\n }\n var _t3;\n if ($[3] !== props || $[4] !== _t) {\n _t3 = /*#__PURE__*/_jsx(IconButton, _objectSpread(_objectSpread({\n type: \"button\",\n onClick: _t\n }, props), {}, {\n children: _t2\n }));\n $[3] = props;\n $[4] = _t;\n $[5] = _t3;\n } else {\n _t3 = $[5];\n }\n return _t3;\n }\n var t0 = isDisabled || isFileLoading;\n var t1;\n if ($[6] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t1 = /*#__PURE__*/_jsx(ArrowUpIcon, {});\n $[6] = t1;\n } else {\n t1 = $[6];\n }\n var t2;\n if ($[7] !== props || $[8] !== t0) {\n t2 = /*#__PURE__*/_jsx(IconButton, _objectSpread(_objectSpread({\n type: \"submit\",\n disabled: t0\n }, props), {}, {\n children: t1\n }));\n $[7] = props;\n $[8] = t0;\n $[9] = t2;\n } else {\n t2 = $[9];\n }\n return t2;\n};\nexport var Submit = props => /*#__PURE__*/_jsx(Root, _objectSpread(_objectSpread({}, props), {}, {\n children: /*#__PURE__*/_jsx(Button, {})\n}));\nSubmit.Root = Root;\nSubmit.Button = Button;","import { useContext } from 'react';\nimport { MessageFormContext } from '@/contexts/messages/MessageFormContext';\nexport var useMessageFormContext = () => {\n return useContext(MessageFormContext);\n};","'use client';\n\nimport { createContext } from 'react';\nexport var MessageFormContext = /*#__PURE__*/createContext({\n content: '',\n isDisabled: false,\n isLoading: false,\n files: [],\n setFiles: () => {},\n isFileLoading: false\n});","'use client';\n\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }\nfunction _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"next\", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"throw\", n); } _next(void 0); }); }; }\nimport { useQueryClient } from '@tanstack/react-query';\nimport { useMemo, useState } from 'react';\nimport { useForm, FormProvider } from 'react-hook-form';\nimport { Box } from '@radix-ui/themes';\nimport { useLatestMessage } from '@/hooks/messages/useLatestMessage';\nimport { useCreateMessage } from '@/hooks/messages/useCreateMessage';\nimport { useThreadContext } from '@/hooks/threads/useThreadContext';\nimport { formOptions } from './lib/formOptions';\nimport { MessageFormContext } from '@/contexts/messages/MessageFormContext';\nimport { useToasts } from '@/hooks/toasts/useToasts';\nimport { useIsMutatingMessage } from '@/hooks/messages/useIsMutatingMessage';\nimport { partob } from 'radash';\nimport { isOptimistic } from '@/lib/optimistic/isOptimistic';\nimport { createMessageDefaultOnError } from '@/lib/errors/createMessageDefaultOnError';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var Root = _ref => {\n 'use no memo';\n\n var {\n children,\n onSubmit: onSubmitArg,\n isDisabled: isDisabledArg,\n style,\n className\n } = _ref;\n var [files, setFiles] = useState([]);\n var formProps = useForm(formOptions);\n var {\n handleSubmit,\n formState: {\n isSubmitting\n },\n reset,\n watch\n } = formProps;\n var {\n addToast\n } = useToasts();\n var queryClient = useQueryClient();\n var threadContext = useThreadContext();\n var {\n createMessage\n } = useCreateMessage({\n onError: createMessageDefaultOnError({\n queryClient,\n addToast,\n threadContext\n })\n });\n var isMutatingMessage = useIsMutatingMessage();\n var isFileLoading = useMemo(() => files.some(file => isOptimistic({\n id: file.id\n })), [files]);\n var isLoading = useMemo(() => isMutatingMessage || isSubmitting, [isMutatingMessage, isSubmitting]);\n var {\n latestMessage\n } = useLatestMessage();\n var isDisabled = useMemo(() => {\n var _latestMessage$metada;\n return (\n // @ts-ignore-next-line\n (latestMessage === null || latestMessage === void 0 || (_latestMessage$metada = latestMessage.metadata) === null || _latestMessage$metada === void 0 ? void 0 : _latestMessage$metada.isBlocking) || isDisabledArg\n );\n }, [latestMessage, isDisabledArg]);\n var onSubmit = onSubmitArg ? partob(onSubmitArg, {\n reset,\n createMessage\n }) : (/*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator(function* (data) {\n if (isFileLoading) return;\n if (isLoading) return;\n if (isDisabled) return;\n reset();\n setFiles([]);\n var attachments = files.map(file_0 => ({\n file_id: file_0.id,\n tools: [{\n type: 'file_search'\n }]\n }));\n yield createMessage(_objectSpread({\n // @ts-ignore-next-line\n content: data.content\n }, attachments.length ? {\n attachments\n } : {}));\n });\n return function (_x) {\n return _ref2.apply(this, arguments);\n };\n }());\n var content = watch('content');\n return /*#__PURE__*/_jsx(MessageFormContext.Provider, {\n value: {\n isDisabled,\n isLoading,\n files,\n setFiles,\n isFileLoading,\n content\n },\n children: /*#__PURE__*/_jsx(FormProvider, _objectSpread(_objectSpread({}, formProps), {}, {\n children: /*#__PURE__*/_jsx(Box, {\n asChild: true,\n flexShrink: \"0\",\n style: style,\n className: className,\n children: /*#__PURE__*/_jsx(\"form\", {\n onSubmit: handleSubmit(onSubmit),\n children: children\n })\n })\n }))\n });\n};","import { z } from 'zod';\nimport { zodResolver } from '@hookform/resolvers/zod';\nvar schema = z.object({\n content: z.string().min(1)\n});\nexport var formOptions = {\n resolver: zodResolver(schema)\n};","'use client';\n\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { useFormContext } from 'react-hook-form';\nimport { Container as RadixContainer, Flex } from '@radix-ui/themes';\nimport { Control } from './Control';\nimport { Files } from './Files';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nvar Root = _ref => {\n 'use no memo';\n\n var {\n children,\n className,\n style\n } = _ref;\n var {\n formState: {\n errors\n }\n } = useFormContext();\n return /*#__PURE__*/_jsx(RadixContainer, {\n size: \"2\",\n flexGrow: \"0\",\n className: className,\n style: style,\n children: /*#__PURE__*/_jsx(Flex, {\n direction: \"column\",\n flexShrink: \"0\",\n children: /*#__PURE__*/_jsx(Flex, {\n direction: \"column\",\n flexShrink: \"0\",\n children: /*#__PURE__*/_jsx(Flex, {\n style: _objectSpread({\n borderRadius: 'var(--radius-2)',\n borderWidth: '1px',\n borderStyle: 'solid',\n borderColor: errors.content ? 'var(--red-9)' : 'var(--gray-5)'\n }, errors.content ? {\n backgroundColor: 'var(--red-2)'\n } : {}),\n p: \"2\",\n pl: \"3\",\n wrap: \"wrap\",\n children: children\n })\n })\n })\n });\n};\nexport var Field = {\n Root,\n Control,\n Files\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { Flex } from '@radix-ui/themes';\nimport { useFormContext } from 'react-hook-form';\nimport { usePrevious } from '@/hooks/misc/usePrevious';\nimport { useContext, useMemo, useRef, useEffect } from 'react';\nimport { AssistantNameContext } from '@/contexts/assistants/AssistantNameContext';\nimport { TextareaBase } from '@/components/textareas/TextareaBase';\nimport { useMessageFormContext } from '@/hooks/messages/useMessageFormContext';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nvar Root = _ref => {\n var {\n children,\n style,\n className\n } = _ref;\n return /*#__PURE__*/_jsx(Flex, {\n flexGrow: \"1\",\n pt: \"4px\",\n style: style,\n className: className,\n children: children\n });\n};\nvar Input = props => {\n 'use no memo';\n\n var _props$placeholder;\n var assistantNameContext = useContext(AssistantNameContext);\n var {\n register\n } = useFormContext();\n var {\n isDisabled,\n isLoading\n } = useMessageFormContext();\n var isSubmitDisabled = useMemo(() => isDisabled || isLoading, [isDisabled, isLoading]);\n var isDisabledPrevious = usePrevious(isDisabled);\n var textareaRef = useRef(null);\n var textareaProps = register('content');\n useEffect(() => {\n if (isDisabled) return;\n if (!isDisabledPrevious) return;\n if (!textareaRef.current) return;\n textareaRef.current.focus();\n }, [isDisabled, isDisabledPrevious, textareaProps]);\n return /*#__PURE__*/_jsx(TextareaBase, _objectSpread(_objectSpread(_objectSpread({\n minRows: 1,\n placeholder: (_props$placeholder = props.placeholder) !== null && _props$placeholder !== void 0 ? _props$placeholder : \"Message \".concat(assistantNameContext, \"...\"),\n disabled: isDisabled,\n onKeyDown: e => {\n if (e.key === 'Enter' && !e.shiftKey) {\n var _e$currentTarget$form;\n e.preventDefault();\n if (isSubmitDisabled) return;\n (_e$currentTarget$form = e.currentTarget.form) === null || _e$currentTarget$form === void 0 || _e$currentTarget$form.requestSubmit();\n }\n }\n }, textareaProps), props), {}, {\n ref: e_0 => {\n textareaProps.ref(e_0);\n // @ts-ignore-next-line\n textareaRef.current = e_0;\n }\n }));\n};\nexport var Control = props => /*#__PURE__*/_jsx(Root, _objectSpread(_objectSpread({}, props), {}, {\n children: /*#__PURE__*/_jsx(Input, {})\n}));\nControl.Root = Root;\nControl.Input = Input;","import { useEffect, useRef } from 'react';\nexport var usePrevious = state => {\n var ref = useRef();\n useEffect(() => {\n ref.current = state;\n });\n return ref.current;\n};","var _excluded = [\"style\", \"className\"];\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var s = Object.getOwnPropertySymbols(e); for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }\nfunction _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (e.includes(n)) continue; t[n] = r[n]; } return t; }\nimport { c as _c } from \"react-compiler-runtime\";\nimport { forwardRef } from 'react';\nimport TextareaAutosize from 'react-textarea-autosize';\nimport { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var TextareaBase = /*#__PURE__*/forwardRef(function TextareaBase(t0, ref) {\n var _className;\n var $ = _c(14);\n var className;\n var rest;\n var style;\n if ($[0] !== t0) {\n var _t = t0;\n ({\n style,\n className\n } = _t);\n rest = _objectWithoutProperties(_t, _excluded);\n _t;\n $[0] = t0;\n $[1] = className;\n $[2] = rest;\n $[3] = style;\n } else {\n className = $[1];\n rest = $[2];\n style = $[3];\n }\n var t1;\n if ($[4] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t1 = /*#__PURE__*/_jsx(\"style\", {\n children: \".superinterface-textarea { min-height: inherit; height: 30px; }\\n.superinterface-textarea::placeholder { color: var(--gray-a10); }\"\n });\n $[4] = t1;\n } else {\n t1 = $[4];\n }\n var t2 = \"rt-reset superinterface-textarea \".concat((_className = className) !== null && _className !== void 0 ? _className : \"\");\n var t3;\n if ($[5] !== style) {\n var _style;\n t3 = (_style = style) !== null && _style !== void 0 ? _style : {};\n $[5] = style;\n $[6] = t3;\n } else {\n t3 = $[6];\n }\n var t4;\n if ($[7] !== t3) {\n t4 = _objectSpread({\n border: 0,\n outline: 0,\n boxSizing: \"border-box\",\n resize: \"none\",\n color: \"var(--gray-12)\",\n flexGrow: 1,\n display: \"flex\"\n }, t3);\n $[7] = t3;\n $[8] = t4;\n } else {\n t4 = $[8];\n }\n var t5;\n if ($[9] !== ref || $[10] !== rest || $[11] !== t2 || $[12] !== t4) {\n t5 = /*#__PURE__*/_jsxs(_Fragment, {\n children: [t1, /*#__PURE__*/_jsx(TextareaAutosize, _objectSpread({\n ref: ref,\n className: t2,\n style: t4\n }, rest))]\n });\n $[9] = ref;\n $[10] = rest;\n $[11] = t2;\n $[12] = t4;\n $[13] = t5;\n } else {\n t5 = $[13];\n }\n return t5;\n});","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { c as _c } from \"react-compiler-runtime\";\nimport { Flex, Card, Spinner, Text, IconButton } from '@radix-ui/themes';\nimport { FileIcon, Cross2Icon } from '@radix-ui/react-icons';\nimport { useMessageFormContext } from '@/hooks/messages/useMessageFormContext';\nimport { isOptimistic } from '@/lib/optimistic/isOptimistic';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var Preview = props => {\n var $ = _c(8);\n var {\n files,\n setFiles\n } = useMessageFormContext();\n if (!files.length) {\n return null;\n }\n var t0;\n if ($[0] !== files || $[1] !== setFiles) {\n var _t;\n if ($[3] !== setFiles) {\n _t = file => /*#__PURE__*/_jsx(Card, {\n variant: \"ghost\",\n children: /*#__PURE__*/_jsxs(Flex, {\n align: \"center\",\n justify: \"between\",\n gap: \"1\",\n children: [/*#__PURE__*/_jsxs(Flex, {\n align: \"center\",\n gap: \"1\",\n flexShrink: \"1\",\n minWidth: \"0\",\n maxWidth: \"250px\",\n children: [/*#__PURE__*/_jsx(Flex, {\n flexShrink: \"0\",\n children: /*#__PURE__*/_jsx(Spinner, {\n loading: isOptimistic({\n id: file.id\n }),\n children: /*#__PURE__*/_jsx(FileIcon, {})\n })\n }), /*#__PURE__*/_jsx(Text, {\n size: \"2\",\n truncate: true,\n wrap: \"nowrap\",\n children: file.filename\n })]\n }), /*#__PURE__*/_jsx(Flex, {\n flexShrink: \"0\",\n children: /*#__PURE__*/_jsx(IconButton, {\n onClick: () => setFiles(prev => prev.filter(prevFile => prevFile.id !== file.id)),\n color: \"gray\",\n variant: \"ghost\",\n size: \"1\",\n children: /*#__PURE__*/_jsx(Cross2Icon, {})\n })\n })]\n })\n }, file.id);\n $[3] = setFiles;\n $[4] = _t;\n } else {\n _t = $[4];\n }\n t0 = files.map(_t);\n $[0] = files;\n $[1] = setFiles;\n $[2] = t0;\n } else {\n t0 = $[2];\n }\n var t1;\n if ($[5] !== props || $[6] !== t0) {\n t1 = /*#__PURE__*/_jsx(Flex, _objectSpread(_objectSpread({\n flexBasis: \"100%\",\n direction: \"column\",\n pb: \"2\",\n gap: \"1\"\n }, props), {}, {\n children: t0\n }));\n $[5] = props;\n $[6] = t0;\n $[7] = t1;\n } else {\n t1 = $[7];\n }\n return t1;\n};","'use client';\n\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }\nfunction _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"next\", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"throw\", n); } _next(void 0); }); }; }\nfunction _asyncIterator(r) { var n, t, o, e = 2; for (\"undefined\" != typeof Symbol && (t = Symbol.asyncIterator, o = Symbol.iterator); e--;) { if (t && null != (n = r[t])) return n.call(r); if (o && null != (n = r[o])) return new AsyncFromSyncIterator(n.call(r)); t = \"@@asyncIterator\", o = \"@@iterator\"; } throw new TypeError(\"Object is not async iterable\"); }\nfunction AsyncFromSyncIterator(r) { function AsyncFromSyncIteratorContinuation(r) { if (Object(r) !== r) return Promise.reject(new TypeError(r + \" is not an object.\")); var n = r.done; return Promise.resolve(r.value).then(function (r) { return { value: r, done: n }; }); } return AsyncFromSyncIterator = function AsyncFromSyncIterator(r) { this.s = r, this.n = r.next; }, AsyncFromSyncIterator.prototype = { s: null, n: null, next: function next() { return AsyncFromSyncIteratorContinuation(this.n.apply(this.s, arguments)); }, return: function _return(r) { var n = this.s.return; return void 0 === n ? Promise.resolve({ value: r, done: !0 }) : AsyncFromSyncIteratorContinuation(n.apply(this.s, arguments)); }, throw: function _throw(r) { var n = this.s.return; return void 0 === n ? Promise.reject(r) : AsyncFromSyncIteratorContinuation(n.apply(this.s, arguments)); } }, new AsyncFromSyncIterator(r); }\nimport { useCallback } from 'react';\nimport { omit } from 'radash';\nimport dayjs from 'dayjs';\nimport { optimisticId } from '@/lib/optimistic/optimisticId';\nimport { FilePlusIcon } from '@radix-ui/react-icons';\nimport { IconButton, Flex } from '@radix-ui/themes';\nimport { useToasts } from '@/hooks/toasts/useToasts';\nimport { useMessageFormContext } from '@/hooks/messages/useMessageFormContext';\nimport { useCreateFile } from '@/hooks/files/useCreateFile';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nvar accept = \".c,text/x-c,\\n.cs,text/x-csharp,\\n.cpp,text/x-c++,\\n.doc,application/msword,\\n.docx,application/vnd.openxmlformats-officedocument.wordprocessingml.document,\\n.html,text/html,\\n.java,text/x-java,\\n.json,application/json,\\n.md,text/markdown,\\n.pdf,application/pdf,\\n.php,text/x-php,\\n.pptx,application/vnd.openxmlformats-officedocument.presentationml.presentation,\\n.py,text/x-python,\\n.py,text/x-script.python,\\n.rb,text/x-ruby,\\n.tex,text/x-tex,\\n.txt,text/plain,\\n.css,text/css,\\n.js,text/javascript,\\n.sh,application/x-sh,\\n.ts,application/typescript\";\nexport var Control = props => {\n var {\n isDisabled,\n isLoading,\n setFiles\n } = useMessageFormContext();\n var {\n createFile\n } = useCreateFile();\n var {\n addToast\n } = useToasts();\n var onChange = useCallback(/*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (event) {\n var fileObjects = event.target.files;\n if (!fileObjects) return;\n var newFiles = Array.from(fileObjects).map(fileObject => ({\n id: optimisticId(),\n filename: fileObject.name,\n object: 'file',\n purpose: 'assistants',\n created_at: dayjs().unix(),\n bytes: fileObject.size,\n status: 'processed',\n fileObject\n }));\n setFiles(prev => [...prev, ...newFiles.map(file => omit(file, ['fileObject']))]);\n var _iteratorAbruptCompletion = false;\n var _didIteratorError = false;\n var _iteratorError;\n try {\n var _loop = function* _loop() {\n var newFile = _step.value;\n {\n yield createFile({\n file: newFile.fileObject\n }, {\n onSuccess: _ref2 => {\n var {\n file\n } = _ref2;\n return setFiles(prev => [...prev.filter(prevFile => prevFile.id !== newFile.id), file]);\n },\n onError: () => {\n addToast({\n type: 'error',\n message: 'Could not upload file. Please try again.'\n });\n setFiles(prev => prev.filter(prevFile => prevFile.id !== newFile.id));\n }\n });\n }\n };\n for (var _iterator = _asyncIterator(newFiles), _step; _iteratorAbruptCompletion = !(_step = yield _iterator.next()).done; _iteratorAbruptCompletion = false) {\n yield* _loop();\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (_iteratorAbruptCompletion && _iterator.return != null) {\n yield _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n });\n return function (_x) {\n return _ref.apply(this, arguments);\n };\n }(), [addToast, createFile, setFiles]);\n return /*#__PURE__*/_jsx(Flex, _objectSpread(_objectSpread({\n pt: \"2\",\n pr: \"2\",\n flexGrow: \"0\"\n }, props), {}, {\n children: /*#__PURE__*/_jsxs(IconButton, {\n type: \"button\",\n variant: \"ghost\",\n color: \"gray\",\n disabled: isDisabled || isLoading,\n style: {\n position: 'relative',\n overflow: 'hidden'\n },\n children: [/*#__PURE__*/_jsx(FilePlusIcon, {}), /*#__PURE__*/_jsx(\"input\", {\n type: \"file\",\n multiple: true,\n accept: accept,\n onChange: onChange,\n style: {\n cursor: 'pointer',\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n opacity: 0\n }\n })]\n })\n }));\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { c as _c } from \"react-compiler-runtime\";\nimport { useMutation, useQueryClient } from '@tanstack/react-query';\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext';\nimport { useThreadContext } from '@/hooks/threads/useThreadContext';\nimport { mutationOptions } from './lib/mutationOptions';\nexport var useCreateFile = t0 => {\n var $ = _c(15);\n var t1;\n if ($[0] !== t0) {\n t1 = t0 === undefined ? {\n onError: _temp\n } : t0;\n $[0] = t0;\n $[1] = t1;\n } else {\n t1 = $[1];\n }\n var {\n onError: t2\n } = t1;\n var t3;\n if ($[2] !== t2) {\n t3 = t2 === undefined ? _temp2 : t2;\n $[2] = t2;\n $[3] = t3;\n } else {\n t3 = $[3];\n }\n var onError = t3;\n var queryClient = useQueryClient();\n var superinterfaceContext = useSuperinterfaceContext();\n var threadContext = useThreadContext();\n var t4;\n if ($[4] !== onError || $[5] !== queryClient || $[6] !== superinterfaceContext || $[7] !== threadContext) {\n t4 = mutationOptions({\n queryClient,\n threadContext,\n superinterfaceContext,\n onError\n });\n $[4] = onError;\n $[5] = queryClient;\n $[6] = superinterfaceContext;\n $[7] = threadContext;\n $[8] = t4;\n } else {\n t4 = $[8];\n }\n var props = useMutation(t4);\n var t5;\n if ($[9] !== props || $[10] !== threadContext.variables) {\n t5 = function t5() {\n for (var _len = arguments.length, t6 = new Array(_len), _key = 0; _key < _len; _key++) {\n t6[_key] = arguments[_key];\n }\n var args = t6;\n var [firstArg, ...restArgs] = args;\n return props.mutateAsync(_objectSpread(_objectSpread({}, threadContext.variables), firstArg), ...restArgs);\n };\n $[9] = props;\n $[10] = threadContext.variables;\n $[11] = t5;\n } else {\n t5 = $[11];\n }\n var t6;\n if ($[12] !== props || $[13] !== t5) {\n t6 = _objectSpread(_objectSpread({}, props), {}, {\n createFile: t5\n });\n $[12] = props;\n $[13] = t5;\n $[14] = t6;\n } else {\n t6 = $[14];\n }\n return t6;\n};\nfunction _temp() {}\nfunction _temp2() {}","export var formData = variables => {\n var data = new FormData();\n for (var key in variables) {\n data.append(key, variables[key]);\n }\n return data;\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { formData } from './formData';\nexport var body = _ref => {\n var _superinterfaceContex;\n var {\n variables,\n superinterfaceContext\n } = _ref;\n if (variables.threadId) return formData(variables);\n if (!variables.assistantId) return formData(variables);\n if (!((_superinterfaceContex = superinterfaceContext.threadIdStorageOptions) !== null && _superinterfaceContex !== void 0 && _superinterfaceContex.get)) return formData(variables);\n var threadId = superinterfaceContext.threadIdStorageOptions.get({\n assistantId: variables.assistantId\n });\n if (!threadId) return formData(variables);\n return formData(_objectSpread(_objectSpread({}, variables), {}, {\n threadId\n }));\n};","function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }\nfunction _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"next\", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"throw\", n); } _next(void 0); }); }; }\nimport { body } from './body';\nexport var mutationFn = _ref => {\n var {\n superinterfaceContext,\n queryClient,\n threadContext\n } = _ref;\n return /*#__PURE__*/function () {\n var _ref2 = _asyncToGenerator(function* (variables) {\n var response = yield fetch(\"\".concat(superinterfaceContext.baseUrl, \"/files\"), {\n method: 'POST',\n body: body({\n variables,\n superinterfaceContext\n })\n });\n var result = yield response.json();\n return result;\n });\n return function (_x) {\n return _ref2.apply(this, arguments);\n };\n }();\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { mutationFn } from './mutationFn';\nexport var mutationOptions = _ref => {\n var {\n queryClient,\n threadContext,\n superinterfaceContext,\n onError\n } = _ref;\n var mutationKey = ['createFile', threadContext.variables];\n return _objectSpread(_objectSpread(_objectSpread({\n mutationFn: mutationFn({\n queryClient,\n superinterfaceContext,\n threadContext\n }),\n onError\n }, threadContext.defaultOptions.mutations), queryClient.getMutationDefaults(mutationKey)), {}, {\n mutationKey\n });\n};","import { Preview } from './Preview';\nimport { Control } from './Control';\nexport var Files = {\n Preview,\n Control\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { Submit } from './Submit';\nimport { Root } from './Root';\nimport { Field } from './Field';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var MessageForm = props => /*#__PURE__*/_jsx(Root, _objectSpread(_objectSpread({}, props), {}, {\n children: /*#__PURE__*/_jsxs(Field.Root, {\n children: [/*#__PURE__*/_jsx(Field.Control, {}), /*#__PURE__*/_jsx(Submit, {})]\n })\n}));\nMessageForm.Root = Root;\nMessageForm.Field = Field;\nMessageForm.Submit = Submit;","var _excluded = [\"children\", \"style\", \"className\"];\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var s = Object.getOwnPropertySymbols(e); for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }\nfunction _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (e.includes(n)) continue; t[n] = r[n]; } return t; }\nimport { Flex } from '@radix-ui/themes';\nimport { Provider } from '@/components/threads/Thread/Provider';\nimport { ToastsProvider } from '@/components/toasts/ToastsProvider';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var Root = _ref => {\n var {\n children,\n style,\n className\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/_jsx(ToastsProvider, {\n bottom: \"var(--space-9)\",\n children: /*#__PURE__*/_jsx(Provider, _objectSpread(_objectSpread({}, rest), {}, {\n children: /*#__PURE__*/_jsx(Flex, {\n direction: \"column\",\n flexGrow: \"1\",\n className: className,\n style: style,\n children: children\n })\n }))\n });\n};","'use client';\n\nimport { SuperinterfaceProvider } from '@/components/core/SuperinterfaceProvider';\nexport var Provider = SuperinterfaceProvider;","import { c as _c } from \"react-compiler-runtime\";\nimport { useState, useCallback } from 'react';\nimport * as Toast from '@radix-ui/react-toast';\nimport { ToastsContext } from '@/contexts/toasts/ToastsContext';\nimport { CustomToast } from './CustomToast';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var ToastsProvider = t0 => {\n var $ = _c(15);\n var {\n children,\n bottom: t1\n } = t0;\n var bottom = t1 === undefined ? 0 : t1;\n var t2;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t2 = [];\n $[0] = t2;\n } else {\n t2 = $[0];\n }\n var [toasts, setToasts] = useState(t2);\n var t3;\n if ($[1] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t3 = toast => setToasts(prevToasts => [...prevToasts, toast]);\n $[1] = t3;\n } else {\n t3 = $[1];\n }\n var addToast = t3;\n var t4;\n if ($[2] !== toasts) {\n t4 = {\n toasts,\n addToast\n };\n $[2] = toasts;\n $[3] = t4;\n } else {\n t4 = $[3];\n }\n var t5;\n if ($[4] !== toasts) {\n t5 = Array.from(toasts).map(_temp);\n $[4] = toasts;\n $[5] = t5;\n } else {\n t5 = $[5];\n }\n var t6;\n if ($[6] !== bottom) {\n t6 = /*#__PURE__*/_jsx(Toast.Viewport, {\n style: {\n position: \"absolute\",\n bottom,\n right: 0,\n display: \"flex\",\n flexDirection: \"column\",\n padding: \"var(--space-5)\",\n gap: \"var(--space-3)\",\n width: \"390px\",\n maxWidth: \"100vw\",\n margin: 0,\n listStyle: \"none\",\n zIndex: 99999999999999,\n outline: \"none\"\n }\n });\n $[6] = bottom;\n $[7] = t6;\n } else {\n t6 = $[7];\n }\n var t7;\n if ($[8] !== children || $[9] !== t5 || $[10] !== t6) {\n t7 = /*#__PURE__*/_jsxs(Toast.Provider, {\n children: [children, t5, t6]\n });\n $[8] = children;\n $[9] = t5;\n $[10] = t6;\n $[11] = t7;\n } else {\n t7 = $[11];\n }\n var t8;\n if ($[12] !== t4 || $[13] !== t7) {\n t8 = /*#__PURE__*/_jsx(ToastsContext.Provider, {\n value: t4,\n children: t7\n });\n $[12] = t4;\n $[13] = t7;\n $[14] = t8;\n } else {\n t8 = $[14];\n }\n return t8;\n};\nfunction _temp(toast_0, index) {\n return /*#__PURE__*/_jsx(CustomToast, {\n toast: toast_0\n }, index);\n}","import * as Toast from '@radix-ui/react-toast';\nimport { Card, Text, Flex } from '@radix-ui/themes';\nimport { CheckCircledIcon, CrossCircledIcon } from '@radix-ui/react-icons';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var CustomToast = _ref => {\n var {\n toast\n } = _ref;\n return /*#__PURE__*/_jsx(Toast.Root, {\n children: /*#__PURE__*/_jsx(Card, {\n children: /*#__PURE__*/_jsx(Toast.Title, {\n children: /*#__PURE__*/_jsxs(Flex, {\n children: [/*#__PURE__*/_jsx(Flex, {\n pr: \"2\",\n height: \"14px\",\n align: \"center\",\n children: toast.type === 'success' ? /*#__PURE__*/_jsx(CheckCircledIcon, {\n color: \"var(--accent-9)\"\n }) : /*#__PURE__*/_jsx(CrossCircledIcon, {\n color: \"var(--red-9)\"\n })\n }), /*#__PURE__*/_jsx(Text, {\n weight: \"medium\",\n size: \"1\",\n children: toast.message\n })]\n })\n })\n })\n });\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { Messages } from '@/components/threads/Thread/Messages';\nimport { MessageForm } from '@/components/threads/Thread/MessageForm';\nimport { Root } from '@/components/threads/Thread/Root';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var Thread = props => /*#__PURE__*/_jsxs(Root, _objectSpread(_objectSpread({}, props), {}, {\n children: [/*#__PURE__*/_jsx(Messages, {}), /*#__PURE__*/_jsx(MessageForm, {})]\n}));\nThread.Root = Root;\nThread.Messages = Messages;\nThread.MessageForm = MessageForm;","import { useContext } from 'react';\nimport { MessageContext } from '@/contexts/messages/MessageContext';\nexport var useMessageContext = () => {\n return useContext(MessageContext);\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { c as _c } from \"react-compiler-runtime\";\nimport { useMemo } from 'react';\nimport { useQuery } from '@tanstack/react-query';\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext';\nimport { queryOptions } from './lib/queryOptions';\nexport var useAssistant = t0 => {\n var $ = _c(6);\n var {\n assistantId\n } = t0;\n var superinterfaceContext = useSuperinterfaceContext();\n var t1;\n if ($[0] !== assistantId || $[1] !== superinterfaceContext) {\n t1 = queryOptions({\n assistantId,\n superinterfaceContext\n });\n $[0] = assistantId;\n $[1] = superinterfaceContext;\n $[2] = t1;\n } else {\n t1 = $[2];\n }\n var props = useQuery(t1);\n var t2;\n var t3 = props.data ? props.data.assistant : null;\n var t4;\n if ($[3] !== props || $[4] !== t3) {\n t4 = _objectSpread(_objectSpread({}, props), {}, {\n assistant: t3\n });\n $[3] = props;\n $[4] = t3;\n $[5] = t4;\n } else {\n t4 = $[5];\n }\n t2 = t4;\n return t2;\n};","import { queryOptions as tanstackQueryOptions } from '@tanstack/react-query';\nimport { queryFn } from './queryFn';\nexport var queryOptions = _ref => {\n var {\n assistantId,\n superinterfaceContext\n } = _ref;\n return tanstackQueryOptions({\n queryKey: ['assistants', {\n assistantId\n }],\n queryFn: queryFn({\n superinterfaceContext\n })\n });\n};","function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }\nfunction _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"next\", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"throw\", n); } _next(void 0); }); }; }\nexport var queryFn = _ref => {\n var {\n superinterfaceContext\n } = _ref;\n return /*#__PURE__*/function () {\n var _ref3 = _asyncToGenerator(function* (_ref2) {\n var {\n queryKey\n } = _ref2;\n var [_key, {\n assistantId\n }] = queryKey;\n var params = new URLSearchParams({\n publicApiKey: superinterfaceContext.variables.publicApiKey\n });\n return fetch(\"\".concat(superinterfaceContext.baseUrl, \"/assistants/\").concat(assistantId, \"?\").concat(params)).then(/*#__PURE__*/function () {\n var _ref4 = _asyncToGenerator(function* (response) {\n if (response.status !== 200) {\n try {\n var errorResponse = yield response.json();\n throw new Error(errorResponse.error);\n } catch (error) {\n throw new Error('Failed to fetch');\n }\n }\n return response.json();\n });\n return function (_x2) {\n return _ref4.apply(this, arguments);\n };\n }());\n });\n return function (_x) {\n return _ref3.apply(this, arguments);\n };\n }();\n};","import { c as _c } from \"react-compiler-runtime\";\nimport { useState } from 'react';\nimport { ThreadDialogContext } from '@/contexts/threads/ThreadDialogContext';\nimport { useThreadDialogContext } from '@/hooks/threads/useThreadDialogContext';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var Provider = t0 => {\n var $ = _c(5);\n var {\n children\n } = t0;\n var threadDialogContext = useThreadDialogContext();\n var [isOpen, setIsOpen] = useState(threadDialogContext.isOpen);\n var t1;\n if ($[0] !== isOpen) {\n t1 = {\n isOpen,\n setIsOpen\n };\n $[0] = isOpen;\n $[1] = t1;\n } else {\n t1 = $[1];\n }\n var t2;\n if ($[2] !== children || $[3] !== t1) {\n t2 = /*#__PURE__*/_jsx(ThreadDialogContext.Provider, {\n value: t1,\n children: children\n });\n $[2] = children;\n $[3] = t1;\n $[4] = t2;\n } else {\n t2 = $[4];\n }\n return t2;\n};","'use client';\n\nimport { createContext } from 'react';\nexport var ThreadDialogContext = /*#__PURE__*/createContext({\n isOpen: false,\n setIsOpen: () => {}\n});","import { useContext } from 'react';\nimport { ThreadDialogContext } from '@/contexts/threads/ThreadDialogContext';\nexport var useThreadDialogContext = () => {\n return useContext(ThreadDialogContext);\n};","import { Provider } from '@/components/threads/ThreadDialog/Provider';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var Root = _ref => {\n var {\n children\n } = _ref;\n return /*#__PURE__*/_jsx(Provider, {\n children: children\n });\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { c as _c } from \"react-compiler-runtime\";\nimport { Flex } from '@radix-ui/themes';\nimport { useThreadDialogContext } from '@/hooks/threads/useThreadDialogContext';\nimport { Button } from './Button';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nvar Root = t0 => {\n var $ = _c(14);\n var {\n children,\n style,\n className\n } = t0;\n var {\n setIsOpen,\n isOpen\n } = useThreadDialogContext();\n var t1 = isOpen ? \"none\" : \"flex\";\n var t2;\n if ($[0] !== t1) {\n t2 = {\n initial: t1,\n sm: \"flex\"\n };\n $[0] = t1;\n $[1] = t2;\n } else {\n t2 = $[1];\n }\n var t3;\n if ($[2] !== setIsOpen) {\n t3 = () => setIsOpen(_temp);\n $[2] = setIsOpen;\n $[3] = t3;\n } else {\n t3 = $[3];\n }\n var t4;\n if ($[4] !== style) {\n t4 = style !== null && style !== void 0 ? style : {};\n $[4] = style;\n $[5] = t4;\n } else {\n t4 = $[5];\n }\n var t5;\n if ($[6] !== t4) {\n t5 = _objectSpread({\n zIndex: 9999999999\n }, t4);\n $[6] = t4;\n $[7] = t5;\n } else {\n t5 = $[7];\n }\n var t6;\n if ($[8] !== children || $[9] !== className || $[10] !== t2 || $[11] !== t3 || $[12] !== t5) {\n t6 = /*#__PURE__*/_jsx(Flex, {\n display: t2,\n onClick: t3,\n direction: \"column\",\n flexShrink: \"0\",\n justify: \"end\",\n align: \"end\",\n position: \"fixed\",\n bottom: \"24px\",\n right: \"24px\",\n className: className,\n style: t5,\n children: children\n });\n $[8] = children;\n $[9] = className;\n $[10] = t2;\n $[11] = t3;\n $[12] = t5;\n $[13] = t6;\n } else {\n t6 = $[13];\n }\n return t6;\n};\nexport var Trigger = args => /*#__PURE__*/_jsx(Root, _objectSpread(_objectSpread({}, args), {}, {\n children: /*#__PURE__*/_jsx(Button, {})\n}));\nTrigger.Root = Root;\nTrigger.Button = Button;\nfunction _temp(prev) {\n return !prev;\n}","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { IconButton } from '@radix-ui/themes';\nimport { ChatBubbleIcon } from '@radix-ui/react-icons';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var Button = props => /*#__PURE__*/_jsx(IconButton, _objectSpread(_objectSpread({\n size: \"4\",\n radius: \"full\"\n}, props), {}, {\n children: /*#__PURE__*/_jsx(ChatBubbleIcon, {})\n}));","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { c as _c } from \"react-compiler-runtime\";\nimport { Card, Inset, Flex } from '@radix-ui/themes';\nimport { useThreadDialogContext } from '@/hooks/threads/useThreadDialogContext';\nimport { Thread } from '@/components/threads/Thread';\nimport { Close } from '@/components/threads/ThreadDialog/Close';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nvar Root = t0 => {\n var $ = _c(19);\n var {\n children,\n className,\n style\n } = t0;\n var {\n isOpen\n } = useThreadDialogContext();\n if (!isOpen) {\n return null;\n }\n var t1;\n var t2;\n var t3;\n var t4;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t1 = {\n initial: \"0\",\n sm: \"72px\"\n };\n t2 = {\n initial: \"0\",\n sm: \"24px\"\n };\n t3 = {\n initial: undefined,\n sm: \"720px\"\n };\n t4 = {\n initial: undefined,\n sm: \"400px\"\n };\n $[0] = t1;\n $[1] = t2;\n $[2] = t3;\n $[3] = t4;\n } else {\n t1 = $[0];\n t2 = $[1];\n t3 = $[2];\n t4 = $[3];\n }\n var t5;\n if ($[4] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t5 = {\n initial: \"100%\",\n sm: \"calc(100% - 96px)\"\n };\n $[4] = t5;\n } else {\n t5 = $[4];\n }\n var t6;\n if ($[5] !== style) {\n t6 = _objectSpread({\n zIndex: 9999999999\n }, style);\n $[5] = style;\n $[6] = t6;\n } else {\n t6 = $[6];\n }\n var t7;\n var t8;\n if ($[7] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t7 = {\n initial: undefined,\n sm: \"3\"\n };\n t8 = {\n position: \"relative\",\n display: \"flex\",\n flexGrow: 1\n };\n $[7] = t7;\n $[8] = t8;\n } else {\n t7 = $[7];\n t8 = $[8];\n }\n var t9;\n if ($[9] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t9 = {\n display: \"flex\",\n flexGrow: 1\n };\n $[9] = t9;\n } else {\n t9 = $[9];\n }\n var t10;\n if ($[10] !== children) {\n t10 = /*#__PURE__*/_jsx(Inset, {\n clip: \"padding-box\",\n side: \"all\",\n pb: \"current\",\n style: t9,\n children: children\n });\n $[10] = children;\n $[11] = t10;\n } else {\n t10 = $[11];\n }\n var t11;\n if ($[12] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t11 = /*#__PURE__*/_jsx(Close, {});\n $[12] = t11;\n } else {\n t11 = $[12];\n }\n var t12;\n if ($[13] !== t10) {\n t12 = /*#__PURE__*/_jsxs(Card, {\n mb: t7,\n style: t8,\n children: [t10, t11]\n });\n $[13] = t10;\n $[14] = t12;\n } else {\n t12 = $[14];\n }\n var t13;\n if ($[15] !== className || $[16] !== t12 || $[17] !== t6) {\n t13 = /*#__PURE__*/_jsx(Flex, {\n className: className,\n direction: \"column\",\n justify: \"end\",\n position: \"fixed\",\n bottom: t1,\n right: t2,\n maxHeight: t3,\n maxWidth: t4,\n width: \"100%\",\n height: t5,\n style: t6,\n children: t12\n });\n $[15] = className;\n $[16] = t12;\n $[17] = t6;\n $[18] = t13;\n } else {\n t13 = $[18];\n }\n return t13;\n};\nvar Messages = _ref => {\n var {\n className,\n style\n } = _ref;\n return /*#__PURE__*/_jsx(Thread.Messages, {\n className: className,\n style: _objectSpread({\n paddingTop: 'var(--space-5)',\n paddingRight: 'var(--space-5)',\n paddingLeft: 'var(--space-5)'\n }, style)\n });\n};\nvar FormContainer = _ref2 => {\n var {\n children,\n className,\n style\n } = _ref2;\n return /*#__PURE__*/_jsx(Flex, {\n direction: \"column\",\n pl: \"5\",\n pr: \"5\",\n pb: \"3\",\n flexShrink: \"0\",\n className: className,\n style: style,\n children: children\n });\n};\nexport var Content = props => /*#__PURE__*/_jsx(Root, _objectSpread(_objectSpread({}, props), {}, {\n children: /*#__PURE__*/_jsxs(Thread.Root, {\n children: [/*#__PURE__*/_jsx(Messages, {}), /*#__PURE__*/_jsx(FormContainer, {\n children: /*#__PURE__*/_jsx(Thread.MessageForm, {})\n })]\n })\n}));\nContent.Root = Root;\nContent.Messages = Messages;\nContent.FormContainer = FormContainer;","import { c as _c } from \"react-compiler-runtime\";\nimport { Cross1Icon } from '@radix-ui/react-icons';\nimport { IconButton, Flex } from '@radix-ui/themes';\nimport { useThreadDialogContext } from '@/hooks/threads/useThreadDialogContext';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var Close = () => {\n var $ = _c(9);\n var {\n setIsOpen,\n isOpen\n } = useThreadDialogContext();\n var t0 = isOpen ? \"flex\" : \"none\";\n var t1;\n if ($[0] !== t0) {\n t1 = {\n initial: t0,\n sm: \"none\"\n };\n $[0] = t0;\n $[1] = t1;\n } else {\n t1 = $[1];\n }\n var t2;\n if ($[2] !== setIsOpen) {\n t2 = () => setIsOpen(_temp);\n $[2] = setIsOpen;\n $[3] = t2;\n } else {\n t2 = $[3];\n }\n var t3;\n if ($[4] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t3 = {\n zIndex: 9999999999\n };\n $[4] = t3;\n } else {\n t3 = $[4];\n }\n var t4;\n if ($[5] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t4 = /*#__PURE__*/_jsx(IconButton, {\n size: \"2\",\n variant: \"soft\",\n children: /*#__PURE__*/_jsx(Cross1Icon, {})\n });\n $[5] = t4;\n } else {\n t4 = $[5];\n }\n var t5;\n if ($[6] !== t1 || $[7] !== t2) {\n t5 = /*#__PURE__*/_jsx(Flex, {\n display: t1,\n onClick: t2,\n direction: \"column\",\n flexShrink: \"0\",\n justify: \"end\",\n align: \"end\",\n position: \"absolute\",\n top: \"24px\",\n right: \"24px\",\n style: t3,\n children: t4\n });\n $[6] = t1;\n $[7] = t2;\n $[8] = t5;\n } else {\n t5 = $[8];\n }\n return t5;\n};\nfunction _temp(prev) {\n return !prev;\n}","import { Root } from '@/components/threads/ThreadDialog/Root';\nimport { Trigger } from '@/components/threads/ThreadDialog/Trigger';\nimport { Content } from '@/components/threads/ThreadDialog/Content';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var ThreadDialog = () => /*#__PURE__*/_jsxs(Root, {\n children: [/*#__PURE__*/_jsx(Content, {}), /*#__PURE__*/_jsx(Trigger, {})]\n});\nThreadDialog.Root = Root;\nThreadDialog.Trigger = Trigger;\nThreadDialog.Content = Content;","'use client';\n\n// import 'regenerator-runtime/runtime'\nvar _excluded = [\"children\"];\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var s = Object.getOwnPropertySymbols(e); for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }\nfunction _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (e.includes(n)) continue; t[n] = r[n]; } return t; }\nfunction asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }\nfunction _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"next\", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"throw\", n); } _next(void 0); }); }; }\nimport { c as _c } from \"react-compiler-runtime\";\nimport { Flex } from '@radix-ui/themes';\nimport { AudioThreadContext } from '@/contexts/threads/AudioThreadContext';\nimport { useCreateMessage } from '@/hooks/messages/useCreateMessage';\nimport { usePermission } from '@/hooks/misc/usePermission';\nimport { blobToData } from './lib/blobToData';\nimport { useStatus } from '@/hooks/audioThreads/useStatus';\nimport { useRecorder } from '@/hooks/audioThreads/useRecorder';\nimport { useMessageAudio } from '@/hooks/audioThreads/useMessageAudio';\nimport { useQueryClient } from '@tanstack/react-query';\nimport { useThreadContext } from '@/hooks/threads/useThreadContext';\nimport { useToasts } from '@/hooks/toasts/useToasts';\nimport { createMessageDefaultOnError } from '@/lib/errors/createMessageDefaultOnError';\nimport { ToastsProvider } from '@/components/toasts/ToastsProvider';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nvar Content = t0 => {\n var $ = _c(21);\n var {\n children,\n className,\n style\n } = t0;\n var {\n addToast\n } = useToasts();\n var queryClient = useQueryClient();\n var threadContext = useThreadContext();\n var createMessageProps = useCreateMessage({\n onError: error => {\n createMessageDefaultOnError({\n queryClient,\n addToast,\n threadContext\n })(error);\n recorderProps.start();\n }\n });\n var t1;\n if ($[0] !== createMessageProps) {\n t1 = {\n isStopOnSilence: true,\n onStart: _temp,\n onStop: function () {\n var _onStop = _asyncToGenerator(function* (_event, chunks) {\n var blob = new Blob(chunks, {\n type: chunks[0].type\n });\n var audioContent = yield blobToData(blob);\n return createMessageProps.createMessage({\n audioContent\n });\n });\n function onStop(_x, _x2) {\n return _onStop.apply(this, arguments);\n }\n return onStop;\n }()\n };\n $[0] = createMessageProps;\n $[1] = t1;\n } else {\n t1 = $[1];\n }\n var recorderProps = useRecorder(t1);\n var t2;\n if ($[2] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t2 = {\n name: \"microphone\"\n };\n $[2] = t2;\n } else {\n t2 = $[2];\n }\n var microphonePermission = usePermission(t2);\n var t3;\n if ($[3] !== microphonePermission || $[4] !== recorderProps) {\n t3 = {\n onEnd: () => {\n if (microphonePermission === \"granted\") {\n recorderProps.start();\n }\n }\n };\n $[3] = microphonePermission;\n $[4] = recorderProps;\n $[5] = t3;\n } else {\n t3 = $[5];\n }\n var messageAudioProps = useMessageAudio(t3);\n var t4 = recorderProps;\n var t5;\n if ($[6] !== createMessageProps || $[7] !== messageAudioProps || $[8] !== t4) {\n t5 = {\n recorderProps: t4,\n createMessageProps,\n messageAudioProps\n };\n $[6] = createMessageProps;\n $[7] = messageAudioProps;\n $[8] = t4;\n $[9] = t5;\n } else {\n t5 = $[9];\n }\n var {\n status\n } = useStatus(t5);\n var t6 = recorderProps;\n var t7;\n if ($[10] !== messageAudioProps || $[11] !== status || $[12] !== t6) {\n t7 = {\n status,\n recorderProps: t6,\n messageAudioProps\n };\n $[10] = messageAudioProps;\n $[11] = status;\n $[12] = t6;\n $[13] = t7;\n } else {\n t7 = $[13];\n }\n var t8;\n if ($[14] !== children || $[15] !== className || $[16] !== style) {\n t8 = /*#__PURE__*/_jsx(Flex, {\n direction: \"column\",\n flexGrow: \"1\",\n p: \"9\",\n className: className,\n style: style,\n children: children\n });\n $[14] = children;\n $[15] = className;\n $[16] = style;\n $[17] = t8;\n } else {\n t8 = $[17];\n }\n var t9;\n if ($[18] !== t7 || $[19] !== t8) {\n t9 = /*#__PURE__*/_jsx(AudioThreadContext.Provider, {\n value: t7,\n children: t8\n });\n $[18] = t7;\n $[19] = t8;\n $[20] = t9;\n } else {\n t9 = $[20];\n }\n return t9;\n};\nexport var Root = _ref => {\n var {\n children\n } = _ref,\n rest = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/_jsx(ToastsProvider, {\n children: /*#__PURE__*/_jsx(Content, _objectSpread(_objectSpread({}, rest), {}, {\n children: children\n }))\n });\n};\nfunction _temp() {\n return _temp2.apply(this, arguments);\n}\nfunction _temp2() {\n _temp2 = _asyncToGenerator(function* () {});\n return _temp2.apply(this, arguments);\n}","'use client';\n\nfunction asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }\nfunction _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"next\", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"throw\", n); } _next(void 0); }); }; }\nimport { createContext } from 'react';\nexport var AudioThreadContext = /*#__PURE__*/createContext({\n status: 'idle',\n recorderProps: {\n status: 'idle',\n start: function () {\n var _start = _asyncToGenerator(function* () {});\n function start() {\n return _start.apply(this, arguments);\n }\n return start;\n }(),\n stop: function () {\n var _stop = _asyncToGenerator(function* () {});\n function stop() {\n return _stop.apply(this, arguments);\n }\n return stop;\n }(),\n pause: function () {\n var _pause = _asyncToGenerator(function* () {});\n function pause() {\n return _pause.apply(this, arguments);\n }\n return pause;\n }(),\n resume: function () {\n var _resume = _asyncToGenerator(function* () {});\n function resume() {\n return _resume.apply(this, arguments);\n }\n return resume;\n }(),\n visualizationAnalyser: null\n },\n // @ts-ignore-next-line\n messageAudioProps: {\n visualizationAnalyser: null,\n playing: false,\n paused: false,\n isReady: false,\n play: function () {\n var _play = _asyncToGenerator(function* () {});\n function play() {\n return _play.apply(this, arguments);\n }\n return play;\n }(),\n pause: function () {\n var _pause2 = _asyncToGenerator(function* () {});\n function pause() {\n return _pause2.apply(this, arguments);\n }\n return pause;\n }()\n }\n});","import { c as _c } from \"react-compiler-runtime\";\n// From: https://github.com/streamich/react-use/blob/ade8d3905f544305515d010737b4ae604cc51024/src/usePermission.ts\nimport { useEffect, useState } from 'react';\nimport { noop, off, on } from './util';\n\n// @ts-ignore-next-line\n\n// @ts-ignore-next-line\n\n// const usePermission = <T extends PermissionDescriptor>(permissionDesc: T): IState => {\nexport var usePermission = permissionDesc => {\n var $ = _c(3);\n var [state, setState] = useState(\"\");\n var t0;\n var t1;\n if ($[0] !== permissionDesc) {\n t0 = () => {\n var mounted;\n mounted = true;\n var permissionStatus;\n permissionStatus = null;\n var onChange = () => {\n if (!mounted) {\n return;\n }\n setState(() => {\n var _permissionStatus$sta, _permissionStatus;\n return (_permissionStatus$sta = (_permissionStatus = permissionStatus) === null || _permissionStatus === void 0 ? void 0 : _permissionStatus.state) !== null && _permissionStatus$sta !== void 0 ? _permissionStatus$sta : \"\";\n });\n };\n navigator.permissions.query(permissionDesc).then(status => {\n permissionStatus = status;\n on(permissionStatus, \"change\", onChange);\n onChange();\n }).catch(noop);\n return () => {\n permissionStatus && off(permissionStatus, \"change\", onChange);\n mounted = false;\n permissionStatus = null;\n };\n };\n t1 = [permissionDesc];\n $[0] = permissionDesc;\n $[1] = t0;\n $[2] = t1;\n } else {\n t0 = $[1];\n t1 = $[2];\n }\n useEffect(t0, t1);\n return state;\n};","// From: https://github.com/streamich/react-use/blob/ade8d3905f544305515d010737b4ae604cc51024/src/misc/util.ts\nexport var noop = () => {};\nexport function on(obj) {\n if (obj && obj.addEventListener) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n obj.addEventListener(...args);\n }\n}\nexport function off(obj) {\n if (obj && obj.removeEventListener) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n obj.removeEventListener(...args);\n }\n}","export var blobToData = blob => new Promise(resolve => {\n var reader = new FileReader();\n reader.onloadend = () => resolve(reader.result);\n reader.readAsDataURL(blob);\n});","import { c as _c } from \"react-compiler-runtime\";\nimport { useMemo } from 'react';\nimport { useLatestMessage } from '@/hooks/messages/useLatestMessage';\nexport var useStatus = t0 => {\n var $ = _c(2);\n var {\n messageAudioProps,\n recorderProps,\n createMessageProps\n } = t0;\n var latestMessageProps = useLatestMessage();\n var t1;\n bb0: {\n var _latestMessageProps$l;\n if (recorderProps.status === \"recording\") {\n t1 = \"recording\";\n break bb0;\n }\n if (createMessageProps.isPending) {\n t1 = \"creatingMessage\";\n break bb0;\n }\n if (messageAudioProps.paused || !messageAudioProps.isAudioPlayed) {\n t1 = \"playerPaused\";\n break bb0;\n }\n if (messageAudioProps.playing || messageAudioProps.isPending) {\n t1 = \"playing\";\n break bb0;\n }\n if (!messageAudioProps.isAudioPlayed && !messageAudioProps.isReady) {\n t1 = \"loading\";\n break bb0;\n }\n if (((_latestMessageProps$l = latestMessageProps.latestMessage) === null || _latestMessageProps$l === void 0 ? void 0 : _latestMessageProps$l.status) === \"in_progress\") {\n t1 = \"creatingMessage\";\n break bb0;\n }\n if (recorderProps.status === \"idle\") {\n t1 = \"idle\";\n break bb0;\n }\n if (recorderProps.status === \"paused\") {\n t1 = \"recorderPaused\";\n break bb0;\n }\n t1 = \"loading\";\n }\n var status = t1;\n var t2;\n if ($[0] !== status) {\n t2 = {\n status\n };\n $[0] = status;\n $[1] = t2;\n } else {\n t2 = $[1];\n }\n return t2;\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }\nfunction _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"next\", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, \"throw\", n); } _next(void 0); }); }; }\nimport dayjs from 'dayjs';\nimport { useAudioCapture } from 'use-audio-capture';\nimport { useMemo, useRef, useState, useCallback, useEffect } from 'react';\nimport { useAudioPlayer } from 'react-use-audio-player';\nimport { useInterval } from '@/hooks/misc/useInterval';\nexport var useRecorder = _ref => {\n var {\n isStopOnSilence,\n onStart: _onStart,\n onStop: _onStop\n } = _ref;\n var [silenceStart, setSilenceStart] = useState(null);\n var [noiseStart, setNoiseStart] = useState(null);\n var [mediaStream, setMediaStream] = useState(null);\n var [status, setStatus] = useState('idle');\n var startAudioPlayer = useAudioPlayer();\n var endAudioPlayer = useAudioPlayer();\n var [isLoaded, setIsLoaded] = useState(false);\n useEffect(() => {\n if (isLoaded) return;\n setIsLoaded(true);\n\n // startAudioPlayer.load('/sounds/warning.wav', {\n // html5: true,\n // })\n // endAudioPlayer.load('/sounds/success.wav', {\n // html5: true,\n // })\n }, [isLoaded, startAudioPlayer, endAudioPlayer]);\n var audioCaptureProps = useAudioCapture({\n onStart: (event, opts) => {\n // startAudioPlayer.play()\n setStatus('recording');\n setMediaStream(opts.mediaStream);\n isInited.current = false;\n if (_onStart) _onStart(event, opts);\n setSilenceStart(null);\n setNoiseStart(null);\n },\n onStop: function () {\n var _onStop2 = _asyncToGenerator(function* () {\n // endAudioPlayer.play()\n setStatus('stopped');\n if (_onStop) yield _onStop(...arguments);\n setSilenceStart(null);\n setNoiseStart(null);\n });\n function onStop() {\n return _onStop2.apply(this, arguments);\n }\n return onStop;\n }(),\n onPause: () => {\n setStatus('paused');\n setSilenceStart(null);\n setNoiseStart(null);\n },\n onResume: () => {\n setStatus('recording');\n setSilenceStart(null);\n setNoiseStart(null);\n }\n });\n var [audioEngine, setAudioEngine] = useState(null);\n var isInited = useRef(false);\n useEffect(() => {\n if (!mediaStream) return;\n if (isInited.current) return;\n isInited.current = true;\n var audioContext = new AudioContext();\n setAudioEngine({\n source: audioContext.createMediaStreamSource(mediaStream),\n audioContext\n });\n }, [isInited, mediaStream]);\n var visualizationAnalyser = useMemo(() => {\n if (!audioEngine) return null;\n var result = audioEngine.audioContext.createAnalyser();\n audioEngine.source.connect(result);\n return result;\n }, [audioEngine]);\n var silenceAnalyser = useMemo(() => {\n if (!audioEngine) return null;\n var result_0 = audioEngine.audioContext.createAnalyser();\n result_0.minDecibels = -60;\n audioEngine.source.connect(result_0);\n return result_0;\n }, [audioEngine]);\n var handleSilence = useCallback(() => {\n if (!silenceAnalyser) return;\n var frequencyData = new Uint8Array(silenceAnalyser.frequencyBinCount);\n silenceAnalyser.getByteFrequencyData(frequencyData);\n var isSilent = frequencyData.every(f => f === 0);\n setSilenceStart(silenceStart_0 => {\n if (isSilent) return silenceStart_0 || dayjs();\n return null;\n });\n setNoiseStart(noiseStart_0 => {\n if (isSilent) return noiseStart_0;\n return noiseStart_0 || dayjs();\n });\n requestAnimationFrame(() => handleSilence());\n }, [silenceAnalyser, setNoiseStart, setSilenceStart]);\n useEffect(() => {\n if (!isStopOnSilence) return;\n requestAnimationFrame(() => handleSilence());\n }, [handleSilence, isStopOnSilence]);\n useInterval(() => {\n if (!isStopOnSilence) return;\n if (status !== 'recording') return;\n if (!silenceStart) return;\n if (!noiseStart) return;\n if (!silenceStart.isBefore(dayjs().subtract(1.5, 'second'))) return;\n audioCaptureProps.stop();\n }, 300);\n return _objectSpread(_objectSpread({}, audioCaptureProps), {}, {\n status,\n visualizationAnalyser\n });\n};","import { c as _c } from \"react-compiler-runtime\";\nimport { useEffect, useRef } from 'react';\nexport var useInterval = (callback, delay) => {\n var $ = _c(5);\n var savedCallback = useRef(_temp);\n var t0;\n if ($[0] !== callback) {\n t0 = () => {\n savedCallback.current = callback;\n };\n $[0] = callback;\n $[1] = t0;\n } else {\n t0 = $[1];\n }\n useEffect(t0);\n var t1;\n var t2;\n if ($[2] !== delay) {\n t1 = () => {\n if (delay !== null) {\n var interval = setInterval(() => savedCallback.current(), delay || 0);\n return () => clearInterval(interval);\n }\n };\n t2 = [delay];\n $[2] = delay;\n $[3] = t1;\n $[4] = t2;\n } else {\n t1 = $[3];\n t2 = $[4];\n }\n useEffect(t1, t2);\n};\nfunction _temp() {}","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { c as _c } from \"react-compiler-runtime\";\nimport { useMemo, useRef, useState, useEffect } from 'react';\nimport nlp from 'compromise';\nimport { Howler } from 'howler';\nimport { useAudioPlayer } from 'react-use-audio-player';\nimport { useLatestMessage } from '@/hooks/messages/useLatestMessage';\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext';\nimport { isOptimistic } from '@/lib/optimistic/isOptimistic';\nimport { input as getInput } from './lib/input';\nimport { isHtmlAudioSupported } from './lib/isHtmlAudioSupported';\nvar FULL_SENTENCE_REGEX = /[\\.?!]$/;\nvar getMessageSentences = _ref => {\n var {\n messageId,\n input\n } = _ref;\n var sentences = nlp(input).sentences().json();\n return sentences.map(sentence => ({\n messageId,\n sentence: sentence.text\n }));\n};\nexport var useMessageAudio = t0 => {\n var $ = _c(44);\n var {\n onEnd\n } = t0;\n var [isAudioPlayed, setIsAudioPlayed] = useState(false);\n var t1;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t1 = [];\n $[0] = t1;\n } else {\n t1 = $[0];\n }\n var [stoppedMessageIds, setStoppedMessageIds] = useState(t1);\n var t2;\n if ($[1] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t2 = [];\n $[1] = t2;\n } else {\n t2 = $[1];\n }\n var [playedMessageSentences, setPlayedMessageSentences] = useState(t2);\n var audioPlayer = useAudioPlayer();\n var nextAudioPlayer = useAudioPlayer();\n var superinterfaceContext = useSuperinterfaceContext();\n var [isPlaying, setIsPlaying] = useState(false);\n var latestMessageProps = useLatestMessage();\n var t3;\n bb0: {\n if (!latestMessageProps.latestMessage) {\n var _t;\n if ($[2] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t = [];\n $[2] = _t;\n } else {\n _t = $[2];\n }\n t3 = _t;\n break bb0;\n }\n if (latestMessageProps.latestMessage.role !== \"assistant\") {\n var _t2;\n if ($[3] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t2 = [];\n $[3] = _t2;\n } else {\n _t2 = $[3];\n }\n t3 = _t2;\n break bb0;\n }\n if (stoppedMessageIds.includes(latestMessageProps.latestMessage.id)) {\n var _t3;\n if ($[4] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t3 = [];\n $[4] = _t3;\n } else {\n _t3 = $[4];\n }\n t3 = _t3;\n break bb0;\n }\n var _t4;\n if ($[5] !== latestMessageProps.latestMessage || $[6] !== playedMessageSentences) {\n var input = getInput({\n message: latestMessageProps.latestMessage\n });\n if (!input) {\n var _t5;\n if ($[9] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t5 = [];\n $[9] = _t5;\n } else {\n _t5 = $[9];\n }\n t3 = _t5;\n break bb0;\n }\n var messageSentences = getMessageSentences({\n messageId: latestMessageProps.latestMessage.id,\n input\n });\n var _t6;\n if ($[10] !== playedMessageSentences) {\n _t6 = ms => !playedMessageSentences.find(pms => pms.messageId === ms.messageId && pms.sentence === ms.sentence);\n $[10] = playedMessageSentences;\n $[11] = _t6;\n } else {\n _t6 = $[11];\n }\n _t4 = messageSentences.filter(_t6);\n $[5] = latestMessageProps.latestMessage;\n $[6] = playedMessageSentences;\n $[7] = _t4;\n $[8] = t3;\n } else {\n _t4 = $[7];\n t3 = $[8];\n }\n t3 = _t4;\n }\n var unplayedMessageSentences = t3;\n var t4;\n if ($[12] !== audioPlayer || $[13] !== isAudioPlayed || $[14] !== isPlaying || $[15] !== latestMessageProps.latestMessage || $[16] !== nextAudioPlayer || $[17] !== onEnd || $[18] !== superinterfaceContext || $[19] !== unplayedMessageSentences) {\n t4 = () => {\n if (isPlaying) {\n return;\n }\n if (audioPlayer.playing) {\n return;\n }\n if (!latestMessageProps.latestMessage) {\n return;\n }\n if (latestMessageProps.latestMessage.role !== \"assistant\") {\n return;\n }\n var firstUnplayedMessageSentence = unplayedMessageSentences[0];\n if (!firstUnplayedMessageSentence) {\n return;\n }\n var isFullSentence = isOptimistic({\n id: latestMessageProps.latestMessage.id\n }) || latestMessageProps.latestMessage.status !== \"in_progress\" || FULL_SENTENCE_REGEX.test(firstUnplayedMessageSentence.sentence);\n if (!isFullSentence) {\n return;\n }\n setIsPlaying(true);\n setPlayedMessageSentences(prev => [...prev, firstUnplayedMessageSentence]);\n var searchParams = new URLSearchParams(_objectSpread({\n input: firstUnplayedMessageSentence.sentence\n }, superinterfaceContext.variables));\n audioPlayer.load(\"\".concat(superinterfaceContext.baseUrl, \"/tts?\").concat(searchParams), {\n format: \"mp3\",\n autoplay: isAudioPlayed,\n html5: isHtmlAudioSupported,\n onplay: () => {\n setIsAudioPlayed(true);\n },\n onstop: () => {\n setStoppedMessageIds(prev_0 => [...prev_0, firstUnplayedMessageSentence.messageId]);\n setIsPlaying(false);\n },\n onload: () => {\n var nextUnplayedMessageSentence = unplayedMessageSentences[1];\n if (!nextUnplayedMessageSentence) {\n return;\n }\n var isNextFullSentence = FULL_SENTENCE_REGEX.test(nextUnplayedMessageSentence.sentence);\n if (!isNextFullSentence) {\n return;\n }\n var nextSearchParams = new URLSearchParams(_objectSpread({\n input: nextUnplayedMessageSentence.sentence\n }, superinterfaceContext.variables));\n nextAudioPlayer.load(\"\".concat(superinterfaceContext.baseUrl, \"/tts?\").concat(nextSearchParams), {\n format: \"mp3\",\n autoplay: false,\n html5: isHtmlAudioSupported\n });\n },\n onend: () => {\n setIsPlaying(false);\n if (unplayedMessageSentences.length === 1 && latestMessageProps.latestMessage.status !== \"in_progress\") {\n onEnd();\n }\n }\n });\n };\n $[12] = audioPlayer;\n $[13] = isAudioPlayed;\n $[14] = isPlaying;\n $[15] = latestMessageProps.latestMessage;\n $[16] = nextAudioPlayer;\n $[17] = onEnd;\n $[18] = superinterfaceContext;\n $[19] = unplayedMessageSentences;\n $[20] = t4;\n } else {\n t4 = $[20];\n }\n var t5;\n if ($[21] !== audioPlayer || $[22] !== isPlaying || $[23] !== latestMessageProps || $[24] !== nextAudioPlayer || $[25] !== onEnd || $[26] !== playedMessageSentences || $[27] !== superinterfaceContext || $[28] !== unplayedMessageSentences) {\n t5 = [unplayedMessageSentences, isPlaying, superinterfaceContext, latestMessageProps, audioPlayer, nextAudioPlayer, playedMessageSentences, onEnd];\n $[21] = audioPlayer;\n $[22] = isPlaying;\n $[23] = latestMessageProps;\n $[24] = nextAudioPlayer;\n $[25] = onEnd;\n $[26] = playedMessageSentences;\n $[27] = superinterfaceContext;\n $[28] = unplayedMessageSentences;\n $[29] = t5;\n } else {\n t5 = $[29];\n }\n useEffect(t4, t5);\n var t6;\n if ($[30] !== audioPlayer) {\n t6 = [audioPlayer];\n $[30] = audioPlayer;\n $[31] = t6;\n } else {\n t6 = $[31];\n }\n useEffect(_temp, t6);\n var [audioEngine, setAudioEngine] = useState(null);\n var isAudioEngineInited = useRef(false);\n var t7;\n if ($[32] !== audioPlayer.playing) {\n t7 = () => {\n if (!audioPlayer.playing) {\n return;\n }\n if (isAudioEngineInited.current) {\n return;\n }\n isAudioEngineInited.current = true;\n if (isHtmlAudioSupported) {\n var audioContext = new AudioContext();\n setAudioEngine({\n source: audioContext.createMediaElementSource(Howler._howls[0]._sounds[0]._node),\n audioContext\n });\n } else {\n setAudioEngine({\n source: Howler.masterGain,\n audioContext: Howler.ctx\n });\n }\n };\n $[32] = audioPlayer.playing;\n $[33] = t7;\n } else {\n t7 = $[33];\n }\n var t8;\n if ($[34] !== audioPlayer) {\n t8 = [audioPlayer, isAudioEngineInited];\n $[34] = audioPlayer;\n $[35] = t8;\n } else {\n t8 = $[35];\n }\n useEffect(t7, t8);\n var t9;\n bb1: {\n if (!audioEngine) {\n t9 = null;\n break bb1;\n }\n var result;\n if ($[36] !== audioEngine.audioContext || $[37] !== audioEngine.source) {\n result = audioEngine.audioContext.createAnalyser();\n audioEngine.source.connect(audioEngine.audioContext.destination);\n audioEngine.source.connect(result);\n $[36] = audioEngine.audioContext;\n $[37] = audioEngine.source;\n $[38] = result;\n } else {\n result = $[38];\n }\n t9 = result;\n }\n var visualizationAnalyser = t9;\n var t10;\n t10 = isPlaying || unplayedMessageSentences.length > 0;\n var isPending = t10;\n var t11;\n if ($[39] !== audioPlayer || $[40] !== isAudioPlayed || $[41] !== isPending || $[42] !== visualizationAnalyser) {\n t11 = _objectSpread(_objectSpread({\n isPending,\n isAudioPlayed\n }, audioPlayer), {}, {\n visualizationAnalyser\n });\n $[39] = audioPlayer;\n $[40] = isAudioPlayed;\n $[41] = isPending;\n $[42] = visualizationAnalyser;\n $[43] = t11;\n } else {\n t11 = $[43];\n }\n return t11;\n};\nfunction _temp() {\n if (isHtmlAudioSupported) {\n var _Howler$_howls$;\n if (!(Howler !== null && Howler !== void 0 && (_Howler$_howls$ = Howler._howls[0]) !== null && _Howler$_howls$ !== void 0 && (_Howler$_howls$ = _Howler$_howls$._sounds[0]) !== null && _Howler$_howls$ !== void 0 && _Howler$_howls$._node)) {\n return;\n }\n Howler._howls[0]._sounds[0]._node.crossOrigin = \"anonymous\";\n }\n}","import { isEmpty } from 'radash';\nexport var input = _ref => {\n var {\n message\n } = _ref;\n var textContents = message.content.filter(c => c.type === 'text');\n var result = textContents.map(c => c.text.value).join(' ');\n if (isEmpty(result)) return null;\n return result;\n};","var _detect;\nimport { detect } from 'detect-browser';\nvar unsupportedNames = ['safari', 'ios'];\nexport var isHtmlAudioSupported = !unsupportedNames.includes(((_detect = detect()) === null || _detect === void 0 ? void 0 : _detect.name) || '');","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { useContext, useState, useCallback, useEffect } from 'react';\nimport _ from 'lodash';\nimport { Flex } from '@radix-ui/themes';\nimport { AssistantAvatar } from '@/components/messageGroups/MessageGroupBase/AssistantAvatar';\nimport { Name } from '@/components/messageGroups/MessageGroupBase/Name';\nimport { AssistantNameContext } from '@/contexts/assistants/AssistantNameContext';\nimport { useAudioThreadContext } from '@/hooks/threads/useAudioThreadContext';\nimport { BarsVisualizer } from '@/components/threads/AudioThread/BarsVisualizer';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var Visualization = props => {\n var audioThreadContext = useAudioThreadContext();\n var assistantNameContext = useContext(AssistantNameContext);\n var [scale, setScale] = useState(0);\n var draw = useCallback(_ref => {\n var {\n visualizationAnalyser\n } = _ref;\n if (!visualizationAnalyser) {\n setScale(1);\n return;\n }\n var frequencyData = new Uint8Array(visualizationAnalyser.frequencyBinCount / 15);\n visualizationAnalyser.getByteFrequencyData(frequencyData);\n setScale(1 + _.mean(frequencyData) / 255 / 10);\n requestAnimationFrame(() => draw({\n visualizationAnalyser\n }));\n }, []);\n useEffect(() => {\n draw({\n visualizationAnalyser: audioThreadContext.recorderProps.visualizationAnalyser\n });\n }, [draw, audioThreadContext]);\n return /*#__PURE__*/_jsxs(Flex, _objectSpread(_objectSpread({\n direction: \"column\",\n align: \"center\",\n justify: \"center\",\n mb: \"3\",\n flexGrow: \"1\"\n }, props), {}, {\n children: [/*#__PURE__*/_jsx(Flex, {\n align: \"center\",\n justify: \"center\",\n height: \"200px\",\n width: \"200px\",\n style: {\n backgroundColor: audioThreadContext.status === 'playing' ? 'var(--accent-4)' : 'var(--gray-4)',\n borderRadius: '9999px',\n scale\n },\n children: /*#__PURE__*/_jsx(BarsVisualizer, {\n visualizationAnalyser: audioThreadContext.messageAudioProps.visualizationAnalyser,\n backgroundColor: audioThreadContext.status === 'playing' ? 'var(--accent-11)' : 'var(--gray-11)',\n height: \"40px\",\n barWidth: \"24px\"\n })\n }), /*#__PURE__*/_jsxs(Flex, {\n ml: \"-22.5px\",\n gap: \"3\",\n pt: \"5\",\n children: [/*#__PURE__*/_jsx(AssistantAvatar, {}), /*#__PURE__*/_jsx(Name, {\n children: assistantNameContext\n })]\n })]\n }));\n};","import { useContext } from 'react';\nimport { AudioThreadContext } from '@/contexts/threads/AudioThreadContext';\nexport var useAudioThreadContext = () => {\n return useContext(AudioThreadContext);\n};","'use client';\n\nimport _ from 'lodash';\nimport { Flex, Grid } from '@radix-ui/themes';\nimport { useState, useEffect, useCallback } from 'react';\nimport { cluster } from 'radash';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nvar barCount = 4;\nexport var BarsVisualizer = _ref => {\n var {\n visualizationAnalyser,\n backgroundColor,\n height,\n barWidth\n } = _ref;\n var [barHeights, setBarHeights] = useState([]);\n var draw = useCallback(_ref2 => {\n var {\n visualizationAnalyser: visualizationAnalyser_0\n } = _ref2;\n if (!visualizationAnalyser_0) {\n setBarHeights(Array(barCount).fill(0));\n return;\n }\n var frequencyData = new Uint8Array(visualizationAnalyser_0.frequencyBinCount / 15);\n visualizationAnalyser_0.getByteFrequencyData(frequencyData);\n\n // @ts-ignore-next-line\n var clusteredFrequencyData = cluster(frequencyData, frequencyData.length / barCount);\n setBarHeights(clusteredFrequencyData.map(frequencyDataCluster => _.mean(frequencyDataCluster) / 255 * 100));\n requestAnimationFrame(() => draw({\n visualizationAnalyser: visualizationAnalyser_0\n }));\n }, []);\n useEffect(() => {\n draw({\n visualizationAnalyser\n });\n }, [draw, visualizationAnalyser]);\n return /*#__PURE__*/_jsx(Grid, {\n columns: \"\".concat(barCount),\n gap: \"1\",\n width: \"auto\",\n style: {\n // TODO not sure why we need this\n gridTemplateColumns: 'repeat(4, minmax(0, 1fr))'\n },\n children: barHeights.map((barHeight, index) => /*#__PURE__*/_jsx(Flex, {\n direction: \"column\",\n align: \"center\",\n justify: \"center\",\n height: height,\n children: /*#__PURE__*/_jsx(Flex, {\n minHeight: \"50%\",\n maxHeight: \"100%\",\n height: \"\".concat(barHeight + 20, \"%\"),\n width: barWidth,\n style: {\n backgroundColor,\n borderRadius: 'var(--radius-6)'\n }\n })\n }, index))\n });\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { c as _c } from \"react-compiler-runtime\";\nimport { useAudioThreadContext } from '@/hooks/threads/useAudioThreadContext';\nimport { StatusMessages } from './StatusMessages';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var Status = props => {\n var $ = _c(12);\n var audioThreadContext = useAudioThreadContext();\n if (audioThreadContext.status === \"recording\") {\n var _t;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t = [\"Start speaking\", \"Listening\", \"Finish speaking to send\", \"Click the button below to send manually\"];\n $[0] = _t;\n } else {\n _t = $[0];\n }\n var _t2;\n if ($[1] !== props) {\n _t2 = /*#__PURE__*/_jsx(StatusMessages, _objectSpread({\n texts: _t\n }, props));\n $[1] = props;\n $[2] = _t2;\n } else {\n _t2 = $[2];\n }\n return _t2;\n }\n if ([\"recorderPaused\", \"idle\", \"playerPaused\"].includes(audioThreadContext.status)) {\n var _t3;\n if ($[3] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t3 = [\"Click the button below to activate\"];\n $[3] = _t3;\n } else {\n _t3 = $[3];\n }\n var _t4;\n if ($[4] !== props) {\n _t4 = /*#__PURE__*/_jsx(StatusMessages, _objectSpread({\n texts: _t3\n }, props));\n $[4] = props;\n $[5] = _t4;\n } else {\n _t4 = $[5];\n }\n return _t4;\n }\n if (audioThreadContext.status === \"playing\") {\n var _t5;\n if ($[6] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t5 = [\"Click the button below to interrupt\"];\n $[6] = _t5;\n } else {\n _t5 = $[6];\n }\n var _t6;\n if ($[7] !== props) {\n _t6 = /*#__PURE__*/_jsx(StatusMessages, _objectSpread({\n texts: _t5\n }, props));\n $[7] = props;\n $[8] = _t6;\n } else {\n _t6 = $[8];\n }\n return _t6;\n }\n var t0;\n if ($[9] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t0 = [\"Thinking\"];\n $[9] = t0;\n } else {\n t0 = $[9];\n }\n var t1;\n if ($[10] !== props) {\n t1 = /*#__PURE__*/_jsx(StatusMessages, _objectSpread({\n texts: t0\n }, props));\n $[10] = props;\n $[11] = t1;\n } else {\n t1 = $[11];\n }\n return t1;\n};","import { Flex, Text } from '@radix-ui/themes';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nvar html = _ref => {\n var {\n texts\n } = _ref;\n return \"\\n .status-messages-texts:after {\\n content: '\".concat(texts[0], \"';\\n animation: texts \").concat(texts.length * 5, \"s linear infinite;\\n }\\n\\n @keyframes texts {\\n \").concat(texts.map((_, i) => \"\\n \".concat(i * 100 / texts.length, \"% {\\n content: \\\"\").concat(texts[i], \"\\\";\\n }\\n \")).join(''), \"\\n }\");\n};\nexport var StatusMessages = _ref2 => {\n var {\n texts,\n className,\n style\n } = _ref2;\n return /*#__PURE__*/_jsxs(Flex, {\n justify: \"center\",\n pb: \"5\",\n className: className,\n style: style,\n children: [/*#__PURE__*/_jsx(Text, {\n size: \"2\",\n weight: \"regular\",\n color: \"gray\",\n className: \"status-messages-texts\"\n }), /*#__PURE__*/_jsx(\"style\", {\n dangerouslySetInnerHTML: {\n __html: html({\n texts\n })\n }\n })]\n });\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { c as _c } from \"react-compiler-runtime\";\nimport { Flex } from '@radix-ui/themes';\nimport { BarsVisualizer } from '@/components/threads/AudioThread/BarsVisualizer';\nimport { useAudioThreadContext } from '@/hooks/threads/useAudioThreadContext';\nimport { MicIcon } from './MicIcon';\nimport { ActionButton } from './ActionButton';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var Form = props => {\n var $ = _c(17);\n var audioThreadContext = useAudioThreadContext();\n var t0 = audioThreadContext.status === \"recording\" ? \"var(--accent-11)\" : \"var(--gray-11)\";\n var t1;\n if ($[0] !== t0) {\n t1 = /*#__PURE__*/_jsx(Flex, {\n ml: \"-22.5px\",\n mr: \"2\",\n align: \"center\",\n children: /*#__PURE__*/_jsx(MicIcon, {\n style: {\n color: t0\n }\n })\n });\n $[0] = t0;\n $[1] = t1;\n } else {\n t1 = $[1];\n }\n var t2 = audioThreadContext.status === \"recording\" ? \"var(--accent-4)\" : \"var(--gray-4)\";\n var t3;\n if ($[2] !== t2) {\n t3 = {\n backgroundColor: t2,\n borderRadius: \"var(--radius-6)\"\n };\n $[2] = t2;\n $[3] = t3;\n } else {\n t3 = $[3];\n }\n var t4 = audioThreadContext.status === \"recording\" ? \"var(--accent-11)\" : \"var(--gray-11)\";\n var t5;\n if ($[4] !== audioThreadContext.recorderProps.visualizationAnalyser || $[5] !== t4) {\n t5 = /*#__PURE__*/_jsx(BarsVisualizer, {\n visualizationAnalyser: audioThreadContext.recorderProps.visualizationAnalyser,\n backgroundColor: t4,\n height: \"20px\",\n barWidth: \"12px\"\n });\n $[4] = audioThreadContext.recorderProps.visualizationAnalyser;\n $[5] = t4;\n $[6] = t5;\n } else {\n t5 = $[6];\n }\n var t6;\n if ($[7] !== t3 || $[8] !== t5) {\n t6 = /*#__PURE__*/_jsx(Flex, {\n px: \"2\",\n py: \"1\",\n style: t3,\n children: t5\n });\n $[7] = t3;\n $[8] = t5;\n $[9] = t6;\n } else {\n t6 = $[9];\n }\n var t7;\n if ($[10] !== t1 || $[11] !== t6) {\n t7 = /*#__PURE__*/_jsxs(Flex, {\n pb: \"3\",\n align: \"center\",\n children: [t1, t6]\n });\n $[10] = t1;\n $[11] = t6;\n $[12] = t7;\n } else {\n t7 = $[12];\n }\n var t8;\n if ($[13] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t8 = /*#__PURE__*/_jsx(ActionButton, {});\n $[13] = t8;\n } else {\n t8 = $[13];\n }\n var t9;\n if ($[14] !== props || $[15] !== t7) {\n t9 = /*#__PURE__*/_jsxs(Flex, _objectSpread(_objectSpread({\n direction: \"column\",\n align: \"center\"\n }, props), {}, {\n children: [t7, t8]\n }));\n $[14] = props;\n $[15] = t7;\n $[16] = t9;\n } else {\n t9 = $[16];\n }\n return t9;\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var MicIcon = props => /*#__PURE__*/_jsx(\"svg\", _objectSpread(_objectSpread({\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n stroke: \"currentColor\",\n strokeWidth: 0,\n viewBox: \"0 0 384 512\",\n height: \"15\",\n width: \"15\"\n}, props), {}, {\n children: /*#__PURE__*/_jsx(\"path\", {\n stroke: \"none\",\n d: \"M192 0c-53 0-96 43-96 96v160c0 53 43 96 96 96s96-43 96-96V96c0-53-43-96-96-96zM64 216c0-13.3-10.7-24-24-24s-24 10.7-24 24v40c0 89.1 66.2 162.7 152 174.4V464h-48c-13.3 0-24 10.7-24 24s10.7 24 24 24h144c13.3 0 24-10.7 24-24s-10.7-24-24-24h-48v-33.6c85.8-11.7 152-85.3 152-174.4v-40c0-13.3-10.7-24-24-24s-24 10.7-24 24v40c0 70.7-57.3 128-128 128S64 326.7 64 256v-40z\"\n })\n}));","import { c as _c } from \"react-compiler-runtime\";\nimport { Flex, IconButton } from '@radix-ui/themes';\nimport { StopIcon, PauseIcon, ArrowUpIcon, ResumeIcon } from '@radix-ui/react-icons';\nimport { useAudioThreadContext } from '@/hooks/threads/useAudioThreadContext';\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var ActionButton = () => {\n var $ = _c(27);\n var audioThreadContext = useAudioThreadContext();\n var superinterfaceContext = useSuperinterfaceContext();\n if (audioThreadContext.status === \"recording\") {\n var _t;\n if ($[0] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t = /*#__PURE__*/_jsx(PauseIcon, {});\n $[0] = _t;\n } else {\n _t = $[0];\n }\n var t1;\n if ($[1] !== audioThreadContext.recorderProps.pause) {\n t1 = /*#__PURE__*/_jsx(Flex, {\n mr: \"3\",\n ml: \"-7\",\n children: /*#__PURE__*/_jsx(IconButton, {\n onClick: audioThreadContext.recorderProps.pause,\n color: \"gray\",\n variant: \"soft\",\n size: \"1\",\n children: _t\n })\n });\n $[1] = audioThreadContext.recorderProps.pause;\n $[2] = t1;\n } else {\n t1 = $[2];\n }\n var t2;\n if ($[3] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t2 = /*#__PURE__*/_jsx(ArrowUpIcon, {});\n $[3] = t2;\n } else {\n t2 = $[3];\n }\n var t3;\n if ($[4] !== audioThreadContext.recorderProps.stop) {\n t3 = /*#__PURE__*/_jsx(IconButton, {\n onClick: audioThreadContext.recorderProps.stop,\n highContrast: true,\n variant: \"soft\",\n size: \"4\",\n children: t2\n });\n $[4] = audioThreadContext.recorderProps.stop;\n $[5] = t3;\n } else {\n t3 = $[5];\n }\n var t4;\n if ($[6] !== t1 || $[7] !== t3) {\n t4 = /*#__PURE__*/_jsxs(Flex, {\n align: \"center\",\n children: [t1, t3]\n });\n $[6] = t1;\n $[7] = t3;\n $[8] = t4;\n } else {\n t4 = $[8];\n }\n return t4;\n }\n if (audioThreadContext.status === \"recorderPaused\") {\n var _t2;\n if ($[9] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t2 = /*#__PURE__*/_jsx(ResumeIcon, {});\n $[9] = _t2;\n } else {\n _t2 = $[9];\n }\n var _t3;\n if ($[10] !== audioThreadContext.recorderProps.resume) {\n _t3 = /*#__PURE__*/_jsx(IconButton, {\n onClick: audioThreadContext.recorderProps.resume,\n color: \"red\",\n size: \"4\",\n children: _t2\n });\n $[10] = audioThreadContext.recorderProps.resume;\n $[11] = _t3;\n } else {\n _t3 = $[11];\n }\n return _t3;\n }\n if (audioThreadContext.status === \"idle\") {\n var _t4;\n if ($[12] !== audioThreadContext.recorderProps) {\n _t4 = /*#__PURE__*/_jsx(IconButton, {\n onClick: () => audioThreadContext.recorderProps.start(),\n size: \"4\",\n color: \"red\"\n });\n $[12] = audioThreadContext.recorderProps;\n $[13] = _t4;\n } else {\n _t4 = $[13];\n }\n return _t4;\n }\n if (audioThreadContext.status === \"playing\") {\n var _t5;\n if ($[14] !== audioThreadContext.messageAudioProps || $[15] !== audioThreadContext.recorderProps || $[16] !== superinterfaceContext.createMessageAbortControllerRef.current) {\n _t5 = () => {\n var _superinterfaceContex;\n audioThreadContext.messageAudioProps.stop();\n (_superinterfaceContex = superinterfaceContext.createMessageAbortControllerRef.current) === null || _superinterfaceContex === void 0 || _superinterfaceContex.abort();\n audioThreadContext.recorderProps.start();\n };\n $[14] = audioThreadContext.messageAudioProps;\n $[15] = audioThreadContext.recorderProps;\n $[16] = superinterfaceContext.createMessageAbortControllerRef.current;\n $[17] = _t5;\n } else {\n _t5 = $[17];\n }\n var _t6;\n if ($[18] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t6 = /*#__PURE__*/_jsx(StopIcon, {});\n $[18] = _t6;\n } else {\n _t6 = $[18];\n }\n var _t7;\n if ($[19] !== _t5) {\n _t7 = /*#__PURE__*/_jsx(IconButton, {\n onClick: _t5,\n size: \"4\",\n color: \"gray\",\n variant: \"soft\",\n children: _t6\n });\n $[19] = _t5;\n $[20] = _t7;\n } else {\n _t7 = $[20];\n }\n return _t7;\n }\n if (audioThreadContext.status === \"playerPaused\") {\n var _t8;\n if ($[21] !== audioThreadContext.messageAudioProps) {\n _t8 = () => audioThreadContext.messageAudioProps.play();\n $[21] = audioThreadContext.messageAudioProps;\n $[22] = _t8;\n } else {\n _t8 = $[22];\n }\n var _t9;\n if ($[23] === Symbol.for(\"react.memo_cache_sentinel\")) {\n _t9 = /*#__PURE__*/_jsx(ResumeIcon, {});\n $[23] = _t9;\n } else {\n _t9 = $[23];\n }\n var _t10;\n if ($[24] !== _t8) {\n _t10 = /*#__PURE__*/_jsx(IconButton, {\n onClick: _t8,\n size: \"4\",\n children: _t9\n });\n $[24] = _t8;\n $[25] = _t10;\n } else {\n _t10 = $[25];\n }\n return _t10;\n }\n var t0;\n if ($[26] === Symbol.for(\"react.memo_cache_sentinel\")) {\n t0 = /*#__PURE__*/_jsx(IconButton, {\n size: \"4\",\n variant: \"soft\",\n disabled: true\n });\n $[26] = t0;\n } else {\n t0 = $[26];\n }\n return t0;\n};","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { Root } from './Root';\nimport { Visualization } from './Visualization';\nimport { Status } from './Status';\nimport { Form } from './Form';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var AudioThread = props => /*#__PURE__*/_jsxs(Root, _objectSpread(_objectSpread({}, props), {}, {\n children: [/*#__PURE__*/_jsx(Visualization, {}), /*#__PURE__*/_jsx(Status, {}), /*#__PURE__*/_jsx(Form, {})]\n}));\nAudioThread.Root = Root;\nAudioThread.Visualization = Visualization;\nAudioThread.Status = Status;\nAudioThread.Form = Form;","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { AudioThread } from '@/components/threads/AudioThread';\nimport { Root } from '@/components/threads/ThreadDialog/Root';\nimport { Trigger } from '@/components/threads/ThreadDialog/Trigger';\nimport { Content } from '@/components/threads/ThreadDialog/Content';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport var AudioThreadDialog = props => /*#__PURE__*/_jsxs(Root, _objectSpread(_objectSpread({}, props), {}, {\n children: [/*#__PURE__*/_jsx(Content.Root, {\n children: /*#__PURE__*/_jsx(AudioThread, {})\n }), /*#__PURE__*/_jsx(Trigger, {})]\n}));\nAudioThreadDialog.Root = Root;\nAudioThreadDialog.Trigger = Trigger;\nAudioThreadDialog.Content = Content;","var _excluded = [\"children\"];\nfunction _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var s = Object.getOwnPropertySymbols(e); for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }\nfunction _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (e.includes(n)) continue; t[n] = r[n]; } return t; }\nimport { c as _c } from \"react-compiler-runtime\";\nimport { useMemo } from 'react';\nimport { MarkdownContext } from '@/contexts/markdown/MarkdownContext';\nimport { useMarkdownContext } from '@/hooks/markdown/useMarkdownContext';\nimport { merge } from '@/lib/misc/merge';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var MarkdownProvider = t0 => {\n var $ = _c(9);\n var children;\n var rest;\n if ($[0] !== t0) {\n var _t = t0;\n ({\n children\n } = _t);\n rest = _objectWithoutProperties(_t, _excluded);\n _t;\n $[0] = t0;\n $[1] = children;\n $[2] = rest;\n } else {\n children = $[1];\n rest = $[2];\n }\n var prevMarkdownContext = useMarkdownContext();\n var t1;\n var t2;\n if ($[3] !== prevMarkdownContext || $[4] !== rest) {\n t2 = merge(prevMarkdownContext, rest);\n $[3] = prevMarkdownContext;\n $[4] = rest;\n $[5] = t2;\n } else {\n t2 = $[5];\n }\n t1 = t2;\n var value = t1;\n var t3;\n if ($[6] !== children || $[7] !== value) {\n t3 = /*#__PURE__*/_jsx(MarkdownContext.Provider, {\n value: value,\n children: children\n });\n $[6] = children;\n $[7] = value;\n $[8] = t3;\n } else {\n t3 = $[8];\n }\n return t3;\n};","import { c as _c } from \"react-compiler-runtime\";\nimport { AvatarType as AvatarTypeEnum } from '@/lib/enums';\nimport { Avatar as RadixAvatar } from '@radix-ui/themes';\nimport { ImageAvatar } from '@/components/imageAvatars/ImageAvatar';\nimport { IconAvatar } from '@/components/iconAvatars/IconAvatar';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var Avatar = t0 => {\n var $ = _c(14);\n var {\n avatar,\n size: t1,\n className,\n style\n } = t0;\n var size = t1 === undefined ? \"1\" : t1;\n if (avatar) {\n if (avatar.type === AvatarTypeEnum.IMAGE && avatar.imageAvatar) {\n var _t;\n if ($[0] !== avatar.imageAvatar || $[1] !== className || $[2] !== size || $[3] !== style) {\n _t = /*#__PURE__*/_jsx(ImageAvatar, {\n imageAvatar: avatar.imageAvatar,\n size: size,\n className: className,\n style: style\n });\n $[0] = avatar.imageAvatar;\n $[1] = className;\n $[2] = size;\n $[3] = style;\n $[4] = _t;\n } else {\n _t = $[4];\n }\n return _t;\n }\n if (avatar.type === AvatarTypeEnum.ICON && avatar.iconAvatar) {\n var _t2;\n if ($[5] !== avatar.iconAvatar || $[6] !== className || $[7] !== size || $[8] !== style) {\n _t2 = /*#__PURE__*/_jsx(IconAvatar, {\n iconAvatar: avatar.iconAvatar,\n size: size,\n className: className,\n style: style\n });\n $[5] = avatar.iconAvatar;\n $[6] = className;\n $[7] = size;\n $[8] = style;\n $[9] = _t2;\n } else {\n _t2 = $[9];\n }\n return _t2;\n }\n }\n var t2;\n if ($[10] !== className || $[11] !== size || $[12] !== style) {\n t2 = /*#__PURE__*/_jsx(RadixAvatar, {\n fallback: \"\",\n size: size,\n className: className,\n style: style\n });\n $[10] = className;\n $[11] = size;\n $[12] = style;\n $[13] = t2;\n } else {\n t2 = $[13];\n }\n return t2;\n};","export var IconAvatarName = /*#__PURE__*/function (IconAvatarName) {\n IconAvatarName[\"BACKPACK\"] = \"BACKPACK\";\n IconAvatarName[\"ROCKET\"] = \"ROCKET\";\n IconAvatarName[\"MAGIC_WAND\"] = \"MAGIC_WAND\";\n IconAvatarName[\"CUBE\"] = \"CUBE\";\n IconAvatarName[\"TARGET\"] = \"TARGET\";\n IconAvatarName[\"DISC\"] = \"DISC\";\n IconAvatarName[\"GLOBE\"] = \"GLOBE\";\n IconAvatarName[\"STAR\"] = \"STAR\";\n IconAvatarName[\"LIGHTNING_BOLT\"] = \"LIGHTNING_BOLT\";\n IconAvatarName[\"FACE\"] = \"FACE\";\n IconAvatarName[\"PERSON\"] = \"PERSON\";\n IconAvatarName[\"HEART\"] = \"HEART\";\n return IconAvatarName;\n}({});\nexport var AvatarType = /*#__PURE__*/function (AvatarType) {\n AvatarType[\"ICON\"] = \"ICON\";\n AvatarType[\"IMAGE\"] = \"IMAGE\";\n return AvatarType;\n}({});","import { c as _c } from \"react-compiler-runtime\";\nimport { Avatar } from '@radix-ui/themes';\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext';\nimport { optimizedSrc } from './lib/optimizedSrc';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var ImageAvatar = t0 => {\n var $ = _c(9);\n var {\n imageAvatar,\n size,\n className,\n style\n } = t0;\n var superinterfaceContext = useSuperinterfaceContext();\n var t1;\n if ($[0] !== imageAvatar || $[1] !== size || $[2] !== superinterfaceContext) {\n t1 = optimizedSrc({\n imageAvatar,\n size,\n superinterfaceContext\n });\n $[0] = imageAvatar;\n $[1] = size;\n $[2] = superinterfaceContext;\n $[3] = t1;\n } else {\n t1 = $[3];\n }\n var t2;\n if ($[4] !== className || $[5] !== size || $[6] !== style || $[7] !== t1) {\n t2 = /*#__PURE__*/_jsx(Avatar, {\n className: className,\n style: style,\n fallback: \"\",\n src: t1,\n size: size\n });\n $[4] = className;\n $[5] = size;\n $[6] = style;\n $[7] = t1;\n $[8] = t2;\n } else {\n t2 = $[8];\n }\n return t2;\n};","var width = _ref => {\n var {\n size\n } = _ref;\n if (size === '1') {\n return 48;\n } else if (size === '2') {\n return 64;\n } else if (size === '3') {\n return 96;\n } else if (size === '4') {\n return 96;\n } else if (size === '5') {\n return 128;\n } else if (size === '6') {\n return 256;\n } else if (size === '7') {\n return 256;\n } else if (size === '8') {\n return 256;\n } else if (size === '9') {\n return 384;\n }\n return 384;\n};\nexport var path = _ref2 => {\n var {\n imageAvatar,\n size\n } = _ref2;\n return \"/_next/image?url=\".concat(encodeURIComponent(imageAvatar.url), \"&w=\").concat(width({\n size\n }), \"&q=95\");\n};","export var host = _ref => {\n var {\n superinterfaceContext\n } = _ref;\n if (!superinterfaceContext.baseUrl) return '';\n if (!/^https?:\\/\\//i.test(superinterfaceContext.baseUrl)) return '';\n return new URL(superinterfaceContext.baseUrl).origin;\n};","import { path } from './path';\nimport { host } from './host';\nexport var optimizedSrc = _ref => {\n var {\n imageAvatar,\n size,\n superinterfaceContext\n } = _ref;\n if (!imageAvatar.url) return '';\n if (imageAvatar.url.endsWith('.svg')) return imageAvatar.url;\n return \"\".concat(host({\n superinterfaceContext\n })).concat(path({\n imageAvatar,\n size\n }));\n};","import { c as _c } from \"react-compiler-runtime\";\nimport { useMemo } from 'react';\nimport { Avatar } from '@radix-ui/themes';\nimport { iconAvatarComponents } from '@/lib/iconAvatars/iconAvatarComponents';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var IconAvatar = t0 => {\n var $ = _c(7);\n var {\n iconAvatar,\n size,\n className,\n style\n } = t0;\n var t1;\n t1 = iconAvatarComponents[iconAvatar.name];\n var Component = t1;\n var t2;\n if ($[0] !== Component) {\n t2 = Component ? /*#__PURE__*/_jsx(Component, {}) : \"\";\n $[0] = Component;\n $[1] = t2;\n } else {\n t2 = $[1];\n }\n var t3;\n if ($[2] !== className || $[3] !== size || $[4] !== style || $[5] !== t2) {\n t3 = /*#__PURE__*/_jsx(Avatar, {\n className: className,\n style: style,\n size: size,\n fallback: t2\n });\n $[2] = className;\n $[3] = size;\n $[4] = style;\n $[5] = t2;\n $[6] = t3;\n } else {\n t3 = $[6];\n }\n return t3;\n};","import { IconAvatarName } from '@/lib/enums';\nimport { BackpackIcon, RocketIcon, MagicWandIcon, CubeIcon, TargetIcon, DiscIcon, GlobeIcon, StarIcon, LightningBoltIcon, FaceIcon, PersonIcon, HeartIcon } from '@radix-ui/react-icons';\nexport var iconAvatarComponents = {\n [IconAvatarName.BACKPACK]: BackpackIcon,\n [IconAvatarName.ROCKET]: RocketIcon,\n [IconAvatarName.MAGIC_WAND]: MagicWandIcon,\n [IconAvatarName.CUBE]: CubeIcon,\n [IconAvatarName.TARGET]: TargetIcon,\n [IconAvatarName.DISC]: DiscIcon,\n [IconAvatarName.GLOBE]: GlobeIcon,\n [IconAvatarName.STAR]: StarIcon,\n [IconAvatarName.LIGHTNING_BOLT]: LightningBoltIcon,\n [IconAvatarName.FACE]: FaceIcon,\n [IconAvatarName.PERSON]: PersonIcon,\n [IconAvatarName.HEART]: HeartIcon\n};","var _excluded = [\"children\"];\nfunction _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var s = Object.getOwnPropertySymbols(e); for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }\nfunction _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (e.includes(n)) continue; t[n] = r[n]; } return t; }\nimport { c as _c } from \"react-compiler-runtime\";\nimport { useMemo } from 'react';\nimport { ComponentsContext } from '@/contexts/components/ComponentsContext';\nimport { useComponents } from '@/hooks/components/useComponents';\nimport { merge } from '@/lib/misc/merge';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var ComponentsProvider = t0 => {\n var $ = _c(9);\n var children;\n var rest;\n if ($[0] !== t0) {\n var _t = t0;\n ({\n children\n } = _t);\n rest = _objectWithoutProperties(_t, _excluded);\n _t;\n $[0] = t0;\n $[1] = children;\n $[2] = rest;\n } else {\n children = $[1];\n rest = $[2];\n }\n var prevComponents = useComponents();\n var t1;\n var t2;\n if ($[3] !== prevComponents || $[4] !== rest) {\n t2 = merge(prevComponents, rest);\n $[3] = prevComponents;\n $[4] = rest;\n $[5] = t2;\n } else {\n t2 = $[5];\n }\n t1 = t2;\n var value = t1;\n var t3;\n if ($[6] !== children || $[7] !== value) {\n t3 = /*#__PURE__*/_jsx(ComponentsContext.Provider, {\n value: value,\n children: children\n });\n $[6] = children;\n $[7] = value;\n $[8] = t3;\n } else {\n t3 = $[8];\n }\n return t3;\n};","import { useContext } from 'react';\nimport { ComponentsContext } from '@/contexts/components/ComponentsContext';\nexport var useComponents = () => {\n return useContext(ComponentsContext);\n};","import { c as _c } from \"react-compiler-runtime\";\nimport { useSuperinterfaceContext } from '@/hooks/core/useSuperinterfaceContext';\nimport { AssistantAvatarContext } from '@/contexts/assistants/AssistantAvatarContext';\nimport { AssistantNameContext } from '@/contexts/assistants/AssistantNameContext';\nimport { useAssistant } from '@/hooks/assistants/useAssistant';\nimport { Avatar } from '@/components/avatars/Avatar';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var AssistantProvider = t0 => {\n var _assistant$name;\n var $ = _c(10);\n var {\n children\n } = t0;\n var superinterfaceContext = useSuperinterfaceContext();\n var t1;\n if ($[0] !== superinterfaceContext.variables.assistantId) {\n t1 = {\n assistantId: superinterfaceContext.variables.assistantId\n };\n $[0] = superinterfaceContext.variables.assistantId;\n $[1] = t1;\n } else {\n t1 = $[1];\n }\n var {\n assistant\n } = useAssistant(t1);\n var t2 = (_assistant$name = assistant === null || assistant === void 0 ? void 0 : assistant.name) !== null && _assistant$name !== void 0 ? _assistant$name : \"\";\n var t3 = assistant === null || assistant === void 0 ? void 0 : assistant.avatar;\n var t4;\n if ($[2] !== t3) {\n t4 = /*#__PURE__*/_jsx(Avatar, {\n avatar: t3\n });\n $[2] = t3;\n $[3] = t4;\n } else {\n t4 = $[3];\n }\n var t5;\n if ($[4] !== children || $[5] !== t4) {\n t5 = /*#__PURE__*/_jsx(AssistantAvatarContext.Provider, {\n value: t4,\n children: children\n });\n $[4] = children;\n $[5] = t4;\n $[6] = t5;\n } else {\n t5 = $[6];\n }\n var t6;\n if ($[7] !== t2 || $[8] !== t5) {\n t6 = /*#__PURE__*/_jsx(AssistantNameContext.Provider, {\n value: t2,\n children: t5\n });\n $[7] = t2;\n $[8] = t5;\n $[9] = t6;\n } else {\n t6 = $[9];\n }\n return t6;\n};"]}