diff --git a/python/packages/devui/README.md b/python/packages/devui/README.md index a3dc795e13b..ba62311224f 100644 --- a/python/packages/devui/README.md +++ b/python/packages/devui/README.md @@ -196,6 +196,26 @@ response2 = client.responses.create( **How it works:** DevUI automatically retrieves the conversation's message history from the stored thread and passes it to the agent. You don't need to manually manage message history - just provide the same `conversation` ID for follow-up requests. +### Voice Input and Audio Responses + +DevUI chat supports microphone input in browsers that allow recording from `localhost` or HTTPS pages. Use the +microphone button to start recording, then stop to preview or cancel. You can also hold the microphone button to +record and release it to attach the recording. Recordings are converted to mono WAV, with defaults of 16 kHz, +60 seconds, and 10 MB. The recording bar shows elapsed time and animated live microphone levels. + +DevUI sends the audio to the selected agent without transcribing it. The selected agent or model must be able to work +with audio. Uploaded files keep the existing attachment behavior and original format, including multiple audio +files such as WAV, MP3, M4A, and OGG. Support for those formats depends on the selected agent. + +Recordings and agent audio share a waveform player with play/pause, seeking, and duration. Agent audio includes a +download action. Audio returned by the conversation-history API or a resumed response uses the same controls. +Playback uses the browser's audio element and does not depend on waveform decoding or downloading remote audio first. + +Settings > General > Audio options groups capture limits, sample rate, preview, and browser processing hints under +Input. Auto-stop on silence optionally attaches click-to-record audio after a quiet pause and does not interrupt +push-to-talk. Output provides optional agent-audio autoplay, which is disabled by default and remains subject to +browser restrictions. Restored responses do not autoplay. + ### OpenAI Proxy Mode DevUI provides an **OpenAI Proxy** feature for testing OpenAI models directly through the interface without creating custom agents. Enable via Settings → OpenAI Proxy tab. diff --git a/python/packages/devui/agent_framework_devui/_audio.py b/python/packages/devui/agent_framework_devui/_audio.py new file mode 100644 index 00000000000..9f317d20ab4 --- /dev/null +++ b/python/packages/devui/agent_framework_devui/_audio.py @@ -0,0 +1,24 @@ +# Copyright (c) Microsoft. All rights reserved. + +"""Conversion of Responses input_audio parts to framework audio content.""" + +from agent_framework import Content +from openai.types.responses import ResponseInputAudioParam +from pydantic import TypeAdapter, ValidationError + +_RESPONSE_INPUT_AUDIO_ADAPTER = TypeAdapter(ResponseInputAudioParam) + + +def input_audio_to_content(value: object) -> Content: + """Validate an input_audio part and preserve its audio data without transcription.""" + try: + audio = _RESPONSE_INPUT_AUDIO_ADAPTER.validate_python(value)["input_audio"] + except ValidationError as exc: + raise ValueError("Invalid input_audio: expected audio data with wav or mp3 format") from exc + if not audio["data"]: + raise ValueError("Invalid input_audio: audio data must not be empty") + + media_type = "audio/wav" if audio["format"] == "wav" else "audio/mpeg" + data = audio["data"] + uri = data if data.startswith("data:") else f"data:{media_type};base64,{data}" + return Content.from_uri(uri=uri, media_type=media_type, name=f"recording.{audio['format']}") diff --git a/python/packages/devui/agent_framework_devui/_conversations.py b/python/packages/devui/agent_framework_devui/_conversations.py index 1c8b908b104..e5725c13627 100644 --- a/python/packages/devui/agent_framework_devui/_conversations.py +++ b/python/packages/devui/agent_framework_devui/_conversations.py @@ -29,6 +29,7 @@ ResponseOutputRefusal, ) +from ._audio import input_audio_to_content from ._utils import infer_media_type _MODEL_OUTPUT_KIND_KEY = "model_output_kind" @@ -577,6 +578,9 @@ def _to_agent_content(content: dict[str, Any]) -> Content | None: ) return None + if content_type == "input_audio": + return input_audio_to_content(content) + if content_type == "input_file": filename = content.get("filename") filename = filename if isinstance(filename, str) else "" diff --git a/python/packages/devui/agent_framework_devui/_executor.py b/python/packages/devui/agent_framework_devui/_executor.py index 3e601955721..0c2ee9e7bcd 100644 --- a/python/packages/devui/agent_framework_devui/_executor.py +++ b/python/packages/devui/agent_framework_devui/_executor.py @@ -11,6 +11,7 @@ from agent_framework import Content, SupportsAgentRun, Workflow +from ._audio import input_audio_to_content from ._conversations import ConversationStore, InMemoryConversationStore from ._discovery import EntityDiscovery from ._mapper import MessageMapper @@ -751,6 +752,12 @@ def _convert_openai_input_to_chat_message( ) ) + elif content_type == "input_audio": + try: + contents.append(input_audio_to_content(content_dict)) + except ValueError as exc: + raise InputConversionError(str(exc)) from exc + elif content_type == "function_approval_response": # Handle function approval response with server-side validation try: diff --git a/python/packages/devui/agent_framework_devui/_mapper.py b/python/packages/devui/agent_framework_devui/_mapper.py index d3288463247..9100164d2b7 100644 --- a/python/packages/devui/agent_framework_devui/_mapper.py +++ b/python/packages/devui/agent_framework_devui/_mapper.py @@ -52,6 +52,7 @@ ResponseUsage, ResponseWorkflowEventComplete, ) +from .models._openai_custom import MediaResponse, MediaResponseEvent logger = logging.getLogger(__name__) _MODEL_OUTPUT_KIND_KEY = "model_output_kind" @@ -62,6 +63,7 @@ ResponseStreamEvent, ResponseWorkflowEventComplete, ResponseOutputItemAddedEvent, + CustomResponseOutputItemAddedEvent, ResponseTraceEventComplete, ] @@ -330,6 +332,7 @@ async def aggregate_to_response(self, events: Sequence[Any], request: AgentFrame # Track complete message items that do not use the text-delta lifecycle. complete_messages: dict[str, ResponseOutputMessage] = {} + custom_output_items: list[Any] = [] for event in events: event_type = getattr(event, "type", None) @@ -394,6 +397,8 @@ async def aggregate_to_response(self, events: Sequence[Any], request: AgentFrame message_order.append(item.id) if item.content: complete_messages[item.id] = item + elif item_type in {"output_image", "output_file", "output_data"}: + custom_output_items.append(item) # Handle function call arguments delta - accumulate arguments elif event_type == "response.function_call_arguments.delta": @@ -458,6 +463,8 @@ async def aggregate_to_response(self, events: Sequence[Any], request: AgentFrame ) output_items.append(response_output_message) + output_items.extend(custom_output_items) + # If no output items at all, create an empty message if not output_items and failed_response is None: response_output_text = ResponseOutputText(type="output_text", text="", annotations=[]) @@ -476,7 +483,8 @@ async def aggregate_to_response(self, events: Sequence[Any], request: AgentFrame usage = _response_usage(usage_data) if usage_data is not None else None - return OpenAIResponse( + response_type = MediaResponse if custom_output_items else OpenAIResponse + return response_type( id=context["response_id"], object="response", created_at=datetime.now().timestamp(), @@ -503,7 +511,7 @@ async def aggregate_to_response(self, events: Sequence[Any], request: AgentFrame async def finalize_stream( self, events: Sequence[Any], request: AgentFrameworkRequest - ) -> ResponseCompletedEvent | ResponseFailedEvent: + ) -> ResponseCompletedEvent | ResponseFailedEvent | MediaResponseEvent: """Create the single terminal event for a mapped response stream.""" final_response = await self.aggregate_to_response(events, request) @@ -516,6 +524,13 @@ async def finalize_stream( last_sequence_number = sequence_number break + if isinstance(final_response, MediaResponse): + return MediaResponseEvent( + type="response.failed" if final_response.status == "failed" else "response.completed", + response=final_response, + sequence_number=last_sequence_number + 1, + ) + if final_response.status == "failed": return ResponseFailedEvent( type="response.failed", @@ -1622,7 +1637,7 @@ async def _map_usage_content(self, content: Any, context: dict[str, Any]) -> Non async def _map_data_content( self, content: Any, context: dict[str, Any] - ) -> ResponseOutputItemAddedEvent | ResponseTraceEventComplete: + ) -> CustomResponseOutputItemAddedEvent | ResponseTraceEventComplete: """Map DataContent to proper output item (image/file/data) or fallback to trace. Maps Agent Framework DataContent to appropriate output types: @@ -1631,7 +1646,9 @@ async def _map_data_content( - Generic data → ResponseOutputData - Unknown/debugging content → ResponseTraceEventComplete (fallback) """ - mime_type = getattr(content, "mime_type", "application/octet-stream") + mime_type = ( + getattr(content, "media_type", None) or getattr(content, "mime_type", None) or "application/octet-stream" + ) item_id = f"item_{uuid.uuid4().hex[:16]}" # Extract data/uri @@ -1663,9 +1680,9 @@ async def _map_data_content( sequence_number=self._next_sequence(context), ) - return ResponseOutputItemAddedEvent( + return CustomResponseOutputItemAddedEvent( type="response.output_item.added", - item=ResponseOutputImage( # type: ignore[arg-type] + item=ResponseOutputImage( id=item_id, type="output_image", image_url=image_url, @@ -1720,9 +1737,9 @@ async def _map_data_content( sequence_number=self._next_sequence(context), ) - return ResponseOutputItemAddedEvent( + return CustomResponseOutputItemAddedEvent( type="response.output_item.added", - item=ResponseOutputFile( # type: ignore[arg-type] + item=ResponseOutputFile( id=item_id, type="output_file", filename=filename, @@ -1750,9 +1767,9 @@ async def _map_data_content( else: data_str = str(data_value) - return ResponseOutputItemAddedEvent( + return CustomResponseOutputItemAddedEvent( type="response.output_item.added", - item=ResponseOutputData( # type: ignore[arg-type] + item=ResponseOutputData( id=item_id, type="output_data", data=data_str, @@ -1765,7 +1782,7 @@ async def _map_data_content( async def _map_uri_content( self, content: Any, context: dict[str, Any] - ) -> ResponseOutputItemAddedEvent | ResponseTraceEventComplete: + ) -> CustomResponseOutputItemAddedEvent | ResponseTraceEventComplete: """Map UriContent to proper output item (image/file) based on MIME type. UriContent has a URI and MIME type, so we can create appropriate output items: @@ -1773,7 +1790,7 @@ async def _map_uri_content( - Common files → ResponseOutputFile - Other URIs → ResponseTraceEventComplete (fallback for debugging) """ - mime_type = getattr(content, "mime_type", "text/plain") + mime_type = getattr(content, "media_type", None) or getattr(content, "mime_type", None) or "text/plain" uri = getattr(content, "uri", "") item_id = f"item_{uuid.uuid4().hex[:16]}" @@ -1790,9 +1807,9 @@ async def _map_uri_content( # Handle images if mime_type.startswith("image/"): - return ResponseOutputItemAddedEvent( + return CustomResponseOutputItemAddedEvent( type="response.output_item.added", - item=ResponseOutputImage( # type: ignore[arg-type] + item=ResponseOutputImage( id=item_id, type="output_image", image_url=uri, @@ -1819,9 +1836,9 @@ async def _map_uri_content( # Extract filename from URI or use generic name filename = uri.split("/")[-1] if "/" in uri else f"output.{mime_type.split('/')[-1]}" - return ResponseOutputItemAddedEvent( + return CustomResponseOutputItemAddedEvent( type="response.output_item.added", - item=ResponseOutputFile( # type: ignore[arg-type] + item=ResponseOutputFile( id=item_id, type="output_file", filename=filename, diff --git a/python/packages/devui/agent_framework_devui/models/_openai_custom.py b/python/packages/devui/agent_framework_devui/models/_openai_custom.py index d64b1ec49c3..239ac27f7d9 100644 --- a/python/packages/devui/agent_framework_devui/models/_openai_custom.py +++ b/python/packages/devui/agent_framework_devui/models/_openai_custom.py @@ -11,6 +11,7 @@ from dataclasses import dataclass from typing import Any, Literal +from openai.types.responses import Response, ResponseOutputItem from pydantic import BaseModel, ConfigDict # Custom Agent Framework OpenAI event types for structured data @@ -56,8 +57,8 @@ class ExecutorActionItem(BaseModel): class CustomResponseOutputItemAddedEvent(BaseModel): """Custom version of ResponseOutputItemAddedEvent that accepts any item type. - This allows us to emit executor action items while maintaining the same - event structure as OpenAI's standard. + This supports executor actions and media output items while maintaining + the same event structure as OpenAI's standard. """ type: Literal["response.output_item.added"] = "response.output_item.added" @@ -274,6 +275,21 @@ class ResponseOutputData(BaseModel): """Optional description of the data.""" +class MediaResponse(Response): + """Responses envelope with validated DevUI media output extensions.""" + + # The SDK's output union excludes the media items already supported by DevUI. + output: list[ResponseOutputItem | ResponseOutputImage | ResponseOutputFile | ResponseOutputData] # pyright: ignore[reportIncompatibleVariableOverride] + + +class MediaResponseEvent(BaseModel): + """Terminal event retaining the media response's extended serialization schema.""" + + type: Literal["response.completed", "response.failed"] + sequence_number: int + response: MediaResponse + + # Agent Framework extension fields class AgentFrameworkExtraBody(BaseModel): """Agent Framework specific routing fields for OpenAI requests.""" diff --git a/python/packages/devui/agent_framework_devui/ui/assets/index.css b/python/packages/devui/agent_framework_devui/ui/assets/index.css index 378cc999350..8365a6938c4 100644 --- a/python/packages/devui/agent_framework_devui/ui/assets/index.css +++ b/python/packages/devui/agent_framework_devui/ui/assets/index.css @@ -1,2 +1,2 @@ /*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */ -@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-100:oklch(93.6% .032 17.717);--color-red-200:oklch(88.5% .062 18.334);--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-red-800:oklch(44.4% .177 26.899);--color-red-900:oklch(39.6% .141 25.723);--color-red-950:oklch(25.8% .092 26.042);--color-orange-50:oklch(98% .016 73.684);--color-orange-100:oklch(95.4% .038 75.164);--color-orange-200:oklch(90.1% .076 70.697);--color-orange-300:oklch(83.7% .128 66.29);--color-orange-400:oklch(75% .183 55.934);--color-orange-500:oklch(70.5% .213 47.604);--color-orange-600:oklch(64.6% .222 41.116);--color-orange-700:oklch(55.3% .195 38.402);--color-orange-800:oklch(47% .157 37.304);--color-orange-900:oklch(40.8% .123 38.172);--color-orange-950:oklch(26.6% .079 36.259);--color-amber-50:oklch(98.7% .022 95.277);--color-amber-100:oklch(96.2% .059 95.617);--color-amber-200:oklch(92.4% .12 95.746);--color-amber-300:oklch(87.9% .169 91.605);--color-amber-400:oklch(82.8% .189 84.429);--color-amber-500:oklch(76.9% .188 70.08);--color-amber-600:oklch(66.6% .179 58.318);--color-amber-700:oklch(55.5% .163 48.998);--color-amber-800:oklch(47.3% .137 46.201);--color-amber-900:oklch(41.4% .112 45.904);--color-amber-950:oklch(27.9% .077 45.635);--color-yellow-100:oklch(97.3% .071 103.193);--color-yellow-200:oklch(94.5% .129 101.54);--color-yellow-400:oklch(85.2% .199 91.936);--color-yellow-600:oklch(68.1% .162 75.834);--color-yellow-700:oklch(55.4% .135 66.442);--color-green-50:oklch(98.2% .018 155.826);--color-green-100:oklch(96.2% .044 156.743);--color-green-200:oklch(92.5% .084 155.995);--color-green-300:oklch(87.1% .15 154.449);--color-green-400:oklch(79.2% .209 151.711);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-green-700:oklch(52.7% .154 150.069);--color-green-800:oklch(44.8% .119 151.328);--color-green-900:oklch(39.3% .095 152.535);--color-green-950:oklch(26.6% .065 152.934);--color-emerald-50:oklch(97.9% .021 166.113);--color-emerald-100:oklch(95% .052 163.051);--color-emerald-200:oklch(90.5% .093 164.15);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-emerald-700:oklch(50.8% .118 165.612);--color-emerald-800:oklch(43.2% .095 166.913);--color-blue-50:oklch(97% .014 254.604);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-200:oklch(88.2% .059 254.128);--color-blue-300:oklch(80.9% .105 251.813);--color-blue-400:oklch(70.7% .165 254.624);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-800:oklch(42.4% .199 265.638);--color-blue-900:oklch(37.9% .146 265.522);--color-blue-950:oklch(28.2% .091 267.935);--color-purple-50:oklch(97.7% .014 308.299);--color-purple-100:oklch(94.6% .033 307.174);--color-purple-200:oklch(90.2% .063 306.703);--color-purple-400:oklch(71.4% .203 305.504);--color-purple-500:oklch(62.7% .265 303.9);--color-purple-600:oklch(55.8% .288 302.321);--color-purple-800:oklch(43.8% .218 303.724);--color-purple-900:oklch(38.1% .176 304.987);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-md:28rem;--container-lg:32rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--container-5xl:64rem;--container-6xl:72rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-relaxed:1.625;--drop-shadow-lg:0 4px 4px #00000026;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--animate-bounce:bounce 1s infinite;--blur-sm:8px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){*{outline-color:color-mix(in oklab, var(--ring) 50%, transparent)}}body{background-color:var(--background);color:var(--foreground)}}@layer components;@layer utilities{.\@container\/card-header{container:card-header/inline-size}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:0}.inset-2{inset:calc(var(--spacing) * 2)}.inset-y-0{inset-block:0}.top-0{top:0}.top-1{top:var(--spacing)}.top-2{top:calc(var(--spacing) * 2)}.top-4{top:calc(var(--spacing) * 4)}.top-\[30px\]{top:30px}.-right-2{right:calc(var(--spacing) * -2)}.right-0{right:0}.right-1{right:var(--spacing)}.right-2{right:calc(var(--spacing) * 2)}.right-4{right:calc(var(--spacing) * 4)}.bottom-0{bottom:0}.bottom-24{bottom:calc(var(--spacing) * 24)}.-left-2{left:calc(var(--spacing) * -2)}.left-0{left:0}.left-1\/2{left:50%}.left-2{left:calc(var(--spacing) * 2)}.left-\[18px\]{left:18px}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.container\!{width:100%!important}@media (width>=40rem){.container\!{max-width:40rem!important}}@media (width>=48rem){.container\!{max-width:48rem!important}}@media (width>=64rem){.container\!{max-width:64rem!important}}@media (width>=80rem){.container\!{max-width:80rem!important}}@media (width>=96rem){.container\!{max-width:96rem!important}}.m-2{margin:calc(var(--spacing) * 2)}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.mx-0\.5{margin-inline:calc(var(--spacing) * .5)}.mx-4{margin-inline:calc(var(--spacing) * 4)}.mx-auto{margin-inline:auto}.my-1{margin-block:var(--spacing)}.my-2{margin-block:calc(var(--spacing) * 2)}.my-3{margin-block:calc(var(--spacing) * 3)}.my-4{margin-block:calc(var(--spacing) * 4)}.mt-0{margin-top:0}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-12{margin-top:calc(var(--spacing) * 12)}.mr-1{margin-right:var(--spacing)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mb-1{margin-bottom:var(--spacing)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.ml-0{margin-left:0}.ml-1{margin-left:var(--spacing)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-3{margin-left:calc(var(--spacing) * 3)}.ml-4{margin-left:calc(var(--spacing) * 4)}.ml-5{margin-left:calc(var(--spacing) * 5)}.ml-6{margin-left:calc(var(--spacing) * 6)}.ml-auto{margin-left:auto}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.field-sizing-content{field-sizing:content}.size-2{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.size-3\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.\!h-2{height:calc(var(--spacing) * 2)!important}.h-0{height:0}.h-0\.5{height:calc(var(--spacing) * .5)}.h-1{height:var(--spacing)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-12{height:calc(var(--spacing) * 12)}.h-14{height:calc(var(--spacing) * 14)}.h-16{height:calc(var(--spacing) * 16)}.h-32{height:calc(var(--spacing) * 32)}.h-\[1\.2rem\]{height:1.2rem}.h-\[1px\]{height:1px}.h-\[85vh\]{height:85vh}.h-\[500px\]{height:500px}.h-\[calc\(100\%\+8px\)\]{height:calc(100% + 8px)}.h-\[calc\(100vh-3\.5rem\)\]{height:calc(100vh - 3.5rem)}.h-\[calc\(100vh-3\.7rem\)\]{height:calc(100vh - 3.7rem)}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-\(--radix-dropdown-menu-content-available-height\){max-height:var(--radix-dropdown-menu-content-available-height)}.max-h-\(--radix-select-content-available-height\){max-height:var(--radix-select-content-available-height)}.max-h-32{max-height:calc(var(--spacing) * 32)}.max-h-40{max-height:calc(var(--spacing) * 40)}.max-h-48{max-height:calc(var(--spacing) * 48)}.max-h-60{max-height:calc(var(--spacing) * 60)}.max-h-64{max-height:calc(var(--spacing) * 64)}.max-h-\[85vh\]{max-height:85vh}.max-h-\[90vh\]{max-height:90vh}.max-h-\[200px\]{max-height:200px}.max-h-\[400px\]{max-height:400px}.max-h-none{max-height:none}.max-h-screen{max-height:100vh}.\!min-h-0{min-height:0!important}.min-h-0{min-height:0}.min-h-16{min-height:calc(var(--spacing) * 16)}.min-h-\[36px\]{min-height:36px}.min-h-\[40px\]{min-height:40px}.min-h-\[50vh\]{min-height:50vh}.min-h-\[400px\]{min-height:400px}.min-h-screen{min-height:100vh}.\!w-2{width:calc(var(--spacing) * 2)!important}.w-1{width:var(--spacing)}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-10{width:calc(var(--spacing) * 10)}.w-12{width:calc(var(--spacing) * 12)}.w-16{width:calc(var(--spacing) * 16)}.w-20{width:calc(var(--spacing) * 20)}.w-56{width:calc(var(--spacing) * 56)}.w-64{width:calc(var(--spacing) * 64)}.w-80{width:calc(var(--spacing) * 80)}.w-\[1\.2rem\]{width:1.2rem}.w-\[1px\]{width:1px}.w-\[28rem\]{width:28rem}.w-\[90vw\]{width:90vw}.w-\[600px\]{width:600px}.w-\[800px\]{width:800px}.w-fit{width:fit-content}.w-full{width:100%}.w-px{width:1px}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-\[80\%\]{max-width:80%}.max-w-\[90vw\]{max-width:90vw}.max-w-\[200px\]{max-width:200px}.max-w-full{max-width:100%}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.\!min-w-0{min-width:0!important}.min-w-0{min-width:0}.min-w-\[1\.25rem\]{min-width:1.25rem}.min-w-\[8rem\]{min-width:8rem}.min-w-\[50px\]{min-width:50px}.min-w-\[80px\]{min-width:80px}.min-w-\[300px\]{min-width:300px}.min-w-\[400px\]{min-width:400px}.min-w-\[800px\]{min-width:800px}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.min-w-full{min-width:100%}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.origin-\(--radix-dropdown-menu-content-transform-origin\){transform-origin:var(--radix-dropdown-menu-content-transform-origin)}.origin-\(--radix-select-content-transform-origin\){transform-origin:var(--radix-select-content-transform-origin)}.origin-bottom{transform-origin:bottom}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-0{--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-4{--tw-translate-x:calc(var(--spacing) * 4);translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-0{--tw-scale-x:0%;--tw-scale-y:0%;--tw-scale-z:0%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-75{--tw-scale-x:75%;--tw-scale-y:75%;--tw-scale-z:75%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.rotate-0{rotate:0deg}.rotate-90{rotate:90deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-bounce{animation:var(--animate-bounce)}.animate-in{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-col-resize{cursor:col-resize}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.resize{resize:both}.resize-none{resize:none}.scroll-my-1{scroll-margin-block:var(--spacing)}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.auto-rows-min{grid-auto-rows:min-content}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-\[auto_auto_1fr_auto\]{grid-template-columns:auto auto 1fr auto}.grid-rows-\[auto_auto\]{grid-template-rows:auto auto}.flex-col{flex-direction:column}.flex-row-reverse{flex-direction:row-reverse}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0{gap:0}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * .5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * .5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-4{column-gap:calc(var(--spacing) * 4)}:where(.space-x-1>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(var(--spacing) * var(--tw-space-x-reverse));margin-inline-end:calc(var(--spacing) * calc(1 - var(--tw-space-x-reverse)))}:where(.space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 2) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse)))}.gap-y-1{row-gap:var(--spacing)}.self-start{align-self:flex-start}.justify-self-end{justify-self:flex-end}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.\!rounded-full{border-radius:2147483647px!important}.rounded{border-radius:.25rem}.rounded-\[4px\]{border-radius:4px}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:2147483647px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-none{border-radius:0}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-l-none{border-top-left-radius:0;border-bottom-left-radius:0}.rounded-r-none{border-top-right-radius:0;border-bottom-right-radius:0}.\!border{border-style:var(--tw-border-style)!important;border-width:1px!important}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-0{border-left-style:var(--tw-border-style);border-left-width:0}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.\!border-gray-600{border-color:var(--color-gray-600)!important}.border-\[\#643FB2\]{border-color:#643fb2}.border-\[\#643FB2\]\/20{border-color:oklab(47.4316% .069152 -.159147/.2)}.border-\[\#643FB2\]\/30{border-color:oklab(47.4316% .069152 -.159147/.3)}.border-amber-200{border-color:var(--color-amber-200)}.border-blue-200{border-color:var(--color-blue-200)}.border-blue-300{border-color:var(--color-blue-300)}.border-blue-400{border-color:var(--color-blue-400)}.border-blue-500{border-color:var(--color-blue-500)}.border-border,.border-border\/50{border-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.border-border\/50{border-color:color-mix(in oklab, var(--border) 50%, transparent)}}.border-current\/30{border-color:currentColor}@supports (color:color-mix(in lab, red, red)){.border-current\/30{border-color:color-mix(in oklab, currentcolor 30%, transparent)}}.border-destructive\/30{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.border-destructive\/30{border-color:color-mix(in oklab, var(--destructive) 30%, transparent)}}.border-foreground\/5{border-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.border-foreground\/5{border-color:color-mix(in oklab, var(--foreground) 5%, transparent)}}.border-foreground\/10{border-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.border-foreground\/10{border-color:color-mix(in oklab, var(--foreground) 10%, transparent)}}.border-foreground\/20{border-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.border-foreground\/20{border-color:color-mix(in oklab, var(--foreground) 20%, transparent)}}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-300{border-color:var(--color-gray-300)}.border-gray-400{border-color:var(--color-gray-400)}.border-gray-500\/20{border-color:#6a728233}@supports (color:color-mix(in lab, red, red)){.border-gray-500\/20{border-color:color-mix(in oklab, var(--color-gray-500) 20%, transparent)}}.border-green-200{border-color:var(--color-green-200)}.border-green-500{border-color:var(--color-green-500)}.border-green-500\/20{border-color:#00c75833}@supports (color:color-mix(in lab, red, red)){.border-green-500\/20{border-color:color-mix(in oklab, var(--color-green-500) 20%, transparent)}}.border-green-500\/40{border-color:#00c75866}@supports (color:color-mix(in lab, red, red)){.border-green-500\/40{border-color:color-mix(in oklab, var(--color-green-500) 40%, transparent)}}.border-green-600\/20{border-color:#00a54433}@supports (color:color-mix(in lab, red, red)){.border-green-600\/20{border-color:color-mix(in oklab, var(--color-green-600) 20%, transparent)}}.border-input{border-color:var(--input)}.border-muted,.border-muted\/50{border-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.border-muted\/50{border-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.border-orange-200{border-color:var(--color-orange-200)}.border-orange-300{border-color:var(--color-orange-300)}.border-orange-500{border-color:var(--color-orange-500)}.border-orange-500\/20{border-color:#fe6e0033}@supports (color:color-mix(in lab, red, red)){.border-orange-500\/20{border-color:color-mix(in oklab, var(--color-orange-500) 20%, transparent)}}.border-orange-500\/40{border-color:#fe6e0066}@supports (color:color-mix(in lab, red, red)){.border-orange-500\/40{border-color:color-mix(in oklab, var(--color-orange-500) 40%, transparent)}}.border-orange-600\/20{border-color:#f0510033}@supports (color:color-mix(in lab, red, red)){.border-orange-600\/20{border-color:color-mix(in oklab, var(--color-orange-600) 20%, transparent)}}.border-primary,.border-primary\/20{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.border-primary\/20{border-color:color-mix(in oklab, var(--primary) 20%, transparent)}}.border-red-200{border-color:var(--color-red-200)}.border-red-500{border-color:var(--color-red-500)}.border-red-500\/20{border-color:#fb2c3633}@supports (color:color-mix(in lab, red, red)){.border-red-500\/20{border-color:color-mix(in oklab, var(--color-red-500) 20%, transparent)}}.border-transparent{border-color:#0000}.border-yellow-200{border-color:var(--color-yellow-200)}.border-t-transparent{border-top-color:#0000}.border-l-transparent{border-left-color:#0000}.bg-\[\#643FB2\]{background-color:#643fb2}.bg-\[\#643FB2\]\/10{background-color:oklab(47.4316% .069152 -.159147/.1)}.bg-accent\/10{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.bg-accent\/10{background-color:color-mix(in oklab, var(--accent) 10%, transparent)}}.bg-amber-50{background-color:var(--color-amber-50)}.bg-amber-500{background-color:var(--color-amber-500)}.bg-amber-500\/10{background-color:#f99c001a}@supports (color:color-mix(in lab, red, red)){.bg-amber-500\/10{background-color:color-mix(in oklab, var(--color-amber-500) 10%, transparent)}}.bg-background,.bg-background\/50{background-color:var(--background)}@supports (color:color-mix(in lab, red, red)){.bg-background\/50{background-color:color-mix(in oklab, var(--background) 50%, transparent)}}.bg-black{background-color:var(--color-black)}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab, red, red)){.bg-black\/50{background-color:color-mix(in oklab, var(--color-black) 50%, transparent)}}.bg-black\/60{background-color:#0009}@supports (color:color-mix(in lab, red, red)){.bg-black\/60{background-color:color-mix(in oklab, var(--color-black) 60%, transparent)}}.bg-blue-50{background-color:var(--color-blue-50)}.bg-blue-50\/80{background-color:#eff6ffcc}@supports (color:color-mix(in lab, red, red)){.bg-blue-50\/80{background-color:color-mix(in oklab, var(--color-blue-50) 80%, transparent)}}.bg-blue-50\/95{background-color:#eff6fff2}@supports (color:color-mix(in lab, red, red)){.bg-blue-50\/95{background-color:color-mix(in oklab, var(--color-blue-50) 95%, transparent)}}.bg-blue-100{background-color:var(--color-blue-100)}.bg-blue-500{background-color:var(--color-blue-500)}.bg-blue-500\/5{background-color:#3080ff0d}@supports (color:color-mix(in lab, red, red)){.bg-blue-500\/5{background-color:color-mix(in oklab, var(--color-blue-500) 5%, transparent)}}.bg-blue-500\/10{background-color:#3080ff1a}@supports (color:color-mix(in lab, red, red)){.bg-blue-500\/10{background-color:color-mix(in oklab, var(--color-blue-500) 10%, transparent)}}.bg-blue-600{background-color:var(--color-blue-600)}.bg-border{background-color:var(--border)}.bg-card{background-color:var(--card)}.bg-current{background-color:currentColor}.bg-destructive,.bg-destructive\/10{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\/10{background-color:color-mix(in oklab, var(--destructive) 10%, transparent)}}.bg-emerald-500{background-color:var(--color-emerald-500)}.bg-foreground\/5{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.bg-foreground\/5{background-color:color-mix(in oklab, var(--foreground) 5%, transparent)}}.bg-foreground\/10{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.bg-foreground\/10{background-color:color-mix(in oklab, var(--foreground) 10%, transparent)}}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-gray-400{background-color:var(--color-gray-400)}.bg-gray-500\/10{background-color:#6a72821a}@supports (color:color-mix(in lab, red, red)){.bg-gray-500\/10{background-color:color-mix(in oklab, var(--color-gray-500) 10%, transparent)}}.bg-gray-900\/90{background-color:#101828e6}@supports (color:color-mix(in lab, red, red)){.bg-gray-900\/90{background-color:color-mix(in oklab, var(--color-gray-900) 90%, transparent)}}.bg-green-50{background-color:var(--color-green-50)}.bg-green-100{background-color:var(--color-green-100)}.bg-green-500{background-color:var(--color-green-500)}.bg-green-500\/5{background-color:#00c7580d}@supports (color:color-mix(in lab, red, red)){.bg-green-500\/5{background-color:color-mix(in oklab, var(--color-green-500) 5%, transparent)}}.bg-green-500\/10{background-color:#00c7581a}@supports (color:color-mix(in lab, red, red)){.bg-green-500\/10{background-color:color-mix(in oklab, var(--color-green-500) 10%, transparent)}}.bg-muted{background-color:var(--muted)}.bg-muted-foreground\/20{background-color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.bg-muted-foreground\/20{background-color:color-mix(in oklab, var(--muted-foreground) 20%, transparent)}}.bg-muted-foreground\/30{background-color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.bg-muted-foreground\/30{background-color:color-mix(in oklab, var(--muted-foreground) 30%, transparent)}}.bg-muted\/30{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/30{background-color:color-mix(in oklab, var(--muted) 30%, transparent)}}.bg-muted\/50{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/50{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.bg-orange-50{background-color:var(--color-orange-50)}.bg-orange-50\/50{background-color:#fff7ed80}@supports (color:color-mix(in lab, red, red)){.bg-orange-50\/50{background-color:color-mix(in oklab, var(--color-orange-50) 50%, transparent)}}.bg-orange-100{background-color:var(--color-orange-100)}.bg-orange-100\/50{background-color:#ffedd580}@supports (color:color-mix(in lab, red, red)){.bg-orange-100\/50{background-color:color-mix(in oklab, var(--color-orange-100) 50%, transparent)}}.bg-orange-500{background-color:var(--color-orange-500)}.bg-orange-500\/5{background-color:#fe6e000d}@supports (color:color-mix(in lab, red, red)){.bg-orange-500\/5{background-color:color-mix(in oklab, var(--color-orange-500) 5%, transparent)}}.bg-orange-500\/10{background-color:#fe6e001a}@supports (color:color-mix(in lab, red, red)){.bg-orange-500\/10{background-color:color-mix(in oklab, var(--color-orange-500) 10%, transparent)}}.bg-popover{background-color:var(--popover)}.bg-primary,.bg-primary\/10{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/10{background-color:color-mix(in oklab, var(--primary) 10%, transparent)}}.bg-primary\/30{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/30{background-color:color-mix(in oklab, var(--primary) 30%, transparent)}}.bg-primary\/40{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/40{background-color:color-mix(in oklab, var(--primary) 40%, transparent)}}.bg-purple-50{background-color:var(--color-purple-50)}.bg-purple-100{background-color:var(--color-purple-100)}.bg-purple-500{background-color:var(--color-purple-500)}.bg-red-50{background-color:var(--color-red-50)}.bg-red-100{background-color:var(--color-red-100)}.bg-red-500{background-color:var(--color-red-500)}.bg-red-500\/10{background-color:#fb2c361a}@supports (color:color-mix(in lab, red, red)){.bg-red-500\/10{background-color:color-mix(in oklab, var(--color-red-500) 10%, transparent)}}.bg-secondary{background-color:var(--secondary)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-white\/60{background-color:#fff9}@supports (color:color-mix(in lab, red, red)){.bg-white\/60{background-color:color-mix(in oklab, var(--color-white) 60%, transparent)}}.bg-white\/90{background-color:#ffffffe6}@supports (color:color-mix(in lab, red, red)){.bg-white\/90{background-color:color-mix(in oklab, var(--color-white) 90%, transparent)}}.bg-yellow-100{background-color:var(--color-yellow-100)}.fill-current{fill:currentColor}.object-cover{object-fit:cover}.p-0{padding:0}.p-1{padding:var(--spacing)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.p-\[1px\]{padding:1px}.px-1{padding-inline:var(--spacing)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-8{padding-inline:calc(var(--spacing) * 8)}.py-0{padding-block:0}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.pt-0{padding-top:0}.pt-1{padding-top:var(--spacing)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-8{padding-top:calc(var(--spacing) * 8)}.pt-9{padding-top:calc(var(--spacing) * 9)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-4{padding-right:calc(var(--spacing) * 4)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pl-2{padding-left:calc(var(--spacing) * 2)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-5{padding-left:calc(var(--spacing) * 5)}.pl-8{padding-left:calc(var(--spacing) * 8)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[10px\]{font-size:10px}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-\[\#643FB2\]{color:#643fb2}.text-amber-500{color:var(--color-amber-500)}.text-amber-600{color:var(--color-amber-600)}.text-amber-600\/80{color:#dd7400cc}@supports (color:color-mix(in lab, red, red)){.text-amber-600\/80{color:color-mix(in oklab, var(--color-amber-600) 80%, transparent)}}.text-amber-700{color:var(--color-amber-700)}.text-amber-800{color:var(--color-amber-800)}.text-amber-900{color:var(--color-amber-900)}.text-blue-500{color:var(--color-blue-500)}.text-blue-500\/80{color:#3080ffcc}@supports (color:color-mix(in lab, red, red)){.text-blue-500\/80{color:color-mix(in oklab, var(--color-blue-500) 80%, transparent)}}.text-blue-600{color:var(--color-blue-600)}.text-blue-700{color:var(--color-blue-700)}.text-blue-800{color:var(--color-blue-800)}.text-blue-900{color:var(--color-blue-900)}.text-card-foreground{color:var(--card-foreground)}.text-current{color:currentColor}.text-destructive,.text-destructive\/70{color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.text-destructive\/70{color:color-mix(in oklab, var(--destructive) 70%, transparent)}}.text-destructive\/90{color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.text-destructive\/90{color:color-mix(in oklab, var(--destructive) 90%, transparent)}}.text-emerald-600{color:var(--color-emerald-600)}.text-foreground{color:var(--foreground)}.text-gray-300{color:var(--color-gray-300)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-900{color:var(--color-gray-900)}.text-green-500{color:var(--color-green-500)}.text-green-600{color:var(--color-green-600)}.text-green-700{color:var(--color-green-700)}.text-green-800{color:var(--color-green-800)}.text-green-900{color:var(--color-green-900)}.text-muted-foreground,.text-muted-foreground\/60{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/60{color:color-mix(in oklab, var(--muted-foreground) 60%, transparent)}}.text-muted-foreground\/70{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/70{color:color-mix(in oklab, var(--muted-foreground) 70%, transparent)}}.text-muted-foreground\/80{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/80{color:color-mix(in oklab, var(--muted-foreground) 80%, transparent)}}.text-orange-500{color:var(--color-orange-500)}.text-orange-600{color:var(--color-orange-600)}.text-orange-700{color:var(--color-orange-700)}.text-orange-800{color:var(--color-orange-800)}.text-orange-900{color:var(--color-orange-900)}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-purple-500{color:var(--color-purple-500)}.text-purple-600{color:var(--color-purple-600)}.text-purple-800{color:var(--color-purple-800)}.text-red-400{color:var(--color-red-400)}.text-red-500{color:var(--color-red-500)}.text-red-600{color:var(--color-red-600)}.text-red-700{color:var(--color-red-700)}.text-red-800{color:var(--color-red-800)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-white{color:var(--color-white)}.text-yellow-600{color:var(--color-yellow-600)}.text-yellow-700{color:var(--color-yellow-700)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-0{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[\#643FB2\]\/20{--tw-shadow-color:#643fb233}@supports (color:color-mix(in lab, red, red)){.shadow-\[\#643FB2\]\/20{--tw-shadow-color:color-mix(in oklab, oklab(47.4316% .069152 -.159147/.2) var(--tw-shadow-alpha), transparent)}}.shadow-green-500\/20{--tw-shadow-color:#00c75833}@supports (color:color-mix(in lab, red, red)){.shadow-green-500\/20{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-green-500) 20%, transparent) var(--tw-shadow-alpha), transparent)}}.shadow-orange-500\/20{--tw-shadow-color:#fe6e0033}@supports (color:color-mix(in lab, red, red)){.shadow-orange-500\/20{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-orange-500) 20%, transparent) var(--tw-shadow-alpha), transparent)}}.shadow-primary\/25{--tw-shadow-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.shadow-primary\/25{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--primary) 25%, transparent) var(--tw-shadow-alpha), transparent)}}.shadow-red-500\/20{--tw-shadow-color:#fb2c3633}@supports (color:color-mix(in lab, red, red)){.shadow-red-500\/20{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-red-500) 20%, transparent) var(--tw-shadow-alpha), transparent)}}.ring-blue-500{--tw-ring-color:var(--color-blue-500)}.ring-blue-500\/20{--tw-ring-color:#3080ff33}@supports (color:color-mix(in lab, red, red)){.ring-blue-500\/20{--tw-ring-color:color-mix(in oklab, var(--color-blue-500) 20%, transparent)}}.ring-offset-2{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.ring-offset-background{--tw-ring-offset-color:var(--background)}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.drop-shadow-lg{--tw-drop-shadow-size:drop-shadow(0 4px 4px var(--tw-drop-shadow-color,#00000026));--tw-drop-shadow:drop-shadow(var(--drop-shadow-lg));filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[color\,box-shadow\]{transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-none{transition-property:none}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.fade-in-0{--tw-enter-opacity:0}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.zoom-in-95{--tw-enter-scale:.95}.\[animation-delay\:-0\.3s\]{animation-delay:-.3s}.\[animation-delay\:-0\.15s\]{animation-delay:-.15s}.fade-in{--tw-enter-opacity:0}.running{animation-play-state:running}.slide-in-from-bottom-2{--tw-enter-translate-y:calc(2*var(--spacing))}.group-open\:rotate-90:is(:where(.group):is([open],:popover-open,:open) *){rotate:90deg}.group-open\:rotate-180:is(:where(.group):is([open],:popover-open,:open) *){rotate:180deg}@media (hover:hover){.group-hover\:bg-primary:is(:where(.group):hover *){background-color:var(--primary)}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.group-hover\:shadow-md:is(:where(.group):hover *){--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-hover\:shadow-primary\/20:is(:where(.group):hover *){--tw-shadow-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.group-hover\:shadow-primary\/20:is(:where(.group):hover *){--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--primary) 20%, transparent) var(--tw-shadow-alpha), transparent)}}}.group-data-\[disabled\=true\]\:pointer-events-none:is(:where(.group)[data-disabled=true] *){pointer-events:none}.group-data-\[disabled\=true\]\:opacity-50:is(:where(.group)[data-disabled=true] *){opacity:.5}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.selection\:bg-primary ::selection{background-color:var(--primary)}.selection\:bg-primary::selection{background-color:var(--primary)}.selection\:text-primary-foreground ::selection{color:var(--primary-foreground)}.selection\:text-primary-foreground::selection{color:var(--primary-foreground)}.file\:inline-flex::file-selector-button{display:inline-flex}.file\:h-7::file-selector-button{height:calc(var(--spacing) * 7)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:var(--foreground)}.placeholder\:text-muted-foreground::placeholder{color:var(--muted-foreground)}.first\:mt-0:first-child{margin-top:0}.last\:border-0:last-child{border-style:var(--tw-border-style);border-width:0}.last\:border-r-0:last-child{border-right-style:var(--tw-border-style);border-right-width:0}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media (hover:hover){.hover\:scale-y-\[1\.15\]:hover{--tw-scale-y:1.15;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:border-gray-300:hover{border-color:var(--color-gray-300)}.hover\:border-muted-foreground\/30:hover{border-color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.hover\:border-muted-foreground\/30:hover{border-color:color-mix(in oklab, var(--muted-foreground) 30%, transparent)}}.hover\:bg-accent:hover,.hover\:bg-accent\/50:hover{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-accent\/50:hover{background-color:color-mix(in oklab, var(--accent) 50%, transparent)}}.hover\:bg-amber-100:hover{background-color:var(--color-amber-100)}.hover\:bg-blue-700:hover{background-color:var(--color-blue-700)}.hover\:bg-destructive\/80:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/80:hover{background-color:color-mix(in oklab, var(--destructive) 80%, transparent)}}.hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab, var(--destructive) 90%, transparent)}}.hover\:bg-muted:hover,.hover\:bg-muted\/30:hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-muted\/30:hover{background-color:color-mix(in oklab, var(--muted) 30%, transparent)}}.hover\:bg-muted\/50:hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-muted\/50:hover{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.hover\:bg-muted\/70:hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-muted\/70:hover{background-color:color-mix(in oklab, var(--muted) 70%, transparent)}}.hover\:bg-orange-100:hover{background-color:var(--color-orange-100)}.hover\:bg-primary\/20:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/20:hover{background-color:color-mix(in oklab, var(--primary) 20%, transparent)}}.hover\:bg-primary\/80:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/80:hover{background-color:color-mix(in oklab, var(--primary) 80%, transparent)}}.hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab, var(--primary) 90%, transparent)}}.hover\:bg-red-50:hover{background-color:var(--color-red-50)}.hover\:bg-secondary\/80:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab, var(--secondary) 80%, transparent)}}.hover\:bg-white:hover{background-color:var(--color-white)}.hover\:text-accent-foreground:hover{color:var(--accent-foreground)}.hover\:text-destructive\/80:hover{color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\:text-destructive\/80:hover{color:color-mix(in oklab, var(--destructive) 80%, transparent)}}.hover\:text-foreground:hover{color:var(--foreground)}.hover\:text-orange-900:hover{color:var(--color-orange-900)}.hover\:text-primary:hover{color:var(--primary)}.hover\:text-red-600:hover{color:var(--color-red-600)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-70:hover{opacity:.7}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.hover\:brightness-110:hover{--tw-brightness:brightness(110%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}.focus\:bg-accent:focus{background-color:var(--accent)}.focus\:text-accent-foreground:focus{color:var(--accent-foreground)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus\:ring-ring:focus{--tw-ring-color:var(--ring)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\:ring-1:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.focus-visible\:ring-ring:focus-visible,.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:ring-offset-background:focus-visible{--tw-ring-offset-color:var(--background)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-\[\>svg\]\:px-2\.5:has(>svg){padding-inline:calc(var(--spacing) * 2.5)}.has-\[\>svg\]\:px-3:has(>svg){padding-inline:calc(var(--spacing) * 3)}.has-\[\>svg\]\:px-4:has(>svg){padding-inline:calc(var(--spacing) * 4)}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[inset\]\:pl-8[data-inset]{padding-left:calc(var(--spacing) * 8)}.data-\[placeholder\]\:text-muted-foreground[data-placeholder]{color:var(--muted-foreground)}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}.data-\[size\=default\]\:h-9[data-size=default]{height:calc(var(--spacing) * 9)}.data-\[size\=sm\]\:h-8[data-size=sm]{height:calc(var(--spacing) * 8)}:is(.\*\:data-\[slot\=select-value\]\:line-clamp-1>*)[data-slot=select-value]{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:is(.\*\:data-\[slot\=select-value\]\:flex>*)[data-slot=select-value]{display:flex}:is(.\*\:data-\[slot\=select-value\]\:items-center>*)[data-slot=select-value]{align-items:center}:is(.\*\:data-\[slot\=select-value\]\:gap-2>*)[data-slot=select-value]{gap:calc(var(--spacing) * 2)}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:var(--background)}.data-\[state\=active\]\:text-foreground[data-state=active]{color:var(--foreground)}.data-\[state\=active\]\:shadow[data-state=active]{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.data-\[state\=checked\]\:translate-x-4[data-state=checked]{--tw-translate-x:calc(var(--spacing) * 4);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[state\=checked\]\:border-primary[data-state=checked]{border-color:var(--primary)}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:var(--primary)}.data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{color:var(--primary-foreground)}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=open\]\:animate-in[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:var(--accent)}.data-\[state\=open\]\:text-accent-foreground[data-state=open]{color:var(--accent-foreground)}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{background-color:var(--input)}.data-\[variant\=destructive\]\:text-destructive[data-variant=destructive]{color:var(--destructive)}.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:color-mix(in oklab, var(--destructive) 10%, transparent)}}.data-\[variant\=destructive\]\:focus\:text-destructive[data-variant=destructive]:focus{color:var(--destructive)}@media (width>=40rem){.sm\:w-64{width:calc(var(--spacing) * 64)}.sm\:max-w-lg{max-width:var(--container-lg)}.sm\:flex-none{flex:none}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}}@media (width>=48rem){.md\:col-span-2{grid-column:span 2/span 2}.md\:col-start-2{grid-column-start:2}.md\:inline{display:inline}.md\:max-w-2xl{max-width:var(--container-2xl)}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}@media (width>=64rem){.lg\:col-span-3{grid-column:span 3/span 3}.lg\:max-w-4xl{max-width:var(--container-4xl)}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:items-center{align-items:center}.lg\:justify-between{justify-content:space-between}}@media (width>=80rem){.xl\:col-span-2{grid-column:span 2/span 2}.xl\:col-span-4{grid-column:span 4/span 4}.xl\:max-w-5xl{max-width:var(--container-5xl)}.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.dark\:scale-0:is(.dark *){--tw-scale-x:0%;--tw-scale-y:0%;--tw-scale-z:0%;scale:var(--tw-scale-x) var(--tw-scale-y)}.dark\:scale-100:is(.dark *){--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.dark\:-rotate-90:is(.dark *){rotate:-90deg}.dark\:rotate-0:is(.dark *){rotate:0deg}.dark\:\!border-gray-500:is(.dark *){border-color:var(--color-gray-500)!important}.dark\:\!border-gray-600:is(.dark *){border-color:var(--color-gray-600)!important}.dark\:border-\[\#8B5CF6\]:is(.dark *){border-color:#8b5cf6}.dark\:border-\[\#8B5CF6\]\/20:is(.dark *){border-color:oklab(60.5631% .0845411 -.201932/.2)}.dark\:border-\[\#8B5CF6\]\/30:is(.dark *){border-color:oklab(60.5631% .0845411 -.201932/.3)}.dark\:border-amber-800:is(.dark *){border-color:var(--color-amber-800)}.dark\:border-amber-900:is(.dark *){border-color:var(--color-amber-900)}.dark\:border-blue-400:is(.dark *){border-color:var(--color-blue-400)}.dark\:border-blue-500:is(.dark *){border-color:var(--color-blue-500)}.dark\:border-blue-700:is(.dark *){border-color:var(--color-blue-700)}.dark\:border-blue-800:is(.dark *){border-color:var(--color-blue-800)}.dark\:border-gray-500:is(.dark *){border-color:var(--color-gray-500)}.dark\:border-gray-600:is(.dark *){border-color:var(--color-gray-600)}.dark\:border-gray-700:is(.dark *){border-color:var(--color-gray-700)}.dark\:border-green-400:is(.dark *){border-color:var(--color-green-400)}.dark\:border-green-800:is(.dark *){border-color:var(--color-green-800)}.dark\:border-input:is(.dark *){border-color:var(--input)}.dark\:border-orange-400:is(.dark *){border-color:var(--color-orange-400)}.dark\:border-orange-700:is(.dark *){border-color:var(--color-orange-700)}.dark\:border-orange-800:is(.dark *){border-color:var(--color-orange-800)}.dark\:border-red-400:is(.dark *){border-color:var(--color-red-400)}.dark\:border-red-800:is(.dark *){border-color:var(--color-red-800)}.dark\:\!bg-gray-800\/90:is(.dark *){background-color:#1e2939e6!important}@supports (color:color-mix(in lab, red, red)){.dark\:\!bg-gray-800\/90:is(.dark *){background-color:color-mix(in oklab, var(--color-gray-800) 90%, transparent)!important}}.dark\:bg-\[\#8B5CF6\]:is(.dark *){background-color:#8b5cf6}.dark\:bg-\[\#8B5CF6\]\/10:is(.dark *){background-color:oklab(60.5631% .0845411 -.201932/.1)}.dark\:bg-amber-600:is(.dark *){background-color:var(--color-amber-600)}.dark\:bg-amber-950\/20:is(.dark *){background-color:#46190133}@supports (color:color-mix(in lab, red, red)){.dark\:bg-amber-950\/20:is(.dark *){background-color:color-mix(in oklab, var(--color-amber-950) 20%, transparent)}}.dark\:bg-amber-950\/50:is(.dark *){background-color:#46190180}@supports (color:color-mix(in lab, red, red)){.dark\:bg-amber-950\/50:is(.dark *){background-color:color-mix(in oklab, var(--color-amber-950) 50%, transparent)}}.dark\:bg-blue-500\/10:is(.dark *){background-color:#3080ff1a}@supports (color:color-mix(in lab, red, red)){.dark\:bg-blue-500\/10:is(.dark *){background-color:color-mix(in oklab, var(--color-blue-500) 10%, transparent)}}.dark\:bg-blue-600:is(.dark *){background-color:var(--color-blue-600)}.dark\:bg-blue-900:is(.dark *){background-color:var(--color-blue-900)}.dark\:bg-blue-900\/20:is(.dark *){background-color:#1c398e33}@supports (color:color-mix(in lab, red, red)){.dark\:bg-blue-900\/20:is(.dark *){background-color:color-mix(in oklab, var(--color-blue-900) 20%, transparent)}}.dark\:bg-blue-950\/20:is(.dark *){background-color:#16245633}@supports (color:color-mix(in lab, red, red)){.dark\:bg-blue-950\/20:is(.dark *){background-color:color-mix(in oklab, var(--color-blue-950) 20%, transparent)}}.dark\:bg-blue-950\/40:is(.dark *){background-color:#16245666}@supports (color:color-mix(in lab, red, red)){.dark\:bg-blue-950\/40:is(.dark *){background-color:color-mix(in oklab, var(--color-blue-950) 40%, transparent)}}.dark\:bg-blue-950\/50:is(.dark *){background-color:#16245680}@supports (color:color-mix(in lab, red, red)){.dark\:bg-blue-950\/50:is(.dark *){background-color:color-mix(in oklab, var(--color-blue-950) 50%, transparent)}}.dark\:bg-blue-950\/95:is(.dark *){background-color:#162456f2}@supports (color:color-mix(in lab, red, red)){.dark\:bg-blue-950\/95:is(.dark *){background-color:color-mix(in oklab, var(--color-blue-950) 95%, transparent)}}.dark\:bg-card:is(.dark *){background-color:var(--card)}.dark\:bg-destructive\/60:is(.dark *){background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-destructive\/60:is(.dark *){background-color:color-mix(in oklab, var(--destructive) 60%, transparent)}}.dark\:bg-emerald-600:is(.dark *){background-color:var(--color-emerald-600)}.dark\:bg-foreground\/10:is(.dark *){background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-foreground\/10:is(.dark *){background-color:color-mix(in oklab, var(--foreground) 10%, transparent)}}.dark\:bg-gray-500:is(.dark *){background-color:var(--color-gray-500)}.dark\:bg-gray-800:is(.dark *){background-color:var(--color-gray-800)}.dark\:bg-gray-800\/90:is(.dark *){background-color:#1e2939e6}@supports (color:color-mix(in lab, red, red)){.dark\:bg-gray-800\/90:is(.dark *){background-color:color-mix(in oklab, var(--color-gray-800) 90%, transparent)}}.dark\:bg-gray-900:is(.dark *){background-color:var(--color-gray-900)}.dark\:bg-gray-900\/30:is(.dark *){background-color:#1018284d}@supports (color:color-mix(in lab, red, red)){.dark\:bg-gray-900\/30:is(.dark *){background-color:color-mix(in oklab, var(--color-gray-900) 30%, transparent)}}.dark\:bg-green-400:is(.dark *){background-color:var(--color-green-400)}.dark\:bg-green-500\/10:is(.dark *){background-color:#00c7581a}@supports (color:color-mix(in lab, red, red)){.dark\:bg-green-500\/10:is(.dark *){background-color:color-mix(in oklab, var(--color-green-500) 10%, transparent)}}.dark\:bg-green-900:is(.dark *){background-color:var(--color-green-900)}.dark\:bg-green-950:is(.dark *){background-color:var(--color-green-950)}.dark\:bg-green-950\/20:is(.dark *){background-color:#032e1533}@supports (color:color-mix(in lab, red, red)){.dark\:bg-green-950\/20:is(.dark *){background-color:color-mix(in oklab, var(--color-green-950) 20%, transparent)}}.dark\:bg-green-950\/50:is(.dark *){background-color:#032e1580}@supports (color:color-mix(in lab, red, red)){.dark\:bg-green-950\/50:is(.dark *){background-color:color-mix(in oklab, var(--color-green-950) 50%, transparent)}}.dark\:bg-input\/30:is(.dark *){background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-input\/30:is(.dark *){background-color:color-mix(in oklab, var(--input) 30%, transparent)}}.dark\:bg-orange-400:is(.dark *){background-color:var(--color-orange-400)}.dark\:bg-orange-500\/10:is(.dark *){background-color:#fe6e001a}@supports (color:color-mix(in lab, red, red)){.dark\:bg-orange-500\/10:is(.dark *){background-color:color-mix(in oklab, var(--color-orange-500) 10%, transparent)}}.dark\:bg-orange-600:is(.dark *){background-color:var(--color-orange-600)}.dark\:bg-orange-900:is(.dark *){background-color:var(--color-orange-900)}.dark\:bg-orange-950:is(.dark *){background-color:var(--color-orange-950)}.dark\:bg-orange-950\/20:is(.dark *){background-color:#44130633}@supports (color:color-mix(in lab, red, red)){.dark\:bg-orange-950\/20:is(.dark *){background-color:color-mix(in oklab, var(--color-orange-950) 20%, transparent)}}.dark\:bg-orange-950\/30:is(.dark *){background-color:#4413064d}@supports (color:color-mix(in lab, red, red)){.dark\:bg-orange-950\/30:is(.dark *){background-color:color-mix(in oklab, var(--color-orange-950) 30%, transparent)}}.dark\:bg-orange-950\/50:is(.dark *){background-color:#44130680}@supports (color:color-mix(in lab, red, red)){.dark\:bg-orange-950\/50:is(.dark *){background-color:color-mix(in oklab, var(--color-orange-950) 50%, transparent)}}.dark\:bg-purple-600:is(.dark *){background-color:var(--color-purple-600)}.dark\:bg-purple-900:is(.dark *){background-color:var(--color-purple-900)}.dark\:bg-red-400:is(.dark *){background-color:var(--color-red-400)}.dark\:bg-red-900:is(.dark *){background-color:var(--color-red-900)}.dark\:bg-red-950:is(.dark *){background-color:var(--color-red-950)}.dark\:bg-red-950\/20:is(.dark *){background-color:#46080933}@supports (color:color-mix(in lab, red, red)){.dark\:bg-red-950\/20:is(.dark *){background-color:color-mix(in oklab, var(--color-red-950) 20%, transparent)}}.dark\:text-\[\#8B5CF6\]:is(.dark *){color:#8b5cf6}.dark\:text-amber-100:is(.dark *){color:var(--color-amber-100)}.dark\:text-amber-200:is(.dark *){color:var(--color-amber-200)}.dark\:text-amber-300:is(.dark *){color:var(--color-amber-300)}.dark\:text-amber-400:is(.dark *){color:var(--color-amber-400)}.dark\:text-amber-400\/80:is(.dark *){color:#fcbb00cc}@supports (color:color-mix(in lab, red, red)){.dark\:text-amber-400\/80:is(.dark *){color:color-mix(in oklab, var(--color-amber-400) 80%, transparent)}}.dark\:text-amber-500:is(.dark *){color:var(--color-amber-500)}.dark\:text-blue-100:is(.dark *){color:var(--color-blue-100)}.dark\:text-blue-200:is(.dark *){color:var(--color-blue-200)}.dark\:text-blue-300:is(.dark *){color:var(--color-blue-300)}.dark\:text-blue-400:is(.dark *){color:var(--color-blue-400)}.dark\:text-blue-400\/70:is(.dark *){color:#54a2ffb3}@supports (color:color-mix(in lab, red, red)){.dark\:text-blue-400\/70:is(.dark *){color:color-mix(in oklab, var(--color-blue-400) 70%, transparent)}}.dark\:text-blue-500:is(.dark *){color:var(--color-blue-500)}.dark\:text-emerald-400:is(.dark *){color:var(--color-emerald-400)}.dark\:text-gray-100:is(.dark *){color:var(--color-gray-100)}.dark\:text-gray-300:is(.dark *){color:var(--color-gray-300)}.dark\:text-gray-400:is(.dark *){color:var(--color-gray-400)}.dark\:text-green-100:is(.dark *){color:var(--color-green-100)}.dark\:text-green-200:is(.dark *){color:var(--color-green-200)}.dark\:text-green-300:is(.dark *){color:var(--color-green-300)}.dark\:text-green-400:is(.dark *){color:var(--color-green-400)}.dark\:text-orange-100:is(.dark *){color:var(--color-orange-100)}.dark\:text-orange-200:is(.dark *){color:var(--color-orange-200)}.dark\:text-orange-300:is(.dark *){color:var(--color-orange-300)}.dark\:text-orange-400:is(.dark *){color:var(--color-orange-400)}.dark\:text-purple-200:is(.dark *){color:var(--color-purple-200)}.dark\:text-purple-400:is(.dark *){color:var(--color-purple-400)}.dark\:text-red-200:is(.dark *){color:var(--color-red-200)}.dark\:text-red-400:is(.dark *){color:var(--color-red-400)}.dark\:text-yellow-400:is(.dark *){color:var(--color-yellow-400)}.dark\:opacity-30:is(.dark *){opacity:.3}@media (hover:hover){.dark\:hover\:border-gray-600:is(.dark *):hover{border-color:var(--color-gray-600)}.dark\:hover\:bg-accent\/50:is(.dark *):hover{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-accent\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--accent) 50%, transparent)}}.dark\:hover\:bg-amber-950\/30:is(.dark *):hover{background-color:#4619014d}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-amber-950\/30:is(.dark *):hover{background-color:color-mix(in oklab, var(--color-amber-950) 30%, transparent)}}.dark\:hover\:bg-gray-800:is(.dark *):hover{background-color:var(--color-gray-800)}.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--input) 50%, transparent)}}.dark\:hover\:bg-orange-950\/40:is(.dark *):hover{background-color:#44130666}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-orange-950\/40:is(.dark *):hover{background-color:color-mix(in oklab, var(--color-orange-950) 40%, transparent)}}.dark\:hover\:bg-red-900\/20:is(.dark *):hover{background-color:#82181a33}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-red-900\/20:is(.dark *):hover{background-color:color-mix(in oklab, var(--color-red-900) 20%, transparent)}}.dark\:hover\:text-orange-200:is(.dark *):hover{color:var(--color-orange-200)}}.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\:data-\[state\=checked\]\:bg-primary:is(.dark *)[data-state=checked]{background-color:var(--primary)}.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20:is(.dark *)[data-variant=destructive]:focus{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20:is(.dark *)[data-variant=destructive]:focus{background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.\[\&_p\]\:leading-relaxed p{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_svg\:not\(\[class\*\=\'text-\'\]\)\]\:text-muted-foreground svg:not([class*=text-]){color:var(--muted-foreground)}.\[\.border-b\]\:pb-6.border-b{padding-bottom:calc(var(--spacing) * 6)}.\[\.border-t\]\:pt-6.border-t{padding-top:calc(var(--spacing) * 6)}:is(.\*\:\[span\]\:last\:flex>*):is(span):last-child{display:flex}:is(.\*\:\[span\]\:last\:items-center>*):is(span):last-child{align-items:center}:is(.\*\:\[span\]\:last\:gap-2>*):is(span):last-child{gap:calc(var(--spacing) * 2)}:is(.data-\[variant\=destructive\]\:\*\:\[svg\]\:\!text-destructive[data-variant=destructive]>*):is(svg){color:var(--destructive)!important}.\[\&\>svg\]\:absolute>svg{position:absolute}.\[\&\>svg\]\:top-4>svg{top:calc(var(--spacing) * 4)}.\[\&\>svg\]\:left-4>svg{left:calc(var(--spacing) * 4)}.\[\&\>svg\]\:text-foreground>svg{color:var(--foreground)}.\[\&\>svg\+div\]\:translate-y-\[-3px\]>svg+div{--tw-translate-y:-3px;translate:var(--tw-translate-x) var(--tw-translate-y)}.\[\&\>svg\~\*\]\:pl-7>svg~*{padding-left:calc(var(--spacing) * 7)}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}:root{--radius:.625rem;--background:oklch(100% 0 0);--foreground:oklch(14.5% 0 0);--card:oklch(100% 0 0);--card-foreground:oklch(14.5% 0 0);--popover:oklch(100% 0 0);--popover-foreground:oklch(14.5% 0 0);--primary:oklch(48% .18 290);--primary-foreground:oklch(98.5% 0 0);--secondary:oklch(97% 0 0);--secondary-foreground:oklch(20.5% 0 0);--muted:oklch(97% 0 0);--muted-foreground:oklch(55.6% 0 0);--accent:oklch(97% 0 0);--accent-foreground:oklch(20.5% 0 0);--destructive:oklch(57.7% .245 27.325);--border:oklch(92.2% 0 0);--input:oklch(92.2% 0 0);--ring:oklch(70.8% 0 0);--chart-1:oklch(64.6% .222 41.116);--chart-2:oklch(60% .118 184.704);--chart-3:oklch(39.8% .07 227.392);--chart-4:oklch(82.8% .189 84.429);--chart-5:oklch(76.9% .188 70.08);--sidebar:oklch(98.5% 0 0);--sidebar-foreground:oklch(14.5% 0 0);--sidebar-primary:oklch(20.5% 0 0);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(97% 0 0);--sidebar-accent-foreground:oklch(20.5% 0 0);--sidebar-border:oklch(92.2% 0 0);--sidebar-ring:oklch(70.8% 0 0)}.dark{--background:oklch(14.5% 0 0);--foreground:oklch(98.5% 0 0);--card:oklch(20.5% 0 0);--card-foreground:oklch(98.5% 0 0);--popover:oklch(20.5% 0 0);--popover-foreground:oklch(98.5% 0 0);--primary:oklch(62% .2 290);--primary-foreground:oklch(98.5% 0 0);--secondary:oklch(26.9% 0 0);--secondary-foreground:oklch(98.5% 0 0);--muted:oklch(26.9% 0 0);--muted-foreground:oklch(70.8% 0 0);--accent:oklch(26.9% 0 0);--accent-foreground:oklch(98.5% 0 0);--destructive:oklch(70.4% .191 22.216);--border:oklch(100% 0 0/.1);--input:oklch(100% 0 0/.15);--ring:oklch(55.6% 0 0);--chart-1:oklch(48.8% .243 264.376);--chart-2:oklch(69.6% .17 162.48);--chart-3:oklch(76.9% .188 70.08);--chart-4:oklch(62.7% .265 303.9);--chart-5:oklch(64.5% .246 16.439);--sidebar:oklch(20.5% 0 0);--sidebar-foreground:oklch(98.5% 0 0);--sidebar-primary:oklch(48.8% .243 264.376);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(26.9% 0 0);--sidebar-accent-foreground:oklch(98.5% 0 0);--sidebar-border:oklch(100% 0 0/.1);--sidebar-ring:oklch(55.6% 0 0)}.workflow-chat-view .border-green-200{border-color:var(--color-emerald-200)}.workflow-chat-view .bg-green-50{background-color:var(--color-emerald-50)}.workflow-chat-view .bg-green-100{background-color:var(--color-emerald-100)}.workflow-chat-view .text-green-600{color:var(--color-emerald-600)}.workflow-chat-view .text-green-700{color:var(--color-emerald-700)}.workflow-chat-view .text-green-800{color:var(--color-emerald-800)}.highlight-attention{animation:1s ease-out highlight-flash}@keyframes highlight-flash{0%{background-color:#fb923c4d;transform:scale(1.02)}to{background-color:#0000;transform:scale(1)}}.hil-waiting-glow{animation:2s infinite pulse-glow;box-shadow:0 0 #fb923c66,inset 0 0 0 1px #fb923c33}@keyframes pulse-glow{0%,to{box-shadow:0 0 #fb923c66,inset 0 0 0 1px #fb923c33}50%{box-shadow:0 0 20px 5px #fb923c33,inset 0 0 0 2px #fb923c4d}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}.react-flow{--xy-edge-stroke-default:#b1b1b7;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#555;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#ffffff80;--xy-minimap-background-color-default:#fff;--xy-minimap-mask-background-color-default:#f0f0f099;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#e2e2e2;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:transparent;--xy-background-pattern-dots-color-default:#91919a;--xy-background-pattern-lines-color-default:#eee;--xy-background-pattern-cross-color-default:#e2e2e2;background-color:var(--xy-background-color,var(--xy-background-color-default));--xy-node-color-default:inherit;--xy-node-border-default:1px solid #1a192b;--xy-node-background-color-default:#fff;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #00000014;--xy-node-boxshadow-selected-default:0 0 0 .5px #1a192b;--xy-node-border-radius-default:3px;--xy-handle-background-color-default:#1a192b;--xy-handle-border-color-default:#fff;--xy-selection-background-color-default:#0059dc14;--xy-selection-border-default:1px dotted #0059dccc;--xy-controls-button-background-color-default:#fefefe;--xy-controls-button-background-color-hover-default:#f4f4f4;--xy-controls-button-color-default:inherit;--xy-controls-button-color-hover-default:inherit;--xy-controls-button-border-color-default:#eee;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#fff;--xy-edge-label-color-default:inherit;--xy-resize-background-color-default:#3367d9;direction:ltr}.react-flow.dark{--xy-edge-stroke-default:#3e3e3e;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#727272;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#96969640;--xy-minimap-background-color-default:#141414;--xy-minimap-mask-background-color-default:#3c3c3c99;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#2b2b2b;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:#141414;--xy-background-pattern-dots-color-default:#555;--xy-background-pattern-lines-color-default:#333;--xy-background-pattern-cross-color-default:#333;--xy-node-color-default:#f8f8f8;--xy-node-border-default:1px solid #3c3c3c;--xy-node-background-color-default:#1e1e1e;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #ffffff14;--xy-node-boxshadow-selected-default:0 0 0 .5px #999;--xy-handle-background-color-default:#bebebe;--xy-handle-border-color-default:#1e1e1e;--xy-selection-background-color-default:#c8c8dc14;--xy-selection-border-default:1px dotted #c8c8dccc;--xy-controls-button-background-color-default:#2b2b2b;--xy-controls-button-background-color-hover-default:#3e3e3e;--xy-controls-button-color-default:#f8f8f8;--xy-controls-button-color-hover-default:#fff;--xy-controls-button-border-color-default:#5b5b5b;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#141414;--xy-edge-label-color-default:#f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props,var(--xy-background-color,var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width,var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke,var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width,var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{pointer-events:none;position:absolute;overflow:visible}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected,var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}svg.react-flow__connectionline{z-index:1001;position:absolute;overflow:visible}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;background-color:var(--xy-handle-background-color,var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color,var(--xy-handle-border-color-default));border-radius:100%;width:6px;min-width:5px;height:6px;min-height:5px;position:absolute}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:0;left:50%;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{z-index:5;margin:15px;position:absolute}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px)translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px)translateY(-50%)}.react-flow__attribution{background:var(--xy-attribution-background-color,var(--xy-attribution-background-color-default));margin:0;padding:2px 3px;font-size:10px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10px}}.react-flow__edgelabel-renderer{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__viewport-portal{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__minimap{background:var(--xy-minimap-background-color-props,var(--xy-minimap-background-color,var(--xy-minimap-background-color-default)))}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var(--xy-minimap-mask-background-color-props,var(--xy-minimap-mask-background-color,var(--xy-minimap-mask-background-color-default)));stroke:var(--xy-minimap-mask-stroke-color-props,var(--xy-minimap-mask-stroke-color,var(--xy-minimap-mask-stroke-color-default)));stroke-width:var(--xy-minimap-mask-stroke-width-props,var(--xy-minimap-mask-stroke-width,var(--xy-minimap-mask-stroke-width-default)))}.react-flow__minimap-node{fill:var(--xy-minimap-node-background-color-props,var(--xy-minimap-node-background-color,var(--xy-minimap-node-background-color-default)));stroke:var(--xy-minimap-node-stroke-color-props,var(--xy-minimap-node-stroke-color,var(--xy-minimap-node-stroke-color-default)));stroke-width:var(--xy-minimap-node-stroke-width-props,var(--xy-minimap-node-stroke-width,var(--xy-minimap-node-stroke-width-default)))}.react-flow__background-pattern.dots{fill:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-dots-color-default)))}.react-flow__background-pattern.lines{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-lines-color-default)))}.react-flow__background-pattern.cross{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-cross-color-default)))}.react-flow__controls{box-shadow:var(--xy-controls-box-shadow,var(--xy-controls-box-shadow-default));flex-direction:column;display:flex}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{background:var(--xy-controls-button-background-color,var(--xy-controls-button-background-color-default));border:none;border-bottom:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)));width:26px;height:26px;color:var(--xy-controls-button-color-props,var(--xy-controls-button-color,var(--xy-controls-button-color-default)));cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:4px;display:flex}.react-flow__controls-button svg{fill:currentColor;width:100%;max-width:12px;max-height:12px}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{border-radius:var(--xy-node-border-radius,var(--xy-node-border-radius-default));width:150px;color:var(--xy-node-color,var(--xy-node-color-default));text-align:center;border:var(--xy-node-border,var(--xy-node-border-default));background-color:var(--xy-node-background-color,var(--xy-node-background-color-default));padding:10px;font-size:12px}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover,var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected,var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color,var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color,var(--xy-selection-background-color-default));border:var(--xy-selection-border,var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var(--xy-controls-button-background-color-hover-props,var(--xy-controls-button-background-color-hover,var(--xy-controls-button-background-color-hover-default)));color:var(--xy-controls-button-color-hover-props,var(--xy-controls-button-color-hover,var(--xy-controls-button-color-hover-default)))}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)))}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border:1px solid #fff;border-radius:1px;width:5px;height:5px;translate:-50% -50%}.react-flow__resize-control.handle.left{top:50%;left:0}.react-flow__resize-control.handle.right{top:50%;left:100%}.react-flow__resize-control.handle.top{top:0;left:50%}.react-flow__resize-control.handle.bottom{top:100%;left:50%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border-style:solid;border-width:0}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;height:100%;top:0;transform:translate(-50%)}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{width:100%;height:1px;left:0;transform:translateY(-50%)}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color,var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color,var(--xy-edge-label-color-default))} +@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-100:oklch(93.6% .032 17.717);--color-red-200:oklch(88.5% .062 18.334);--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-red-800:oklch(44.4% .177 26.899);--color-red-900:oklch(39.6% .141 25.723);--color-red-950:oklch(25.8% .092 26.042);--color-orange-50:oklch(98% .016 73.684);--color-orange-100:oklch(95.4% .038 75.164);--color-orange-200:oklch(90.1% .076 70.697);--color-orange-300:oklch(83.7% .128 66.29);--color-orange-400:oklch(75% .183 55.934);--color-orange-500:oklch(70.5% .213 47.604);--color-orange-600:oklch(64.6% .222 41.116);--color-orange-700:oklch(55.3% .195 38.402);--color-orange-800:oklch(47% .157 37.304);--color-orange-900:oklch(40.8% .123 38.172);--color-orange-950:oklch(26.6% .079 36.259);--color-amber-50:oklch(98.7% .022 95.277);--color-amber-100:oklch(96.2% .059 95.617);--color-amber-200:oklch(92.4% .12 95.746);--color-amber-300:oklch(87.9% .169 91.605);--color-amber-400:oklch(82.8% .189 84.429);--color-amber-500:oklch(76.9% .188 70.08);--color-amber-600:oklch(66.6% .179 58.318);--color-amber-700:oklch(55.5% .163 48.998);--color-amber-800:oklch(47.3% .137 46.201);--color-amber-900:oklch(41.4% .112 45.904);--color-amber-950:oklch(27.9% .077 45.635);--color-yellow-100:oklch(97.3% .071 103.193);--color-yellow-200:oklch(94.5% .129 101.54);--color-yellow-400:oklch(85.2% .199 91.936);--color-yellow-600:oklch(68.1% .162 75.834);--color-yellow-700:oklch(55.4% .135 66.442);--color-green-50:oklch(98.2% .018 155.826);--color-green-100:oklch(96.2% .044 156.743);--color-green-200:oklch(92.5% .084 155.995);--color-green-300:oklch(87.1% .15 154.449);--color-green-400:oklch(79.2% .209 151.711);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-green-700:oklch(52.7% .154 150.069);--color-green-800:oklch(44.8% .119 151.328);--color-green-900:oklch(39.3% .095 152.535);--color-green-950:oklch(26.6% .065 152.934);--color-emerald-50:oklch(97.9% .021 166.113);--color-emerald-100:oklch(95% .052 163.051);--color-emerald-200:oklch(90.5% .093 164.15);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-emerald-700:oklch(50.8% .118 165.612);--color-emerald-800:oklch(43.2% .095 166.913);--color-blue-50:oklch(97% .014 254.604);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-200:oklch(88.2% .059 254.128);--color-blue-300:oklch(80.9% .105 251.813);--color-blue-400:oklch(70.7% .165 254.624);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-800:oklch(42.4% .199 265.638);--color-blue-900:oklch(37.9% .146 265.522);--color-blue-950:oklch(28.2% .091 267.935);--color-violet-400:oklch(70.2% .183 293.541);--color-violet-500:oklch(60.6% .25 292.717);--color-violet-600:oklch(54.1% .281 293.009);--color-violet-700:oklch(49.1% .27 292.581);--color-purple-50:oklch(97.7% .014 308.299);--color-purple-100:oklch(94.6% .033 307.174);--color-purple-200:oklch(90.2% .063 306.703);--color-purple-400:oklch(71.4% .203 305.504);--color-purple-500:oklch(62.7% .265 303.9);--color-purple-600:oklch(55.8% .288 302.321);--color-purple-800:oklch(43.8% .218 303.724);--color-purple-900:oklch(38.1% .176 304.987);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-md:28rem;--container-lg:32rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--container-5xl:64rem;--container-6xl:72rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-relaxed:1.625;--drop-shadow-lg:0 4px 4px #00000026;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--animate-bounce:bounce 1s infinite;--blur-sm:8px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){*{outline-color:color-mix(in oklab, var(--ring) 50%, transparent)}}body{background-color:var(--background);color:var(--foreground)}}@layer components;@layer utilities{.\@container\/card-header{container:card-header/inline-size}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:0}.inset-2{inset:calc(var(--spacing) * 2)}.inset-x-0{inset-inline:0}.inset-x-3{inset-inline:calc(var(--spacing) * 3)}.inset-y-0{inset-block:0}.top-0{top:0}.top-1{top:var(--spacing)}.top-1\/2{top:50%}.top-2{top:calc(var(--spacing) * 2)}.top-4{top:calc(var(--spacing) * 4)}.top-\[30px\]{top:30px}.-right-2{right:calc(var(--spacing) * -2)}.right-0{right:0}.right-1{right:var(--spacing)}.right-2{right:calc(var(--spacing) * 2)}.right-4{right:calc(var(--spacing) * 4)}.bottom-0{bottom:0}.bottom-24{bottom:calc(var(--spacing) * 24)}.-left-2{left:calc(var(--spacing) * -2)}.left-0{left:0}.left-1\/2{left:50%}.left-2{left:calc(var(--spacing) * 2)}.left-\[18px\]{left:18px}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.container\!{width:100%!important}@media (width>=40rem){.container\!{max-width:40rem!important}}@media (width>=48rem){.container\!{max-width:48rem!important}}@media (width>=64rem){.container\!{max-width:64rem!important}}@media (width>=80rem){.container\!{max-width:80rem!important}}@media (width>=96rem){.container\!{max-width:96rem!important}}.m-2{margin:calc(var(--spacing) * 2)}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.mx-0\.5{margin-inline:calc(var(--spacing) * .5)}.mx-4{margin-inline:calc(var(--spacing) * 4)}.mx-auto{margin-inline:auto}.my-1{margin-block:var(--spacing)}.my-2{margin-block:calc(var(--spacing) * 2)}.my-3{margin-block:calc(var(--spacing) * 3)}.my-4{margin-block:calc(var(--spacing) * 4)}.me-auto{margin-inline-end:auto}.mt-0{margin-top:0}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-12{margin-top:calc(var(--spacing) * 12)}.mr-1{margin-right:var(--spacing)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mb-1{margin-bottom:var(--spacing)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.ml-0{margin-left:0}.ml-1{margin-left:var(--spacing)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-3{margin-left:calc(var(--spacing) * 3)}.ml-4{margin-left:calc(var(--spacing) * 4)}.ml-5{margin-left:calc(var(--spacing) * 5)}.ml-6{margin-left:calc(var(--spacing) * 6)}.ml-auto{margin-left:auto}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.field-sizing-content{field-sizing:content}.size-2{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.size-3\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.\!h-2{height:calc(var(--spacing) * 2)!important}.h-0{height:0}.h-0\.5{height:calc(var(--spacing) * .5)}.h-1{height:var(--spacing)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-11{height:calc(var(--spacing) * 11)}.h-12{height:calc(var(--spacing) * 12)}.h-14{height:calc(var(--spacing) * 14)}.h-16{height:calc(var(--spacing) * 16)}.h-32{height:calc(var(--spacing) * 32)}.h-\[1\.2rem\]{height:1.2rem}.h-\[1px\]{height:1px}.h-\[72px\]{height:72px}.h-\[85vh\]{height:85vh}.h-\[500px\]{height:500px}.h-\[calc\(100\%\+8px\)\]{height:calc(100% + 8px)}.h-\[calc\(100vh-3\.5rem\)\]{height:calc(100vh - 3.5rem)}.h-\[calc\(100vh-3\.7rem\)\]{height:calc(100vh - 3.7rem)}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-\(--radix-dropdown-menu-content-available-height\){max-height:var(--radix-dropdown-menu-content-available-height)}.max-h-\(--radix-select-content-available-height\){max-height:var(--radix-select-content-available-height)}.max-h-32{max-height:calc(var(--spacing) * 32)}.max-h-40{max-height:calc(var(--spacing) * 40)}.max-h-48{max-height:calc(var(--spacing) * 48)}.max-h-60{max-height:calc(var(--spacing) * 60)}.max-h-64{max-height:calc(var(--spacing) * 64)}.max-h-\[85vh\]{max-height:85vh}.max-h-\[90vh\]{max-height:90vh}.max-h-\[200px\]{max-height:200px}.max-h-\[400px\]{max-height:400px}.max-h-none{max-height:none}.max-h-screen{max-height:100vh}.\!min-h-0{min-height:0!important}.min-h-0{min-height:0}.min-h-16{min-height:calc(var(--spacing) * 16)}.min-h-\[36px\]{min-height:36px}.min-h-\[40px\]{min-height:40px}.min-h-\[50vh\]{min-height:50vh}.min-h-\[400px\]{min-height:400px}.min-h-screen{min-height:100vh}.\!w-2{width:calc(var(--spacing) * 2)!important}.w-0\.5{width:calc(var(--spacing) * .5)}.w-1{width:var(--spacing)}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-10{width:calc(var(--spacing) * 10)}.w-11{width:calc(var(--spacing) * 11)}.w-12{width:calc(var(--spacing) * 12)}.w-16{width:calc(var(--spacing) * 16)}.w-20{width:calc(var(--spacing) * 20)}.w-56{width:calc(var(--spacing) * 56)}.w-64{width:calc(var(--spacing) * 64)}.w-80{width:calc(var(--spacing) * 80)}.w-\[1\.2rem\]{width:1.2rem}.w-\[1px\]{width:1px}.w-\[28rem\]{width:28rem}.w-\[90vw\]{width:90vw}.w-\[600px\]{width:600px}.w-\[800px\]{width:800px}.w-fit{width:fit-content}.w-full{width:100%}.w-px{width:1px}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-\[80\%\]{max-width:80%}.max-w-\[90vw\]{max-width:90vw}.max-w-\[200px\]{max-width:200px}.max-w-\[560px\]{max-width:560px}.max-w-\[760px\]{max-width:760px}.max-w-full{max-width:100%}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.\!min-w-0{min-width:0!important}.min-w-0{min-width:0}.min-w-\[1\.25rem\]{min-width:1.25rem}.min-w-\[4ch\]{min-width:4ch}.min-w-\[8rem\]{min-width:8rem}.min-w-\[50px\]{min-width:50px}.min-w-\[80px\]{min-width:80px}.min-w-\[300px\]{min-width:300px}.min-w-\[400px\]{min-width:400px}.min-w-\[800px\]{min-width:800px}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.min-w-full{min-width:100%}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.origin-\(--radix-dropdown-menu-content-transform-origin\){transform-origin:var(--radix-dropdown-menu-content-transform-origin)}.origin-\(--radix-select-content-transform-origin\){transform-origin:var(--radix-select-content-transform-origin)}.origin-bottom{transform-origin:bottom}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-0{--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-4{--tw-translate-x:calc(var(--spacing) * 4);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-0{--tw-scale-x:0%;--tw-scale-y:0%;--tw-scale-z:0%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-75{--tw-scale-x:75%;--tw-scale-y:75%;--tw-scale-z:75%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.rotate-0{rotate:0deg}.rotate-90{rotate:90deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-bounce{animation:var(--animate-bounce)}.animate-in{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-col-resize{cursor:col-resize}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.resize{resize:both}.resize-none{resize:none}.scroll-my-1{scroll-margin-block:var(--spacing)}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.auto-rows-min{grid-auto-rows:min-content}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-\[auto_auto_1fr_auto\]{grid-template-columns:auto auto 1fr auto}.grid-rows-\[auto_auto\]{grid-template-rows:auto auto}.flex-col{flex-direction:column}.flex-row-reverse{flex-direction:row-reverse}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0{gap:0}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * .5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * .5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-4{column-gap:calc(var(--spacing) * 4)}:where(.space-x-1>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(var(--spacing) * var(--tw-space-x-reverse));margin-inline-end:calc(var(--spacing) * calc(1 - var(--tw-space-x-reverse)))}:where(.space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 2) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse)))}.gap-y-1{row-gap:var(--spacing)}.self-start{align-self:flex-start}.justify-self-end{justify-self:flex-end}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.\!rounded-full{border-radius:2147483647px!important}.rounded{border-radius:.25rem}.rounded-\[4px\]{border-radius:4px}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:2147483647px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-none{border-radius:0}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-l-none{border-top-left-radius:0;border-bottom-left-radius:0}.rounded-r-none{border-top-right-radius:0;border-bottom-right-radius:0}.\!border{border-style:var(--tw-border-style)!important;border-width:1px!important}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-4{border-style:var(--tw-border-style);border-width:4px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-0{border-left-style:var(--tw-border-style);border-left-width:0}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.\!border-gray-600{border-color:var(--color-gray-600)!important}.border-\[\#643FB2\]{border-color:#643fb2}.border-\[\#643FB2\]\/20{border-color:oklab(47.4316% .069152 -.159147/.2)}.border-\[\#643FB2\]\/30{border-color:oklab(47.4316% .069152 -.159147/.3)}.border-amber-200{border-color:var(--color-amber-200)}.border-background{border-color:var(--background)}.border-blue-200{border-color:var(--color-blue-200)}.border-blue-300{border-color:var(--color-blue-300)}.border-blue-400{border-color:var(--color-blue-400)}.border-blue-500{border-color:var(--color-blue-500)}.border-border,.border-border\/50{border-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.border-border\/50{border-color:color-mix(in oklab, var(--border) 50%, transparent)}}.border-border\/60{border-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.border-border\/60{border-color:color-mix(in oklab, var(--border) 60%, transparent)}}.border-current\/30{border-color:currentColor}@supports (color:color-mix(in lab, red, red)){.border-current\/30{border-color:color-mix(in oklab, currentcolor 30%, transparent)}}.border-destructive\/30{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.border-destructive\/30{border-color:color-mix(in oklab, var(--destructive) 30%, transparent)}}.border-foreground\/5{border-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.border-foreground\/5{border-color:color-mix(in oklab, var(--foreground) 5%, transparent)}}.border-foreground\/10{border-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.border-foreground\/10{border-color:color-mix(in oklab, var(--foreground) 10%, transparent)}}.border-foreground\/20{border-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.border-foreground\/20{border-color:color-mix(in oklab, var(--foreground) 20%, transparent)}}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-300{border-color:var(--color-gray-300)}.border-gray-400{border-color:var(--color-gray-400)}.border-gray-500\/20{border-color:#6a728233}@supports (color:color-mix(in lab, red, red)){.border-gray-500\/20{border-color:color-mix(in oklab, var(--color-gray-500) 20%, transparent)}}.border-green-200{border-color:var(--color-green-200)}.border-green-500{border-color:var(--color-green-500)}.border-green-500\/20{border-color:#00c75833}@supports (color:color-mix(in lab, red, red)){.border-green-500\/20{border-color:color-mix(in oklab, var(--color-green-500) 20%, transparent)}}.border-green-500\/40{border-color:#00c75866}@supports (color:color-mix(in lab, red, red)){.border-green-500\/40{border-color:color-mix(in oklab, var(--color-green-500) 40%, transparent)}}.border-green-600\/20{border-color:#00a54433}@supports (color:color-mix(in lab, red, red)){.border-green-600\/20{border-color:color-mix(in oklab, var(--color-green-600) 20%, transparent)}}.border-input{border-color:var(--input)}.border-muted,.border-muted\/50{border-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.border-muted\/50{border-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.border-orange-200{border-color:var(--color-orange-200)}.border-orange-300{border-color:var(--color-orange-300)}.border-orange-500{border-color:var(--color-orange-500)}.border-orange-500\/20{border-color:#fe6e0033}@supports (color:color-mix(in lab, red, red)){.border-orange-500\/20{border-color:color-mix(in oklab, var(--color-orange-500) 20%, transparent)}}.border-orange-500\/30{border-color:#fe6e004d}@supports (color:color-mix(in lab, red, red)){.border-orange-500\/30{border-color:color-mix(in oklab, var(--color-orange-500) 30%, transparent)}}.border-orange-500\/40{border-color:#fe6e0066}@supports (color:color-mix(in lab, red, red)){.border-orange-500\/40{border-color:color-mix(in oklab, var(--color-orange-500) 40%, transparent)}}.border-orange-600\/20{border-color:#f0510033}@supports (color:color-mix(in lab, red, red)){.border-orange-600\/20{border-color:color-mix(in oklab, var(--color-orange-600) 20%, transparent)}}.border-primary,.border-primary\/20{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.border-primary\/20{border-color:color-mix(in oklab, var(--primary) 20%, transparent)}}.border-red-200{border-color:var(--color-red-200)}.border-red-500{border-color:var(--color-red-500)}.border-red-500\/20{border-color:#fb2c3633}@supports (color:color-mix(in lab, red, red)){.border-red-500\/20{border-color:color-mix(in oklab, var(--color-red-500) 20%, transparent)}}.border-transparent{border-color:#0000}.border-yellow-200{border-color:var(--color-yellow-200)}.border-t-transparent{border-top-color:#0000}.border-l-transparent{border-left-color:#0000}.bg-\[\#643FB2\]{background-color:#643fb2}.bg-\[\#643FB2\]\/10{background-color:oklab(47.4316% .069152 -.159147/.1)}.bg-accent\/10{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.bg-accent\/10{background-color:color-mix(in oklab, var(--accent) 10%, transparent)}}.bg-amber-50{background-color:var(--color-amber-50)}.bg-amber-500{background-color:var(--color-amber-500)}.bg-amber-500\/10{background-color:#f99c001a}@supports (color:color-mix(in lab, red, red)){.bg-amber-500\/10{background-color:color-mix(in oklab, var(--color-amber-500) 10%, transparent)}}.bg-background,.bg-background\/50{background-color:var(--background)}@supports (color:color-mix(in lab, red, red)){.bg-background\/50{background-color:color-mix(in oklab, var(--background) 50%, transparent)}}.bg-black{background-color:var(--color-black)}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab, red, red)){.bg-black\/50{background-color:color-mix(in oklab, var(--color-black) 50%, transparent)}}.bg-black\/60{background-color:#0009}@supports (color:color-mix(in lab, red, red)){.bg-black\/60{background-color:color-mix(in oklab, var(--color-black) 60%, transparent)}}.bg-blue-50{background-color:var(--color-blue-50)}.bg-blue-50\/80{background-color:#eff6ffcc}@supports (color:color-mix(in lab, red, red)){.bg-blue-50\/80{background-color:color-mix(in oklab, var(--color-blue-50) 80%, transparent)}}.bg-blue-50\/95{background-color:#eff6fff2}@supports (color:color-mix(in lab, red, red)){.bg-blue-50\/95{background-color:color-mix(in oklab, var(--color-blue-50) 95%, transparent)}}.bg-blue-100{background-color:var(--color-blue-100)}.bg-blue-500{background-color:var(--color-blue-500)}.bg-blue-500\/5{background-color:#3080ff0d}@supports (color:color-mix(in lab, red, red)){.bg-blue-500\/5{background-color:color-mix(in oklab, var(--color-blue-500) 5%, transparent)}}.bg-blue-500\/10{background-color:#3080ff1a}@supports (color:color-mix(in lab, red, red)){.bg-blue-500\/10{background-color:color-mix(in oklab, var(--color-blue-500) 10%, transparent)}}.bg-blue-600{background-color:var(--color-blue-600)}.bg-border{background-color:var(--border)}.bg-card{background-color:var(--card)}.bg-current{background-color:currentColor}.bg-destructive,.bg-destructive\/10{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\/10{background-color:color-mix(in oklab, var(--destructive) 10%, transparent)}}.bg-emerald-500{background-color:var(--color-emerald-500)}.bg-foreground\/5{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.bg-foreground\/5{background-color:color-mix(in oklab, var(--foreground) 5%, transparent)}}.bg-foreground\/10{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.bg-foreground\/10{background-color:color-mix(in oklab, var(--foreground) 10%, transparent)}}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-gray-400{background-color:var(--color-gray-400)}.bg-gray-500\/10{background-color:#6a72821a}@supports (color:color-mix(in lab, red, red)){.bg-gray-500\/10{background-color:color-mix(in oklab, var(--color-gray-500) 10%, transparent)}}.bg-gray-900\/90{background-color:#101828e6}@supports (color:color-mix(in lab, red, red)){.bg-gray-900\/90{background-color:color-mix(in oklab, var(--color-gray-900) 90%, transparent)}}.bg-green-50{background-color:var(--color-green-50)}.bg-green-100{background-color:var(--color-green-100)}.bg-green-500{background-color:var(--color-green-500)}.bg-green-500\/5{background-color:#00c7580d}@supports (color:color-mix(in lab, red, red)){.bg-green-500\/5{background-color:color-mix(in oklab, var(--color-green-500) 5%, transparent)}}.bg-green-500\/10{background-color:#00c7581a}@supports (color:color-mix(in lab, red, red)){.bg-green-500\/10{background-color:color-mix(in oklab, var(--color-green-500) 10%, transparent)}}.bg-muted{background-color:var(--muted)}.bg-muted-foreground\/20{background-color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.bg-muted-foreground\/20{background-color:color-mix(in oklab, var(--muted-foreground) 20%, transparent)}}.bg-muted-foreground\/30{background-color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.bg-muted-foreground\/30{background-color:color-mix(in oklab, var(--muted-foreground) 30%, transparent)}}.bg-muted-foreground\/35{background-color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.bg-muted-foreground\/35{background-color:color-mix(in oklab, var(--muted-foreground) 35%, transparent)}}.bg-muted-foreground\/45{background-color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.bg-muted-foreground\/45{background-color:color-mix(in oklab, var(--muted-foreground) 45%, transparent)}}.bg-muted\/30{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/30{background-color:color-mix(in oklab, var(--muted) 30%, transparent)}}.bg-muted\/50{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/50{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.bg-orange-50{background-color:var(--color-orange-50)}.bg-orange-50\/50{background-color:#fff7ed80}@supports (color:color-mix(in lab, red, red)){.bg-orange-50\/50{background-color:color-mix(in oklab, var(--color-orange-50) 50%, transparent)}}.bg-orange-100{background-color:var(--color-orange-100)}.bg-orange-100\/50{background-color:#ffedd580}@supports (color:color-mix(in lab, red, red)){.bg-orange-100\/50{background-color:color-mix(in oklab, var(--color-orange-100) 50%, transparent)}}.bg-orange-500{background-color:var(--color-orange-500)}.bg-orange-500\/5{background-color:#fe6e000d}@supports (color:color-mix(in lab, red, red)){.bg-orange-500\/5{background-color:color-mix(in oklab, var(--color-orange-500) 5%, transparent)}}.bg-orange-500\/10{background-color:#fe6e001a}@supports (color:color-mix(in lab, red, red)){.bg-orange-500\/10{background-color:color-mix(in oklab, var(--color-orange-500) 10%, transparent)}}.bg-popover{background-color:var(--popover)}.bg-primary,.bg-primary\/10{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/10{background-color:color-mix(in oklab, var(--primary) 10%, transparent)}}.bg-primary\/30{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/30{background-color:color-mix(in oklab, var(--primary) 30%, transparent)}}.bg-primary\/40{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/40{background-color:color-mix(in oklab, var(--primary) 40%, transparent)}}.bg-purple-50{background-color:var(--color-purple-50)}.bg-purple-100{background-color:var(--color-purple-100)}.bg-purple-500{background-color:var(--color-purple-500)}.bg-red-50{background-color:var(--color-red-50)}.bg-red-100{background-color:var(--color-red-100)}.bg-red-500{background-color:var(--color-red-500)}.bg-red-500\/10{background-color:#fb2c361a}@supports (color:color-mix(in lab, red, red)){.bg-red-500\/10{background-color:color-mix(in oklab, var(--color-red-500) 10%, transparent)}}.bg-secondary{background-color:var(--secondary)}.bg-transparent{background-color:#0000}.bg-violet-500{background-color:var(--color-violet-500)}.bg-violet-500\/80{background-color:#8d54ffcc}@supports (color:color-mix(in lab, red, red)){.bg-violet-500\/80{background-color:color-mix(in oklab, var(--color-violet-500) 80%, transparent)}}.bg-violet-600{background-color:var(--color-violet-600)}.bg-white{background-color:var(--color-white)}.bg-white\/60{background-color:#fff9}@supports (color:color-mix(in lab, red, red)){.bg-white\/60{background-color:color-mix(in oklab, var(--color-white) 60%, transparent)}}.bg-white\/90{background-color:#ffffffe6}@supports (color:color-mix(in lab, red, red)){.bg-white\/90{background-color:color-mix(in oklab, var(--color-white) 90%, transparent)}}.bg-yellow-100{background-color:var(--color-yellow-100)}.fill-current{fill:currentColor}.object-cover{object-fit:cover}.p-0{padding:0}.p-1{padding:var(--spacing)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.p-\[1px\]{padding:1px}.px-1{padding-inline:var(--spacing)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-8{padding-inline:calc(var(--spacing) * 8)}.py-0{padding-block:0}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.pt-0{padding-top:0}.pt-1{padding-top:var(--spacing)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-8{padding-top:calc(var(--spacing) * 8)}.pt-9{padding-top:calc(var(--spacing) * 9)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-4{padding-right:calc(var(--spacing) * 4)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pl-2{padding-left:calc(var(--spacing) * 2)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-5{padding-left:calc(var(--spacing) * 5)}.pl-8{padding-left:calc(var(--spacing) * 8)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[10px\]{font-size:10px}.leading-3{--tw-leading:calc(var(--spacing) * 3);line-height:calc(var(--spacing) * 3)}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-\[\#643FB2\]{color:#643fb2}.text-amber-500{color:var(--color-amber-500)}.text-amber-600{color:var(--color-amber-600)}.text-amber-600\/80{color:#dd7400cc}@supports (color:color-mix(in lab, red, red)){.text-amber-600\/80{color:color-mix(in oklab, var(--color-amber-600) 80%, transparent)}}.text-amber-700{color:var(--color-amber-700)}.text-amber-800{color:var(--color-amber-800)}.text-amber-900{color:var(--color-amber-900)}.text-blue-500{color:var(--color-blue-500)}.text-blue-500\/80{color:#3080ffcc}@supports (color:color-mix(in lab, red, red)){.text-blue-500\/80{color:color-mix(in oklab, var(--color-blue-500) 80%, transparent)}}.text-blue-600{color:var(--color-blue-600)}.text-blue-700{color:var(--color-blue-700)}.text-blue-800{color:var(--color-blue-800)}.text-blue-900{color:var(--color-blue-900)}.text-card-foreground{color:var(--card-foreground)}.text-current{color:currentColor}.text-destructive,.text-destructive\/70{color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.text-destructive\/70{color:color-mix(in oklab, var(--destructive) 70%, transparent)}}.text-destructive\/90{color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.text-destructive\/90{color:color-mix(in oklab, var(--destructive) 90%, transparent)}}.text-emerald-600{color:var(--color-emerald-600)}.text-foreground{color:var(--foreground)}.text-gray-300{color:var(--color-gray-300)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-900{color:var(--color-gray-900)}.text-green-500{color:var(--color-green-500)}.text-green-600{color:var(--color-green-600)}.text-green-700{color:var(--color-green-700)}.text-green-800{color:var(--color-green-800)}.text-green-900{color:var(--color-green-900)}.text-muted-foreground,.text-muted-foreground\/60{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/60{color:color-mix(in oklab, var(--muted-foreground) 60%, transparent)}}.text-muted-foreground\/70{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/70{color:color-mix(in oklab, var(--muted-foreground) 70%, transparent)}}.text-muted-foreground\/80{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/80{color:color-mix(in oklab, var(--muted-foreground) 80%, transparent)}}.text-orange-500{color:var(--color-orange-500)}.text-orange-600{color:var(--color-orange-600)}.text-orange-700{color:var(--color-orange-700)}.text-orange-800{color:var(--color-orange-800)}.text-orange-900{color:var(--color-orange-900)}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-purple-500{color:var(--color-purple-500)}.text-purple-600{color:var(--color-purple-600)}.text-purple-800{color:var(--color-purple-800)}.text-red-400{color:var(--color-red-400)}.text-red-500{color:var(--color-red-500)}.text-red-600{color:var(--color-red-600)}.text-red-700{color:var(--color-red-700)}.text-red-800{color:var(--color-red-800)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-violet-600{color:var(--color-violet-600)}.text-white{color:var(--color-white)}.text-yellow-600{color:var(--color-yellow-600)}.text-yellow-700{color:var(--color-yellow-700)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-0{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[\#643FB2\]\/20{--tw-shadow-color:#643fb233}@supports (color:color-mix(in lab, red, red)){.shadow-\[\#643FB2\]\/20{--tw-shadow-color:color-mix(in oklab, oklab(47.4316% .069152 -.159147/.2) var(--tw-shadow-alpha), transparent)}}.shadow-green-500\/20{--tw-shadow-color:#00c75833}@supports (color:color-mix(in lab, red, red)){.shadow-green-500\/20{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-green-500) 20%, transparent) var(--tw-shadow-alpha), transparent)}}.shadow-orange-500\/20{--tw-shadow-color:#fe6e0033}@supports (color:color-mix(in lab, red, red)){.shadow-orange-500\/20{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-orange-500) 20%, transparent) var(--tw-shadow-alpha), transparent)}}.shadow-primary\/25{--tw-shadow-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.shadow-primary\/25{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--primary) 25%, transparent) var(--tw-shadow-alpha), transparent)}}.shadow-red-500\/20{--tw-shadow-color:#fb2c3633}@supports (color:color-mix(in lab, red, red)){.shadow-red-500\/20{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-red-500) 20%, transparent) var(--tw-shadow-alpha), transparent)}}.ring-blue-500{--tw-ring-color:var(--color-blue-500)}.ring-blue-500\/20{--tw-ring-color:#3080ff33}@supports (color:color-mix(in lab, red, red)){.ring-blue-500\/20{--tw-ring-color:color-mix(in oklab, var(--color-blue-500) 20%, transparent)}}.ring-offset-2{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.ring-offset-background{--tw-ring-offset-color:var(--background)}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.drop-shadow-lg{--tw-drop-shadow-size:drop-shadow(0 4px 4px var(--tw-drop-shadow-color,#00000026));--tw-drop-shadow:drop-shadow(var(--drop-shadow-lg));filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[color\,box-shadow\]{transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-none{transition-property:none}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.fade-in-0{--tw-enter-opacity:0}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.zoom-in-95{--tw-enter-scale:.95}.\[animation-delay\:-0\.3s\]{animation-delay:-.3s}.\[animation-delay\:-0\.15s\]{animation-delay:-.15s}.fade-in{--tw-enter-opacity:0}.running{animation-play-state:running}.slide-in-from-bottom-2{--tw-enter-translate-y:calc(2*var(--spacing))}.group-open\:rotate-90:is(:where(.group):is([open],:popover-open,:open) *){rotate:90deg}.group-open\:rotate-180:is(:where(.group):is([open],:popover-open,:open) *){rotate:180deg}.group-open\/audio-autostop\:rotate-90:is(:where(.group\/audio-autostop):is([open],:popover-open,:open) *),.group-open\/audio-input\:rotate-90:is(:where(.group\/audio-input):is([open],:popover-open,:open) *),.group-open\/audio-output\:rotate-90:is(:where(.group\/audio-output):is([open],:popover-open,:open) *){rotate:90deg}.group-focus-within\:opacity-100:is(:where(.group):focus-within *){opacity:1}@media (hover:hover){.group-hover\:bg-primary:is(:where(.group):hover *){background-color:var(--primary)}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.group-hover\:shadow-md:is(:where(.group):hover *){--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-hover\:shadow-primary\/20:is(:where(.group):hover *){--tw-shadow-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.group-hover\:shadow-primary\/20:is(:where(.group):hover *){--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--primary) 20%, transparent) var(--tw-shadow-alpha), transparent)}}}.group-active\:opacity-100:is(:where(.group):active *){opacity:1}.group-data-\[disabled\=true\]\:pointer-events-none:is(:where(.group)[data-disabled=true] *){pointer-events:none}.group-data-\[disabled\=true\]\:opacity-50:is(:where(.group)[data-disabled=true] *){opacity:.5}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.selection\:bg-primary ::selection{background-color:var(--primary)}.selection\:bg-primary::selection{background-color:var(--primary)}.selection\:text-primary-foreground ::selection{color:var(--primary-foreground)}.selection\:text-primary-foreground::selection{color:var(--primary-foreground)}.file\:inline-flex::file-selector-button{display:inline-flex}.file\:h-7::file-selector-button{height:calc(var(--spacing) * 7)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:var(--foreground)}.placeholder\:text-muted-foreground::placeholder{color:var(--muted-foreground)}.first\:mt-0:first-child{margin-top:0}.last\:border-0:last-child{border-style:var(--tw-border-style);border-width:0}.last\:border-r-0:last-child{border-right-style:var(--tw-border-style);border-right-width:0}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.focus-within\:ring-2:focus-within{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-within\:ring-violet-500:focus-within{--tw-ring-color:var(--color-violet-500)}@media (hover:hover){.hover\:scale-y-\[1\.15\]:hover{--tw-scale-y:1.15;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:border-gray-300:hover{border-color:var(--color-gray-300)}.hover\:border-muted-foreground\/30:hover{border-color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.hover\:border-muted-foreground\/30:hover{border-color:color-mix(in oklab, var(--muted-foreground) 30%, transparent)}}.hover\:bg-accent:hover,.hover\:bg-accent\/50:hover{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-accent\/50:hover{background-color:color-mix(in oklab, var(--accent) 50%, transparent)}}.hover\:bg-amber-100:hover{background-color:var(--color-amber-100)}.hover\:bg-blue-700:hover{background-color:var(--color-blue-700)}.hover\:bg-destructive\/80:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/80:hover{background-color:color-mix(in oklab, var(--destructive) 80%, transparent)}}.hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab, var(--destructive) 90%, transparent)}}.hover\:bg-muted:hover,.hover\:bg-muted\/30:hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-muted\/30:hover{background-color:color-mix(in oklab, var(--muted) 30%, transparent)}}.hover\:bg-muted\/50:hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-muted\/50:hover{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.hover\:bg-muted\/70:hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-muted\/70:hover{background-color:color-mix(in oklab, var(--muted) 70%, transparent)}}.hover\:bg-orange-100:hover{background-color:var(--color-orange-100)}.hover\:bg-primary\/20:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/20:hover{background-color:color-mix(in oklab, var(--primary) 20%, transparent)}}.hover\:bg-primary\/80:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/80:hover{background-color:color-mix(in oklab, var(--primary) 80%, transparent)}}.hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab, var(--primary) 90%, transparent)}}.hover\:bg-red-50:hover{background-color:var(--color-red-50)}.hover\:bg-secondary\/80:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab, var(--secondary) 80%, transparent)}}.hover\:bg-violet-700:hover{background-color:var(--color-violet-700)}.hover\:bg-white:hover{background-color:var(--color-white)}.hover\:text-accent-foreground:hover{color:var(--accent-foreground)}.hover\:text-destructive\/80:hover{color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\:text-destructive\/80:hover{color:color-mix(in oklab, var(--destructive) 80%, transparent)}}.hover\:text-foreground:hover{color:var(--foreground)}.hover\:text-orange-900:hover{color:var(--color-orange-900)}.hover\:text-primary:hover{color:var(--primary)}.hover\:text-red-600:hover{color:var(--color-red-600)}.hover\:text-violet-700:hover{color:var(--color-violet-700)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-70:hover{opacity:.7}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.hover\:brightness-110:hover{--tw-brightness:brightness(110%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}.focus\:bg-accent:focus{background-color:var(--accent)}.focus\:text-accent-foreground:focus{color:var(--accent-foreground)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus\:ring-ring:focus{--tw-ring-color:var(--ring)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\:ring-1:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.focus-visible\:ring-ring:focus-visible,.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:ring-offset-background:focus-visible{--tw-ring-offset-color:var(--background)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-default:disabled{cursor:default}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-\[\>svg\]\:px-2\.5:has(>svg){padding-inline:calc(var(--spacing) * 2.5)}.has-\[\>svg\]\:px-3:has(>svg){padding-inline:calc(var(--spacing) * 3)}.has-\[\>svg\]\:px-4:has(>svg){padding-inline:calc(var(--spacing) * 4)}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[inset\]\:pl-8[data-inset]{padding-left:calc(var(--spacing) * 8)}.data-\[placeholder\]\:text-muted-foreground[data-placeholder]{color:var(--muted-foreground)}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}.data-\[size\=default\]\:h-9[data-size=default]{height:calc(var(--spacing) * 9)}.data-\[size\=sm\]\:h-8[data-size=sm]{height:calc(var(--spacing) * 8)}:is(.\*\:data-\[slot\=select-value\]\:line-clamp-1>*)[data-slot=select-value]{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:is(.\*\:data-\[slot\=select-value\]\:flex>*)[data-slot=select-value]{display:flex}:is(.\*\:data-\[slot\=select-value\]\:items-center>*)[data-slot=select-value]{align-items:center}:is(.\*\:data-\[slot\=select-value\]\:gap-2>*)[data-slot=select-value]{gap:calc(var(--spacing) * 2)}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:var(--background)}.data-\[state\=active\]\:text-foreground[data-state=active]{color:var(--foreground)}.data-\[state\=active\]\:shadow[data-state=active]{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.data-\[state\=checked\]\:translate-x-4[data-state=checked]{--tw-translate-x:calc(var(--spacing) * 4);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[state\=checked\]\:border-primary[data-state=checked]{border-color:var(--primary)}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:var(--primary)}.data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{color:var(--primary-foreground)}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=open\]\:animate-in[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:var(--accent)}.data-\[state\=open\]\:text-accent-foreground[data-state=open]{color:var(--accent-foreground)}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{background-color:var(--input)}.data-\[variant\=destructive\]\:text-destructive[data-variant=destructive]{color:var(--destructive)}.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:color-mix(in oklab, var(--destructive) 10%, transparent)}}.data-\[variant\=destructive\]\:focus\:text-destructive[data-variant=destructive]:focus{color:var(--destructive)}@media (width>=40rem){.sm\:w-64{width:calc(var(--spacing) * 64)}.sm\:max-w-lg{max-width:var(--container-lg)}.sm\:flex-none{flex:none}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}}@media (width>=48rem){.md\:col-span-2{grid-column:span 2/span 2}.md\:col-start-2{grid-column-start:2}.md\:inline{display:inline}.md\:max-w-2xl{max-width:var(--container-2xl)}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}@media (width>=64rem){.lg\:col-span-3{grid-column:span 3/span 3}.lg\:max-w-4xl{max-width:var(--container-4xl)}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:items-center{align-items:center}.lg\:justify-between{justify-content:space-between}}@media (width>=80rem){.xl\:col-span-2{grid-column:span 2/span 2}.xl\:col-span-4{grid-column:span 4/span 4}.xl\:max-w-5xl{max-width:var(--container-5xl)}.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.dark\:scale-0:is(.dark *){--tw-scale-x:0%;--tw-scale-y:0%;--tw-scale-z:0%;scale:var(--tw-scale-x) var(--tw-scale-y)}.dark\:scale-100:is(.dark *){--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.dark\:-rotate-90:is(.dark *){rotate:-90deg}.dark\:rotate-0:is(.dark *){rotate:0deg}.dark\:\!border-gray-500:is(.dark *){border-color:var(--color-gray-500)!important}.dark\:\!border-gray-600:is(.dark *){border-color:var(--color-gray-600)!important}.dark\:border-\[\#8B5CF6\]:is(.dark *){border-color:#8b5cf6}.dark\:border-\[\#8B5CF6\]\/20:is(.dark *){border-color:oklab(60.5631% .0845415 -.201932/.2)}.dark\:border-\[\#8B5CF6\]\/30:is(.dark *){border-color:oklab(60.5631% .0845415 -.201932/.3)}.dark\:border-amber-800:is(.dark *){border-color:var(--color-amber-800)}.dark\:border-amber-900:is(.dark *){border-color:var(--color-amber-900)}.dark\:border-blue-400:is(.dark *){border-color:var(--color-blue-400)}.dark\:border-blue-500:is(.dark *){border-color:var(--color-blue-500)}.dark\:border-blue-700:is(.dark *){border-color:var(--color-blue-700)}.dark\:border-blue-800:is(.dark *){border-color:var(--color-blue-800)}.dark\:border-gray-500:is(.dark *){border-color:var(--color-gray-500)}.dark\:border-gray-600:is(.dark *){border-color:var(--color-gray-600)}.dark\:border-gray-700:is(.dark *){border-color:var(--color-gray-700)}.dark\:border-green-400:is(.dark *){border-color:var(--color-green-400)}.dark\:border-green-800:is(.dark *){border-color:var(--color-green-800)}.dark\:border-input:is(.dark *){border-color:var(--input)}.dark\:border-orange-400:is(.dark *){border-color:var(--color-orange-400)}.dark\:border-orange-700:is(.dark *){border-color:var(--color-orange-700)}.dark\:border-orange-800:is(.dark *){border-color:var(--color-orange-800)}.dark\:border-red-400:is(.dark *){border-color:var(--color-red-400)}.dark\:border-red-800:is(.dark *){border-color:var(--color-red-800)}.dark\:\!bg-gray-800\/90:is(.dark *){background-color:#1e2939e6!important}@supports (color:color-mix(in lab, red, red)){.dark\:\!bg-gray-800\/90:is(.dark *){background-color:color-mix(in oklab, var(--color-gray-800) 90%, transparent)!important}}.dark\:bg-\[\#8B5CF6\]:is(.dark *){background-color:#8b5cf6}.dark\:bg-\[\#8B5CF6\]\/10:is(.dark *){background-color:oklab(60.5631% .0845415 -.201932/.1)}.dark\:bg-amber-600:is(.dark *){background-color:var(--color-amber-600)}.dark\:bg-amber-950\/20:is(.dark *){background-color:#46190133}@supports (color:color-mix(in lab, red, red)){.dark\:bg-amber-950\/20:is(.dark *){background-color:color-mix(in oklab, var(--color-amber-950) 20%, transparent)}}.dark\:bg-amber-950\/50:is(.dark *){background-color:#46190180}@supports (color:color-mix(in lab, red, red)){.dark\:bg-amber-950\/50:is(.dark *){background-color:color-mix(in oklab, var(--color-amber-950) 50%, transparent)}}.dark\:bg-blue-500\/10:is(.dark *){background-color:#3080ff1a}@supports (color:color-mix(in lab, red, red)){.dark\:bg-blue-500\/10:is(.dark *){background-color:color-mix(in oklab, var(--color-blue-500) 10%, transparent)}}.dark\:bg-blue-600:is(.dark *){background-color:var(--color-blue-600)}.dark\:bg-blue-900:is(.dark *){background-color:var(--color-blue-900)}.dark\:bg-blue-900\/20:is(.dark *){background-color:#1c398e33}@supports (color:color-mix(in lab, red, red)){.dark\:bg-blue-900\/20:is(.dark *){background-color:color-mix(in oklab, var(--color-blue-900) 20%, transparent)}}.dark\:bg-blue-950\/20:is(.dark *){background-color:#16245633}@supports (color:color-mix(in lab, red, red)){.dark\:bg-blue-950\/20:is(.dark *){background-color:color-mix(in oklab, var(--color-blue-950) 20%, transparent)}}.dark\:bg-blue-950\/40:is(.dark *){background-color:#16245666}@supports (color:color-mix(in lab, red, red)){.dark\:bg-blue-950\/40:is(.dark *){background-color:color-mix(in oklab, var(--color-blue-950) 40%, transparent)}}.dark\:bg-blue-950\/50:is(.dark *){background-color:#16245680}@supports (color:color-mix(in lab, red, red)){.dark\:bg-blue-950\/50:is(.dark *){background-color:color-mix(in oklab, var(--color-blue-950) 50%, transparent)}}.dark\:bg-blue-950\/95:is(.dark *){background-color:#162456f2}@supports (color:color-mix(in lab, red, red)){.dark\:bg-blue-950\/95:is(.dark *){background-color:color-mix(in oklab, var(--color-blue-950) 95%, transparent)}}.dark\:bg-card:is(.dark *){background-color:var(--card)}.dark\:bg-destructive\/60:is(.dark *){background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-destructive\/60:is(.dark *){background-color:color-mix(in oklab, var(--destructive) 60%, transparent)}}.dark\:bg-emerald-600:is(.dark *){background-color:var(--color-emerald-600)}.dark\:bg-foreground\/10:is(.dark *){background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-foreground\/10:is(.dark *){background-color:color-mix(in oklab, var(--foreground) 10%, transparent)}}.dark\:bg-gray-500:is(.dark *){background-color:var(--color-gray-500)}.dark\:bg-gray-800:is(.dark *){background-color:var(--color-gray-800)}.dark\:bg-gray-800\/90:is(.dark *){background-color:#1e2939e6}@supports (color:color-mix(in lab, red, red)){.dark\:bg-gray-800\/90:is(.dark *){background-color:color-mix(in oklab, var(--color-gray-800) 90%, transparent)}}.dark\:bg-gray-900:is(.dark *){background-color:var(--color-gray-900)}.dark\:bg-gray-900\/30:is(.dark *){background-color:#1018284d}@supports (color:color-mix(in lab, red, red)){.dark\:bg-gray-900\/30:is(.dark *){background-color:color-mix(in oklab, var(--color-gray-900) 30%, transparent)}}.dark\:bg-green-400:is(.dark *){background-color:var(--color-green-400)}.dark\:bg-green-500\/10:is(.dark *){background-color:#00c7581a}@supports (color:color-mix(in lab, red, red)){.dark\:bg-green-500\/10:is(.dark *){background-color:color-mix(in oklab, var(--color-green-500) 10%, transparent)}}.dark\:bg-green-900:is(.dark *){background-color:var(--color-green-900)}.dark\:bg-green-950:is(.dark *){background-color:var(--color-green-950)}.dark\:bg-green-950\/20:is(.dark *){background-color:#032e1533}@supports (color:color-mix(in lab, red, red)){.dark\:bg-green-950\/20:is(.dark *){background-color:color-mix(in oklab, var(--color-green-950) 20%, transparent)}}.dark\:bg-green-950\/50:is(.dark *){background-color:#032e1580}@supports (color:color-mix(in lab, red, red)){.dark\:bg-green-950\/50:is(.dark *){background-color:color-mix(in oklab, var(--color-green-950) 50%, transparent)}}.dark\:bg-input\/30:is(.dark *){background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-input\/30:is(.dark *){background-color:color-mix(in oklab, var(--input) 30%, transparent)}}.dark\:bg-orange-400:is(.dark *){background-color:var(--color-orange-400)}.dark\:bg-orange-500\/10:is(.dark *){background-color:#fe6e001a}@supports (color:color-mix(in lab, red, red)){.dark\:bg-orange-500\/10:is(.dark *){background-color:color-mix(in oklab, var(--color-orange-500) 10%, transparent)}}.dark\:bg-orange-600:is(.dark *){background-color:var(--color-orange-600)}.dark\:bg-orange-900:is(.dark *){background-color:var(--color-orange-900)}.dark\:bg-orange-950:is(.dark *){background-color:var(--color-orange-950)}.dark\:bg-orange-950\/20:is(.dark *){background-color:#44130633}@supports (color:color-mix(in lab, red, red)){.dark\:bg-orange-950\/20:is(.dark *){background-color:color-mix(in oklab, var(--color-orange-950) 20%, transparent)}}.dark\:bg-orange-950\/30:is(.dark *){background-color:#4413064d}@supports (color:color-mix(in lab, red, red)){.dark\:bg-orange-950\/30:is(.dark *){background-color:color-mix(in oklab, var(--color-orange-950) 30%, transparent)}}.dark\:bg-orange-950\/50:is(.dark *){background-color:#44130680}@supports (color:color-mix(in lab, red, red)){.dark\:bg-orange-950\/50:is(.dark *){background-color:color-mix(in oklab, var(--color-orange-950) 50%, transparent)}}.dark\:bg-purple-600:is(.dark *){background-color:var(--color-purple-600)}.dark\:bg-purple-900:is(.dark *){background-color:var(--color-purple-900)}.dark\:bg-red-400:is(.dark *){background-color:var(--color-red-400)}.dark\:bg-red-900:is(.dark *){background-color:var(--color-red-900)}.dark\:bg-red-950:is(.dark *){background-color:var(--color-red-950)}.dark\:bg-red-950\/20:is(.dark *){background-color:#46080933}@supports (color:color-mix(in lab, red, red)){.dark\:bg-red-950\/20:is(.dark *){background-color:color-mix(in oklab, var(--color-red-950) 20%, transparent)}}.dark\:bg-violet-400:is(.dark *){background-color:var(--color-violet-400)}.dark\:text-\[\#8B5CF6\]:is(.dark *){color:#8b5cf6}.dark\:text-amber-100:is(.dark *){color:var(--color-amber-100)}.dark\:text-amber-200:is(.dark *){color:var(--color-amber-200)}.dark\:text-amber-300:is(.dark *){color:var(--color-amber-300)}.dark\:text-amber-400:is(.dark *){color:var(--color-amber-400)}.dark\:text-amber-400\/80:is(.dark *){color:#fcbb00cc}@supports (color:color-mix(in lab, red, red)){.dark\:text-amber-400\/80:is(.dark *){color:color-mix(in oklab, var(--color-amber-400) 80%, transparent)}}.dark\:text-amber-500:is(.dark *){color:var(--color-amber-500)}.dark\:text-blue-100:is(.dark *){color:var(--color-blue-100)}.dark\:text-blue-200:is(.dark *){color:var(--color-blue-200)}.dark\:text-blue-300:is(.dark *){color:var(--color-blue-300)}.dark\:text-blue-400:is(.dark *){color:var(--color-blue-400)}.dark\:text-blue-400\/70:is(.dark *){color:#54a2ffb3}@supports (color:color-mix(in lab, red, red)){.dark\:text-blue-400\/70:is(.dark *){color:color-mix(in oklab, var(--color-blue-400) 70%, transparent)}}.dark\:text-blue-500:is(.dark *){color:var(--color-blue-500)}.dark\:text-emerald-400:is(.dark *){color:var(--color-emerald-400)}.dark\:text-gray-100:is(.dark *){color:var(--color-gray-100)}.dark\:text-gray-300:is(.dark *){color:var(--color-gray-300)}.dark\:text-gray-400:is(.dark *){color:var(--color-gray-400)}.dark\:text-green-100:is(.dark *){color:var(--color-green-100)}.dark\:text-green-200:is(.dark *){color:var(--color-green-200)}.dark\:text-green-300:is(.dark *){color:var(--color-green-300)}.dark\:text-green-400:is(.dark *){color:var(--color-green-400)}.dark\:text-orange-100:is(.dark *){color:var(--color-orange-100)}.dark\:text-orange-200:is(.dark *){color:var(--color-orange-200)}.dark\:text-orange-300:is(.dark *){color:var(--color-orange-300)}.dark\:text-orange-400:is(.dark *){color:var(--color-orange-400)}.dark\:text-purple-200:is(.dark *){color:var(--color-purple-200)}.dark\:text-purple-400:is(.dark *){color:var(--color-purple-400)}.dark\:text-red-200:is(.dark *){color:var(--color-red-200)}.dark\:text-red-400:is(.dark *){color:var(--color-red-400)}.dark\:text-yellow-400:is(.dark *){color:var(--color-yellow-400)}.dark\:opacity-30:is(.dark *){opacity:.3}@media (hover:hover){.dark\:hover\:border-gray-600:is(.dark *):hover{border-color:var(--color-gray-600)}.dark\:hover\:bg-accent\/50:is(.dark *):hover{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-accent\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--accent) 50%, transparent)}}.dark\:hover\:bg-amber-950\/30:is(.dark *):hover{background-color:#4619014d}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-amber-950\/30:is(.dark *):hover{background-color:color-mix(in oklab, var(--color-amber-950) 30%, transparent)}}.dark\:hover\:bg-gray-800:is(.dark *):hover{background-color:var(--color-gray-800)}.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--input) 50%, transparent)}}.dark\:hover\:bg-orange-950\/40:is(.dark *):hover{background-color:#44130666}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-orange-950\/40:is(.dark *):hover{background-color:color-mix(in oklab, var(--color-orange-950) 40%, transparent)}}.dark\:hover\:bg-red-900\/20:is(.dark *):hover{background-color:#82181a33}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-red-900\/20:is(.dark *):hover{background-color:color-mix(in oklab, var(--color-red-900) 20%, transparent)}}.dark\:hover\:text-orange-200:is(.dark *):hover{color:var(--color-orange-200)}}.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\:data-\[state\=checked\]\:bg-primary:is(.dark *)[data-state=checked]{background-color:var(--primary)}.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20:is(.dark *)[data-variant=destructive]:focus{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20:is(.dark *)[data-variant=destructive]:focus{background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.\[\&_p\]\:leading-relaxed p{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_svg\:not\(\[class\*\=\'text-\'\]\)\]\:text-muted-foreground svg:not([class*=text-]){color:var(--muted-foreground)}.\[\&\:\:-webkit-details-marker\]\:hidden::-webkit-details-marker{display:none}.\[\.border-b\]\:pb-6.border-b{padding-bottom:calc(var(--spacing) * 6)}.\[\.border-t\]\:pt-6.border-t{padding-top:calc(var(--spacing) * 6)}:is(.\*\:\[span\]\:last\:flex>*):is(span):last-child{display:flex}:is(.\*\:\[span\]\:last\:items-center>*):is(span):last-child{align-items:center}:is(.\*\:\[span\]\:last\:gap-2>*):is(span):last-child{gap:calc(var(--spacing) * 2)}:is(.data-\[variant\=destructive\]\:\*\:\[svg\]\:\!text-destructive[data-variant=destructive]>*):is(svg){color:var(--destructive)!important}.\[\&\>svg\]\:absolute>svg{position:absolute}.\[\&\>svg\]\:top-4>svg{top:calc(var(--spacing) * 4)}.\[\&\>svg\]\:left-4>svg{left:calc(var(--spacing) * 4)}.\[\&\>svg\]\:text-foreground>svg{color:var(--foreground)}.\[\&\>svg\+div\]\:translate-y-\[-3px\]>svg+div{--tw-translate-y:-3px;translate:var(--tw-translate-x) var(--tw-translate-y)}.\[\&\>svg\~\*\]\:pl-7>svg~*{padding-left:calc(var(--spacing) * 7)}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}:root{--radius:.625rem;--background:oklch(100% 0 0);--foreground:oklch(14.5% 0 0);--card:oklch(100% 0 0);--card-foreground:oklch(14.5% 0 0);--popover:oklch(100% 0 0);--popover-foreground:oklch(14.5% 0 0);--primary:oklch(48% .18 290);--primary-foreground:oklch(98.5% 0 0);--secondary:oklch(97% 0 0);--secondary-foreground:oklch(20.5% 0 0);--muted:oklch(97% 0 0);--muted-foreground:oklch(55.6% 0 0);--accent:oklch(97% 0 0);--accent-foreground:oklch(20.5% 0 0);--destructive:oklch(57.7% .245 27.325);--border:oklch(92.2% 0 0);--input:oklch(92.2% 0 0);--ring:oklch(70.8% 0 0);--chart-1:oklch(64.6% .222 41.116);--chart-2:oklch(60% .118 184.704);--chart-3:oklch(39.8% .07 227.392);--chart-4:oklch(82.8% .189 84.429);--chart-5:oklch(76.9% .188 70.08);--sidebar:oklch(98.5% 0 0);--sidebar-foreground:oklch(14.5% 0 0);--sidebar-primary:oklch(20.5% 0 0);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(97% 0 0);--sidebar-accent-foreground:oklch(20.5% 0 0);--sidebar-border:oklch(92.2% 0 0);--sidebar-ring:oklch(70.8% 0 0)}.dark{--background:oklch(14.5% 0 0);--foreground:oklch(98.5% 0 0);--card:oklch(20.5% 0 0);--card-foreground:oklch(98.5% 0 0);--popover:oklch(20.5% 0 0);--popover-foreground:oklch(98.5% 0 0);--primary:oklch(62% .2 290);--primary-foreground:oklch(98.5% 0 0);--secondary:oklch(26.9% 0 0);--secondary-foreground:oklch(98.5% 0 0);--muted:oklch(26.9% 0 0);--muted-foreground:oklch(70.8% 0 0);--accent:oklch(26.9% 0 0);--accent-foreground:oklch(98.5% 0 0);--destructive:oklch(70.4% .191 22.216);--border:oklch(100% 0 0/.1);--input:oklch(100% 0 0/.15);--ring:oklch(55.6% 0 0);--chart-1:oklch(48.8% .243 264.376);--chart-2:oklch(69.6% .17 162.48);--chart-3:oklch(76.9% .188 70.08);--chart-4:oklch(62.7% .265 303.9);--chart-5:oklch(64.5% .246 16.439);--sidebar:oklch(20.5% 0 0);--sidebar-foreground:oklch(98.5% 0 0);--sidebar-primary:oklch(48.8% .243 264.376);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(26.9% 0 0);--sidebar-accent-foreground:oklch(98.5% 0 0);--sidebar-border:oklch(100% 0 0/.1);--sidebar-ring:oklch(55.6% 0 0)}.workflow-chat-view .border-green-200{border-color:var(--color-emerald-200)}.workflow-chat-view .bg-green-50{background-color:var(--color-emerald-50)}.workflow-chat-view .bg-green-100{background-color:var(--color-emerald-100)}.workflow-chat-view .text-green-600{color:var(--color-emerald-600)}.workflow-chat-view .text-green-700{color:var(--color-emerald-700)}.workflow-chat-view .text-green-800{color:var(--color-emerald-800)}.highlight-attention{animation:1s ease-out highlight-flash}@keyframes highlight-flash{0%{background-color:#fb923c4d;transform:scale(1.02)}to{background-color:#0000;transform:scale(1)}}.hil-waiting-glow{animation:2s infinite pulse-glow;box-shadow:0 0 #fb923c66,inset 0 0 0 1px #fb923c33}@keyframes pulse-glow{0%,to{box-shadow:0 0 #fb923c66,inset 0 0 0 1px #fb923c33}50%{box-shadow:0 0 20px 5px #fb923c33,inset 0 0 0 2px #fb923c4d}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}.react-flow{--xy-edge-stroke-default:#b1b1b7;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#555;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#ffffff80;--xy-minimap-background-color-default:#fff;--xy-minimap-mask-background-color-default:#f0f0f099;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#e2e2e2;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:transparent;--xy-background-pattern-dots-color-default:#91919a;--xy-background-pattern-lines-color-default:#eee;--xy-background-pattern-cross-color-default:#e2e2e2;background-color:var(--xy-background-color,var(--xy-background-color-default));--xy-node-color-default:inherit;--xy-node-border-default:1px solid #1a192b;--xy-node-background-color-default:#fff;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #00000014;--xy-node-boxshadow-selected-default:0 0 0 .5px #1a192b;--xy-node-border-radius-default:3px;--xy-handle-background-color-default:#1a192b;--xy-handle-border-color-default:#fff;--xy-selection-background-color-default:#0059dc14;--xy-selection-border-default:1px dotted #0059dccc;--xy-controls-button-background-color-default:#fefefe;--xy-controls-button-background-color-hover-default:#f4f4f4;--xy-controls-button-color-default:inherit;--xy-controls-button-color-hover-default:inherit;--xy-controls-button-border-color-default:#eee;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#fff;--xy-edge-label-color-default:inherit;--xy-resize-background-color-default:#3367d9;direction:ltr}.react-flow.dark{--xy-edge-stroke-default:#3e3e3e;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#727272;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#96969640;--xy-minimap-background-color-default:#141414;--xy-minimap-mask-background-color-default:#3c3c3c99;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#2b2b2b;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:#141414;--xy-background-pattern-dots-color-default:#555;--xy-background-pattern-lines-color-default:#333;--xy-background-pattern-cross-color-default:#333;--xy-node-color-default:#f8f8f8;--xy-node-border-default:1px solid #3c3c3c;--xy-node-background-color-default:#1e1e1e;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #ffffff14;--xy-node-boxshadow-selected-default:0 0 0 .5px #999;--xy-handle-background-color-default:#bebebe;--xy-handle-border-color-default:#1e1e1e;--xy-selection-background-color-default:#c8c8dc14;--xy-selection-border-default:1px dotted #c8c8dccc;--xy-controls-button-background-color-default:#2b2b2b;--xy-controls-button-background-color-hover-default:#3e3e3e;--xy-controls-button-color-default:#f8f8f8;--xy-controls-button-color-hover-default:#fff;--xy-controls-button-border-color-default:#5b5b5b;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#141414;--xy-edge-label-color-default:#f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props,var(--xy-background-color,var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width,var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke,var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width,var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{pointer-events:none;position:absolute;overflow:visible}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected,var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}svg.react-flow__connectionline{z-index:1001;position:absolute;overflow:visible}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;background-color:var(--xy-handle-background-color,var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color,var(--xy-handle-border-color-default));border-radius:100%;width:6px;min-width:5px;height:6px;min-height:5px;position:absolute}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:0;left:50%;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{z-index:5;margin:15px;position:absolute}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px)translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px)translateY(-50%)}.react-flow__attribution{background:var(--xy-attribution-background-color,var(--xy-attribution-background-color-default));margin:0;padding:2px 3px;font-size:10px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10px}}.react-flow__edgelabel-renderer{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__viewport-portal{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__minimap{background:var(--xy-minimap-background-color-props,var(--xy-minimap-background-color,var(--xy-minimap-background-color-default)))}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var(--xy-minimap-mask-background-color-props,var(--xy-minimap-mask-background-color,var(--xy-minimap-mask-background-color-default)));stroke:var(--xy-minimap-mask-stroke-color-props,var(--xy-minimap-mask-stroke-color,var(--xy-minimap-mask-stroke-color-default)));stroke-width:var(--xy-minimap-mask-stroke-width-props,var(--xy-minimap-mask-stroke-width,var(--xy-minimap-mask-stroke-width-default)))}.react-flow__minimap-node{fill:var(--xy-minimap-node-background-color-props,var(--xy-minimap-node-background-color,var(--xy-minimap-node-background-color-default)));stroke:var(--xy-minimap-node-stroke-color-props,var(--xy-minimap-node-stroke-color,var(--xy-minimap-node-stroke-color-default)));stroke-width:var(--xy-minimap-node-stroke-width-props,var(--xy-minimap-node-stroke-width,var(--xy-minimap-node-stroke-width-default)))}.react-flow__background-pattern.dots{fill:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-dots-color-default)))}.react-flow__background-pattern.lines{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-lines-color-default)))}.react-flow__background-pattern.cross{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-cross-color-default)))}.react-flow__controls{box-shadow:var(--xy-controls-box-shadow,var(--xy-controls-box-shadow-default));flex-direction:column;display:flex}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{background:var(--xy-controls-button-background-color,var(--xy-controls-button-background-color-default));border:none;border-bottom:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)));width:26px;height:26px;color:var(--xy-controls-button-color-props,var(--xy-controls-button-color,var(--xy-controls-button-color-default)));cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:4px;display:flex}.react-flow__controls-button svg{fill:currentColor;width:100%;max-width:12px;max-height:12px}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{border-radius:var(--xy-node-border-radius,var(--xy-node-border-radius-default));width:150px;color:var(--xy-node-color,var(--xy-node-color-default));text-align:center;border:var(--xy-node-border,var(--xy-node-border-default));background-color:var(--xy-node-background-color,var(--xy-node-background-color-default));padding:10px;font-size:12px}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover,var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected,var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color,var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color,var(--xy-selection-background-color-default));border:var(--xy-selection-border,var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var(--xy-controls-button-background-color-hover-props,var(--xy-controls-button-background-color-hover,var(--xy-controls-button-background-color-hover-default)));color:var(--xy-controls-button-color-hover-props,var(--xy-controls-button-color-hover,var(--xy-controls-button-color-hover-default)))}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)))}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border:1px solid #fff;border-radius:1px;width:5px;height:5px;translate:-50% -50%}.react-flow__resize-control.handle.left{top:50%;left:0}.react-flow__resize-control.handle.right{top:50%;left:100%}.react-flow__resize-control.handle.top{top:0;left:50%}.react-flow__resize-control.handle.bottom{top:100%;left:50%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border-style:solid;border-width:0}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;height:100%;top:0;transform:translate(-50%)}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{width:100%;height:1px;left:0;transform:translateY(-50%)}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color,var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color,var(--xy-edge-label-color-default))} diff --git a/python/packages/devui/agent_framework_devui/ui/assets/index.js b/python/packages/devui/agent_framework_devui/ui/assets/index.js index b4189b21d8f..fb979332dec 100644 --- a/python/packages/devui/agent_framework_devui/ui/assets/index.js +++ b/python/packages/devui/agent_framework_devui/ui/assets/index.js @@ -5,8 +5,8 @@ var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r= `);for(i=r=0;ri||c[r]!==l[i]){var u=` `+c[r].replace(` at new `,` at `);return e.displayName&&u.includes(``)&&(u=u.replace(``,e.displayName)),u}while(1<=r&&0<=i);break}}}finally{Ee=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:``)?Te(n):``}function Oe(e,t){switch(e.tag){case 26:case 27:case 5:return Te(e.type);case 16:return Te(`Lazy`);case 13:return e.child!==t&&t!==null?Te(`Suspense Fallback`):Te(`Suspense`);case 19:return Te(`SuspenseList`);case 0:case 15:return De(e.type,!1);case 11:return De(e.type.render,!1);case 1:return De(e.type,!0);case 31:return Te(`Activity`);case 30:return Te(`ViewTransition`);default:return``}}function ke(e){try{var t=``,n=null;do t+=Oe(e,n),n=e,e=e.return;while(e);return t}catch(e){return` Error generating stack: `+e.message+` -`+e.stack}}var Ae=Object.prototype.hasOwnProperty,je=t.unstable_scheduleCallback,Me=t.unstable_cancelCallback,Ne=t.unstable_shouldYield,Pe=t.unstable_requestPaint,Fe=t.unstable_now,Ie=t.unstable_getCurrentPriorityLevel,Le=t.unstable_ImmediatePriority,Re=t.unstable_UserBlockingPriority,ze=t.unstable_NormalPriority,Be=t.unstable_LowPriority,Ve=t.unstable_IdlePriority,He=t.log,Ue=t.unstable_setDisableYieldValue,We=null,Ge=null;function Ke(e){if(typeof He==`function`&&Ue(e),Ge&&typeof Ge.setStrictMode==`function`)try{Ge.setStrictMode(We,e)}catch{}}var qe=Math.clz32?Math.clz32:Xe,Je=Math.log,Ye=Math.LN2;function Xe(e){return e>>>=0,e===0?32:31-(Je(e)/Ye|0)|0}var Ze=256,Qe=262144,$e=4194304;function et(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&-e;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function tt(e,t,n){var r=e.pendingLanes;if(r===0)return 0;var i=0,a=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var s=r&134217727;return s===0?(s=r&~a,s===0?o===0?n||(n=r&~e,n!==0&&(i=et(n))):i=et(o):i=et(s)):(r=s&~a,r===0?(o&=s,o===0?n||(n=s&~e,n!==0&&(i=et(n))):i=et(o)):i=et(r)),i===0?0:t!==0&&t!==i&&(t&a)===0&&(a=i&-i,n=t&-t,a>=n||a===32&&n&4194048)?t:i}function nt(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function rt(e,t){t&8&&(t|=t&32);var n=e.entangledLanes;if(n!==0)for(e=e.entanglements,n&=t;0n;n++)t.push(e);return t}function ot(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function st(e,t,n,r,i,a){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var s=e.entanglements,c=e.expirationTimes,l=e.hiddenUpdates;for(n=o&~n;0=nr),ar=` `,or=!1;function sr(e,t){switch(e){case`keyup`:return er.indexOf(t.keyCode)!==-1;case`keydown`:return t.keyCode!==229;case`keypress`:case`mousedown`:case`focusout`:return!0;default:return!1}}function cr(e){return e=e.detail,typeof e==`object`&&`data`in e?e.data:null}var lr=!1;function ur(e,t){switch(e){case`compositionend`:return cr(t);case`keypress`:return t.which===32?(or=!0,ar):null;case`textInput`:return e=t.data,e===ar&&or?null:e;default:return null}}function dr(e,t){if(lr)return e===`compositionend`||!tr&&sr(e,t)?(e=Cn(),Sn=xn=bn=null,lr=!1,e):null;switch(e){case`paste`:return null;case`keypress`:if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=r}a:{for(;n;){if(n.nextSibling){n=n.nextSibling;break a}n=n.parentNode}n=void 0}n=Pr(n)}}function Ir(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Ir(e,t.parentNode):`contains`in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Lr(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=Nr(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href==`string`}catch{n=!1}if(n)e=t.contentWindow;else break;t=Nr(e.document)}return t}function Rr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t===`input`&&(e.type===`text`||e.type===`search`||e.type===`tel`||e.type===`url`||e.type===`password`)||t===`textarea`||e.contentEditable===`true`)}var zr=_n&&`documentMode`in document&&11>=document.documentMode,Br=null,Vr=null,Hr=null,Ur=!1;function Wr(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Ur||Br==null||Br!==Nr(r)||(r=Br,`selectionStart`in r&&Rr(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),Hr&&Mr(Hr,r)||(Hr=r,r=Yf(Vr,`onSelect`),0>=o,i-=o,Bi=1<<32-qe(t)+i|n<h?(g=d,d=null):g=d.sibling;var _=p(i,d,s[h],c);if(_===null){d===null&&(d=g);break}e&&d&&_.alternate===null&&t(i,d),a=o(_,a,h),u===null?l=_:u.sibling=_,u=_,d=g}if(h===s.length)return n(i,d),X&&Hi(i,h),l;if(d===null){for(;hg?(_=h,h=null):_=h.sibling;var y=p(a,h,v.value,l);if(y===null){h===null&&(h=_);break}e&&h&&y.alternate===null&&t(a,h),s=o(y,s,g),d===null?u=y:d.sibling=y,d=y,h=_}if(v.done)return n(a,h),X&&Hi(a,g),u;if(h===null){for(;!v.done;g++,v=c.next())v=f(a,v.value,l),v!==null&&(s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return X&&Hi(a,g),u}for(h=r(h);!v.done;g++,v=c.next())v=m(h,a,g,v.value,l),v!==null&&(e&&(_=v.alternate,_!==null&&h.delete(_.key===null?g:_.key)),s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return e&&h.forEach(function(e){return t(a,e)}),X&&Hi(a,g),u}function _(e,r,o,c){if(typeof o==`object`&&o&&o.type===j&&o.key===null&&o.props.ref===void 0&&(o=o.props.children),typeof o==`object`&&o){switch(o.$$typeof){case k:a:{for(var l=o.key;r!==null;){if(r.key===l){if(l=o.type,l===j){if(r.tag===7){n(e,r.sibling),c=a(r,o.props.children),Qa(c,o),c.return=e,e=c;break a}}else if(r.elementType===l||typeof l==`object`&&l&&l.$$typeof===B&&Ga(l)===r.type){n(e,r.sibling),c=a(r,o.props),Qa(c,o),c.return=e,e=c;break a}n(e,r);break}t(e,r),r=r.sibling}o.type===j?(c=Di(o.props.children,e.mode,c,o.key),Qa(c,o),c.return=e,e=c):(c=Ei(o.type,o.key,o.props,null,e.mode,c),Qa(c,o),c.return=e,e=c)}return s(e);case A:a:{for(l=o.key;r!==null;){if(r.key===l){if(r.tag===4&&r.stateNode.containerInfo===o.containerInfo&&r.stateNode.implementation===o.implementation){n(e,r.sibling),c=a(r,o.children||[]),c.return=e,e=c;break a}n(e,r);break}t(e,r),r=r.sibling}c=Ai(o,e.mode,c),c.return=e,e=c}return s(e);case B:return o=Ga(o),_(e,r,o,c)}if(se(o))return h(e,r,o,c);if(ie(o)){if(l=ie(o),typeof l!=`function`)throw Error(i(150));return o=l.call(o),g(e,r,o,c)}if(typeof o.then==`function`)return _(e,r,Za(o),c);if(o.$$typeof===F)return _(e,r,ga(e,o),c);$a(e,o)}return typeof o==`string`&&o!==``||typeof o==`number`||typeof o==`bigint`?(o=``+o,r!==null&&r.tag===6?(n(e,r.sibling),c=a(r,o),c.return=e,e=c):(n(e,r),c=Oi(o,e.mode,c),c.return=e,e=c),s(e)):n(e,r)}return function(e,t,n,r){try{Xa=0;var i=_(e,t,n,r);return Ya=null,i}catch(t){if(t===za||t===Va)throw t;var a=Si(29,t,null,e.mode);return a.lanes=r,a.return=e,a}}}var to=eo(!0),no=eo(!1),ro=!1;function io(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function ao(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function oo(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function so(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,Ju&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,t=yi(e),vi(e,null,n),t}return hi(e,r,t,n),yi(e)}function co(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,n&4194048)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,lt(e,n)}}function lo(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var i=null,a=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};a===null?i=a=o:a=a.next=o,n=n.next}while(n!==null);a===null?i=a=t:a=a.next=t}else i=a=t;n={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:a,shared:r.shared,callbacks:r.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var uo=!1;function fo(){if(uo){var e=Aa;if(e!==null)throw e}}function po(e,t,n,r){uo=!1;var i=e.updateQueue;ro=!1;var a=i.firstBaseUpdate,o=i.lastBaseUpdate,s=i.shared.pending;if(s!==null){i.shared.pending=null;var c=s,l=c.next;c.next=null,o===null?a=l:o.next=l,o=c;var u=e.alternate;u!==null&&(u=u.updateQueue,s=u.lastBaseUpdate,s!==o&&(s===null?u.firstBaseUpdate=l:s.next=l,u.lastBaseUpdate=c))}if(a!==null){var d=i.baseState;o=0,u=l=c=null,s=a;do{var f=s.lane&-536870913,p=f!==s.lane;if(p?(Zu&f)===f:(r&f)===f){f!==0&&f===ka&&(uo=!0),u!==null&&(u=u.next={lane:0,tag:s.tag,payload:s.payload,callback:null,next:null});a:{var m=e,h=s;f=t;var g=n;switch(h.tag){case 1:if(m=h.payload,typeof m==`function`){d=m.call(g,d,f);break a}d=m;break a;case 3:m.flags=m.flags&-65537|128;case 0:if(m=h.payload,f=typeof m==`function`?m.call(g,d,f):m,f==null)break a;d=D({},d,f);break a;case 2:ro=!0}}f=s.callback,f!==null&&(e.flags|=64,p&&(e.flags|=8192),p=i.callbacks,p===null?i.callbacks=[f]:p.push(f))}else p={lane:f,tag:s.tag,payload:s.payload,callback:s.callback,next:null},u===null?(l=u=p,c=d):u=u.next=p,o|=f;if(s=s.next,s===null){if(s=i.shared.pending,s===null)break;p=s,s=p.next,p.next=null,i.lastBaseUpdate=p,i.shared.pending=null}}while(1);u===null&&(c=d),i.baseState=c,i.firstBaseUpdate=l,i.lastBaseUpdate=u,a===null&&(i.shared.lanes=0),ad|=o,e.lanes=o,e.memoizedState=d}}function mo(e,t){if(typeof e!=`function`)throw Error(i(191,e));e.call(t)}function ho(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;ea?a:8;var o=U.T,s={};s.types=o===null?null:o.types,U.T=s,rc(e,!1,t,n);try{var c=i(),l=U.S;l!==null&&l(s,c),typeof c==`object`&&c&&typeof c.then==`function`?nc(e,t,Na(c,r),Ad(e)):nc(e,t,r,Ad(e))}catch(n){nc(e,t,{then:function(){},status:`rejected`,reason:n},Ad())}finally{ce.p=a,o!==null&&s.types!==null&&(o.types=s.types),U.T=o}}function Ks(){}function qs(e,t,n,r){if(e.tag!==5)throw Error(i(476));var a=Js(e).queue;Gs(e,a,t,le,n===null?Ks:function(){return Ys(e),n(r)})}function Js(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:le,baseState:le,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:is,lastRenderedState:le},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:is,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function Ys(e){var t=Js(e);t.next===null&&(t=e.alternate.memoizedState),nc(e,t.next.queue,{},Ad())}function Xs(){return ha(ch)}function Zs(){return $o().memoizedState}function Qs(){return $o().memoizedState}function $s(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=Ad();e=oo(n);var r=so(t,e,n);r!==null&&(Nd(r,t,n),co(r,t,n)),t={cache:Sa()},e.payload=t;return}t=t.return}}function ec(e,t,n){var r=Ad();n={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},ic(e)?ac(t,n):(n=gi(e,t,n,r),n!==null&&(Nd(n,e,r),oc(n,t,r)))}function tc(e,t,n){nc(e,t,n,Ad())}function nc(e,t,n,r){var i={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(ic(e))ac(t,i);else{var a=e.alternate;if(e.lanes===0&&(a===null||a.lanes===0)&&(a=t.lastRenderedReducer,a!==null))try{var o=t.lastRenderedState,s=a(o,n);if(i.hasEagerState=!0,i.eagerState=s,jr(s,o))return hi(e,t,i,0),Yu===null&&mi(),!1}catch{}if(n=gi(e,t,i,r),n!==null)return Nd(n,e,r),oc(n,t,r),!0}return!1}function rc(e,t,n,r){if(r={lane:2,revertLane:Pf(),gesture:null,action:r,hasEagerState:!1,eagerState:null,next:null},ic(e)){if(t)throw Error(i(479))}else t=gi(e,n,r,2),t!==null&&Nd(t,e,2)}function ic(e){var t=e.alternate;return e===No||t!==null&&t===No}function ac(e,t){Lo=Io=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function oc(e,t,n){if(n&4194048){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,lt(e,n)}}var sc={readContext:ha,use:ns,useCallback:Uo,useContext:Uo,useEffect:Uo,useImperativeHandle:Uo,useLayoutEffect:Uo,useInsertionEffect:Uo,useMemo:Uo,useReducer:Uo,useRef:Uo,useState:Uo,useDebugValue:Uo,useDeferredValue:Uo,useTransition:Uo,useSyncExternalStore:Uo,useId:Uo,useHostTransitionStatus:Uo,useFormState:Uo,useActionState:Uo,useOptimistic:Uo,useMemoCache:Uo,useCacheRefresh:Uo,useEffectEvent:Uo},cc={readContext:ha,use:ns,useCallback:function(e,t){return Qo().memoizedState=[e,t===void 0?null:t],e},useContext:ha,useEffect:Ms,useImperativeHandle:function(e,t,n){n=n==null?null:n.concat([e]),As(4194308,4,Rs.bind(null,t,e),n)},useLayoutEffect:function(e,t){return As(4194308,4,e,t)},useInsertionEffect:function(e,t){As(4,2,e,t)},useMemo:function(e,t){var n=Qo();t=t===void 0?null:t;var r=e();if(Ro){Ke(!0);try{e()}finally{Ke(!1)}}return n.memoizedState=[r,t],r},useReducer:function(e,t,n){var r=Qo();if(n!==void 0){var i=n(t);if(Ro){Ke(!0);try{n(t)}finally{Ke(!1)}}}else i=t;return r.memoizedState=r.baseState=i,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:i},r.queue=e,e=e.dispatch=ec.bind(null,No,e),[r.memoizedState,e]},useRef:function(e){var t=Qo();return e={current:e},t.memoizedState=e},useState:function(e){e=ms(e);var t=e.queue,n=tc.bind(null,No,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:Bs,useDeferredValue:function(e,t){return Us(Qo(),e,t)},useTransition:function(){var e=ms(!1);return e=Gs.bind(null,No,e.queue,!0,!1),Qo().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var r=No,a=Qo();if(X){if(n===void 0)throw Error(i(407));n=n()}else{if(n=t(),Yu===null)throw Error(i(349));Zu&127||ls(r,t,n)}a.memoizedState=n;var o={value:n,getSnapshot:t};return a.queue=o,Ms(ds.bind(null,r,o,e),[e]),r.flags|=2048,Os(9,{destroy:void 0},us.bind(null,r,o,n,t),null),n},useId:function(){var e=Qo(),t=Yu.identifierPrefix;if(X){var n=Vi,r=Bi;n=(r&~(1<<32-qe(r)-1)).toString(32)+n,t=`_`+t+`R_`+n,n=zo++,0<\/script>`,o=o.removeChild(o.firstChild);break;case`select`:o=typeof r.is==`string`?s.createElement(`select`,{is:r.is}):s.createElement(`select`),r.multiple?o.multiple=!0:r.size&&(o.size=r.size);break;default:o=typeof r.is==`string`?s.createElement(a,{is:r.is}):s.createElement(a)}}o[ht]=t,o[gt]=r;a:for(s=t.child;s!==null;){if(s.tag===5||s.tag===6)o.appendChild(s.stateNode);else if(s.tag!==4&&s.tag!==27&&s.child!==null){s.child.return=s,s=s.child;continue}if(s===t)break a;for(;s.sibling===null;){if(s.return===null||s.return===t)break a;s=s.return}s.sibling.return=s.return,s=s.sibling}t.stateNode=o;a:switch(ip(o,a,r),a){case`button`:case`input`:case`select`:case`textarea`:r=!!r.autoFocus;break a;case`img`:r=!0;break a;default:r=!1}r&&ol(t)}}return dl(t),t.subtreeFlags&=-33554433,sl(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==r&&ol(t);else{if(typeof r!=`string`&&t.stateNode===null)throw Error(i(166));if(e=_e.current,ta(t)){if(e=t.stateNode,n=t.memoizedProps,r=null,a=qi,a!==null)switch(a.tag){case 27:case 5:r=a.memoizedProps}e[ht]=t,e=!!(e.nodeValue===n||r!==null&&!0===r.suppressHydrationWarning||tp(e.nodeValue,n)),e||Qi(t,!0)}else e=dp(e).createTextNode(r),e[ht]=t,t.stateNode=e}return dl(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(r=ta(t),n!==null){if(e===null){if(!r)throw Error(i(318));if(e=t.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(557));e[ht]=t}else na(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;dl(t),e=!1}else n=ra(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(Do(t),t):(Do(t),null);if(t.flags&128)throw Error(i(558))}return dl(t),null;case 13:if(r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=ta(t),r!==null&&r.dehydrated!==null){if(e===null){if(!a)throw Error(i(318));if(a=t.memoizedState,a=a===null?null:a.dehydrated,!a)throw Error(i(317));a[ht]=t}else na(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;dl(t),a=!1}else a=ra(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(Do(t),t):(Do(t),null)}return Do(t),t.flags&128?(t.lanes=n,t):(n=r!==null,e=e!==null&&e.memoizedState!==null,n&&(r=t.child,a=null,r.alternate!==null&&r.alternate.memoizedState!==null&&r.alternate.memoizedState.cachePool!==null&&(a=r.alternate.memoizedState.cachePool.pool),o=null,r.memoizedState!==null&&r.memoizedState.cachePool!==null&&(o=r.memoizedState.cachePool.pool),o!==a&&(r.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),ll(t,t.updateQueue),dl(t),null);case 4:return be(),e===null&&Gf(t.stateNode.containerInfo),t.flags|=67108864,dl(t),null;case 10:return la(t.type),dl(t),null;case 19:if(Ao(t),r=t.memoizedState,r===null)return dl(t),null;if(a=!!(t.flags&128),o=r.rendering,o===null){if(a)ul(r,!1);else{if(id!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(o=jo(e),o!==null){for(t.flags|=128,ul(r,!1),e=o.updateQueue,t.updateQueue=e,ll(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)Ti(n,e),n=n.sibling;return ko(t,Oo.current&1|2),X&&Hi(t,r.treeForkCount),t.child}e=e.sibling}r.tail!==null&&Fe()>hd&&(t.flags|=128,a=!0,ul(r,!1),t.lanes=4194304)}}else{if(!a){if(e=jo(o),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,ll(t,e),ul(r,!0),r.tail===null&&r.tailMode!==`collapsed`&&r.tailMode!==`visible`&&!o.alternate&&!X)return dl(t),null}else 2*Fe()-r.renderingStartTime>hd&&n!==536870912&&(t.flags|=128,a=!0,ul(r,!1),t.lanes=4194304)}r.isBackwards?(o.sibling=t.child,t.child=o):(e=r.last,e===null?t.child=o:e.sibling=o,r.last=o)}if(r.tail!==null){e=r.tail;a:{for(n=e;n!==null;){if(n.alternate!==null){n=!1;break a}n=n.sibling}n=!0}return r.rendering=e,r.tail=e.sibling,r.renderingStartTime=Fe(),e.sibling=null,o=Oo.current,o=a?o&1|2:o&1,r.tailMode===`visible`||r.tailMode===`collapsed`||!n||X?ko(t,o):(n=o,me(xo,t),me(Oo,n),So===null&&(So=t)),X&&Hi(t,r.treeForkCount),e}return dl(t),null;case 22:case 23:return Do(t),bo(),r=t.memoizedState!==null,e===null?r&&(t.flags|=8192):e.memoizedState!==null!==r&&(t.flags|=8192),r?n&536870912&&!(t.flags&128)&&(dl(t),t.subtreeFlags&6&&(t.flags|=8192)):dl(t),n=t.updateQueue,n!==null&&ll(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),r=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(r=t.memoizedState.cachePool.pool),r!==n&&(t.flags|=2048),e!==null&&pe(Fa),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),la(xa),dl(t),null;case 25:return null;case 30:return t.flags|=33554432,dl(t),null}throw Error(i(156,t.tag))}function pl(e,t){switch(Gi(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return la(xa),be(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return Se(t),null;case 31:if(t.memoizedState!==null){if(Do(t),t.alternate===null)throw Error(i(340));na()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(Do(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(i(340));na()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return Ao(t),e=t.flags,e&65536?(t.flags=e&-65537|128,e=t.memoizedState,e!==null&&(e.rendering=null,e.tail=null),t.flags|=4,t):null;case 4:return be(),null;case 10:return la(t.type),null;case 22:case 23:return Do(t),bo(),e!==null&&pe(Fa),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return la(xa),null;case 25:return null;default:return null}}function ml(e,t){switch(Gi(t),t.tag){case 3:la(xa),be();break;case 26:case 27:case 5:Se(t);break;case 4:be();break;case 31:t.memoizedState!==null&&Do(t);break;case 13:Do(t);break;case 19:Ao(t);break;case 10:la(t.type);break;case 22:case 23:Do(t),bo(),e!==null&&pe(Fa);break;case 24:la(xa)}}function hl(e,t){try{var n=t.updateQueue,r=n===null?null:n.lastEffect;if(r!==null){var i=r.next;n=i;do{if((n.tag&e)===e){r=void 0;var a=n.create,o=n.inst;r=a(),o.destroy=r}n=n.next}while(n!==i)}}catch(e){pf(t,t.return,e)}}function gl(e,t,n){try{var r=t.updateQueue,i=r===null?null:r.lastEffect;if(i!==null){var a=i.next;r=a;do{if((r.tag&e)===e){var o=r.inst,s=o.destroy;if(s!==void 0){o.destroy=void 0,i=t;var c=n,l=s;try{l()}catch(e){pf(i,c,e)}}}r=r.next}while(r!==a)}}catch(e){pf(t,t.return,e)}}function _l(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{ho(t,n)}catch(t){pf(e,e.return,t)}}}function vl(e,t,n){n.props=hc(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(n){pf(e,t,n)}}function yl(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var r=e.stateNode;break;case 30:var i=e.stateNode,a=si(e.memoizedProps,i);(i.ref===null||i.ref.name!==a)&&(i.ref=Fp(a)),r=i.ref;break;case 7:if(e.stateNode===null){var o=new Ip(e);p(e.child,!1,$p,o,void 0,void 0),e.stateNode=o}r=e.stateNode;break;default:r=e.stateNode}typeof n==`function`?e.refCleanup=n(r):n.current=r}}catch(n){pf(e,t,n)}}function bl(e,t){var n=e.ref,r=e.refCleanup;if(n!==null){if(typeof r==`function`)try{r()}catch(n){pf(e,t,n)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n==`function`)try{n(null)}catch(n){pf(e,t,n)}else n.current=null}}function xl(e,t){if((e.tag===5||e.tag===27||e.tag===6)&&e.alternate===null&&t!==null)for(var n=0;n title`))),ip(r,t,n),r[ht]=e,kt(r),t=r;break a;case`link`:if(o=Km(`link`,`href`,a).get(t+(n.href||``))){for(s=0;sg&&(o=g,g=h,h=o);var _=Fr(s,h),v=Fr(s,g);if(_&&v&&(p.rangeCount!==1||p.anchorNode!==_.node||p.anchorOffset!==_.offset||p.focusNode!==v.node||p.focusOffset!==v.offset)){var y=d.createRange();y.setStart(_.node,_.offset),p.removeAllRanges(),h>g?(p.addRange(y),p.extend(v.node,v.offset)):(y.setEnd(v.node,v.offset),p.addRange(y))}}}}for(d=[],p=s;p=p.parentNode;)p.nodeType===1&&d.push({element:p,left:p.scrollLeft,top:p.scrollTop});for(typeof s.focus==`function`&&s.focus(),s=0;sn?32:n,U.T=null,n=Cd,Cd=null;var o=yd,s=xd;if(vd=0,bd=yd=null,xd=0,Ju&6)throw Error(i(331));var c=Ju;if(Ju|=4,Uu(o.current),Fu(o,o.current,s,n),Ju=c,Df(0,!1),Ge&&typeof Ge.onPostCommitFiberRoot==`function`)try{Ge.onPostCommitFiberRoot(We,o)}catch{}return!0}finally{ce.p=a,U.T=r,lf(e,t)}}function ff(e,t,n){t=Mi(n,t),t=xc(e.stateNode,t,2),e=so(e,t,2),e!==null&&(ot(e,2),Ef(e))}function pf(e,t,n){if(e.tag===3)ff(e,e,n);else for(;t!==null;){if(t.tag===3){ff(t,e,n);break}if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError==`function`||typeof r.componentDidCatch==`function`&&(_d===null||!_d.has(r))){e=Mi(n,e),n=Sc(2),r=so(t,n,2),r!==null&&(Cc(n,r,t,e),ot(r,2),Ef(r));break}}t=t.return}}function mf(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new qu;var i=new Set;r.set(t,i)}else i=r.get(t),i===void 0&&(i=new Set,r.set(t,i));i.has(n)||(nd=!0,i.add(n),e=hf.bind(null,e,t,n),t.then(e,e))}function hf(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Yu===e&&(Zu&n)===n&&(id===4||id===3&&(Zu&62914560)===Zu&&300>Fe()-pd?Ju&2?sd|=n:Bd(e,0):sd|=n,ld===Zu&&(ld=0)),Ef(e)}function gf(e,t){t===0&&(t=at()),e=_i(e,t),e!==null&&(ot(e,t),Ef(e))}function _f(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),gf(e,n)}function vf(e,t){var n=0;switch(e.tag){case 31:case 13:var r=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:r=e.stateNode;break;case 22:r=e.stateNode._retryCache;break;default:throw Error(i(314))}r!==null&&r.delete(t),gf(e,n)}function yf(e,t){return je(e,t)}var bf=null,xf=null,Sf=!1,Cf=!1,wf=!1,Tf=0;function Ef(e){e!==xf&&e.next===null&&(xf===null?bf=xf=e:xf=xf.next=e),Cf=!0,Sf||(Sf=!0,Nf())}function Df(e,t){if(!wf&&Cf){wf=!0;do for(var n=!1,r=bf;r!==null;){if(!t){if(e!==0){var i=r.pendingLanes;if(i===0)var a=0;else{var o=r.suspendedLanes,s=r.pingedLanes;a=(1<<31-qe(42|e)+1)-1,a&=i&~(o&~s),a=a&201326741?a&201326741|1:a?a|2:0}a!==0&&(n=!0,Mf(r,a))}else a=Zu,a=tt(r,r===Yu?a:0,r.cancelPendingCommit!==null||r.timeoutHandle!==-1),!(a&3)||nt(r,a)||(n=!0,Mf(r,a))}r=r.next}while(n);wf=!1}}function Of(){kf()}function kf(){Cf=Sf=!1;var e=0;Tf!==0&&gp()&&(e=Tf);for(var t=Fe(),n=null,r=bf;r!==null;){var i=r.next,a=Af(r,t);a===0?(r.next=null,n===null?bf=i:n.next=i,i===null&&(xf=n)):(n=r,(e!==0||a&3)&&(Cf=!0)),r=i}vd!==0&&vd!==5||Df(e,!1),Tf!==0&&(Tf=0)}function Af(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,i=e.expirationTimes,a=e.pendingLanes&-62914561;0s)break;var u=c.transferSize,d=c.initiatorType;u&&sp(d)&&(c=c.responseEnd,o+=u*(ceh){s.length=o;break}f=new Promise(Mp.bind(f)),s.push(f)}}}if(0`u`?null:document;function Em(e,t,n){var r=Tm;if(r&&typeof t==`string`&&t){var i=qt(t);i=`link[rel="`+e+`"][href="`+i+`"]`,typeof n==`string`&&(i+=`[crossorigin="`+n+`"]`),bm.has(i)||(bm.add(i),e={rel:e,crossOrigin:n,href:t},r.querySelector(i)===null&&(t=r.createElement(`link`),ip(t,`link`,e),kt(t),r.head.appendChild(t)))}}function Dm(e){Sm.D(e),Em(`dns-prefetch`,e,null)}function Om(e,t){Sm.C(e,t),Em(`preconnect`,e,t)}function km(e,t,n){Sm.L(e,t,n);var r=Tm;if(r&&e&&t){var i=`link[rel="preload"][as="`+qt(t)+`"]`;t===`image`&&n&&n.imageSrcSet?(i+=`[imagesrcset="`+qt(n.imageSrcSet)+`"]`,typeof n.imageSizes==`string`&&(i+=`[imagesizes="`+qt(n.imageSizes)+`"]`)):i+=`[href="`+qt(e)+`"]`;var a=i;switch(t){case`style`:a=Fm(e);break;case`script`:a=zm(e)}if(!(ym.has(a)||(e=D({rel:`preload`,href:t===`image`&&n&&n.imageSrcSet?void 0:e,as:t},n),ym.set(a,e),r.querySelector(i)!==null||t===`style`&&r.querySelector(Im(a))||t===`script`&&r.querySelector(Bm(a))))){var o=r.createElement(`link`);ip(o,`link`,e),t===`style`&&(o[Ct]=!0,o.onload=o.onerror=function(){At(o)}),kt(o),r.head.appendChild(o)}}}function Am(e,t){Sm.m(e,t);var n=Tm;if(n&&e){var r=t&&typeof t.as==`string`?t.as:`script`,i=`link[rel="modulepreload"][as="`+qt(r)+`"][href="`+qt(e)+`"]`,a=i;switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:a=zm(e)}if(!ym.has(a)&&(e=D({rel:`modulepreload`,href:e},t),ym.set(a,e),n.querySelector(i)===null)){switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:if(n.querySelector(Bm(a)))return}r=n.createElement(`link`),ip(r,`link`,e),kt(r),n.head.appendChild(r)}}}function jm(e,t,n){Sm.S(e,t,n);var r=Tm;if(r&&e){var i=Ot(r).hoistableStyles,a=Fm(e);t||=`default`;var o=i.get(a);if(!o){var s={loading:0,preload:null};if(o=r.querySelector(Im(a)))s.loading=5;else{e=D({rel:`stylesheet`,href:e,"data-precedence":t},n),(n=ym.get(a))&&Um(e,n);var c=o=r.createElement(`link`);kt(c),ip(c,`link`,e),c._p=new Promise(function(e,t){c.onload=e,c.onerror=t}),c.addEventListener(`load`,function(){s.loading|=1}),c.addEventListener(`error`,function(){s.loading|=2}),s.loading|=4,Hm(o,t,r)}o={type:`stylesheet`,instance:o,count:1,state:s},i.set(a,o)}}}function Mm(e,t){Sm.X(e,t);var n=Tm;if(n&&e){var r=Ot(n).hoistableScripts,i=zm(e),a=r.get(i);a||(a=n.querySelector(Bm(i)),a||(e=D({src:e,async:!0},t),(t=ym.get(i))&&Wm(e,t),a=n.createElement(`script`),kt(a),ip(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function Nm(e,t){Sm.M(e,t);var n=Tm;if(n&&e){var r=Ot(n).hoistableScripts,i=zm(e),a=r.get(i);a||(a=n.querySelector(Bm(i)),a||(e=D({src:e,async:!0,type:`module`},t),(t=ym.get(i))&&Wm(e,t),a=n.createElement(`script`),kt(a),ip(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function Pm(e,t,n,r){var a=(a=_e.current)?xm(a):null;if(!a)throw Error(i(446));switch(e){case`meta`:case`title`:return null;case`style`:return typeof n.precedence==`string`&&typeof n.href==`string`?(n=Fm(n.href),t=Ot(a).hoistableStyles,r=t.get(n),r||(r={type:`style`,instance:null,count:0,state:null},t.set(n,r)),r):{type:`void`,instance:null,count:0,state:null};case`link`:if(n.rel===`stylesheet`&&typeof n.href==`string`&&typeof n.precedence==`string`){e=Fm(n.href);var o=Ot(a).hoistableStyles,s=o.get(e);if(s||(a=a.ownerDocument||a,s={type:`stylesheet`,instance:null,count:0,state:{loading:0,preload:null}},o.set(e,s),(o=a.querySelector(Im(e)))?o._p||(s.instance=o,s.state.loading=5):(o=ym.get(e),o||(o={rel:`preload`,as:`style`,href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},ym.set(e,o)),Rm(a,e,o,s.state))),t&&r===null)throw Error(i(528,``));return s}if(t&&r!==null)throw Error(i(529,``));return null;case`script`:return t=n.async,n=n.src,typeof n==`string`&&t&&typeof t!=`function`&&typeof t!=`symbol`?(n=zm(n),t=Ot(a).hoistableScripts,r=t.get(n),r||(r={type:`script`,instance:null,count:0,state:null},t.set(n,r)),r):{type:`void`,instance:null,count:0,state:null};default:throw Error(i(444,e))}}function Fm(e){return`href="`+qt(e)+`"`}function Im(e){return`link[rel="stylesheet"][`+e+`]`}function Lm(e){return D({},e,{"data-precedence":e.precedence,precedence:null})}function Rm(e,t,n,r){if(t=e.querySelector(`link[rel="preload"][as="style"][`+t+`]`)){if(!0!==t[Ct]){r.loading=1;return}}else t=e.createElement(`link`),t[Ct]=!0,t.onload=t.onerror=At.bind(null,t),ip(t,`link`,n),kt(t),e.head.appendChild(t);r.preload=t,t.addEventListener(`load`,function(){return r.loading|=1}),t.addEventListener(`error`,function(){return r.loading|=2})}function zm(e){return`[src="`+qt(e)+`"]`}function Bm(e){return`script[async]`+e}function Vm(e,t,n){if(t.count++,t.instance===null)switch(t.type){case`style`:var r=e.querySelector(`style[data-href~="`+qt(n.href)+`"]`);if(r)return t.instance=r,kt(r),r;var a=D({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return r=(e.ownerDocument||e).createElement(`style`),kt(r),ip(r,`style`,a),Hm(r,n.precedence,e),t.instance=r;case`stylesheet`:a=Fm(n.href);var o=e.querySelector(Im(a));if(o)return t.state.loading|=4,t.instance=o,kt(o),o;r=Lm(n),(a=ym.get(a))&&Um(r,a),o=(e.ownerDocument||e).createElement(`link`),kt(o);var s=o;return s._p=new Promise(function(e,t){s.onload=e,s.onerror=t}),ip(o,`link`,r),t.state.loading|=4,Hm(o,n.precedence,e),t.instance=o;case`script`:return o=zm(n.src),(a=e.querySelector(Bm(o)))?(t.instance=a,kt(a),a):(r=n,(a=ym.get(o))&&(r=D({},n),Wm(r,a)),e=e.ownerDocument||e,a=e.createElement(`script`),kt(a),ip(a,`link`,r),e.head.appendChild(a),t.instance=a);case`void`:return null;default:throw Error(i(443,t.type))}else t.type===`stylesheet`&&!(t.state.loading&4)&&(r=t.instance,t.state.loading|=4,Hm(r,n.precedence,e));return t.instance}function Hm(e,t,n){for(var r=n.querySelectorAll(`link[rel="stylesheet"][data-precedence],style[data-precedence]`),i=r.length?r[r.length-1]:null,a=i,o=0;o title`):null)}function Jm(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case`meta`:case`title`:return!0;case`style`:if(typeof t.precedence!=`string`||typeof t.href!=`string`||t.href===``)break;return!0;case`link`:if(typeof t.rel!=`string`||typeof t.href!=`string`||t.href===``||t.onLoad||t.onError)break;switch(t.rel){case`stylesheet`:return e=t.disabled,typeof t.precedence==`string`&&e==null;default:return!0}case`script`:if(t.async&&typeof t.async!=`function`&&typeof t.async!=`symbol`&&!t.onLoad&&!t.onError&&t.src&&typeof t.src==`string`)return!0}return!1}function Ym(e,t){return e===`img`&&t.src!=null&&t.src!==``&&t.onLoad==null&&t.loading!==`lazy`}function Xm(e){return!(e.type===`stylesheet`&&!(e.state.loading&3))}function Zm(e){return(e.width||100)*(e.height||100)*(typeof devicePixelRatio==`number`?devicePixelRatio:1)*.25}function Qm(e,t){typeof t.decode==`function`&&(e.imgCount++,t.complete||(e.imgBytes+=Zm(t),e.suspenseyImages.push(t)),e=ih.bind(e),t.decode().then(e,e))}function $m(e,t,n,r){if(n.type===`stylesheet`&&(typeof r.media!=`string`||!1!==matchMedia(r.media).matches)&&!(n.state.loading&4)){if(n.instance===null){var i=Fm(r.href),a=t.querySelector(Im(i));if(a){t=a._p,typeof t==`object`&&t&&typeof t.then==`function`&&(e.count++,e=rh.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=a,kt(a);return}a=t.ownerDocument||t,r=Lm(r),(i=ym.get(i))&&Um(r,i),a=a.createElement(`link`),kt(a);var o=a;o._p=new Promise(function(e,t){o.onload=e,o.onerror=t}),ip(a,`link`,r),n.instance=a}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&!(n.state.loading&3)&&(e.count++,n=rh.bind(e),t.addEventListener(`load`,n),t.addEventListener(`error`,n))}}var eh=0;function th(e,t){return e.stylesheets&&e.count===0&&oh(e,e.stylesheets),0eh?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(r),clearTimeout(i)}}:null}function nh(e){if(e.count===0&&(e.imgCount===0||!e.waitingForImages)){if(e.stylesheets)oh(e,e.stylesheets);else if(e.unsuspend){var t=e.unsuspend;e.unsuspend=null,t()}}}function rh(){this.count--,nh(this)}function ih(){this.imgCount--,nh(this)}var ah=null;function oh(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,ah=new Map,t.forEach(sh,e),ah=null,rh.call(e))}function sh(e,t){if(!(t.state.loading&4)){var n=ah.get(e);if(n)var r=n.get(null);else{n=new Map,ah.set(e,n);for(var i=e.querySelectorAll(`link[data-precedence],style[data-precedence]`),a=0;a{function n(){if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE==`function`)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=_()})),y=u(f(),1),b=v(),x=Object.defineProperty,S=(e,t)=>x(e,`name`,{value:t,configurable:!0});function C(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}S(C,`setRef`);function w(...e){return t=>{let n=!1,r=e.map(e=>{let r=C(e,t);return!n&&typeof r==`function`&&(n=!0),r});if(n)return()=>{for(let t=0;tE(e,`name`,{value:t,configurable:!0});function O(e){let t=y.forwardRef((t,n)=>{let{children:r,...i}=t,a=null,o=!1,s=[];r=z(r),y.Children.forEach(r,e=>{if(F(e)){o=!0;let t=e,n=`child`in t.props?t.props.child:t.props.children;for(;L(n)&&typeof H==`function`;)n=H(n._payload);a=M(t,n),s.push(a?.props?.children)}else s.push(e)}),a?a=y.cloneElement(a,void 0,s):!o&&y.Children.count(r)===1&&y.isValidElement(r)&&(a=r);let c=a?P(a):void 0,l=T(n,c);if(!a){if(r||r===0)throw Error(o?V(e):ee(e));return r}let u=N(i,a.props??{});return a.type!==y.Fragment&&(u.ref=n?l:c),y.cloneElement(a,u)});return t.displayName=`${e}.Slot`,t}D(O,`createSlot`);var k=O(`Slot`),A=Symbol.for(`radix.slottable`);function j(e){let t=D(e=>`child`in e?e.children(e.child):e.children,`Slottable`);return t.displayName=`${e}.Slottable`,t.__radixId=A,t}D(j,`createSlottable`);var M=D((e,t)=>`child`in e.props?y.isValidElement(t)?y.cloneElement(t,void 0,e.props.children(t.props.children)):null:y.isValidElement(t)?t:null,`getSlottableElementFromSlottable`);function N(e,t){let n={...t};for(let r in t){let i=e[r],a=t[r];/^on[A-Z]/.test(r)?i&&a?n[r]=(...e)=>{let t=a(...e);return i(...e),t}:i&&(n[r]=i):r===`style`?n[r]={...i,...a}:r===`className`?n[r]=[i,a].filter(Boolean).join(` `):r===`aria-describedby`&&(n[r]=B(a,i))}return{...e,...n}}D(N,`mergeProps`);function P(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}D(P,`getElementRef`);function F(e){return y.isValidElement(e)&&typeof e.type==`function`&&`__radixId`in e.type&&e.type.__radixId===A}D(F,`isSlottable`);var I=Symbol.for(`react.lazy`);function L(e){return typeof e==`object`&&!!e&&`$$typeof`in e&&e.$$typeof===I&&`_payload`in e&&R(e._payload)}D(L,`isLazyComponent`);function R(e){return typeof e==`object`&&!!e&&`then`in e}D(R,`isPromiseLike`);function z(e){let t=e;for(;L(t)&&typeof H==`function`;)t=H(t._payload);return t}D(z,`useUnwrappedLazy`);function B(...e){let t=new Set;for(let n of e)if(typeof n==`string`)for(let e of String(n).trim().split(/\s+/))e&&t.add(e);return t.size>0?Array.from(t).join(` `):void 0}D(B,`concatAriaDescribedby`);var ee=D(e=>`${e} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,`createSlotError`),V=D(e=>`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,`createSlottableError`),H=y.use;function te(e){var t,n,r=``;if(typeof e==`string`||typeof e==`number`)r+=e;else if(typeof e==`object`){if(Array.isArray(e)){var i=e.length;for(t=0;ttypeof e==`boolean`?`${e}`:e===0?`0`:e,ie=ne,ae=(e,t)=>n=>{if(t?.variants==null)return ie(e,n?.class,n?.className);let{variants:r,defaultVariants:i}=t,a=Object.keys(r).map(e=>{let t=n?.[e],a=i?.[e];if(t===null)return null;let o=re(t)||re(a);return r[e][o]}),o=n&&Object.entries(n).reduce((e,t)=>{let[n,r]=t;return r===void 0||(e[n]=r),e},{});return ie(e,a,t?.compoundVariants?.reduce((e,t)=>{let{class:n,className:r,...a}=t;return Object.entries(a).every(e=>{let[t,n]=e;return Array.isArray(n)?n.includes({...i,...o}[t]):{...i,...o}[t]===n})?[...e,n,r]:e},[]),n?.class,n?.className)},oe=(e,t)=>{let n=Array(e.length+t.length);for(let t=0;t({classGroupId:e,validator:t}),U=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),ce=`-`,le=[],ue=`arbitrary..`,de=e=>{let t=me(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:e=>{if(e.startsWith(`[`)&&e.endsWith(`]`))return pe(e);let n=e.split(ce);return fe(n,+(n[0]===``&&n.length>1),t)},getConflictingClassGroupIds:(e,t)=>{if(t){let t=r[e],i=n[e];return t?i?oe(i,t):t:i||le}return n[e]||le}}},fe=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;let r=e[t],i=n.nextPart.get(r);if(i){let n=fe(e,t+1,i);if(n)return n}let a=n.validators;if(a===null)return;let o=t===0?e.join(ce):e.slice(t).join(ce),s=a.length;for(let e=0;ee.slice(1,-1).indexOf(`:`)===-1?void 0:(()=>{let t=e.slice(1,-1),n=t.indexOf(`:`),r=t.slice(0,n);return r?ue+r:void 0})(),me=e=>{let{theme:t,classGroups:n}=e;return he(n,t)},he=(e,t)=>{let n=U();for(let r in e){let i=e[r];ge(i,n,r,t)}return n},ge=(e,t,n,r)=>{let i=e.length;for(let a=0;a{if(typeof e==`string`){ve(e,t,n);return}if(typeof e==`function`){ye(e,t,n,r);return}be(e,t,n,r)},ve=(e,t,n)=>{let r=e===``?t:xe(t,e);r.classGroupId=n},ye=(e,t,n,r)=>{if(Se(e)){ge(e(r),t,n,r);return}t.validators===null&&(t.validators=[]),t.validators.push(se(n,e))},be=(e,t,n,r)=>{let i=Object.entries(e),a=i.length;for(let e=0;e{let n=e,r=t.split(ce),i=r.length;for(let e=0;e`isThemeGetter`in e&&e.isThemeGetter===!0,Ce=e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null),i=(i,a)=>{n[i]=a,t++,t>e&&(t=0,r=n,n=Object.create(null))};return{get(e){let t=n[e];if(t!==void 0)return t;if((t=r[e])!==void 0)return i(e,t),t},set(e,t){e in n?n[e]=t:i(e,t)}}},we=`!`,Te=`:`,Ee=[],De=(e,t,n,r,i)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:i}),Oe=e=>{let{prefix:t,experimentalParseClassName:n}=e,r=e=>{let t=[],n=0,r=0,i=0,a,o=e.length;for(let s=0;si?a-i:void 0;return De(t,l,c,u)};if(t){let e=t+Te,n=r;r=t=>t.startsWith(e)?n(t.slice(e.length)):De(Ee,!1,t,void 0,!0)}if(n){let e=r;r=t=>n({className:t,parseClassName:e})}return r},ke=e=>{let t=new Map;return e.orderSensitiveModifiers.forEach((e,n)=>{t.set(e,1e6+n)}),e=>{let n=[],r=[];for(let i=0;i0&&(r.sort(),n.push(...r),r=[]),n.push(a)):r.push(a)}return r.length>0&&(r.sort(),n.push(...r)),n}},Ae=e=>({cache:Ce(e.cacheSize),parseClassName:Oe(e),sortModifiers:ke(e),postfixLookupClassGroupIds:je(e),...de(e)}),je=e=>{let t=Object.create(null),n=e.postfixLookupClassGroups;if(n)for(let e=0;e{let{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:i,sortModifiers:a,postfixLookupClassGroupIds:o}=t,s=[],c=e.trim().split(Me),l=``;for(let e=c.length-1;e>=0;--e){let t=c[e],{isExternal:u,modifiers:d,hasImportantModifier:f,baseClassName:p,maybePostfixModifierPosition:m}=n(t);if(u){l=t+(l.length>0?` `+l:l);continue}let h=!!m,g;if(h){g=r(p.substring(0,m));let e=g&&o[g]?r(p):void 0;e&&e!==g&&(g=e,h=!1)}else g=r(p);if(!g){if(!h){l=t+(l.length>0?` `+l:l);continue}if(g=r(p),!g){l=t+(l.length>0?` `+l:l);continue}h=!1}let _=d.length===0?``:d.length===1?d[0]:a(d).join(`:`),v=f?_+we:_,y=v+g;if(s.indexOf(y)>-1)continue;s.push(y);let b=i(g,h);for(let e=0;e0?` `+l:l)}return l},Pe=(...e)=>{let t=0,n,r,i=``;for(;t{if(typeof e==`string`)return e;let t,n=``;for(let r=0;r{let n,r,i,a,o=o=>(n=Ae(t.reduce((e,t)=>t(e),e())),r=n.cache.get,i=n.cache.set,a=s,s(o)),s=e=>{let t=r(e);if(t)return t;let a=Ne(e,n);return i(e,a),a};return a=o,(...e)=>a(Pe(...e))},Le=[],Re=e=>{let t=t=>t[e]||Le;return t.isThemeGetter=!0,t.themeKey=e,t},ze=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,Be=/^\((?:(\w[\w-]*):)?(.+)\)$/i,Ve=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,He=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,Ue=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,We=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix|color|light-dark)\(.+\)$/,Ge=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,Ke=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,qe=e=>Ve.test(e),Je=e=>!!e&&!Number.isNaN(Number(e)),Ye=e=>!!e&&Number.isInteger(Number(e)),Xe=e=>e.endsWith(`%`)&&Je(e.slice(0,-1)),Ze=e=>He.test(e),Qe=()=>!0,$e=e=>Ue.test(e)&&!We.test(e),et=()=>!1,tt=e=>Ge.test(e),nt=e=>Ke.test(e),rt=e=>!W(e)&&!G(e),it=e=>e.startsWith(`@container`)&&(e[10]===`/`&&e[11]!==void 0||e[11]===`s`&&e[16]!==void 0&&e.startsWith(`-size/`,10)||e[11]===`n`&&e[18]!==void 0&&e.startsWith(`-normal/`,10)),at=e=>bt(e,wt,et),W=e=>ze.test(e),ot=e=>bt(e,Tt,$e),st=e=>bt(e,Et,Je),ct=e=>bt(e,Ot,Qe),lt=e=>bt(e,Dt,et),ut=e=>bt(e,St,et),dt=e=>bt(e,Ct,nt),ft=e=>bt(e,kt,tt),G=e=>Be.test(e),pt=e=>xt(e,Tt),mt=e=>xt(e,Dt),ht=e=>xt(e,St),gt=e=>xt(e,wt),_t=e=>xt(e,Ct),vt=e=>xt(e,kt,!0),yt=e=>xt(e,Ot,!0),bt=(e,t,n)=>{let r=ze.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},xt=(e,t,n=!1)=>{let r=Be.exec(e);return r?r[1]?t(r[1]):n:!1},St=e=>e===`position`||e===`percentage`,Ct=e=>e===`image`||e===`url`,wt=e=>e===`length`||e===`size`||e===`bg-size`,Tt=e=>e===`length`,Et=e=>e===`number`,Dt=e=>e===`family-name`,Ot=e=>e===`number`||e===`weight`,kt=e=>e===`shadow`,At=Ie(()=>{let e=Re(`color`),t=Re(`font`),n=Re(`text`),r=Re(`font-weight`),i=Re(`tracking`),a=Re(`leading`),o=Re(`breakpoint`),s=Re(`container`),c=Re(`spacing`),l=Re(`radius`),u=Re(`shadow`),d=Re(`inset-shadow`),f=Re(`text-shadow`),p=Re(`drop-shadow`),m=Re(`blur`),h=Re(`perspective`),g=Re(`aspect`),_=Re(`ease`),v=Re(`animate`),y=()=>[`auto`,`avoid`,`all`,`avoid-page`,`page`,`left`,`right`,`column`],b=()=>[`center`,`top`,`bottom`,`left`,`right`,`top-left`,`left-top`,`top-right`,`right-top`,`bottom-right`,`right-bottom`,`bottom-left`,`left-bottom`],x=()=>[...b(),G,W],S=()=>[`auto`,`hidden`,`clip`,`visible`,`scroll`],C=()=>[`auto`,`contain`,`none`],w=()=>[G,W,c],T=()=>[qe,`full`,`auto`,...w()],E=()=>[Ye,`none`,`subgrid`,G,W],D=()=>[`auto`,{span:[`full`,Ye,G,W]},Ye,G,W],O=()=>[Ye,`auto`,G,W],k=()=>[`auto`,`min`,`max`,`fr`,G,W],A=()=>[`start`,`end`,`center`,`between`,`around`,`evenly`,`stretch`,`baseline`,`center-safe`,`end-safe`],j=()=>[`start`,`end`,`center`,`stretch`,`center-safe`,`end-safe`],M=()=>[`auto`,...w()],N=()=>[qe,`auto`,`full`,`dvw`,`dvh`,`lvw`,`lvh`,`svw`,`svh`,`min`,`max`,`fit`,...w()],P=()=>[s,qe,`screen`,`full`,`dvw`,`lvw`,`svw`,`min`,`max`,`fit`,...w()],F=()=>[qe,`screen`,`full`,`lh`,`dvh`,`lvh`,`svh`,`min`,`max`,`fit`,...w()],I=()=>[e,G,W],L=()=>[...b(),ht,ut,{position:[G,W]}],R=()=>[`no-repeat`,{repeat:[``,`x`,`y`,`space`,`round`]}],z=()=>[`auto`,`cover`,`contain`,gt,at,{size:[G,W]}],B=()=>[Xe,pt,ot],ee=()=>[``,`none`,`full`,l,G,W],V=()=>[``,Je,pt,ot],H=()=>[`solid`,`dashed`,`dotted`,`double`],te=()=>[`normal`,`multiply`,`screen`,`overlay`,`darken`,`lighten`,`color-dodge`,`color-burn`,`hard-light`,`soft-light`,`difference`,`exclusion`,`hue`,`saturation`,`color`,`luminosity`],ne=()=>[Je,Xe,ht,ut],re=()=>[``,`none`,m,G,W],ie=()=>[`none`,Je,G,W],ae=()=>[`none`,Je,G,W],oe=()=>[Je,G,W],se=()=>[qe,`full`,...w()];return{cacheSize:500,theme:{animate:[`spin`,`ping`,`pulse`,`bounce`],aspect:[`video`],blur:[Ze],breakpoint:[Ze],color:[Qe],container:[Ze],"drop-shadow":[Ze],ease:[`in`,`out`,`in-out`],font:[rt],"font-weight":[`thin`,`extralight`,`light`,`normal`,`medium`,`semibold`,`bold`,`extrabold`,`black`],"inset-shadow":[Ze],leading:[`none`,`tight`,`snug`,`normal`,`relaxed`,`loose`],perspective:[`dramatic`,`near`,`normal`,`midrange`,`distant`,`none`],radius:[Ze],shadow:[Ze],spacing:[`px`,Je],text:[Ze],"text-shadow":[Ze],tracking:[`tighter`,`tight`,`normal`,`wide`,`wider`,`widest`]},classGroups:{aspect:[{aspect:[`auto`,`square`,qe,W,G,g]}],container:[`container`],"container-type":[{"@container":[``,`normal`,`size`,G,W]}],"container-named":[it],columns:[{columns:[Je,`auto`,W,G,s]}],"break-after":[{"break-after":y()}],"break-before":[{"break-before":y()}],"break-inside":[{"break-inside":[`auto`,`avoid`,`avoid-page`,`avoid-column`]}],"box-decoration":[{"box-decoration":[`slice`,`clone`]}],box:[{box:[`border`,`content`]}],display:[`block`,`inline-block`,`inline`,`flex`,`inline-flex`,`table`,`inline-table`,`table-caption`,`table-cell`,`table-column`,`table-column-group`,`table-footer-group`,`table-header-group`,`table-row-group`,`table-row`,`flow-root`,`grid`,`inline-grid`,`contents`,`list-item`,`hidden`],sr:[`sr-only`,`not-sr-only`],float:[{float:[`right`,`left`,`none`,`start`,`end`]}],clear:[{clear:[`left`,`right`,`both`,`none`,`start`,`end`]}],isolation:[`isolate`,`isolation-auto`],"object-fit":[{object:[`contain`,`cover`,`fill`,`none`,`scale-down`]}],"object-position":[{object:x()}],overflow:[{overflow:S()}],"overflow-x":[{"overflow-x":S()}],"overflow-y":[{"overflow-y":S()}],overscroll:[{overscroll:C()}],"overscroll-x":[{"overscroll-x":C()}],"overscroll-y":[{"overscroll-y":C()}],position:[`static`,`fixed`,`absolute`,`relative`,`sticky`],inset:[{inset:T()}],"inset-x":[{"inset-x":T()}],"inset-y":[{"inset-y":T()}],start:[{"inset-s":T(),start:T()}],end:[{"inset-e":T(),end:T()}],"inset-bs":[{"inset-bs":T()}],"inset-be":[{"inset-be":T()}],top:[{top:T()}],right:[{right:T()}],bottom:[{bottom:T()}],left:[{left:T()}],visibility:[`visible`,`invisible`,`collapse`],z:[{z:[Ye,`auto`,G,W]}],basis:[{basis:[qe,`full`,`auto`,s,...w()]}],"flex-direction":[{flex:[`row`,`row-reverse`,`col`,`col-reverse`]}],"flex-wrap":[{flex:[`nowrap`,`wrap`,`wrap-reverse`]}],flex:[{flex:[Je,qe,`auto`,`initial`,`none`,W]}],grow:[{grow:[``,Je,G,W]}],shrink:[{shrink:[``,Je,G,W]}],order:[{order:[Ye,`first`,`last`,`none`,G,W]}],"grid-cols":[{"grid-cols":E()}],"col-start-end":[{col:D()}],"col-start":[{"col-start":O()}],"col-end":[{"col-end":O()}],"grid-rows":[{"grid-rows":E()}],"row-start-end":[{row:D()}],"row-start":[{"row-start":O()}],"row-end":[{"row-end":O()}],"grid-flow":[{"grid-flow":[`row`,`col`,`dense`,`row-dense`,`col-dense`]}],"auto-cols":[{"auto-cols":k()}],"auto-rows":[{"auto-rows":k()}],gap:[{gap:w()}],"gap-x":[{"gap-x":w()}],"gap-y":[{"gap-y":w()}],"justify-content":[{justify:[...A(),`normal`]}],"justify-items":[{"justify-items":[...j(),`normal`]}],"justify-self":[{"justify-self":[`auto`,...j()]}],"align-content":[{content:[`normal`,...A()]}],"align-items":[{items:[...j(),{baseline:[``,`last`]}]}],"align-self":[{self:[`auto`,...j(),{baseline:[``,`last`]}]}],"place-content":[{"place-content":A()}],"place-items":[{"place-items":[...j(),`baseline`]}],"place-self":[{"place-self":[`auto`,...j()]}],p:[{p:w()}],px:[{px:w()}],py:[{py:w()}],ps:[{ps:w()}],pe:[{pe:w()}],pbs:[{pbs:w()}],pbe:[{pbe:w()}],pt:[{pt:w()}],pr:[{pr:w()}],pb:[{pb:w()}],pl:[{pl:w()}],m:[{m:M()}],mx:[{mx:M()}],my:[{my:M()}],ms:[{ms:M()}],me:[{me:M()}],mbs:[{mbs:M()}],mbe:[{mbe:M()}],mt:[{mt:M()}],mr:[{mr:M()}],mb:[{mb:M()}],ml:[{ml:M()}],"space-x":[{"space-x":w()}],"space-x-reverse":[`space-x-reverse`],"space-y":[{"space-y":w()}],"space-y-reverse":[`space-y-reverse`],size:[{size:N()}],"inline-size":[{inline:[`auto`,...P()]}],"min-inline-size":[{"min-inline":[`auto`,...P()]}],"max-inline-size":[{"max-inline":[`none`,...P()]}],"block-size":[{block:[`auto`,...F()]}],"min-block-size":[{"min-block":[`auto`,...F()]}],"max-block-size":[{"max-block":[`none`,...F()]}],w:[{w:[s,`screen`,...N()]}],"min-w":[{"min-w":[s,`screen`,`none`,...N()]}],"max-w":[{"max-w":[s,`screen`,`none`,`prose`,{screen:[o]},...N()]}],h:[{h:[`screen`,`lh`,...N()]}],"min-h":[{"min-h":[`screen`,`lh`,`none`,...N()]}],"max-h":[{"max-h":[`screen`,`lh`,`none`,...N()]}],"font-size":[{text:[`base`,n,pt,ot]}],"font-smoothing":[`antialiased`,`subpixel-antialiased`],"font-style":[`italic`,`not-italic`],"font-weight":[{font:[r,yt,ct]}],"font-stretch":[{"font-stretch":[`ultra-condensed`,`extra-condensed`,`condensed`,`semi-condensed`,`normal`,`semi-expanded`,`expanded`,`extra-expanded`,`ultra-expanded`,Xe,W]}],"font-family":[{font:[mt,lt,t]}],"font-features":[{"font-features":[W]}],"fvn-normal":[`normal-nums`],"fvn-ordinal":[`ordinal`],"fvn-slashed-zero":[`slashed-zero`],"fvn-figure":[`lining-nums`,`oldstyle-nums`],"fvn-spacing":[`proportional-nums`,`tabular-nums`],"fvn-fraction":[`diagonal-fractions`,`stacked-fractions`],tracking:[{tracking:[i,G,W]}],"line-clamp":[{"line-clamp":[Je,`none`,G,st]}],leading:[{leading:[`none`,a,...w()]}],"list-image":[{"list-image":[`none`,G,W]}],"list-style-position":[{list:[`inside`,`outside`]}],"list-style-type":[{list:[`disc`,`decimal`,`none`,G,W]}],"text-alignment":[{text:[`left`,`center`,`right`,`justify`,`start`,`end`]}],"placeholder-color":[{placeholder:I()}],"text-color":[{text:I()}],"text-decoration":[`underline`,`overline`,`line-through`,`no-underline`],"text-decoration-style":[{decoration:[...H(),`wavy`]}],"text-decoration-thickness":[{decoration:[Je,`from-font`,`auto`,G,ot]}],"text-decoration-color":[{decoration:I()}],"underline-offset":[{"underline-offset":[Je,`auto`,G,W]}],"text-transform":[`uppercase`,`lowercase`,`capitalize`,`normal-case`],"text-overflow":[`truncate`,`text-ellipsis`,`text-clip`],"text-wrap":[{text:[`wrap`,`nowrap`,`balance`,`pretty`]}],indent:[{indent:w()}],"tab-size":[{tab:[Ye,G,W]}],"vertical-align":[{align:[`baseline`,`top`,`middle`,`bottom`,`text-top`,`text-bottom`,`sub`,`super`,G,W]}],whitespace:[{whitespace:[`normal`,`nowrap`,`pre`,`pre-line`,`pre-wrap`,`break-spaces`]}],break:[{break:[`normal`,`words`,`all`,`keep`]}],wrap:[{wrap:[`break-word`,`anywhere`,`normal`]}],hyphens:[{hyphens:[`none`,`manual`,`auto`]}],content:[{content:[`none`,G,W]}],"bg-attachment":[{bg:[`fixed`,`local`,`scroll`]}],"bg-clip":[{"bg-clip":[`border`,`padding`,`content`,`text`]}],"bg-origin":[{"bg-origin":[`border`,`padding`,`content`]}],"bg-position":[{bg:L()}],"bg-repeat":[{bg:R()}],"bg-size":[{bg:z()}],"bg-image":[{bg:[`none`,{linear:[{to:[`t`,`tr`,`r`,`br`,`b`,`bl`,`l`,`tl`]},Ye,G,W],radial:[``,G,W],conic:[``,Ye,G,W]},_t,dt]}],"bg-color":[{bg:I()}],"gradient-from-pos":[{from:B()}],"gradient-via-pos":[{via:B()}],"gradient-to-pos":[{to:B()}],"gradient-from":[{from:I()}],"gradient-via":[{via:I()}],"gradient-to":[{to:I()}],rounded:[{rounded:ee()}],"rounded-s":[{"rounded-s":ee()}],"rounded-e":[{"rounded-e":ee()}],"rounded-t":[{"rounded-t":ee()}],"rounded-r":[{"rounded-r":ee()}],"rounded-b":[{"rounded-b":ee()}],"rounded-l":[{"rounded-l":ee()}],"rounded-ss":[{"rounded-ss":ee()}],"rounded-se":[{"rounded-se":ee()}],"rounded-ee":[{"rounded-ee":ee()}],"rounded-es":[{"rounded-es":ee()}],"rounded-tl":[{"rounded-tl":ee()}],"rounded-tr":[{"rounded-tr":ee()}],"rounded-br":[{"rounded-br":ee()}],"rounded-bl":[{"rounded-bl":ee()}],"border-w":[{border:V()}],"border-w-x":[{"border-x":V()}],"border-w-y":[{"border-y":V()}],"border-w-s":[{"border-s":V()}],"border-w-e":[{"border-e":V()}],"border-w-bs":[{"border-bs":V()}],"border-w-be":[{"border-be":V()}],"border-w-t":[{"border-t":V()}],"border-w-r":[{"border-r":V()}],"border-w-b":[{"border-b":V()}],"border-w-l":[{"border-l":V()}],"divide-x":[{"divide-x":V()}],"divide-x-reverse":[`divide-x-reverse`],"divide-y":[{"divide-y":V()}],"divide-y-reverse":[`divide-y-reverse`],"border-style":[{border:[...H(),`hidden`,`none`]}],"divide-style":[{divide:[...H(),`hidden`,`none`]}],"border-color":[{border:I()}],"border-color-x":[{"border-x":I()}],"border-color-y":[{"border-y":I()}],"border-color-s":[{"border-s":I()}],"border-color-e":[{"border-e":I()}],"border-color-bs":[{"border-bs":I()}],"border-color-be":[{"border-be":I()}],"border-color-t":[{"border-t":I()}],"border-color-r":[{"border-r":I()}],"border-color-b":[{"border-b":I()}],"border-color-l":[{"border-l":I()}],"divide-color":[{divide:I()}],"outline-style":[{outline:[...H(),`none`,`hidden`]}],"outline-offset":[{"outline-offset":[Je,G,W]}],"outline-w":[{outline:[``,Je,pt,ot]}],"outline-color":[{outline:I()}],shadow:[{shadow:[``,`inner`,`none`,u,vt,ft]}],"shadow-color":[{shadow:I()}],"inset-shadow":[{"inset-shadow":[`none`,d,vt,ft]}],"inset-shadow-color":[{"inset-shadow":I()}],"ring-w":[{ring:V()}],"ring-w-inset":[`ring-inset`],"ring-color":[{ring:I()}],"ring-offset-w":[{"ring-offset":[Je,ot]}],"ring-offset-color":[{"ring-offset":I()}],"inset-ring-w":[{"inset-ring":V()}],"inset-ring-color":[{"inset-ring":I()}],"text-shadow":[{"text-shadow":[`none`,f,vt,ft]}],"text-shadow-color":[{"text-shadow":I()}],opacity:[{opacity:[Je,G,W]}],"mix-blend":[{"mix-blend":[...te(),`plus-darker`,`plus-lighter`]}],"bg-blend":[{"bg-blend":te()}],"mask-clip":[{"mask-clip":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]},`mask-no-clip`],"mask-composite":[{mask:[`add`,`subtract`,`intersect`,`exclude`]}],"mask-image-linear-pos":[{"mask-linear":[Je]}],"mask-image-linear-from-pos":[{"mask-linear-from":ne()}],"mask-image-linear-to-pos":[{"mask-linear-to":ne()}],"mask-image-linear-from-color":[{"mask-linear-from":I()}],"mask-image-linear-to-color":[{"mask-linear-to":I()}],"mask-image-t-from-pos":[{"mask-t-from":ne()}],"mask-image-t-to-pos":[{"mask-t-to":ne()}],"mask-image-t-from-color":[{"mask-t-from":I()}],"mask-image-t-to-color":[{"mask-t-to":I()}],"mask-image-r-from-pos":[{"mask-r-from":ne()}],"mask-image-r-to-pos":[{"mask-r-to":ne()}],"mask-image-r-from-color":[{"mask-r-from":I()}],"mask-image-r-to-color":[{"mask-r-to":I()}],"mask-image-b-from-pos":[{"mask-b-from":ne()}],"mask-image-b-to-pos":[{"mask-b-to":ne()}],"mask-image-b-from-color":[{"mask-b-from":I()}],"mask-image-b-to-color":[{"mask-b-to":I()}],"mask-image-l-from-pos":[{"mask-l-from":ne()}],"mask-image-l-to-pos":[{"mask-l-to":ne()}],"mask-image-l-from-color":[{"mask-l-from":I()}],"mask-image-l-to-color":[{"mask-l-to":I()}],"mask-image-x-from-pos":[{"mask-x-from":ne()}],"mask-image-x-to-pos":[{"mask-x-to":ne()}],"mask-image-x-from-color":[{"mask-x-from":I()}],"mask-image-x-to-color":[{"mask-x-to":I()}],"mask-image-y-from-pos":[{"mask-y-from":ne()}],"mask-image-y-to-pos":[{"mask-y-to":ne()}],"mask-image-y-from-color":[{"mask-y-from":I()}],"mask-image-y-to-color":[{"mask-y-to":I()}],"mask-image-radial":[{"mask-radial":[G,W]}],"mask-image-radial-from-pos":[{"mask-radial-from":ne()}],"mask-image-radial-to-pos":[{"mask-radial-to":ne()}],"mask-image-radial-from-color":[{"mask-radial-from":I()}],"mask-image-radial-to-color":[{"mask-radial-to":I()}],"mask-image-radial-shape":[{"mask-radial":[`circle`,`ellipse`]}],"mask-image-radial-size":[{"mask-radial":[{closest:[`side`,`corner`],farthest:[`side`,`corner`]}]}],"mask-image-radial-pos":[{"mask-radial-at":b()}],"mask-image-conic-pos":[{"mask-conic":[Je]}],"mask-image-conic-from-pos":[{"mask-conic-from":ne()}],"mask-image-conic-to-pos":[{"mask-conic-to":ne()}],"mask-image-conic-from-color":[{"mask-conic-from":I()}],"mask-image-conic-to-color":[{"mask-conic-to":I()}],"mask-mode":[{mask:[`alpha`,`luminance`,`match`]}],"mask-origin":[{"mask-origin":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]}],"mask-position":[{mask:L()}],"mask-repeat":[{mask:R()}],"mask-size":[{mask:z()}],"mask-type":[{"mask-type":[`alpha`,`luminance`]}],"mask-image":[{mask:[`none`,G,W]}],filter:[{filter:[``,`none`,G,W]}],blur:[{blur:re()}],brightness:[{brightness:[Je,G,W]}],contrast:[{contrast:[Je,G,W]}],"drop-shadow":[{"drop-shadow":[``,`none`,p,vt,ft]}],"drop-shadow-color":[{"drop-shadow":I()}],grayscale:[{grayscale:[``,Je,G,W]}],"hue-rotate":[{"hue-rotate":[Je,G,W]}],invert:[{invert:[``,Je,G,W]}],saturate:[{saturate:[Je,G,W]}],sepia:[{sepia:[``,Je,G,W]}],"backdrop-filter":[{"backdrop-filter":[``,`none`,G,W]}],"backdrop-blur":[{"backdrop-blur":re()}],"backdrop-brightness":[{"backdrop-brightness":[Je,G,W]}],"backdrop-contrast":[{"backdrop-contrast":[Je,G,W]}],"backdrop-grayscale":[{"backdrop-grayscale":[``,Je,G,W]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[Je,G,W]}],"backdrop-invert":[{"backdrop-invert":[``,Je,G,W]}],"backdrop-opacity":[{"backdrop-opacity":[Je,G,W]}],"backdrop-saturate":[{"backdrop-saturate":[Je,G,W]}],"backdrop-sepia":[{"backdrop-sepia":[``,Je,G,W]}],"border-collapse":[{border:[`collapse`,`separate`]}],"border-spacing":[{"border-spacing":w()}],"border-spacing-x":[{"border-spacing-x":w()}],"border-spacing-y":[{"border-spacing-y":w()}],"table-layout":[{table:[`auto`,`fixed`]}],caption:[{caption:[`top`,`bottom`]}],transition:[{transition:[``,`all`,`colors`,`opacity`,`shadow`,`transform`,`none`,G,W]}],"transition-behavior":[{transition:[`normal`,`discrete`]}],duration:[{duration:[Je,`initial`,G,W]}],ease:[{ease:[`linear`,`initial`,_,G,W]}],delay:[{delay:[Je,G,W]}],animate:[{animate:[`none`,v,G,W]}],backface:[{backface:[`hidden`,`visible`]}],perspective:[{perspective:[h,G,W]}],"perspective-origin":[{"perspective-origin":x()}],rotate:[{rotate:ie()}],"rotate-x":[{"rotate-x":ie()}],"rotate-y":[{"rotate-y":ie()}],"rotate-z":[{"rotate-z":ie()}],scale:[{scale:ae()}],"scale-x":[{"scale-x":ae()}],"scale-y":[{"scale-y":ae()}],"scale-z":[{"scale-z":ae()}],"scale-3d":[`scale-3d`],skew:[{skew:oe()}],"skew-x":[{"skew-x":oe()}],"skew-y":[{"skew-y":oe()}],transform:[{transform:[G,W,``,`none`,`gpu`,`cpu`]}],"transform-origin":[{origin:x()}],"transform-style":[{transform:[`3d`,`flat`]}],translate:[{translate:se()}],"translate-x":[{"translate-x":se()}],"translate-y":[{"translate-y":se()}],"translate-z":[{"translate-z":se()}],"translate-none":[`translate-none`],zoom:[{zoom:[Ye,G,W]}],accent:[{accent:I()}],appearance:[{appearance:[`none`,`auto`]}],"caret-color":[{caret:I()}],"color-scheme":[{scheme:[`normal`,`dark`,`light`,`light-dark`,`only-dark`,`only-light`]}],cursor:[{cursor:[`auto`,`default`,`pointer`,`wait`,`text`,`move`,`help`,`not-allowed`,`none`,`context-menu`,`progress`,`cell`,`crosshair`,`vertical-text`,`alias`,`copy`,`no-drop`,`grab`,`grabbing`,`all-scroll`,`col-resize`,`row-resize`,`n-resize`,`e-resize`,`s-resize`,`w-resize`,`ne-resize`,`nw-resize`,`se-resize`,`sw-resize`,`ew-resize`,`ns-resize`,`nesw-resize`,`nwse-resize`,`zoom-in`,`zoom-out`,G,W]}],"field-sizing":[{"field-sizing":[`fixed`,`content`]}],"pointer-events":[{"pointer-events":[`auto`,`none`]}],resize:[{resize:[`none`,``,`y`,`x`]}],"scroll-behavior":[{scroll:[`auto`,`smooth`]}],"scrollbar-thumb-color":[{"scrollbar-thumb":I()}],"scrollbar-track-color":[{"scrollbar-track":I()}],"scrollbar-gutter":[{"scrollbar-gutter":[`auto`,`stable`,`both`]}],"scrollbar-w":[{scrollbar:[`auto`,`thin`,`none`]}],"scroll-m":[{"scroll-m":w()}],"scroll-mx":[{"scroll-mx":w()}],"scroll-my":[{"scroll-my":w()}],"scroll-ms":[{"scroll-ms":w()}],"scroll-me":[{"scroll-me":w()}],"scroll-mbs":[{"scroll-mbs":w()}],"scroll-mbe":[{"scroll-mbe":w()}],"scroll-mt":[{"scroll-mt":w()}],"scroll-mr":[{"scroll-mr":w()}],"scroll-mb":[{"scroll-mb":w()}],"scroll-ml":[{"scroll-ml":w()}],"scroll-p":[{"scroll-p":w()}],"scroll-px":[{"scroll-px":w()}],"scroll-py":[{"scroll-py":w()}],"scroll-ps":[{"scroll-ps":w()}],"scroll-pe":[{"scroll-pe":w()}],"scroll-pbs":[{"scroll-pbs":w()}],"scroll-pbe":[{"scroll-pbe":w()}],"scroll-pt":[{"scroll-pt":w()}],"scroll-pr":[{"scroll-pr":w()}],"scroll-pb":[{"scroll-pb":w()}],"scroll-pl":[{"scroll-pl":w()}],"snap-align":[{snap:[`start`,`end`,`center`,`align-none`]}],"snap-stop":[{snap:[`normal`,`always`]}],"snap-type":[{snap:[`none`,`x`,`y`,`both`]}],"snap-strictness":[{snap:[`mandatory`,`proximity`]}],touch:[{touch:[`auto`,`none`,`manipulation`]}],"touch-x":[{"touch-pan":[`x`,`left`,`right`]}],"touch-y":[{"touch-pan":[`y`,`up`,`down`]}],"touch-pz":[`touch-pinch-zoom`],select:[{select:[`none`,`text`,`all`,`auto`]}],"will-change":[{"will-change":[`auto`,`scroll`,`contents`,`transform`,G,W]}],fill:[{fill:[`none`,...I()]}],"stroke-w":[{stroke:[Je,pt,ot,st]}],stroke:[{stroke:[`none`,...I()]}],"forced-color-adjust":[{"forced-color-adjust":[`auto`,`none`]}]},conflictingClassGroups:{"container-named":[`container-type`],overflow:[`overflow-x`,`overflow-y`],overscroll:[`overscroll-x`,`overscroll-y`],inset:[`inset-x`,`inset-y`,`inset-bs`,`inset-be`,`start`,`end`,`top`,`right`,`bottom`,`left`],"inset-x":[`start`,`end`,`right`,`left`],"inset-y":[`inset-bs`,`inset-be`,`top`,`bottom`],flex:[`basis`,`grow`,`shrink`],gap:[`gap-x`,`gap-y`],p:[`px`,`py`,`ps`,`pe`,`pbs`,`pbe`,`pt`,`pr`,`pb`,`pl`],px:[`ps`,`pe`,`pr`,`pl`],py:[`pbs`,`pbe`,`pt`,`pb`],m:[`mx`,`my`,`ms`,`me`,`mbs`,`mbe`,`mt`,`mr`,`mb`,`ml`],mx:[`ms`,`me`,`mr`,`ml`],my:[`mbs`,`mbe`,`mt`,`mb`],size:[`w`,`h`],"font-size":[`leading`],"fvn-normal":[`fvn-ordinal`,`fvn-slashed-zero`,`fvn-figure`,`fvn-spacing`,`fvn-fraction`],"fvn-ordinal":[`fvn-normal`],"fvn-slashed-zero":[`fvn-normal`],"fvn-figure":[`fvn-normal`],"fvn-spacing":[`fvn-normal`],"fvn-fraction":[`fvn-normal`],"line-clamp":[`display`,`overflow`],rounded:[`rounded-s`,`rounded-e`,`rounded-t`,`rounded-r`,`rounded-b`,`rounded-l`,`rounded-ss`,`rounded-se`,`rounded-ee`,`rounded-es`,`rounded-tl`,`rounded-tr`,`rounded-br`,`rounded-bl`],"rounded-s":[`rounded-ss`,`rounded-es`],"rounded-e":[`rounded-se`,`rounded-ee`],"rounded-t":[`rounded-tl`,`rounded-tr`],"rounded-r":[`rounded-tr`,`rounded-br`],"rounded-b":[`rounded-br`,`rounded-bl`],"rounded-l":[`rounded-tl`,`rounded-bl`],"border-spacing":[`border-spacing-x`,`border-spacing-y`],"border-w":[`border-w-x`,`border-w-y`,`border-w-s`,`border-w-e`,`border-w-bs`,`border-w-be`,`border-w-t`,`border-w-r`,`border-w-b`,`border-w-l`],"border-w-x":[`border-w-s`,`border-w-e`,`border-w-r`,`border-w-l`],"border-w-y":[`border-w-bs`,`border-w-be`,`border-w-t`,`border-w-b`],"border-color":[`border-color-x`,`border-color-y`,`border-color-s`,`border-color-e`,`border-color-bs`,`border-color-be`,`border-color-t`,`border-color-r`,`border-color-b`,`border-color-l`],"border-color-x":[`border-color-s`,`border-color-e`,`border-color-r`,`border-color-l`],"border-color-y":[`border-color-bs`,`border-color-be`,`border-color-t`,`border-color-b`],translate:[`translate-x`,`translate-y`,`translate-none`],"translate-none":[`translate`,`translate-x`,`translate-y`,`translate-z`],"scroll-m":[`scroll-mx`,`scroll-my`,`scroll-ms`,`scroll-me`,`scroll-mbs`,`scroll-mbe`,`scroll-mt`,`scroll-mr`,`scroll-mb`,`scroll-ml`],"scroll-mx":[`scroll-ms`,`scroll-me`,`scroll-mr`,`scroll-ml`],"scroll-my":[`scroll-mbs`,`scroll-mbe`,`scroll-mt`,`scroll-mb`],"scroll-p":[`scroll-px`,`scroll-py`,`scroll-ps`,`scroll-pe`,`scroll-pbs`,`scroll-pbe`,`scroll-pt`,`scroll-pr`,`scroll-pb`,`scroll-pl`],"scroll-px":[`scroll-ps`,`scroll-pe`,`scroll-pr`,`scroll-pl`],"scroll-py":[`scroll-pbs`,`scroll-pbe`,`scroll-pt`,`scroll-pb`],touch:[`touch-x`,`touch-y`,`touch-pz`],"touch-x":[`touch`],"touch-y":[`touch`],"touch-pz":[`touch`]},conflictingClassGroupModifiers:{"font-size":[`leading`]},postfixLookupClassGroups:[`container-type`],orderSensitiveModifiers:[`*`,`**`,`after`,`backdrop`,`before`,`details-content`,`file`,`first-letter`,`first-line`,`marker`,`placeholder`,`selection`]}});function jt(...e){return At(ne(e))}var Mt=s((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.fragment`);function r(e,n,r){var i=null;if(r!==void 0&&(i=``+r),n.key!==void 0&&(i=``+n.key),`key`in n)for(var a in r={},n)a!==`key`&&(r[a]=n[a]);else r=n;return n=r.ref,{$$typeof:t,type:e,key:i,ref:n===void 0?null:n,props:r}}e.Fragment=n,e.jsx=r,e.jsxs=r})),K=s(((e,t)=>{t.exports=Mt()}))(),Nt=ae(`inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive`,{variants:{variant:{default:`bg-primary text-primary-foreground shadow-xs hover:bg-primary/90`,destructive:`bg-destructive text-white shadow-xs hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60`,outline:`border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50`,secondary:`bg-secondary text-secondary-foreground shadow-xs hover:bg-secondary/80`,ghost:`hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50`,link:`text-primary underline-offset-4 hover:underline`},size:{default:`h-9 px-4 py-2 has-[>svg]:px-3`,sm:`h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5`,lg:`h-10 rounded-md px-6 has-[>svg]:px-4`,icon:`size-9`}},defaultVariants:{variant:`default`,size:`default`}});function q({className:e,variant:t,size:n,asChild:r=!1,...i}){return(0,K.jsx)(r?k:`button`,{"data-slot":`button`,className:jt(Nt({variant:t,size:n,className:e})),...i})}var Pt=ae(`inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2`,{variants:{variant:{default:`border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80`,secondary:`border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80`,destructive:`border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80`,outline:`text-foreground`}},defaultVariants:{variant:`default`}});function Ft({className:e,variant:t,...n}){return(0,K.jsx)(`div`,{className:jt(Pt({variant:t}),e),...n})}var It=Object.defineProperty,Lt=(e,t)=>It(e,`name`,{value:t,configurable:!0}),Rt=!!(typeof window<`u`&&window.document&&window.document.createElement);function J(e,t,{checkForDefaultPrevented:n=!0}={}){return Lt(function(r){if(e?.(r),n===!1||!r||!r.defaultPrevented)return t?.(r)},`handleEvent`)}Lt(J,`composeEventHandlers`);function zt(e){if(!Rt)throw Error(`Cannot access window outside of the DOM`);return e?.ownerDocument?.defaultView??window}Lt(zt,`getOwnerWindow`);function Bt(e){if(!Rt)throw Error(`Cannot access document outside of the DOM`);return e?.ownerDocument??document}Lt(Bt,`getOwnerDocument`);function Vt(e,t=!1){let{activeElement:n}=Bt(e);if(!n?.nodeName)return null;if(Ht(n)&&n.contentDocument)return Vt(n.contentDocument.body,t);if(t){let e=n.getAttribute(`aria-activedescendant`);if(e){let t=Bt(n).getElementById(e);if(t)return t}}return n}Lt(Vt,`getActiveElement`);function Ht(e){return e.tagName===`IFRAME`}Lt(Ht,`isFrame`);var Ut=Object.defineProperty,Wt=(e,t)=>Ut(e,`name`,{value:t,configurable:!0});function Gt(e,t){let n=y.createContext(t);n.displayName=e+`Context`;let r=Wt(e=>{let{children:t,...r}=e,i=y.useMemo(()=>r,Object.values(r));return(0,K.jsx)(n.Provider,{value:i,children:t})},`Provider`);r.displayName=e+`Provider`;function i(r,i={}){let{optional:a=!1}=i,o=y.useContext(n);if(o)return o;if(t!==void 0)return t;if(!a)throw Error(`\`${r}\` must be used within \`${e}\``)}return Wt(i,`useContext`),[r,i]}Wt(Gt,`createContext`);function Kt(e,t=[]){let n=[];function r(t,r){let i=y.createContext(r);i.displayName=t+`Context`;let a=n.length;n=[...n,r];let o=Wt(t=>{let{scope:n,children:r,...o}=t,s=n?.[e]?.[a]||i,c=y.useMemo(()=>o,Object.values(o));return(0,K.jsx)(s.Provider,{value:c,children:r})},`Provider`);o.displayName=t+`Provider`;function s(n,o,s={}){let{optional:c=!1}=s,l=o?.[e]?.[a]||i,u=y.useContext(l);if(u)return u;if(r!==void 0)return r;if(!c)throw Error(`\`${n}\` must be used within \`${t}\``)}return Wt(s,`useContext`),[o,s]}Wt(r,`createContext`);let i=Wt(()=>{let t=n.map(e=>y.createContext(e));return Wt(function(n){let r=n?.[e]||t;return y.useMemo(()=>({[`__scope${e}`]:{...n,[e]:r}}),[n,r])},`useScope`)},`createScope`);return i.scopeName=e,[r,qt(i,...t)]}Wt(Kt,`createContextScope`);function qt(...e){let t=e[0];if(e.length===1)return t;let n=Wt(()=>{let n=e.map(e=>({useScope:e(),scopeName:e.scopeName}));return Wt(function(e){let r=n.reduce((t,{useScope:n,scopeName:r})=>{let i=n(e)[`__scope${r}`];return{...t,...i}},{});return y.useMemo(()=>({[`__scope${t.scopeName}`]:r}),[r])},`useComposedScopes`)},`createScope`);return n.scopeName=t.scopeName,n}Wt(qt,`composeContextScopes`);var Jt=globalThis?.document?y.useLayoutEffect:()=>{},Yt=Object.defineProperty,Xt=(e,t)=>Yt(e,`name`,{value:t,configurable:!0}),Zt=y.useEffectEvent,Qt=y.useInsertionEffect;function $t(e){if(typeof Zt==`function`)return Zt(e);let t=y.useRef(()=>{throw Error(`Cannot call an event handler while rendering.`)});return typeof Qt==`function`?Qt(()=>{t.current=e}):Jt(()=>{t.current=e}),y.useMemo(()=>((...e)=>t.current?.(...e)),[])}Xt($t,`useEffectEvent`);var en=Object.defineProperty,tn=(e,t)=>en(e,`name`,{value:t,configurable:!0}),nn=y.useInsertionEffect||Jt;function rn({prop:e,defaultProp:t,onChange:n=tn(()=>{},`onChange`),caller:r}){let[i,a,o]=an({defaultProp:t,onChange:n}),s=e!==void 0;return[s?e:i,y.useCallback(t=>{if(s){let n=on(t)?t(e):t;n!==e&&o.current?.(n)}else a(t)},[s,e,a,o])]}tn(rn,`useControllableState`);function an({defaultProp:e,onChange:t}){let[n,r]=y.useState(e),i=y.useRef(n),a=y.useRef(t);return nn(()=>{a.current=t},[t]),y.useEffect(()=>{i.current!==n&&(a.current?.(n),i.current=n)},[n,i]),[n,r,a]}tn(an,`useUncontrolledState`);function on(e){return typeof e==`function`}tn(on,`isFunction`);var sn=Symbol(`RADIX:SYNC_STATE`);function cn(e,t,n,r){let{prop:i,defaultProp:a,onChange:o,caller:s}=t,c=i!==void 0,l=$t(o),u=[{...n,state:a}];r&&u.push(r);let[d,f]=y.useReducer((t,n)=>{if(n.type===sn)return{...t,state:n.state};let r=e(t,n);return c&&!Object.is(r.state,t.state)&&l(r.state),r},...u),p=d.state,m=y.useRef(p);y.useEffect(()=>{m.current!==p&&(m.current=p,c||l(p))},[p,m,c]);let h=y.useMemo(()=>i===void 0?d:{...d,state:i},[d,i]);return y.useEffect(()=>{c&&!Object.is(i,d.state)&&f({type:sn,state:i})},[i,d.state,c]),[h,f]}tn(cn,`useControllableStateReducer`);var ln=u(g(),1),un=Object.defineProperty,dn=(e,t)=>un(e,`name`,{value:t,configurable:!0}),Y=[`a`,`button`,`div`,`form`,`h2`,`h3`,`img`,`input`,`label`,`li`,`nav`,`ol`,`p`,`select`,`span`,`svg`,`ul`].reduce((e,t)=>{let n=O(`Primitive.${t}`),r=y.forwardRef((e,r)=>{let{asChild:i,...a}=e,o=i?n:t;return typeof window<`u`&&(window[Symbol.for(`radix-ui`)]=!0),(0,K.jsx)(o,{...a,ref:r})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function fn(e,t){e&&ln.flushSync(()=>e.dispatchEvent(t))}dn(fn,`dispatchDiscreteCustomEvent`);var pn=Object.defineProperty,mn=(e,t)=>pn(e,`name`,{value:t,configurable:!0});function hn(e){let t=e+`CollectionProvider`,[n,r]=Kt(t),[i,a]=n(t,{collectionRef:{current:null},itemMap:new Map}),o=mn(e=>{let{scope:t,children:n}=e,r=y.useRef(null),a=y.useRef(new Map).current;return(0,K.jsx)(i,{scope:t,itemMap:a,collectionRef:r,children:n})},`CollectionProvider`);o.displayName=t;let s=e+`CollectionSlot`,c=O(s),l=y.forwardRef((e,t)=>{let{scope:n,children:r}=e,i=T(t,a(s,n).collectionRef);return(0,K.jsx)(c,{ref:i,children:r})});l.displayName=s;let u=e+`CollectionItemSlot`,d=`data-radix-collection-item`,f=O(u),p=y.forwardRef((e,t)=>{let{scope:n,children:r,...i}=e,o=y.useRef(null),s=T(t,o),c=a(u,n);return y.useEffect(()=>(c.itemMap.set(o,{ref:o,...i}),()=>void c.itemMap.delete(o))),(0,K.jsx)(f,{[d]:``,ref:s,children:r})});p.displayName=u;function m(t){let n=a(e+`CollectionConsumer`,t);return y.useCallback(()=>{let e=n.collectionRef.current;if(!e)return[];let t=Array.from(e.querySelectorAll(`[${d}]`));return Array.from(n.itemMap.values()).sort((e,n)=>t.indexOf(e.ref.current)-t.indexOf(n.ref.current))},[n.collectionRef,n.itemMap])}return mn(m,`useCollection`),[{Provider:o,Slot:l,ItemSlot:p},m,r]}mn(hn,`createCollection`);var gn=new WeakMap,_n=class e extends Map{static{mn(this,`OrderedDict`)}#e;constructor(e){super(e),this.#e=[...super.keys()],gn.set(this,!0)}set(e,t){return gn.get(this)&&!this.has(e)&&this.#e.push(e),super.set(e,t),this}insert(e,t,n){let r=this.has(t),i=r?this.size:this.size+1,a=bn(e),o=a>=0?Math.min(a,i-1):Math.max(i+a,0);if(r?this.#e.indexOf(t)===o:o===this.size)return this.set(t,n),this;let s=this.#e.filter(e=>e!==t);s.splice(o,0,t);let c=s.map(e=>[e,e===t?n:this.get(e)]);this.clear();for(let[e,t]of c)this.set(e,t);return this}with(t,n,r){let i=new e(this);return i.insert(t,n,r),i}before(e){let t=this.#e.indexOf(e)-1;if(!(t<0))return this.entryAt(t)}setBefore(e,t,n){let r=this.#e.indexOf(e);if(r===-1)return this;let i=this.#e.indexOf(t),a=i!==-1&&i=this.size&&(r=this.size-1),this.at(r)}keyFrom(e,t){let n=this.indexOf(e);if(n===-1)return;let r=n+t;return r<0&&(r=0),r>=this.size&&(r=this.size-1),this.keyAt(r)}find(e,t){let n=0;for(let r of this){if(Reflect.apply(e,t,[r,n,this]))return r;n++}}findIndex(e,t){let n=0;for(let r of this){if(Reflect.apply(e,t,[r,n,this]))return n;n++}return-1}filter(t,n){let r=[],i=0;for(let e of this)Reflect.apply(t,n,[e,i,this])&&r.push(e),i++;return new e(r)}map(t,n){let r=[],i=0;for(let e of this)r.push([e[0],Reflect.apply(t,n,[e,i,this])]),i++;return new e(r)}reduce(...e){let[t,n]=e,r=e.length>1;if(!r&&this.size===0)throw TypeError(`Reduce of empty OrderedDict with no initial value`);let i=0,a=n;for(let e of this)a=i===0&&!r?e:Reflect.apply(t,this,[a,e,i,this]),i++;return a}reduceRight(...e){let[t,n]=e,r=e.length>1;if(!r&&this.size===0)throw TypeError(`Reduce of empty OrderedDict with no initial value`);let i=n;for(let e=this.size-1;e>=0;e--){let n=this.entryAt(e);i=e===this.size-1&&!r?n:Reflect.apply(t,this,[i,n,e,this])}return i}sort(e){if(typeof e!=`function`)throw TypeError(`OrderedDict.sort requires a compare function`);let t=[...this.entries()].sort(e);this.clear();for(let[e,n]of t)this.set(e,n);return this}toSorted(t){if(typeof t!=`function`)throw TypeError(`OrderedDict.toSorted requires a compare function`);let n=[...this.entries()].sort(t);return new e(n)}toReversed(){let t=new e;for(let e=this.size-1;e>=0;e--){let n=this.keyAt(e),r=this.get(n);t.set(n,r)}return t}toSpliced(...t){let n=[...this.entries()];return n.splice(...t),new e(n)}slice(t,n){let r=new e;for(let e of this.#e.slice(t,n))r.set(e,this.get(e));return r}every(e,t){let n=0;for(let r of this){if(!Reflect.apply(e,t,[r,n,this]))return!1;n++}return!0}some(e,t){let n=0;for(let r of this){if(Reflect.apply(e,t,[r,n,this]))return!0;n++}return!1}};function vn(e,t){if(`at`in Array.prototype)return Array.prototype.at.call(e,t);let n=yn(e,t);return n===-1?void 0:e[n]}mn(vn,`at`);function yn(e,t){let n=e.length,r=bn(t),i=r>=0?r:n+r;return i<0||i>=n?-1:i}mn(yn,`toSafeIndex`);function bn(e){return e!==e||e===0?0:Math.trunc(e)}mn(bn,`toSafeInteger`);function xn(e){let t=e+`CollectionProvider`,[n,r]=Kt(t),[i,a]=n(t);i.displayName=e+`CollectionStableContextProvider`;let[o,s]=n(t);o.displayName=e+`CollectionStatefulContextProvider`;let c=mn(({state:e,...t})=>e?(0,K.jsx)(u,{...t,state:e}):(0,K.jsx)(l,{...t}),`CollectionProvider`);c.displayName=t;let l=mn(e=>{let t=_();return(0,K.jsx)(u,{...e,state:t})},`CollectionInit`);l.displayName=e+`CollectionInit`;let u=mn(e=>{let{scope:t,children:n,state:r}=e,a=y.useRef(null),[s,c]=y.useState(null),l=T(a,c),[u,d]=r,f=y.useRef(new _n),p=y.useCallback(()=>{let e=f.current;return wn(e)||e.sort(Tn),e},[]);return y.useEffect(()=>{if(!s)return;let e=En(()=>{d(e=>{let t=e.toSorted(Tn);return t.some(([t],n)=>e.keyAt(n)!==t)?t:e})});return e.observe(s,{childList:!0,subtree:!0}),()=>{e.disconnect()}},[s,d]),(0,K.jsx)(i,{scope:t,collectionElementRef:l,collectionElementRefObject:a,getCollection:p,setCollection:d,registryRef:f,children:(0,K.jsx)(o,{scope:t,collectionElement:s,collection:u,children:n})})},`CollectionProviderImpl`);u.displayName=e+`CollectionProviderImpl`;let d=e+`CollectionSlot`,f=O(d),p=y.forwardRef((e,t)=>{let{scope:n,children:r}=e,i=T(t,a(d,n).collectionElementRef);return(0,K.jsx)(f,{ref:i,children:r})});p.displayName=d;let m=e+`CollectionItemSlot`,h=O(m),g=y.forwardRef((e,t)=>{let{scope:n,children:r,...i}=e,o=y.useRef(null),{setCollection:s,registryRef:c}=a(m,n),l=y.useRef(i);Sn(l.current,i)||(l.current=i);let u=l.current,d=T(t,y.useCallback(e=>{let t=c.current;e?t.set(e,{...l.current,element:e}):o.current&&t.delete(o.current)},[c]),o);Jt(()=>{let e=o.current,t=c.current;e&&t.has(e)&&t.set(e,{...u,element:e})},[u,c]);let f=y.useRef(null);return y.useEffect(()=>{let e=o.current,t=f.current;((t?.element??null)!==e||e&&t?.itemData!==u)&&(f.current=e?{element:e,itemData:u}:null,s(n=>{let r=new _n(n);return t&&t.element!==e&&r.delete(t.element),e&&r.set(e,{...u,element:e}),r.sort(Tn)}))}),y.useEffect(()=>()=>{let e=f.current;f.current=null,e&&s(t=>{if(!t.has(e.element))return t;let n=new _n(t);return n.delete(e.element),n})},[s]),(0,K.jsx)(h,{"data-radix-collection-item":``,ref:d,children:r})});g.displayName=m;function _(){return y.useState(new _n)}mn(_,`useInitCollection`);function v(t){let{collection:n}=s(e+`CollectionConsumer`,t);return n}mn(v,`useCollection`);function b(t){let{getCollection:n}=a(e+`CollectionConsumer`,t);return n}return mn(b,`useGetCollection`),[{Provider:c,Slot:p,ItemSlot:g},{createCollectionScope:r,useCollection:v,useGetCollection:b,useInitCollection:_}]}mn(xn,`createCollection`);function Sn(e,t){if(e===t)return!0;if(typeof e!=`object`||typeof t!=`object`||e==null||t==null)return!1;let n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let r of n)if(!Object.prototype.hasOwnProperty.call(t,r)||e[r]!==t[r])return!1;return!0}mn(Sn,`shallowEqual`);function Cn(e,t){return!!(t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_PRECEDING)}mn(Cn,`isElementPreceding`);function wn(e){let t;for(let n of e.keys()){if(t){let e=t.compareDocumentPosition(n);if(!(e&Node.DOCUMENT_POSITION_DISCONNECTED)&&e&Node.DOCUMENT_POSITION_PRECEDING)return!1}t=n}return!0}mn(wn,`isInDocumentOrder`);function Tn(e,t){return!e[1].element||!t[1].element?0:Cn(e[1].element,t[1].element)?-1:1}mn(Tn,`sortByDocumentPosition`);function En(e){return new MutationObserver(t=>{for(let n of t)if(n.type===`childList`){e();return}})}mn(En,`getChildListObserver`);var Dn=Object.defineProperty,On=(e,t)=>Dn(e,`name`,{value:t,configurable:!0}),kn={LTR:`ltr`,RTL:`rtl`},An=y.createContext(void 0);function jn(e){let t=y.useContext(An);return e||t||kn.LTR}On(jn,`useDirection`);var Mn=Object.defineProperty,Nn=(e,t)=>Mn(e,`name`,{value:t,configurable:!0}),Pn=y.useInsertionEffect;function Fn(e){let t=y.useRef(e);return typeof Pn==`function`?Pn(()=>{t.current=e}):Jt(()=>{t.current=e}),y.useMemo(()=>((...e)=>t.current?.(...e)),[])}Nn(Fn,`useCallbackRef`);var In=Object.defineProperty,Ln=(e,t)=>In(e,`name`,{value:t,configurable:!0}),Rn=`dismissableLayer.update`,zn=`dismissableLayer.pointerDownOutside`,Bn=`dismissableLayer.focusOutside`,Vn,Hn=y.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set,dismissableSurfaces:new Set}),Un=y.forwardRef(Ln(function(e,t){let{disableOutsidePointerEvents:n=!1,deferPointerDownOutside:r=!1,onEscapeKeyDown:i,onPointerDownOutside:a,onFocusOutside:o,onInteractOutside:s,onDismiss:c,...l}=e,u=y.useContext(Hn),[d,f]=y.useState(null),p=d?.ownerDocument??globalThis?.document,[,m]=y.useState({}),h=T(t,f),g=Array.from(u.layers),[_]=[...u.layersWithOutsidePointerEventsDisabled].slice(-1),v=_?g.indexOf(_):-1,b=d?g.indexOf(d):-1,x=u.layersWithOutsidePointerEventsDisabled.size>0,S=b>=v,C=y.useRef(!1),w=Kn(e=>{a?.(e),s?.(e),e.defaultPrevented||c?.()},{ownerDocument:p,deferPointerDownOutside:r,isDeferredPointerDownOutsideRef:C,dismissableSurfaces:u.dismissableSurfaces,shouldHandlePointerDownOutside:y.useCallback(e=>{if(!(e instanceof Node))return!1;let t=[...u.branches].some(t=>t.contains(e));return S&&!t},[u.branches,S])}),E=qn(e=>{if(r&&C.current)return;let t=e.target;[...u.branches].some(e=>e.contains(t))||(o?.(e),s?.(e),e.defaultPrevented||c?.())},p),D=d?b===g.length-1:!1,O=Fn(e=>{e.key===`Escape`&&(i?.(e),!e.defaultPrevented&&c&&(e.preventDefault(),c()))});return y.useEffect(()=>{if(D)return p.addEventListener(`keydown`,O,{capture:!0}),()=>p.removeEventListener(`keydown`,O,{capture:!0})},[p,D,O]),y.useEffect(()=>{if(d)return n&&(u.layersWithOutsidePointerEventsDisabled.size===0&&(Vn=p.body.style.pointerEvents,p.body.style.pointerEvents=`none`),u.layersWithOutsidePointerEventsDisabled.add(d)),u.layers.add(d),Jn(),()=>{n&&(u.layersWithOutsidePointerEventsDisabled.delete(d),u.layersWithOutsidePointerEventsDisabled.size===0&&(p.body.style.pointerEvents=Vn))}},[d,p,n,u]),y.useEffect(()=>()=>{d&&(u.layers.delete(d),u.layersWithOutsidePointerEventsDisabled.delete(d),Jn())},[d,u]),y.useEffect(()=>{let e=Ln(()=>m({}),`handleUpdate`);return document.addEventListener(Rn,e),()=>document.removeEventListener(Rn,e)},[]),(0,K.jsx)(Y.div,{...l,ref:h,style:{pointerEvents:x?S?`auto`:`none`:void 0,...e.style},onFocusCapture:J(e.onFocusCapture,E.onFocusCapture),onBlurCapture:J(e.onBlurCapture,E.onBlurCapture),onPointerDownCapture:J(e.onPointerDownCapture,w.onPointerDownCapture)})},`DismissableLayer`));function Wn(){let e=y.useContext(Hn),[t,n]=y.useState(null);return y.useEffect(()=>{if(t)return e.dismissableSurfaces.add(t),()=>{e.dismissableSurfaces.delete(t)}},[t,e.dismissableSurfaces]),n}Ln(Wn,`useDismissableLayerSurface`);var Gn=Ln(()=>!0,`IS_TRUE`);function Kn(e,t){let{ownerDocument:n=globalThis?.document,deferPointerDownOutside:r=!1,isDeferredPointerDownOutsideRef:i,dismissableSurfaces:a,shouldHandlePointerDownOutside:o=Gn}=t,s=Fn(e),c=y.useRef(!1),l=y.useRef(!1),u=y.useRef(new Map),d=y.useRef(()=>{});return y.useEffect(()=>{function e(){l.current=!1,i.current=!1,u.current.clear()}Ln(e,`resetOutsideInteraction`);function t(){return Array.from(u.current.values()).some(Boolean)}Ln(t,`isOutsideInteractionIntercepted`);function f(e){if(!l.current)return;let t=e.target;t instanceof Node&&[...a].some(e=>e.contains(t))||u.current.set(e.type,!0),e.type===`click`&&window.setTimeout(()=>{l.current&&d.current()},0)}Ln(f,`handleInteractionCapture`);function p(e){l.current&&u.current.set(e.type,!1)}Ln(p,`handleInteractionBubble`);let m=Ln(a=>{if(a.target&&!c.current){let f=function(){n.removeEventListener(`click`,d.current);let r=t();e(),r||Yn(zn,s,p,{discrete:!0})};if(Ln(f,`handleAndDispatchPointerDownOutsideEvent`),!o(a.target)){n.removeEventListener(`click`,d.current),e(),c.current=!1;return}let p={originalEvent:a};l.current=!0,i.current=r&&a.button===0,u.current.clear(),!r||a.button!==0?f():(n.removeEventListener(`click`,d.current),d.current=f,n.addEventListener(`click`,d.current,{once:!0}))}else n.removeEventListener(`click`,d.current),e();c.current=!1},`handlePointerDown`),h=[`pointerup`,`mousedown`,`mouseup`,`touchstart`,`touchend`,`click`];for(let e of h)n.addEventListener(e,f,!0),n.addEventListener(e,p);let g=window.setTimeout(()=>{n.addEventListener(`pointerdown`,m)},0);return()=>{window.clearTimeout(g),n.removeEventListener(`pointerdown`,m),n.removeEventListener(`click`,d.current);for(let e of h)n.removeEventListener(e,f,!0),n.removeEventListener(e,p)}},[n,s,r,i,a,o]),{onPointerDownCapture:Ln(()=>c.current=!0,`onPointerDownCapture`)}}Ln(Kn,`usePointerDownOutside`);function qn(e,t=globalThis?.document){let n=Fn(e),r=y.useRef(!1);return y.useEffect(()=>{let e=Ln(e=>{e.target&&!r.current&&Yn(Bn,n,{originalEvent:e},{discrete:!1})},`handleFocus`);return t.addEventListener(`focusin`,e),()=>t.removeEventListener(`focusin`,e)},[t,n]),{onFocusCapture:Ln(()=>r.current=!0,`onFocusCapture`),onBlurCapture:Ln(()=>r.current=!1,`onBlurCapture`)}}Ln(qn,`useFocusOutside`);function Jn(){let e=new CustomEvent(Rn);document.dispatchEvent(e)}Ln(Jn,`dispatchUpdate`);function Yn(e,t,n,{discrete:r}){let i=n.originalEvent.target,a=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&i.addEventListener(e,t,{once:!0}),r?fn(i,a):i.dispatchEvent(a)}Ln(Yn,`handleAndDispatchCustomEvent`);var Xn=Object.defineProperty,Zn=(e,t)=>Xn(e,`name`,{value:t,configurable:!0}),Qn=0,$n=null;function er(e){return tr(),e.children}Zn(er,`FocusGuards`);function tr(){y.useEffect(()=>{$n||={start:nr(),end:nr()};let{start:e,end:t}=$n;return document.body.firstElementChild!==e&&document.body.insertAdjacentElement(`afterbegin`,e),document.body.lastElementChild!==t&&document.body.insertAdjacentElement(`beforeend`,t),Qn++,()=>{Qn===1&&($n?.start.remove(),$n?.end.remove(),$n=null),Qn=Math.max(0,Qn-1)}},[])}Zn(tr,`useFocusGuards`);function nr(){let e=document.createElement(`span`);return e.setAttribute(`data-radix-focus-guard`,``),e.tabIndex=0,e.style.outline=`none`,e.style.opacity=`0`,e.style.position=`fixed`,e.style.pointerEvents=`none`,e}Zn(nr,`createFocusGuard`);var rr=Object.defineProperty,ir=(e,t)=>rr(e,`name`,{value:t,configurable:!0}),ar=`focusScope.autoFocusOnMount`,or=`focusScope.autoFocusOnUnmount`,sr={bubbles:!1,cancelable:!0},cr=y.forwardRef(ir(function(e,t){let{loop:n=!1,trapped:r=!1,branches:i,onMountAutoFocus:a,onUnmountAutoFocus:o,...s}=e,[c,l]=y.useState(null),u=Fn(a),d=Fn(o),f=y.useRef(null),p=T(t,l),m=y.useRef(i);y.useEffect(()=>{m.current=i});let h=y.useCallback(e=>e?c?.contains(e)?!0:!!m.current?.some(t=>t.contains(e)):!1,[c]),g=y.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;y.useEffect(()=>{if(r){let e=function(e){if(g.paused||!c)return;let t=e.target;h(t)?f.current=t:yr(f.current,{select:!0})},t=function(e){if(g.paused||!c)return;let t=e.relatedTarget;t!==null&&(h(t)||yr(f.current,{select:!0}))},n=function(e){if(document.activeElement===document.body)for(let t of e)t.removedNodes.length>0&&yr(c)};ir(e,`handleFocusIn`),ir(t,`handleFocusOut`),ir(n,`handleMutations`),document.addEventListener(`focusin`,e),document.addEventListener(`focusout`,t);let r=new MutationObserver(n);return c&&r.observe(c,{childList:!0,subtree:!0}),()=>{document.removeEventListener(`focusin`,e),document.removeEventListener(`focusout`,t),r.disconnect()}}},[r,c,g.paused,h]),y.useEffect(()=>{if(c){br.add(g);let e=document.activeElement;if(!c.contains(e)){let t=new CustomEvent(ar,sr);c.addEventListener(ar,u),c.dispatchEvent(t),t.defaultPrevented||(pr(Cr(hr(c)),{select:!0}),document.activeElement===e&&yr(c))}return()=>{c.removeEventListener(ar,u);let t=c.ownerDocument,n=CustomEvent;setTimeout(()=>{let r=new n(or,sr);c.addEventListener(or,d),c.dispatchEvent(r),r.defaultPrevented||yr(e??t.body,{select:!0}),c.removeEventListener(or,d),br.remove(g)},0)}}},[c,u,d,g]);let _=y.useCallback(e=>{if(!n&&!r||g.paused)return;let t=e.key===`Tab`&&!e.altKey&&!e.ctrlKey&&!e.metaKey,i=document.activeElement;if(t&&i){let t=e.currentTarget,[r,a]=mr(t);r&&a?!e.shiftKey&&i===a?(e.preventDefault(),n&&yr(r,{select:!0})):e.shiftKey&&i===r&&(e.preventDefault(),n&&yr(a,{select:!0})):i===t&&e.preventDefault()}},[n,r,g.paused]);return(0,K.jsx)(Y.div,{tabIndex:-1,...s,ref:p,onKeyDown:_})},`FocusScope`)),lr=y.createContext(null);function ur({registry:e,children:t}){return e?(0,K.jsx)(lr.Provider,{value:e,children:t}):t}ir(ur,`FocusScopeBranchProvider`);function dr(){let[e,t]=y.useState([]);return{nodes:e,registry:y.useMemo(()=>({add:ir(e=>t(t=>t.includes(e)?t:[...t,e]),`add`),remove:ir(e=>t(t=>t.filter(t=>t!==e)),`remove`)}),[])}}ir(dr,`useFocusScopeBranchRegistry`);function fr(e){let t=y.useContext(lr);y.useEffect(()=>{if(e&&t)return t.add(e),()=>t.remove(e)},[e,t])}ir(fr,`useFocusScopeBranch`);function pr(e,{select:t=!1}={}){let n=document.activeElement;for(let r of e)if(yr(r,{select:t}),document.activeElement!==n)return}ir(pr,`focusFirst`);function mr(e){let t=hr(e);return[gr(t,e),gr(t.reverse(),e)]}ir(mr,`getTabbableEdges`);function hr(e){let t=[],n=e.ownerDocument.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:ir(e=>{let t=e.tagName===`INPUT`&&e.type===`hidden`;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP},`acceptNode`)});for(;n.nextNode();)t.push(n.currentNode);return t}ir(hr,`getTabbableCandidates`);function gr(e,t){let n=typeof t.checkVisibility==`function`&&t.checkVisibility({checkVisibilityCSS:!0});for(let r of e)if(!(n?!r.checkVisibility({checkVisibilityCSS:!0}):_r(r,{upTo:t})))return r}ir(gr,`findVisible`);function _r(e,{upTo:t}){if(getComputedStyle(e).visibility===`hidden`)return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display===`none`)return!0;e=e.parentElement}return!1}ir(_r,`isHidden`);function vr(e){return e.tagName===`INPUT`&&typeof e.select==`function`}ir(vr,`isSelectableInput`);function yr(e,{select:t=!1}={}){if(e&&e.focus){let n=(e.ownerDocument??document).activeElement;e.focus({preventScroll:!0}),e!==n&&vr(e)&&t&&e.select()}}ir(yr,`focus`);var br=xr();function xr(){let e=[];return{add(t){let n=e[0];t!==n&&n?.pause(),e=Sr(e,t),e.unshift(t)},remove(t){e=Sr(e,t),e[0]?.resume()}}}ir(xr,`createFocusScopesStack`);function Sr(e,t){let n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}ir(Sr,`arrayRemove`);function Cr(e){return e.filter(e=>e.tagName!==`A`)}ir(Cr,`removeLinks`);var wr=Object.defineProperty,Tr=(e,t)=>wr(e,`name`,{value:t,configurable:!0}),Er=y.useId||(()=>void 0),Dr=0;function Or(e){let[t,n]=y.useState(Er());return Jt(()=>{e||n(e=>e??String(Dr++))},[e]),e||(t?`radix-${t}`:``)}Tr(Or,`useId`);var kr=[`top`,`right`,`bottom`,`left`],Ar=Math.min,jr=Math.max,Mr=Math.round,Nr=Math.floor,Pr=e=>({x:e,y:e}),Fr={left:`right`,right:`left`,bottom:`top`,top:`bottom`};function Ir(e,t,n){return jr(e,Ar(t,n))}function Lr(e,t){return typeof e==`function`?e(t):e}function Rr(e){return e.split(`-`)[0]}function zr(e){return e.split(`-`)[1]}function Br(e){return e===`x`?`y`:`x`}function Vr(e){return e===`y`?`height`:`width`}function Hr(e){let t=e[0];return t===`t`||t===`b`?`y`:`x`}function Ur(e){return Br(Hr(e))}function Wr(e,t,n){n===void 0&&(n=!1);let r=zr(e),i=Ur(e),a=Vr(i),o=i===`x`?r===(n?`end`:`start`)?`right`:`left`:r===`start`?`bottom`:`top`;return t.reference[a]>t.floating[a]&&(o=$r(o)),[o,$r(o)]}function Gr(e){let t=$r(e);return[Kr(e),t,Kr(t)]}function Kr(e){return e.includes(`start`)?e.replace(`start`,`end`):e.replace(`end`,`start`)}var qr=[`left`,`right`],Jr=[`right`,`left`],Yr=[`top`,`bottom`],Xr=[`bottom`,`top`];function Zr(e,t,n){switch(e){case`top`:case`bottom`:return n?t?Jr:qr:t?qr:Jr;case`left`:case`right`:return t?Yr:Xr;default:return[]}}function Qr(e,t,n,r){let i=zr(e),a=Zr(Rr(e),n===`start`,r);return i&&(a=a.map(e=>e+`-`+i),t&&(a=a.concat(a.map(Kr)))),a}function $r(e){let t=Rr(e);return Fr[t]+e.slice(t.length)}function ei(e){return{top:e.top??0,right:e.right??0,bottom:e.bottom??0,left:e.left??0}}function ti(e){return typeof e==`number`?{top:e,right:e,bottom:e,left:e}:ei(e)}function ni(e){let{x:t,y:n,width:r,height:i}=e;return{width:r,height:i,top:n,left:t,right:t+r,bottom:n+i,x:t,y:n}}function ri(e,t,n){let{reference:r,floating:i}=e,a=Hr(t),o=Ur(t),s=Vr(o),c=Rr(t),l=a===`y`,u=r.x+r.width/2-i.width/2,d=r.y+r.height/2-i.height/2,f=r[s]/2-i[s]/2,p;switch(c){case`top`:p={x:u,y:r.y-i.height};break;case`bottom`:p={x:u,y:r.y+r.height};break;case`right`:p={x:r.x+r.width,y:d};break;case`left`:p={x:r.x-i.width,y:d};break;default:p={x:r.x,y:r.y}}let m=zr(t);return m&&(p[o]+=f*(m===`end`?1:-1)*(n&&l?-1:1)),p}async function ii(e,t){t===void 0&&(t={});let{x:n,y:r,platform:i,rects:a,elements:o,strategy:s}=e,{boundary:c=`clippingAncestors`,rootBoundary:l=`viewport`,elementContext:u=`floating`,altBoundary:d=!1,padding:f=0}=Lr(t,e),p=ti(f),m=o[d?u===`floating`?`reference`:`floating`:u],h=ni(await i.getClippingRect({element:await(i.isElement==null?void 0:i.isElement(m))??!0?m:m.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(o.floating)),boundary:c,rootBoundary:l,strategy:s})),g=u===`floating`?{x:n,y:r,width:a.floating.width,height:a.floating.height}:a.reference,_=await(i.getOffsetParent==null?void 0:i.getOffsetParent(o.floating)),v=await(i.isElement==null?void 0:i.isElement(_))&&await(i.getScale==null?void 0:i.getScale(_))||{x:1,y:1},y=ni(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:o,rect:g,offsetParent:_,strategy:s}):g);return{top:(h.top-y.top+p.top)/v.y,bottom:(y.bottom-h.bottom+p.bottom)/v.y,left:(h.left-y.left+p.left)/v.x,right:(y.right-h.right+p.right)/v.x}}var ai=50,oi=async(e,t,n)=>{let{placement:r=`bottom`,strategy:i=`absolute`,middleware:a=[],platform:o}=n,s=o.detectOverflow?o:{...o,detectOverflow:ii},c=await(o.isRTL==null?void 0:o.isRTL(t)),l=await o.getElementRects({reference:e,floating:t,strategy:i}),{x:u,y:d}=ri(l,r,c),f=r,p=0,m={};for(let n=0;n({name:`arrow`,options:e,async fn(t){let{x:n,y:r,placement:i,rects:a,platform:o,elements:s,middlewareData:c}=t,{element:l,padding:u=0}=Lr(e,t)||{};if(l==null)return{};let d=ti(u),f={x:n,y:r},p=Ur(i),m=Vr(p),h=await o.getDimensions(l),g=p===`y`,_=g?`top`:`left`,v=g?`bottom`:`right`,y=g?`clientHeight`:`clientWidth`,b=a.reference[m]+a.reference[p]-f[p]-a.floating[m],x=f[p]-a.reference[p],S=await(o.getOffsetParent==null?void 0:o.getOffsetParent(l)),C=S?S[y]:0;(!C||!await(o.isElement==null?void 0:o.isElement(S)))&&(C=s.floating[y]||a.floating[m]);let w=b/2-x/2,T=C/2-h[m]/2-1,E=Ar(d[_],T),D=Ar(d[v],T),O=C-h[m]-D,k=C/2-h[m]/2+w,A=Ir(E,k,O),j=!c.arrow&&zr(i)!=null&&k!==A&&a.reference[m]/2-(ke<=0)){let e=(i.flip?.index||0)+1,t=S[e];if(t&&(u!==`alignment`||_===Hr(t)||T.every(e=>Hr(e.placement)!==_||e.overflows[0]>0)))return{data:{index:e,overflows:T},reset:{placement:t}};let n=T.filter(e=>e.overflows[0]<=0).sort((e,t)=>e.overflows[1]-t.overflows[1])[0]?.placement;if(!n)switch(f){case`bestFit`:{let e=T.filter(e=>{if(x){let t=Hr(e.placement);return t===_||t===`y`}return!0}).map(e=>[e.placement,e.overflows.filter(e=>e>0).reduce((e,t)=>e+t,0)]).sort((e,t)=>e[1]-t[1])[0]?.[0];e&&(n=e);break}case`initialPlacement`:n=o}if(r!==n)return{reset:{placement:n}}}return{}}}};function li(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function ui(e){return kr.some(t=>e[t]>=0)}var di=function(e){return e===void 0&&(e={}),{name:`hide`,options:e,async fn(t){let{rects:n,platform:r}=t,{strategy:i=`referenceHidden`,...a}=Lr(e,t);switch(i){case`referenceHidden`:{let e=li(await r.detectOverflow(t,{...a,elementContext:`reference`}),n.reference);return{data:{referenceHiddenOffsets:e,referenceHidden:ui(e)}}}case`escaped`:{let e=li(await r.detectOverflow(t,{...a,altBoundary:!0}),n.floating);return{data:{escapedOffsets:e,escaped:ui(e)}}}default:return{}}}}},fi=new Set([`left`,`top`]);async function pi(e,t){let{placement:n,platform:r,elements:i}=e,a=await(r.isRTL==null?void 0:r.isRTL(i.floating)),o=Rr(n),s=zr(n),c=Hr(n)===`y`,l=fi.has(o)?-1:1,u=a&&c?-1:1,d=Lr(t,e),{mainAxis:f,crossAxis:p,alignmentAxis:m}=typeof d==`number`?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return s&&typeof m==`number`&&(p=s===`end`?m*-1:m),c?{x:p*u,y:f*l}:{x:f*l,y:p*u}}var mi=function(e){return e===void 0&&(e=0),{name:`offset`,options:e,async fn(t){var n;let{x:r,y:i,placement:a,middlewareData:o}=t,s=await pi(t,e);return a===o.offset?.placement&&(n=o.arrow)!=null&&n.alignmentOffset?{}:{x:r+s.x,y:i+s.y,data:{...s,placement:a}}}}},hi=function(e){return e===void 0&&(e={}),{name:`shift`,options:e,async fn(t){let{x:n,y:r,placement:i,platform:a}=t,{mainAxis:o=!0,crossAxis:s=!1,limiter:c={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...l}=Lr(e,t),u={x:n,y:r},d=await a.detectOverflow(t,l),f=Hr(i),p=Br(f),m=u[p],h=u[f],g=(e,t)=>Ir(t+d[e===`y`?`top`:`left`],t,t-d[e===`y`?`bottom`:`right`]);o&&(m=g(p,m)),s&&(h=g(f,h));let _=c.fn({...t,[p]:m,[f]:h});return{..._,data:{x:_.x-n,y:_.y-r,enabled:{[p]:o,[f]:s}}}}}},gi=function(e){return e===void 0&&(e={}),{options:e,fn(t){let{x:n,y:r,placement:i,rects:a,middlewareData:o}=t,{offset:s=0,mainAxis:c=!0,crossAxis:l=!0}=Lr(e,t),u={x:n,y:r},d=Hr(i),f=Br(d),p=u[f],m=u[d],h=Lr(s,t),g=typeof h==`number`?{mainAxis:h,crossAxis:0}:{mainAxis:h.mainAxis??0,crossAxis:h.crossAxis??0};if(c){let e=f===`y`?`height`:`width`,t=a.reference[f]-a.floating[e]+g.mainAxis,n=a.reference[f]+a.reference[e]-g.mainAxis;pn&&(p=n)}if(l){let e=f===`y`?`width`:`height`,t=fi.has(Rr(i)),n=a.reference[d]-a.floating[e]+(t&&o.offset?.[d]||0)+(t?0:g.crossAxis),r=a.reference[d]+a.reference[e]+(t?0:o.offset?.[d]||0)-(t?g.crossAxis:0);mr&&(m=r)}return{[f]:p,[d]:m}}}},_i=function(e){return e===void 0&&(e={}),{name:`size`,options:e,async fn(t){let{placement:n,rects:r,platform:i,elements:a}=t,{apply:o=()=>{},...s}=Lr(e,t),c=await i.detectOverflow(t,s),l=Rr(n),u=zr(n),d=Hr(n)===`y`,{width:f,height:p}=r.floating,m,h;l===`top`||l===`bottom`?(m=l,h=u===(await(i.isRTL==null?void 0:i.isRTL(a.floating))?`start`:`end`)?`left`:`right`):(h=l,m=u===`end`?`top`:`bottom`);let g=p-c.top-c.bottom,_=f-c.left-c.right,v=Ar(p-c[m],g),y=Ar(f-c[h],_),b=t.middlewareData.shift,x=!b,S=v,C=y;b!=null&&b.enabled.x&&(C=_),b!=null&&b.enabled.y&&(S=g),x&&!u&&(d?C=f-2*jr(c.left,c.right):S=p-2*jr(c.top,c.bottom)),await o({...t,availableWidth:C,availableHeight:S});let w=await i.getDimensions(a.floating);return f!==w.width||p!==w.height?{reset:{rects:!0}}:{}}}};function vi(){return typeof window<`u`}function yi(e){return Si(e)?(e.nodeName||``).toLowerCase():`#document`}function bi(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function xi(e){return((Si(e)?e.ownerDocument:e.document)||window.document)?.documentElement}function Si(e){return vi()?e instanceof Node||e instanceof bi(e).Node:!1}function Ci(e){return vi()?e instanceof Element||e instanceof bi(e).Element:!1}function wi(e){return vi()?e instanceof HTMLElement||e instanceof bi(e).HTMLElement:!1}function Ti(e){return!vi()||typeof ShadowRoot>`u`?!1:e instanceof ShadowRoot||e instanceof bi(e).ShadowRoot}function Ei(e){let{overflow:t,overflowX:n,overflowY:r,display:i}=Li(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&i!==`inline`&&i!==`contents`}function Di(e){return/^(table|td|th)$/.test(yi(e))}function Oi(e){try{if(e.matches(`:popover-open`))return!0}catch{}try{return e.matches(`:modal`)}catch{return!1}}var ki=/transform|translate|scale|rotate|perspective|filter/,Ai=/paint|layout|strict|content/,ji=e=>!!e&&e!==`none`,Mi;function Ni(e){let t=Ci(e)?Li(e):e;return ji(t.transform)||ji(t.translate)||ji(t.scale)||ji(t.rotate)||ji(t.perspective)||!Fi()&&(ji(t.backdropFilter)||ji(t.filter))||ki.test(t.willChange||``)||Ai.test(t.contain||``)}function Pi(e){let t=zi(e);for(;wi(t)&&!Ii(t);){if(Ni(t))return t;if(Oi(t))return null;t=zi(t)}return null}function Fi(){return Mi??=typeof CSS<`u`&&CSS.supports&&CSS.supports(`-webkit-backdrop-filter`,`none`),Mi}function Ii(e){return/^(html|body|#document)$/.test(yi(e))}function Li(e){return bi(e).getComputedStyle(e)}function Ri(e){return Ci(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function zi(e){if(yi(e)===`html`)return e;let t=e.assignedSlot||e.parentNode||Ti(e)&&e.host||xi(e);return Ti(t)?t.host:t}function Bi(e){let t=zi(e);return Ii(t)?(e.ownerDocument||e).body:wi(t)&&Ei(t)?t:Bi(t)}function Vi(e,t,n){t===void 0&&(t=[]),n===void 0&&(n=!0);let r=Bi(e),i=r===e.ownerDocument?.body,a=bi(r);if(i){let e=Hi(a);return t.concat(a,a.visualViewport||[],Ei(r)?r:[],e&&n?Vi(e):[])}return t.concat(r,Vi(r,[],n))}function Hi(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function Ui(e){let t=Li(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,i=wi(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r,s=Mr(n)!==a||Mr(r)!==o;return s&&(n=a,r=o),{width:n,height:r,$:s}}function Wi(e){return Ci(e)?e:e.contextElement}function Gi(e){let t=Wi(e);if(!wi(t))return Pr(1);let n=t.getBoundingClientRect(),{width:r,height:i,$:a}=Ui(t),o=(a?Mr(n.width):n.width)/r,s=(a?Mr(n.height):n.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!s||!Number.isFinite(s))&&(s=1),{x:o,y:s}}var Ki=Pr(0);function qi(e){let t=bi(e);return!Fi()||!t.visualViewport?Ki:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function Ji(e,t,n){return t===void 0&&(t=!1),!!n&&t&&n===bi(e)}function X(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);let i=e.getBoundingClientRect(),a=Wi(e),o=Pr(1);t&&(r?Ci(r)&&(o=Gi(r)):o=Gi(e));let s=Ji(a,n,r)?qi(a):Pr(0),c=(i.left+s.x)/o.x,l=(i.top+s.y)/o.y,u=i.width/o.x,d=i.height/o.y;if(a&&r){let e=bi(a),t=Ci(r)?bi(r):r,n=e,i=Hi(n);for(;i&&t!==n;){let e=Gi(i),t=i.getBoundingClientRect(),r=Li(i),a=t.left+(i.clientLeft+parseFloat(r.paddingLeft))*e.x,o=t.top+(i.clientTop+parseFloat(r.paddingTop))*e.y;c*=e.x,l*=e.y,u*=e.x,d*=e.y,c+=a,l+=o,n=bi(i),i=Hi(n)}}return ni({width:u,height:d,x:c,y:l})}function Yi(e,t){let n=Ri(e).scrollLeft;return t?t.left+n:X(xi(e)).left+n}function Xi(e,t){let n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-Yi(e,n),y:n.top+t.scrollTop}}function Zi(e){let{elements:t,rect:n,offsetParent:r,strategy:i}=e,a=i===`fixed`,o=xi(r),s=t?Oi(t.floating):!1;if(r===o||s&&a)return n;let c={scrollLeft:0,scrollTop:0},l=Pr(1),u=Pr(0),d=wi(r);if((d||!a)&&((yi(r)!==`body`||Ei(o))&&(c=Ri(r)),d)){let e=X(r);l=Gi(r),u.x=e.x+r.clientLeft,u.y=e.y+r.clientTop}let f=o&&!d&&!a?Xi(o,c):Pr(0);return{width:n.width*l.x,height:n.height*l.y,x:n.x*l.x-c.scrollLeft*l.x+u.x+f.x,y:n.y*l.y-c.scrollTop*l.y+u.y+f.y}}function Qi(e){return e.getClientRects?Array.from(e.getClientRects()):[]}function $i(e){let t=Ri(e),n=e.ownerDocument.body,r=jr(e.scrollWidth,e.clientWidth,n.scrollWidth,n.clientWidth),i=jr(e.scrollHeight,e.clientHeight,n.scrollHeight,n.clientHeight),a=-t.scrollLeft+Yi(e),o=-t.scrollTop;return Li(n).direction===`rtl`&&(a+=jr(e.clientWidth,n.clientWidth)-r),{width:r,height:i,x:a,y:o}}var ea=25;function ta(e,t,n){n===void 0&&(n=`viewport`);let r=n===`layoutViewport`,i=bi(e),a=xi(e),o=i.visualViewport,s=a.clientWidth,c=a.clientHeight,l=0,u=0;if(o){let e=!Fi()||t===`fixed`;r?e||(l=-o.offsetLeft,u=-o.offsetTop):(s=o.width,c=o.height,e&&(l=o.offsetLeft,u=o.offsetTop))}if(Yi(a)<=0){let e=a.ownerDocument,t=e.body,n=getComputedStyle(t),r=e.compatMode===`CSS1Compat`&&parseFloat(n.marginLeft)+parseFloat(n.marginRight)||0,i=Math.abs(a.clientWidth-t.clientWidth-r),o=getComputedStyle(a).scrollbarGutter===`stable both-edges`?i/2:i;o<=ea&&(s-=o)}return{width:s,height:c,x:l,y:u}}function na(e,t){let n=X(e,!0,t===`fixed`),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=Gi(e);return{width:e.clientWidth*a.x,height:e.clientHeight*a.y,x:i*a.x,y:r*a.y}}function ra(e,t,n){let r;if(t===`viewport`||t===`layoutViewport`)r=ta(e,n,t);else if(t===`document`)r=$i(xi(e));else if(Ci(t))r=na(t,n);else{let n=qi(e);r={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return ni(r)}function ia(e,t){let n=t.get(e);if(n)return n;let r=Vi(e,[],!1).filter(e=>Ci(e)&&yi(e)!==`body`),i=null,a=Li(e).position===`fixed`,o=a?zi(e):e;for(;Ci(o)&&!Ii(o);){let e=Li(o),t=Ni(o),n=i?i.position:a?`fixed`:``;!t&&(n===`fixed`||n===`absolute`&&e.position===`static`)?r=r.filter(e=>e!==o):i=e,o=zi(o)}return t.set(e,r),r}function aa(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e,a=[...n===`clippingAncestors`?Oi(t)?[]:ia(t,this._c):[].concat(n),r],o=ra(t,a[0],i),s=o.top,c=o.right,l=o.bottom,u=o.left;for(let e=1;e{s(!1,1e-7)},1e3)}y=!1}try{r=new IntersectionObserver(b,{...v,root:a.ownerDocument})}catch{r=new IntersectionObserver(b,v)}r.observe(e)}let c=bi(e),l=()=>s(n);return c.addEventListener(`resize`,l),s(!0),()=>{c.removeEventListener(`resize`,l),o()}}function ga(e,t,n,r){r===void 0&&(r={});let{ancestorScroll:i=!0,ancestorResize:a=!0,elementResize:o=typeof ResizeObserver==`function`,layoutShift:s=typeof IntersectionObserver==`function`,animationFrame:c=!1}=r,l=Wi(e),u=i||a?[...l?Vi(l):[],...t?Vi(t):[]]:[];u.forEach(e=>{i&&e.addEventListener(`scroll`,n),a&&e.addEventListener(`resize`,n)});let d=l&&s?ha(l,n,a):null,f=-1,p=null;o&&(p=new ResizeObserver(e=>{let[r]=e;r&&r.target===l&&p&&t&&(p.unobserve(t),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var e;(e=p)==null||e.observe(t)})),n()}),l&&!c&&p.observe(l),t&&p.observe(t));let m,h=c?X(e):null;c&&g();function g(){let t=X(e);h&&!ma(h,t)&&n(),h=t,m=requestAnimationFrame(g)}return n(),()=>{var e;u.forEach(e=>{i&&e.removeEventListener(`scroll`,n),a&&e.removeEventListener(`resize`,n)}),d?.(),(e=p)==null||e.disconnect(),p=null,c&&cancelAnimationFrame(m)}}var _a=mi,va=hi,ya=ci,ba=_i,xa=di,Sa=si,Ca=gi,wa=(e,t,n)=>{let r=new Map,i=n??{},a={...pa,...i.platform,_c:r};return oi(e,t,{...i,platform:a})},Ta=typeof document<`u`?y.useLayoutEffect:function(){};function Ea(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e==`function`&&e.toString()===t.toString())return!0;let n,r,i;if(e&&t&&typeof e==`object`){if(Array.isArray(e)){if(n=e.length,n!==t.length)return!1;for(r=n;r--!==0;)if(!Ea(e[r],t[r]))return!1;return!0}if(i=Object.keys(e),n=i.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!{}.hasOwnProperty.call(t,i[r]))return!1;for(r=n;r--!==0;){let n=i[r];if(!(n===`_owner`&&e.$$typeof)&&!Ea(e[n],t[n]))return!1}return!0}return e!==e&&t!==t}function Da(e){return typeof window>`u`?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function Oa(e,t){let n=Da(e);return Math.round(t*n)/n}function ka(e){let t=y.useRef(e);return Ta(()=>{t.current=e}),t}function Aa(e){e===void 0&&(e={});let{placement:t=`bottom`,strategy:n=`absolute`,middleware:r=[],platform:i,elements:{reference:a,floating:o}={},transform:s=!0,whileElementsMounted:c,open:l}=e,[u,d]=y.useState({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[f,p]=y.useState(r);Ea(f,r)||p(r);let[m,h]=y.useState(null),[g,_]=y.useState(null),v=y.useCallback(e=>{e!==C.current&&(C.current=e,h(e))},[]),b=y.useCallback(e=>{e!==w.current&&(w.current=e,_(e))},[]),x=a||m,S=o||g,C=y.useRef(null),w=y.useRef(null),T=y.useRef(u),E=c!=null,D=ka(c),O=ka(i),k=ka(l),A=y.useCallback(()=>{if(!C.current||!w.current)return;let e={placement:t,strategy:n,middleware:f};O.current&&(e.platform=O.current),wa(C.current,w.current,e).then(e=>{let t={...e,isPositioned:k.current!==!1};j.current&&!Ea(T.current,t)&&(T.current=t,ln.flushSync(()=>{d(t)}))})},[f,t,n,O,k]);Ta(()=>{l===!1&&T.current.isPositioned&&(T.current.isPositioned=!1,d(e=>({...e,isPositioned:!1})))},[l]);let j=y.useRef(!1);Ta(()=>(j.current=!0,()=>{j.current=!1}),[]),Ta(()=>{if(x&&(C.current=x),S&&(w.current=S),x&&S){if(D.current)return D.current(x,S,A);A()}},[x,S,A,D,E]);let M=y.useMemo(()=>({reference:C,floating:w,setReference:v,setFloating:b}),[v,b]),N=y.useMemo(()=>({reference:x,floating:S}),[x,S]),P=y.useMemo(()=>{let e={position:n,left:0,top:0};if(!N.floating)return e;let t=Oa(N.floating,u.x),r=Oa(N.floating,u.y);return s?{...e,transform:`translate(`+t+`px, `+r+`px)`,...Da(N.floating)>=1.5&&{willChange:`transform`}}:{position:n,left:t,top:r}},[n,s,N.floating,u.x,u.y]);return y.useMemo(()=>({...u,update:A,refs:M,elements:N,floatingStyles:P}),[u,A,M,N,P])}var ja=e=>{function t(e){return{}.hasOwnProperty.call(e,`current`)}return{name:`arrow`,options:e,fn(n){let{element:r,padding:i}=typeof e==`function`?e(n):e;return r&&t(r)?r.current==null?{}:Sa({element:r.current,padding:i}).fn(n):r?Sa({element:r,padding:i}).fn(n):{}}}},Ma=(e,t)=>{let n=_a(e);return{name:n.name,fn:n.fn,options:[e,t]}},Na=(e,t)=>{let n=va(e);return{name:n.name,fn:n.fn,options:[e,t]}},Pa=(e,t)=>({fn:Ca(e).fn,options:[e,t]}),Fa=(e,t)=>{let n=ya(e);return{name:n.name,fn:n.fn,options:[e,t]}},Ia=(e,t)=>{let n=ba(e);return{name:n.name,fn:n.fn,options:[e,t]}},La=(e,t)=>{let n=xa(e);return{name:n.name,fn:n.fn,options:[e,t]}},Ra=(e,t)=>{let n=ja(e);return{name:n.name,fn:n.fn,options:[e,t]}},za=Object.defineProperty,Ba=(e,t)=>za(e,`name`,{value:t,configurable:!0});function Va(e){let[t,n]=y.useState(void 0);return Jt(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});let t=0,r=new ResizeObserver(r=>{if(!Array.isArray(r)||!r.length)return;let i=r[0];window.cancelAnimationFrame(t),t=window.requestAnimationFrame(()=>{let t,r;if(`borderBoxSize`in i){let e=i.borderBoxSize,n=Array.isArray(e)?e[0]:e;t=n.inlineSize,r=n.blockSize}else t=e.offsetWidth,r=e.offsetHeight;n({width:t,height:r})})});return r.observe(e,{box:`border-box`}),()=>{window.cancelAnimationFrame(t),r.unobserve(e)}}n(void 0)},[e]),t}Ba(Va,`useSize`);var Ha=Object.defineProperty,Ua=(e,t)=>Ha(e,`name`,{value:t,configurable:!0}),Wa={Partial:`partial`,Always:`always`},Ga={Optimized:`optimized`,Always:`always`},Ka=`Popper`,[qa,Ja]=Kt(Ka),[Ya,Xa]=qa(Ka),Za=Ua(e=>{let{__scopePopper:t,children:n}=e,[r,i]=y.useState(null),[a,o]=y.useState(void 0);return(0,K.jsx)(Ya,{scope:t,anchor:r,onAnchorChange:i,placementState:a,setPlacementState:o,children:n})},`Popper`),Qa=`PopperAnchor`,$a=y.forwardRef(Ua(function(e,t){let{__scopePopper:n,virtualRef:r,...i}=e,a=Xa(Qa,n),o=y.useRef(null),s=a.onAnchorChange,c=T(t,y.useCallback(e=>{o.current=e,e&&s(e)},[s])),l=y.useRef(null);y.useEffect(()=>{if(!r)return;let e=l.current;l.current=r.current,e!==l.current&&s(l.current)});let u=a.placementState&&oo(a.placementState),d=u?.[0],f=u?.[1];return r?null:(0,K.jsx)(Y.div,{"data-radix-popper-side":d,"data-radix-popper-align":f,...i,ref:c})},`PopperAnchor`)),eo=`PopperContent`,[to,no]=qa(eo),ro=y.forwardRef(Ua(function(e,t){let{__scopePopper:n,side:r=`bottom`,sideOffset:i=0,align:a=`center`,alignOffset:o=0,arrowPadding:s=0,avoidCollisions:c=!0,collisionBoundary:l=[],collisionPadding:u=0,sticky:d=Wa.Partial,hideWhenDetached:f=!1,updatePositionStrategy:p=Ga.Optimized,onPlaced:m,...h}=e,g=Xa(eo,n),[_,v]=y.useState(null),b=T(t,v),[x,S]=y.useState(null),C=Va(x),w=C?.width??0,E=C?.height??0,D=r+(a===`center`?``:`-`+a),O=typeof u==`number`?u:{top:0,right:0,bottom:0,left:0,...u},k=Array.isArray(l)?l:[l],A=k.length>0,j={padding:O,boundary:k.filter(io),altBoundary:A},{refs:M,floatingStyles:N,placement:P,isPositioned:F,middlewareData:I}=Aa({strategy:`fixed`,placement:D,whileElementsMounted:Ua((...e)=>ga(...e,{animationFrame:p===Ga.Always}),`whileElementsMounted`),elements:{reference:g.anchor},middleware:[Ma({mainAxis:i+E,alignmentAxis:o}),c&&Na({mainAxis:!0,crossAxis:!1,...d===Wa.Partial?{limiter:Pa()}:{},...j}),c&&Fa({...j}),Ia({...j,apply:Ua(({elements:e,rects:t,availableWidth:n,availableHeight:r})=>{let{width:i,height:a}=t.reference,o=e.floating.style;o.setProperty(`--radix-popper-available-width`,`${n}px`),o.setProperty(`--radix-popper-available-height`,`${r}px`),o.setProperty(`--radix-popper-anchor-width`,`${i}px`),o.setProperty(`--radix-popper-anchor-height`,`${a}px`)},`apply`)}),x&&Ra({element:x,padding:s}),ao({arrowWidth:w,arrowHeight:E}),f&&La(A?{strategy:`referenceHidden`,...j}:{strategy:`referenceHidden`,padding:j.padding,altBoundary:j.altBoundary})]}),L=g.setPlacementState;Jt(()=>(L(P),()=>{L(void 0)}),[P,L]);let[R,z]=oo(P),B=Fn(m);Jt(()=>{F&&B?.()},[F,B]);let ee=I.arrow?.x,V=I.arrow?.y,H=I.arrow?.centerOffset!==0,[te,ne]=y.useState();return Jt(()=>{_&&ne(window.getComputedStyle(_).zIndex)},[_]),(0,K.jsx)(`div`,{ref:M.setFloating,"data-radix-popper-content-wrapper":``,style:{...N,transform:F?N.transform:`translate(0, -200%)`,minWidth:`max-content`,zIndex:te,"--radix-popper-transform-origin":[I.transformOrigin?.x,I.transformOrigin?.y].join(` `),...I.hide?.referenceHidden&&{visibility:`hidden`,pointerEvents:`none`}},dir:e.dir,children:(0,K.jsx)(to,{scope:n,placedSide:R,placedAlign:z,onArrowChange:S,arrowX:ee,arrowY:V,shouldHideArrow:H,children:(0,K.jsx)(Y.div,{"data-side":R,"data-align":z,...h,ref:b,style:{...h.style,animation:F?h.style?.animation:`none`}})})})},`PopperContent`));function io(e){return e!==null}Ua(io,`isNotNull`);var ao=Ua(e=>({name:`transformOrigin`,options:e,fn(t){let{placement:n,rects:r,middlewareData:i}=t,a=i.arrow?.centerOffset!==0,o=a?0:e.arrowWidth,s=a?0:e.arrowHeight,[c,l]=oo(n),u={start:`0%`,center:`50%`,end:`100%`}[l],d=(i.arrow?.x??0)+o/2,f=(i.arrow?.y??0)+s/2,p=``,m=``;return c===`bottom`?(p=a?u:`${d}px`,m=`${-s}px`):c===`top`?(p=a?u:`${d}px`,m=`${r.floating.height+s}px`):c===`right`?(p=`${-s}px`,m=a?u:`${f}px`):c===`left`&&(p=`${r.floating.width+s}px`,m=a?u:`${f}px`),{data:{x:p,y:m}}}}),`transformOrigin`);function oo(e){let[t,n=`center`]=e.split(`-`);return[t,n]}Ua(oo,`getSideAndAlignFromPlacement`);var so=Object.defineProperty,co=y.forwardRef(((e,t)=>so(e,`name`,{value:t,configurable:!0}))(function(e,t){let{container:n,...r}=e,[i,a]=y.useState(!1);Jt(()=>a(!0),[]);let o=n||i&&globalThis?.document?.body;return o?ln.createPortal((0,K.jsx)(Y.div,{...r,ref:t}),o):null},`Portal`)),lo=Object.defineProperty,uo=(e,t)=>lo(e,`name`,{value:t,configurable:!0});function fo(e,t){return y.useReducer((e,n)=>t[e][n]??e,e)}uo(fo,`useStateMachine`);var po=uo(e=>{let{present:t,children:n}=e,r=mo(t),i=typeof n==`function`?n({present:r.isPresent}):y.Children.only(n),a=go(r.ref,vo(i));return typeof n==`function`||r.isPresent?y.cloneElement(i,{ref:a}):null},`Presence`);function mo(e){let[t,n]=y.useState(),r=y.useRef(null),i=y.useRef(e),a=y.useRef(`none`),o=y.useRef(void 0),[s,c]=fo(e?`mounted`:`unmounted`,{mounted:{UNMOUNT:`unmounted`,ANIMATION_OUT:`unmountSuspended`},unmountSuspended:{MOUNT:`mounted`,ANIMATION_END:`unmounted`},unmounted:{MOUNT:`mounted`}});return y.useEffect(()=>{s===`mounted`?(a.current=o.current??_o(r.current),o.current=void 0):a.current=`none`},[s]),Jt(()=>{let t=r.current,n=i.current;if(n!==e){let r=a.current,s=_o(t);e?(o.current=s,c(`MOUNT`)):s===`none`||t?.display===`none`?c(`UNMOUNT`):c(n&&r!==s?`ANIMATION_OUT`:`UNMOUNT`),i.current=e}},[e,c]),Jt(()=>{if(t){let e,n=t.ownerDocument.defaultView??window,o=uo(a=>{let o=_o(r.current).includes(CSS.escape(a.animationName));if(a.target===t&&o&&(c(`ANIMATION_END`),!i.current)){let r=t.style.animationFillMode;t.style.animationFillMode=`forwards`,e=n.setTimeout(()=>{t.style.animationFillMode===`forwards`&&(t.style.animationFillMode=r)})}},`handleAnimationEnd`),s=uo(e=>{e.target===t&&(a.current=_o(r.current))},`handleAnimationStart`);return t.addEventListener(`animationstart`,s),t.addEventListener(`animationcancel`,o),t.addEventListener(`animationend`,o),()=>{n.clearTimeout(e),t.removeEventListener(`animationstart`,s),t.removeEventListener(`animationcancel`,o),t.removeEventListener(`animationend`,o)}}c(`ANIMATION_END`)},[t,c]),{isPresent:[`mounted`,`unmountSuspended`].includes(s),ref:y.useCallback(e=>{if(e){let t=getComputedStyle(e);r.current=t,o.current=_o(t)}else r.current=null;n(e)},[])}}uo(mo,`usePresence`);function ho(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}uo(ho,`setRef`);function go(...e){let t=y.useRef(e);return t.current=e,y.useCallback(e=>{let n=t.current,r=!1,i=n.map(t=>{let n=ho(t,e);return!r&&typeof n==`function`&&(r=!0),n});if(r)return()=>{for(let e=0;eyo(e,`name`,{value:t,configurable:!0}),xo=!1;function So(){let[e,t]=y.useState(xo);return y.useEffect(()=>{xo||(xo=!0,t(!0))},[]),e}bo(So,`useIsHydrated`);var Co=y.useSyncExternalStore;function wo(){return()=>{}}bo(wo,`subscribe`);function To(){return Co(wo,()=>!0,()=>!1)}bo(To,`useIsHydratedModern`);var Eo=typeof Co==`function`?To:So,Do=Object.defineProperty,Oo=(e,t)=>Do(e,`name`,{value:t,configurable:!0}),ko=`rovingFocusGroup.onEntryFocus`,Ao={bubbles:!1,cancelable:!0},jo=`RovingFocusGroup`,[Mo,No,Po]=hn(jo),[Fo,Io]=Kt(jo,[Po]),Lo={Vertical:`vertical`,Horizontal:`horizontal`},Ro={LTR:`ltr`,RTL:`rtl`},[zo,Bo]=Fo(jo),Vo=y.forwardRef(Oo(function(e,t){return(0,K.jsx)(Mo.Provider,{scope:e.__scopeRovingFocusGroup,children:(0,K.jsx)(Mo.Slot,{scope:e.__scopeRovingFocusGroup,children:(0,K.jsx)(Ho,{...e,ref:t})})})},`RovingFocusGroup`)),Ho=y.forwardRef(Oo(function(e,t){let{__scopeRovingFocusGroup:n,orientation:r,loop:i=!1,dir:a,currentTabStopId:o,defaultCurrentTabStopId:s,onCurrentTabStopIdChange:c,onEntryFocus:l,preventScrollOnEntryFocus:u=!1,...d}=e,f=y.useRef(null),p=T(t,f),m=jn(a),[h,g]=rn({prop:o,defaultProp:s??null,onChange:c,caller:jo}),[_,v]=y.useState(!1),b=Fn(l),x=No(n),S=y.useRef(!1),[C,w]=y.useState(0);return y.useEffect(()=>{let e=f.current;if(e)return e.addEventListener(ko,b),()=>e.removeEventListener(ko,b)},[b]),(0,K.jsx)(zo,{scope:n,orientation:r,dir:m,loop:i,currentTabStopId:h,onItemFocus:y.useCallback(e=>g(e),[g]),onItemShiftTab:y.useCallback(()=>v(!0),[]),onFocusableItemAdd:y.useCallback(()=>w(e=>e+1),[]),onFocusableItemRemove:y.useCallback(()=>w(e=>e-1),[]),children:(0,K.jsx)(Y.div,{tabIndex:_||C===0?-1:0,"data-orientation":r,...d,ref:p,style:{outline:`none`,...e.style},onMouseDown:J(e.onMouseDown,()=>{S.current=!0}),onFocus:J(e.onFocus,e=>{let t=!S.current;if(e.target===e.currentTarget&&t&&!_){let t=new CustomEvent(ko,Ao);if(e.currentTarget.dispatchEvent(t),!t.defaultPrevented){let e=x().filter(e=>e.focusable);Jo([e.find(e=>e.active),e.find(e=>e.id===h),...e].filter(Boolean).map(e=>e.ref.current),u)}}S.current=!1}),onBlur:J(e.onBlur,()=>v(!1))})})},`RovingFocusGroupImpl`)),Uo=`RovingFocusGroupItem`,Wo=y.forwardRef(Oo(function(e,t){let{__scopeRovingFocusGroup:n,focusable:r=!0,active:i=!1,tabStopId:a,children:o,...s}=e,c=Or(),l=a||c,u=Bo(Uo,n),d=u.currentTabStopId===l,f=No(n),{onFocusableItemAdd:p,onFocusableItemRemove:m,currentTabStopId:h}=u,g=Eo();return Jt(()=>{if(g&&r)return p(),()=>m()},[g,r,p,m]),y.useEffect(()=>{if(!g&&r)return p(),()=>m()},[g,r,p,m]),(0,K.jsx)(Mo.ItemSlot,{scope:n,id:l,focusable:r,active:i,children:(0,K.jsx)(Y.span,{tabIndex:d?0:-1,"data-orientation":u.orientation,...s,ref:t,onMouseDown:J(e.onMouseDown,e=>{r?u.onItemFocus(l):e.preventDefault()}),onFocus:J(e.onFocus,()=>u.onItemFocus(l)),onKeyDown:J(e.onKeyDown,e=>{if(e.key===`Tab`&&e.shiftKey){u.onItemShiftTab();return}if(e.target!==e.currentTarget)return;let t=qo(e,u.orientation,u.dir);if(t!==void 0){if(e.metaKey||e.ctrlKey||e.altKey||e.shiftKey)return;e.preventDefault();let n=f().filter(e=>e.focusable).map(e=>e.ref.current);if(t===`last`)n.reverse();else if(t===`prev`||t===`next`){t===`prev`&&n.reverse();let r=n.indexOf(e.currentTarget);n=u.loop?Yo(n,r+1):n.slice(r+1)}setTimeout(()=>Jo(n))}}),children:typeof o==`function`?o({isCurrentTabStop:d,hasTabStop:h!=null}):o})})},`RovingFocusGroupItem`)),Go={ArrowLeft:`prev`,ArrowUp:`prev`,ArrowRight:`next`,ArrowDown:`next`,PageUp:`first`,Home:`first`,PageDown:`last`,End:`last`};function Ko(e,t){return t===Ro.RTL?e===`ArrowLeft`?`ArrowRight`:e===`ArrowRight`?`ArrowLeft`:e:e}Oo(Ko,`getDirectionAwareKey`);function qo(e,t,n){let r=Ko(e.key,n);if(!(t===Lo.Vertical&&[`ArrowLeft`,`ArrowRight`].includes(r))&&!(t===Lo.Horizontal&&[`ArrowUp`,`ArrowDown`].includes(r)))return Go[r]}Oo(qo,`getFocusIntent`);function Jo(e,t=!1){let n=document.activeElement;for(let r of e)if(r===n||(r.focus({preventScroll:t}),document.activeElement!==n))return}Oo(Jo,`focusFirst`);function Yo(e,t){return e.map((n,r)=>e[(t+r)%e.length])}Oo(Yo,`wrapArray`);var Xo=function(e){return typeof document>`u`?null:(Array.isArray(e)?e[0]:e).ownerDocument.body},Zo=new WeakMap,Qo=new WeakMap,$o={},es=0,ts=function(e){return e&&(e.host||ts(e.parentNode))},ns=function(e,t){return t.map(function(t){if(e.contains(t))return t;var n=ts(t);return n&&e.contains(n)?n:(console.error(`aria-hidden`,t,`in not contained inside`,e,`. Doing nothing`),null)}).filter(function(e){return!!e})},rs=function(e,t,n,r){var i=ns(t,Array.isArray(e)?e:[e]);$o[n]||($o[n]=new WeakMap);var a=$o[n],o=[],s=new Set,c=new Set(i),l=function(e){e&&!s.has(e)&&(s.add(e),l(e.parentNode))};i.forEach(l);var u=function(e){e&&!c.has(e)&&Array.prototype.forEach.call(e.children,function(e){if(s.has(e))u(e);else try{var t=e.getAttribute(r),i=t!==null&&t!==`false`,c=(Zo.get(e)||0)+1,l=(a.get(e)||0)+1;Zo.set(e,c),a.set(e,l),o.push(e),c===1&&i&&Qo.set(e,!0),l===1&&e.setAttribute(n,`true`),i||e.setAttribute(r,`true`)}catch(t){console.error(`aria-hidden: cannot operate on `,e,t)}})};return u(t),s.clear(),es++,function(){o.forEach(function(e){var t=Zo.get(e)-1,i=a.get(e)-1;Zo.set(e,t),a.set(e,i),t||(Qo.has(e)||e.removeAttribute(r),Qo.delete(e)),i||e.removeAttribute(n)}),es--,es||(Zo=new WeakMap,Zo=new WeakMap,Qo=new WeakMap,$o={})}},is=function(e,t,n){n===void 0&&(n=`data-aria-hidden`);var r=Array.from(Array.isArray(e)?e:[e]),i=t||Xo(e);return i?(r.push.apply(r,Array.from(i.querySelectorAll(`[aria-live], script`))),rs(r,i,n,`aria-hidden`)):function(){return null}},as=function(){return as=Object.assign||function(e){for(var t,n=1,r=arguments.length;n`u`)return Ms;var t=Ps(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},Is=js(),Ls=`data-scroll-locked`,Rs=function(e,t,n,r){var i=e.left,a=e.top,o=e.right,s=e.gap;return n===void 0&&(n=`margin`),` +`+e.stack}}var Ae=Object.prototype.hasOwnProperty,je=t.unstable_scheduleCallback,Me=t.unstable_cancelCallback,Ne=t.unstable_shouldYield,Pe=t.unstable_requestPaint,Fe=t.unstable_now,Ie=t.unstable_getCurrentPriorityLevel,Le=t.unstable_ImmediatePriority,Re=t.unstable_UserBlockingPriority,ze=t.unstable_NormalPriority,Be=t.unstable_LowPriority,Ve=t.unstable_IdlePriority,He=t.log,Ue=t.unstable_setDisableYieldValue,We=null,Ge=null;function Ke(e){if(typeof He==`function`&&Ue(e),Ge&&typeof Ge.setStrictMode==`function`)try{Ge.setStrictMode(We,e)}catch{}}var qe=Math.clz32?Math.clz32:Xe,Je=Math.log,Ye=Math.LN2;function Xe(e){return e>>>=0,e===0?32:31-(Je(e)/Ye|0)|0}var Ze=256,Qe=262144,$e=4194304;function et(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&-e;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function tt(e,t,n){var r=e.pendingLanes;if(r===0)return 0;var i=0,a=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var s=r&134217727;return s===0?(s=r&~a,s===0?o===0?n||(n=r&~e,n!==0&&(i=et(n))):i=et(o):i=et(s)):(r=s&~a,r===0?(o&=s,o===0?n||(n=s&~e,n!==0&&(i=et(n))):i=et(o)):i=et(r)),i===0?0:t!==0&&t!==i&&(t&a)===0&&(a=i&-i,n=t&-t,a>=n||a===32&&n&4194048)?t:i}function nt(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function rt(e,t){t&8&&(t|=t&32);var n=e.entangledLanes;if(n!==0)for(e=e.entanglements,n&=t;0n;n++)t.push(e);return t}function ot(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function st(e,t,n,r,i,a){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var s=e.entanglements,c=e.expirationTimes,l=e.hiddenUpdates;for(n=o&~n;0=nr),ar=` `,or=!1;function sr(e,t){switch(e){case`keyup`:return er.indexOf(t.keyCode)!==-1;case`keydown`:return t.keyCode!==229;case`keypress`:case`mousedown`:case`focusout`:return!0;default:return!1}}function cr(e){return e=e.detail,typeof e==`object`&&`data`in e?e.data:null}var lr=!1;function ur(e,t){switch(e){case`compositionend`:return cr(t);case`keypress`:return t.which===32?(or=!0,ar):null;case`textInput`:return e=t.data,e===ar&&or?null:e;default:return null}}function dr(e,t){if(lr)return e===`compositionend`||!tr&&sr(e,t)?(e=Cn(),Sn=xn=bn=null,lr=!1,e):null;switch(e){case`paste`:return null;case`keypress`:if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=r}a:{for(;n;){if(n.nextSibling){n=n.nextSibling;break a}n=n.parentNode}n=void 0}n=Pr(n)}}function Ir(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Ir(e,t.parentNode):`contains`in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Lr(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=Nr(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href==`string`}catch{n=!1}if(n)e=t.contentWindow;else break;t=Nr(e.document)}return t}function Rr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t===`input`&&(e.type===`text`||e.type===`search`||e.type===`tel`||e.type===`url`||e.type===`password`)||t===`textarea`||e.contentEditable===`true`)}var zr=_n&&`documentMode`in document&&11>=document.documentMode,Br=null,Vr=null,Hr=null,Ur=!1;function Wr(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Ur||Br==null||Br!==Nr(r)||(r=Br,`selectionStart`in r&&Rr(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),Hr&&Mr(Hr,r)||(Hr=r,r=Yf(Vr,`onSelect`),0>=o,i-=o,Bi=1<<32-qe(t)+i|n<h?(g=d,d=null):g=d.sibling;var _=p(i,d,s[h],c);if(_===null){d===null&&(d=g);break}e&&d&&_.alternate===null&&t(i,d),a=o(_,a,h),u===null?l=_:u.sibling=_,u=_,d=g}if(h===s.length)return n(i,d),X&&Hi(i,h),l;if(d===null){for(;hg?(_=h,h=null):_=h.sibling;var y=p(a,h,v.value,l);if(y===null){h===null&&(h=_);break}e&&h&&y.alternate===null&&t(a,h),s=o(y,s,g),d===null?u=y:d.sibling=y,d=y,h=_}if(v.done)return n(a,h),X&&Hi(a,g),u;if(h===null){for(;!v.done;g++,v=c.next())v=f(a,v.value,l),v!==null&&(s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return X&&Hi(a,g),u}for(h=r(h);!v.done;g++,v=c.next())v=m(h,a,g,v.value,l),v!==null&&(e&&(_=v.alternate,_!==null&&h.delete(_.key===null?g:_.key)),s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return e&&h.forEach(function(e){return t(a,e)}),X&&Hi(a,g),u}function _(e,r,o,c){if(typeof o==`object`&&o&&o.type===j&&o.key===null&&o.props.ref===void 0&&(o=o.props.children),typeof o==`object`&&o){switch(o.$$typeof){case k:a:{for(var l=o.key;r!==null;){if(r.key===l){if(l=o.type,l===j){if(r.tag===7){n(e,r.sibling),c=a(r,o.props.children),Qa(c,o),c.return=e,e=c;break a}}else if(r.elementType===l||typeof l==`object`&&l&&l.$$typeof===B&&Ga(l)===r.type){n(e,r.sibling),c=a(r,o.props),Qa(c,o),c.return=e,e=c;break a}n(e,r);break}t(e,r),r=r.sibling}o.type===j?(c=Di(o.props.children,e.mode,c,o.key),Qa(c,o),c.return=e,e=c):(c=Ei(o.type,o.key,o.props,null,e.mode,c),Qa(c,o),c.return=e,e=c)}return s(e);case A:a:{for(l=o.key;r!==null;){if(r.key===l){if(r.tag===4&&r.stateNode.containerInfo===o.containerInfo&&r.stateNode.implementation===o.implementation){n(e,r.sibling),c=a(r,o.children||[]),c.return=e,e=c;break a}n(e,r);break}t(e,r),r=r.sibling}c=Ai(o,e.mode,c),c.return=e,e=c}return s(e);case B:return o=Ga(o),_(e,r,o,c)}if(se(o))return h(e,r,o,c);if(ie(o)){if(l=ie(o),typeof l!=`function`)throw Error(i(150));return o=l.call(o),g(e,r,o,c)}if(typeof o.then==`function`)return _(e,r,Za(o),c);if(o.$$typeof===F)return _(e,r,ga(e,o),c);$a(e,o)}return typeof o==`string`&&o!==``||typeof o==`number`||typeof o==`bigint`?(o=``+o,r!==null&&r.tag===6?(n(e,r.sibling),c=a(r,o),c.return=e,e=c):(n(e,r),c=Oi(o,e.mode,c),c.return=e,e=c),s(e)):n(e,r)}return function(e,t,n,r){try{Xa=0;var i=_(e,t,n,r);return Ya=null,i}catch(t){if(t===za||t===Va)throw t;var a=Si(29,t,null,e.mode);return a.lanes=r,a.return=e,a}}}var to=eo(!0),no=eo(!1),ro=!1;function io(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function ao(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function oo(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function so(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,Ju&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,t=yi(e),vi(e,null,n),t}return hi(e,r,t,n),yi(e)}function co(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,n&4194048)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,lt(e,n)}}function lo(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var i=null,a=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};a===null?i=a=o:a=a.next=o,n=n.next}while(n!==null);a===null?i=a=t:a=a.next=t}else i=a=t;n={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:a,shared:r.shared,callbacks:r.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var uo=!1;function fo(){if(uo){var e=Aa;if(e!==null)throw e}}function po(e,t,n,r){uo=!1;var i=e.updateQueue;ro=!1;var a=i.firstBaseUpdate,o=i.lastBaseUpdate,s=i.shared.pending;if(s!==null){i.shared.pending=null;var c=s,l=c.next;c.next=null,o===null?a=l:o.next=l,o=c;var u=e.alternate;u!==null&&(u=u.updateQueue,s=u.lastBaseUpdate,s!==o&&(s===null?u.firstBaseUpdate=l:s.next=l,u.lastBaseUpdate=c))}if(a!==null){var d=i.baseState;o=0,u=l=c=null,s=a;do{var f=s.lane&-536870913,p=f!==s.lane;if(p?(Zu&f)===f:(r&f)===f){f!==0&&f===ka&&(uo=!0),u!==null&&(u=u.next={lane:0,tag:s.tag,payload:s.payload,callback:null,next:null});a:{var m=e,h=s;f=t;var g=n;switch(h.tag){case 1:if(m=h.payload,typeof m==`function`){d=m.call(g,d,f);break a}d=m;break a;case 3:m.flags=m.flags&-65537|128;case 0:if(m=h.payload,f=typeof m==`function`?m.call(g,d,f):m,f==null)break a;d=D({},d,f);break a;case 2:ro=!0}}f=s.callback,f!==null&&(e.flags|=64,p&&(e.flags|=8192),p=i.callbacks,p===null?i.callbacks=[f]:p.push(f))}else p={lane:f,tag:s.tag,payload:s.payload,callback:s.callback,next:null},u===null?(l=u=p,c=d):u=u.next=p,o|=f;if(s=s.next,s===null){if(s=i.shared.pending,s===null)break;p=s,s=p.next,p.next=null,i.lastBaseUpdate=p,i.shared.pending=null}}while(1);u===null&&(c=d),i.baseState=c,i.firstBaseUpdate=l,i.lastBaseUpdate=u,a===null&&(i.shared.lanes=0),ad|=o,e.lanes=o,e.memoizedState=d}}function mo(e,t){if(typeof e!=`function`)throw Error(i(191,e));e.call(t)}function ho(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;ea?a:8;var o=U.T,s={};s.types=o===null?null:o.types,U.T=s,rc(e,!1,t,n);try{var c=i(),l=U.S;l!==null&&l(s,c),typeof c==`object`&&c&&typeof c.then==`function`?nc(e,t,Na(c,r),Ad(e)):nc(e,t,r,Ad(e))}catch(n){nc(e,t,{then:function(){},status:`rejected`,reason:n},Ad())}finally{ce.p=a,o!==null&&s.types!==null&&(o.types=s.types),U.T=o}}function Ks(){}function qs(e,t,n,r){if(e.tag!==5)throw Error(i(476));var a=Js(e).queue;Gs(e,a,t,le,n===null?Ks:function(){return Ys(e),n(r)})}function Js(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:le,baseState:le,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:is,lastRenderedState:le},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:is,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function Ys(e){var t=Js(e);t.next===null&&(t=e.alternate.memoizedState),nc(e,t.next.queue,{},Ad())}function Xs(){return ha(ch)}function Zs(){return $o().memoizedState}function Qs(){return $o().memoizedState}function $s(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=Ad();e=oo(n);var r=so(t,e,n);r!==null&&(Nd(r,t,n),co(r,t,n)),t={cache:Sa()},e.payload=t;return}t=t.return}}function ec(e,t,n){var r=Ad();n={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},ic(e)?ac(t,n):(n=gi(e,t,n,r),n!==null&&(Nd(n,e,r),oc(n,t,r)))}function tc(e,t,n){nc(e,t,n,Ad())}function nc(e,t,n,r){var i={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(ic(e))ac(t,i);else{var a=e.alternate;if(e.lanes===0&&(a===null||a.lanes===0)&&(a=t.lastRenderedReducer,a!==null))try{var o=t.lastRenderedState,s=a(o,n);if(i.hasEagerState=!0,i.eagerState=s,jr(s,o))return hi(e,t,i,0),Yu===null&&mi(),!1}catch{}if(n=gi(e,t,i,r),n!==null)return Nd(n,e,r),oc(n,t,r),!0}return!1}function rc(e,t,n,r){if(r={lane:2,revertLane:Pf(),gesture:null,action:r,hasEagerState:!1,eagerState:null,next:null},ic(e)){if(t)throw Error(i(479))}else t=gi(e,n,r,2),t!==null&&Nd(t,e,2)}function ic(e){var t=e.alternate;return e===No||t!==null&&t===No}function ac(e,t){Lo=Io=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function oc(e,t,n){if(n&4194048){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,lt(e,n)}}var sc={readContext:ha,use:ns,useCallback:Uo,useContext:Uo,useEffect:Uo,useImperativeHandle:Uo,useLayoutEffect:Uo,useInsertionEffect:Uo,useMemo:Uo,useReducer:Uo,useRef:Uo,useState:Uo,useDebugValue:Uo,useDeferredValue:Uo,useTransition:Uo,useSyncExternalStore:Uo,useId:Uo,useHostTransitionStatus:Uo,useFormState:Uo,useActionState:Uo,useOptimistic:Uo,useMemoCache:Uo,useCacheRefresh:Uo,useEffectEvent:Uo},cc={readContext:ha,use:ns,useCallback:function(e,t){return Qo().memoizedState=[e,t===void 0?null:t],e},useContext:ha,useEffect:Ms,useImperativeHandle:function(e,t,n){n=n==null?null:n.concat([e]),As(4194308,4,Rs.bind(null,t,e),n)},useLayoutEffect:function(e,t){return As(4194308,4,e,t)},useInsertionEffect:function(e,t){As(4,2,e,t)},useMemo:function(e,t){var n=Qo();t=t===void 0?null:t;var r=e();if(Ro){Ke(!0);try{e()}finally{Ke(!1)}}return n.memoizedState=[r,t],r},useReducer:function(e,t,n){var r=Qo();if(n!==void 0){var i=n(t);if(Ro){Ke(!0);try{n(t)}finally{Ke(!1)}}}else i=t;return r.memoizedState=r.baseState=i,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:i},r.queue=e,e=e.dispatch=ec.bind(null,No,e),[r.memoizedState,e]},useRef:function(e){var t=Qo();return e={current:e},t.memoizedState=e},useState:function(e){e=ms(e);var t=e.queue,n=tc.bind(null,No,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:Bs,useDeferredValue:function(e,t){return Us(Qo(),e,t)},useTransition:function(){var e=ms(!1);return e=Gs.bind(null,No,e.queue,!0,!1),Qo().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var r=No,a=Qo();if(X){if(n===void 0)throw Error(i(407));n=n()}else{if(n=t(),Yu===null)throw Error(i(349));Zu&127||ls(r,t,n)}a.memoizedState=n;var o={value:n,getSnapshot:t};return a.queue=o,Ms(ds.bind(null,r,o,e),[e]),r.flags|=2048,Os(9,{destroy:void 0},us.bind(null,r,o,n,t),null),n},useId:function(){var e=Qo(),t=Yu.identifierPrefix;if(X){var n=Vi,r=Bi;n=(r&~(1<<32-qe(r)-1)).toString(32)+n,t=`_`+t+`R_`+n,n=zo++,0<\/script>`,o=o.removeChild(o.firstChild);break;case`select`:o=typeof r.is==`string`?s.createElement(`select`,{is:r.is}):s.createElement(`select`),r.multiple?o.multiple=!0:r.size&&(o.size=r.size);break;default:o=typeof r.is==`string`?s.createElement(a,{is:r.is}):s.createElement(a)}}o[ht]=t,o[gt]=r;a:for(s=t.child;s!==null;){if(s.tag===5||s.tag===6)o.appendChild(s.stateNode);else if(s.tag!==4&&s.tag!==27&&s.child!==null){s.child.return=s,s=s.child;continue}if(s===t)break a;for(;s.sibling===null;){if(s.return===null||s.return===t)break a;s=s.return}s.sibling.return=s.return,s=s.sibling}t.stateNode=o;a:switch(ip(o,a,r),a){case`button`:case`input`:case`select`:case`textarea`:r=!!r.autoFocus;break a;case`img`:r=!0;break a;default:r=!1}r&&ol(t)}}return dl(t),t.subtreeFlags&=-33554433,sl(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==r&&ol(t);else{if(typeof r!=`string`&&t.stateNode===null)throw Error(i(166));if(e=_e.current,ta(t)){if(e=t.stateNode,n=t.memoizedProps,r=null,a=qi,a!==null)switch(a.tag){case 27:case 5:r=a.memoizedProps}e[ht]=t,e=!!(e.nodeValue===n||r!==null&&!0===r.suppressHydrationWarning||tp(e.nodeValue,n)),e||Qi(t,!0)}else e=dp(e).createTextNode(r),e[ht]=t,t.stateNode=e}return dl(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(r=ta(t),n!==null){if(e===null){if(!r)throw Error(i(318));if(e=t.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(557));e[ht]=t}else na(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;dl(t),e=!1}else n=ra(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(Do(t),t):(Do(t),null);if(t.flags&128)throw Error(i(558))}return dl(t),null;case 13:if(r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=ta(t),r!==null&&r.dehydrated!==null){if(e===null){if(!a)throw Error(i(318));if(a=t.memoizedState,a=a===null?null:a.dehydrated,!a)throw Error(i(317));a[ht]=t}else na(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;dl(t),a=!1}else a=ra(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(Do(t),t):(Do(t),null)}return Do(t),t.flags&128?(t.lanes=n,t):(n=r!==null,e=e!==null&&e.memoizedState!==null,n&&(r=t.child,a=null,r.alternate!==null&&r.alternate.memoizedState!==null&&r.alternate.memoizedState.cachePool!==null&&(a=r.alternate.memoizedState.cachePool.pool),o=null,r.memoizedState!==null&&r.memoizedState.cachePool!==null&&(o=r.memoizedState.cachePool.pool),o!==a&&(r.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),ll(t,t.updateQueue),dl(t),null);case 4:return be(),e===null&&Gf(t.stateNode.containerInfo),t.flags|=67108864,dl(t),null;case 10:return la(t.type),dl(t),null;case 19:if(Ao(t),r=t.memoizedState,r===null)return dl(t),null;if(a=!!(t.flags&128),o=r.rendering,o===null){if(a)ul(r,!1);else{if(id!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(o=jo(e),o!==null){for(t.flags|=128,ul(r,!1),e=o.updateQueue,t.updateQueue=e,ll(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)Ti(n,e),n=n.sibling;return ko(t,Oo.current&1|2),X&&Hi(t,r.treeForkCount),t.child}e=e.sibling}r.tail!==null&&Fe()>hd&&(t.flags|=128,a=!0,ul(r,!1),t.lanes=4194304)}}else{if(!a){if(e=jo(o),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,ll(t,e),ul(r,!0),r.tail===null&&r.tailMode!==`collapsed`&&r.tailMode!==`visible`&&!o.alternate&&!X)return dl(t),null}else 2*Fe()-r.renderingStartTime>hd&&n!==536870912&&(t.flags|=128,a=!0,ul(r,!1),t.lanes=4194304)}r.isBackwards?(o.sibling=t.child,t.child=o):(e=r.last,e===null?t.child=o:e.sibling=o,r.last=o)}if(r.tail!==null){e=r.tail;a:{for(n=e;n!==null;){if(n.alternate!==null){n=!1;break a}n=n.sibling}n=!0}return r.rendering=e,r.tail=e.sibling,r.renderingStartTime=Fe(),e.sibling=null,o=Oo.current,o=a?o&1|2:o&1,r.tailMode===`visible`||r.tailMode===`collapsed`||!n||X?ko(t,o):(n=o,me(xo,t),me(Oo,n),So===null&&(So=t)),X&&Hi(t,r.treeForkCount),e}return dl(t),null;case 22:case 23:return Do(t),bo(),r=t.memoizedState!==null,e===null?r&&(t.flags|=8192):e.memoizedState!==null!==r&&(t.flags|=8192),r?n&536870912&&!(t.flags&128)&&(dl(t),t.subtreeFlags&6&&(t.flags|=8192)):dl(t),n=t.updateQueue,n!==null&&ll(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),r=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(r=t.memoizedState.cachePool.pool),r!==n&&(t.flags|=2048),e!==null&&pe(Fa),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),la(xa),dl(t),null;case 25:return null;case 30:return t.flags|=33554432,dl(t),null}throw Error(i(156,t.tag))}function pl(e,t){switch(Gi(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return la(xa),be(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return Se(t),null;case 31:if(t.memoizedState!==null){if(Do(t),t.alternate===null)throw Error(i(340));na()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(Do(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(i(340));na()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return Ao(t),e=t.flags,e&65536?(t.flags=e&-65537|128,e=t.memoizedState,e!==null&&(e.rendering=null,e.tail=null),t.flags|=4,t):null;case 4:return be(),null;case 10:return la(t.type),null;case 22:case 23:return Do(t),bo(),e!==null&&pe(Fa),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return la(xa),null;case 25:return null;default:return null}}function ml(e,t){switch(Gi(t),t.tag){case 3:la(xa),be();break;case 26:case 27:case 5:Se(t);break;case 4:be();break;case 31:t.memoizedState!==null&&Do(t);break;case 13:Do(t);break;case 19:Ao(t);break;case 10:la(t.type);break;case 22:case 23:Do(t),bo(),e!==null&&pe(Fa);break;case 24:la(xa)}}function hl(e,t){try{var n=t.updateQueue,r=n===null?null:n.lastEffect;if(r!==null){var i=r.next;n=i;do{if((n.tag&e)===e){r=void 0;var a=n.create,o=n.inst;r=a(),o.destroy=r}n=n.next}while(n!==i)}}catch(e){pf(t,t.return,e)}}function gl(e,t,n){try{var r=t.updateQueue,i=r===null?null:r.lastEffect;if(i!==null){var a=i.next;r=a;do{if((r.tag&e)===e){var o=r.inst,s=o.destroy;if(s!==void 0){o.destroy=void 0,i=t;var c=n,l=s;try{l()}catch(e){pf(i,c,e)}}}r=r.next}while(r!==a)}}catch(e){pf(t,t.return,e)}}function _l(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{ho(t,n)}catch(t){pf(e,e.return,t)}}}function vl(e,t,n){n.props=hc(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(n){pf(e,t,n)}}function yl(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var r=e.stateNode;break;case 30:var i=e.stateNode,a=si(e.memoizedProps,i);(i.ref===null||i.ref.name!==a)&&(i.ref=Fp(a)),r=i.ref;break;case 7:if(e.stateNode===null){var o=new Ip(e);p(e.child,!1,$p,o,void 0,void 0),e.stateNode=o}r=e.stateNode;break;default:r=e.stateNode}typeof n==`function`?e.refCleanup=n(r):n.current=r}}catch(n){pf(e,t,n)}}function bl(e,t){var n=e.ref,r=e.refCleanup;if(n!==null){if(typeof r==`function`)try{r()}catch(n){pf(e,t,n)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n==`function`)try{n(null)}catch(n){pf(e,t,n)}else n.current=null}}function xl(e,t){if((e.tag===5||e.tag===27||e.tag===6)&&e.alternate===null&&t!==null)for(var n=0;n title`))),ip(r,t,n),r[ht]=e,kt(r),t=r;break a;case`link`:if(o=Km(`link`,`href`,a).get(t+(n.href||``))){for(s=0;sg&&(o=g,g=h,h=o);var _=Fr(s,h),v=Fr(s,g);if(_&&v&&(p.rangeCount!==1||p.anchorNode!==_.node||p.anchorOffset!==_.offset||p.focusNode!==v.node||p.focusOffset!==v.offset)){var y=d.createRange();y.setStart(_.node,_.offset),p.removeAllRanges(),h>g?(p.addRange(y),p.extend(v.node,v.offset)):(y.setEnd(v.node,v.offset),p.addRange(y))}}}}for(d=[],p=s;p=p.parentNode;)p.nodeType===1&&d.push({element:p,left:p.scrollLeft,top:p.scrollTop});for(typeof s.focus==`function`&&s.focus(),s=0;sn?32:n,U.T=null,n=Cd,Cd=null;var o=yd,s=xd;if(vd=0,bd=yd=null,xd=0,Ju&6)throw Error(i(331));var c=Ju;if(Ju|=4,Uu(o.current),Fu(o,o.current,s,n),Ju=c,Df(0,!1),Ge&&typeof Ge.onPostCommitFiberRoot==`function`)try{Ge.onPostCommitFiberRoot(We,o)}catch{}return!0}finally{ce.p=a,U.T=r,lf(e,t)}}function ff(e,t,n){t=Mi(n,t),t=xc(e.stateNode,t,2),e=so(e,t,2),e!==null&&(ot(e,2),Ef(e))}function pf(e,t,n){if(e.tag===3)ff(e,e,n);else for(;t!==null;){if(t.tag===3){ff(t,e,n);break}if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError==`function`||typeof r.componentDidCatch==`function`&&(_d===null||!_d.has(r))){e=Mi(n,e),n=Sc(2),r=so(t,n,2),r!==null&&(Cc(n,r,t,e),ot(r,2),Ef(r));break}}t=t.return}}function mf(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new qu;var i=new Set;r.set(t,i)}else i=r.get(t),i===void 0&&(i=new Set,r.set(t,i));i.has(n)||(nd=!0,i.add(n),e=hf.bind(null,e,t,n),t.then(e,e))}function hf(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Yu===e&&(Zu&n)===n&&(id===4||id===3&&(Zu&62914560)===Zu&&300>Fe()-pd?Ju&2?sd|=n:Bd(e,0):sd|=n,ld===Zu&&(ld=0)),Ef(e)}function gf(e,t){t===0&&(t=at()),e=_i(e,t),e!==null&&(ot(e,t),Ef(e))}function _f(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),gf(e,n)}function vf(e,t){var n=0;switch(e.tag){case 31:case 13:var r=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:r=e.stateNode;break;case 22:r=e.stateNode._retryCache;break;default:throw Error(i(314))}r!==null&&r.delete(t),gf(e,n)}function yf(e,t){return je(e,t)}var bf=null,xf=null,Sf=!1,Cf=!1,wf=!1,Tf=0;function Ef(e){e!==xf&&e.next===null&&(xf===null?bf=xf=e:xf=xf.next=e),Cf=!0,Sf||(Sf=!0,Nf())}function Df(e,t){if(!wf&&Cf){wf=!0;do for(var n=!1,r=bf;r!==null;){if(!t){if(e!==0){var i=r.pendingLanes;if(i===0)var a=0;else{var o=r.suspendedLanes,s=r.pingedLanes;a=(1<<31-qe(42|e)+1)-1,a&=i&~(o&~s),a=a&201326741?a&201326741|1:a?a|2:0}a!==0&&(n=!0,Mf(r,a))}else a=Zu,a=tt(r,r===Yu?a:0,r.cancelPendingCommit!==null||r.timeoutHandle!==-1),!(a&3)||nt(r,a)||(n=!0,Mf(r,a))}r=r.next}while(n);wf=!1}}function Of(){kf()}function kf(){Cf=Sf=!1;var e=0;Tf!==0&&_p()&&(e=Tf);for(var t=Fe(),n=null,r=bf;r!==null;){var i=r.next,a=Af(r,t);a===0?(r.next=null,n===null?bf=i:n.next=i,i===null&&(xf=n)):(n=r,(e!==0||a&3)&&(Cf=!0)),r=i}vd!==0&&vd!==5||Df(e,!1),Tf!==0&&(Tf=0)}function Af(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,i=e.expirationTimes,a=e.pendingLanes&-62914561;0s)break;var u=c.transferSize,d=c.initiatorType;u&&sp(d)&&(c=c.responseEnd,o+=u*(ceh){s.length=o;break}f=new Promise(Mp.bind(f)),s.push(f)}}}if(0`u`?null:document;function Em(e,t,n){var r=Tm;if(r&&typeof t==`string`&&t){var i=qt(t);i=`link[rel="`+e+`"][href="`+i+`"]`,typeof n==`string`&&(i+=`[crossorigin="`+n+`"]`),bm.has(i)||(bm.add(i),e={rel:e,crossOrigin:n,href:t},r.querySelector(i)===null&&(t=r.createElement(`link`),ip(t,`link`,e),kt(t),r.head.appendChild(t)))}}function Dm(e){Sm.D(e),Em(`dns-prefetch`,e,null)}function Om(e,t){Sm.C(e,t),Em(`preconnect`,e,t)}function km(e,t,n){Sm.L(e,t,n);var r=Tm;if(r&&e&&t){var i=`link[rel="preload"][as="`+qt(t)+`"]`;t===`image`&&n&&n.imageSrcSet?(i+=`[imagesrcset="`+qt(n.imageSrcSet)+`"]`,typeof n.imageSizes==`string`&&(i+=`[imagesizes="`+qt(n.imageSizes)+`"]`)):i+=`[href="`+qt(e)+`"]`;var a=i;switch(t){case`style`:a=Fm(e);break;case`script`:a=zm(e)}if(!(ym.has(a)||(e=D({rel:`preload`,href:t===`image`&&n&&n.imageSrcSet?void 0:e,as:t},n),ym.set(a,e),r.querySelector(i)!==null||t===`style`&&r.querySelector(Im(a))||t===`script`&&r.querySelector(Bm(a))))){var o=r.createElement(`link`);ip(o,`link`,e),t===`style`&&(o[Ct]=!0,o.onload=o.onerror=function(){At(o)}),kt(o),r.head.appendChild(o)}}}function Am(e,t){Sm.m(e,t);var n=Tm;if(n&&e){var r=t&&typeof t.as==`string`?t.as:`script`,i=`link[rel="modulepreload"][as="`+qt(r)+`"][href="`+qt(e)+`"]`,a=i;switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:a=zm(e)}if(!ym.has(a)&&(e=D({rel:`modulepreload`,href:e},t),ym.set(a,e),n.querySelector(i)===null)){switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:if(n.querySelector(Bm(a)))return}r=n.createElement(`link`),ip(r,`link`,e),kt(r),n.head.appendChild(r)}}}function jm(e,t,n){Sm.S(e,t,n);var r=Tm;if(r&&e){var i=Ot(r).hoistableStyles,a=Fm(e);t||=`default`;var o=i.get(a);if(!o){var s={loading:0,preload:null};if(o=r.querySelector(Im(a)))s.loading=5;else{e=D({rel:`stylesheet`,href:e,"data-precedence":t},n),(n=ym.get(a))&&Um(e,n);var c=o=r.createElement(`link`);kt(c),ip(c,`link`,e),c._p=new Promise(function(e,t){c.onload=e,c.onerror=t}),c.addEventListener(`load`,function(){s.loading|=1}),c.addEventListener(`error`,function(){s.loading|=2}),s.loading|=4,Hm(o,t,r)}o={type:`stylesheet`,instance:o,count:1,state:s},i.set(a,o)}}}function Mm(e,t){Sm.X(e,t);var n=Tm;if(n&&e){var r=Ot(n).hoistableScripts,i=zm(e),a=r.get(i);a||(a=n.querySelector(Bm(i)),a||(e=D({src:e,async:!0},t),(t=ym.get(i))&&Wm(e,t),a=n.createElement(`script`),kt(a),ip(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function Nm(e,t){Sm.M(e,t);var n=Tm;if(n&&e){var r=Ot(n).hoistableScripts,i=zm(e),a=r.get(i);a||(a=n.querySelector(Bm(i)),a||(e=D({src:e,async:!0,type:`module`},t),(t=ym.get(i))&&Wm(e,t),a=n.createElement(`script`),kt(a),ip(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function Pm(e,t,n,r){var a=(a=_e.current)?xm(a):null;if(!a)throw Error(i(446));switch(e){case`meta`:case`title`:return null;case`style`:return typeof n.precedence==`string`&&typeof n.href==`string`?(n=Fm(n.href),t=Ot(a).hoistableStyles,r=t.get(n),r||(r={type:`style`,instance:null,count:0,state:null},t.set(n,r)),r):{type:`void`,instance:null,count:0,state:null};case`link`:if(n.rel===`stylesheet`&&typeof n.href==`string`&&typeof n.precedence==`string`){e=Fm(n.href);var o=Ot(a).hoistableStyles,s=o.get(e);if(s||(a=a.ownerDocument||a,s={type:`stylesheet`,instance:null,count:0,state:{loading:0,preload:null}},o.set(e,s),(o=a.querySelector(Im(e)))?o._p||(s.instance=o,s.state.loading=5):(o=ym.get(e),o||(o={rel:`preload`,as:`style`,href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},ym.set(e,o)),Rm(a,e,o,s.state))),t&&r===null)throw Error(i(528,``));return s}if(t&&r!==null)throw Error(i(529,``));return null;case`script`:return t=n.async,n=n.src,typeof n==`string`&&t&&typeof t!=`function`&&typeof t!=`symbol`?(n=zm(n),t=Ot(a).hoistableScripts,r=t.get(n),r||(r={type:`script`,instance:null,count:0,state:null},t.set(n,r)),r):{type:`void`,instance:null,count:0,state:null};default:throw Error(i(444,e))}}function Fm(e){return`href="`+qt(e)+`"`}function Im(e){return`link[rel="stylesheet"][`+e+`]`}function Lm(e){return D({},e,{"data-precedence":e.precedence,precedence:null})}function Rm(e,t,n,r){if(t=e.querySelector(`link[rel="preload"][as="style"][`+t+`]`)){if(!0!==t[Ct]){r.loading=1;return}}else t=e.createElement(`link`),t[Ct]=!0,t.onload=t.onerror=At.bind(null,t),ip(t,`link`,n),kt(t),e.head.appendChild(t);r.preload=t,t.addEventListener(`load`,function(){return r.loading|=1}),t.addEventListener(`error`,function(){return r.loading|=2})}function zm(e){return`[src="`+qt(e)+`"]`}function Bm(e){return`script[async]`+e}function Vm(e,t,n){if(t.count++,t.instance===null)switch(t.type){case`style`:var r=e.querySelector(`style[data-href~="`+qt(n.href)+`"]`);if(r)return t.instance=r,kt(r),r;var a=D({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return r=(e.ownerDocument||e).createElement(`style`),kt(r),ip(r,`style`,a),Hm(r,n.precedence,e),t.instance=r;case`stylesheet`:a=Fm(n.href);var o=e.querySelector(Im(a));if(o)return t.state.loading|=4,t.instance=o,kt(o),o;r=Lm(n),(a=ym.get(a))&&Um(r,a),o=(e.ownerDocument||e).createElement(`link`),kt(o);var s=o;return s._p=new Promise(function(e,t){s.onload=e,s.onerror=t}),ip(o,`link`,r),t.state.loading|=4,Hm(o,n.precedence,e),t.instance=o;case`script`:return o=zm(n.src),(a=e.querySelector(Bm(o)))?(t.instance=a,kt(a),a):(r=n,(a=ym.get(o))&&(r=D({},n),Wm(r,a)),e=e.ownerDocument||e,a=e.createElement(`script`),kt(a),ip(a,`link`,r),e.head.appendChild(a),t.instance=a);case`void`:return null;default:throw Error(i(443,t.type))}else t.type===`stylesheet`&&!(t.state.loading&4)&&(r=t.instance,t.state.loading|=4,Hm(r,n.precedence,e));return t.instance}function Hm(e,t,n){for(var r=n.querySelectorAll(`link[rel="stylesheet"][data-precedence],style[data-precedence]`),i=r.length?r[r.length-1]:null,a=i,o=0;o title`):null)}function Jm(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case`meta`:case`title`:return!0;case`style`:if(typeof t.precedence!=`string`||typeof t.href!=`string`||t.href===``)break;return!0;case`link`:if(typeof t.rel!=`string`||typeof t.href!=`string`||t.href===``||t.onLoad||t.onError)break;switch(t.rel){case`stylesheet`:return e=t.disabled,typeof t.precedence==`string`&&e==null;default:return!0}case`script`:if(t.async&&typeof t.async!=`function`&&typeof t.async!=`symbol`&&!t.onLoad&&!t.onError&&t.src&&typeof t.src==`string`)return!0}return!1}function Ym(e,t){return e===`img`&&t.src!=null&&t.src!==``&&t.onLoad==null&&t.loading!==`lazy`}function Xm(e){return!(e.type===`stylesheet`&&!(e.state.loading&3))}function Zm(e){return(e.width||100)*(e.height||100)*(typeof devicePixelRatio==`number`?devicePixelRatio:1)*.25}function Qm(e,t){typeof t.decode==`function`&&(e.imgCount++,t.complete||(e.imgBytes+=Zm(t),e.suspenseyImages.push(t)),e=ih.bind(e),t.decode().then(e,e))}function $m(e,t,n,r){if(n.type===`stylesheet`&&(typeof r.media!=`string`||!1!==matchMedia(r.media).matches)&&!(n.state.loading&4)){if(n.instance===null){var i=Fm(r.href),a=t.querySelector(Im(i));if(a){t=a._p,typeof t==`object`&&t&&typeof t.then==`function`&&(e.count++,e=rh.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=a,kt(a);return}a=t.ownerDocument||t,r=Lm(r),(i=ym.get(i))&&Um(r,i),a=a.createElement(`link`),kt(a);var o=a;o._p=new Promise(function(e,t){o.onload=e,o.onerror=t}),ip(a,`link`,r),n.instance=a}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&!(n.state.loading&3)&&(e.count++,n=rh.bind(e),t.addEventListener(`load`,n),t.addEventListener(`error`,n))}}var eh=0;function th(e,t){return e.stylesheets&&e.count===0&&oh(e,e.stylesheets),0eh?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(r),clearTimeout(i)}}:null}function nh(e){if(e.count===0&&(e.imgCount===0||!e.waitingForImages)){if(e.stylesheets)oh(e,e.stylesheets);else if(e.unsuspend){var t=e.unsuspend;e.unsuspend=null,t()}}}function rh(){this.count--,nh(this)}function ih(){this.imgCount--,nh(this)}var ah=null;function oh(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,ah=new Map,t.forEach(sh,e),ah=null,rh.call(e))}function sh(e,t){if(!(t.state.loading&4)){var n=ah.get(e);if(n)var r=n.get(null);else{n=new Map,ah.set(e,n);for(var i=e.querySelectorAll(`link[data-precedence],style[data-precedence]`),a=0;a{function n(){if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE==`function`)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=_()})),y=u(f(),1),b=v(),x=Object.defineProperty,S=(e,t)=>x(e,`name`,{value:t,configurable:!0});function C(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}S(C,`setRef`);function w(...e){return t=>{let n=!1,r=e.map(e=>{let r=C(e,t);return!n&&typeof r==`function`&&(n=!0),r});if(n)return()=>{for(let t=0;tE(e,`name`,{value:t,configurable:!0});function O(e){let t=y.forwardRef((t,n)=>{let{children:r,...i}=t,a=null,o=!1,s=[];r=z(r),y.Children.forEach(r,e=>{if(F(e)){o=!0;let t=e,n=`child`in t.props?t.props.child:t.props.children;for(;L(n)&&typeof H==`function`;)n=H(n._payload);a=M(t,n),s.push(a?.props?.children)}else s.push(e)}),a?a=y.cloneElement(a,void 0,s):!o&&y.Children.count(r)===1&&y.isValidElement(r)&&(a=r);let c=a?P(a):void 0,l=T(n,c);if(!a){if(r||r===0)throw Error(o?V(e):ee(e));return r}let u=N(i,a.props??{});return a.type!==y.Fragment&&(u.ref=n?l:c),y.cloneElement(a,u)});return t.displayName=`${e}.Slot`,t}D(O,`createSlot`);var k=O(`Slot`),A=Symbol.for(`radix.slottable`);function j(e){let t=D(e=>`child`in e?e.children(e.child):e.children,`Slottable`);return t.displayName=`${e}.Slottable`,t.__radixId=A,t}D(j,`createSlottable`);var M=D((e,t)=>`child`in e.props?y.isValidElement(t)?y.cloneElement(t,void 0,e.props.children(t.props.children)):null:y.isValidElement(t)?t:null,`getSlottableElementFromSlottable`);function N(e,t){let n={...t};for(let r in t){let i=e[r],a=t[r];/^on[A-Z]/.test(r)?i&&a?n[r]=(...e)=>{let t=a(...e);return i(...e),t}:i&&(n[r]=i):r===`style`?n[r]={...i,...a}:r===`className`?n[r]=[i,a].filter(Boolean).join(` `):r===`aria-describedby`&&(n[r]=B(a,i))}return{...e,...n}}D(N,`mergeProps`);function P(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}D(P,`getElementRef`);function F(e){return y.isValidElement(e)&&typeof e.type==`function`&&`__radixId`in e.type&&e.type.__radixId===A}D(F,`isSlottable`);var I=Symbol.for(`react.lazy`);function L(e){return typeof e==`object`&&!!e&&`$$typeof`in e&&e.$$typeof===I&&`_payload`in e&&R(e._payload)}D(L,`isLazyComponent`);function R(e){return typeof e==`object`&&!!e&&`then`in e}D(R,`isPromiseLike`);function z(e){let t=e;for(;L(t)&&typeof H==`function`;)t=H(t._payload);return t}D(z,`useUnwrappedLazy`);function B(...e){let t=new Set;for(let n of e)if(typeof n==`string`)for(let e of String(n).trim().split(/\s+/))e&&t.add(e);return t.size>0?Array.from(t).join(` `):void 0}D(B,`concatAriaDescribedby`);var ee=D(e=>`${e} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,`createSlotError`),V=D(e=>`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,`createSlottableError`),H=y.use;function te(e){var t,n,r=``;if(typeof e==`string`||typeof e==`number`)r+=e;else if(typeof e==`object`){if(Array.isArray(e)){var i=e.length;for(t=0;ttypeof e==`boolean`?`${e}`:e===0?`0`:e,ie=ne,ae=(e,t)=>n=>{if(t?.variants==null)return ie(e,n?.class,n?.className);let{variants:r,defaultVariants:i}=t,a=Object.keys(r).map(e=>{let t=n?.[e],a=i?.[e];if(t===null)return null;let o=re(t)||re(a);return r[e][o]}),o=n&&Object.entries(n).reduce((e,t)=>{let[n,r]=t;return r===void 0||(e[n]=r),e},{});return ie(e,a,t?.compoundVariants?.reduce((e,t)=>{let{class:n,className:r,...a}=t;return Object.entries(a).every(e=>{let[t,n]=e;return Array.isArray(n)?n.includes({...i,...o}[t]):{...i,...o}[t]===n})?[...e,n,r]:e},[]),n?.class,n?.className)},oe=(e,t)=>{let n=Array(e.length+t.length);for(let t=0;t({classGroupId:e,validator:t}),U=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),ce=`-`,le=[],ue=`arbitrary..`,de=e=>{let t=me(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:e=>{if(e.startsWith(`[`)&&e.endsWith(`]`))return pe(e);let n=e.split(ce);return fe(n,+(n[0]===``&&n.length>1),t)},getConflictingClassGroupIds:(e,t)=>{if(t){let t=r[e],i=n[e];return t?i?oe(i,t):t:i||le}return n[e]||le}}},fe=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;let r=e[t],i=n.nextPart.get(r);if(i){let n=fe(e,t+1,i);if(n)return n}let a=n.validators;if(a===null)return;let o=t===0?e.join(ce):e.slice(t).join(ce),s=a.length;for(let e=0;ee.slice(1,-1).indexOf(`:`)===-1?void 0:(()=>{let t=e.slice(1,-1),n=t.indexOf(`:`),r=t.slice(0,n);return r?ue+r:void 0})(),me=e=>{let{theme:t,classGroups:n}=e;return he(n,t)},he=(e,t)=>{let n=U();for(let r in e){let i=e[r];ge(i,n,r,t)}return n},ge=(e,t,n,r)=>{let i=e.length;for(let a=0;a{if(typeof e==`string`){ve(e,t,n);return}if(typeof e==`function`){ye(e,t,n,r);return}be(e,t,n,r)},ve=(e,t,n)=>{let r=e===``?t:xe(t,e);r.classGroupId=n},ye=(e,t,n,r)=>{if(Se(e)){ge(e(r),t,n,r);return}t.validators===null&&(t.validators=[]),t.validators.push(se(n,e))},be=(e,t,n,r)=>{let i=Object.entries(e),a=i.length;for(let e=0;e{let n=e,r=t.split(ce),i=r.length;for(let e=0;e`isThemeGetter`in e&&e.isThemeGetter===!0,Ce=e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null),i=(i,a)=>{n[i]=a,t++,t>e&&(t=0,r=n,n=Object.create(null))};return{get(e){let t=n[e];if(t!==void 0)return t;if((t=r[e])!==void 0)return i(e,t),t},set(e,t){e in n?n[e]=t:i(e,t)}}},we=`!`,Te=`:`,Ee=[],De=(e,t,n,r,i)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:i}),Oe=e=>{let{prefix:t,experimentalParseClassName:n}=e,r=e=>{let t=[],n=0,r=0,i=0,a,o=e.length;for(let s=0;si?a-i:void 0;return De(t,l,c,u)};if(t){let e=t+Te,n=r;r=t=>t.startsWith(e)?n(t.slice(e.length)):De(Ee,!1,t,void 0,!0)}if(n){let e=r;r=t=>n({className:t,parseClassName:e})}return r},ke=e=>{let t=new Map;return e.orderSensitiveModifiers.forEach((e,n)=>{t.set(e,1e6+n)}),e=>{let n=[],r=[];for(let i=0;i0&&(r.sort(),n.push(...r),r=[]),n.push(a)):r.push(a)}return r.length>0&&(r.sort(),n.push(...r)),n}},Ae=e=>({cache:Ce(e.cacheSize),parseClassName:Oe(e),sortModifiers:ke(e),postfixLookupClassGroupIds:je(e),...de(e)}),je=e=>{let t=Object.create(null),n=e.postfixLookupClassGroups;if(n)for(let e=0;e{let{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:i,sortModifiers:a,postfixLookupClassGroupIds:o}=t,s=[],c=e.trim().split(Me),l=``;for(let e=c.length-1;e>=0;--e){let t=c[e],{isExternal:u,modifiers:d,hasImportantModifier:f,baseClassName:p,maybePostfixModifierPosition:m}=n(t);if(u){l=t+(l.length>0?` `+l:l);continue}let h=!!m,g;if(h){g=r(p.substring(0,m));let e=g&&o[g]?r(p):void 0;e&&e!==g&&(g=e,h=!1)}else g=r(p);if(!g){if(!h){l=t+(l.length>0?` `+l:l);continue}if(g=r(p),!g){l=t+(l.length>0?` `+l:l);continue}h=!1}let _=d.length===0?``:d.length===1?d[0]:a(d).join(`:`),v=f?_+we:_,y=v+g;if(s.indexOf(y)>-1)continue;s.push(y);let b=i(g,h);for(let e=0;e0?` `+l:l)}return l},Pe=(...e)=>{let t=0,n,r,i=``;for(;t{if(typeof e==`string`)return e;let t,n=``;for(let r=0;r{let n,r,i,a,o=o=>(n=Ae(t.reduce((e,t)=>t(e),e())),r=n.cache.get,i=n.cache.set,a=s,s(o)),s=e=>{let t=r(e);if(t)return t;let a=Ne(e,n);return i(e,a),a};return a=o,(...e)=>a(Pe(...e))},Le=[],Re=e=>{let t=t=>t[e]||Le;return t.isThemeGetter=!0,t.themeKey=e,t},ze=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,Be=/^\((?:(\w[\w-]*):)?(.+)\)$/i,Ve=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,He=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,Ue=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,We=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix|color|light-dark)\(.+\)$/,Ge=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,Ke=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,qe=e=>Ve.test(e),Je=e=>!!e&&!Number.isNaN(Number(e)),Ye=e=>!!e&&Number.isInteger(Number(e)),Xe=e=>e.endsWith(`%`)&&Je(e.slice(0,-1)),Ze=e=>He.test(e),Qe=()=>!0,$e=e=>Ue.test(e)&&!We.test(e),et=()=>!1,tt=e=>Ge.test(e),nt=e=>Ke.test(e),rt=e=>!W(e)&&!G(e),it=e=>e.startsWith(`@container`)&&(e[10]===`/`&&e[11]!==void 0||e[11]===`s`&&e[16]!==void 0&&e.startsWith(`-size/`,10)||e[11]===`n`&&e[18]!==void 0&&e.startsWith(`-normal/`,10)),at=e=>bt(e,wt,et),W=e=>ze.test(e),ot=e=>bt(e,Tt,$e),st=e=>bt(e,Et,Je),ct=e=>bt(e,Ot,Qe),lt=e=>bt(e,Dt,et),ut=e=>bt(e,St,et),dt=e=>bt(e,Ct,nt),ft=e=>bt(e,kt,tt),G=e=>Be.test(e),pt=e=>xt(e,Tt),mt=e=>xt(e,Dt),ht=e=>xt(e,St),gt=e=>xt(e,wt),_t=e=>xt(e,Ct),vt=e=>xt(e,kt,!0),yt=e=>xt(e,Ot,!0),bt=(e,t,n)=>{let r=ze.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},xt=(e,t,n=!1)=>{let r=Be.exec(e);return r?r[1]?t(r[1]):n:!1},St=e=>e===`position`||e===`percentage`,Ct=e=>e===`image`||e===`url`,wt=e=>e===`length`||e===`size`||e===`bg-size`,Tt=e=>e===`length`,Et=e=>e===`number`,Dt=e=>e===`family-name`,Ot=e=>e===`number`||e===`weight`,kt=e=>e===`shadow`,At=Ie(()=>{let e=Re(`color`),t=Re(`font`),n=Re(`text`),r=Re(`font-weight`),i=Re(`tracking`),a=Re(`leading`),o=Re(`breakpoint`),s=Re(`container`),c=Re(`spacing`),l=Re(`radius`),u=Re(`shadow`),d=Re(`inset-shadow`),f=Re(`text-shadow`),p=Re(`drop-shadow`),m=Re(`blur`),h=Re(`perspective`),g=Re(`aspect`),_=Re(`ease`),v=Re(`animate`),y=()=>[`auto`,`avoid`,`all`,`avoid-page`,`page`,`left`,`right`,`column`],b=()=>[`center`,`top`,`bottom`,`left`,`right`,`top-left`,`left-top`,`top-right`,`right-top`,`bottom-right`,`right-bottom`,`bottom-left`,`left-bottom`],x=()=>[...b(),G,W],S=()=>[`auto`,`hidden`,`clip`,`visible`,`scroll`],C=()=>[`auto`,`contain`,`none`],w=()=>[G,W,c],T=()=>[qe,`full`,`auto`,...w()],E=()=>[Ye,`none`,`subgrid`,G,W],D=()=>[`auto`,{span:[`full`,Ye,G,W]},Ye,G,W],O=()=>[Ye,`auto`,G,W],k=()=>[`auto`,`min`,`max`,`fr`,G,W],A=()=>[`start`,`end`,`center`,`between`,`around`,`evenly`,`stretch`,`baseline`,`center-safe`,`end-safe`],j=()=>[`start`,`end`,`center`,`stretch`,`center-safe`,`end-safe`],M=()=>[`auto`,...w()],N=()=>[qe,`auto`,`full`,`dvw`,`dvh`,`lvw`,`lvh`,`svw`,`svh`,`min`,`max`,`fit`,...w()],P=()=>[s,qe,`screen`,`full`,`dvw`,`lvw`,`svw`,`min`,`max`,`fit`,...w()],F=()=>[qe,`screen`,`full`,`lh`,`dvh`,`lvh`,`svh`,`min`,`max`,`fit`,...w()],I=()=>[e,G,W],L=()=>[...b(),ht,ut,{position:[G,W]}],R=()=>[`no-repeat`,{repeat:[``,`x`,`y`,`space`,`round`]}],z=()=>[`auto`,`cover`,`contain`,gt,at,{size:[G,W]}],B=()=>[Xe,pt,ot],ee=()=>[``,`none`,`full`,l,G,W],V=()=>[``,Je,pt,ot],H=()=>[`solid`,`dashed`,`dotted`,`double`],te=()=>[`normal`,`multiply`,`screen`,`overlay`,`darken`,`lighten`,`color-dodge`,`color-burn`,`hard-light`,`soft-light`,`difference`,`exclusion`,`hue`,`saturation`,`color`,`luminosity`],ne=()=>[Je,Xe,ht,ut],re=()=>[``,`none`,m,G,W],ie=()=>[`none`,Je,G,W],ae=()=>[`none`,Je,G,W],oe=()=>[Je,G,W],se=()=>[qe,`full`,...w()];return{cacheSize:500,theme:{animate:[`spin`,`ping`,`pulse`,`bounce`],aspect:[`video`],blur:[Ze],breakpoint:[Ze],color:[Qe],container:[Ze],"drop-shadow":[Ze],ease:[`in`,`out`,`in-out`],font:[rt],"font-weight":[`thin`,`extralight`,`light`,`normal`,`medium`,`semibold`,`bold`,`extrabold`,`black`],"inset-shadow":[Ze],leading:[`none`,`tight`,`snug`,`normal`,`relaxed`,`loose`],perspective:[`dramatic`,`near`,`normal`,`midrange`,`distant`,`none`],radius:[Ze],shadow:[Ze],spacing:[`px`,Je],text:[Ze],"text-shadow":[Ze],tracking:[`tighter`,`tight`,`normal`,`wide`,`wider`,`widest`]},classGroups:{aspect:[{aspect:[`auto`,`square`,qe,W,G,g]}],container:[`container`],"container-type":[{"@container":[``,`normal`,`size`,G,W]}],"container-named":[it],columns:[{columns:[Je,`auto`,W,G,s]}],"break-after":[{"break-after":y()}],"break-before":[{"break-before":y()}],"break-inside":[{"break-inside":[`auto`,`avoid`,`avoid-page`,`avoid-column`]}],"box-decoration":[{"box-decoration":[`slice`,`clone`]}],box:[{box:[`border`,`content`]}],display:[`block`,`inline-block`,`inline`,`flex`,`inline-flex`,`table`,`inline-table`,`table-caption`,`table-cell`,`table-column`,`table-column-group`,`table-footer-group`,`table-header-group`,`table-row-group`,`table-row`,`flow-root`,`grid`,`inline-grid`,`contents`,`list-item`,`hidden`],sr:[`sr-only`,`not-sr-only`],float:[{float:[`right`,`left`,`none`,`start`,`end`]}],clear:[{clear:[`left`,`right`,`both`,`none`,`start`,`end`]}],isolation:[`isolate`,`isolation-auto`],"object-fit":[{object:[`contain`,`cover`,`fill`,`none`,`scale-down`]}],"object-position":[{object:x()}],overflow:[{overflow:S()}],"overflow-x":[{"overflow-x":S()}],"overflow-y":[{"overflow-y":S()}],overscroll:[{overscroll:C()}],"overscroll-x":[{"overscroll-x":C()}],"overscroll-y":[{"overscroll-y":C()}],position:[`static`,`fixed`,`absolute`,`relative`,`sticky`],inset:[{inset:T()}],"inset-x":[{"inset-x":T()}],"inset-y":[{"inset-y":T()}],start:[{"inset-s":T(),start:T()}],end:[{"inset-e":T(),end:T()}],"inset-bs":[{"inset-bs":T()}],"inset-be":[{"inset-be":T()}],top:[{top:T()}],right:[{right:T()}],bottom:[{bottom:T()}],left:[{left:T()}],visibility:[`visible`,`invisible`,`collapse`],z:[{z:[Ye,`auto`,G,W]}],basis:[{basis:[qe,`full`,`auto`,s,...w()]}],"flex-direction":[{flex:[`row`,`row-reverse`,`col`,`col-reverse`]}],"flex-wrap":[{flex:[`nowrap`,`wrap`,`wrap-reverse`]}],flex:[{flex:[Je,qe,`auto`,`initial`,`none`,W]}],grow:[{grow:[``,Je,G,W]}],shrink:[{shrink:[``,Je,G,W]}],order:[{order:[Ye,`first`,`last`,`none`,G,W]}],"grid-cols":[{"grid-cols":E()}],"col-start-end":[{col:D()}],"col-start":[{"col-start":O()}],"col-end":[{"col-end":O()}],"grid-rows":[{"grid-rows":E()}],"row-start-end":[{row:D()}],"row-start":[{"row-start":O()}],"row-end":[{"row-end":O()}],"grid-flow":[{"grid-flow":[`row`,`col`,`dense`,`row-dense`,`col-dense`]}],"auto-cols":[{"auto-cols":k()}],"auto-rows":[{"auto-rows":k()}],gap:[{gap:w()}],"gap-x":[{"gap-x":w()}],"gap-y":[{"gap-y":w()}],"justify-content":[{justify:[...A(),`normal`]}],"justify-items":[{"justify-items":[...j(),`normal`]}],"justify-self":[{"justify-self":[`auto`,...j()]}],"align-content":[{content:[`normal`,...A()]}],"align-items":[{items:[...j(),{baseline:[``,`last`]}]}],"align-self":[{self:[`auto`,...j(),{baseline:[``,`last`]}]}],"place-content":[{"place-content":A()}],"place-items":[{"place-items":[...j(),`baseline`]}],"place-self":[{"place-self":[`auto`,...j()]}],p:[{p:w()}],px:[{px:w()}],py:[{py:w()}],ps:[{ps:w()}],pe:[{pe:w()}],pbs:[{pbs:w()}],pbe:[{pbe:w()}],pt:[{pt:w()}],pr:[{pr:w()}],pb:[{pb:w()}],pl:[{pl:w()}],m:[{m:M()}],mx:[{mx:M()}],my:[{my:M()}],ms:[{ms:M()}],me:[{me:M()}],mbs:[{mbs:M()}],mbe:[{mbe:M()}],mt:[{mt:M()}],mr:[{mr:M()}],mb:[{mb:M()}],ml:[{ml:M()}],"space-x":[{"space-x":w()}],"space-x-reverse":[`space-x-reverse`],"space-y":[{"space-y":w()}],"space-y-reverse":[`space-y-reverse`],size:[{size:N()}],"inline-size":[{inline:[`auto`,...P()]}],"min-inline-size":[{"min-inline":[`auto`,...P()]}],"max-inline-size":[{"max-inline":[`none`,...P()]}],"block-size":[{block:[`auto`,...F()]}],"min-block-size":[{"min-block":[`auto`,...F()]}],"max-block-size":[{"max-block":[`none`,...F()]}],w:[{w:[s,`screen`,...N()]}],"min-w":[{"min-w":[s,`screen`,`none`,...N()]}],"max-w":[{"max-w":[s,`screen`,`none`,`prose`,{screen:[o]},...N()]}],h:[{h:[`screen`,`lh`,...N()]}],"min-h":[{"min-h":[`screen`,`lh`,`none`,...N()]}],"max-h":[{"max-h":[`screen`,`lh`,`none`,...N()]}],"font-size":[{text:[`base`,n,pt,ot]}],"font-smoothing":[`antialiased`,`subpixel-antialiased`],"font-style":[`italic`,`not-italic`],"font-weight":[{font:[r,yt,ct]}],"font-stretch":[{"font-stretch":[`ultra-condensed`,`extra-condensed`,`condensed`,`semi-condensed`,`normal`,`semi-expanded`,`expanded`,`extra-expanded`,`ultra-expanded`,Xe,W]}],"font-family":[{font:[mt,lt,t]}],"font-features":[{"font-features":[W]}],"fvn-normal":[`normal-nums`],"fvn-ordinal":[`ordinal`],"fvn-slashed-zero":[`slashed-zero`],"fvn-figure":[`lining-nums`,`oldstyle-nums`],"fvn-spacing":[`proportional-nums`,`tabular-nums`],"fvn-fraction":[`diagonal-fractions`,`stacked-fractions`],tracking:[{tracking:[i,G,W]}],"line-clamp":[{"line-clamp":[Je,`none`,G,st]}],leading:[{leading:[`none`,a,...w()]}],"list-image":[{"list-image":[`none`,G,W]}],"list-style-position":[{list:[`inside`,`outside`]}],"list-style-type":[{list:[`disc`,`decimal`,`none`,G,W]}],"text-alignment":[{text:[`left`,`center`,`right`,`justify`,`start`,`end`]}],"placeholder-color":[{placeholder:I()}],"text-color":[{text:I()}],"text-decoration":[`underline`,`overline`,`line-through`,`no-underline`],"text-decoration-style":[{decoration:[...H(),`wavy`]}],"text-decoration-thickness":[{decoration:[Je,`from-font`,`auto`,G,ot]}],"text-decoration-color":[{decoration:I()}],"underline-offset":[{"underline-offset":[Je,`auto`,G,W]}],"text-transform":[`uppercase`,`lowercase`,`capitalize`,`normal-case`],"text-overflow":[`truncate`,`text-ellipsis`,`text-clip`],"text-wrap":[{text:[`wrap`,`nowrap`,`balance`,`pretty`]}],indent:[{indent:w()}],"tab-size":[{tab:[Ye,G,W]}],"vertical-align":[{align:[`baseline`,`top`,`middle`,`bottom`,`text-top`,`text-bottom`,`sub`,`super`,G,W]}],whitespace:[{whitespace:[`normal`,`nowrap`,`pre`,`pre-line`,`pre-wrap`,`break-spaces`]}],break:[{break:[`normal`,`words`,`all`,`keep`]}],wrap:[{wrap:[`break-word`,`anywhere`,`normal`]}],hyphens:[{hyphens:[`none`,`manual`,`auto`]}],content:[{content:[`none`,G,W]}],"bg-attachment":[{bg:[`fixed`,`local`,`scroll`]}],"bg-clip":[{"bg-clip":[`border`,`padding`,`content`,`text`]}],"bg-origin":[{"bg-origin":[`border`,`padding`,`content`]}],"bg-position":[{bg:L()}],"bg-repeat":[{bg:R()}],"bg-size":[{bg:z()}],"bg-image":[{bg:[`none`,{linear:[{to:[`t`,`tr`,`r`,`br`,`b`,`bl`,`l`,`tl`]},Ye,G,W],radial:[``,G,W],conic:[``,Ye,G,W]},_t,dt]}],"bg-color":[{bg:I()}],"gradient-from-pos":[{from:B()}],"gradient-via-pos":[{via:B()}],"gradient-to-pos":[{to:B()}],"gradient-from":[{from:I()}],"gradient-via":[{via:I()}],"gradient-to":[{to:I()}],rounded:[{rounded:ee()}],"rounded-s":[{"rounded-s":ee()}],"rounded-e":[{"rounded-e":ee()}],"rounded-t":[{"rounded-t":ee()}],"rounded-r":[{"rounded-r":ee()}],"rounded-b":[{"rounded-b":ee()}],"rounded-l":[{"rounded-l":ee()}],"rounded-ss":[{"rounded-ss":ee()}],"rounded-se":[{"rounded-se":ee()}],"rounded-ee":[{"rounded-ee":ee()}],"rounded-es":[{"rounded-es":ee()}],"rounded-tl":[{"rounded-tl":ee()}],"rounded-tr":[{"rounded-tr":ee()}],"rounded-br":[{"rounded-br":ee()}],"rounded-bl":[{"rounded-bl":ee()}],"border-w":[{border:V()}],"border-w-x":[{"border-x":V()}],"border-w-y":[{"border-y":V()}],"border-w-s":[{"border-s":V()}],"border-w-e":[{"border-e":V()}],"border-w-bs":[{"border-bs":V()}],"border-w-be":[{"border-be":V()}],"border-w-t":[{"border-t":V()}],"border-w-r":[{"border-r":V()}],"border-w-b":[{"border-b":V()}],"border-w-l":[{"border-l":V()}],"divide-x":[{"divide-x":V()}],"divide-x-reverse":[`divide-x-reverse`],"divide-y":[{"divide-y":V()}],"divide-y-reverse":[`divide-y-reverse`],"border-style":[{border:[...H(),`hidden`,`none`]}],"divide-style":[{divide:[...H(),`hidden`,`none`]}],"border-color":[{border:I()}],"border-color-x":[{"border-x":I()}],"border-color-y":[{"border-y":I()}],"border-color-s":[{"border-s":I()}],"border-color-e":[{"border-e":I()}],"border-color-bs":[{"border-bs":I()}],"border-color-be":[{"border-be":I()}],"border-color-t":[{"border-t":I()}],"border-color-r":[{"border-r":I()}],"border-color-b":[{"border-b":I()}],"border-color-l":[{"border-l":I()}],"divide-color":[{divide:I()}],"outline-style":[{outline:[...H(),`none`,`hidden`]}],"outline-offset":[{"outline-offset":[Je,G,W]}],"outline-w":[{outline:[``,Je,pt,ot]}],"outline-color":[{outline:I()}],shadow:[{shadow:[``,`inner`,`none`,u,vt,ft]}],"shadow-color":[{shadow:I()}],"inset-shadow":[{"inset-shadow":[`none`,d,vt,ft]}],"inset-shadow-color":[{"inset-shadow":I()}],"ring-w":[{ring:V()}],"ring-w-inset":[`ring-inset`],"ring-color":[{ring:I()}],"ring-offset-w":[{"ring-offset":[Je,ot]}],"ring-offset-color":[{"ring-offset":I()}],"inset-ring-w":[{"inset-ring":V()}],"inset-ring-color":[{"inset-ring":I()}],"text-shadow":[{"text-shadow":[`none`,f,vt,ft]}],"text-shadow-color":[{"text-shadow":I()}],opacity:[{opacity:[Je,G,W]}],"mix-blend":[{"mix-blend":[...te(),`plus-darker`,`plus-lighter`]}],"bg-blend":[{"bg-blend":te()}],"mask-clip":[{"mask-clip":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]},`mask-no-clip`],"mask-composite":[{mask:[`add`,`subtract`,`intersect`,`exclude`]}],"mask-image-linear-pos":[{"mask-linear":[Je]}],"mask-image-linear-from-pos":[{"mask-linear-from":ne()}],"mask-image-linear-to-pos":[{"mask-linear-to":ne()}],"mask-image-linear-from-color":[{"mask-linear-from":I()}],"mask-image-linear-to-color":[{"mask-linear-to":I()}],"mask-image-t-from-pos":[{"mask-t-from":ne()}],"mask-image-t-to-pos":[{"mask-t-to":ne()}],"mask-image-t-from-color":[{"mask-t-from":I()}],"mask-image-t-to-color":[{"mask-t-to":I()}],"mask-image-r-from-pos":[{"mask-r-from":ne()}],"mask-image-r-to-pos":[{"mask-r-to":ne()}],"mask-image-r-from-color":[{"mask-r-from":I()}],"mask-image-r-to-color":[{"mask-r-to":I()}],"mask-image-b-from-pos":[{"mask-b-from":ne()}],"mask-image-b-to-pos":[{"mask-b-to":ne()}],"mask-image-b-from-color":[{"mask-b-from":I()}],"mask-image-b-to-color":[{"mask-b-to":I()}],"mask-image-l-from-pos":[{"mask-l-from":ne()}],"mask-image-l-to-pos":[{"mask-l-to":ne()}],"mask-image-l-from-color":[{"mask-l-from":I()}],"mask-image-l-to-color":[{"mask-l-to":I()}],"mask-image-x-from-pos":[{"mask-x-from":ne()}],"mask-image-x-to-pos":[{"mask-x-to":ne()}],"mask-image-x-from-color":[{"mask-x-from":I()}],"mask-image-x-to-color":[{"mask-x-to":I()}],"mask-image-y-from-pos":[{"mask-y-from":ne()}],"mask-image-y-to-pos":[{"mask-y-to":ne()}],"mask-image-y-from-color":[{"mask-y-from":I()}],"mask-image-y-to-color":[{"mask-y-to":I()}],"mask-image-radial":[{"mask-radial":[G,W]}],"mask-image-radial-from-pos":[{"mask-radial-from":ne()}],"mask-image-radial-to-pos":[{"mask-radial-to":ne()}],"mask-image-radial-from-color":[{"mask-radial-from":I()}],"mask-image-radial-to-color":[{"mask-radial-to":I()}],"mask-image-radial-shape":[{"mask-radial":[`circle`,`ellipse`]}],"mask-image-radial-size":[{"mask-radial":[{closest:[`side`,`corner`],farthest:[`side`,`corner`]}]}],"mask-image-radial-pos":[{"mask-radial-at":b()}],"mask-image-conic-pos":[{"mask-conic":[Je]}],"mask-image-conic-from-pos":[{"mask-conic-from":ne()}],"mask-image-conic-to-pos":[{"mask-conic-to":ne()}],"mask-image-conic-from-color":[{"mask-conic-from":I()}],"mask-image-conic-to-color":[{"mask-conic-to":I()}],"mask-mode":[{mask:[`alpha`,`luminance`,`match`]}],"mask-origin":[{"mask-origin":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]}],"mask-position":[{mask:L()}],"mask-repeat":[{mask:R()}],"mask-size":[{mask:z()}],"mask-type":[{"mask-type":[`alpha`,`luminance`]}],"mask-image":[{mask:[`none`,G,W]}],filter:[{filter:[``,`none`,G,W]}],blur:[{blur:re()}],brightness:[{brightness:[Je,G,W]}],contrast:[{contrast:[Je,G,W]}],"drop-shadow":[{"drop-shadow":[``,`none`,p,vt,ft]}],"drop-shadow-color":[{"drop-shadow":I()}],grayscale:[{grayscale:[``,Je,G,W]}],"hue-rotate":[{"hue-rotate":[Je,G,W]}],invert:[{invert:[``,Je,G,W]}],saturate:[{saturate:[Je,G,W]}],sepia:[{sepia:[``,Je,G,W]}],"backdrop-filter":[{"backdrop-filter":[``,`none`,G,W]}],"backdrop-blur":[{"backdrop-blur":re()}],"backdrop-brightness":[{"backdrop-brightness":[Je,G,W]}],"backdrop-contrast":[{"backdrop-contrast":[Je,G,W]}],"backdrop-grayscale":[{"backdrop-grayscale":[``,Je,G,W]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[Je,G,W]}],"backdrop-invert":[{"backdrop-invert":[``,Je,G,W]}],"backdrop-opacity":[{"backdrop-opacity":[Je,G,W]}],"backdrop-saturate":[{"backdrop-saturate":[Je,G,W]}],"backdrop-sepia":[{"backdrop-sepia":[``,Je,G,W]}],"border-collapse":[{border:[`collapse`,`separate`]}],"border-spacing":[{"border-spacing":w()}],"border-spacing-x":[{"border-spacing-x":w()}],"border-spacing-y":[{"border-spacing-y":w()}],"table-layout":[{table:[`auto`,`fixed`]}],caption:[{caption:[`top`,`bottom`]}],transition:[{transition:[``,`all`,`colors`,`opacity`,`shadow`,`transform`,`none`,G,W]}],"transition-behavior":[{transition:[`normal`,`discrete`]}],duration:[{duration:[Je,`initial`,G,W]}],ease:[{ease:[`linear`,`initial`,_,G,W]}],delay:[{delay:[Je,G,W]}],animate:[{animate:[`none`,v,G,W]}],backface:[{backface:[`hidden`,`visible`]}],perspective:[{perspective:[h,G,W]}],"perspective-origin":[{"perspective-origin":x()}],rotate:[{rotate:ie()}],"rotate-x":[{"rotate-x":ie()}],"rotate-y":[{"rotate-y":ie()}],"rotate-z":[{"rotate-z":ie()}],scale:[{scale:ae()}],"scale-x":[{"scale-x":ae()}],"scale-y":[{"scale-y":ae()}],"scale-z":[{"scale-z":ae()}],"scale-3d":[`scale-3d`],skew:[{skew:oe()}],"skew-x":[{"skew-x":oe()}],"skew-y":[{"skew-y":oe()}],transform:[{transform:[G,W,``,`none`,`gpu`,`cpu`]}],"transform-origin":[{origin:x()}],"transform-style":[{transform:[`3d`,`flat`]}],translate:[{translate:se()}],"translate-x":[{"translate-x":se()}],"translate-y":[{"translate-y":se()}],"translate-z":[{"translate-z":se()}],"translate-none":[`translate-none`],zoom:[{zoom:[Ye,G,W]}],accent:[{accent:I()}],appearance:[{appearance:[`none`,`auto`]}],"caret-color":[{caret:I()}],"color-scheme":[{scheme:[`normal`,`dark`,`light`,`light-dark`,`only-dark`,`only-light`]}],cursor:[{cursor:[`auto`,`default`,`pointer`,`wait`,`text`,`move`,`help`,`not-allowed`,`none`,`context-menu`,`progress`,`cell`,`crosshair`,`vertical-text`,`alias`,`copy`,`no-drop`,`grab`,`grabbing`,`all-scroll`,`col-resize`,`row-resize`,`n-resize`,`e-resize`,`s-resize`,`w-resize`,`ne-resize`,`nw-resize`,`se-resize`,`sw-resize`,`ew-resize`,`ns-resize`,`nesw-resize`,`nwse-resize`,`zoom-in`,`zoom-out`,G,W]}],"field-sizing":[{"field-sizing":[`fixed`,`content`]}],"pointer-events":[{"pointer-events":[`auto`,`none`]}],resize:[{resize:[`none`,``,`y`,`x`]}],"scroll-behavior":[{scroll:[`auto`,`smooth`]}],"scrollbar-thumb-color":[{"scrollbar-thumb":I()}],"scrollbar-track-color":[{"scrollbar-track":I()}],"scrollbar-gutter":[{"scrollbar-gutter":[`auto`,`stable`,`both`]}],"scrollbar-w":[{scrollbar:[`auto`,`thin`,`none`]}],"scroll-m":[{"scroll-m":w()}],"scroll-mx":[{"scroll-mx":w()}],"scroll-my":[{"scroll-my":w()}],"scroll-ms":[{"scroll-ms":w()}],"scroll-me":[{"scroll-me":w()}],"scroll-mbs":[{"scroll-mbs":w()}],"scroll-mbe":[{"scroll-mbe":w()}],"scroll-mt":[{"scroll-mt":w()}],"scroll-mr":[{"scroll-mr":w()}],"scroll-mb":[{"scroll-mb":w()}],"scroll-ml":[{"scroll-ml":w()}],"scroll-p":[{"scroll-p":w()}],"scroll-px":[{"scroll-px":w()}],"scroll-py":[{"scroll-py":w()}],"scroll-ps":[{"scroll-ps":w()}],"scroll-pe":[{"scroll-pe":w()}],"scroll-pbs":[{"scroll-pbs":w()}],"scroll-pbe":[{"scroll-pbe":w()}],"scroll-pt":[{"scroll-pt":w()}],"scroll-pr":[{"scroll-pr":w()}],"scroll-pb":[{"scroll-pb":w()}],"scroll-pl":[{"scroll-pl":w()}],"snap-align":[{snap:[`start`,`end`,`center`,`align-none`]}],"snap-stop":[{snap:[`normal`,`always`]}],"snap-type":[{snap:[`none`,`x`,`y`,`both`]}],"snap-strictness":[{snap:[`mandatory`,`proximity`]}],touch:[{touch:[`auto`,`none`,`manipulation`]}],"touch-x":[{"touch-pan":[`x`,`left`,`right`]}],"touch-y":[{"touch-pan":[`y`,`up`,`down`]}],"touch-pz":[`touch-pinch-zoom`],select:[{select:[`none`,`text`,`all`,`auto`]}],"will-change":[{"will-change":[`auto`,`scroll`,`contents`,`transform`,G,W]}],fill:[{fill:[`none`,...I()]}],"stroke-w":[{stroke:[Je,pt,ot,st]}],stroke:[{stroke:[`none`,...I()]}],"forced-color-adjust":[{"forced-color-adjust":[`auto`,`none`]}]},conflictingClassGroups:{"container-named":[`container-type`],overflow:[`overflow-x`,`overflow-y`],overscroll:[`overscroll-x`,`overscroll-y`],inset:[`inset-x`,`inset-y`,`inset-bs`,`inset-be`,`start`,`end`,`top`,`right`,`bottom`,`left`],"inset-x":[`start`,`end`,`right`,`left`],"inset-y":[`inset-bs`,`inset-be`,`top`,`bottom`],flex:[`basis`,`grow`,`shrink`],gap:[`gap-x`,`gap-y`],p:[`px`,`py`,`ps`,`pe`,`pbs`,`pbe`,`pt`,`pr`,`pb`,`pl`],px:[`ps`,`pe`,`pr`,`pl`],py:[`pbs`,`pbe`,`pt`,`pb`],m:[`mx`,`my`,`ms`,`me`,`mbs`,`mbe`,`mt`,`mr`,`mb`,`ml`],mx:[`ms`,`me`,`mr`,`ml`],my:[`mbs`,`mbe`,`mt`,`mb`],size:[`w`,`h`],"font-size":[`leading`],"fvn-normal":[`fvn-ordinal`,`fvn-slashed-zero`,`fvn-figure`,`fvn-spacing`,`fvn-fraction`],"fvn-ordinal":[`fvn-normal`],"fvn-slashed-zero":[`fvn-normal`],"fvn-figure":[`fvn-normal`],"fvn-spacing":[`fvn-normal`],"fvn-fraction":[`fvn-normal`],"line-clamp":[`display`,`overflow`],rounded:[`rounded-s`,`rounded-e`,`rounded-t`,`rounded-r`,`rounded-b`,`rounded-l`,`rounded-ss`,`rounded-se`,`rounded-ee`,`rounded-es`,`rounded-tl`,`rounded-tr`,`rounded-br`,`rounded-bl`],"rounded-s":[`rounded-ss`,`rounded-es`],"rounded-e":[`rounded-se`,`rounded-ee`],"rounded-t":[`rounded-tl`,`rounded-tr`],"rounded-r":[`rounded-tr`,`rounded-br`],"rounded-b":[`rounded-br`,`rounded-bl`],"rounded-l":[`rounded-tl`,`rounded-bl`],"border-spacing":[`border-spacing-x`,`border-spacing-y`],"border-w":[`border-w-x`,`border-w-y`,`border-w-s`,`border-w-e`,`border-w-bs`,`border-w-be`,`border-w-t`,`border-w-r`,`border-w-b`,`border-w-l`],"border-w-x":[`border-w-s`,`border-w-e`,`border-w-r`,`border-w-l`],"border-w-y":[`border-w-bs`,`border-w-be`,`border-w-t`,`border-w-b`],"border-color":[`border-color-x`,`border-color-y`,`border-color-s`,`border-color-e`,`border-color-bs`,`border-color-be`,`border-color-t`,`border-color-r`,`border-color-b`,`border-color-l`],"border-color-x":[`border-color-s`,`border-color-e`,`border-color-r`,`border-color-l`],"border-color-y":[`border-color-bs`,`border-color-be`,`border-color-t`,`border-color-b`],translate:[`translate-x`,`translate-y`,`translate-none`],"translate-none":[`translate`,`translate-x`,`translate-y`,`translate-z`],"scroll-m":[`scroll-mx`,`scroll-my`,`scroll-ms`,`scroll-me`,`scroll-mbs`,`scroll-mbe`,`scroll-mt`,`scroll-mr`,`scroll-mb`,`scroll-ml`],"scroll-mx":[`scroll-ms`,`scroll-me`,`scroll-mr`,`scroll-ml`],"scroll-my":[`scroll-mbs`,`scroll-mbe`,`scroll-mt`,`scroll-mb`],"scroll-p":[`scroll-px`,`scroll-py`,`scroll-ps`,`scroll-pe`,`scroll-pbs`,`scroll-pbe`,`scroll-pt`,`scroll-pr`,`scroll-pb`,`scroll-pl`],"scroll-px":[`scroll-ps`,`scroll-pe`,`scroll-pr`,`scroll-pl`],"scroll-py":[`scroll-pbs`,`scroll-pbe`,`scroll-pt`,`scroll-pb`],touch:[`touch-x`,`touch-y`,`touch-pz`],"touch-x":[`touch`],"touch-y":[`touch`],"touch-pz":[`touch`]},conflictingClassGroupModifiers:{"font-size":[`leading`]},postfixLookupClassGroups:[`container-type`],orderSensitiveModifiers:[`*`,`**`,`after`,`backdrop`,`before`,`details-content`,`file`,`first-letter`,`first-line`,`marker`,`placeholder`,`selection`]}});function jt(...e){return At(ne(e))}var Mt=s((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.fragment`);function r(e,n,r){var i=null;if(r!==void 0&&(i=``+r),n.key!==void 0&&(i=``+n.key),`key`in n)for(var a in r={},n)a!==`key`&&(r[a]=n[a]);else r=n;return n=r.ref,{$$typeof:t,type:e,key:i,ref:n===void 0?null:n,props:r}}e.Fragment=n,e.jsx=r,e.jsxs=r})),K=s(((e,t)=>{t.exports=Mt()}))(),Nt=ae(`inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive`,{variants:{variant:{default:`bg-primary text-primary-foreground shadow-xs hover:bg-primary/90`,destructive:`bg-destructive text-white shadow-xs hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60`,outline:`border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50`,secondary:`bg-secondary text-secondary-foreground shadow-xs hover:bg-secondary/80`,ghost:`hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50`,link:`text-primary underline-offset-4 hover:underline`},size:{default:`h-9 px-4 py-2 has-[>svg]:px-3`,sm:`h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5`,lg:`h-10 rounded-md px-6 has-[>svg]:px-4`,icon:`size-9`}},defaultVariants:{variant:`default`,size:`default`}});function q({className:e,variant:t,size:n,asChild:r=!1,...i}){return(0,K.jsx)(r?k:`button`,{"data-slot":`button`,className:jt(Nt({variant:t,size:n,className:e})),...i})}var Pt=ae(`inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2`,{variants:{variant:{default:`border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80`,secondary:`border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80`,destructive:`border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80`,outline:`text-foreground`}},defaultVariants:{variant:`default`}});function Ft({className:e,variant:t,...n}){return(0,K.jsx)(`div`,{className:jt(Pt({variant:t}),e),...n})}var It=Object.defineProperty,Lt=(e,t)=>It(e,`name`,{value:t,configurable:!0}),Rt=!!(typeof window<`u`&&window.document&&window.document.createElement);function J(e,t,{checkForDefaultPrevented:n=!0}={}){return Lt(function(r){if(e?.(r),n===!1||!r||!r.defaultPrevented)return t?.(r)},`handleEvent`)}Lt(J,`composeEventHandlers`);function zt(e){if(!Rt)throw Error(`Cannot access window outside of the DOM`);return e?.ownerDocument?.defaultView??window}Lt(zt,`getOwnerWindow`);function Bt(e){if(!Rt)throw Error(`Cannot access document outside of the DOM`);return e?.ownerDocument??document}Lt(Bt,`getOwnerDocument`);function Vt(e,t=!1){let{activeElement:n}=Bt(e);if(!n?.nodeName)return null;if(Ht(n)&&n.contentDocument)return Vt(n.contentDocument.body,t);if(t){let e=n.getAttribute(`aria-activedescendant`);if(e){let t=Bt(n).getElementById(e);if(t)return t}}return n}Lt(Vt,`getActiveElement`);function Ht(e){return e.tagName===`IFRAME`}Lt(Ht,`isFrame`);var Ut=Object.defineProperty,Wt=(e,t)=>Ut(e,`name`,{value:t,configurable:!0});function Gt(e,t){let n=y.createContext(t);n.displayName=e+`Context`;let r=Wt(e=>{let{children:t,...r}=e,i=y.useMemo(()=>r,Object.values(r));return(0,K.jsx)(n.Provider,{value:i,children:t})},`Provider`);r.displayName=e+`Provider`;function i(r,i={}){let{optional:a=!1}=i,o=y.useContext(n);if(o)return o;if(t!==void 0)return t;if(!a)throw Error(`\`${r}\` must be used within \`${e}\``)}return Wt(i,`useContext`),[r,i]}Wt(Gt,`createContext`);function Kt(e,t=[]){let n=[];function r(t,r){let i=y.createContext(r);i.displayName=t+`Context`;let a=n.length;n=[...n,r];let o=Wt(t=>{let{scope:n,children:r,...o}=t,s=n?.[e]?.[a]||i,c=y.useMemo(()=>o,Object.values(o));return(0,K.jsx)(s.Provider,{value:c,children:r})},`Provider`);o.displayName=t+`Provider`;function s(n,o,s={}){let{optional:c=!1}=s,l=o?.[e]?.[a]||i,u=y.useContext(l);if(u)return u;if(r!==void 0)return r;if(!c)throw Error(`\`${n}\` must be used within \`${t}\``)}return Wt(s,`useContext`),[o,s]}Wt(r,`createContext`);let i=Wt(()=>{let t=n.map(e=>y.createContext(e));return Wt(function(n){let r=n?.[e]||t;return y.useMemo(()=>({[`__scope${e}`]:{...n,[e]:r}}),[n,r])},`useScope`)},`createScope`);return i.scopeName=e,[r,qt(i,...t)]}Wt(Kt,`createContextScope`);function qt(...e){let t=e[0];if(e.length===1)return t;let n=Wt(()=>{let n=e.map(e=>({useScope:e(),scopeName:e.scopeName}));return Wt(function(e){let r=n.reduce((t,{useScope:n,scopeName:r})=>{let i=n(e)[`__scope${r}`];return{...t,...i}},{});return y.useMemo(()=>({[`__scope${t.scopeName}`]:r}),[r])},`useComposedScopes`)},`createScope`);return n.scopeName=t.scopeName,n}Wt(qt,`composeContextScopes`);var Jt=globalThis?.document?y.useLayoutEffect:()=>{},Yt=Object.defineProperty,Xt=(e,t)=>Yt(e,`name`,{value:t,configurable:!0}),Zt=y.useEffectEvent,Qt=y.useInsertionEffect;function $t(e){if(typeof Zt==`function`)return Zt(e);let t=y.useRef(()=>{throw Error(`Cannot call an event handler while rendering.`)});return typeof Qt==`function`?Qt(()=>{t.current=e}):Jt(()=>{t.current=e}),y.useMemo(()=>((...e)=>t.current?.(...e)),[])}Xt($t,`useEffectEvent`);var en=Object.defineProperty,tn=(e,t)=>en(e,`name`,{value:t,configurable:!0}),nn=y.useInsertionEffect||Jt;function rn({prop:e,defaultProp:t,onChange:n=tn(()=>{},`onChange`),caller:r}){let[i,a,o]=an({defaultProp:t,onChange:n}),s=e!==void 0;return[s?e:i,y.useCallback(t=>{if(s){let n=on(t)?t(e):t;n!==e&&o.current?.(n)}else a(t)},[s,e,a,o])]}tn(rn,`useControllableState`);function an({defaultProp:e,onChange:t}){let[n,r]=y.useState(e),i=y.useRef(n),a=y.useRef(t);return nn(()=>{a.current=t},[t]),y.useEffect(()=>{i.current!==n&&(a.current?.(n),i.current=n)},[n,i]),[n,r,a]}tn(an,`useUncontrolledState`);function on(e){return typeof e==`function`}tn(on,`isFunction`);var sn=Symbol(`RADIX:SYNC_STATE`);function cn(e,t,n,r){let{prop:i,defaultProp:a,onChange:o,caller:s}=t,c=i!==void 0,l=$t(o),u=[{...n,state:a}];r&&u.push(r);let[d,f]=y.useReducer((t,n)=>{if(n.type===sn)return{...t,state:n.state};let r=e(t,n);return c&&!Object.is(r.state,t.state)&&l(r.state),r},...u),p=d.state,m=y.useRef(p);y.useEffect(()=>{m.current!==p&&(m.current=p,c||l(p))},[p,m,c]);let h=y.useMemo(()=>i===void 0?d:{...d,state:i},[d,i]);return y.useEffect(()=>{c&&!Object.is(i,d.state)&&f({type:sn,state:i})},[i,d.state,c]),[h,f]}tn(cn,`useControllableStateReducer`);var ln=u(g(),1),un=Object.defineProperty,dn=(e,t)=>un(e,`name`,{value:t,configurable:!0}),Y=[`a`,`button`,`div`,`form`,`h2`,`h3`,`img`,`input`,`label`,`li`,`nav`,`ol`,`p`,`select`,`span`,`svg`,`ul`].reduce((e,t)=>{let n=O(`Primitive.${t}`),r=y.forwardRef((e,r)=>{let{asChild:i,...a}=e,o=i?n:t;return typeof window<`u`&&(window[Symbol.for(`radix-ui`)]=!0),(0,K.jsx)(o,{...a,ref:r})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function fn(e,t){e&&ln.flushSync(()=>e.dispatchEvent(t))}dn(fn,`dispatchDiscreteCustomEvent`);var pn=Object.defineProperty,mn=(e,t)=>pn(e,`name`,{value:t,configurable:!0});function hn(e){let t=e+`CollectionProvider`,[n,r]=Kt(t),[i,a]=n(t,{collectionRef:{current:null},itemMap:new Map}),o=mn(e=>{let{scope:t,children:n}=e,r=y.useRef(null),a=y.useRef(new Map).current;return(0,K.jsx)(i,{scope:t,itemMap:a,collectionRef:r,children:n})},`CollectionProvider`);o.displayName=t;let s=e+`CollectionSlot`,c=O(s),l=y.forwardRef((e,t)=>{let{scope:n,children:r}=e,i=T(t,a(s,n).collectionRef);return(0,K.jsx)(c,{ref:i,children:r})});l.displayName=s;let u=e+`CollectionItemSlot`,d=`data-radix-collection-item`,f=O(u),p=y.forwardRef((e,t)=>{let{scope:n,children:r,...i}=e,o=y.useRef(null),s=T(t,o),c=a(u,n);return y.useEffect(()=>(c.itemMap.set(o,{ref:o,...i}),()=>void c.itemMap.delete(o))),(0,K.jsx)(f,{[d]:``,ref:s,children:r})});p.displayName=u;function m(t){let n=a(e+`CollectionConsumer`,t);return y.useCallback(()=>{let e=n.collectionRef.current;if(!e)return[];let t=Array.from(e.querySelectorAll(`[${d}]`));return Array.from(n.itemMap.values()).sort((e,n)=>t.indexOf(e.ref.current)-t.indexOf(n.ref.current))},[n.collectionRef,n.itemMap])}return mn(m,`useCollection`),[{Provider:o,Slot:l,ItemSlot:p},m,r]}mn(hn,`createCollection`);var gn=new WeakMap,_n=class e extends Map{static{mn(this,`OrderedDict`)}#e;constructor(e){super(e),this.#e=[...super.keys()],gn.set(this,!0)}set(e,t){return gn.get(this)&&!this.has(e)&&this.#e.push(e),super.set(e,t),this}insert(e,t,n){let r=this.has(t),i=r?this.size:this.size+1,a=bn(e),o=a>=0?Math.min(a,i-1):Math.max(i+a,0);if(r?this.#e.indexOf(t)===o:o===this.size)return this.set(t,n),this;let s=this.#e.filter(e=>e!==t);s.splice(o,0,t);let c=s.map(e=>[e,e===t?n:this.get(e)]);this.clear();for(let[e,t]of c)this.set(e,t);return this}with(t,n,r){let i=new e(this);return i.insert(t,n,r),i}before(e){let t=this.#e.indexOf(e)-1;if(!(t<0))return this.entryAt(t)}setBefore(e,t,n){let r=this.#e.indexOf(e);if(r===-1)return this;let i=this.#e.indexOf(t),a=i!==-1&&i=this.size&&(r=this.size-1),this.at(r)}keyFrom(e,t){let n=this.indexOf(e);if(n===-1)return;let r=n+t;return r<0&&(r=0),r>=this.size&&(r=this.size-1),this.keyAt(r)}find(e,t){let n=0;for(let r of this){if(Reflect.apply(e,t,[r,n,this]))return r;n++}}findIndex(e,t){let n=0;for(let r of this){if(Reflect.apply(e,t,[r,n,this]))return n;n++}return-1}filter(t,n){let r=[],i=0;for(let e of this)Reflect.apply(t,n,[e,i,this])&&r.push(e),i++;return new e(r)}map(t,n){let r=[],i=0;for(let e of this)r.push([e[0],Reflect.apply(t,n,[e,i,this])]),i++;return new e(r)}reduce(...e){let[t,n]=e,r=e.length>1;if(!r&&this.size===0)throw TypeError(`Reduce of empty OrderedDict with no initial value`);let i=0,a=n;for(let e of this)a=i===0&&!r?e:Reflect.apply(t,this,[a,e,i,this]),i++;return a}reduceRight(...e){let[t,n]=e,r=e.length>1;if(!r&&this.size===0)throw TypeError(`Reduce of empty OrderedDict with no initial value`);let i=n;for(let e=this.size-1;e>=0;e--){let n=this.entryAt(e);i=e===this.size-1&&!r?n:Reflect.apply(t,this,[i,n,e,this])}return i}sort(e){if(typeof e!=`function`)throw TypeError(`OrderedDict.sort requires a compare function`);let t=[...this.entries()].sort(e);this.clear();for(let[e,n]of t)this.set(e,n);return this}toSorted(t){if(typeof t!=`function`)throw TypeError(`OrderedDict.toSorted requires a compare function`);let n=[...this.entries()].sort(t);return new e(n)}toReversed(){let t=new e;for(let e=this.size-1;e>=0;e--){let n=this.keyAt(e),r=this.get(n);t.set(n,r)}return t}toSpliced(...t){let n=[...this.entries()];return n.splice(...t),new e(n)}slice(t,n){let r=new e;for(let e of this.#e.slice(t,n))r.set(e,this.get(e));return r}every(e,t){let n=0;for(let r of this){if(!Reflect.apply(e,t,[r,n,this]))return!1;n++}return!0}some(e,t){let n=0;for(let r of this){if(Reflect.apply(e,t,[r,n,this]))return!0;n++}return!1}};function vn(e,t){if(`at`in Array.prototype)return Array.prototype.at.call(e,t);let n=yn(e,t);return n===-1?void 0:e[n]}mn(vn,`at`);function yn(e,t){let n=e.length,r=bn(t),i=r>=0?r:n+r;return i<0||i>=n?-1:i}mn(yn,`toSafeIndex`);function bn(e){return e!==e||e===0?0:Math.trunc(e)}mn(bn,`toSafeInteger`);function xn(e){let t=e+`CollectionProvider`,[n,r]=Kt(t),[i,a]=n(t);i.displayName=e+`CollectionStableContextProvider`;let[o,s]=n(t);o.displayName=e+`CollectionStatefulContextProvider`;let c=mn(({state:e,...t})=>e?(0,K.jsx)(u,{...t,state:e}):(0,K.jsx)(l,{...t}),`CollectionProvider`);c.displayName=t;let l=mn(e=>{let t=_();return(0,K.jsx)(u,{...e,state:t})},`CollectionInit`);l.displayName=e+`CollectionInit`;let u=mn(e=>{let{scope:t,children:n,state:r}=e,a=y.useRef(null),[s,c]=y.useState(null),l=T(a,c),[u,d]=r,f=y.useRef(new _n),p=y.useCallback(()=>{let e=f.current;return wn(e)||e.sort(Tn),e},[]);return y.useEffect(()=>{if(!s)return;let e=En(()=>{d(e=>{let t=e.toSorted(Tn);return t.some(([t],n)=>e.keyAt(n)!==t)?t:e})});return e.observe(s,{childList:!0,subtree:!0}),()=>{e.disconnect()}},[s,d]),(0,K.jsx)(i,{scope:t,collectionElementRef:l,collectionElementRefObject:a,getCollection:p,setCollection:d,registryRef:f,children:(0,K.jsx)(o,{scope:t,collectionElement:s,collection:u,children:n})})},`CollectionProviderImpl`);u.displayName=e+`CollectionProviderImpl`;let d=e+`CollectionSlot`,f=O(d),p=y.forwardRef((e,t)=>{let{scope:n,children:r}=e,i=T(t,a(d,n).collectionElementRef);return(0,K.jsx)(f,{ref:i,children:r})});p.displayName=d;let m=e+`CollectionItemSlot`,h=O(m),g=y.forwardRef((e,t)=>{let{scope:n,children:r,...i}=e,o=y.useRef(null),{setCollection:s,registryRef:c}=a(m,n),l=y.useRef(i);Sn(l.current,i)||(l.current=i);let u=l.current,d=T(t,y.useCallback(e=>{let t=c.current;e?t.set(e,{...l.current,element:e}):o.current&&t.delete(o.current)},[c]),o);Jt(()=>{let e=o.current,t=c.current;e&&t.has(e)&&t.set(e,{...u,element:e})},[u,c]);let f=y.useRef(null);return y.useEffect(()=>{let e=o.current,t=f.current;((t?.element??null)!==e||e&&t?.itemData!==u)&&(f.current=e?{element:e,itemData:u}:null,s(n=>{let r=new _n(n);return t&&t.element!==e&&r.delete(t.element),e&&r.set(e,{...u,element:e}),r.sort(Tn)}))}),y.useEffect(()=>()=>{let e=f.current;f.current=null,e&&s(t=>{if(!t.has(e.element))return t;let n=new _n(t);return n.delete(e.element),n})},[s]),(0,K.jsx)(h,{"data-radix-collection-item":``,ref:d,children:r})});g.displayName=m;function _(){return y.useState(new _n)}mn(_,`useInitCollection`);function v(t){let{collection:n}=s(e+`CollectionConsumer`,t);return n}mn(v,`useCollection`);function b(t){let{getCollection:n}=a(e+`CollectionConsumer`,t);return n}return mn(b,`useGetCollection`),[{Provider:c,Slot:p,ItemSlot:g},{createCollectionScope:r,useCollection:v,useGetCollection:b,useInitCollection:_}]}mn(xn,`createCollection`);function Sn(e,t){if(e===t)return!0;if(typeof e!=`object`||typeof t!=`object`||e==null||t==null)return!1;let n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let r of n)if(!Object.prototype.hasOwnProperty.call(t,r)||e[r]!==t[r])return!1;return!0}mn(Sn,`shallowEqual`);function Cn(e,t){return!!(t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_PRECEDING)}mn(Cn,`isElementPreceding`);function wn(e){let t;for(let n of e.keys()){if(t){let e=t.compareDocumentPosition(n);if(!(e&Node.DOCUMENT_POSITION_DISCONNECTED)&&e&Node.DOCUMENT_POSITION_PRECEDING)return!1}t=n}return!0}mn(wn,`isInDocumentOrder`);function Tn(e,t){return!e[1].element||!t[1].element?0:Cn(e[1].element,t[1].element)?-1:1}mn(Tn,`sortByDocumentPosition`);function En(e){return new MutationObserver(t=>{for(let n of t)if(n.type===`childList`){e();return}})}mn(En,`getChildListObserver`);var Dn=Object.defineProperty,On=(e,t)=>Dn(e,`name`,{value:t,configurable:!0}),kn={LTR:`ltr`,RTL:`rtl`},An=y.createContext(void 0);function jn(e){let t=y.useContext(An);return e||t||kn.LTR}On(jn,`useDirection`);var Mn=Object.defineProperty,Nn=(e,t)=>Mn(e,`name`,{value:t,configurable:!0}),Pn=y.useInsertionEffect;function Fn(e){let t=y.useRef(e);return typeof Pn==`function`?Pn(()=>{t.current=e}):Jt(()=>{t.current=e}),y.useMemo(()=>((...e)=>t.current?.(...e)),[])}Nn(Fn,`useCallbackRef`);var In=Object.defineProperty,Ln=(e,t)=>In(e,`name`,{value:t,configurable:!0}),Rn=`dismissableLayer.update`,zn=`dismissableLayer.pointerDownOutside`,Bn=`dismissableLayer.focusOutside`,Vn,Hn=y.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set,dismissableSurfaces:new Set}),Un=y.forwardRef(Ln(function(e,t){let{disableOutsidePointerEvents:n=!1,deferPointerDownOutside:r=!1,onEscapeKeyDown:i,onPointerDownOutside:a,onFocusOutside:o,onInteractOutside:s,onDismiss:c,...l}=e,u=y.useContext(Hn),[d,f]=y.useState(null),p=d?.ownerDocument??globalThis?.document,[,m]=y.useState({}),h=T(t,f),g=Array.from(u.layers),[_]=[...u.layersWithOutsidePointerEventsDisabled].slice(-1),v=_?g.indexOf(_):-1,b=d?g.indexOf(d):-1,x=u.layersWithOutsidePointerEventsDisabled.size>0,S=b>=v,C=y.useRef(!1),w=Kn(e=>{a?.(e),s?.(e),e.defaultPrevented||c?.()},{ownerDocument:p,deferPointerDownOutside:r,isDeferredPointerDownOutsideRef:C,dismissableSurfaces:u.dismissableSurfaces,shouldHandlePointerDownOutside:y.useCallback(e=>{if(!(e instanceof Node))return!1;let t=[...u.branches].some(t=>t.contains(e));return S&&!t},[u.branches,S])}),E=qn(e=>{if(r&&C.current)return;let t=e.target;[...u.branches].some(e=>e.contains(t))||(o?.(e),s?.(e),e.defaultPrevented||c?.())},p),D=d?b===g.length-1:!1,O=Fn(e=>{e.key===`Escape`&&(i?.(e),!e.defaultPrevented&&c&&(e.preventDefault(),c()))});return y.useEffect(()=>{if(D)return p.addEventListener(`keydown`,O,{capture:!0}),()=>p.removeEventListener(`keydown`,O,{capture:!0})},[p,D,O]),y.useEffect(()=>{if(d)return n&&(u.layersWithOutsidePointerEventsDisabled.size===0&&(Vn=p.body.style.pointerEvents,p.body.style.pointerEvents=`none`),u.layersWithOutsidePointerEventsDisabled.add(d)),u.layers.add(d),Jn(),()=>{n&&(u.layersWithOutsidePointerEventsDisabled.delete(d),u.layersWithOutsidePointerEventsDisabled.size===0&&(p.body.style.pointerEvents=Vn))}},[d,p,n,u]),y.useEffect(()=>()=>{d&&(u.layers.delete(d),u.layersWithOutsidePointerEventsDisabled.delete(d),Jn())},[d,u]),y.useEffect(()=>{let e=Ln(()=>m({}),`handleUpdate`);return document.addEventListener(Rn,e),()=>document.removeEventListener(Rn,e)},[]),(0,K.jsx)(Y.div,{...l,ref:h,style:{pointerEvents:x?S?`auto`:`none`:void 0,...e.style},onFocusCapture:J(e.onFocusCapture,E.onFocusCapture),onBlurCapture:J(e.onBlurCapture,E.onBlurCapture),onPointerDownCapture:J(e.onPointerDownCapture,w.onPointerDownCapture)})},`DismissableLayer`));function Wn(){let e=y.useContext(Hn),[t,n]=y.useState(null);return y.useEffect(()=>{if(t)return e.dismissableSurfaces.add(t),()=>{e.dismissableSurfaces.delete(t)}},[t,e.dismissableSurfaces]),n}Ln(Wn,`useDismissableLayerSurface`);var Gn=Ln(()=>!0,`IS_TRUE`);function Kn(e,t){let{ownerDocument:n=globalThis?.document,deferPointerDownOutside:r=!1,isDeferredPointerDownOutsideRef:i,dismissableSurfaces:a,shouldHandlePointerDownOutside:o=Gn}=t,s=Fn(e),c=y.useRef(!1),l=y.useRef(!1),u=y.useRef(new Map),d=y.useRef(()=>{});return y.useEffect(()=>{function e(){l.current=!1,i.current=!1,u.current.clear()}Ln(e,`resetOutsideInteraction`);function t(){return Array.from(u.current.values()).some(Boolean)}Ln(t,`isOutsideInteractionIntercepted`);function f(e){if(!l.current)return;let t=e.target;t instanceof Node&&[...a].some(e=>e.contains(t))||u.current.set(e.type,!0),e.type===`click`&&window.setTimeout(()=>{l.current&&d.current()},0)}Ln(f,`handleInteractionCapture`);function p(e){l.current&&u.current.set(e.type,!1)}Ln(p,`handleInteractionBubble`);let m=Ln(a=>{if(a.target&&!c.current){let f=function(){n.removeEventListener(`click`,d.current);let r=t();e(),r||Yn(zn,s,p,{discrete:!0})};if(Ln(f,`handleAndDispatchPointerDownOutsideEvent`),!o(a.target)){n.removeEventListener(`click`,d.current),e(),c.current=!1;return}let p={originalEvent:a};l.current=!0,i.current=r&&a.button===0,u.current.clear(),!r||a.button!==0?f():(n.removeEventListener(`click`,d.current),d.current=f,n.addEventListener(`click`,d.current,{once:!0}))}else n.removeEventListener(`click`,d.current),e();c.current=!1},`handlePointerDown`),h=[`pointerup`,`mousedown`,`mouseup`,`touchstart`,`touchend`,`click`];for(let e of h)n.addEventListener(e,f,!0),n.addEventListener(e,p);let g=window.setTimeout(()=>{n.addEventListener(`pointerdown`,m)},0);return()=>{window.clearTimeout(g),n.removeEventListener(`pointerdown`,m),n.removeEventListener(`click`,d.current);for(let e of h)n.removeEventListener(e,f,!0),n.removeEventListener(e,p)}},[n,s,r,i,a,o]),{onPointerDownCapture:Ln(()=>c.current=!0,`onPointerDownCapture`)}}Ln(Kn,`usePointerDownOutside`);function qn(e,t=globalThis?.document){let n=Fn(e),r=y.useRef(!1);return y.useEffect(()=>{let e=Ln(e=>{e.target&&!r.current&&Yn(Bn,n,{originalEvent:e},{discrete:!1})},`handleFocus`);return t.addEventListener(`focusin`,e),()=>t.removeEventListener(`focusin`,e)},[t,n]),{onFocusCapture:Ln(()=>r.current=!0,`onFocusCapture`),onBlurCapture:Ln(()=>r.current=!1,`onBlurCapture`)}}Ln(qn,`useFocusOutside`);function Jn(){let e=new CustomEvent(Rn);document.dispatchEvent(e)}Ln(Jn,`dispatchUpdate`);function Yn(e,t,n,{discrete:r}){let i=n.originalEvent.target,a=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&i.addEventListener(e,t,{once:!0}),r?fn(i,a):i.dispatchEvent(a)}Ln(Yn,`handleAndDispatchCustomEvent`);var Xn=Object.defineProperty,Zn=(e,t)=>Xn(e,`name`,{value:t,configurable:!0}),Qn=0,$n=null;function er(e){return tr(),e.children}Zn(er,`FocusGuards`);function tr(){y.useEffect(()=>{$n||={start:nr(),end:nr()};let{start:e,end:t}=$n;return document.body.firstElementChild!==e&&document.body.insertAdjacentElement(`afterbegin`,e),document.body.lastElementChild!==t&&document.body.insertAdjacentElement(`beforeend`,t),Qn++,()=>{Qn===1&&($n?.start.remove(),$n?.end.remove(),$n=null),Qn=Math.max(0,Qn-1)}},[])}Zn(tr,`useFocusGuards`);function nr(){let e=document.createElement(`span`);return e.setAttribute(`data-radix-focus-guard`,``),e.tabIndex=0,e.style.outline=`none`,e.style.opacity=`0`,e.style.position=`fixed`,e.style.pointerEvents=`none`,e}Zn(nr,`createFocusGuard`);var rr=Object.defineProperty,ir=(e,t)=>rr(e,`name`,{value:t,configurable:!0}),ar=`focusScope.autoFocusOnMount`,or=`focusScope.autoFocusOnUnmount`,sr={bubbles:!1,cancelable:!0},cr=y.forwardRef(ir(function(e,t){let{loop:n=!1,trapped:r=!1,branches:i,onMountAutoFocus:a,onUnmountAutoFocus:o,...s}=e,[c,l]=y.useState(null),u=Fn(a),d=Fn(o),f=y.useRef(null),p=T(t,l),m=y.useRef(i);y.useEffect(()=>{m.current=i});let h=y.useCallback(e=>e?c?.contains(e)?!0:!!m.current?.some(t=>t.contains(e)):!1,[c]),g=y.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;y.useEffect(()=>{if(r){let e=function(e){if(g.paused||!c)return;let t=e.target;h(t)?f.current=t:yr(f.current,{select:!0})},t=function(e){if(g.paused||!c)return;let t=e.relatedTarget;t!==null&&(h(t)||yr(f.current,{select:!0}))},n=function(e){if(document.activeElement===document.body)for(let t of e)t.removedNodes.length>0&&yr(c)};ir(e,`handleFocusIn`),ir(t,`handleFocusOut`),ir(n,`handleMutations`),document.addEventListener(`focusin`,e),document.addEventListener(`focusout`,t);let r=new MutationObserver(n);return c&&r.observe(c,{childList:!0,subtree:!0}),()=>{document.removeEventListener(`focusin`,e),document.removeEventListener(`focusout`,t),r.disconnect()}}},[r,c,g.paused,h]),y.useEffect(()=>{if(c){br.add(g);let e=document.activeElement;if(!c.contains(e)){let t=new CustomEvent(ar,sr);c.addEventListener(ar,u),c.dispatchEvent(t),t.defaultPrevented||(pr(Cr(hr(c)),{select:!0}),document.activeElement===e&&yr(c))}return()=>{c.removeEventListener(ar,u);let t=c.ownerDocument,n=CustomEvent;setTimeout(()=>{let r=new n(or,sr);c.addEventListener(or,d),c.dispatchEvent(r),r.defaultPrevented||yr(e??t.body,{select:!0}),c.removeEventListener(or,d),br.remove(g)},0)}}},[c,u,d,g]);let _=y.useCallback(e=>{if(!n&&!r||g.paused)return;let t=e.key===`Tab`&&!e.altKey&&!e.ctrlKey&&!e.metaKey,i=document.activeElement;if(t&&i){let t=e.currentTarget,[r,a]=mr(t);r&&a?!e.shiftKey&&i===a?(e.preventDefault(),n&&yr(r,{select:!0})):e.shiftKey&&i===r&&(e.preventDefault(),n&&yr(a,{select:!0})):i===t&&e.preventDefault()}},[n,r,g.paused]);return(0,K.jsx)(Y.div,{tabIndex:-1,...s,ref:p,onKeyDown:_})},`FocusScope`)),lr=y.createContext(null);function ur({registry:e,children:t}){return e?(0,K.jsx)(lr.Provider,{value:e,children:t}):t}ir(ur,`FocusScopeBranchProvider`);function dr(){let[e,t]=y.useState([]);return{nodes:e,registry:y.useMemo(()=>({add:ir(e=>t(t=>t.includes(e)?t:[...t,e]),`add`),remove:ir(e=>t(t=>t.filter(t=>t!==e)),`remove`)}),[])}}ir(dr,`useFocusScopeBranchRegistry`);function fr(e){let t=y.useContext(lr);y.useEffect(()=>{if(e&&t)return t.add(e),()=>t.remove(e)},[e,t])}ir(fr,`useFocusScopeBranch`);function pr(e,{select:t=!1}={}){let n=document.activeElement;for(let r of e)if(yr(r,{select:t}),document.activeElement!==n)return}ir(pr,`focusFirst`);function mr(e){let t=hr(e);return[gr(t,e),gr(t.reverse(),e)]}ir(mr,`getTabbableEdges`);function hr(e){let t=[],n=e.ownerDocument.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:ir(e=>{let t=e.tagName===`INPUT`&&e.type===`hidden`;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP},`acceptNode`)});for(;n.nextNode();)t.push(n.currentNode);return t}ir(hr,`getTabbableCandidates`);function gr(e,t){let n=typeof t.checkVisibility==`function`&&t.checkVisibility({checkVisibilityCSS:!0});for(let r of e)if(!(n?!r.checkVisibility({checkVisibilityCSS:!0}):_r(r,{upTo:t})))return r}ir(gr,`findVisible`);function _r(e,{upTo:t}){if(getComputedStyle(e).visibility===`hidden`)return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display===`none`)return!0;e=e.parentElement}return!1}ir(_r,`isHidden`);function vr(e){return e.tagName===`INPUT`&&typeof e.select==`function`}ir(vr,`isSelectableInput`);function yr(e,{select:t=!1}={}){if(e&&e.focus){let n=(e.ownerDocument??document).activeElement;e.focus({preventScroll:!0}),e!==n&&vr(e)&&t&&e.select()}}ir(yr,`focus`);var br=xr();function xr(){let e=[];return{add(t){let n=e[0];t!==n&&n?.pause(),e=Sr(e,t),e.unshift(t)},remove(t){e=Sr(e,t),e[0]?.resume()}}}ir(xr,`createFocusScopesStack`);function Sr(e,t){let n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}ir(Sr,`arrayRemove`);function Cr(e){return e.filter(e=>e.tagName!==`A`)}ir(Cr,`removeLinks`);var wr=Object.defineProperty,Tr=(e,t)=>wr(e,`name`,{value:t,configurable:!0}),Er=y.useId||(()=>void 0),Dr=0;function Or(e){let[t,n]=y.useState(Er());return Jt(()=>{e||n(e=>e??String(Dr++))},[e]),e||(t?`radix-${t}`:``)}Tr(Or,`useId`);var kr=[`top`,`right`,`bottom`,`left`],Ar=Math.min,jr=Math.max,Mr=Math.round,Nr=Math.floor,Pr=e=>({x:e,y:e}),Fr={left:`right`,right:`left`,bottom:`top`,top:`bottom`};function Ir(e,t,n){return jr(e,Ar(t,n))}function Lr(e,t){return typeof e==`function`?e(t):e}function Rr(e){return e.split(`-`)[0]}function zr(e){return e.split(`-`)[1]}function Br(e){return e===`x`?`y`:`x`}function Vr(e){return e===`y`?`height`:`width`}function Hr(e){let t=e[0];return t===`t`||t===`b`?`y`:`x`}function Ur(e){return Br(Hr(e))}function Wr(e,t,n){n===void 0&&(n=!1);let r=zr(e),i=Ur(e),a=Vr(i),o=i===`x`?r===(n?`end`:`start`)?`right`:`left`:r===`start`?`bottom`:`top`;return t.reference[a]>t.floating[a]&&(o=$r(o)),[o,$r(o)]}function Gr(e){let t=$r(e);return[Kr(e),t,Kr(t)]}function Kr(e){return e.includes(`start`)?e.replace(`start`,`end`):e.replace(`end`,`start`)}var qr=[`left`,`right`],Jr=[`right`,`left`],Yr=[`top`,`bottom`],Xr=[`bottom`,`top`];function Zr(e,t,n){switch(e){case`top`:case`bottom`:return n?t?Jr:qr:t?qr:Jr;case`left`:case`right`:return t?Yr:Xr;default:return[]}}function Qr(e,t,n,r){let i=zr(e),a=Zr(Rr(e),n===`start`,r);return i&&(a=a.map(e=>e+`-`+i),t&&(a=a.concat(a.map(Kr)))),a}function $r(e){let t=Rr(e);return Fr[t]+e.slice(t.length)}function ei(e){return{top:e.top??0,right:e.right??0,bottom:e.bottom??0,left:e.left??0}}function ti(e){return typeof e==`number`?{top:e,right:e,bottom:e,left:e}:ei(e)}function ni(e){let{x:t,y:n,width:r,height:i}=e;return{width:r,height:i,top:n,left:t,right:t+r,bottom:n+i,x:t,y:n}}function ri(e,t,n){let{reference:r,floating:i}=e,a=Hr(t),o=Ur(t),s=Vr(o),c=Rr(t),l=a===`y`,u=r.x+r.width/2-i.width/2,d=r.y+r.height/2-i.height/2,f=r[s]/2-i[s]/2,p;switch(c){case`top`:p={x:u,y:r.y-i.height};break;case`bottom`:p={x:u,y:r.y+r.height};break;case`right`:p={x:r.x+r.width,y:d};break;case`left`:p={x:r.x-i.width,y:d};break;default:p={x:r.x,y:r.y}}let m=zr(t);return m&&(p[o]+=f*(m===`end`?1:-1)*(n&&l?-1:1)),p}async function ii(e,t){t===void 0&&(t={});let{x:n,y:r,platform:i,rects:a,elements:o,strategy:s}=e,{boundary:c=`clippingAncestors`,rootBoundary:l=`viewport`,elementContext:u=`floating`,altBoundary:d=!1,padding:f=0}=Lr(t,e),p=ti(f),m=o[d?u===`floating`?`reference`:`floating`:u],h=ni(await i.getClippingRect({element:await(i.isElement==null?void 0:i.isElement(m))??!0?m:m.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(o.floating)),boundary:c,rootBoundary:l,strategy:s})),g=u===`floating`?{x:n,y:r,width:a.floating.width,height:a.floating.height}:a.reference,_=await(i.getOffsetParent==null?void 0:i.getOffsetParent(o.floating)),v=await(i.isElement==null?void 0:i.isElement(_))&&await(i.getScale==null?void 0:i.getScale(_))||{x:1,y:1},y=ni(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:o,rect:g,offsetParent:_,strategy:s}):g);return{top:(h.top-y.top+p.top)/v.y,bottom:(y.bottom-h.bottom+p.bottom)/v.y,left:(h.left-y.left+p.left)/v.x,right:(y.right-h.right+p.right)/v.x}}var ai=50,oi=async(e,t,n)=>{let{placement:r=`bottom`,strategy:i=`absolute`,middleware:a=[],platform:o}=n,s=o.detectOverflow?o:{...o,detectOverflow:ii},c=await(o.isRTL==null?void 0:o.isRTL(t)),l=await o.getElementRects({reference:e,floating:t,strategy:i}),{x:u,y:d}=ri(l,r,c),f=r,p=0,m={};for(let n=0;n({name:`arrow`,options:e,async fn(t){let{x:n,y:r,placement:i,rects:a,platform:o,elements:s,middlewareData:c}=t,{element:l,padding:u=0}=Lr(e,t)||{};if(l==null)return{};let d=ti(u),f={x:n,y:r},p=Ur(i),m=Vr(p),h=await o.getDimensions(l),g=p===`y`,_=g?`top`:`left`,v=g?`bottom`:`right`,y=g?`clientHeight`:`clientWidth`,b=a.reference[m]+a.reference[p]-f[p]-a.floating[m],x=f[p]-a.reference[p],S=await(o.getOffsetParent==null?void 0:o.getOffsetParent(l)),C=S?S[y]:0;(!C||!await(o.isElement==null?void 0:o.isElement(S)))&&(C=s.floating[y]||a.floating[m]);let w=b/2-x/2,T=C/2-h[m]/2-1,E=Ar(d[_],T),D=Ar(d[v],T),O=C-h[m]-D,k=C/2-h[m]/2+w,A=Ir(E,k,O),j=!c.arrow&&zr(i)!=null&&k!==A&&a.reference[m]/2-(ke<=0)){let e=(i.flip?.index||0)+1,t=S[e];if(t&&(u!==`alignment`||_===Hr(t)||T.every(e=>Hr(e.placement)!==_||e.overflows[0]>0)))return{data:{index:e,overflows:T},reset:{placement:t}};let n=T.filter(e=>e.overflows[0]<=0).sort((e,t)=>e.overflows[1]-t.overflows[1])[0]?.placement;if(!n)switch(f){case`bestFit`:{let e=T.filter(e=>{if(x){let t=Hr(e.placement);return t===_||t===`y`}return!0}).map(e=>[e.placement,e.overflows.filter(e=>e>0).reduce((e,t)=>e+t,0)]).sort((e,t)=>e[1]-t[1])[0]?.[0];e&&(n=e);break}case`initialPlacement`:n=o}if(r!==n)return{reset:{placement:n}}}return{}}}};function li(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function ui(e){return kr.some(t=>e[t]>=0)}var di=function(e){return e===void 0&&(e={}),{name:`hide`,options:e,async fn(t){let{rects:n,platform:r}=t,{strategy:i=`referenceHidden`,...a}=Lr(e,t);switch(i){case`referenceHidden`:{let e=li(await r.detectOverflow(t,{...a,elementContext:`reference`}),n.reference);return{data:{referenceHiddenOffsets:e,referenceHidden:ui(e)}}}case`escaped`:{let e=li(await r.detectOverflow(t,{...a,altBoundary:!0}),n.floating);return{data:{escapedOffsets:e,escaped:ui(e)}}}default:return{}}}}},fi=new Set([`left`,`top`]);async function pi(e,t){let{placement:n,platform:r,elements:i}=e,a=await(r.isRTL==null?void 0:r.isRTL(i.floating)),o=Rr(n),s=zr(n),c=Hr(n)===`y`,l=fi.has(o)?-1:1,u=a&&c?-1:1,d=Lr(t,e),{mainAxis:f,crossAxis:p,alignmentAxis:m}=typeof d==`number`?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return s&&typeof m==`number`&&(p=s===`end`?m*-1:m),c?{x:p*u,y:f*l}:{x:f*l,y:p*u}}var mi=function(e){return e===void 0&&(e=0),{name:`offset`,options:e,async fn(t){var n;let{x:r,y:i,placement:a,middlewareData:o}=t,s=await pi(t,e);return a===o.offset?.placement&&(n=o.arrow)!=null&&n.alignmentOffset?{}:{x:r+s.x,y:i+s.y,data:{...s,placement:a}}}}},hi=function(e){return e===void 0&&(e={}),{name:`shift`,options:e,async fn(t){let{x:n,y:r,placement:i,platform:a}=t,{mainAxis:o=!0,crossAxis:s=!1,limiter:c={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...l}=Lr(e,t),u={x:n,y:r},d=await a.detectOverflow(t,l),f=Hr(i),p=Br(f),m=u[p],h=u[f],g=(e,t)=>Ir(t+d[e===`y`?`top`:`left`],t,t-d[e===`y`?`bottom`:`right`]);o&&(m=g(p,m)),s&&(h=g(f,h));let _=c.fn({...t,[p]:m,[f]:h});return{..._,data:{x:_.x-n,y:_.y-r,enabled:{[p]:o,[f]:s}}}}}},gi=function(e){return e===void 0&&(e={}),{options:e,fn(t){let{x:n,y:r,placement:i,rects:a,middlewareData:o}=t,{offset:s=0,mainAxis:c=!0,crossAxis:l=!0}=Lr(e,t),u={x:n,y:r},d=Hr(i),f=Br(d),p=u[f],m=u[d],h=Lr(s,t),g=typeof h==`number`?{mainAxis:h,crossAxis:0}:{mainAxis:h.mainAxis??0,crossAxis:h.crossAxis??0};if(c){let e=f===`y`?`height`:`width`,t=a.reference[f]-a.floating[e]+g.mainAxis,n=a.reference[f]+a.reference[e]-g.mainAxis;pn&&(p=n)}if(l){let e=f===`y`?`width`:`height`,t=fi.has(Rr(i)),n=a.reference[d]-a.floating[e]+(t&&o.offset?.[d]||0)+(t?0:g.crossAxis),r=a.reference[d]+a.reference[e]+(t?0:o.offset?.[d]||0)-(t?g.crossAxis:0);mr&&(m=r)}return{[f]:p,[d]:m}}}},_i=function(e){return e===void 0&&(e={}),{name:`size`,options:e,async fn(t){let{placement:n,rects:r,platform:i,elements:a}=t,{apply:o=()=>{},...s}=Lr(e,t),c=await i.detectOverflow(t,s),l=Rr(n),u=zr(n),d=Hr(n)===`y`,{width:f,height:p}=r.floating,m,h;l===`top`||l===`bottom`?(m=l,h=u===(await(i.isRTL==null?void 0:i.isRTL(a.floating))?`start`:`end`)?`left`:`right`):(h=l,m=u===`end`?`top`:`bottom`);let g=p-c.top-c.bottom,_=f-c.left-c.right,v=Ar(p-c[m],g),y=Ar(f-c[h],_),b=t.middlewareData.shift,x=!b,S=v,C=y;b!=null&&b.enabled.x&&(C=_),b!=null&&b.enabled.y&&(S=g),x&&!u&&(d?C=f-2*jr(c.left,c.right):S=p-2*jr(c.top,c.bottom)),await o({...t,availableWidth:C,availableHeight:S});let w=await i.getDimensions(a.floating);return f!==w.width||p!==w.height?{reset:{rects:!0}}:{}}}};function vi(){return typeof window<`u`}function yi(e){return Si(e)?(e.nodeName||``).toLowerCase():`#document`}function bi(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function xi(e){return((Si(e)?e.ownerDocument:e.document)||window.document)?.documentElement}function Si(e){return vi()?e instanceof Node||e instanceof bi(e).Node:!1}function Ci(e){return vi()?e instanceof Element||e instanceof bi(e).Element:!1}function wi(e){return vi()?e instanceof HTMLElement||e instanceof bi(e).HTMLElement:!1}function Ti(e){return!vi()||typeof ShadowRoot>`u`?!1:e instanceof ShadowRoot||e instanceof bi(e).ShadowRoot}function Ei(e){let{overflow:t,overflowX:n,overflowY:r,display:i}=Li(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&i!==`inline`&&i!==`contents`}function Di(e){return/^(table|td|th)$/.test(yi(e))}function Oi(e){try{if(e.matches(`:popover-open`))return!0}catch{}try{return e.matches(`:modal`)}catch{return!1}}var ki=/transform|translate|scale|rotate|perspective|filter/,Ai=/paint|layout|strict|content/,ji=e=>!!e&&e!==`none`,Mi;function Ni(e){let t=Ci(e)?Li(e):e;return ji(t.transform)||ji(t.translate)||ji(t.scale)||ji(t.rotate)||ji(t.perspective)||!Fi()&&(ji(t.backdropFilter)||ji(t.filter))||ki.test(t.willChange||``)||Ai.test(t.contain||``)}function Pi(e){let t=zi(e);for(;wi(t)&&!Ii(t);){if(Ni(t))return t;if(Oi(t))return null;t=zi(t)}return null}function Fi(){return Mi??=typeof CSS<`u`&&CSS.supports&&CSS.supports(`-webkit-backdrop-filter`,`none`),Mi}function Ii(e){return/^(html|body|#document)$/.test(yi(e))}function Li(e){return bi(e).getComputedStyle(e)}function Ri(e){return Ci(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function zi(e){if(yi(e)===`html`)return e;let t=e.assignedSlot||e.parentNode||Ti(e)&&e.host||xi(e);return Ti(t)?t.host:t}function Bi(e){let t=zi(e);return Ii(t)?(e.ownerDocument||e).body:wi(t)&&Ei(t)?t:Bi(t)}function Vi(e,t,n){t===void 0&&(t=[]),n===void 0&&(n=!0);let r=Bi(e),i=r===e.ownerDocument?.body,a=bi(r);if(i){let e=Hi(a);return t.concat(a,a.visualViewport||[],Ei(r)?r:[],e&&n?Vi(e):[])}return t.concat(r,Vi(r,[],n))}function Hi(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function Ui(e){let t=Li(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,i=wi(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r,s=Mr(n)!==a||Mr(r)!==o;return s&&(n=a,r=o),{width:n,height:r,$:s}}function Wi(e){return Ci(e)?e:e.contextElement}function Gi(e){let t=Wi(e);if(!wi(t))return Pr(1);let n=t.getBoundingClientRect(),{width:r,height:i,$:a}=Ui(t),o=(a?Mr(n.width):n.width)/r,s=(a?Mr(n.height):n.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!s||!Number.isFinite(s))&&(s=1),{x:o,y:s}}var Ki=Pr(0);function qi(e){let t=bi(e);return!Fi()||!t.visualViewport?Ki:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function Ji(e,t,n){return t===void 0&&(t=!1),!!n&&t&&n===bi(e)}function X(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);let i=e.getBoundingClientRect(),a=Wi(e),o=Pr(1);t&&(r?Ci(r)&&(o=Gi(r)):o=Gi(e));let s=Ji(a,n,r)?qi(a):Pr(0),c=(i.left+s.x)/o.x,l=(i.top+s.y)/o.y,u=i.width/o.x,d=i.height/o.y;if(a&&r){let e=bi(a),t=Ci(r)?bi(r):r,n=e,i=Hi(n);for(;i&&t!==n;){let e=Gi(i),t=i.getBoundingClientRect(),r=Li(i),a=t.left+(i.clientLeft+parseFloat(r.paddingLeft))*e.x,o=t.top+(i.clientTop+parseFloat(r.paddingTop))*e.y;c*=e.x,l*=e.y,u*=e.x,d*=e.y,c+=a,l+=o,n=bi(i),i=Hi(n)}}return ni({width:u,height:d,x:c,y:l})}function Yi(e,t){let n=Ri(e).scrollLeft;return t?t.left+n:X(xi(e)).left+n}function Xi(e,t){let n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-Yi(e,n),y:n.top+t.scrollTop}}function Zi(e){let{elements:t,rect:n,offsetParent:r,strategy:i}=e,a=i===`fixed`,o=xi(r),s=t?Oi(t.floating):!1;if(r===o||s&&a)return n;let c={scrollLeft:0,scrollTop:0},l=Pr(1),u=Pr(0),d=wi(r);if((d||!a)&&((yi(r)!==`body`||Ei(o))&&(c=Ri(r)),d)){let e=X(r);l=Gi(r),u.x=e.x+r.clientLeft,u.y=e.y+r.clientTop}let f=o&&!d&&!a?Xi(o,c):Pr(0);return{width:n.width*l.x,height:n.height*l.y,x:n.x*l.x-c.scrollLeft*l.x+u.x+f.x,y:n.y*l.y-c.scrollTop*l.y+u.y+f.y}}function Qi(e){return e.getClientRects?Array.from(e.getClientRects()):[]}function $i(e){let t=Ri(e),n=e.ownerDocument.body,r=jr(e.scrollWidth,e.clientWidth,n.scrollWidth,n.clientWidth),i=jr(e.scrollHeight,e.clientHeight,n.scrollHeight,n.clientHeight),a=-t.scrollLeft+Yi(e),o=-t.scrollTop;return Li(n).direction===`rtl`&&(a+=jr(e.clientWidth,n.clientWidth)-r),{width:r,height:i,x:a,y:o}}var ea=25;function ta(e,t,n){n===void 0&&(n=`viewport`);let r=n===`layoutViewport`,i=bi(e),a=xi(e),o=i.visualViewport,s=a.clientWidth,c=a.clientHeight,l=0,u=0;if(o){let e=!Fi()||t===`fixed`;r?e||(l=-o.offsetLeft,u=-o.offsetTop):(s=o.width,c=o.height,e&&(l=o.offsetLeft,u=o.offsetTop))}if(Yi(a)<=0){let e=a.ownerDocument,t=e.body,n=getComputedStyle(t),r=e.compatMode===`CSS1Compat`&&parseFloat(n.marginLeft)+parseFloat(n.marginRight)||0,i=Math.abs(a.clientWidth-t.clientWidth-r),o=getComputedStyle(a).scrollbarGutter===`stable both-edges`?i/2:i;o<=ea&&(s-=o)}return{width:s,height:c,x:l,y:u}}function na(e,t){let n=X(e,!0,t===`fixed`),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=Gi(e);return{width:e.clientWidth*a.x,height:e.clientHeight*a.y,x:i*a.x,y:r*a.y}}function ra(e,t,n){let r;if(t===`viewport`||t===`layoutViewport`)r=ta(e,n,t);else if(t===`document`)r=$i(xi(e));else if(Ci(t))r=na(t,n);else{let n=qi(e);r={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return ni(r)}function ia(e,t){let n=t.get(e);if(n)return n;let r=Vi(e,[],!1).filter(e=>Ci(e)&&yi(e)!==`body`),i=null,a=Li(e).position===`fixed`,o=a?zi(e):e;for(;Ci(o)&&!Ii(o);){let e=Li(o),t=Ni(o),n=i?i.position:a?`fixed`:``;!t&&(n===`fixed`||n===`absolute`&&e.position===`static`)?r=r.filter(e=>e!==o):i=e,o=zi(o)}return t.set(e,r),r}function aa(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e,a=[...n===`clippingAncestors`?Oi(t)?[]:ia(t,this._c):[].concat(n),r],o=ra(t,a[0],i),s=o.top,c=o.right,l=o.bottom,u=o.left;for(let e=1;e{s(!1,1e-7)},1e3)}y=!1}try{r=new IntersectionObserver(b,{...v,root:a.ownerDocument})}catch{r=new IntersectionObserver(b,v)}r.observe(e)}let c=bi(e),l=()=>s(n);return c.addEventListener(`resize`,l),s(!0),()=>{c.removeEventListener(`resize`,l),o()}}function ga(e,t,n,r){r===void 0&&(r={});let{ancestorScroll:i=!0,ancestorResize:a=!0,elementResize:o=typeof ResizeObserver==`function`,layoutShift:s=typeof IntersectionObserver==`function`,animationFrame:c=!1}=r,l=Wi(e),u=i||a?[...l?Vi(l):[],...t?Vi(t):[]]:[];u.forEach(e=>{i&&e.addEventListener(`scroll`,n),a&&e.addEventListener(`resize`,n)});let d=l&&s?ha(l,n,a):null,f=-1,p=null;o&&(p=new ResizeObserver(e=>{let[r]=e;r&&r.target===l&&p&&t&&(p.unobserve(t),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var e;(e=p)==null||e.observe(t)})),n()}),l&&!c&&p.observe(l),t&&p.observe(t));let m,h=c?X(e):null;c&&g();function g(){let t=X(e);h&&!ma(h,t)&&n(),h=t,m=requestAnimationFrame(g)}return n(),()=>{var e;u.forEach(e=>{i&&e.removeEventListener(`scroll`,n),a&&e.removeEventListener(`resize`,n)}),d?.(),(e=p)==null||e.disconnect(),p=null,c&&cancelAnimationFrame(m)}}var _a=mi,va=hi,ya=ci,ba=_i,xa=di,Sa=si,Ca=gi,wa=(e,t,n)=>{let r=new Map,i=n??{},a={...pa,...i.platform,_c:r};return oi(e,t,{...i,platform:a})},Ta=typeof document<`u`?y.useLayoutEffect:function(){};function Ea(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e==`function`&&e.toString()===t.toString())return!0;let n,r,i;if(e&&t&&typeof e==`object`){if(Array.isArray(e)){if(n=e.length,n!==t.length)return!1;for(r=n;r--!==0;)if(!Ea(e[r],t[r]))return!1;return!0}if(i=Object.keys(e),n=i.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!{}.hasOwnProperty.call(t,i[r]))return!1;for(r=n;r--!==0;){let n=i[r];if(!(n===`_owner`&&e.$$typeof)&&!Ea(e[n],t[n]))return!1}return!0}return e!==e&&t!==t}function Da(e){return typeof window>`u`?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function Oa(e,t){let n=Da(e);return Math.round(t*n)/n}function ka(e){let t=y.useRef(e);return Ta(()=>{t.current=e}),t}function Aa(e){e===void 0&&(e={});let{placement:t=`bottom`,strategy:n=`absolute`,middleware:r=[],platform:i,elements:{reference:a,floating:o}={},transform:s=!0,whileElementsMounted:c,open:l}=e,[u,d]=y.useState({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[f,p]=y.useState(r);Ea(f,r)||p(r);let[m,h]=y.useState(null),[g,_]=y.useState(null),v=y.useCallback(e=>{e!==C.current&&(C.current=e,h(e))},[]),b=y.useCallback(e=>{e!==w.current&&(w.current=e,_(e))},[]),x=a||m,S=o||g,C=y.useRef(null),w=y.useRef(null),T=y.useRef(u),E=c!=null,D=ka(c),O=ka(i),k=ka(l),A=y.useCallback(()=>{if(!C.current||!w.current)return;let e={placement:t,strategy:n,middleware:f};O.current&&(e.platform=O.current),wa(C.current,w.current,e).then(e=>{let t={...e,isPositioned:k.current!==!1};j.current&&!Ea(T.current,t)&&(T.current=t,ln.flushSync(()=>{d(t)}))})},[f,t,n,O,k]);Ta(()=>{l===!1&&T.current.isPositioned&&(T.current.isPositioned=!1,d(e=>({...e,isPositioned:!1})))},[l]);let j=y.useRef(!1);Ta(()=>(j.current=!0,()=>{j.current=!1}),[]),Ta(()=>{if(x&&(C.current=x),S&&(w.current=S),x&&S){if(D.current)return D.current(x,S,A);A()}},[x,S,A,D,E]);let M=y.useMemo(()=>({reference:C,floating:w,setReference:v,setFloating:b}),[v,b]),N=y.useMemo(()=>({reference:x,floating:S}),[x,S]),P=y.useMemo(()=>{let e={position:n,left:0,top:0};if(!N.floating)return e;let t=Oa(N.floating,u.x),r=Oa(N.floating,u.y);return s?{...e,transform:`translate(`+t+`px, `+r+`px)`,...Da(N.floating)>=1.5&&{willChange:`transform`}}:{position:n,left:t,top:r}},[n,s,N.floating,u.x,u.y]);return y.useMemo(()=>({...u,update:A,refs:M,elements:N,floatingStyles:P}),[u,A,M,N,P])}var ja=e=>{function t(e){return{}.hasOwnProperty.call(e,`current`)}return{name:`arrow`,options:e,fn(n){let{element:r,padding:i}=typeof e==`function`?e(n):e;return r&&t(r)?r.current==null?{}:Sa({element:r.current,padding:i}).fn(n):r?Sa({element:r,padding:i}).fn(n):{}}}},Ma=(e,t)=>{let n=_a(e);return{name:n.name,fn:n.fn,options:[e,t]}},Na=(e,t)=>{let n=va(e);return{name:n.name,fn:n.fn,options:[e,t]}},Pa=(e,t)=>({fn:Ca(e).fn,options:[e,t]}),Fa=(e,t)=>{let n=ya(e);return{name:n.name,fn:n.fn,options:[e,t]}},Ia=(e,t)=>{let n=ba(e);return{name:n.name,fn:n.fn,options:[e,t]}},La=(e,t)=>{let n=xa(e);return{name:n.name,fn:n.fn,options:[e,t]}},Ra=(e,t)=>{let n=ja(e);return{name:n.name,fn:n.fn,options:[e,t]}},za=Object.defineProperty,Ba=(e,t)=>za(e,`name`,{value:t,configurable:!0});function Va(e){let[t,n]=y.useState(void 0);return Jt(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});let t=0,r=new ResizeObserver(r=>{if(!Array.isArray(r)||!r.length)return;let i=r[0];window.cancelAnimationFrame(t),t=window.requestAnimationFrame(()=>{let t,r;if(`borderBoxSize`in i){let e=i.borderBoxSize,n=Array.isArray(e)?e[0]:e;t=n.inlineSize,r=n.blockSize}else t=e.offsetWidth,r=e.offsetHeight;n({width:t,height:r})})});return r.observe(e,{box:`border-box`}),()=>{window.cancelAnimationFrame(t),r.unobserve(e)}}n(void 0)},[e]),t}Ba(Va,`useSize`);var Ha=Object.defineProperty,Ua=(e,t)=>Ha(e,`name`,{value:t,configurable:!0}),Wa={Partial:`partial`,Always:`always`},Ga={Optimized:`optimized`,Always:`always`},Ka=`Popper`,[qa,Ja]=Kt(Ka),[Ya,Xa]=qa(Ka),Za=Ua(e=>{let{__scopePopper:t,children:n}=e,[r,i]=y.useState(null),[a,o]=y.useState(void 0);return(0,K.jsx)(Ya,{scope:t,anchor:r,onAnchorChange:i,placementState:a,setPlacementState:o,children:n})},`Popper`),Qa=`PopperAnchor`,$a=y.forwardRef(Ua(function(e,t){let{__scopePopper:n,virtualRef:r,...i}=e,a=Xa(Qa,n),o=y.useRef(null),s=a.onAnchorChange,c=T(t,y.useCallback(e=>{o.current=e,e&&s(e)},[s])),l=y.useRef(null);y.useEffect(()=>{if(!r)return;let e=l.current;l.current=r.current,e!==l.current&&s(l.current)});let u=a.placementState&&oo(a.placementState),d=u?.[0],f=u?.[1];return r?null:(0,K.jsx)(Y.div,{"data-radix-popper-side":d,"data-radix-popper-align":f,...i,ref:c})},`PopperAnchor`)),eo=`PopperContent`,[to,no]=qa(eo),ro=y.forwardRef(Ua(function(e,t){let{__scopePopper:n,side:r=`bottom`,sideOffset:i=0,align:a=`center`,alignOffset:o=0,arrowPadding:s=0,avoidCollisions:c=!0,collisionBoundary:l=[],collisionPadding:u=0,sticky:d=Wa.Partial,hideWhenDetached:f=!1,updatePositionStrategy:p=Ga.Optimized,onPlaced:m,...h}=e,g=Xa(eo,n),[_,v]=y.useState(null),b=T(t,v),[x,S]=y.useState(null),C=Va(x),w=C?.width??0,E=C?.height??0,D=r+(a===`center`?``:`-`+a),O=typeof u==`number`?u:{top:0,right:0,bottom:0,left:0,...u},k=Array.isArray(l)?l:[l],A=k.length>0,j={padding:O,boundary:k.filter(io),altBoundary:A},{refs:M,floatingStyles:N,placement:P,isPositioned:F,middlewareData:I}=Aa({strategy:`fixed`,placement:D,whileElementsMounted:Ua((...e)=>ga(...e,{animationFrame:p===Ga.Always}),`whileElementsMounted`),elements:{reference:g.anchor},middleware:[Ma({mainAxis:i+E,alignmentAxis:o}),c&&Na({mainAxis:!0,crossAxis:!1,...d===Wa.Partial?{limiter:Pa()}:{},...j}),c&&Fa({...j}),Ia({...j,apply:Ua(({elements:e,rects:t,availableWidth:n,availableHeight:r})=>{let{width:i,height:a}=t.reference,o=e.floating.style;o.setProperty(`--radix-popper-available-width`,`${n}px`),o.setProperty(`--radix-popper-available-height`,`${r}px`),o.setProperty(`--radix-popper-anchor-width`,`${i}px`),o.setProperty(`--radix-popper-anchor-height`,`${a}px`)},`apply`)}),x&&Ra({element:x,padding:s}),ao({arrowWidth:w,arrowHeight:E}),f&&La(A?{strategy:`referenceHidden`,...j}:{strategy:`referenceHidden`,padding:j.padding,altBoundary:j.altBoundary})]}),L=g.setPlacementState;Jt(()=>(L(P),()=>{L(void 0)}),[P,L]);let[R,z]=oo(P),B=Fn(m);Jt(()=>{F&&B?.()},[F,B]);let ee=I.arrow?.x,V=I.arrow?.y,H=I.arrow?.centerOffset!==0,[te,ne]=y.useState();return Jt(()=>{_&&ne(window.getComputedStyle(_).zIndex)},[_]),(0,K.jsx)(`div`,{ref:M.setFloating,"data-radix-popper-content-wrapper":``,style:{...N,transform:F?N.transform:`translate(0, -200%)`,minWidth:`max-content`,zIndex:te,"--radix-popper-transform-origin":[I.transformOrigin?.x,I.transformOrigin?.y].join(` `),...I.hide?.referenceHidden&&{visibility:`hidden`,pointerEvents:`none`}},dir:e.dir,children:(0,K.jsx)(to,{scope:n,placedSide:R,placedAlign:z,onArrowChange:S,arrowX:ee,arrowY:V,shouldHideArrow:H,children:(0,K.jsx)(Y.div,{"data-side":R,"data-align":z,...h,ref:b,style:{...h.style,animation:F?h.style?.animation:`none`}})})})},`PopperContent`));function io(e){return e!==null}Ua(io,`isNotNull`);var ao=Ua(e=>({name:`transformOrigin`,options:e,fn(t){let{placement:n,rects:r,middlewareData:i}=t,a=i.arrow?.centerOffset!==0,o=a?0:e.arrowWidth,s=a?0:e.arrowHeight,[c,l]=oo(n),u={start:`0%`,center:`50%`,end:`100%`}[l],d=(i.arrow?.x??0)+o/2,f=(i.arrow?.y??0)+s/2,p=``,m=``;return c===`bottom`?(p=a?u:`${d}px`,m=`${-s}px`):c===`top`?(p=a?u:`${d}px`,m=`${r.floating.height+s}px`):c===`right`?(p=`${-s}px`,m=a?u:`${f}px`):c===`left`&&(p=`${r.floating.width+s}px`,m=a?u:`${f}px`),{data:{x:p,y:m}}}}),`transformOrigin`);function oo(e){let[t,n=`center`]=e.split(`-`);return[t,n]}Ua(oo,`getSideAndAlignFromPlacement`);var so=Object.defineProperty,co=y.forwardRef(((e,t)=>so(e,`name`,{value:t,configurable:!0}))(function(e,t){let{container:n,...r}=e,[i,a]=y.useState(!1);Jt(()=>a(!0),[]);let o=n||i&&globalThis?.document?.body;return o?ln.createPortal((0,K.jsx)(Y.div,{...r,ref:t}),o):null},`Portal`)),lo=Object.defineProperty,uo=(e,t)=>lo(e,`name`,{value:t,configurable:!0});function fo(e,t){return y.useReducer((e,n)=>t[e][n]??e,e)}uo(fo,`useStateMachine`);var po=uo(e=>{let{present:t,children:n}=e,r=mo(t),i=typeof n==`function`?n({present:r.isPresent}):y.Children.only(n),a=go(r.ref,vo(i));return typeof n==`function`||r.isPresent?y.cloneElement(i,{ref:a}):null},`Presence`);function mo(e){let[t,n]=y.useState(),r=y.useRef(null),i=y.useRef(e),a=y.useRef(`none`),o=y.useRef(void 0),[s,c]=fo(e?`mounted`:`unmounted`,{mounted:{UNMOUNT:`unmounted`,ANIMATION_OUT:`unmountSuspended`},unmountSuspended:{MOUNT:`mounted`,ANIMATION_END:`unmounted`},unmounted:{MOUNT:`mounted`}});return y.useEffect(()=>{s===`mounted`?(a.current=o.current??_o(r.current),o.current=void 0):a.current=`none`},[s]),Jt(()=>{let t=r.current,n=i.current;if(n!==e){let r=a.current,s=_o(t);e?(o.current=s,c(`MOUNT`)):s===`none`||t?.display===`none`?c(`UNMOUNT`):c(n&&r!==s?`ANIMATION_OUT`:`UNMOUNT`),i.current=e}},[e,c]),Jt(()=>{if(t){let e,n=t.ownerDocument.defaultView??window,o=uo(a=>{let o=_o(r.current).includes(CSS.escape(a.animationName));if(a.target===t&&o&&(c(`ANIMATION_END`),!i.current)){let r=t.style.animationFillMode;t.style.animationFillMode=`forwards`,e=n.setTimeout(()=>{t.style.animationFillMode===`forwards`&&(t.style.animationFillMode=r)})}},`handleAnimationEnd`),s=uo(e=>{e.target===t&&(a.current=_o(r.current))},`handleAnimationStart`);return t.addEventListener(`animationstart`,s),t.addEventListener(`animationcancel`,o),t.addEventListener(`animationend`,o),()=>{n.clearTimeout(e),t.removeEventListener(`animationstart`,s),t.removeEventListener(`animationcancel`,o),t.removeEventListener(`animationend`,o)}}c(`ANIMATION_END`)},[t,c]),{isPresent:[`mounted`,`unmountSuspended`].includes(s),ref:y.useCallback(e=>{if(e){let t=getComputedStyle(e);r.current=t,o.current=_o(t)}else r.current=null;n(e)},[])}}uo(mo,`usePresence`);function ho(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}uo(ho,`setRef`);function go(...e){let t=y.useRef(e);return t.current=e,y.useCallback(e=>{let n=t.current,r=!1,i=n.map(t=>{let n=ho(t,e);return!r&&typeof n==`function`&&(r=!0),n});if(r)return()=>{for(let e=0;eyo(e,`name`,{value:t,configurable:!0}),xo=!1;function So(){let[e,t]=y.useState(xo);return y.useEffect(()=>{xo||(xo=!0,t(!0))},[]),e}bo(So,`useIsHydrated`);var Co=y.useSyncExternalStore;function wo(){return()=>{}}bo(wo,`subscribe`);function To(){return Co(wo,()=>!0,()=>!1)}bo(To,`useIsHydratedModern`);var Eo=typeof Co==`function`?To:So,Do=Object.defineProperty,Oo=(e,t)=>Do(e,`name`,{value:t,configurable:!0}),ko=`rovingFocusGroup.onEntryFocus`,Ao={bubbles:!1,cancelable:!0},jo=`RovingFocusGroup`,[Mo,No,Po]=hn(jo),[Fo,Io]=Kt(jo,[Po]),Lo={Vertical:`vertical`,Horizontal:`horizontal`},Ro={LTR:`ltr`,RTL:`rtl`},[zo,Bo]=Fo(jo),Vo=y.forwardRef(Oo(function(e,t){return(0,K.jsx)(Mo.Provider,{scope:e.__scopeRovingFocusGroup,children:(0,K.jsx)(Mo.Slot,{scope:e.__scopeRovingFocusGroup,children:(0,K.jsx)(Ho,{...e,ref:t})})})},`RovingFocusGroup`)),Ho=y.forwardRef(Oo(function(e,t){let{__scopeRovingFocusGroup:n,orientation:r,loop:i=!1,dir:a,currentTabStopId:o,defaultCurrentTabStopId:s,onCurrentTabStopIdChange:c,onEntryFocus:l,preventScrollOnEntryFocus:u=!1,...d}=e,f=y.useRef(null),p=T(t,f),m=jn(a),[h,g]=rn({prop:o,defaultProp:s??null,onChange:c,caller:jo}),[_,v]=y.useState(!1),b=Fn(l),x=No(n),S=y.useRef(!1),[C,w]=y.useState(0);return y.useEffect(()=>{let e=f.current;if(e)return e.addEventListener(ko,b),()=>e.removeEventListener(ko,b)},[b]),(0,K.jsx)(zo,{scope:n,orientation:r,dir:m,loop:i,currentTabStopId:h,onItemFocus:y.useCallback(e=>g(e),[g]),onItemShiftTab:y.useCallback(()=>v(!0),[]),onFocusableItemAdd:y.useCallback(()=>w(e=>e+1),[]),onFocusableItemRemove:y.useCallback(()=>w(e=>e-1),[]),children:(0,K.jsx)(Y.div,{tabIndex:_||C===0?-1:0,"data-orientation":r,...d,ref:p,style:{outline:`none`,...e.style},onMouseDown:J(e.onMouseDown,()=>{S.current=!0}),onFocus:J(e.onFocus,e=>{let t=!S.current;if(e.target===e.currentTarget&&t&&!_){let t=new CustomEvent(ko,Ao);if(e.currentTarget.dispatchEvent(t),!t.defaultPrevented){let e=x().filter(e=>e.focusable);Jo([e.find(e=>e.active),e.find(e=>e.id===h),...e].filter(Boolean).map(e=>e.ref.current),u)}}S.current=!1}),onBlur:J(e.onBlur,()=>v(!1))})})},`RovingFocusGroupImpl`)),Uo=`RovingFocusGroupItem`,Wo=y.forwardRef(Oo(function(e,t){let{__scopeRovingFocusGroup:n,focusable:r=!0,active:i=!1,tabStopId:a,children:o,...s}=e,c=Or(),l=a||c,u=Bo(Uo,n),d=u.currentTabStopId===l,f=No(n),{onFocusableItemAdd:p,onFocusableItemRemove:m,currentTabStopId:h}=u,g=Eo();return Jt(()=>{if(g&&r)return p(),()=>m()},[g,r,p,m]),y.useEffect(()=>{if(!g&&r)return p(),()=>m()},[g,r,p,m]),(0,K.jsx)(Mo.ItemSlot,{scope:n,id:l,focusable:r,active:i,children:(0,K.jsx)(Y.span,{tabIndex:d?0:-1,"data-orientation":u.orientation,...s,ref:t,onMouseDown:J(e.onMouseDown,e=>{r?u.onItemFocus(l):e.preventDefault()}),onFocus:J(e.onFocus,()=>u.onItemFocus(l)),onKeyDown:J(e.onKeyDown,e=>{if(e.key===`Tab`&&e.shiftKey){u.onItemShiftTab();return}if(e.target!==e.currentTarget)return;let t=qo(e,u.orientation,u.dir);if(t!==void 0){if(e.metaKey||e.ctrlKey||e.altKey||e.shiftKey)return;e.preventDefault();let n=f().filter(e=>e.focusable).map(e=>e.ref.current);if(t===`last`)n.reverse();else if(t===`prev`||t===`next`){t===`prev`&&n.reverse();let r=n.indexOf(e.currentTarget);n=u.loop?Yo(n,r+1):n.slice(r+1)}setTimeout(()=>Jo(n))}}),children:typeof o==`function`?o({isCurrentTabStop:d,hasTabStop:h!=null}):o})})},`RovingFocusGroupItem`)),Go={ArrowLeft:`prev`,ArrowUp:`prev`,ArrowRight:`next`,ArrowDown:`next`,PageUp:`first`,Home:`first`,PageDown:`last`,End:`last`};function Ko(e,t){return t===Ro.RTL?e===`ArrowLeft`?`ArrowRight`:e===`ArrowRight`?`ArrowLeft`:e:e}Oo(Ko,`getDirectionAwareKey`);function qo(e,t,n){let r=Ko(e.key,n);if(!(t===Lo.Vertical&&[`ArrowLeft`,`ArrowRight`].includes(r))&&!(t===Lo.Horizontal&&[`ArrowUp`,`ArrowDown`].includes(r)))return Go[r]}Oo(qo,`getFocusIntent`);function Jo(e,t=!1){let n=document.activeElement;for(let r of e)if(r===n||(r.focus({preventScroll:t}),document.activeElement!==n))return}Oo(Jo,`focusFirst`);function Yo(e,t){return e.map((n,r)=>e[(t+r)%e.length])}Oo(Yo,`wrapArray`);var Xo=function(e){return typeof document>`u`?null:(Array.isArray(e)?e[0]:e).ownerDocument.body},Zo=new WeakMap,Qo=new WeakMap,$o={},es=0,ts=function(e){return e&&(e.host||ts(e.parentNode))},ns=function(e,t){return t.map(function(t){if(e.contains(t))return t;var n=ts(t);return n&&e.contains(n)?n:(console.error(`aria-hidden`,t,`in not contained inside`,e,`. Doing nothing`),null)}).filter(function(e){return!!e})},rs=function(e,t,n,r){var i=ns(t,Array.isArray(e)?e:[e]);$o[n]||($o[n]=new WeakMap);var a=$o[n],o=[],s=new Set,c=new Set(i),l=function(e){e&&!s.has(e)&&(s.add(e),l(e.parentNode))};i.forEach(l);var u=function(e){e&&!c.has(e)&&Array.prototype.forEach.call(e.children,function(e){if(s.has(e))u(e);else try{var t=e.getAttribute(r),i=t!==null&&t!==`false`,c=(Zo.get(e)||0)+1,l=(a.get(e)||0)+1;Zo.set(e,c),a.set(e,l),o.push(e),c===1&&i&&Qo.set(e,!0),l===1&&e.setAttribute(n,`true`),i||e.setAttribute(r,`true`)}catch(t){console.error(`aria-hidden: cannot operate on `,e,t)}})};return u(t),s.clear(),es++,function(){o.forEach(function(e){var t=Zo.get(e)-1,i=a.get(e)-1;Zo.set(e,t),a.set(e,i),t||(Qo.has(e)||e.removeAttribute(r),Qo.delete(e)),i||e.removeAttribute(n)}),es--,es||(Zo=new WeakMap,Zo=new WeakMap,Qo=new WeakMap,$o={})}},is=function(e,t,n){n===void 0&&(n=`data-aria-hidden`);var r=Array.from(Array.isArray(e)?e:[e]),i=t||Xo(e);return i?(r.push.apply(r,Array.from(i.querySelectorAll(`[aria-live], script`))),rs(r,i,n,`aria-hidden`)):function(){return null}},as=function(){return as=Object.assign||function(e){for(var t,n=1,r=arguments.length;n`u`)return Ms;var t=Ps(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},Is=js(),Ls=`data-scroll-locked`,Rs=function(e,t,n,r){var i=e.left,a=e.top,o=e.right,s=e.gap;return n===void 0&&(n=`margin`),` .${us} { overflow: hidden ${r}; padding-right: ${s}px ${r}; @@ -46,16 +46,16 @@ Error generating stack: `+e.message+` `},zs=function(){var e=parseInt(document.body.getAttribute(`data-scroll-locked`)||`0`,10);return isFinite(e)?e:0},Bs=function(){y.useEffect(function(){return document.body.setAttribute(Ls,(zs()+1).toString()),function(){var e=zs()-1;e<=0?document.body.removeAttribute(Ls):document.body.setAttribute(Ls,e.toString())}},[])},Vs=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,i=r===void 0?`margin`:r;Bs();var a=y.useMemo(function(){return Fs(i)},[i]);return y.createElement(Is,{styles:Rs(a,!t,i,n?``:`!important`)})},Hs=!1;if(typeof window<`u`)try{var Us=Object.defineProperty({},"passive",{get:function(){return Hs=!0,!0}});window.addEventListener(`test`,Us,Us),window.removeEventListener(`test`,Us,Us)}catch{Hs=!1}var Ws=Hs?{passive:!1}:!1,Gs=function(e){return e.tagName===`TEXTAREA`},Ks=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return n[t]!==`hidden`&&!(n.overflowY===n.overflowX&&!Gs(e)&&n[t]===`visible`)},qs=function(e){return Ks(e,`overflowY`)},Js=function(e){return Ks(e,`overflowX`)},Ys=function(e,t){var n=t.ownerDocument,r=t;do{if(typeof ShadowRoot<`u`&&r instanceof ShadowRoot&&(r=r.host),Qs(e,r)){var i=$s(e,r);if(i[1]>i[2])return!0}r=r.parentNode}while(r&&r!==n.body);return!1},Xs=function(e){return[e.scrollTop,e.scrollHeight,e.clientHeight]},Zs=function(e){return[e.scrollLeft,e.scrollWidth,e.clientWidth]},Qs=function(e,t){return e===`v`?qs(t):Js(t)},$s=function(e,t){return e===`v`?Xs(t):Zs(t)},ec=function(e,t){return e===`h`&&t===`rtl`?-1:1},tc=function(e,t,n,r,i){var a=ec(e,window.getComputedStyle(t).direction),o=a*r,s=n.target,c=t.contains(s),l=!1,u=o>0,d=0,f=0;do{if(!s)break;var p=$s(e,s),m=p[0],h=p[1]-p[2]-a*m;(m||h)&&Qs(e,s)&&(d+=h,f+=m);var g=s.parentNode;s=g&&g.nodeType===Node.DOCUMENT_FRAGMENT_NODE?g.host:g}while(!c&&s!==document.body||c&&(t.contains(s)||t===s));return(u&&(i&&Math.abs(d)<1||!i&&o>d)||!u&&(i&&Math.abs(f)<1||!i&&-o>f))&&(l=!0),l},nc=function(e){return`changedTouches`in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},rc=function(e){return[e.deltaX,e.deltaY]},ic=function(e){return e&&`current`in e?e.current:e},ac=function(e,t){return e[0]===t[0]&&e[1]===t[1]},oc=function(e){return` .block-interactivity-${e} {pointer-events: none;} .allow-interactivity-${e} {pointer-events: all;} -`},sc=0,cc=[];function lc(e){var t=y.useRef([]),n=y.useRef([0,0]),r=y.useRef(),i=y.useState(sc++)[0],a=y.useState(js)[0],o=y.useRef(e);y.useEffect(function(){o.current=e},[e]),y.useEffect(function(){if(e.inert){document.body.classList.add(`block-interactivity-${i}`);var t=ss([e.lockRef.current],(e.shards||[]).map(ic),!0).filter(Boolean);return t.forEach(function(e){return e.classList.add(`allow-interactivity-${i}`)}),function(){document.body.classList.remove(`block-interactivity-${i}`),t.forEach(function(e){return e.classList.remove(`allow-interactivity-${i}`)})}}},[e.inert,e.lockRef.current,e.shards]);var s=y.useCallback(function(e,t){if(`touches`in e&&e.touches.length===2||e.type===`wheel`&&e.ctrlKey)return!o.current.allowPinchZoom;var i=nc(e),a=n.current,s=`deltaX`in e?e.deltaX:a[0]-i[0],c=`deltaY`in e?e.deltaY:a[1]-i[1],l,u=e.target,d=Math.abs(s)>Math.abs(c)?`h`:`v`;if(`touches`in e&&d===`h`&&u.type===`range`)return!1;var f=window.getSelection(),p=f&&f.anchorNode;if(p&&(p===u||p.contains(u)))return!1;var m=Ys(d,u);if(!m)return!0;if(m?l=d:(l=d===`v`?`h`:`v`,m=Ys(d,u)),!m)return!1;if(!r.current&&`changedTouches`in e&&(s||c)&&(r.current=l),!l)return!0;var h=r.current||l;return tc(h,t,e,h===`h`?s:c,!0)},[]),c=y.useCallback(function(e){var n=e;if(cc.length&&cc[cc.length-1]===a){var r=`deltaY`in n?rc(n):nc(n),i=t.current.filter(function(e){return e.name===n.type&&(e.target===n.target||n.target===e.shadowParent)&&ac(e.delta,r)})[0];if(i&&i.should){n.cancelable&&n.preventDefault();return}if(!i){var c=(o.current.shards||[]).map(ic).filter(Boolean).filter(function(e){return e.contains(n.target)});(c.length>0?s(n,c[0]):!o.current.noIsolation)&&n.cancelable&&n.preventDefault()}}},[]),l=y.useCallback(function(e,n,r,i){var a={name:e,delta:n,target:r,should:i,shadowParent:uc(r)};t.current.push(a),setTimeout(function(){t.current=t.current.filter(function(e){return e!==a})},1)},[]),u=y.useCallback(function(e){n.current=nc(e),r.current=void 0},[]),d=y.useCallback(function(t){l(t.type,rc(t),t.target,s(t,e.lockRef.current))},[]),f=y.useCallback(function(t){l(t.type,nc(t),t.target,s(t,e.lockRef.current))},[]);y.useEffect(function(){return cc.push(a),e.setCallbacks({onScrollCapture:d,onWheelCapture:d,onTouchMoveCapture:f}),document.addEventListener(`wheel`,c,Ws),document.addEventListener(`touchmove`,c,Ws),document.addEventListener(`touchstart`,u,Ws),function(){cc=cc.filter(function(e){return e!==a}),document.removeEventListener(`wheel`,c,Ws),document.removeEventListener(`touchmove`,c,Ws),document.removeEventListener(`touchstart`,u,Ws)}},[]);var p=e.removeScrollBar,m=e.inert;return y.createElement(y.Fragment,null,m?y.createElement(a,{styles:oc(i)}):null,p?y.createElement(Vs,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function uc(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}var dc=xs(Ss,lc),fc=y.forwardRef(function(e,t){return y.createElement(ws,as({},e,{ref:t,sideCar:dc}))});fc.classNames=ws.classNames;var pc=Object.defineProperty,mc=(e,t)=>pc(e,`name`,{value:t,configurable:!0}),hc=[`Enter`,` `],gc=[`ArrowDown`,`PageUp`,`Home`],_c=[`ArrowUp`,`PageDown`,`End`],vc=[...gc,..._c];[...hc],[...hc];var yc=`Menu`,[bc,xc,Sc]=hn(yc),[Cc,wc]=Kt(yc,[Sc,Ja,Io]),Tc=Ja(),Ec=Io(),[Dc,Oc]=Cc(yc),[kc,Ac]=Cc(yc),jc=mc(e=>{let{__scopeMenu:t,open:n=!1,children:r,dir:i,onOpenChange:a,modal:o=!0}=e,s=Tc(t),[c,l]=y.useState(null),u=y.useRef(!1),d=Fn(a),f=jn(i);return y.useEffect(()=>{let e=mc(()=>{u.current=!0,document.addEventListener(`pointerdown`,t,{capture:!0,once:!0}),document.addEventListener(`pointermove`,t,{capture:!0,once:!0})},`handleKeyDown`),t=mc(()=>u.current=!1,`handlePointer`);return document.addEventListener(`keydown`,e,{capture:!0}),()=>{document.removeEventListener(`keydown`,e,{capture:!0}),document.removeEventListener(`pointerdown`,t,{capture:!0}),document.removeEventListener(`pointermove`,t,{capture:!0})}},[]),y.useEffect(()=>{if(!n)return;let e=mc(()=>d(!1),`handleBlur`);return window.addEventListener(`blur`,e),()=>window.removeEventListener(`blur`,e)},[n,d]),(0,K.jsx)(Za,{...s,children:(0,K.jsx)(Dc,{scope:t,open:n,onOpenChange:d,content:c,onContentChange:l,children:(0,K.jsx)(kc,{scope:t,onClose:y.useCallback(()=>d(!1),[d]),isUsingKeyboardRef:u,dir:f,modal:o,children:r})})})},`Menu`),Mc=y.forwardRef(mc(function(e,t){let{__scopeMenu:n,...r}=e,i=Tc(n);return(0,K.jsx)($a,{...i,...r,ref:t})},`MenuAnchor`)),Nc=`MenuPortal`,[Pc,Fc]=Cc(Nc,{forceMount:void 0}),Ic=mc(e=>{let{__scopeMenu:t,forceMount:n,children:r,container:i}=e,a=Oc(Nc,t);return(0,K.jsx)(Pc,{scope:t,forceMount:n,children:(0,K.jsx)(po,{present:n||a.open,children:(0,K.jsx)(co,{asChild:!0,container:i,children:r})})})},`MenuPortal`),Lc=`MenuContent`,[Rc,zc]=Cc(Lc),Bc=y.forwardRef(mc(function(e,t){let n=Fc(Lc,e.__scopeMenu),{forceMount:r=n.forceMount,...i}=e,a=Oc(Lc,e.__scopeMenu),o=Ac(Lc,e.__scopeMenu);return(0,K.jsx)(bc.Provider,{scope:e.__scopeMenu,children:(0,K.jsx)(po,{present:r||a.open,children:(0,K.jsx)(bc.Slot,{scope:e.__scopeMenu,children:o.modal?(0,K.jsx)(Vc,{...i,ref:t}):(0,K.jsx)(Hc,{...i,ref:t})})})})},`MenuContent`)),Vc=y.forwardRef(mc(function(e,t){let n=Oc(Lc,e.__scopeMenu),r=y.useRef(null),i=T(t,r);return y.useEffect(()=>{let e=r.current;if(e)return is(e)},[]),(0,K.jsx)(Wc,{...e,ref:i,trapFocus:n.open,disableOutsidePointerEvents:n.open,disableOutsideScroll:!0,onFocusOutside:J(e.onFocusOutside,e=>e.preventDefault(),{checkForDefaultPrevented:!1}),onDismiss:()=>n.onOpenChange(!1)})},`MenuRootContentModal`)),Hc=y.forwardRef(mc(function(e,t){let n=Oc(Lc,e.__scopeMenu);return(0,K.jsx)(Wc,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>n.onOpenChange(!1)})},`MenuRootContentNonModal`)),Uc=O(`MenuContent.ScrollLock`),Wc=y.forwardRef(mc(function(e,t){let{__scopeMenu:n,loop:r=!1,trapFocus:i,onOpenAutoFocus:a,onCloseAutoFocus:o,disableOutsidePointerEvents:s,onEntryFocus:c,onEscapeKeyDown:l,onPointerDownOutside:u,onFocusOutside:d,onInteractOutside:f,onDismiss:p,disableOutsideScroll:m,...h}=e,g=Oc(Lc,n),_=Ac(Lc,n),v=Tc(n),b=Ec(n),x=xc(n),[S,C]=y.useState(null),w=y.useRef(null),[E,D]=y.useState(null);fr(E);let{nodes:O,registry:k}=dr(),A=!!(i||m),j=T(t,w,g.onContentChange,D),M=y.useRef(0),N=y.useRef(``),P=y.useRef(0),F=y.useRef(null),I=y.useRef(`right`),L=y.useRef(0),R=y.useMemo(()=>m?[w,...O.map(e=>({current:e}))]:[],[w,O,m]),z=m?fc:y.Fragment,B=m?{as:Uc,allowPinchZoom:!0,shards:R}:void 0,ee=mc(e=>{let t=N.current+e,n=x().filter(e=>!e.disabled),r=document.activeElement,i=n.find(e=>e.ref.current===r)?.textValue,a=cl(n.map(e=>e.textValue),t,i),o=n.find(e=>e.textValue===a)?.ref.current;function s(e){N.current=e,window.clearTimeout(M.current),e!==``&&(M.current=window.setTimeout(()=>s(``),1e3))}mc(s,`updateSearch`),s(t),o&&setTimeout(()=>o.focus())},`handleTypeaheadSearch`);y.useEffect(()=>()=>window.clearTimeout(M.current),[]),tr();let V=y.useCallback(e=>I.current===F.current?.side&&ul(e,F.current?.area),[]);return(0,K.jsx)(Rc,{scope:n,searchRef:N,onItemEnter:y.useCallback(e=>{V(e)&&e.preventDefault()},[V]),onItemLeave:y.useCallback(e=>{V(e)||(w.current?.focus(),C(null))},[V]),onTriggerLeave:y.useCallback(e=>{V(e)&&e.preventDefault()},[V]),pointerGraceTimerRef:P,onPointerGraceIntentChange:y.useCallback(e=>{F.current=e},[]),children:(0,K.jsx)(ur,{registry:A?k:null,children:(0,K.jsx)(z,{...B,children:(0,K.jsx)(cr,{asChild:!0,trapped:i,branches:O,onMountAutoFocus:J(a,e=>{e.preventDefault(),w.current?.focus({preventScroll:!0})}),onUnmountAutoFocus:o,children:(0,K.jsx)(Un,{asChild:!0,disableOutsidePointerEvents:s,onEscapeKeyDown:l,onPointerDownOutside:u,onFocusOutside:d,onInteractOutside:f,onDismiss:p,children:(0,K.jsx)(Vo,{asChild:!0,...b,dir:_.dir,orientation:`vertical`,loop:r,currentTabStopId:S,onCurrentTabStopIdChange:C,onEntryFocus:J(c,e=>{_.isUsingKeyboardRef.current||e.preventDefault()}),preventScrollOnEntryFocus:!0,children:(0,K.jsx)(ro,{role:`menu`,"aria-orientation":`vertical`,"data-state":rl(g.open),"data-radix-menu-content":``,dir:_.dir,...v,...h,ref:j,style:{outline:`none`,...h.style},onKeyDown:J(h.onKeyDown,e=>{let t=e.target.closest(`[data-radix-menu-content]`)===e.currentTarget,n=e.ctrlKey||e.altKey||e.metaKey,r=e.key.length===1;t&&(e.key===`Tab`&&e.preventDefault(),!n&&r&&ee(e.key));let i=w.current;if(e.target!==i||!vc.includes(e.key))return;e.preventDefault();let a=x().filter(e=>!e.disabled).map(e=>e.ref.current);_c.includes(e.key)&&a.reverse(),ol(a)}),onBlur:J(e.onBlur,e=>{e.currentTarget.contains(e.target)||(window.clearTimeout(M.current),N.current=``)}),onPointerMove:J(e.onPointerMove,dl(e=>{let t=e.target,n=L.current!==e.clientX;if(e.currentTarget.contains(t)&&n){let t=e.clientX>L.current?`right`:`left`;I.current=t,L.current=e.clientX}}))})})})})})})})},`MenuContentImpl`)),Gc=y.forwardRef(mc(function(e,t){let{__scopeMenu:n,...r}=e;return(0,K.jsx)(Y.div,{...r,ref:t})},`MenuLabel`)),Kc=`MenuItem`,qc=`menu.itemSelect`,Jc=y.forwardRef(mc(function(e,t){let{disabled:n=!1,onSelect:r,...i}=e,a=y.useRef(null),o=Ac(Kc,e.__scopeMenu),s=zc(Kc,e.__scopeMenu),c=T(t,a),l=y.useRef(!1),u=mc(()=>{let e=a.current;if(!n&&e){let t=new CustomEvent(qc,{bubbles:!0,cancelable:!0});e.addEventListener(qc,e=>r?.(e),{once:!0}),fn(e,t),t.defaultPrevented?l.current=!1:o.onClose()}},`handleSelect`);return(0,K.jsx)(Yc,{...i,ref:c,disabled:n,onClick:J(e.onClick,u),onPointerDown:t=>{e.onPointerDown?.(t),l.current=!0},onPointerUp:J(e.onPointerUp,e=>{l.current||e.currentTarget?.click()}),onKeyDown:J(e.onKeyDown,e=>{n||e.target!==e.currentTarget||(s.searchRef.current===``||e.key!==` `)&&hc.includes(e.key)&&(e.currentTarget.click(),e.preventDefault())})})},`MenuItem`)),Yc=y.forwardRef(mc(function(e,t){let{__scopeMenu:n,disabled:r=!1,textValue:i,...a}=e,o=zc(Kc,n),s=Ec(n),c=y.useRef(null),l=T(t,c),[u,d]=y.useState(!1),[f,p]=y.useState(``);return y.useEffect(()=>{let e=c.current;e&&p((e.textContent??``).trim())},[a.children]),(0,K.jsx)(bc.ItemSlot,{scope:n,disabled:r,textValue:i??f,children:(0,K.jsx)(Wo,{asChild:!0,...s,focusable:!r,children:(0,K.jsx)(Y.div,{role:`menuitem`,"data-highlighted":u?``:void 0,"aria-disabled":r||void 0,"data-disabled":r?``:void 0,...a,ref:l,onPointerMove:J(e.onPointerMove,dl(e=>{r?o.onItemLeave(e):(o.onItemEnter(e),e.defaultPrevented||e.currentTarget.focus({preventScroll:!0}))})),onPointerLeave:J(e.onPointerLeave,dl(e=>o.onItemLeave(e))),onFocus:J(e.onFocus,()=>d(!0)),onBlur:J(e.onBlur,()=>d(!1))})})})},`MenuItemImpl`)),[Xc,Zc]=Cc(`MenuRadioGroup`,{value:void 0,onValueChange:mc(()=>{},`onValueChange`)}),[Qc,$c]=Cc(`MenuItemIndicator`,{checked:!1}),el=y.forwardRef(mc(function(e,t){let{__scopeMenu:n,...r}=e;return(0,K.jsx)(Y.div,{role:`separator`,"aria-orientation":`horizontal`,...r,ref:t})},`MenuSeparator`)),[tl,nl]=Cc(`MenuSub`);function rl(e){return e?`open`:`closed`}mc(rl,`getOpenState`);function il(e){return e===`indeterminate`}mc(il,`isIndeterminate`);function al(e){return il(e)?`indeterminate`:e?`checked`:`unchecked`}mc(al,`getCheckedState`);function ol(e){let t=document.activeElement;for(let n of e)if(n===t||(n.focus(),document.activeElement!==t))return}mc(ol,`focusFirst`);function sl(e,t){return e.map((n,r)=>e[(t+r)%e.length])}mc(sl,`wrapArray`);function cl(e,t,n){let r=t.length>1&&Array.from(t).every(e=>e===t[0])?t[0]:t,i=n?e.indexOf(n):-1,a=sl(e,Math.max(i,0));r.length===1&&(a=a.filter(e=>e!==n));let o=a.find(e=>e.toLowerCase().startsWith(r.toLowerCase()));return o===n?void 0:o}mc(cl,`getNextMatch`);function ll(e,t){let{x:n,y:r}=e,i=!1;for(let e=0,a=t.length-1;er!=d>r&&n<(u-c)*(r-l)/(d-l)+c&&(i=!i)}return i}mc(ll,`isPointInPolygon`);function ul(e,t){return t?ll({x:e.clientX,y:e.clientY},t):!1}mc(ul,`isPointerInGraceArea`);function dl(e){return t=>t.pointerType===`mouse`?e(t):void 0}mc(dl,`whenMouse`);var fl=Object.defineProperty,pl=(e,t)=>fl(e,`name`,{value:t,configurable:!0}),ml=`DropdownMenu`,[hl,gl]=Kt(ml,[wc]),_l=wc(),[vl,yl]=hl(ml),bl=pl(e=>{let{__scopeDropdownMenu:t,children:n,dir:r,open:i,defaultOpen:a,onOpenChange:o,modal:s=!0}=e,c=_l(t),l=y.useRef(null),[u,d]=rn({prop:i,defaultProp:a??!1,onChange:o,caller:ml});return(0,K.jsx)(vl,{scope:t,triggerId:Or(),triggerRef:l,contentId:Or(),open:u,onOpenChange:d,onOpenToggle:y.useCallback(()=>d(e=>!e),[d]),modal:s,children:(0,K.jsx)(jc,{...c,open:u,onOpenChange:d,dir:r,modal:s,children:n})})},`DropdownMenu`),xl=`DropdownMenuTrigger`,Sl=y.forwardRef(pl(function(e,t){let{__scopeDropdownMenu:n,disabled:r=!1,...i}=e,a=yl(xl,n),o=_l(n),s=T(t,a.triggerRef);return(0,K.jsx)(Mc,{asChild:!0,...o,children:(0,K.jsx)(Y.button,{type:`button`,id:a.triggerId,"aria-haspopup":`menu`,"aria-expanded":a.open,"aria-controls":a.open?a.contentId:void 0,"data-state":a.open?`open`:`closed`,"data-disabled":r?``:void 0,disabled:r,...i,ref:s,onPointerDown:J(e.onPointerDown,e=>{!r&&e.button===0&&e.ctrlKey===!1&&(a.onOpenToggle(),a.open||e.preventDefault())}),onKeyDown:J(e.onKeyDown,e=>{r||([`Enter`,` `].includes(e.key)&&a.onOpenToggle(),e.key===`ArrowDown`&&a.onOpenChange(!0),[`Enter`,` `,`ArrowDown`].includes(e.key)&&e.preventDefault())})})})},`DropdownMenuTrigger`)),Cl=pl(e=>{let{__scopeDropdownMenu:t,...n}=e,r=_l(t);return(0,K.jsx)(Ic,{...r,...n})},`DropdownMenuPortal`),wl=`DropdownMenuContent`,Tl=y.forwardRef(pl(function(e,t){let{__scopeDropdownMenu:n,...r}=e,i=yl(wl,n),a=_l(n),o=y.useRef(!1);return(0,K.jsx)(Bc,{id:i.contentId,"aria-labelledby":i.triggerId,...a,...r,ref:t,onCloseAutoFocus:J(e.onCloseAutoFocus,e=>{o.current||i.triggerRef.current?.focus(),o.current=!1,e.preventDefault()}),onInteractOutside:J(e.onInteractOutside,e=>{let t=e.detail.originalEvent,n=t.button===0&&t.ctrlKey===!0,r=t.button===2||n;(!i.modal||r)&&(o.current=!0)}),style:{...e.style,"--radix-dropdown-menu-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-dropdown-menu-content-available-width":`var(--radix-popper-available-width)`,"--radix-dropdown-menu-content-available-height":`var(--radix-popper-available-height)`,"--radix-dropdown-menu-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-dropdown-menu-trigger-height":`var(--radix-popper-anchor-height)`}})},`DropdownMenuContent`)),El=y.forwardRef(pl(function(e,t){let{__scopeDropdownMenu:n,...r}=e,i=_l(n);return(0,K.jsx)(Gc,{...i,...r,ref:t})},`DropdownMenuLabel`)),Dl=y.forwardRef(pl(function(e,t){let{__scopeDropdownMenu:n,...r}=e,i=_l(n);return(0,K.jsx)(Jc,{...i,...r,ref:t})},`DropdownMenuItem`)),Ol=y.forwardRef(pl(function(e,t){let{__scopeDropdownMenu:n,...r}=e,i=_l(n);return(0,K.jsx)(el,{...i,...r,ref:t})},`DropdownMenuSeparator`)),kl=e=>e?.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase();function Al(e,t,n=[]){if(t==null)throw Error(`[lucide]: iconNode is required when icon name is used`);return{name:kl(e),size:24,node:t,...n.length>0?{aliases:n}:{}}}var jl=e=>{let t=``,n=!1;for(let r of e){if(r===`-`||r===`_`||r<=` `){n=t.length>0;continue}t.length===0?t+=r.toLowerCase():t+=n?r.toUpperCase():r,n=!1}return t},Ml=e=>{let t=jl(e);return t.charAt(0).toUpperCase()+t.slice(1)},Nl=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),Pl={xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":2,"stroke-linecap":`round`,"stroke-linejoin":`round`};function Fl(e){return e!=null}function Il(e,t={}){let n=t.attributeNames??{},r=e=>n[e]??e,i=e.size??e.width??Pl.width,a=e.size??e.height??Pl.height,o=e.aliases?.filter(e=>typeof e==`string`&&e.trim()!==``).map(e=>`lucide-${e}`)??[],s=[...e.name?[`lucide-${e.name}`]:[],...o],c=t.className?.split(` `).filter(Boolean)??[],l=t.includeDefaultClasses===!1?Nl(...c):Nl(`lucide`,...s,...c),u=t.absoluteStrokeWidth?Number(t.strokeWidth??Pl[`stroke-width`])*Number(e.size??e.width??Pl.width)/Number(t.size??t.width??Pl.width):t.strokeWidth??Pl[`stroke-width`];return[`svg`,{...Object.entries(Pl).reduce((e,[t,n])=>(e[r(t)]=n,e),{}),...`color`in t&&t.color&&{[r(`stroke`)]:t.color},...`size`in t&&Fl(t.size)&&{[r(`width`)]:t.size,[r(`height`)]:t.size},...`width`in t&&Fl(t.width)&&{[r(`width`)]:t.width},...`height`in t&&Fl(t.height)&&{[r(`height`)]:t.height},[r(`stroke-width`)]:u,...l&&{[r(`class`)]:l},[r(`viewBox`)]:`0 0 ${i} ${a}`,...t.hasA11yProp===!1?{[r(`aria-hidden`)]:`true`}:{},...`attributes`in t&&t.attributes},e.node.map(e=>{let[n,i,a]=e,o=t.nonScalingStroke?{[r(`vector-effect`)]:`non-scaling-stroke`,...i}:i;return a?[n,o,a]:[n,o]})]}function Ll(e,t={}){return Il(e,{...t,attributeNames:{...t.attributeNames,class:`className`,"stroke-width":`strokeWidth`,"stroke-linecap":`strokeLinecap`,"stroke-linejoin":`strokeLinejoin`,"vector-effect":`vectorEffect`}})}var Rl=e=>{for(let t in e)if(t.startsWith(`aria-`)||t===`role`||t===`title`)return!0;return!1},zl=(0,y.createContext)({}),Bl=()=>(0,y.useContext)(zl),Vl=(0,y.forwardRef)(({color:e,size:t,width:n,height:r,strokeWidth:i,absoluteStrokeWidth:a,nonScalingStroke:o,className:s=``,children:c,iconNode:l=[],icon:u={node:l,aliases:[],size:24},...d},f)=>{let{size:p=24,strokeWidth:m=2,absoluteStrokeWidth:h=!1,nonScalingStroke:g=!1,color:_=`currentColor`,className:v=``}=Bl()??{},b=!!c||Rl(d),[x,S,C=[]]=Ll(u,{color:e??_,width:n??t??p,height:r??t??p,strokeWidth:i??m,absoluteStrokeWidth:a??h,nonScalingStroke:o??g,className:Nl(v,s),hasA11yProp:b,attributes:d});return(0,y.createElement)(x,{ref:f,...S},[...C.map(([e,t])=>(0,y.createElement)(e,t)),...Array.isArray(c)?c:[c]])});function Z(e,t=[],n=[]){let r=typeof e==`string`?Al(e,t,n):e,i=(0,y.forwardRef)(({className:e,...t},n)=>(0,y.createElement)(Vl,{ref:n,icon:r,className:e,...t}));return r.name&&(i.displayName=Ml(r.name)),i}var Hl={name:`activity`,size:24,node:[[`path`,{d:`M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2`,key:`169zse`}]]};Hl.node;var Ul=Z(Hl),Wl={name:`arrow-down`,size:24,node:[[`path`,{d:`M12 5v14`,key:`s699le`}],[`path`,{d:`m19 12-7 7-7-7`,key:`1idqje`}]]};Wl.node;var Gl=Z(Wl),Kl={name:`arrow-left-right`,size:24,node:[[`path`,{d:`M8 3 4 7l4 4`,key:`9rb6wj`}],[`path`,{d:`M4 7h16`,key:`6tx8e3`}],[`path`,{d:`m16 21 4-4-4-4`,key:`siv7j2`}],[`path`,{d:`M20 17H4`,key:`h6l3hr`}]]};Kl.node;var ql=Z(Kl),Jl={name:`arrow-left`,size:24,node:[[`path`,{d:`m12 19-7-7 7-7`,key:`1l729n`}],[`path`,{d:`M19 12H5`,key:`x3x0zl`}]]};Jl.node;var Yl=Z(Jl),Xl={name:`book-open`,size:24,node:[[`path`,{d:`M12 5v16`,key:`1f6ucr`}],[`path`,{d:`M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z`,key:`1fyvmf`}]]};Xl.node;var Zl=Z(Xl),Ql={name:`bot`,size:24,node:[[`path`,{d:`M12 8V4H8`,key:`hb8ula`}],[`rect`,{width:`16`,height:`12`,x:`4`,y:`8`,rx:`2`,key:`enze0r`}],[`path`,{d:`M2 14h2`,key:`vft8re`}],[`path`,{d:`M20 14h2`,key:`4cs60a`}],[`path`,{d:`M15 13v2`,key:`1xurst`}],[`path`,{d:`M9 13v2`,key:`rq6x2g`}]]};Ql.node;var $l=Z(Ql),eu={name:`chart-column`,size:24,node:[[`path`,{d:`M3 3v16a2 2 0 0 0 2 2h16`,key:`c24i48`}],[`path`,{d:`M18 17V9`,key:`2bz60n`}],[`path`,{d:`M13 17V5`,key:`1frdt8`}],[`path`,{d:`M8 17v-3`,key:`17ska0`}]],aliases:[`bar-chart-3`]};eu.node;var tu=Z(eu),nu={name:`check`,size:24,node:[[`path`,{d:`M20 6 9 17l-5-5`,key:`1gmf2c`}]]};nu.node;var ru=Z(nu),iu={name:`check-check`,size:24,node:[[`path`,{d:`M18 6 7 17l-5-5`,key:`116fxf`}],[`path`,{d:`m22 10-7.5 7.5L13 16`,key:`ke71qq`}]]};iu.node;var au=Z(iu),ou={name:`chevron-down`,size:24,node:[[`path`,{d:`m6 9 6 6 6-6`,key:`qrunsl`}]]};ou.node;var su=Z(ou),cu={name:`chevron-left`,size:24,node:[[`path`,{d:`m15 18-6-6 6-6`,key:`1wnfg3`}]]};cu.node;var lu=Z(cu),uu={name:`chevron-right`,size:24,node:[[`path`,{d:`m9 18 6-6-6-6`,key:`mthhwq`}]]};uu.node;var du=Z(uu),fu={name:`chevron-up`,size:24,node:[[`path`,{d:`m18 15-6-6-6 6`,key:`153udz`}]]};fu.node;var pu=Z(fu),mu={name:`circle-alert`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`line`,{x1:`12`,x2:`12`,y1:`8`,y2:`12`,key:`1pkeuh`}],[`line`,{x1:`12`,x2:`12.01`,y1:`16`,y2:`16`,key:`4dfq90`}]],aliases:[`alert-circle`]};mu.node;var hu=Z(mu),gu={name:`circle-check-big`,size:24,node:[[`path`,{d:`M21.801 10A10 10 0 1 1 17 3.335`,key:`yps3ct`}],[`path`,{d:`m9 11 3 3L22 4`,key:`1pflzl`}]],aliases:[`check-circle`]};gu.node;var _u=Z(gu),vu={name:`circle-check`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m16 9-5.5 5.5L8 12`,key:`xofnsj`}]],aliases:[`check-circle-2`]};vu.node;var yu=Z(vu),bu={name:`circle-play`,size:24,node:[[`path`,{d:`M9 9.003a1 1 0 0 1 1.517-.859l4.997 2.997a1 1 0 0 1 0 1.718l-4.997 2.997A1 1 0 0 1 9 14.996z`,key:`kmsa83`}],[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}]],aliases:[`play-circle`]};bu.node;var xu=Z(bu),Su={name:`circle-x`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m15 9-6 6`,key:`1uzhvr`}],[`path`,{d:`m9 9 6 6`,key:`z0biqf`}]],aliases:[`x-circle`]};Su.node;var Cu=Z(Su),wu={name:`clock`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 6v6l4 2`,key:`mmk7yg`}]]};wu.node;var Tu=Z(wu),Eu={name:`cloud`,size:24,node:[[`path`,{d:`M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z`,key:`p7xjir`}]]};Eu.node;var Du=Z(Eu),Ou={name:`code`,size:24,node:[[`path`,{d:`m16 18 6-6-6-6`,key:`eg8j8`}],[`path`,{d:`m8 6-6 6 6 6`,key:`ppft3o`}]]};Ou.node;var ku=Z(Ou),Au={name:`container`,size:24,node:[[`path`,{d:`M22 7.7c0-.6-.4-1.2-.8-1.5l-6.3-3.9a1.72 1.72 0 0 0-1.7 0l-10.3 6c-.5.2-.9.8-.9 1.4v6.6c0 .5.4 1.2.8 1.5l6.3 3.9a1.72 1.72 0 0 0 1.7 0l10.3-6c.5-.3.9-1 .9-1.5Z`,key:`1t2lqe`}],[`path`,{d:`M10 21.9V14L2.1 9.1`,key:`o7czzq`}],[`path`,{d:`m10 14 11.9-6.9`,key:`zm5e20`}],[`path`,{d:`M14 19.8v-8.1`,key:`159ecu`}],[`path`,{d:`M18 17.5V9.4`,key:`11uown`}]]};Au.node;var ju=Z(Au),Mu={name:`copy`,size:24,node:[[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]};Mu.node;var Nu=Z(Mu),Pu={name:`database`,size:24,node:[[`ellipse`,{cx:`12`,cy:`5`,rx:`9`,ry:`3`,key:`msslwz`}],[`path`,{d:`M3 5V19A9 3 0 0 0 21 19V5`,key:`1wlel7`}],[`path`,{d:`M3 12A9 3 0 0 0 21 12`,key:`mv7ke4`}]]};Pu.node;var Fu=Z(Pu),Iu={name:`download`,size:24,node:[[`path`,{d:`M12 15V3`,key:`m9g1x1`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}],[`path`,{d:`m7 10 5 5 5-5`,key:`brsn70`}]]};Iu.node;var Lu=Z(Iu),Ru={name:`ellipsis-vertical`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`1`,key:`41hilf`}],[`circle`,{cx:`12`,cy:`5`,r:`1`,key:`gxeob9`}],[`circle`,{cx:`12`,cy:`19`,r:`1`,key:`lyex9k`}]],aliases:[`more-vertical`]};Ru.node;var zu=Z(Ru),Bu={name:`external-link`,size:24,node:[[`path`,{d:`M15 3h6v6`,key:`1q9fwt`}],[`path`,{d:`M10 14 21 3`,key:`gplh6r`}],[`path`,{d:`M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6`,key:`a6xqqp`}]]};Bu.node;var Vu=Z(Bu),Hu={name:`file-text`,size:24,node:[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M10 9H8`,key:`b1mrlr`}],[`path`,{d:`M16 13H8`,key:`t4e002`}],[`path`,{d:`M16 17H8`,key:`z1uh3a`}]]};Hu.node;var Uu=Z(Hu),Wu={name:`folder-open`,size:24,node:[[`path`,{d:`m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2`,key:`usdka0`}]]};Wu.node;var Gu=Z(Wu),Ku={name:`globe`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20`,key:`13o1zl`}],[`path`,{d:`M2 12h20`,key:`9i4pu4`}]]};Ku.node;var qu=Z(Ku),Ju={name:`grid-3x3`,size:24,node:[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M3 9h18`,key:`1pudct`}],[`path`,{d:`M3 15h18`,key:`5xshup`}],[`path`,{d:`M9 3v18`,key:`fh3hqa`}],[`path`,{d:`M15 3v18`,key:`14nvp0`}]],aliases:[`grid`,`grid-3-x-3`]};Ju.node;var Yu=Z(Ju),Xu={name:`house`,size:24,node:[[`path`,{d:`M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8`,key:`5wwlr5`}],[`path`,{d:`M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z`,key:`r6nss1`}]],aliases:[`home`]};Xu.node;var Zu=Z(Xu),Qu={name:`image`,size:24,node:[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,ry:`2`,key:`1m3agn`}],[`circle`,{cx:`9`,cy:`9`,r:`2`,key:`af1f0g`}],[`path`,{d:`m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21`,key:`1xmnt7`}]]};Qu.node;var $u=Z(Qu),ed={name:`info`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 16v-4`,key:`1dtifu`}],[`path`,{d:`M12 8h.01`,key:`e9boi3`}]]};ed.node;var td=Z(ed),nd={name:`key`,size:24,node:[[`path`,{d:`m2 21 9.6-9.6`,key:`9l79m3`}],[`path`,{d:`m7.5 15.5 2.3 2.3a1 1 0 0 1 0 1.4l-2.1 2.1a1 1 0 0 1-1.4 0L4 19`,key:`fw8biw`}],[`circle`,{cx:`15.5`,cy:`7.5`,r:`5.5`,key:`4wxmhb`}]]};nd.node;var rd=Z(nd),id={name:`layers`,size:24,node:[[`path`,{d:`M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z`,key:`zw3jo`}],[`path`,{d:`M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12`,key:`1wduqc`}],[`path`,{d:`M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17`,key:`kqbvx6`}]],aliases:[`layers-3`]};id.node;var ad=Z(id),od={name:`lightbulb`,size:24,node:[[`path`,{d:`M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5`,key:`1gvzjb`}],[`path`,{d:`M9 18h6`,key:`x1upvd`}],[`path`,{d:`M10 22h4`,key:`ceow96`}]]};od.node;var sd=Z(od),cd={name:`loader-circle`,size:24,node:[[`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`,key:`13zald`}]],aliases:[`loader-2`]};cd.node;var ld=Z(cd),ud={name:`lock`,size:24,node:[[`rect`,{width:`18`,height:`11`,x:`3`,y:`11`,rx:`2`,ry:`2`,key:`1w4ew1`}],[`path`,{d:`M7 11V7a5 5 0 0 1 10 0v4`,key:`fwvmzm`}]]};ud.node;var dd=Z(ud),fd={name:`map`,size:24,node:[[`path`,{d:`M14.106 5.553a2 2 0 0 0 1.788 0l3.659-1.83A1 1 0 0 1 21 4.619v12.764a1 1 0 0 1-.553.894l-4.553 2.277a2 2 0 0 1-1.788 0l-4.212-2.106a2 2 0 0 0-1.788 0l-3.659 1.83A1 1 0 0 1 3 19.381V6.618a1 1 0 0 1 .553-.894l4.553-2.277a2 2 0 0 1 1.788 0z`,key:`169xi5`}],[`path`,{d:`M15 5.764v15`,key:`1pn4in`}],[`path`,{d:`M9 3.236v15`,key:`1uimfh`}]]};fd.node;var pd=Z(fd),md={name:`maximize`,size:24,node:[[`path`,{d:`M8 3H5a2 2 0 0 0-2 2v3`,key:`1dcmit`}],[`path`,{d:`M21 8V5a2 2 0 0 0-2-2h-3`,key:`1e4gt3`}],[`path`,{d:`M3 16v3a2 2 0 0 0 2 2h3`,key:`wsl5sc`}],[`path`,{d:`M16 21h3a2 2 0 0 0 2-2v-3`,key:`18trek`}]]};md.node;var hd=Z(md),gd={name:`message-square`,size:24,node:[[`path`,{d:`M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z`,key:`18887p`}]]};gd.node;var _d=Z(gd),vd={name:`moon`,size:24,node:[[`path`,{d:`M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401`,key:`kfwtm`}]]};vd.node;var yd=Z(vd),bd={name:`music`,size:24,node:[[`path`,{d:`M9 18V5l12-2v13`,key:`1jmyc2`}],[`circle`,{cx:`6`,cy:`18`,r:`3`,key:`fqmcym`}],[`circle`,{cx:`18`,cy:`16`,r:`3`,key:`1hluhg`}]]};bd.node;var xd=Z(bd),Sd={name:`package`,size:24,node:[[`path`,{d:`M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z`,key:`1a0edw`}],[`path`,{d:`M12 22V12`,key:`d0xqtd`}],[`polyline`,{points:`3.29 7 12 12 20.71 7`,key:`ousv84`}],[`path`,{d:`m7.5 4.27 9 5.15`,key:`1c824w`}]]};Sd.node;var Cd=Z(Sd),wd={name:`panel-right-open`,size:24,node:[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M15 3v18`,key:`14nvp0`}],[`path`,{d:`m10 15-3-3 3-3`,key:`1pgupc`}]]};wd.node;var Td=Z(wd),Ed={name:`paperclip`,size:24,node:[[`path`,{d:`m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551`,key:`1miecu`}]]};Ed.node;var Dd=Z(Ed),Od={name:`play`,size:24,node:[[`path`,{d:`M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z`,key:`10ikf1`}]]};Od.node;var kd=Z(Od),Ad={name:`plus`,size:24,node:[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`M12 5v14`,key:`s699le`}]]};Ad.node;var jd=Z(Ad),Md={name:`refresh-cw`,size:24,node:[[`path`,{d:`M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8`,key:`v9h5vc`}],[`path`,{d:`M21 3v5h-5`,key:`1q7to0`}],[`path`,{d:`M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16`,key:`3uifl3`}],[`path`,{d:`M8 16H3v5`,key:`1cv678`}]]};Md.node;var Nd=Z(Md),Pd={name:`rocket`,size:24,node:[[`path`,{d:`M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5`,key:`qeys4`}],[`path`,{d:`M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09`,key:`u4xsad`}],[`path`,{d:`M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z`,key:`676m9`}],[`path`,{d:`M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05`,key:`92ym6u`}]]};Pd.node;var Fd=Z(Pd),Id={name:`rotate-ccw`,size:24,node:[[`path`,{d:`M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8`,key:`1357e3`}],[`path`,{d:`M3 3v5h5`,key:`1xhq8a`}]]};Id.node;var Ld=Z(Id),Rd={name:`search`,size:24,node:[[`path`,{d:`m21 21-4.34-4.34`,key:`14j7rj`}],[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}]]};Rd.node;var zd=Z(Rd),Bd={name:`send-horizontal`,size:24,node:[[`path`,{d:`M3.714 3.048a.498.498 0 0 0-.683.627l2.843 7.627a2 2 0 0 1 0 1.396l-2.842 7.627a.498.498 0 0 0 .682.627l18-8.5a.5.5 0 0 0 0-.904z`,key:`117uat`}],[`path`,{d:`M6 12h16`,key:`s4cdu5`}]],aliases:[`send-horizonal`]};Bd.node;var Vd=Z(Bd),Hd={name:`send`,size:24,node:[[`path`,{d:`M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z`,key:`1ffxy3`}],[`path`,{d:`m21.854 2.147-10.94 10.939`,key:`12cjpa`}]]};Hd.node;var Ud=Z(Hd),Wd={name:`server-off`,size:24,node:[[`path`,{d:`M7 2h13a2 2 0 0 1 2 2v4a2 2 0 0 1-2 2h-5`,key:`bt2siv`}],[`path`,{d:`M10 10 2.5 2.5C2 2 2 2.5 2 5v3a2 2 0 0 0 2 2h6z`,key:`1hjrv1`}],[`path`,{d:`M22 17v-1a2 2 0 0 0-2-2h-1`,key:`1iynyr`}],[`path`,{d:`M4 14a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h16.5l1-.5.5.5-8-8H4z`,key:`161ggg`}],[`path`,{d:`M6 18h.01`,key:`uhywen`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}]]};Wd.node;var Gd=Z(Wd),Kd={name:`settings`,size:24,node:[[`path`,{d:`M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915`,key:`1i5ecw`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]};Kd.node;var qd=Z(Kd),Jd={name:`shuffle`,size:24,node:[[`path`,{d:`m18 14 4 4-4 4`,key:`10pe0f`}],[`path`,{d:`m18 2 4 4-4 4`,key:`pucp1d`}],[`path`,{d:`M2 18h1.973a4 4 0 0 0 3.3-1.7l5.454-8.6a4 4 0 0 1 3.3-1.7H22`,key:`1ailkh`}],[`path`,{d:`M2 6h1.972a4 4 0 0 1 3.6 2.2`,key:`km57vx`}],[`path`,{d:`M22 18h-6.041a4 4 0 0 1-3.3-1.8l-.359-.45`,key:`os18l9`}]]};Jd.node;var Yd=Z(Jd),Xd={name:`square`,size:24,node:[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}]]};Xd.node;var Zd=Z(Xd),Qd={name:`sun`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`4`,key:`4exip2`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`m4.93 4.93 1.41 1.41`,key:`149t6j`}],[`path`,{d:`m17.66 17.66 1.41 1.41`,key:`ptbguv`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`M20 12h2`,key:`1q8mjw`}],[`path`,{d:`m6.34 17.66-1.41 1.41`,key:`1m8zz5`}],[`path`,{d:`m19.07 4.93-1.41 1.41`,key:`1shlcs`}]]};Qd.node;var $d=Z(Qd),ef={name:`trash`,size:24,node:[[`path`,{d:`M10 11v6`,key:`nco0om`}],[`path`,{d:`M14 11v6`,key:`outv1u`}],[`path`,{d:`M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6`,key:`miytrc`}],[`path`,{d:`M3 6h18`,key:`d0wm0j`}],[`path`,{d:`M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2`,key:`e791ji`}]],aliases:[`trash-2`]};ef.node;var tf=Z(ef),nf={name:`triangle-alert`,size:24,node:[[`path`,{d:`m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3`,key:`wmoenq`}],[`path`,{d:`M12 9v4`,key:`juzpu7`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]],aliases:[`alert-triangle`]};nf.node;var rf=Z(nf),af={name:`upload`,size:24,node:[[`path`,{d:`M12 3v12`,key:`1x0j5s`}],[`path`,{d:`m17 8-5-5-5 5`,key:`7q97r8`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}]]};af.node;var of=Z(af),sf={name:`user`,size:24,node:[[`path`,{d:`M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2`,key:`975kel`}],[`circle`,{cx:`12`,cy:`7`,r:`4`,key:`17ys0d`}]]};sf.node;var cf=Z(sf),lf={name:`workflow`,size:24,node:[[`rect`,{width:`8`,height:`8`,x:`3`,y:`3`,rx:`2`,key:`by2w9f`}],[`path`,{d:`M7 11v4a2 2 0 0 0 2 2h4`,key:`xkn7yn`}],[`rect`,{width:`8`,height:`8`,x:`13`,y:`13`,rx:`2`,key:`1cgmvn`}]]};lf.node;var uf=Z(lf),df={name:`wrench`,size:24,node:[[`path`,{d:`M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z`,key:`1ngwbx`}]]};df.node;var ff=Z(df),pf={name:`x`,size:24,node:[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]};pf.node;var mf=Z(pf),hf={name:`zap`,size:24,node:[[`path`,{d:`M15.914 4a1.5 1.5 0 00-2.474-1.561l-9 9A1.5 1.5 0 005.5 14h4.002a.5.5 0 01.471.666L8.086 20a1.5 1.5 0 002.475 1.56l9-9A1.5 1.5 0 0018.5 10h-3.997a.5.5 0 01-.472-.667z`,key:`1v7up4`}]]};hf.node;var gf=Z(hf);function _f({...e}){return(0,K.jsx)(bl,{"data-slot":`dropdown-menu`,...e})}function vf({...e}){return(0,K.jsx)(Sl,{"data-slot":`dropdown-menu-trigger`,...e})}function yf({className:e,sideOffset:t=4,...n}){return(0,K.jsx)(Cl,{children:(0,K.jsx)(Tl,{"data-slot":`dropdown-menu-content`,sideOffset:t,className:jt(`bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md`,e),...n})})}function bf({className:e,inset:t,variant:n=`default`,...r}){return(0,K.jsx)(Dl,{"data-slot":`dropdown-menu-item`,"data-inset":t,"data-variant":n,className:jt(`focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,e),...r})}function xf({className:e,inset:t,...n}){return(0,K.jsx)(El,{"data-slot":`dropdown-menu-label`,"data-inset":t,className:jt(`px-2 py-1.5 text-sm font-medium data-[inset]:pl-8`,e),...n})}function Sf({className:e,...t}){return(0,K.jsx)(Ol,{"data-slot":`dropdown-menu-separator`,className:jt(`bg-border -mx-1 my-1 h-px`,e),...t})}function Cf({size:e=`md`,className:t}){return(0,K.jsx)(ld,{className:jt(`animate-spin`,{"h-4 w-4":e===`sm`,"h-6 w-6":e===`md`,"h-8 w-8":e===`lg`},t)})}var wf=e=>e===`workflow`?uf:$l;function Tf({agents:e,workflows:t,entities:n,selectedItem:r,onSelect:i,onBrowseGallery:a,isLoading:o=!1}){let[s,c]=(0,y.useState)(!1),l=n||[...e,...t],u=e=>{i(e),c(!1)},d=r?wf(r.type):$l,f=r?.name||r?.id||`Select Agent or Workflow`,p=r?.metadata?.lazy_loaded!==!1;return(0,K.jsxs)(_f,{open:s,onOpenChange:c,children:[(0,K.jsx)(vf,{asChild:!0,children:(0,K.jsx)(q,{variant:`outline`,className:`w-64 justify-between font-mono text-sm`,disabled:o,children:o?(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(Cf,{size:`sm`}),(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Loading...`})]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0`,children:[(0,K.jsx)(d,{className:`h-4 w-4 flex-shrink-0`}),(0,K.jsx)(`span`,{className:`truncate`,children:f}),r&&!p&&(0,K.jsx)(ld,{className:`h-3 w-3 text-muted-foreground animate-spin ml-auto flex-shrink-0`})]}),(0,K.jsx)(su,{className:`h-4 w-4 opacity-50`})]})})}),(0,K.jsxs)(yf,{className:`w-80 font-mono`,children:[(()=>{let e=l.filter(e=>e.type===`workflow`),t=l.filter(e=>e.type===`agent`),n=l[0]?.type;return(0,K.jsxs)(K.Fragment,{children:[n===`workflow`&&e.length>0&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(xf,{className:`flex items-center gap-2`,children:[(0,K.jsx)(uf,{className:`h-4 w-4`}),`Workflows (`,e.length,`)`]}),e.map(e=>{let t=e.metadata?.lazy_loaded!==!1;return(0,K.jsx)(bf,{className:`cursor-pointer group`,onClick:()=>u(e),children:(0,K.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0 flex-1`,children:[(0,K.jsx)(uf,{className:`h-4 w-4 flex-shrink-0`}),(0,K.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,K.jsx)(`span`,{className:`truncate font-medium block`,children:e.name||e.id}),t&&e.description&&(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground line-clamp-2`,children:e.description})]})]})},e.id)})]}),e.length>0&&t.length>0&&(0,K.jsx)(Sf,{}),t.length>0&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(xf,{className:`flex items-center gap-2`,children:[(0,K.jsx)($l,{className:`h-4 w-4`}),`Agents (`,t.length,`)`]}),t.map(e=>{let t=e.metadata?.lazy_loaded!==!1;return(0,K.jsx)(bf,{className:`cursor-pointer group`,onClick:()=>u(e),children:(0,K.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0 flex-1`,children:[(0,K.jsx)($l,{className:`h-4 w-4 flex-shrink-0`}),(0,K.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,K.jsx)(`span`,{className:`truncate font-medium block`,children:e.name||e.id}),t&&e.description&&(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground line-clamp-2`,children:e.description})]})]})},e.id)})]}),n===`agent`&&e.length>0&&(0,K.jsxs)(K.Fragment,{children:[t.length>0&&(0,K.jsx)(Sf,{}),(0,K.jsxs)(xf,{className:`flex items-center gap-2`,children:[(0,K.jsx)(uf,{className:`h-4 w-4`}),`Workflows (`,e.length,`)`]}),e.map(e=>{let t=e.metadata?.lazy_loaded!==!1;return(0,K.jsx)(bf,{className:`cursor-pointer group`,onClick:()=>u(e),children:(0,K.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0 flex-1`,children:[(0,K.jsx)(uf,{className:`h-4 w-4 flex-shrink-0`}),(0,K.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,K.jsx)(`span`,{className:`truncate font-medium block`,children:e.name||e.id}),t&&e.description&&(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground line-clamp-2`,children:e.description})]})]})},e.id)})]})]})})(),l.length===0&&(0,K.jsx)(bf,{disabled:!0,children:(0,K.jsx)(`div`,{className:`text-center text-muted-foreground py-2`,children:o?`Loading agents and workflows...`:`No agents or workflows found`})}),(0,K.jsx)(Sf,{}),(0,K.jsxs)(bf,{className:`cursor-pointer text-primary`,onClick:()=>{a?.(),c(!1)},children:[(0,K.jsx)(jd,{className:`h-4 w-4 mr-2`}),`Browse Gallery`]})]})]})}var Ef=(e,t,n,r,i,a,o,s)=>{let c=document.documentElement,l=[`light`,`dark`];function u(t){(Array.isArray(e)?e:[e]).forEach(e=>{let n=e===`class`,r=n&&a?i.map(e=>a[e]||e):i;n?(c.classList.remove(...r),c.classList.add(a&&a[t]?a[t]:t)):c.setAttribute(e,t)}),d(t)}function d(e){s&&l.includes(e)&&(c.style.colorScheme=e)}function f(){return window.matchMedia(`(prefers-color-scheme: dark)`).matches?`dark`:`light`}if(r)u(r);else try{let e=localStorage.getItem(t)||n;u(o&&e===`system`?f():e)}catch{}},Df=[`light`,`dark`],Of=`(prefers-color-scheme: dark)`,kf=typeof window>`u`,Af=y.createContext(void 0),jf={setTheme:e=>{},themes:[]},Mf=()=>y.useContext(Af)??jf,Nf=e=>y.useContext(Af)?y.createElement(y.Fragment,null,e.children):y.createElement(Ff,{...e}),Pf=[`light`,`dark`],Ff=({forcedTheme:e,disableTransitionOnChange:t=!1,enableSystem:n=!0,enableColorScheme:r=!0,storageKey:i=`theme`,themes:a=Pf,defaultTheme:o=n?`system`:`light`,attribute:s=`data-theme`,value:c,children:l,nonce:u,scriptProps:d})=>{let[f,p]=y.useState(()=>Lf(i,o)),[m,h]=y.useState(()=>f===`system`?zf():f),g=c?Object.values(c):a,_=y.useCallback(e=>{let i=e;if(!i)return;e===`system`&&n&&(i=zf());let a=c?c[i]:i,l=t?Rf(u):null,d=document.documentElement,f=e=>{e===`class`?(d.classList.remove(...g),a&&d.classList.add(a)):e.startsWith(`data-`)&&(a?d.setAttribute(e,a):d.removeAttribute(e))};if(Array.isArray(s)?s.forEach(f):f(s),r){let e=Df.includes(o)?o:null,t=Df.includes(i)?i:e;d.style.colorScheme=t}l?.()},[u]),v=y.useCallback(e=>{let t=typeof e==`function`?e(f):e;p(t);try{localStorage.setItem(i,t)}catch{}},[f]),b=y.useCallback(t=>{let r=zf(t);h(r),f===`system`&&n&&!e&&_(`system`)},[f,e]);y.useEffect(()=>{let e=window.matchMedia(Of);return e.addListener(b),b(e),()=>e.removeListener(b)},[b]),y.useEffect(()=>{let e=e=>{e.key===i&&(e.newValue?p(e.newValue):v(o))};return window.addEventListener(`storage`,e),()=>window.removeEventListener(`storage`,e)},[v]),y.useEffect(()=>{_(e??f)},[e,f]);let x=y.useMemo(()=>({theme:f,setTheme:v,forcedTheme:e,resolvedTheme:f===`system`?m:f,themes:n?[...a,`system`]:a,systemTheme:n?m:void 0}),[f,v,e,m,n,a]);return y.createElement(Af.Provider,{value:x},y.createElement(If,{forcedTheme:e,storageKey:i,attribute:s,enableSystem:n,enableColorScheme:r,defaultTheme:o,value:c,themes:a,nonce:u,scriptProps:d}),l)},If=y.memo(({forcedTheme:e,storageKey:t,attribute:n,enableSystem:r,enableColorScheme:i,defaultTheme:a,value:o,themes:s,nonce:c,scriptProps:l})=>{let u=JSON.stringify([n,t,a,e,s,o,r,i]).slice(1,-1);return y.createElement(`script`,{...l,suppressHydrationWarning:!0,nonce:typeof window>`u`?c:``,dangerouslySetInnerHTML:{__html:`(${Ef.toString()})(${u})`}})}),Lf=(e,t)=>{if(kf)return;let n;try{n=localStorage.getItem(e)||void 0}catch{}return n||t},Rf=e=>{let t=document.createElement(`style`);return e&&t.setAttribute(`nonce`,e),t.appendChild(document.createTextNode(`*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}`)),document.head.appendChild(t),()=>{window.getComputedStyle(document.body),setTimeout(()=>{document.head.removeChild(t)},1)}},zf=e=>(e||=window.matchMedia(Of),e.matches?`dark`:`light`);function Bf(){let{setTheme:e}=Mf();return(0,K.jsxs)(_f,{children:[(0,K.jsx)(vf,{asChild:!0,children:(0,K.jsxs)(q,{variant:`ghost`,size:`sm`,children:[(0,K.jsx)($d,{className:`h-[1.2rem] w-[1.2rem] rotate-0 scale-100 transition-all dark:-rotate-90 dark:scale-0`}),(0,K.jsx)(yd,{className:`absolute h-[1.2rem] w-[1.2rem] rotate-90 scale-0 transition-all dark:rotate-0 dark:scale-100`}),(0,K.jsx)(`span`,{className:`sr-only`,children:`Toggle theme`})]})}),(0,K.jsxs)(yf,{align:`end`,children:[(0,K.jsx)(bf,{onClick:()=>e(`light`),children:`Light`}),(0,K.jsx)(bf,{onClick:()=>e(`dark`),children:`Dark`}),(0,K.jsx)(bf,{onClick:()=>e(`system`),children:`System`})]})]})}var Vf,Hf,Uf=o((()=>{Vf=e=>{let t,n=new Set,r=(e,r)=>{let i=typeof e==`function`?e(t):e;if(!Object.is(i,t)){let e=t;t=r??(typeof i!=`object`||!i)?i:Object.assign({},t,i),n.forEach(n=>n(t,e))}},i=()=>t,a={setState:r,getState:i,getInitialState:()=>o,subscribe:e=>(n.add(e),()=>n.delete(e))},o=t=e(r,i,a);return a},Hf=(e=>e?Vf(e):Vf)}));function Wf(e,t=Kf){let n=Gf.useSyncExternalStore(e.subscribe,Gf.useCallback(()=>t(e.getState()),[e,t]),Gf.useCallback(()=>t(e.getInitialState()),[e,t]));return Gf.useDebugValue(n),n}var Gf,Kf,qf,Jf,Yf=o((()=>{Gf=u(f(),1),Uf(),Kf=e=>e,qf=e=>{let t=Hf(e),n=e=>Wf(t,e);return Object.assign(n,t),n},Jf=(e=>e?qf(e):qf)})),Xf=o((()=>{Uf(),Yf()}));function Zf(e){if(!e)return;let t=e.split(` -`),n=t.findIndex(e=>e.includes(`api.setState`));if(n<0)return;let r=t[n+1]?.trim()||``;return ip.exec(r)?.[1]||ap.exec(r)?.[1]}function Qf(e,t){let n;try{n=e()}catch{return}return{getItem:e=>{let r=e=>e===null?null:JSON.parse(e,t?.reviver),i=n.getItem(e)??null;return i instanceof Promise?i.then(r):r(i)},setItem:(e,r)=>n.setItem(e,JSON.stringify(r,t?.replacer)),removeItem:e=>n.removeItem(e)}}var $f,ep,tp,np,rp,ip,ap,op,sp,cp,lp,up,dp,fp=o((()=>{$f=e=>!!e.dispatchFromDevtools&&typeof e.dispatch==`function`,ep=new Map,tp=e=>{let t=ep.get(e);return t?Object.fromEntries(Object.entries(t.stores).map(([e,t])=>[e,t.getState()])):{}},np=(e,t,n)=>{if(e===void 0)return{type:`untracked`,connection:t.connect(n)};let r=ep.get(n.name);if(r)return{type:`tracked`,store:e,...r};let i={connection:t.connect(n),stores:{}};return ep.set(n.name,i),{type:`tracked`,store:e,...i}},rp=(e,t)=>{if(t===void 0)return;let n=ep.get(e);n&&(delete n.stores[t],Object.keys(n.stores).length===0&&ep.delete(e))},ip=/^at (?:new |async )?(.+?) \(/,ap=/^([^@]+)@/,op=(e,t={})=>(n,r,i)=>{let{enabled:a,anonymousActionType:o,store:s,...c}=t,l;try{l=(a??!1)&&window.__REDUX_DEVTOOLS_EXTENSION__}catch{}if(!l)return e(n,r,i);let{connection:u,...d}=np(s,l,c),f=!0;i.setState=((e,t,a)=>{let l=n(e,t);if(!f)return l;let d=a===void 0?{type:o||Zf(Error().stack)||`anonymous`}:typeof a==`string`?{type:a}:a;return s===void 0?(u?.send(d,r()),l):(u?.send({...d,type:`${s}/${d.type}`},{...tp(c.name),[s]:i.getState()}),l)}),i.devtools={cleanup:()=>{u&&typeof u.unsubscribe==`function`&&u.unsubscribe(),rp(c.name,s)}};let p=(...e)=>{let t=f;f=!1,n(...e),f=t},m=e(i.setState,r,i);if(d.type===`untracked`?u?.init(m):(d.stores[d.store]=i,u?.init(Object.fromEntries(Object.entries(d.stores).map(([e,t])=>[e,e===d.store?m:t.getState()])))),$f(i)){let e=i.dispatch;i.dispatch=(...t)=>{e(...t)}}return u.subscribe(e=>{switch(e.type){case`ACTION`:if(typeof e.payload!=`string`){console.error(`[zustand devtools middleware] Unsupported action format`);return}return cp(e.payload,e=>{if(e.type===`__setState`){if(s===void 0){p(e.state);return}Object.keys(e.state).length!==1&&console.error(` +`},sc=0,cc=[];function lc(e){var t=y.useRef([]),n=y.useRef([0,0]),r=y.useRef(),i=y.useState(sc++)[0],a=y.useState(js)[0],o=y.useRef(e);y.useEffect(function(){o.current=e},[e]),y.useEffect(function(){if(e.inert){document.body.classList.add(`block-interactivity-${i}`);var t=ss([e.lockRef.current],(e.shards||[]).map(ic),!0).filter(Boolean);return t.forEach(function(e){return e.classList.add(`allow-interactivity-${i}`)}),function(){document.body.classList.remove(`block-interactivity-${i}`),t.forEach(function(e){return e.classList.remove(`allow-interactivity-${i}`)})}}},[e.inert,e.lockRef.current,e.shards]);var s=y.useCallback(function(e,t){if(`touches`in e&&e.touches.length===2||e.type===`wheel`&&e.ctrlKey)return!o.current.allowPinchZoom;var i=nc(e),a=n.current,s=`deltaX`in e?e.deltaX:a[0]-i[0],c=`deltaY`in e?e.deltaY:a[1]-i[1],l,u=e.target,d=Math.abs(s)>Math.abs(c)?`h`:`v`;if(`touches`in e&&d===`h`&&u.type===`range`)return!1;var f=window.getSelection(),p=f&&f.anchorNode;if(p&&(p===u||p.contains(u)))return!1;var m=Ys(d,u);if(!m)return!0;if(m?l=d:(l=d===`v`?`h`:`v`,m=Ys(d,u)),!m)return!1;if(!r.current&&`changedTouches`in e&&(s||c)&&(r.current=l),!l)return!0;var h=r.current||l;return tc(h,t,e,h===`h`?s:c,!0)},[]),c=y.useCallback(function(e){var n=e;if(cc.length&&cc[cc.length-1]===a){var r=`deltaY`in n?rc(n):nc(n),i=t.current.filter(function(e){return e.name===n.type&&(e.target===n.target||n.target===e.shadowParent)&&ac(e.delta,r)})[0];if(i&&i.should){n.cancelable&&n.preventDefault();return}if(!i){var c=(o.current.shards||[]).map(ic).filter(Boolean).filter(function(e){return e.contains(n.target)});(c.length>0?s(n,c[0]):!o.current.noIsolation)&&n.cancelable&&n.preventDefault()}}},[]),l=y.useCallback(function(e,n,r,i){var a={name:e,delta:n,target:r,should:i,shadowParent:uc(r)};t.current.push(a),setTimeout(function(){t.current=t.current.filter(function(e){return e!==a})},1)},[]),u=y.useCallback(function(e){n.current=nc(e),r.current=void 0},[]),d=y.useCallback(function(t){l(t.type,rc(t),t.target,s(t,e.lockRef.current))},[]),f=y.useCallback(function(t){l(t.type,nc(t),t.target,s(t,e.lockRef.current))},[]);y.useEffect(function(){return cc.push(a),e.setCallbacks({onScrollCapture:d,onWheelCapture:d,onTouchMoveCapture:f}),document.addEventListener(`wheel`,c,Ws),document.addEventListener(`touchmove`,c,Ws),document.addEventListener(`touchstart`,u,Ws),function(){cc=cc.filter(function(e){return e!==a}),document.removeEventListener(`wheel`,c,Ws),document.removeEventListener(`touchmove`,c,Ws),document.removeEventListener(`touchstart`,u,Ws)}},[]);var p=e.removeScrollBar,m=e.inert;return y.createElement(y.Fragment,null,m?y.createElement(a,{styles:oc(i)}):null,p?y.createElement(Vs,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function uc(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}var dc=xs(Ss,lc),fc=y.forwardRef(function(e,t){return y.createElement(ws,as({},e,{ref:t,sideCar:dc}))});fc.classNames=ws.classNames;var pc=Object.defineProperty,mc=(e,t)=>pc(e,`name`,{value:t,configurable:!0}),hc=[`Enter`,` `],gc=[`ArrowDown`,`PageUp`,`Home`],_c=[`ArrowUp`,`PageDown`,`End`],vc=[...gc,..._c];[...hc],[...hc];var yc=`Menu`,[bc,xc,Sc]=hn(yc),[Cc,wc]=Kt(yc,[Sc,Ja,Io]),Tc=Ja(),Ec=Io(),[Dc,Oc]=Cc(yc),[kc,Ac]=Cc(yc),jc=mc(e=>{let{__scopeMenu:t,open:n=!1,children:r,dir:i,onOpenChange:a,modal:o=!0}=e,s=Tc(t),[c,l]=y.useState(null),u=y.useRef(!1),d=Fn(a),f=jn(i);return y.useEffect(()=>{let e=mc(()=>{u.current=!0,document.addEventListener(`pointerdown`,t,{capture:!0,once:!0}),document.addEventListener(`pointermove`,t,{capture:!0,once:!0})},`handleKeyDown`),t=mc(()=>u.current=!1,`handlePointer`);return document.addEventListener(`keydown`,e,{capture:!0}),()=>{document.removeEventListener(`keydown`,e,{capture:!0}),document.removeEventListener(`pointerdown`,t,{capture:!0}),document.removeEventListener(`pointermove`,t,{capture:!0})}},[]),y.useEffect(()=>{if(!n)return;let e=mc(()=>d(!1),`handleBlur`);return window.addEventListener(`blur`,e),()=>window.removeEventListener(`blur`,e)},[n,d]),(0,K.jsx)(Za,{...s,children:(0,K.jsx)(Dc,{scope:t,open:n,onOpenChange:d,content:c,onContentChange:l,children:(0,K.jsx)(kc,{scope:t,onClose:y.useCallback(()=>d(!1),[d]),isUsingKeyboardRef:u,dir:f,modal:o,children:r})})})},`Menu`),Mc=y.forwardRef(mc(function(e,t){let{__scopeMenu:n,...r}=e,i=Tc(n);return(0,K.jsx)($a,{...i,...r,ref:t})},`MenuAnchor`)),Nc=`MenuPortal`,[Pc,Fc]=Cc(Nc,{forceMount:void 0}),Ic=mc(e=>{let{__scopeMenu:t,forceMount:n,children:r,container:i}=e,a=Oc(Nc,t);return(0,K.jsx)(Pc,{scope:t,forceMount:n,children:(0,K.jsx)(po,{present:n||a.open,children:(0,K.jsx)(co,{asChild:!0,container:i,children:r})})})},`MenuPortal`),Lc=`MenuContent`,[Rc,zc]=Cc(Lc),Bc=y.forwardRef(mc(function(e,t){let n=Fc(Lc,e.__scopeMenu),{forceMount:r=n.forceMount,...i}=e,a=Oc(Lc,e.__scopeMenu),o=Ac(Lc,e.__scopeMenu);return(0,K.jsx)(bc.Provider,{scope:e.__scopeMenu,children:(0,K.jsx)(po,{present:r||a.open,children:(0,K.jsx)(bc.Slot,{scope:e.__scopeMenu,children:o.modal?(0,K.jsx)(Vc,{...i,ref:t}):(0,K.jsx)(Hc,{...i,ref:t})})})})},`MenuContent`)),Vc=y.forwardRef(mc(function(e,t){let n=Oc(Lc,e.__scopeMenu),r=y.useRef(null),i=T(t,r);return y.useEffect(()=>{let e=r.current;if(e)return is(e)},[]),(0,K.jsx)(Wc,{...e,ref:i,trapFocus:n.open,disableOutsidePointerEvents:n.open,disableOutsideScroll:!0,onFocusOutside:J(e.onFocusOutside,e=>e.preventDefault(),{checkForDefaultPrevented:!1}),onDismiss:()=>n.onOpenChange(!1)})},`MenuRootContentModal`)),Hc=y.forwardRef(mc(function(e,t){let n=Oc(Lc,e.__scopeMenu);return(0,K.jsx)(Wc,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>n.onOpenChange(!1)})},`MenuRootContentNonModal`)),Uc=O(`MenuContent.ScrollLock`),Wc=y.forwardRef(mc(function(e,t){let{__scopeMenu:n,loop:r=!1,trapFocus:i,onOpenAutoFocus:a,onCloseAutoFocus:o,disableOutsidePointerEvents:s,onEntryFocus:c,onEscapeKeyDown:l,onPointerDownOutside:u,onFocusOutside:d,onInteractOutside:f,onDismiss:p,disableOutsideScroll:m,...h}=e,g=Oc(Lc,n),_=Ac(Lc,n),v=Tc(n),b=Ec(n),x=xc(n),[S,C]=y.useState(null),w=y.useRef(null),[E,D]=y.useState(null);fr(E);let{nodes:O,registry:k}=dr(),A=!!(i||m),j=T(t,w,g.onContentChange,D),M=y.useRef(0),N=y.useRef(``),P=y.useRef(0),F=y.useRef(null),I=y.useRef(`right`),L=y.useRef(0),R=y.useMemo(()=>m?[w,...O.map(e=>({current:e}))]:[],[w,O,m]),z=m?fc:y.Fragment,B=m?{as:Uc,allowPinchZoom:!0,shards:R}:void 0,ee=mc(e=>{let t=N.current+e,n=x().filter(e=>!e.disabled),r=document.activeElement,i=n.find(e=>e.ref.current===r)?.textValue,a=cl(n.map(e=>e.textValue),t,i),o=n.find(e=>e.textValue===a)?.ref.current;function s(e){N.current=e,window.clearTimeout(M.current),e!==``&&(M.current=window.setTimeout(()=>s(``),1e3))}mc(s,`updateSearch`),s(t),o&&setTimeout(()=>o.focus())},`handleTypeaheadSearch`);y.useEffect(()=>()=>window.clearTimeout(M.current),[]),tr();let V=y.useCallback(e=>I.current===F.current?.side&&ul(e,F.current?.area),[]);return(0,K.jsx)(Rc,{scope:n,searchRef:N,onItemEnter:y.useCallback(e=>{V(e)&&e.preventDefault()},[V]),onItemLeave:y.useCallback(e=>{V(e)||(w.current?.focus(),C(null))},[V]),onTriggerLeave:y.useCallback(e=>{V(e)&&e.preventDefault()},[V]),pointerGraceTimerRef:P,onPointerGraceIntentChange:y.useCallback(e=>{F.current=e},[]),children:(0,K.jsx)(ur,{registry:A?k:null,children:(0,K.jsx)(z,{...B,children:(0,K.jsx)(cr,{asChild:!0,trapped:i,branches:O,onMountAutoFocus:J(a,e=>{e.preventDefault(),w.current?.focus({preventScroll:!0})}),onUnmountAutoFocus:o,children:(0,K.jsx)(Un,{asChild:!0,disableOutsidePointerEvents:s,onEscapeKeyDown:l,onPointerDownOutside:u,onFocusOutside:d,onInteractOutside:f,onDismiss:p,children:(0,K.jsx)(Vo,{asChild:!0,...b,dir:_.dir,orientation:`vertical`,loop:r,currentTabStopId:S,onCurrentTabStopIdChange:C,onEntryFocus:J(c,e=>{_.isUsingKeyboardRef.current||e.preventDefault()}),preventScrollOnEntryFocus:!0,children:(0,K.jsx)(ro,{role:`menu`,"aria-orientation":`vertical`,"data-state":rl(g.open),"data-radix-menu-content":``,dir:_.dir,...v,...h,ref:j,style:{outline:`none`,...h.style},onKeyDown:J(h.onKeyDown,e=>{let t=e.target.closest(`[data-radix-menu-content]`)===e.currentTarget,n=e.ctrlKey||e.altKey||e.metaKey,r=e.key.length===1;t&&(e.key===`Tab`&&e.preventDefault(),!n&&r&&ee(e.key));let i=w.current;if(e.target!==i||!vc.includes(e.key))return;e.preventDefault();let a=x().filter(e=>!e.disabled).map(e=>e.ref.current);_c.includes(e.key)&&a.reverse(),ol(a)}),onBlur:J(e.onBlur,e=>{e.currentTarget.contains(e.target)||(window.clearTimeout(M.current),N.current=``)}),onPointerMove:J(e.onPointerMove,dl(e=>{let t=e.target,n=L.current!==e.clientX;if(e.currentTarget.contains(t)&&n){let t=e.clientX>L.current?`right`:`left`;I.current=t,L.current=e.clientX}}))})})})})})})})},`MenuContentImpl`)),Gc=y.forwardRef(mc(function(e,t){let{__scopeMenu:n,...r}=e;return(0,K.jsx)(Y.div,{...r,ref:t})},`MenuLabel`)),Kc=`MenuItem`,qc=`menu.itemSelect`,Jc=y.forwardRef(mc(function(e,t){let{disabled:n=!1,onSelect:r,...i}=e,a=y.useRef(null),o=Ac(Kc,e.__scopeMenu),s=zc(Kc,e.__scopeMenu),c=T(t,a),l=y.useRef(!1),u=mc(()=>{let e=a.current;if(!n&&e){let t=new CustomEvent(qc,{bubbles:!0,cancelable:!0});e.addEventListener(qc,e=>r?.(e),{once:!0}),fn(e,t),t.defaultPrevented?l.current=!1:o.onClose()}},`handleSelect`);return(0,K.jsx)(Yc,{...i,ref:c,disabled:n,onClick:J(e.onClick,u),onPointerDown:t=>{e.onPointerDown?.(t),l.current=!0},onPointerUp:J(e.onPointerUp,e=>{l.current||e.currentTarget?.click()}),onKeyDown:J(e.onKeyDown,e=>{n||e.target!==e.currentTarget||(s.searchRef.current===``||e.key!==` `)&&hc.includes(e.key)&&(e.currentTarget.click(),e.preventDefault())})})},`MenuItem`)),Yc=y.forwardRef(mc(function(e,t){let{__scopeMenu:n,disabled:r=!1,textValue:i,...a}=e,o=zc(Kc,n),s=Ec(n),c=y.useRef(null),l=T(t,c),[u,d]=y.useState(!1),[f,p]=y.useState(``);return y.useEffect(()=>{let e=c.current;e&&p((e.textContent??``).trim())},[a.children]),(0,K.jsx)(bc.ItemSlot,{scope:n,disabled:r,textValue:i??f,children:(0,K.jsx)(Wo,{asChild:!0,...s,focusable:!r,children:(0,K.jsx)(Y.div,{role:`menuitem`,"data-highlighted":u?``:void 0,"aria-disabled":r||void 0,"data-disabled":r?``:void 0,...a,ref:l,onPointerMove:J(e.onPointerMove,dl(e=>{r?o.onItemLeave(e):(o.onItemEnter(e),e.defaultPrevented||e.currentTarget.focus({preventScroll:!0}))})),onPointerLeave:J(e.onPointerLeave,dl(e=>o.onItemLeave(e))),onFocus:J(e.onFocus,()=>d(!0)),onBlur:J(e.onBlur,()=>d(!1))})})})},`MenuItemImpl`)),[Xc,Zc]=Cc(`MenuRadioGroup`,{value:void 0,onValueChange:mc(()=>{},`onValueChange`)}),[Qc,$c]=Cc(`MenuItemIndicator`,{checked:!1}),el=y.forwardRef(mc(function(e,t){let{__scopeMenu:n,...r}=e;return(0,K.jsx)(Y.div,{role:`separator`,"aria-orientation":`horizontal`,...r,ref:t})},`MenuSeparator`)),[tl,nl]=Cc(`MenuSub`);function rl(e){return e?`open`:`closed`}mc(rl,`getOpenState`);function il(e){return e===`indeterminate`}mc(il,`isIndeterminate`);function al(e){return il(e)?`indeterminate`:e?`checked`:`unchecked`}mc(al,`getCheckedState`);function ol(e){let t=document.activeElement;for(let n of e)if(n===t||(n.focus(),document.activeElement!==t))return}mc(ol,`focusFirst`);function sl(e,t){return e.map((n,r)=>e[(t+r)%e.length])}mc(sl,`wrapArray`);function cl(e,t,n){let r=t.length>1&&Array.from(t).every(e=>e===t[0])?t[0]:t,i=n?e.indexOf(n):-1,a=sl(e,Math.max(i,0));r.length===1&&(a=a.filter(e=>e!==n));let o=a.find(e=>e.toLowerCase().startsWith(r.toLowerCase()));return o===n?void 0:o}mc(cl,`getNextMatch`);function ll(e,t){let{x:n,y:r}=e,i=!1;for(let e=0,a=t.length-1;er!=d>r&&n<(u-c)*(r-l)/(d-l)+c&&(i=!i)}return i}mc(ll,`isPointInPolygon`);function ul(e,t){return t?ll({x:e.clientX,y:e.clientY},t):!1}mc(ul,`isPointerInGraceArea`);function dl(e){return t=>t.pointerType===`mouse`?e(t):void 0}mc(dl,`whenMouse`);var fl=Object.defineProperty,pl=(e,t)=>fl(e,`name`,{value:t,configurable:!0}),ml=`DropdownMenu`,[hl,gl]=Kt(ml,[wc]),_l=wc(),[vl,yl]=hl(ml),bl=pl(e=>{let{__scopeDropdownMenu:t,children:n,dir:r,open:i,defaultOpen:a,onOpenChange:o,modal:s=!0}=e,c=_l(t),l=y.useRef(null),[u,d]=rn({prop:i,defaultProp:a??!1,onChange:o,caller:ml});return(0,K.jsx)(vl,{scope:t,triggerId:Or(),triggerRef:l,contentId:Or(),open:u,onOpenChange:d,onOpenToggle:y.useCallback(()=>d(e=>!e),[d]),modal:s,children:(0,K.jsx)(jc,{...c,open:u,onOpenChange:d,dir:r,modal:s,children:n})})},`DropdownMenu`),xl=`DropdownMenuTrigger`,Sl=y.forwardRef(pl(function(e,t){let{__scopeDropdownMenu:n,disabled:r=!1,...i}=e,a=yl(xl,n),o=_l(n),s=T(t,a.triggerRef);return(0,K.jsx)(Mc,{asChild:!0,...o,children:(0,K.jsx)(Y.button,{type:`button`,id:a.triggerId,"aria-haspopup":`menu`,"aria-expanded":a.open,"aria-controls":a.open?a.contentId:void 0,"data-state":a.open?`open`:`closed`,"data-disabled":r?``:void 0,disabled:r,...i,ref:s,onPointerDown:J(e.onPointerDown,e=>{!r&&e.button===0&&e.ctrlKey===!1&&(a.onOpenToggle(),a.open||e.preventDefault())}),onKeyDown:J(e.onKeyDown,e=>{r||([`Enter`,` `].includes(e.key)&&a.onOpenToggle(),e.key===`ArrowDown`&&a.onOpenChange(!0),[`Enter`,` `,`ArrowDown`].includes(e.key)&&e.preventDefault())})})})},`DropdownMenuTrigger`)),Cl=pl(e=>{let{__scopeDropdownMenu:t,...n}=e,r=_l(t);return(0,K.jsx)(Ic,{...r,...n})},`DropdownMenuPortal`),wl=`DropdownMenuContent`,Tl=y.forwardRef(pl(function(e,t){let{__scopeDropdownMenu:n,...r}=e,i=yl(wl,n),a=_l(n),o=y.useRef(!1);return(0,K.jsx)(Bc,{id:i.contentId,"aria-labelledby":i.triggerId,...a,...r,ref:t,onCloseAutoFocus:J(e.onCloseAutoFocus,e=>{o.current||i.triggerRef.current?.focus(),o.current=!1,e.preventDefault()}),onInteractOutside:J(e.onInteractOutside,e=>{let t=e.detail.originalEvent,n=t.button===0&&t.ctrlKey===!0,r=t.button===2||n;(!i.modal||r)&&(o.current=!0)}),style:{...e.style,"--radix-dropdown-menu-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-dropdown-menu-content-available-width":`var(--radix-popper-available-width)`,"--radix-dropdown-menu-content-available-height":`var(--radix-popper-available-height)`,"--radix-dropdown-menu-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-dropdown-menu-trigger-height":`var(--radix-popper-anchor-height)`}})},`DropdownMenuContent`)),El=y.forwardRef(pl(function(e,t){let{__scopeDropdownMenu:n,...r}=e,i=_l(n);return(0,K.jsx)(Gc,{...i,...r,ref:t})},`DropdownMenuLabel`)),Dl=y.forwardRef(pl(function(e,t){let{__scopeDropdownMenu:n,...r}=e,i=_l(n);return(0,K.jsx)(Jc,{...i,...r,ref:t})},`DropdownMenuItem`)),Ol=y.forwardRef(pl(function(e,t){let{__scopeDropdownMenu:n,...r}=e,i=_l(n);return(0,K.jsx)(el,{...i,...r,ref:t})},`DropdownMenuSeparator`)),kl=e=>e?.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase();function Al(e,t,n=[]){if(t==null)throw Error(`[lucide]: iconNode is required when icon name is used`);return{name:kl(e),size:24,node:t,...n.length>0?{aliases:n}:{}}}var jl=e=>{let t=``,n=!1;for(let r of e){if(r===`-`||r===`_`||r<=` `){n=t.length>0;continue}t.length===0?t+=r.toLowerCase():t+=n?r.toUpperCase():r,n=!1}return t},Ml=e=>{let t=jl(e);return t.charAt(0).toUpperCase()+t.slice(1)},Nl=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),Pl={xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":2,"stroke-linecap":`round`,"stroke-linejoin":`round`};function Fl(e){return e!=null}function Il(e,t={}){let n=t.attributeNames??{},r=e=>n[e]??e,i=e.size??e.width??Pl.width,a=e.size??e.height??Pl.height,o=e.aliases?.filter(e=>typeof e==`string`&&e.trim()!==``).map(e=>`lucide-${e}`)??[],s=[...e.name?[`lucide-${e.name}`]:[],...o],c=t.className?.split(` `).filter(Boolean)??[],l=t.includeDefaultClasses===!1?Nl(...c):Nl(`lucide`,...s,...c),u=t.absoluteStrokeWidth?Number(t.strokeWidth??Pl[`stroke-width`])*Number(e.size??e.width??Pl.width)/Number(t.size??t.width??Pl.width):t.strokeWidth??Pl[`stroke-width`];return[`svg`,{...Object.entries(Pl).reduce((e,[t,n])=>(e[r(t)]=n,e),{}),...`color`in t&&t.color&&{[r(`stroke`)]:t.color},...`size`in t&&Fl(t.size)&&{[r(`width`)]:t.size,[r(`height`)]:t.size},...`width`in t&&Fl(t.width)&&{[r(`width`)]:t.width},...`height`in t&&Fl(t.height)&&{[r(`height`)]:t.height},[r(`stroke-width`)]:u,...l&&{[r(`class`)]:l},[r(`viewBox`)]:`0 0 ${i} ${a}`,...t.hasA11yProp===!1?{[r(`aria-hidden`)]:`true`}:{},...`attributes`in t&&t.attributes},e.node.map(e=>{let[n,i,a]=e,o=t.nonScalingStroke?{[r(`vector-effect`)]:`non-scaling-stroke`,...i}:i;return a?[n,o,a]:[n,o]})]}function Ll(e,t={}){return Il(e,{...t,attributeNames:{...t.attributeNames,class:`className`,"stroke-width":`strokeWidth`,"stroke-linecap":`strokeLinecap`,"stroke-linejoin":`strokeLinejoin`,"vector-effect":`vectorEffect`}})}var Rl=e=>{for(let t in e)if(t.startsWith(`aria-`)||t===`role`||t===`title`)return!0;return!1},zl=(0,y.createContext)({}),Bl=()=>(0,y.useContext)(zl),Vl=(0,y.forwardRef)(({color:e,size:t,width:n,height:r,strokeWidth:i,absoluteStrokeWidth:a,nonScalingStroke:o,className:s=``,children:c,iconNode:l=[],icon:u={node:l,aliases:[],size:24},...d},f)=>{let{size:p=24,strokeWidth:m=2,absoluteStrokeWidth:h=!1,nonScalingStroke:g=!1,color:_=`currentColor`,className:v=``}=Bl()??{},b=!!c||Rl(d),[x,S,C=[]]=Ll(u,{color:e??_,width:n??t??p,height:r??t??p,strokeWidth:i??m,absoluteStrokeWidth:a??h,nonScalingStroke:o??g,className:Nl(v,s),hasA11yProp:b,attributes:d});return(0,y.createElement)(x,{ref:f,...S},[...C.map(([e,t])=>(0,y.createElement)(e,t)),...Array.isArray(c)?c:[c]])});function Z(e,t=[],n=[]){let r=typeof e==`string`?Al(e,t,n):e,i=(0,y.forwardRef)(({className:e,...t},n)=>(0,y.createElement)(Vl,{ref:n,icon:r,className:e,...t}));return r.name&&(i.displayName=Ml(r.name)),i}var Hl={name:`activity`,size:24,node:[[`path`,{d:`M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2`,key:`169zse`}]]};Hl.node;var Ul=Z(Hl),Wl={name:`arrow-down`,size:24,node:[[`path`,{d:`M12 5v14`,key:`s699le`}],[`path`,{d:`m19 12-7 7-7-7`,key:`1idqje`}]]};Wl.node;var Gl=Z(Wl),Kl={name:`arrow-left-right`,size:24,node:[[`path`,{d:`M8 3 4 7l4 4`,key:`9rb6wj`}],[`path`,{d:`M4 7h16`,key:`6tx8e3`}],[`path`,{d:`m16 21 4-4-4-4`,key:`siv7j2`}],[`path`,{d:`M20 17H4`,key:`h6l3hr`}]]};Kl.node;var ql=Z(Kl),Jl={name:`arrow-left`,size:24,node:[[`path`,{d:`m12 19-7-7 7-7`,key:`1l729n`}],[`path`,{d:`M19 12H5`,key:`x3x0zl`}]]};Jl.node;var Yl=Z(Jl),Xl={name:`book-open`,size:24,node:[[`path`,{d:`M12 5v16`,key:`1f6ucr`}],[`path`,{d:`M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z`,key:`1fyvmf`}]]};Xl.node;var Zl=Z(Xl),Ql={name:`bot`,size:24,node:[[`path`,{d:`M12 8V4H8`,key:`hb8ula`}],[`rect`,{width:`16`,height:`12`,x:`4`,y:`8`,rx:`2`,key:`enze0r`}],[`path`,{d:`M2 14h2`,key:`vft8re`}],[`path`,{d:`M20 14h2`,key:`4cs60a`}],[`path`,{d:`M15 13v2`,key:`1xurst`}],[`path`,{d:`M9 13v2`,key:`rq6x2g`}]]};Ql.node;var $l=Z(Ql),eu={name:`chart-column`,size:24,node:[[`path`,{d:`M3 3v16a2 2 0 0 0 2 2h16`,key:`c24i48`}],[`path`,{d:`M18 17V9`,key:`2bz60n`}],[`path`,{d:`M13 17V5`,key:`1frdt8`}],[`path`,{d:`M8 17v-3`,key:`17ska0`}]],aliases:[`bar-chart-3`]};eu.node;var tu=Z(eu),nu={name:`check`,size:24,node:[[`path`,{d:`M20 6 9 17l-5-5`,key:`1gmf2c`}]]};nu.node;var ru=Z(nu),iu={name:`check-check`,size:24,node:[[`path`,{d:`M18 6 7 17l-5-5`,key:`116fxf`}],[`path`,{d:`m22 10-7.5 7.5L13 16`,key:`ke71qq`}]]};iu.node;var au=Z(iu),ou={name:`chevron-down`,size:24,node:[[`path`,{d:`m6 9 6 6 6-6`,key:`qrunsl`}]]};ou.node;var su=Z(ou),cu={name:`chevron-left`,size:24,node:[[`path`,{d:`m15 18-6-6 6-6`,key:`1wnfg3`}]]};cu.node;var lu=Z(cu),uu={name:`chevron-right`,size:24,node:[[`path`,{d:`m9 18 6-6-6-6`,key:`mthhwq`}]]};uu.node;var du=Z(uu),fu={name:`chevron-up`,size:24,node:[[`path`,{d:`m18 15-6-6-6 6`,key:`153udz`}]]};fu.node;var pu=Z(fu),mu={name:`circle-alert`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`line`,{x1:`12`,x2:`12`,y1:`8`,y2:`12`,key:`1pkeuh`}],[`line`,{x1:`12`,x2:`12.01`,y1:`16`,y2:`16`,key:`4dfq90`}]],aliases:[`alert-circle`]};mu.node;var hu=Z(mu),gu={name:`circle-check-big`,size:24,node:[[`path`,{d:`M21.801 10A10 10 0 1 1 17 3.335`,key:`yps3ct`}],[`path`,{d:`m9 11 3 3L22 4`,key:`1pflzl`}]],aliases:[`check-circle`]};gu.node;var _u=Z(gu),vu={name:`circle-check`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m16 9-5.5 5.5L8 12`,key:`xofnsj`}]],aliases:[`check-circle-2`]};vu.node;var yu=Z(vu),bu={name:`circle-play`,size:24,node:[[`path`,{d:`M9 9.003a1 1 0 0 1 1.517-.859l4.997 2.997a1 1 0 0 1 0 1.718l-4.997 2.997A1 1 0 0 1 9 14.996z`,key:`kmsa83`}],[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}]],aliases:[`play-circle`]};bu.node;var xu=Z(bu),Su={name:`circle-x`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m15 9-6 6`,key:`1uzhvr`}],[`path`,{d:`m9 9 6 6`,key:`z0biqf`}]],aliases:[`x-circle`]};Su.node;var Cu=Z(Su),wu={name:`clock`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 6v6l4 2`,key:`mmk7yg`}]]};wu.node;var Tu=Z(wu),Eu={name:`cloud`,size:24,node:[[`path`,{d:`M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z`,key:`p7xjir`}]]};Eu.node;var Du=Z(Eu),Ou={name:`code`,size:24,node:[[`path`,{d:`m16 18 6-6-6-6`,key:`eg8j8`}],[`path`,{d:`m8 6-6 6 6 6`,key:`ppft3o`}]]};Ou.node;var ku=Z(Ou),Au={name:`container`,size:24,node:[[`path`,{d:`M22 7.7c0-.6-.4-1.2-.8-1.5l-6.3-3.9a1.72 1.72 0 0 0-1.7 0l-10.3 6c-.5.2-.9.8-.9 1.4v6.6c0 .5.4 1.2.8 1.5l6.3 3.9a1.72 1.72 0 0 0 1.7 0l10.3-6c.5-.3.9-1 .9-1.5Z`,key:`1t2lqe`}],[`path`,{d:`M10 21.9V14L2.1 9.1`,key:`o7czzq`}],[`path`,{d:`m10 14 11.9-6.9`,key:`zm5e20`}],[`path`,{d:`M14 19.8v-8.1`,key:`159ecu`}],[`path`,{d:`M18 17.5V9.4`,key:`11uown`}]]};Au.node;var ju=Z(Au),Mu={name:`copy`,size:24,node:[[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]};Mu.node;var Nu=Z(Mu),Pu={name:`database`,size:24,node:[[`ellipse`,{cx:`12`,cy:`5`,rx:`9`,ry:`3`,key:`msslwz`}],[`path`,{d:`M3 5V19A9 3 0 0 0 21 19V5`,key:`1wlel7`}],[`path`,{d:`M3 12A9 3 0 0 0 21 12`,key:`mv7ke4`}]]};Pu.node;var Fu=Z(Pu),Iu={name:`download`,size:24,node:[[`path`,{d:`M12 15V3`,key:`m9g1x1`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}],[`path`,{d:`m7 10 5 5 5-5`,key:`brsn70`}]]};Iu.node;var Lu=Z(Iu),Ru={name:`ellipsis-vertical`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`1`,key:`41hilf`}],[`circle`,{cx:`12`,cy:`5`,r:`1`,key:`gxeob9`}],[`circle`,{cx:`12`,cy:`19`,r:`1`,key:`lyex9k`}]],aliases:[`more-vertical`]};Ru.node;var zu=Z(Ru),Bu={name:`external-link`,size:24,node:[[`path`,{d:`M15 3h6v6`,key:`1q9fwt`}],[`path`,{d:`M10 14 21 3`,key:`gplh6r`}],[`path`,{d:`M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6`,key:`a6xqqp`}]]};Bu.node;var Vu=Z(Bu),Hu={name:`file-text`,size:24,node:[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M10 9H8`,key:`b1mrlr`}],[`path`,{d:`M16 13H8`,key:`t4e002`}],[`path`,{d:`M16 17H8`,key:`z1uh3a`}]]};Hu.node;var Uu=Z(Hu),Wu={name:`folder-open`,size:24,node:[[`path`,{d:`m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2`,key:`usdka0`}]]};Wu.node;var Gu=Z(Wu),Ku={name:`globe`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20`,key:`13o1zl`}],[`path`,{d:`M2 12h20`,key:`9i4pu4`}]]};Ku.node;var qu=Z(Ku),Ju={name:`grid-3x3`,size:24,node:[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M3 9h18`,key:`1pudct`}],[`path`,{d:`M3 15h18`,key:`5xshup`}],[`path`,{d:`M9 3v18`,key:`fh3hqa`}],[`path`,{d:`M15 3v18`,key:`14nvp0`}]],aliases:[`grid`,`grid-3-x-3`]};Ju.node;var Yu=Z(Ju),Xu={name:`house`,size:24,node:[[`path`,{d:`M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8`,key:`5wwlr5`}],[`path`,{d:`M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z`,key:`r6nss1`}]],aliases:[`home`]};Xu.node;var Zu=Z(Xu),Qu={name:`image`,size:24,node:[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,ry:`2`,key:`1m3agn`}],[`circle`,{cx:`9`,cy:`9`,r:`2`,key:`af1f0g`}],[`path`,{d:`m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21`,key:`1xmnt7`}]]};Qu.node;var $u=Z(Qu),ed={name:`info`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 16v-4`,key:`1dtifu`}],[`path`,{d:`M12 8h.01`,key:`e9boi3`}]]};ed.node;var td=Z(ed),nd={name:`key`,size:24,node:[[`path`,{d:`m2 21 9.6-9.6`,key:`9l79m3`}],[`path`,{d:`m7.5 15.5 2.3 2.3a1 1 0 0 1 0 1.4l-2.1 2.1a1 1 0 0 1-1.4 0L4 19`,key:`fw8biw`}],[`circle`,{cx:`15.5`,cy:`7.5`,r:`5.5`,key:`4wxmhb`}]]};nd.node;var rd=Z(nd),id={name:`layers`,size:24,node:[[`path`,{d:`M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z`,key:`zw3jo`}],[`path`,{d:`M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12`,key:`1wduqc`}],[`path`,{d:`M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17`,key:`kqbvx6`}]],aliases:[`layers-3`]};id.node;var ad=Z(id),od={name:`lightbulb`,size:24,node:[[`path`,{d:`M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5`,key:`1gvzjb`}],[`path`,{d:`M9 18h6`,key:`x1upvd`}],[`path`,{d:`M10 22h4`,key:`ceow96`}]]};od.node;var sd=Z(od),cd={name:`loader-circle`,size:24,node:[[`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`,key:`13zald`}]],aliases:[`loader-2`]};cd.node;var ld=Z(cd),ud={name:`lock`,size:24,node:[[`rect`,{width:`18`,height:`11`,x:`3`,y:`11`,rx:`2`,ry:`2`,key:`1w4ew1`}],[`path`,{d:`M7 11V7a5 5 0 0 1 10 0v4`,key:`fwvmzm`}]]};ud.node;var dd=Z(ud),fd={name:`map`,size:24,node:[[`path`,{d:`M14.106 5.553a2 2 0 0 0 1.788 0l3.659-1.83A1 1 0 0 1 21 4.619v12.764a1 1 0 0 1-.553.894l-4.553 2.277a2 2 0 0 1-1.788 0l-4.212-2.106a2 2 0 0 0-1.788 0l-3.659 1.83A1 1 0 0 1 3 19.381V6.618a1 1 0 0 1 .553-.894l4.553-2.277a2 2 0 0 1 1.788 0z`,key:`169xi5`}],[`path`,{d:`M15 5.764v15`,key:`1pn4in`}],[`path`,{d:`M9 3.236v15`,key:`1uimfh`}]]};fd.node;var pd=Z(fd),md={name:`maximize`,size:24,node:[[`path`,{d:`M8 3H5a2 2 0 0 0-2 2v3`,key:`1dcmit`}],[`path`,{d:`M21 8V5a2 2 0 0 0-2-2h-3`,key:`1e4gt3`}],[`path`,{d:`M3 16v3a2 2 0 0 0 2 2h3`,key:`wsl5sc`}],[`path`,{d:`M16 21h3a2 2 0 0 0 2-2v-3`,key:`18trek`}]]};md.node;var hd=Z(md),gd={name:`message-square`,size:24,node:[[`path`,{d:`M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z`,key:`18887p`}]]};gd.node;var _d=Z(gd),vd={name:`mic`,size:24,node:[[`path`,{d:`M12 19v3`,key:`npa21l`}],[`path`,{d:`M19 10v2a7 7 0 0 1-14 0v-2`,key:`1vc78b`}],[`rect`,{x:`9`,y:`2`,width:`6`,height:`13`,rx:`3`,key:`s6n7sd`}]]};vd.node;var yd=Z(vd),bd={name:`moon`,size:24,node:[[`path`,{d:`M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401`,key:`kfwtm`}]]};bd.node;var xd=Z(bd),Sd={name:`music`,size:24,node:[[`path`,{d:`M9 18V5l12-2v13`,key:`1jmyc2`}],[`circle`,{cx:`6`,cy:`18`,r:`3`,key:`fqmcym`}],[`circle`,{cx:`18`,cy:`16`,r:`3`,key:`1hluhg`}]]};Sd.node;var Cd=Z(Sd),wd={name:`package`,size:24,node:[[`path`,{d:`M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z`,key:`1a0edw`}],[`path`,{d:`M12 22V12`,key:`d0xqtd`}],[`polyline`,{points:`3.29 7 12 12 20.71 7`,key:`ousv84`}],[`path`,{d:`m7.5 4.27 9 5.15`,key:`1c824w`}]]};wd.node;var Td=Z(wd),Ed={name:`panel-right-open`,size:24,node:[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M15 3v18`,key:`14nvp0`}],[`path`,{d:`m10 15-3-3 3-3`,key:`1pgupc`}]]};Ed.node;var Dd=Z(Ed),Od={name:`paperclip`,size:24,node:[[`path`,{d:`m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551`,key:`1miecu`}]]};Od.node;var kd=Z(Od),Ad={name:`pause`,size:24,node:[[`rect`,{x:`14`,y:`3`,width:`5`,height:`18`,rx:`1`,key:`kaeet6`}],[`rect`,{x:`5`,y:`3`,width:`5`,height:`18`,rx:`1`,key:`1wsw3u`}]]};Ad.node;var jd=Z(Ad),Md={name:`play`,size:24,node:[[`path`,{d:`M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z`,key:`10ikf1`}]]};Md.node;var Nd=Z(Md),Pd={name:`plus`,size:24,node:[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`M12 5v14`,key:`s699le`}]]};Pd.node;var Fd=Z(Pd),Id={name:`refresh-cw`,size:24,node:[[`path`,{d:`M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8`,key:`v9h5vc`}],[`path`,{d:`M21 3v5h-5`,key:`1q7to0`}],[`path`,{d:`M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16`,key:`3uifl3`}],[`path`,{d:`M8 16H3v5`,key:`1cv678`}]]};Id.node;var Ld=Z(Id),Rd={name:`rocket`,size:24,node:[[`path`,{d:`M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5`,key:`qeys4`}],[`path`,{d:`M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09`,key:`u4xsad`}],[`path`,{d:`M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z`,key:`676m9`}],[`path`,{d:`M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05`,key:`92ym6u`}]]};Rd.node;var zd=Z(Rd),Bd={name:`rotate-ccw`,size:24,node:[[`path`,{d:`M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8`,key:`1357e3`}],[`path`,{d:`M3 3v5h5`,key:`1xhq8a`}]]};Bd.node;var Vd=Z(Bd),Hd={name:`search`,size:24,node:[[`path`,{d:`m21 21-4.34-4.34`,key:`14j7rj`}],[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}]]};Hd.node;var Ud=Z(Hd),Wd={name:`send-horizontal`,size:24,node:[[`path`,{d:`M3.714 3.048a.498.498 0 0 0-.683.627l2.843 7.627a2 2 0 0 1 0 1.396l-2.842 7.627a.498.498 0 0 0 .682.627l18-8.5a.5.5 0 0 0 0-.904z`,key:`117uat`}],[`path`,{d:`M6 12h16`,key:`s4cdu5`}]],aliases:[`send-horizonal`]};Wd.node;var Gd=Z(Wd),Kd={name:`send`,size:24,node:[[`path`,{d:`M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z`,key:`1ffxy3`}],[`path`,{d:`m21.854 2.147-10.94 10.939`,key:`12cjpa`}]]};Kd.node;var qd=Z(Kd),Jd={name:`server-off`,size:24,node:[[`path`,{d:`M7 2h13a2 2 0 0 1 2 2v4a2 2 0 0 1-2 2h-5`,key:`bt2siv`}],[`path`,{d:`M10 10 2.5 2.5C2 2 2 2.5 2 5v3a2 2 0 0 0 2 2h6z`,key:`1hjrv1`}],[`path`,{d:`M22 17v-1a2 2 0 0 0-2-2h-1`,key:`1iynyr`}],[`path`,{d:`M4 14a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h16.5l1-.5.5.5-8-8H4z`,key:`161ggg`}],[`path`,{d:`M6 18h.01`,key:`uhywen`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}]]};Jd.node;var Yd=Z(Jd),Xd={name:`settings`,size:24,node:[[`path`,{d:`M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915`,key:`1i5ecw`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]};Xd.node;var Zd=Z(Xd),Qd={name:`shuffle`,size:24,node:[[`path`,{d:`m18 14 4 4-4 4`,key:`10pe0f`}],[`path`,{d:`m18 2 4 4-4 4`,key:`pucp1d`}],[`path`,{d:`M2 18h1.973a4 4 0 0 0 3.3-1.7l5.454-8.6a4 4 0 0 1 3.3-1.7H22`,key:`1ailkh`}],[`path`,{d:`M2 6h1.972a4 4 0 0 1 3.6 2.2`,key:`km57vx`}],[`path`,{d:`M22 18h-6.041a4 4 0 0 1-3.3-1.8l-.359-.45`,key:`os18l9`}]]};Qd.node;var $d=Z(Qd),ef={name:`square`,size:24,node:[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}]]};ef.node;var tf=Z(ef),nf={name:`sun`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`4`,key:`4exip2`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`m4.93 4.93 1.41 1.41`,key:`149t6j`}],[`path`,{d:`m17.66 17.66 1.41 1.41`,key:`ptbguv`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`M20 12h2`,key:`1q8mjw`}],[`path`,{d:`m6.34 17.66-1.41 1.41`,key:`1m8zz5`}],[`path`,{d:`m19.07 4.93-1.41 1.41`,key:`1shlcs`}]]};nf.node;var rf=Z(nf),af={name:`trash`,size:24,node:[[`path`,{d:`M10 11v6`,key:`nco0om`}],[`path`,{d:`M14 11v6`,key:`outv1u`}],[`path`,{d:`M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6`,key:`miytrc`}],[`path`,{d:`M3 6h18`,key:`d0wm0j`}],[`path`,{d:`M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2`,key:`e791ji`}]],aliases:[`trash-2`]};af.node;var of=Z(af),sf={name:`triangle-alert`,size:24,node:[[`path`,{d:`m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3`,key:`wmoenq`}],[`path`,{d:`M12 9v4`,key:`juzpu7`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]],aliases:[`alert-triangle`]};sf.node;var cf=Z(sf),lf={name:`upload`,size:24,node:[[`path`,{d:`M12 3v12`,key:`1x0j5s`}],[`path`,{d:`m17 8-5-5-5 5`,key:`7q97r8`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}]]};lf.node;var uf=Z(lf),df={name:`user`,size:24,node:[[`path`,{d:`M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2`,key:`975kel`}],[`circle`,{cx:`12`,cy:`7`,r:`4`,key:`17ys0d`}]]};df.node;var ff=Z(df),pf={name:`workflow`,size:24,node:[[`rect`,{width:`8`,height:`8`,x:`3`,y:`3`,rx:`2`,key:`by2w9f`}],[`path`,{d:`M7 11v4a2 2 0 0 0 2 2h4`,key:`xkn7yn`}],[`rect`,{width:`8`,height:`8`,x:`13`,y:`13`,rx:`2`,key:`1cgmvn`}]]};pf.node;var mf=Z(pf),hf={name:`wrench`,size:24,node:[[`path`,{d:`M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z`,key:`1ngwbx`}]]};hf.node;var gf=Z(hf),_f={name:`x`,size:24,node:[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]};_f.node;var vf=Z(_f),yf={name:`zap`,size:24,node:[[`path`,{d:`M15.914 4a1.5 1.5 0 00-2.474-1.561l-9 9A1.5 1.5 0 005.5 14h4.002a.5.5 0 01.471.666L8.086 20a1.5 1.5 0 002.475 1.56l9-9A1.5 1.5 0 0018.5 10h-3.997a.5.5 0 01-.472-.667z`,key:`1v7up4`}]]};yf.node;var bf=Z(yf);function xf({...e}){return(0,K.jsx)(bl,{"data-slot":`dropdown-menu`,...e})}function Sf({...e}){return(0,K.jsx)(Sl,{"data-slot":`dropdown-menu-trigger`,...e})}function Cf({className:e,sideOffset:t=4,...n}){return(0,K.jsx)(Cl,{children:(0,K.jsx)(Tl,{"data-slot":`dropdown-menu-content`,sideOffset:t,className:jt(`bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md`,e),...n})})}function wf({className:e,inset:t,variant:n=`default`,...r}){return(0,K.jsx)(Dl,{"data-slot":`dropdown-menu-item`,"data-inset":t,"data-variant":n,className:jt(`focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,e),...r})}function Tf({className:e,inset:t,...n}){return(0,K.jsx)(El,{"data-slot":`dropdown-menu-label`,"data-inset":t,className:jt(`px-2 py-1.5 text-sm font-medium data-[inset]:pl-8`,e),...n})}function Ef({className:e,...t}){return(0,K.jsx)(Ol,{"data-slot":`dropdown-menu-separator`,className:jt(`bg-border -mx-1 my-1 h-px`,e),...t})}function Df({size:e=`md`,className:t}){return(0,K.jsx)(ld,{className:jt(`animate-spin`,{"h-4 w-4":e===`sm`,"h-6 w-6":e===`md`,"h-8 w-8":e===`lg`},t)})}var Of=e=>e===`workflow`?mf:$l;function kf({agents:e,workflows:t,entities:n,selectedItem:r,onSelect:i,onBrowseGallery:a,isLoading:o=!1}){let[s,c]=(0,y.useState)(!1),l=n||[...e,...t],u=e=>{i(e),c(!1)},d=r?Of(r.type):$l,f=r?.name||r?.id||`Select Agent or Workflow`,p=r?.metadata?.lazy_loaded!==!1;return(0,K.jsxs)(xf,{open:s,onOpenChange:c,children:[(0,K.jsx)(Sf,{asChild:!0,children:(0,K.jsx)(q,{variant:`outline`,className:`w-64 justify-between font-mono text-sm`,disabled:o,children:o?(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(Df,{size:`sm`}),(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Loading...`})]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0`,children:[(0,K.jsx)(d,{className:`h-4 w-4 flex-shrink-0`}),(0,K.jsx)(`span`,{className:`truncate`,children:f}),r&&!p&&(0,K.jsx)(ld,{className:`h-3 w-3 text-muted-foreground animate-spin ml-auto flex-shrink-0`})]}),(0,K.jsx)(su,{className:`h-4 w-4 opacity-50`})]})})}),(0,K.jsxs)(Cf,{className:`w-80 font-mono`,children:[(()=>{let e=l.filter(e=>e.type===`workflow`),t=l.filter(e=>e.type===`agent`),n=l[0]?.type;return(0,K.jsxs)(K.Fragment,{children:[n===`workflow`&&e.length>0&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(Tf,{className:`flex items-center gap-2`,children:[(0,K.jsx)(mf,{className:`h-4 w-4`}),`Workflows (`,e.length,`)`]}),e.map(e=>{let t=e.metadata?.lazy_loaded!==!1;return(0,K.jsx)(wf,{className:`cursor-pointer group`,onClick:()=>u(e),children:(0,K.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0 flex-1`,children:[(0,K.jsx)(mf,{className:`h-4 w-4 flex-shrink-0`}),(0,K.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,K.jsx)(`span`,{className:`truncate font-medium block`,children:e.name||e.id}),t&&e.description&&(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground line-clamp-2`,children:e.description})]})]})},e.id)})]}),e.length>0&&t.length>0&&(0,K.jsx)(Ef,{}),t.length>0&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(Tf,{className:`flex items-center gap-2`,children:[(0,K.jsx)($l,{className:`h-4 w-4`}),`Agents (`,t.length,`)`]}),t.map(e=>{let t=e.metadata?.lazy_loaded!==!1;return(0,K.jsx)(wf,{className:`cursor-pointer group`,onClick:()=>u(e),children:(0,K.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0 flex-1`,children:[(0,K.jsx)($l,{className:`h-4 w-4 flex-shrink-0`}),(0,K.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,K.jsx)(`span`,{className:`truncate font-medium block`,children:e.name||e.id}),t&&e.description&&(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground line-clamp-2`,children:e.description})]})]})},e.id)})]}),n===`agent`&&e.length>0&&(0,K.jsxs)(K.Fragment,{children:[t.length>0&&(0,K.jsx)(Ef,{}),(0,K.jsxs)(Tf,{className:`flex items-center gap-2`,children:[(0,K.jsx)(mf,{className:`h-4 w-4`}),`Workflows (`,e.length,`)`]}),e.map(e=>{let t=e.metadata?.lazy_loaded!==!1;return(0,K.jsx)(wf,{className:`cursor-pointer group`,onClick:()=>u(e),children:(0,K.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0 flex-1`,children:[(0,K.jsx)(mf,{className:`h-4 w-4 flex-shrink-0`}),(0,K.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,K.jsx)(`span`,{className:`truncate font-medium block`,children:e.name||e.id}),t&&e.description&&(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground line-clamp-2`,children:e.description})]})]})},e.id)})]})]})})(),l.length===0&&(0,K.jsx)(wf,{disabled:!0,children:(0,K.jsx)(`div`,{className:`text-center text-muted-foreground py-2`,children:o?`Loading agents and workflows...`:`No agents or workflows found`})}),(0,K.jsx)(Ef,{}),(0,K.jsxs)(wf,{className:`cursor-pointer text-primary`,onClick:()=>{a?.(),c(!1)},children:[(0,K.jsx)(Fd,{className:`h-4 w-4 mr-2`}),`Browse Gallery`]})]})]})}var Af=(e,t,n,r,i,a,o,s)=>{let c=document.documentElement,l=[`light`,`dark`];function u(t){(Array.isArray(e)?e:[e]).forEach(e=>{let n=e===`class`,r=n&&a?i.map(e=>a[e]||e):i;n?(c.classList.remove(...r),c.classList.add(a&&a[t]?a[t]:t)):c.setAttribute(e,t)}),d(t)}function d(e){s&&l.includes(e)&&(c.style.colorScheme=e)}function f(){return window.matchMedia(`(prefers-color-scheme: dark)`).matches?`dark`:`light`}if(r)u(r);else try{let e=localStorage.getItem(t)||n;u(o&&e===`system`?f():e)}catch{}},jf=[`light`,`dark`],Mf=`(prefers-color-scheme: dark)`,Nf=typeof window>`u`,Pf=y.createContext(void 0),Ff={setTheme:e=>{},themes:[]},If=()=>y.useContext(Pf)??Ff,Lf=e=>y.useContext(Pf)?y.createElement(y.Fragment,null,e.children):y.createElement(zf,{...e}),Rf=[`light`,`dark`],zf=({forcedTheme:e,disableTransitionOnChange:t=!1,enableSystem:n=!0,enableColorScheme:r=!0,storageKey:i=`theme`,themes:a=Rf,defaultTheme:o=n?`system`:`light`,attribute:s=`data-theme`,value:c,children:l,nonce:u,scriptProps:d})=>{let[f,p]=y.useState(()=>Vf(i,o)),[m,h]=y.useState(()=>f===`system`?Uf():f),g=c?Object.values(c):a,_=y.useCallback(e=>{let i=e;if(!i)return;e===`system`&&n&&(i=Uf());let a=c?c[i]:i,l=t?Hf(u):null,d=document.documentElement,f=e=>{e===`class`?(d.classList.remove(...g),a&&d.classList.add(a)):e.startsWith(`data-`)&&(a?d.setAttribute(e,a):d.removeAttribute(e))};if(Array.isArray(s)?s.forEach(f):f(s),r){let e=jf.includes(o)?o:null,t=jf.includes(i)?i:e;d.style.colorScheme=t}l?.()},[u]),v=y.useCallback(e=>{let t=typeof e==`function`?e(f):e;p(t);try{localStorage.setItem(i,t)}catch{}},[f]),b=y.useCallback(t=>{let r=Uf(t);h(r),f===`system`&&n&&!e&&_(`system`)},[f,e]);y.useEffect(()=>{let e=window.matchMedia(Mf);return e.addListener(b),b(e),()=>e.removeListener(b)},[b]),y.useEffect(()=>{let e=e=>{e.key===i&&(e.newValue?p(e.newValue):v(o))};return window.addEventListener(`storage`,e),()=>window.removeEventListener(`storage`,e)},[v]),y.useEffect(()=>{_(e??f)},[e,f]);let x=y.useMemo(()=>({theme:f,setTheme:v,forcedTheme:e,resolvedTheme:f===`system`?m:f,themes:n?[...a,`system`]:a,systemTheme:n?m:void 0}),[f,v,e,m,n,a]);return y.createElement(Pf.Provider,{value:x},y.createElement(Bf,{forcedTheme:e,storageKey:i,attribute:s,enableSystem:n,enableColorScheme:r,defaultTheme:o,value:c,themes:a,nonce:u,scriptProps:d}),l)},Bf=y.memo(({forcedTheme:e,storageKey:t,attribute:n,enableSystem:r,enableColorScheme:i,defaultTheme:a,value:o,themes:s,nonce:c,scriptProps:l})=>{let u=JSON.stringify([n,t,a,e,s,o,r,i]).slice(1,-1);return y.createElement(`script`,{...l,suppressHydrationWarning:!0,nonce:typeof window>`u`?c:``,dangerouslySetInnerHTML:{__html:`(${Af.toString()})(${u})`}})}),Vf=(e,t)=>{if(Nf)return;let n;try{n=localStorage.getItem(e)||void 0}catch{}return n||t},Hf=e=>{let t=document.createElement(`style`);return e&&t.setAttribute(`nonce`,e),t.appendChild(document.createTextNode(`*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}`)),document.head.appendChild(t),()=>{window.getComputedStyle(document.body),setTimeout(()=>{document.head.removeChild(t)},1)}},Uf=e=>(e||=window.matchMedia(Mf),e.matches?`dark`:`light`);function Wf(){let{setTheme:e}=If();return(0,K.jsxs)(xf,{children:[(0,K.jsx)(Sf,{asChild:!0,children:(0,K.jsxs)(q,{variant:`ghost`,size:`sm`,children:[(0,K.jsx)(rf,{className:`h-[1.2rem] w-[1.2rem] rotate-0 scale-100 transition-all dark:-rotate-90 dark:scale-0`}),(0,K.jsx)(xd,{className:`absolute h-[1.2rem] w-[1.2rem] rotate-90 scale-0 transition-all dark:rotate-0 dark:scale-100`}),(0,K.jsx)(`span`,{className:`sr-only`,children:`Toggle theme`})]})}),(0,K.jsxs)(Cf,{align:`end`,children:[(0,K.jsx)(wf,{onClick:()=>e(`light`),children:`Light`}),(0,K.jsx)(wf,{onClick:()=>e(`dark`),children:`Dark`}),(0,K.jsx)(wf,{onClick:()=>e(`system`),children:`System`})]})]})}var Gf,Kf,qf=o((()=>{Gf=e=>{let t,n=new Set,r=(e,r)=>{let i=typeof e==`function`?e(t):e;if(!Object.is(i,t)){let e=t;t=r??(typeof i!=`object`||!i)?i:Object.assign({},t,i),n.forEach(n=>n(t,e))}},i=()=>t,a={setState:r,getState:i,getInitialState:()=>o,subscribe:e=>(n.add(e),()=>n.delete(e))},o=t=e(r,i,a);return a},Kf=(e=>e?Gf(e):Gf)}));function Jf(e,t=Xf){let n=Yf.useSyncExternalStore(e.subscribe,Yf.useCallback(()=>t(e.getState()),[e,t]),Yf.useCallback(()=>t(e.getInitialState()),[e,t]));return Yf.useDebugValue(n),n}var Yf,Xf,Zf,Qf,$f=o((()=>{Yf=u(f(),1),qf(),Xf=e=>e,Zf=e=>{let t=Kf(e),n=e=>Jf(t,e);return Object.assign(n,t),n},Qf=(e=>e?Zf(e):Zf)})),ep=o((()=>{qf(),$f()}));function tp(e){if(!e)return;let t=e.split(` +`),n=t.findIndex(e=>e.includes(`api.setState`));if(n<0)return;let r=t[n+1]?.trim()||``;return cp.exec(r)?.[1]||lp.exec(r)?.[1]}function np(e,t){let n;try{n=e()}catch{return}return{getItem:e=>{let r=e=>e===null?null:JSON.parse(e,t?.reviver),i=n.getItem(e)??null;return i instanceof Promise?i.then(r):r(i)},setItem:(e,r)=>n.setItem(e,JSON.stringify(r,t?.replacer)),removeItem:e=>n.removeItem(e)}}var rp,ip,ap,op,sp,cp,lp,up,dp,fp,pp,mp,hp,gp=o((()=>{rp=e=>!!e.dispatchFromDevtools&&typeof e.dispatch==`function`,ip=new Map,ap=e=>{let t=ip.get(e);return t?Object.fromEntries(Object.entries(t.stores).map(([e,t])=>[e,t.getState()])):{}},op=(e,t,n)=>{if(e===void 0)return{type:`untracked`,connection:t.connect(n)};let r=ip.get(n.name);if(r)return{type:`tracked`,store:e,...r};let i={connection:t.connect(n),stores:{}};return ip.set(n.name,i),{type:`tracked`,store:e,...i}},sp=(e,t)=>{if(t===void 0)return;let n=ip.get(e);n&&(delete n.stores[t],Object.keys(n.stores).length===0&&ip.delete(e))},cp=/^at (?:new |async )?(.+?) \(/,lp=/^([^@]+)@/,up=(e,t={})=>(n,r,i)=>{let{enabled:a,anonymousActionType:o,store:s,...c}=t,l;try{l=(a??!1)&&window.__REDUX_DEVTOOLS_EXTENSION__}catch{}if(!l)return e(n,r,i);let{connection:u,...d}=op(s,l,c),f=!0;i.setState=((e,t,a)=>{let l=n(e,t);if(!f)return l;let d=a===void 0?{type:o||tp(Error().stack)||`anonymous`}:typeof a==`string`?{type:a}:a;return s===void 0?(u?.send(d,r()),l):(u?.send({...d,type:`${s}/${d.type}`},{...ap(c.name),[s]:i.getState()}),l)}),i.devtools={cleanup:()=>{u&&typeof u.unsubscribe==`function`&&u.unsubscribe(),sp(c.name,s)}};let p=(...e)=>{let t=f;f=!1,n(...e),f=t},m=e(i.setState,r,i);if(d.type===`untracked`?u?.init(m):(d.stores[d.store]=i,u?.init(Object.fromEntries(Object.entries(d.stores).map(([e,t])=>[e,e===d.store?m:t.getState()])))),rp(i)){let e=i.dispatch;i.dispatch=(...t)=>{e(...t)}}return u.subscribe(e=>{switch(e.type){case`ACTION`:if(typeof e.payload!=`string`){console.error(`[zustand devtools middleware] Unsupported action format`);return}return fp(e.payload,e=>{if(e.type===`__setState`){if(s===void 0){p(e.state);return}Object.keys(e.state).length!==1&&console.error(` [zustand devtools middleware] Unsupported __setState action format. When using 'store' option in devtools(), the 'state' should have only one key, which is a value of 'store' that was passed in devtools(), and value of this only key should be a state object. Example: { "type": "__setState", "state": { "abc123Store": { "foo": "bar" } } } - `);let t=e.state[s];if(t==null)return;JSON.stringify(i.getState())!==JSON.stringify(t)&&p(t);return}$f(i)&&i.dispatch(e)});case`DISPATCH`:switch(e.payload.type){case`RESET`:return p(m),s===void 0?u?.init(i.getState()):u?.init(tp(c.name));case`COMMIT`:if(s===void 0){u?.init(i.getState());return}return u?.init(tp(c.name));case`ROLLBACK`:return cp(e.state,e=>{if(s===void 0){p(e),u?.init(i.getState());return}p(e[s]),u?.init(tp(c.name))});case`JUMP_TO_STATE`:case`JUMP_TO_ACTION`:return cp(e.state,e=>{if(s===void 0){p(e);return}JSON.stringify(i.getState())!==JSON.stringify(e[s])&&p(e[s])});case`IMPORT_STATE`:{let{nextLiftedState:t}=e.payload,n=t.computedStates.slice(-1)[0]?.state;if(!n)return;p(s===void 0?n:n[s]),u?.send(null,t);return}case`PAUSE_RECORDING`:return f=!f}return}}),m},sp=op,cp=(e,t)=>{let n;try{n=JSON.parse(e)}catch(e){console.error(`[zustand devtools middleware] Could not parse the received json`,e)}n!==void 0&&t(n)},lp=e=>t=>{try{let n=e(t);return n instanceof Promise?n:{then(e){return lp(e)(n)},catch(e){return this}}}catch(e){return{then(e){return this},catch(t){return lp(t)(e)}}}},up=(e,t)=>(n,r,i)=>{let a={storage:Qf(()=>window.localStorage),partialize:e=>e,version:0,merge:(e,t)=>({...t,...e}),...t},o=!1,s=0,c=new Set,l=new Set,u=a.storage;if(!u)return e((...e)=>{console.warn(`[zustand persist middleware] Unable to update item '${a.name}', the given storage is currently unavailable.`),n(...e)},r,i);let d=()=>{let e=a.partialize({...r()});return u.setItem(a.name,{state:e,version:a.version})},f=i.setState;i.setState=(e,t)=>(f(e,t),d());let p=e((...e)=>(n(...e),d()),r,i);i.getInitialState=()=>p;let m,h=()=>{if(!u)return;let e=++s;o=!1,c.forEach(e=>e(r()??p));let t=a.onRehydrateStorage?.call(a,r()??p)||void 0;return lp(u.getItem.bind(u))(a.name).then(e=>{if(e){if(typeof e.version==`number`&&e.version!==a.version){if(a.migrate){let t=a.migrate(e.state,e.version);return t instanceof Promise?t.then(e=>[!0,e]):[!0,t]}console.error(`State loaded from storage couldn't be migrated since no migrate function was provided`)}else return[!1,e.state]}return[!1,void 0]}).then(t=>{if(e!==s)return;let[i,o]=t;if(m=a.merge(o,r()??p),n(m,!0),i)return d()}).then(()=>{e===s&&(t?.(r(),void 0),m=r(),o=!0,l.forEach(e=>e(m)))}).catch(n=>{e===s&&t?.(void 0,n)})};return i.persist={setOptions:e=>{a={...a,...e},e.storage&&(u=e.storage)},clearStorage:()=>{++s,u?.removeItem(a.name)},getOptions:()=>a,rehydrate:()=>h(),hasHydrated:()=>o,onHydrate:e=>(c.add(e),()=>{c.delete(e)}),onFinishHydration:e=>(l.add(e),()=>{l.delete(e)})},a.skipHydration||h(),m||p},dp=up}));function pp(e){if(e.type!==`response.output_text.delta`||!(`delta`in e)||typeof e.delta!=`string`||e.delta.length<=hp)return e;let t=e.delta.length-hp;return{...e,delta:`${e.delta.slice(0,hp)}\n...[${t} chars omitted from debug view]`}}var mp,hp,Q,gp=o((()=>{Xf(),fp(),mp=1e3,hp=2048,Q=Jf()(sp(dp(e=>({agents:[],workflows:[],entities:[],selectedAgent:void 0,isLoadingEntities:!0,entityError:null,currentConversation:void 0,availableConversations:[],chatItems:[],isStreaming:!1,isSubmitting:!1,loadingConversations:!1,inputValue:``,attachments:[],conversationUsage:{total_tokens:0,message_count:0},pendingApprovals:[],currentSession:void 0,availableSessions:[],sessionCheckpoints:[],loadingSessions:!1,loadingCheckpoints:!1,showDebugPanel:!0,debugPanelMinimized:!1,debugPanelWidth:320,debugEvents:[],isResizing:!1,showToolCalls:!0,streamingEnabled:!0,debugPanelTab:`events`,debugTraceSubTab:`spans`,contextInspectorViewMode:`tokens`,contextInspectorCumulative:!1,showAboutModal:!1,showGallery:!1,showDeployModal:!1,showEntityNotFoundToast:!1,toasts:[],oaiMode:{enabled:!1,model:`gpt-4o-mini`},uiMode:`developer`,runtime:`python`,serverCapabilities:{instrumentation:!1,trace_retrieval:!1,openai_proxy:!1,deployment:!1},authRequired:!1,serverVersion:null,isDeploying:!1,deploymentLogs:[],lastDeployment:null,azureDeploymentEnabled:!1,setAgents:t=>e({agents:t}),setWorkflows:t=>e({workflows:t}),setEntities:t=>e({entities:t}),setSelectedAgent:t=>e({selectedAgent:t}),addAgent:t=>e(e=>({agents:[...e.agents,t]})),addWorkflow:t=>e(e=>({workflows:[...e.workflows,t]})),updateAgent:t=>e(e=>({agents:e.agents.map(e=>e.id===t.id?t:e),selectedAgent:e.selectedAgent?.id===t.id&&e.selectedAgent.type===`agent`?t:e.selectedAgent})),updateWorkflow:t=>e(e=>({workflows:e.workflows.map(e=>e.id===t.id?t:e),selectedAgent:e.selectedAgent?.id===t.id&&e.selectedAgent.type===`workflow`?t:e.selectedAgent})),removeEntity:t=>e(e=>({agents:e.agents.filter(e=>e.id!==t),workflows:e.workflows.filter(e=>e.id!==t),selectedAgent:e.selectedAgent?.id===t?void 0:e.selectedAgent})),setEntityError:t=>e({entityError:t}),setIsLoadingEntities:t=>e({isLoadingEntities:t}),setCurrentConversation:t=>e({currentConversation:t}),setAvailableConversations:t=>e({availableConversations:t}),setChatItems:t=>e({chatItems:t}),setIsStreaming:t=>e({isStreaming:t}),setIsSubmitting:t=>e({isSubmitting:t}),setLoadingConversations:t=>e({loadingConversations:t}),setInputValue:t=>e({inputValue:t}),setAttachments:t=>e({attachments:t}),updateConversationUsage:t=>e(e=>({conversationUsage:{total_tokens:e.conversationUsage.total_tokens+t,message_count:e.conversationUsage.message_count+1}})),setPendingApprovals:t=>e({pendingApprovals:t}),setCurrentSession:t=>e({currentSession:t}),setAvailableSessions:t=>e({availableSessions:t}),setSessionCheckpoints:t=>e({sessionCheckpoints:t}),setLoadingSessions:t=>e({loadingSessions:t}),setLoadingCheckpoints:t=>e({loadingCheckpoints:t}),addSession:t=>e(e=>({availableSessions:[t,...e.availableSessions]})),removeSession:t=>e(e=>({availableSessions:e.availableSessions.filter(e=>e.conversation_id!==t),currentSession:e.currentSession?.conversation_id===t?void 0:e.currentSession,sessionCheckpoints:e.currentSession?.conversation_id===t?[]:e.sessionCheckpoints})),setShowDebugPanel:t=>e({showDebugPanel:t}),setDebugPanelMinimized:t=>e({debugPanelMinimized:t}),setDebugPanelWidth:t=>e({debugPanelWidth:t}),setShowToolCalls:t=>e({showToolCalls:t}),setStreamingEnabled:t=>e({streamingEnabled:t}),addDebugEvent:t=>e(e=>{let n=pp(t),r=Math.floor(Date.now()/1e3),i=(e.debugEvents.length>0?e.debugEvents[e.debugEvents.length-1]:null)?._uiTimestamp??0,a=Math.max(r,i+1);return{debugEvents:[...e.debugEvents.length>=mp?e.debugEvents.slice(-999):e.debugEvents,{...n,_uiTimestamp:`created_at`in n&&n.created_at?n.created_at:a}]}}),clearDebugEvents:()=>e({debugEvents:[]}),setIsResizing:t=>e({isResizing:t}),setDebugPanelTab:t=>e({debugPanelTab:t}),setDebugTraceSubTab:t=>e({debugTraceSubTab:t}),setContextInspectorViewMode:t=>e({contextInspectorViewMode:t}),setContextInspectorCumulative:t=>e({contextInspectorCumulative:t}),setShowAboutModal:t=>e({showAboutModal:t}),setShowGallery:t=>e({showGallery:t}),setShowDeployModal:t=>e({showDeployModal:t}),setShowEntityNotFoundToast:t=>e({showEntityNotFoundToast:t}),addToast:t=>e(e=>({toasts:[...e.toasts,{id:`toast-${Date.now()}-${Math.random().toString(36).substr(2,9)}`,type:t.type||`info`,duration:t.duration||4e3,...t}]})),removeToast:t=>e(e=>({toasts:e.toasts.filter(e=>e.id!==t)})),setOAIMode:t=>e(e=>t.enabled&&!e.oaiMode.enabled||!t.enabled&&e.oaiMode.enabled?(Object.keys(localStorage).forEach(e=>{e.startsWith(`devui_convs_`)&&localStorage.removeItem(e)}),{oaiMode:t,currentConversation:void 0,availableConversations:[],chatItems:[],inputValue:``,attachments:[],conversationUsage:{total_tokens:0,message_count:0},isStreaming:!1,isSubmitting:!1,pendingApprovals:[],debugEvents:[]}):{oaiMode:t}),toggleOAIMode:()=>e(e=>{let t=!e.oaiMode.enabled;return{oaiMode:{...e.oaiMode,enabled:t},currentConversation:void 0,availableConversations:[],chatItems:[],inputValue:``,attachments:[],conversationUsage:{total_tokens:0,message_count:0},isStreaming:!1,isSubmitting:!1,pendingApprovals:[],debugEvents:[]}}),setServerMeta:t=>e({uiMode:t.uiMode,runtime:t.runtime,serverCapabilities:t.capabilities,authRequired:t.authRequired,serverVersion:t.version||null}),startDeployment:()=>e({isDeploying:!0,deploymentLogs:[],lastDeployment:null}),addDeploymentLog:t=>e(e=>({deploymentLogs:[...e.deploymentLogs,t]})),setDeploymentResult:t=>e({isDeploying:!1,lastDeployment:t}),stopDeployment:()=>e({isDeploying:!1}),clearDeploymentState:()=>e({isDeploying:!1,deploymentLogs:[],lastDeployment:null}),setAzureDeploymentEnabled:t=>e({azureDeploymentEnabled:t}),selectEntity:t=>{e({selectedAgent:t,currentConversation:void 0,availableConversations:[],chatItems:[],inputValue:``,attachments:[],conversationUsage:{total_tokens:0,message_count:0},isStreaming:!1,isSubmitting:!1,pendingApprovals:[],currentSession:void 0,availableSessions:[],sessionCheckpoints:[],debugEvents:[]});let n=new URL(window.location.href);n.searchParams.set(`entity_id`,t.id),window.history.pushState({},``,n)}}),{name:`devui-storage`,partialize:e=>({showDebugPanel:e.showDebugPanel,debugPanelMinimized:e.debugPanelMinimized,debugPanelWidth:e.debugPanelWidth,showToolCalls:e.showToolCalls,streamingEnabled:e.streamingEnabled,oaiMode:e.oaiMode,azureDeploymentEnabled:e.azureDeploymentEnabled,debugPanelTab:e.debugPanelTab,debugTraceSubTab:e.debugTraceSubTab,contextInspectorViewMode:e.contextInspectorViewMode,contextInspectorCumulative:e.contextInspectorCumulative})}),{name:`DevUI Store`}))})),_p=c({useDevUIStore:()=>Q}),vp=o((()=>{gp()}));vp();function yp({agents:e,workflows:t,entities:n,selectedItem:r,onSelect:i,onBrowseGallery:a,isLoading:o=!1,onSettingsClick:s}){let{oaiMode:c,serverVersion:l}=Q();return(0,K.jsxs)(`header`,{className:`flex h-14 items-center gap-4 border-b px-4`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 font-semibold`,children:[(0,K.jsxs)(`svg`,{width:`24`,height:`24`,viewBox:`0 0 805 805`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,className:`flex-shrink-0`,children:[(0,K.jsx)(`path`,{d:`M402.488 119.713C439.197 119.713 468.955 149.472 468.955 186.18C468.955 192.086 471.708 197.849 476.915 200.635L546.702 237.977C555.862 242.879 566.95 240.96 576.092 236.023C585.476 230.955 596.218 228.078 607.632 228.078C644.341 228.078 674.098 257.836 674.099 294.545C674.099 316.95 663.013 336.765 646.028 348.806C637.861 354.595 631.412 363.24 631.412 373.251V430.818C631.412 440.83 637.861 449.475 646.028 455.264C663.013 467.305 674.099 487.121 674.099 509.526C674.099 546.235 644.341 575.994 607.632 575.994C598.598 575.994 589.985 574.191 582.133 570.926C573.644 567.397 563.91 566.393 555.804 570.731L469.581 616.867C469.193 617.074 468.955 617.479 468.955 617.919C468.955 654.628 439.197 684.386 402.488 684.386C365.779 684.386 336.021 654.628 336.021 617.919C336.021 616.802 335.423 615.765 334.439 615.238L249.895 570C241.61 565.567 231.646 566.713 223.034 570.472C214.898 574.024 205.914 575.994 196.47 575.994C159.761 575.994 130.002 546.235 130.002 509.526C130.002 486.66 141.549 466.49 159.13 454.531C167.604 448.766 174.349 439.975 174.349 429.726V372.538C174.349 362.289 167.604 353.498 159.13 347.734C141.549 335.774 130.002 315.604 130.002 292.738C130.002 256.029 159.761 226.271 196.47 226.271C208.223 226.271 219.263 229.322 228.843 234.674C238.065 239.827 249.351 241.894 258.666 236.91L328.655 199.459C333.448 196.895 336.021 191.616 336.021 186.18C336.021 149.471 365.779 119.713 402.488 119.713ZM475.716 394.444C471.337 396.787 468.955 401.586 468.955 406.552C468.955 429.68 457.142 450.048 439.221 461.954C430.571 467.7 423.653 476.574 423.653 486.959V537.511C423.653 547.896 430.746 556.851 439.379 562.622C449 569.053 461.434 572.052 471.637 566.592L527.264 536.826C536.887 531.677 541.164 520.44 541.164 509.526C541.164 485.968 553.42 465.272 571.904 453.468C580.846 447.757 588.054 438.749 588.054 428.139V371.427C588.054 363.494 582.671 356.676 575.716 352.862C569.342 349.366 561.663 348.454 555.253 351.884L475.716 394.444ZM247.992 349.841C241.997 346.633 234.806 347.465 228.873 350.785C222.524 354.337 217.706 360.639 217.706 367.915V429.162C217.706 439.537 224.611 448.404 233.248 454.152C251.144 466.062 262.937 486.417 262.937 509.526C262.937 519.654 267.026 529.991 275.955 534.769L334.852 566.284C344.582 571.49 356.362 568.81 365.528 562.667C373.735 557.166 380.296 548.643 380.296 538.764V486.305C380.296 476.067 373.564 467.282 365.103 461.516C347.548 449.552 336.021 429.398 336.021 406.552C336.021 400.967 333.389 395.536 328.465 392.902L247.992 349.841ZM270.019 280.008C265.421 282.469 262.936 287.522 262.937 292.738C262.937 293.308 262.929 293.876 262.915 294.443C262.615 306.354 266.961 318.871 277.466 324.492L334.017 354.751C344.13 360.163 356.442 357.269 366.027 350.969C376.495 344.088 389.024 340.085 402.488 340.085C416.203 340.085 428.947 344.239 439.532 351.357C449.163 357.834 461.63 360.861 471.864 355.385L526.625 326.083C537.106 320.474 541.458 307.999 541.182 296.115C541.17 295.593 541.164 295.069 541.164 294.545C541.164 288.551 538.376 282.696 533.091 279.868L463.562 242.664C454.384 237.753 443.274 239.688 434.123 244.65C424.716 249.75 413.941 252.647 402.488 252.647C390.83 252.647 379.873 249.646 370.348 244.373C361.148 239.281 349.917 237.256 340.646 242.217L270.019 280.008Z`,fill:`url(#paint0_linear_510_1294)`}),(0,K.jsx)(`defs`,{children:(0,K.jsxs)(`linearGradient`,{id:`paint0_linear_510_1294`,x1:`255.628`,y1:`-34.3245`,x2:`618.483`,y2:`632.032`,gradientUnits:`userSpaceOnUse`,children:[(0,K.jsx)(`stop`,{stopColor:`#D59FFF`}),(0,K.jsx)(`stop`,{offset:`1`,stopColor:`#8562C5`})]})})]}),`Dev UI`,l&&(0,K.jsxs)(`span`,{className:`text-xs text-muted-foreground ml-1`,children:[`v`,l]}),c.enabled&&(0,K.jsxs)(Ft,{variant:`secondary`,className:`gap-1 ml-2`,children:[(0,K.jsx)(gf,{className:`h-3 w-3`}),`OpenAI: `,c.model]})]}),!c.enabled&&(0,K.jsx)(Tf,{agents:e,workflows:t,entities:n,selectedItem:r,onSelect:i,onBrowseGallery:a,isLoading:o}),(0,K.jsx)(`div`,{className:`flex-1`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2 ml-auto`,children:[(0,K.jsx)(Bf,{}),(0,K.jsx)(q,{variant:`ghost`,size:`sm`,onClick:e=>{e.stopPropagation(),s?.()},children:(0,K.jsx)(qd,{className:`h-4 w-4`})})]})]})}var bp=Object.defineProperty,xp=(e,t)=>bp(e,`name`,{value:t,configurable:!0});function Sp(e,[t,n]){return Math.min(n,Math.max(t,e))}xp(Sp,`clamp`);var Cp=Object.defineProperty,wp=(e,t)=>Cp(e,`name`,{value:t,configurable:!0});function Tp(e,t){return y.useReducer((e,n)=>t[e][n]??e,e)}wp(Tp,`useStateMachine`);var Ep={Auto:`auto`,Always:`always`,Scroll:`scroll`,Hover:`hover`},Dp={Vertical:`vertical`,Horizontal:`horizontal`},Op={LTR:`ltr`,RTL:`rtl`},kp=`ScrollArea`,[Ap,jp]=Kt(kp),[Mp,Np]=Ap(kp),Pp=y.forwardRef(wp(function(e,t){let{__scopeScrollArea:n,type:r=Ep.Hover,dir:i,scrollHideDelay:a=600,...o}=e,[s,c]=y.useState(null),[l,u]=y.useState(null),[d,f]=y.useState(null),[p,m]=y.useState(null),[h,g]=y.useState(null),[_,v]=y.useState(0),[b,x]=y.useState(0),[S,C]=y.useState(!1),[w,E]=y.useState(!1),D=T(t,c),O=jn(i);return(0,K.jsx)(Mp,{scope:n,type:r,dir:O,scrollHideDelay:a,scrollArea:s,viewport:l,onViewportChange:u,content:d,onContentChange:f,scrollbarX:p,onScrollbarXChange:m,scrollbarXEnabled:S,onScrollbarXEnabledChange:C,scrollbarY:h,onScrollbarYChange:g,scrollbarYEnabled:w,onScrollbarYEnabledChange:E,onCornerWidthChange:v,onCornerHeightChange:x,children:(0,K.jsx)(Y.div,{dir:O,...o,ref:D,style:{position:`relative`,"--radix-scroll-area-corner-width":_+`px`,"--radix-scroll-area-corner-height":b+`px`,...e.style}})})},`ScrollArea`)),Fp=`ScrollAreaViewport`,Ip=j(Fp),Lp=y.forwardRef(wp(function(e,t){let{__scopeScrollArea:n,children:r,nonce:i,disableImplicitContentElement:a,...o}=e,s=Np(Fp,n),c=T(t,y.useRef(null),s.onViewportChange),l=y.isValidElement(r);return(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(Rp,{nonce:i}),(0,K.jsx)(Y.div,{"data-radix-scroll-area-viewport":``,...o,ref:c,style:{overflowX:s.scrollbarXEnabled?`scroll`:`hidden`,overflowY:s.scrollbarYEnabled?`scroll`:`hidden`,...e.style},children:a?r:l?(0,K.jsx)(Ip,{child:r,children:e=>(0,K.jsx)(Bp,{__scopeScrollArea:n,children:e})}):(0,K.jsx)(Ip,{children:(0,K.jsx)(Bp,{__scopeScrollArea:n,children:r})})})]})},`ScrollAreaViewport`)),Rp=y.memo(wp(function({nonce:e}){return(0,K.jsx)(`style`,{dangerouslySetInnerHTML:{__html:`[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}`},nonce:e})},`ScrollAreaViewportStyle`),(e,t)=>e.nonce===t.nonce),zp=`ScrollAreaContent`,Bp=y.forwardRef(wp(function(e,t){let{__scopeScrollArea:n,children:r,...i}=e,a=T(t,Np(zp,n).onContentChange);return(0,K.jsx)(Y.div,{...i,ref:a,style:{minWidth:`100%`,display:`table`,...e.style},children:r})},`ScrollAreaContent`)),Vp=`ScrollAreaScrollbar`,Hp=y.forwardRef(wp(function(e,t){let{forceMount:n,...r}=e,i=Np(Vp,e.__scopeScrollArea),{onScrollbarXEnabledChange:a,onScrollbarYEnabledChange:o}=i,s=e.orientation===Dp.Horizontal;return y.useEffect(()=>(s?a(!0):o(!0),()=>{s?a(!1):o(!1)}),[s,a,o]),i.type===Ep.Hover?(0,K.jsx)(Up,{...r,ref:t,forceMount:n}):i.type===Ep.Scroll?(0,K.jsx)(Wp,{...r,ref:t,forceMount:n}):i.type===Ep.Auto?(0,K.jsx)(Gp,{...r,ref:t,forceMount:n}):i.type===Ep.Always?(0,K.jsx)(Kp,{...r,ref:t,"data-state":`visible`}):null},`ScrollAreaScrollbar`)),Up=y.forwardRef(wp(function(e,t){let{forceMount:n,...r}=e,i=Np(Vp,e.__scopeScrollArea),[a,o]=y.useState(!1);return y.useEffect(()=>{let e=i.scrollArea,t=0;if(e){let n=wp(()=>{window.clearTimeout(t),o(!0)},`handlePointerEnter`),r=wp(()=>{t=window.setTimeout(()=>o(!1),i.scrollHideDelay)},`handlePointerLeave`);return e.addEventListener(`pointerenter`,n),e.addEventListener(`pointerleave`,r),()=>{window.clearTimeout(t),e.removeEventListener(`pointerenter`,n),e.removeEventListener(`pointerleave`,r)}}},[i.scrollArea,i.scrollHideDelay]),(0,K.jsx)(po,{present:n||a,children:(0,K.jsx)(Gp,{"data-state":a?`visible`:`hidden`,...r,ref:t})})},`ScrollAreaScrollbarHover`)),Wp=y.forwardRef(wp(function(e,t){let{forceMount:n,...r}=e,i=Np(Vp,e.__scopeScrollArea),a=e.orientation===Dp.Horizontal,o=fm(()=>c(`SCROLL_END`),100),[s,c]=Tp(`hidden`,{hidden:{SCROLL:`scrolling`},scrolling:{SCROLL_END:`idle`,POINTER_ENTER:`interacting`},interacting:{SCROLL:`interacting`,POINTER_LEAVE:`idle`},idle:{HIDE:`hidden`,SCROLL:`scrolling`,POINTER_ENTER:`interacting`}});return y.useEffect(()=>{if(s===`idle`){let e=window.setTimeout(()=>c(`HIDE`),i.scrollHideDelay);return()=>window.clearTimeout(e)}},[s,i.scrollHideDelay,c]),y.useEffect(()=>{let e=i.viewport,t=a?`scrollLeft`:`scrollTop`;if(e){let n=e[t],r=wp(()=>{let r=e[t];n!==r&&(c(`SCROLL`),o()),n=r},`handleScroll`);return e.addEventListener(`scroll`,r),()=>e.removeEventListener(`scroll`,r)}},[i.viewport,a,c,o]),(0,K.jsx)(po,{present:n||s!==`hidden`,children:(0,K.jsx)(Kp,{"data-state":s===`hidden`?`hidden`:`visible`,...r,ref:t,onPointerEnter:J(e.onPointerEnter,()=>c(`POINTER_ENTER`)),onPointerLeave:J(e.onPointerLeave,()=>c(`POINTER_LEAVE`))})})},`ScrollAreaScrollbarScroll`)),Gp=y.forwardRef(wp(function(e,t){let n=Np(Vp,e.__scopeScrollArea),{forceMount:r,...i}=e,[a,o]=y.useState(!1),s=e.orientation===Dp.Horizontal,c=fm(()=>{if(n.viewport){let e=n.viewport.offsetWidth0&&l<1,onThumbChange:wp(e=>a.current=e,`onThumbChange`),onThumbPointerUp:wp(()=>o.current=0,`onThumbPointerUp`),onThumbPointerDown:wp(e=>o.current=e,`onThumbPointerDown`)};function d(e,t){return sm(e,o.current,s,t)}return wp(d,`getScrollPosition`),n===Dp.Horizontal?(0,K.jsx)(qp,{...u,ref:t,onThumbPositionChange:()=>{if(i.viewport&&a.current){let e=i.viewport.scrollLeft,t=cm(e,s,i.dir);a.current.style.transform=`translate3d(${t}px, 0, 0)`}},onWheelScroll:e=>{i.viewport&&(i.viewport.scrollLeft=e)},onDragScroll:e=>{i.viewport&&(i.viewport.scrollLeft=d(e,i.dir))}}):n===Dp.Vertical?(0,K.jsx)(Jp,{...u,ref:t,onThumbPositionChange:()=>{if(i.viewport&&a.current){let e=i.viewport.scrollTop,t=cm(e,s);a.current.style.transform=`translate3d(0, ${t}px, 0)`}},onWheelScroll:e=>{i.viewport&&(i.viewport.scrollTop=e)},onDragScroll:e=>{i.viewport&&(i.viewport.scrollTop=d(e))}}):null},`ScrollAreaScrollbarVisible`)),qp=y.forwardRef(wp(function(e,t){let{sizes:n,onSizesChange:r,...i}=e,a=Np(Vp,e.__scopeScrollArea),[o,s]=y.useState(),c=y.useRef(null),l=T(t,c,a.onScrollbarXChange);return y.useEffect(()=>{c.current&&s(getComputedStyle(c.current))},[c]),(0,K.jsx)(Zp,{"data-orientation":`horizontal`,...i,ref:l,sizes:n,style:{bottom:0,left:a.dir===Op.RTL?`var(--radix-scroll-area-corner-width)`:0,right:a.dir===Op.LTR?`var(--radix-scroll-area-corner-width)`:0,"--radix-scroll-area-thumb-width":om(n)+`px`,...e.style},onThumbPointerDown:t=>e.onThumbPointerDown(t.x),onDragScroll:t=>e.onDragScroll(t.x),onWheelScroll:(t,n)=>{if(a.viewport){let r=a.viewport.scrollLeft+t.deltaX;e.onWheelScroll(r),um(r,n)&&t.preventDefault()}},onResize:()=>{c.current&&a.viewport&&o&&r({content:a.viewport.scrollWidth,viewport:a.viewport.offsetWidth,scrollbar:{size:c.current.clientWidth,paddingStart:im(o.paddingLeft),paddingEnd:im(o.paddingRight)}})}})},`ScrollAreaScrollbarX`)),Jp=y.forwardRef(wp(function(e,t){let{sizes:n,onSizesChange:r,...i}=e,a=Np(Vp,e.__scopeScrollArea),[o,s]=y.useState(),c=y.useRef(null),l=T(t,c,a.onScrollbarYChange);return y.useEffect(()=>{c.current&&s(getComputedStyle(c.current))},[c]),(0,K.jsx)(Zp,{"data-orientation":`vertical`,...i,ref:l,sizes:n,style:{top:0,right:a.dir===Op.LTR?0:void 0,left:a.dir===Op.RTL?0:void 0,bottom:`var(--radix-scroll-area-corner-height)`,"--radix-scroll-area-thumb-height":om(n)+`px`,...e.style},onThumbPointerDown:t=>e.onThumbPointerDown(t.y),onDragScroll:t=>e.onDragScroll(t.y),onWheelScroll:(t,n)=>{if(a.viewport){let r=a.viewport.scrollTop+t.deltaY;e.onWheelScroll(r),um(r,n)&&t.preventDefault()}},onResize:()=>{c.current&&a.viewport&&o&&r({content:a.viewport.scrollHeight,viewport:a.viewport.offsetHeight,scrollbar:{size:c.current.clientHeight,paddingStart:im(o.paddingTop),paddingEnd:im(o.paddingBottom)}})}})},`ScrollAreaScrollbarY`)),[Yp,Xp]=Ap(Vp),Zp=y.forwardRef(wp(function(e,t){let{__scopeScrollArea:n,sizes:r,hasThumb:i,onThumbChange:a,onThumbPointerUp:o,onThumbPointerDown:s,onThumbPositionChange:c,onDragScroll:l,onWheelScroll:u,onResize:d,...f}=e,p=Np(Vp,n),[m,h]=y.useState(null),g=T(t,h),_=y.useRef(null),v=y.useRef(``),b=p.viewport,x=r.content-r.viewport,S=Fn(u),C=Fn(c),w=fm(d,10);function E(e){if(_.current){let t=e.clientX-_.current.left,n=e.clientY-_.current.top;l({x:t,y:n})}}return wp(E,`handleDragScroll`),y.useEffect(()=>{let e=wp(e=>{let t=e.target;m?.contains(t)&&S(e,x)},`handleWheel`);return document.addEventListener(`wheel`,e,{passive:!1}),()=>document.removeEventListener(`wheel`,e,{passive:!1})},[b,m,x,S]),y.useEffect(C,[r,C]),pm(m,w),pm(p.content,w),(0,K.jsx)(Yp,{scope:n,scrollbar:m,hasThumb:i,onThumbChange:Fn(a),onThumbPointerUp:Fn(o),onThumbPositionChange:C,onThumbPointerDown:Fn(s),children:(0,K.jsx)(Y.div,{...f,ref:g,style:{position:`absolute`,...f.style},onPointerDown:J(e.onPointerDown,e=>{e.button===0&&(e.target.setPointerCapture(e.pointerId),_.current=m.getBoundingClientRect(),v.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect=`none`,p.viewport&&(p.viewport.style.scrollBehavior=`auto`),E(e))}),onPointerMove:J(e.onPointerMove,E),onPointerUp:J(e.onPointerUp,e=>{let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),document.body.style.webkitUserSelect=v.current,p.viewport&&(p.viewport.style.scrollBehavior=``),_.current=null})})})},`ScrollAreaScrollbarImpl`)),Qp=`ScrollAreaThumb`,$p=y.forwardRef(wp(function(e,t){let{forceMount:n,...r}=e,i=Xp(Qp,e.__scopeScrollArea);return(0,K.jsx)(po,{present:n||i.hasThumb,children:(0,K.jsx)(em,{ref:t,...r})})},`ScrollAreaThumb`)),em=y.forwardRef(wp(function(e,t){let{__scopeScrollArea:n,style:r,...i}=e,a=Np(Qp,n),o=Xp(Qp,n),{onThumbPositionChange:s}=o,c=T(t,o.onThumbChange),l=y.useRef(void 0),u=fm(()=>{l.current&&=(l.current(),void 0)},100);return y.useEffect(()=>{let e=a.viewport;if(e){let t=wp(()=>{if(u(),!l.current){let t=dm(e,s);l.current=t,s()}},`handleScroll`);return s(),e.addEventListener(`scroll`,t),()=>e.removeEventListener(`scroll`,t)}},[a.viewport,u,s]),(0,K.jsx)(Y.div,{"data-state":o.hasThumb?`visible`:`hidden`,...i,ref:c,style:{width:`var(--radix-scroll-area-thumb-width)`,height:`var(--radix-scroll-area-thumb-height)`,...r},onPointerDownCapture:J(e.onPointerDownCapture,e=>{let t=e.target.getBoundingClientRect(),n=e.clientX-t.left,r=e.clientY-t.top;o.onThumbPointerDown({x:n,y:r})}),onPointerUp:J(e.onPointerUp,o.onThumbPointerUp)})},`ScrollAreaThumbImpl`)),tm=`ScrollAreaCorner`,nm=y.forwardRef(wp(function(e,t){let n=Np(tm,e.__scopeScrollArea),r=!!(n.scrollbarX&&n.scrollbarY);return n.type!==Ep.Scroll&&r?(0,K.jsx)(rm,{...e,ref:t}):null},`ScrollAreaCorner`)),rm=y.forwardRef(wp(function(e,t){let{__scopeScrollArea:n,...r}=e,i=Np(tm,n),[a,o]=y.useState(0),[s,c]=y.useState(0),l=!!(a&&s),{onCornerWidthChange:u,onCornerHeightChange:d}=i;return pm(i.scrollbarX,()=>{let e=i.scrollbarX?.offsetHeight||0;i.onCornerHeightChange(e),c(e)}),pm(i.scrollbarY,()=>{let e=i.scrollbarY?.offsetWidth||0;i.onCornerWidthChange(e),o(e)}),y.useEffect(()=>()=>{u(0),d(0)},[u,d]),l?(0,K.jsx)(Y.div,{...r,ref:t,style:{width:a,height:s,position:`absolute`,right:i.dir===Op.LTR?0:void 0,left:i.dir===Op.RTL?0:void 0,bottom:0,...e.style}}):null},`ScrollAreaCornerImpl`));function im(e){return e?parseInt(e,10):0}wp(im,`toInt`);function am(e,t){let n=e/t;return isNaN(n)?0:n}wp(am,`getThumbRatio`);function om(e){let t=am(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,r=(e.scrollbar.size-n)*t;return Math.max(r,18)}wp(om,`getThumbSize`);function sm(e,t,n,r=Op.LTR){let i=om(n),a=i/2,o=t||a,s=i-o,c=n.scrollbar.paddingStart+o,l=n.scrollbar.size-n.scrollbar.paddingEnd-s,u=n.content-n.viewport,d=r===Op.LTR?[0,u]:[u*-1,0];return lm([c,l],d)(e)}wp(sm,`getScrollPositionFromPointer`);function cm(e,t,n=Op.LTR){let r=om(t),i=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,a=t.scrollbar.size-i,o=t.content-t.viewport,s=a-r,c=Sp(e,n===Op.LTR?[0,o]:[o*-1,0]);return lm([0,o],[0,s])(c)}wp(cm,`getThumbOffsetFromScroll`);function lm(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}wp(lm,`linearScale`);function um(e,t){return e>0&&e{})=>{let n={left:e.scrollLeft,top:e.scrollTop},r=0;function i(){let a={left:e.scrollLeft,top:e.scrollTop},o=n.left!==a.left,s=n.top!==a.top;(o||s)&&t(),n=a,r=window.requestAnimationFrame(i)}return wp(i,`loop`),i(),()=>window.cancelAnimationFrame(r)},`addUnlinkedScrollListener`);function fm(e,t){let n=Fn(e),r=y.useRef(0);return y.useEffect(()=>()=>window.clearTimeout(r.current),[]),y.useCallback(()=>{window.clearTimeout(r.current),r.current=window.setTimeout(n,t)},[n,t])}wp(fm,`useDebounceCallback`);function pm(e,t){let n=Fn(t);Jt(()=>{let t=0;if(e){let r=new ResizeObserver(()=>{cancelAnimationFrame(t),t=window.requestAnimationFrame(n)});return r.observe(e),()=>{window.cancelAnimationFrame(t),r.unobserve(e)}}},[e,n])}wp(pm,`useResizeObserver`);var mm=y.forwardRef(({className:e,children:t,...n},r)=>(0,K.jsxs)(Pp,{ref:r,className:jt(`relative overflow-hidden`,e),...n,children:[(0,K.jsx)(Lp,{className:`h-full w-full rounded-[inherit]`,children:t}),(0,K.jsx)(hm,{}),(0,K.jsx)(nm,{})]}));mm.displayName=Pp.displayName;var hm=y.forwardRef(({className:e,orientation:t=`vertical`,...n},r)=>(0,K.jsx)(Hp,{ref:r,orientation:t,className:jt(`flex touch-none select-none transition-colors`,t===`vertical`&&`h-full w-2.5 border-l border-l-transparent p-[1px]`,t===`horizontal`&&`h-2.5 flex-col border-t border-t-transparent p-[1px]`,e),...n,children:(0,K.jsx)($p,{className:`relative flex-1 rounded-full bg-border`})}));hm.displayName=Hp.displayName;var gm=Object.defineProperty,_m=(e,t)=>gm(e,`name`,{value:t,configurable:!0}),vm={Automatic:`automatic`,Manual:`manual`},ym=`Tabs`,[bm,xm]=Kt(ym,[Io]),Sm=Io(),[Cm,wm]=bm(ym),Tm=y.forwardRef(_m(function(e,t){let{__scopeTabs:n,value:r,onValueChange:i,defaultValue:a,orientation:o=`horizontal`,dir:s,activationMode:c=vm.Automatic,...l}=e,u=jn(s),[d,f]=rn({prop:r,onChange:i,defaultProp:a??``,caller:ym});return(0,K.jsx)(Cm,{scope:n,baseId:Or(),value:d,onValueChange:f,orientation:o,dir:u,activationMode:c,children:(0,K.jsx)(Y.div,{dir:u,"data-orientation":o,...l,ref:t})})},`Tabs`)),Em=`TabsList`,Dm=y.forwardRef(_m(function(e,t){let{__scopeTabs:n,loop:r=!0,...i}=e,a=wm(Em,n),o=Sm(n);return(0,K.jsx)(Vo,{asChild:!0,...o,orientation:a.orientation,dir:a.dir,loop:r,children:(0,K.jsx)(Y.div,{role:`tablist`,"aria-orientation":a.orientation,...i,ref:t})})},`TabsList`)),Om=`TabsTrigger`,km=y.forwardRef(_m(function(e,t){let{__scopeTabs:n,value:r,disabled:i=!1,...a}=e,o=wm(Om,n),s=Sm(n),c=Mm(o.baseId,r),l=Nm(o.baseId,r),u=r===o.value;return(0,K.jsx)(Wo,{asChild:!0,...s,focusable:!i,active:u,children:(0,K.jsx)(Y.button,{type:`button`,role:`tab`,"aria-selected":u,"aria-controls":l,"data-state":u?`active`:`inactive`,"data-disabled":i?``:void 0,disabled:i,id:c,...a,ref:t,onMouseDown:J(e.onMouseDown,e=>{!i&&e.button===0&&e.ctrlKey===!1?(e.currentTarget.focus(),o.onValueChange(r)):e.preventDefault()}),onKeyDown:J(e.onKeyDown,e=>{i||e.target!==e.currentTarget||[` `,`Enter`].includes(e.key)&&o.onValueChange(r)}),onFocus:J(e.onFocus,()=>{let e=o.activationMode!==vm.Manual;!u&&!i&&e&&o.onValueChange(r)})})})},`TabsTrigger`)),Am=`TabsContent`,jm=y.forwardRef(_m(function(e,t){let{__scopeTabs:n,value:r,forceMount:i,children:a,...o}=e,s=wm(Am,n),c=Mm(s.baseId,r),l=Nm(s.baseId,r),u=r===s.value,d=y.useRef(u);return y.useEffect(()=>{let e=requestAnimationFrame(()=>d.current=!1);return()=>cancelAnimationFrame(e)},[]),(0,K.jsx)(po,{present:i||u,children:({present:n})=>(0,K.jsx)(Y.div,{"data-state":u?`active`:`inactive`,"data-orientation":s.orientation,role:`tabpanel`,"aria-labelledby":c,hidden:!n,id:l,tabIndex:0,...o,ref:t,style:{...e.style,animationDuration:d.current?`0s`:void 0},children:n&&a})})},`TabsContent`));function Mm(e,t){return`${e}-trigger-${t}`}_m(Mm,`makeTriggerId`);function Nm(e,t){return`${e}-content-${t}`}_m(Nm,`makeContentId`);var Pm=Tm,Fm=y.forwardRef(({className:e,...t},n)=>(0,K.jsx)(Dm,{ref:n,className:jt(`inline-flex h-9 items-center justify-center rounded-lg bg-muted p-1 text-muted-foreground`,e),...t}));Fm.displayName=Dm.displayName;var Im=y.forwardRef(({className:e,...t},n)=>(0,K.jsx)(km,{ref:n,className:jt(`inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow`,e),...t}));Im.displayName=km.displayName;var Lm=y.forwardRef(({className:e,...t},n)=>(0,K.jsx)(jm,{ref:n,className:jt(`mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2`,e),...t}));Lm.displayName=jm.displayName;var Rm=Object.defineProperty,zm=(e,t)=>Rm(e,`name`,{value:t,configurable:!0}),Bm=`Checkbox`,[Vm,Hm]=Kt(Bm),[Um,Wm]=Vm(Bm);function Gm(e){let{__scopeCheckbox:t,checked:n,children:r,defaultChecked:i,disabled:a,form:o,name:s,onCheckedChange:c,required:l,value:u=`on`,internal_do_not_use_render:d}=e,[f,p]=rn({prop:n,defaultProp:i??!1,onChange:c,caller:Bm}),[m,h]=y.useState(null),[g,_]=y.useState(null),[v,b]=y.useState(null),x=!m||!!o||!!m.closest(`form`),S={checked:f,disabled:a,setChecked:p,control:m,setControl:h,name:s,form:o,value:u,userClick:v,onUserClick:b,required:l,defaultChecked:!eh(i)&&i,isFormControl:x,bubbleInput:g,setBubbleInput:_};return(0,K.jsx)(Um,{scope:t,...S,children:$m(d)?d(S):r})}zm(Gm,`CheckboxProvider`);var Km=`CheckboxTrigger`,qm=y.forwardRef(zm(function({__scopeCheckbox:e,onKeyDown:t,onClick:n,...r},i){let{control:a,value:o,disabled:s,checked:c,required:l,setControl:u,setChecked:d,onUserClick:f,isFormControl:p,bubbleInput:m}=Wm(Km,e),h=T(i,u),g=y.useRef(c);return y.useEffect(()=>{let e=a?.form;if(e){let t=zm(()=>d(g.current),`reset`);return e.addEventListener(`reset`,t),()=>e.removeEventListener(`reset`,t)}},[a,d]),(0,K.jsx)(Y.button,{type:`button`,role:`checkbox`,"aria-checked":eh(c)?`mixed`:c,"aria-required":l,"data-state":th(c),"data-disabled":s?``:void 0,disabled:s,value:o,...r,ref:h,onKeyDown:J(t,e=>{e.key===`Enter`&&e.preventDefault()}),onClick:J(n,e=>{let t=e.isPropagationStopped();f({requestedChecked:eh(c)?!0:!c,hasConsumerStoppedPropagation:t}),d(e=>eh(e)?!0:!e),m&&p&&(t||e.stopPropagation())})})},`CheckboxTrigger`)),Jm=y.forwardRef(zm(function(e,t){let{__scopeCheckbox:n,name:r,checked:i,defaultChecked:a,required:o,disabled:s,value:c,onCheckedChange:l,form:u,...d}=e;return(0,K.jsx)(Gm,{__scopeCheckbox:n,checked:i,defaultChecked:a,disabled:s,required:o,onCheckedChange:l,name:r,form:u,value:c,internal_do_not_use_render:({isFormControl:e})=>(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(qm,{...d,ref:t,__scopeCheckbox:n}),e&&(0,K.jsx)(Qm,{__scopeCheckbox:n})]})})},`Checkbox`)),Ym=`CheckboxIndicator`,Xm=y.forwardRef(zm(function(e,t){let{__scopeCheckbox:n,forceMount:r,...i}=e,a=Wm(Ym,n);return(0,K.jsx)(po,{present:r||eh(a.checked)||a.checked===!0,children:(0,K.jsx)(Y.span,{"data-state":th(a.checked),"data-disabled":a.disabled?``:void 0,...i,ref:t,style:{pointerEvents:`none`,...e.style}})})},`CheckboxIndicator`)),Zm=`CheckboxBubbleInput`,Qm=y.forwardRef(zm(function({__scopeCheckbox:e,onClick:t,...n},r){let{control:i,userClick:a,checked:o,defaultChecked:s,required:c,disabled:l,name:u,value:d,form:f,bubbleInput:p,setBubbleInput:m}=Wm(Zm,e),h=T(r,m),g=Va(i),_=y.useRef(!1),v=y.useRef(o),b=y.useRef(a),x=y.useRef(null);y.useEffect(()=>{let e=p;if(!e)return;let t=window.HTMLInputElement.prototype,n=Object.getOwnPropertyDescriptor(t,`checked`).set;if(!n)return;let r=v.current!==o;v.current=o;let i=a!==null&&a!==b.current;if(b.current=a,i)x.current=r?null:a,r&&(e.indeterminate=eh(o),n.call(e,!eh(o)&&o)),e.dispatchEvent(new Event(`click`,{bubbles:!a.hasConsumerStoppedPropagation}));else if(r){let t=x.current;x.current=null;let r=t?.requestedChecked===o;_.current=!0,e.indeterminate=eh(o),n.call(e,!eh(o)&&o),e.dispatchEvent(new Event(`click`,{bubbles:!(r&&t.hasConsumerStoppedPropagation)})),_.current=!1}},[p,o,a]);let S=y.useRef(!eh(o)&&o);return(0,K.jsx)(Y.input,{type:`checkbox`,"aria-hidden":!0,defaultChecked:s??S.current,required:c,disabled:l,name:u,value:d,form:f,...n,tabIndex:-1,ref:h,onClick:J(t,e=>{_.current&&e.stopPropagation()}),style:{...n.style,...g,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0,transform:`translateX(-100%)`}})},`CheckboxBubbleInput`));function $m(e){return typeof e==`function`}zm($m,`isFunction`);function eh(e){return e===`indeterminate`}zm(eh,`isIndeterminate`);function th(e){return eh(e)?`indeterminate`:e?`checked`:`unchecked`}zm(th,`getState`);function nh({className:e,...t}){return(0,K.jsx)(Jm,{"data-slot":`checkbox`,className:jt(`peer border-input dark:bg-input/30 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive size-4 shrink-0 rounded-[4px] border shadow-xs transition-shadow outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50`,e),...t,children:(0,K.jsx)(Xm,{"data-slot":`checkbox-indicator`,className:`flex items-center justify-center text-current transition-none`,children:(0,K.jsx)(ru,{className:`size-3.5`})})})}var rh=Object.defineProperty,ih=(e,t)=>rh(e,`name`,{value:t,configurable:!0}),ah=Object.freeze({position:`absolute`,border:0,width:1,height:1,padding:0,margin:-1,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,whiteSpace:`nowrap`,wordWrap:`normal`}),oh=y.forwardRef(ih(function(e,t){return(0,K.jsx)(Y.span,{...e,ref:t,style:{...ah,...e.style}})},`VisuallyHidden`)),sh=Object.defineProperty,ch=(e,t)=>sh(e,`name`,{value:t,configurable:!0}),[lh,uh]=Kt(`Tooltip`,[Ja]),dh=Ja(),fh=`TooltipProvider`,ph=700,mh=`tooltip.open`,[hh,gh]=lh(fh),_h=ch(e=>{let{__scopeTooltip:t,delayDuration:n=ph,skipDelayDuration:r=300,disableHoverableContent:i=!1,children:a}=e,o=y.useRef(!0),s=y.useRef(!1),c=y.useRef(0);return y.useEffect(()=>{let e=c.current;return()=>window.clearTimeout(e)},[]),(0,K.jsx)(hh,{scope:t,isOpenDelayedRef:o,delayDuration:n,onOpen:y.useCallback(()=>{r<=0||(window.clearTimeout(c.current),o.current=!1)},[r]),onClose:y.useCallback(()=>{r<=0||(window.clearTimeout(c.current),c.current=window.setTimeout(()=>o.current=!0,r))},[r]),isPointerInTransitRef:s,onPointerInTransitChange:y.useCallback(e=>{s.current=e},[]),disableHoverableContent:i,children:a})},`TooltipProvider`),vh=`Tooltip`,[yh,bh]=lh(vh),xh=ch(e=>{let{__scopeTooltip:t,children:n,open:r,defaultOpen:i,onOpenChange:a,disableHoverableContent:o,delayDuration:s}=e,c=gh(vh,e.__scopeTooltip),l=dh(t),[u,d]=y.useState(null),[f,p]=y.useState(void 0),m=Or(),h=y.useRef(0),g=o??c.disableHoverableContent,_=s??c.delayDuration,v=y.useRef(!1),[b,x]=rn({prop:r,defaultProp:i??!1,onChange:ch(e=>{e?(c.onOpen(),document.dispatchEvent(new CustomEvent(mh))):c.onClose(),a?.(e)},`onChange`),caller:vh}),S=y.useMemo(()=>b?v.current?`delayed-open`:`instant-open`:`closed`,[b]),C=y.useCallback(()=>{window.clearTimeout(h.current),h.current=0,v.current=!1,x(!0)},[x]),w=y.useCallback(()=>{window.clearTimeout(h.current),h.current=0,x(!1)},[x]),T=y.useCallback(()=>{window.clearTimeout(h.current),h.current=window.setTimeout(()=>{v.current=!0,x(!0),h.current=0},_)},[_,x]);y.useEffect(()=>()=>{h.current&&=(window.clearTimeout(h.current),0)},[]);let E=f??m;return(0,K.jsx)(Za,{...l,children:(0,K.jsx)(yh,{scope:t,contentId:E,setContentId:p,open:b,stateAttribute:S,trigger:u,onTriggerChange:d,onTriggerEnter:y.useCallback(()=>{c.isOpenDelayedRef.current?T():C()},[c.isOpenDelayedRef,T,C]),onTriggerLeave:y.useCallback(()=>{g?w():(window.clearTimeout(h.current),h.current=0)},[w,g]),onOpen:C,onClose:w,disableHoverableContent:g,children:n})})},`Tooltip`),Sh=`TooltipTrigger`,Ch=y.forwardRef(ch(function(e,t){let{__scopeTooltip:n,"aria-describedby":r,...i}=e,a=bh(Sh,n),o=gh(Sh,n),s=dh(n),c=T(t,y.useRef(null),a.onTriggerChange),l=y.useRef(!1),u=y.useRef(!1),d=y.useCallback(()=>l.current=!1,[]);return y.useEffect(()=>()=>document.removeEventListener(`pointerup`,d),[d]),(0,K.jsx)($a,{asChild:!0,...s,children:(0,K.jsx)(Y.button,{"aria-describedby":a.open?zh(r,a.contentId):r,"data-state":a.stateAttribute,...i,ref:c,onPointerMove:J(e.onPointerMove,e=>{e.pointerType!==`touch`&&!u.current&&!o.isPointerInTransitRef.current&&(a.onTriggerEnter(),u.current=!0)}),onPointerLeave:J(e.onPointerLeave,()=>{a.onTriggerLeave(),u.current=!1}),onPointerDown:J(e.onPointerDown,()=>{a.open&&a.onClose(),l.current=!0,document.addEventListener(`pointerup`,d,{once:!0})}),onFocus:J(e.onFocus,()=>{l.current||a.onOpen()}),onBlur:J(e.onBlur,a.onClose),onClick:J(e.onClick,a.onClose)})})},`TooltipTrigger`)),wh=`TooltipPortal`,[Th,Eh]=lh(wh,{forceMount:void 0}),Dh=ch(e=>{let{__scopeTooltip:t,forceMount:n,children:r,container:i}=e,a=bh(wh,t);return(0,K.jsx)(Th,{scope:t,forceMount:n,children:(0,K.jsx)(po,{present:n||a.open,children:(0,K.jsx)(co,{asChild:!0,container:i,children:r})})})},`TooltipPortal`),Oh=`TooltipContent`,kh=y.forwardRef(ch(function(e,t){let n=Eh(Oh,e.__scopeTooltip),{forceMount:r=n.forceMount,side:i=`top`,...a}=e,o=bh(Oh,e.__scopeTooltip);return(0,K.jsx)(po,{present:r||o.open,children:o.disableHoverableContent?(0,K.jsx)(Mh,{side:i,...a,ref:t}):(0,K.jsx)(Ah,{side:i,...a,ref:t})})},`TooltipContent`)),Ah=y.forwardRef(ch(function(e,t){let n=bh(Oh,e.__scopeTooltip),r=gh(Oh,e.__scopeTooltip),i=y.useRef(null),a=T(t,i),[o,s]=y.useState(null),{trigger:c,onClose:l}=n,u=i.current,{onPointerInTransitChange:d}=r,f=y.useCallback(()=>{s(null),d(!1)},[d]),p=y.useCallback((e,t)=>{let n=e.currentTarget,r={x:e.clientX,y:e.clientY},i=Ph(r,Nh(r,n.getBoundingClientRect())),a=Fh(t.getBoundingClientRect()),o=Lh([...i,...a]);s(o),d(!0)},[d]);return y.useEffect(()=>()=>f(),[f]),y.useEffect(()=>{if(c&&u){let e=ch(e=>p(e,u),`handleTriggerLeave`),t=ch(e=>p(e,c),`handleContentLeave`);return c.addEventListener(`pointerleave`,e),u.addEventListener(`pointerleave`,t),()=>{c.removeEventListener(`pointerleave`,e),u.removeEventListener(`pointerleave`,t)}}},[c,u,p,f]),y.useEffect(()=>{if(o){let e=ch(e=>{let t=e.target,n={x:e.clientX,y:e.clientY},r=c?.contains(t)||u?.contains(t),i=!Ih(n,o);r?f():i&&(f(),l())},`handleTrackPointerGrace`);return document.addEventListener(`pointermove`,e),()=>document.removeEventListener(`pointermove`,e)}},[c,u,o,l,f]),(0,K.jsx)(Mh,{...e,ref:a})},`TooltipContentHoverable`)),jh=j(`TooltipContent`),Mh=y.forwardRef(ch(function(e,t){let{__scopeTooltip:n,children:r,"aria-label":i,id:a,onEscapeKeyDown:o,onPointerDownOutside:s,...c}=e,l=bh(Oh,n),u=dh(n),{onClose:d}=l,[f,p]=y.useState(null),m=T(t,p);fr(f),y.useEffect(()=>(document.addEventListener(mh,d),()=>document.removeEventListener(mh,d)),[d]),y.useEffect(()=>{if(l.trigger){let e=ch(e=>{e.target instanceof Node&&e.target.contains(l.trigger)&&d()},`handleScroll`);return window.addEventListener(`scroll`,e,{capture:!0}),()=>window.removeEventListener(`scroll`,e,{capture:!0})}},[l.trigger,d]);let{setContentId:h}=l;return Jt(()=>(h(a),()=>{h(void 0)}),[a,h]),(0,K.jsx)(Un,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:o,onPointerDownOutside:s,onFocusOutside:e=>e.preventDefault(),onDismiss:d,children:(0,K.jsxs)(ro,{"data-state":l.stateAttribute,role:i?void 0:`tooltip`,id:i?void 0:l.contentId,...u,...c,ref:m,style:{...c.style,"--radix-tooltip-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-tooltip-content-available-width":`var(--radix-popper-available-width)`,"--radix-tooltip-content-available-height":`var(--radix-popper-available-height)`,"--radix-tooltip-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-tooltip-trigger-height":`var(--radix-popper-anchor-height)`},children:[(0,K.jsx)(jh,{children:r}),i?(0,K.jsx)(oh,{id:l.contentId,role:`tooltip`,children:i}):null]})})},`TooltipContentImpl`));function Nh(e,t){let n=Math.abs(t.top-e.y),r=Math.abs(t.bottom-e.y),i=Math.abs(t.right-e.x),a=Math.abs(t.left-e.x);switch(Math.min(n,r,i,a)){case a:return`left`;case i:return`right`;case n:return`top`;case r:return`bottom`;default:throw Error(`unreachable`)}}ch(Nh,`getExitSideFromRect`);function Ph(e,t,n=5){let r=[];switch(t){case`top`:r.push({x:e.x-n,y:e.y+n},{x:e.x+n,y:e.y+n});break;case`bottom`:r.push({x:e.x-n,y:e.y-n},{x:e.x+n,y:e.y-n});break;case`left`:r.push({x:e.x+n,y:e.y-n},{x:e.x+n,y:e.y+n});break;case`right`:r.push({x:e.x-n,y:e.y-n},{x:e.x-n,y:e.y+n})}return r}ch(Ph,`getPaddedExitPoints`);function Fh(e){let{top:t,right:n,bottom:r,left:i}=e;return[{x:i,y:t},{x:n,y:t},{x:n,y:r},{x:i,y:r}]}ch(Fh,`getPointsFromRect`);function Ih(e,t){let{x:n,y:r}=e,i=!1;for(let e=0,a=t.length-1;er!=d>r&&n<(u-c)*(r-l)/(d-l)+c&&(i=!i)}return i}ch(Ih,`isPointInPolygon`);function Lh(e){let t=e.slice();return t.sort((e,t)=>e.xt.x?1:e.yt.y)),Rh(t)}ch(Lh,`getHull`);function Rh(e){if(e.length<=1)return e.slice();let t=[];for(let n=0;n=2;){let e=t[t.length-1],n=t[t.length-2];if((e.x-n.x)*(r.y-n.y)>=(e.y-n.y)*(r.x-n.x))t.pop();else break}t.push(r)}t.pop();let n=[];for(let t=e.length-1;t>=0;t--){let r=e[t];for(;n.length>=2;){let e=n[n.length-1],t=n[n.length-2];if((e.x-t.x)*(r.y-t.y)>=(e.y-t.y)*(r.x-t.x))n.pop();else break}n.push(r)}return n.pop(),t.length===1&&n.length===1&&t[0].x===n[0].x&&t[0].y===n[0].y?t:t.concat(n)}ch(Rh,`getHullPresorted`);function zh(...e){let t=new Set;for(let n of e)if(typeof n==`string`)for(let e of String(n).trim().split(/\s+/))e&&t.add(e);return t.size>0?Array.from(t).join(` `):void 0}ch(zh,`concatAriaDescribedby`);var Bh=_h,Vh=xh,Hh=Ch,Uh=y.forwardRef(({className:e,sideOffset:t=4,...n},r)=>(0,K.jsx)(Dh,{children:(0,K.jsx)(kh,{ref:r,sideOffset:t,className:jt(`z-50 overflow-hidden rounded-md bg-primary px-3 py-1.5 text-xs text-primary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2`,e),...n})}));Uh.displayName=kh.displayName;var Wh={MODEL:`gen_ai.request.model`,MAX_TOKENS:`gen_ai.request.max_tokens`,TEMPERATURE:`gen_ai.request.temperature`,TOP_P:`gen_ai.request.top_p`,SEED:`gen_ai.request.seed`,FREQUENCY_PENALTY:`gen_ai.request.frequency_penalty`,PRESENCE_PENALTY:`gen_ai.request.presence_penalty`,STOP_SEQUENCES:`gen_ai.request.stop_sequences`,FINISH_REASONS:`gen_ai.response.finish_reasons`,RESPONSE_ID:`gen_ai.response.id`,INPUT_TOKENS:`gen_ai.usage.input_tokens`,OUTPUT_TOKENS:`gen_ai.usage.output_tokens`,INPUT_MESSAGES:`gen_ai.input.messages`,OUTPUT_MESSAGES:`gen_ai.output.messages`,SYSTEM_INSTRUCTIONS:`gen_ai.system_instructions`,OUTPUT_TYPE:`gen_ai.output.type`,TOOL_CALL_ID:`gen_ai.tool.call.id`,TOOL_NAME:`gen_ai.tool.name`,TOOL_TYPE:`gen_ai.tool.type`,TOOL_DEFINITIONS:`gen_ai.tool.definitions`,TOOL_ARGUMENTS:`gen_ai.tool.call.arguments`,TOOL_RESULT:`gen_ai.tool.call.result`,AGENT_ID:`gen_ai.agent.id`,AGENT_NAME:`gen_ai.agent.name`,AGENT_DESCRIPTION:`gen_ai.agent.description`,CONVERSATION_ID:`gen_ai.conversation.id`,WORKFLOW_ID:`workflow.id`,WORKFLOW_NAME:`workflow.name`,EXECUTOR_ID:`executor.id`,EXECUTOR_TYPE:`executor.type`};function Gh(e){return e.type===`text`}function Kh(e){return e.type===`tool_call`||e.type===`function_call`}function qh(e){return e.type===`tool_result`||e.type===`function_result`||e.type===`tool_call_response`}function Jh(e){if(!e)return[];try{return JSON.parse(e)}catch{return[]}}gp();function Yh(e){let t={system:0,user:0,assistant:0,toolCalls:0,toolResults:0,total:0};try{let n;if(typeof e==`string`)n=Jh(e);else if(Array.isArray(e))n=e;else return t;for(let e of n){if(!e||typeof e!=`object`)continue;let n=e.role,r=e.parts,i=0;if(Array.isArray(r)){for(let e of r)if(e&&typeof e==`object`){if(Gh(e)){let t=e.content||e.text||``;i+=t.length}else if(Kh(e)){let n=e.name||``,r=e.arguments||``;t.toolCalls+=n.length+r.length}else if(qh(e)){let n=e.result||e.response||``;t.toolResults+=n.length}}}n===`system`?t.system+=i:n===`user`?t.user+=i:n===`assistant`?t.assistant+=i:n===`tool`&&(t.toolResults+=i)}t.total=t.system+t.user+t.assistant+t.toolCalls+t.toolResults}catch{}return t}function Xh(e){let t=e.filter(e=>e.type===`response.trace.completed`),n=new Map;for(let e of t){if(!(`data`in e))continue;let t=e.data,r=t.response_id||`unknown`;n.has(r)||n.set(r,[]),n.get(r).push(t)}let r=[];for(let[e,t]of n){let n=0,i=0,a,o=Date.now()/1e3,s,c=0,l={system:0,user:0,assistant:0,toolCalls:0,toolResults:0,total:0};for(let e of t){let t=e.attributes||{},r=t[Wh.INPUT_TOKENS],u=t[Wh.OUTPUT_TOKENS];r!==void 0&&(n+=Number(r)),u!==void 0&&(i+=Number(u)),t[Wh.MODEL]&&(a=String(t[Wh.MODEL])),e.start_time&&e.start_time0||i>0)&&r.push({response_id:e,timestamp:o,input_tokens:n,output_tokens:i,total_tokens:n+i,model:a,entity_id:s,duration_ms:c,composition:l})}return r.sort((e,t)=>e.timestamp-t.timestamp),r}function Zh(e){if(e.length===0)return{totalInput:0,totalOutput:0,totalTokens:0,avgInput:0,avgOutput:0,avgTotal:0,peakInput:0,peakOutput:0,peakTotal:0,turnCount:0};let t=e.reduce((e,t)=>e+t.input_tokens,0),n=e.reduce((e,t)=>e+t.output_tokens,0),r=t+n,i=Math.max(...e.map(e=>e.input_tokens)),a=Math.max(...e.map(e=>e.output_tokens)),o=Math.max(...e.map(e=>e.total_tokens));return{totalInput:t,totalOutput:n,totalTokens:r,avgInput:Math.round(t/e.length),avgOutput:Math.round(n/e.length),avgTotal:Math.round(r/e.length),peakInput:i,peakOutput:a,peakTotal:o,turnCount:e.length}}function Qh(e){return e.reduce((e,t)=>({system:e.system+t.composition.system,user:e.user+t.composition.user,assistant:e.assistant+t.composition.assistant,toolCalls:e.toolCalls+t.composition.toolCalls,toolResults:e.toolResults+t.composition.toolResults,total:e.total+t.composition.total}),{system:0,user:0,assistant:0,toolCalls:0,toolResults:0,total:0})}function $h(e){return e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e)}var eg={input:`bg-blue-500 dark:bg-blue-600`,output:`bg-emerald-500 dark:bg-emerald-600`,system:`bg-purple-500 dark:bg-purple-600`,user:`bg-blue-500 dark:bg-blue-600`,assistant:`bg-emerald-500 dark:bg-emerald-600`,toolCalls:`bg-amber-500 dark:bg-amber-600`,toolResults:`bg-orange-500 dark:bg-orange-600`};function tg({segments:e,maxValue:t,height:n=20,renderLabel:r}){let i=e.reduce((e,t)=>e+t.value,0);if(i===0)return(0,K.jsx)(`div`,{className:`flex items-center gap-2 w-full`,children:(0,K.jsx)(`div`,{className:`rounded bg-muted/30 flex-1`,style:{height:`${n}px`}})});let a=t>0?i/t*100:100,o=e.filter(e=>e.value>0).map(e=>({...e,percent:Math.round(e.value/i*100)}));return(0,K.jsxs)(`div`,{className:`flex items-center gap-2 w-full`,children:[(0,K.jsx)(`div`,{className:`relative rounded overflow-hidden bg-muted/30 flex-1`,style:{height:`${n}px`},children:(0,K.jsx)(Bh,{delayDuration:150,children:(0,K.jsx)(`div`,{className:`h-full flex transition-all duration-300`,style:{width:`${a}%`},children:o.map(e=>(0,K.jsxs)(Vh,{children:[(0,K.jsx)(Hh,{asChild:!0,children:(0,K.jsx)(`div`,{className:`h-full ${e.color} transition-all duration-150 hover:brightness-110 hover:scale-y-[1.15] origin-bottom cursor-default`,style:{width:`${e.value/i*100}%`}})}),(0,K.jsx)(Uh,{side:`top`,className:`text-xs`,children:(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,K.jsx)(`div`,{className:`w-2 h-2 rounded-sm ${e.color} flex-shrink-0`}),(0,K.jsx)(`span`,{className:`font-medium`,children:e.label}),(0,K.jsxs)(`span`,{className:`opacity-80`,children:[$h(e.value),` (`,e.percent,`%)`]})]})})]},e.key))})})}),r?.(i,e)]})}function ng(e,t){return[{key:`input`,value:e,color:eg.input,label:`Input`},{key:`output`,value:t,color:eg.output,label:`Output`}]}function rg(e){return[{key:`system`,value:e.system,color:eg.system,label:`System`},{key:`user`,value:e.user,color:eg.user,label:`User`},{key:`assistant`,value:e.assistant,color:eg.assistant,label:`Assistant`},{key:`toolCalls`,value:e.toolCalls,color:eg.toolCalls,label:`Tool Calls`},{key:`toolResults`,value:e.toolResults,color:eg.toolResults,label:`Tool Results`}]}function ig({composition:e,className:t=``}){let{system:n,user:r,assistant:i,toolCalls:a,toolResults:o,total:s}=e;if(s===0)return(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground ${t}`,children:`No composition data available`});let c=[{label:`System`,value:n,color:eg.system},{label:`User`,value:r,color:eg.user},{label:`Assistant`,value:i,color:eg.assistant},{label:`Tool Calls`,value:a,color:eg.toolCalls},{label:`Tool Results`,value:o,color:eg.toolResults}].filter(e=>e.value>0);return(0,K.jsx)(`div`,{className:`space-y-1.5 ${t}`,children:c.map(e=>{let t=Math.round(e.value/s*100);return(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-xs`,children:[(0,K.jsx)(`div`,{className:`w-2 h-2 rounded-sm ${e.color}`}),(0,K.jsx)(`span`,{className:`text-muted-foreground w-20`,children:e.label}),(0,K.jsx)(`div`,{className:`flex-1 h-3 bg-muted/30 rounded overflow-hidden`,children:(0,K.jsx)(`div`,{className:`h-full ${e.color} transition-all duration-300`,style:{width:`${t}%`}})}),(0,K.jsxs)(`span`,{className:`font-mono w-10 text-right text-muted-foreground`,children:[t,`%`]})]},e.label)})})}function ag({turn:e,index:t,maxValue:n,maxCompositionValue:r,cumulativeInput:i,cumulativeOutput:a,cumulativeComposition:o,showCumulative:s,viewMode:c}){let[l,u]=(0,y.useState)(!1),d=s?i:e.input_tokens,f=s?a:e.output_tokens,p=s?o:e.composition,m=new Date(e.timestamp*1e3).toLocaleTimeString([],{hour:`2-digit`,minute:`2-digit`,second:`2-digit`});return(0,K.jsxs)(`div`,{className:`border-b border-muted/50 last:border-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-3 py-2 px-2 hover:bg-muted/30 cursor-pointer transition-colors`,onClick:()=>u(!l),children:[(0,K.jsx)(`div`,{className:`w-6 h-6 rounded-full bg-muted flex items-center justify-center text-xs font-medium flex-shrink-0`,children:t+1}),(0,K.jsx)(`div`,{className:`flex-1 min-w-0`,children:c===`tokens`?(0,K.jsx)(tg,{segments:ng(d,f),maxValue:n,height:20,renderLabel:(e,t)=>(0,K.jsxs)(`div`,{className:`flex items-center gap-1 text-xs font-mono text-muted-foreground min-w-[80px] justify-end`,children:[(0,K.jsxs)(`span`,{className:`text-blue-600 dark:text-blue-400`,children:[`↑`,$h(t[0]?.value||0)]}),(0,K.jsx)(`span`,{children:`/`}),(0,K.jsxs)(`span`,{className:`text-emerald-600 dark:text-emerald-400`,children:[`↓`,$h(t[1]?.value||0)]})]})}):(0,K.jsx)(tg,{segments:rg(p),maxValue:r,height:20,renderLabel:e=>(0,K.jsxs)(`div`,{className:`text-xs font-mono text-muted-foreground min-w-[50px] text-right`,children:[$h(Math.round(e/4)),`~`]})})}),(0,K.jsx)(`div`,{className:`text-muted-foreground flex-shrink-0`,children:l?(0,K.jsx)(su,{className:`h-4 w-4`}):(0,K.jsx)(du,{className:`h-4 w-4`})})]}),l&&(0,K.jsx)(`div`,{className:`pb-3`,children:(0,K.jsxs)(`div`,{className:`flex items-start gap-3 px-2`,children:[(0,K.jsx)(`div`,{className:`w-6 flex justify-center flex-shrink-0`,children:(0,K.jsx)(`div`,{className:`w-px h-full bg-muted`})}),(0,K.jsx)(`div`,{className:`flex-1 min-w-0`,children:(0,K.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,K.jsx)(`div`,{className:`text-muted-foreground text-xs mt-1`,children:`└─`}),(0,K.jsxs)(`div`,{className:`flex-1 space-y-3`,children:[(0,K.jsxs)(`div`,{className:`grid grid-cols-2 gap-x-4 gap-y-1 text-xs text-muted-foreground`,children:[(0,K.jsxs)(`div`,{children:[`Time: `,(0,K.jsx)(`span`,{className:`font-mono text-foreground`,children:m})]}),(0,K.jsxs)(`div`,{children:[`Duration: `,(0,K.jsxs)(`span`,{className:`font-mono text-foreground`,children:[e.duration_ms.toFixed(0),`ms`]})]}),e.model&&(0,K.jsxs)(`div`,{children:[`Model: `,(0,K.jsx)(`span`,{className:`font-mono text-foreground`,children:e.model})]}),e.entity_id&&(0,K.jsxs)(`div`,{children:[`Entity: `,(0,K.jsx)(`span`,{className:`font-mono text-foreground`,children:e.entity_id})]})]}),c===`tokens`&&(0,K.jsxs)(`div`,{className:`flex gap-4 text-xs`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`text-blue-600 dark:text-blue-400`,children:`Input:`}),` `,(0,K.jsx)(`span`,{className:`font-mono`,children:e.input_tokens.toLocaleString()})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`text-emerald-600 dark:text-emerald-400`,children:`Output:`}),` `,(0,K.jsx)(`span`,{className:`font-mono`,children:e.output_tokens.toLocaleString()})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Total:`}),` `,(0,K.jsx)(`span`,{className:`font-mono`,children:e.total_tokens.toLocaleString()})]})]}),c===`composition`&&e.composition.total>0&&(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`div`,{className:`text-xs text-muted-foreground mb-2 flex items-center gap-1`,children:[(0,K.jsx)(td,{className:`h-3 w-3`}),`Context Composition (estimated from ~`,$h(Math.round(e.composition.total/4)),` tokens)`]}),(0,K.jsx)(ig,{composition:e.composition})]})]})]})})]})})]})}function og({label:e,value:t,icon:n,color:r=`default`}){let i={default:`text-muted-foreground`,blue:`text-blue-600 dark:text-blue-400`,green:`text-emerald-600 dark:text-emerald-400`}[r];return(0,K.jsxs)(`div`,{className:`flex items-center gap-2 p-2 bg-muted/30 rounded`,children:[(0,K.jsx)(n,{className:`h-4 w-4 ${i}`}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground truncate`,children:e}),(0,K.jsx)(`div`,{className:`font-mono text-sm font-medium`,children:t})]})]})}function sg({events:e}){let t=Q(e=>e.runtime),n=Q(e=>e.serverCapabilities.trace_retrieval),r=Q(e=>e.contextInspectorViewMode),i=Q(e=>e.setContextInspectorViewMode),a=Q(e=>e.contextInspectorCumulative),o=Q(e=>e.setContextInspectorCumulative),s=(0,y.useMemo)(()=>Xh(e),[e]),c=(0,y.useMemo)(()=>Zh(s),[s]),l=(0,y.useMemo)(()=>Qh(s),[s]),u=(0,y.useMemo)(()=>s.length===0?0:a?c.totalTokens:0,[s,a,c.totalTokens]),d=(0,y.useMemo)(()=>s.length===0?0:a?l.total:0,[s,a,l.total]),f=(0,y.useMemo)(()=>{let e=0,t=0,n={system:0,user:0,assistant:0,toolCalls:0,toolResults:0,total:0};return s.map(r=>(e+=r.input_tokens,t+=r.output_tokens,n={system:n.system+r.composition.system,user:n.user+r.composition.user,assistant:n.assistant+r.composition.assistant,toolCalls:n.toolCalls+r.composition.toolCalls,toolResults:n.toolResults+r.composition.toolResults,total:n.total+r.composition.total},{input:e,output:t,composition:{...n}}))},[s]);return s.length===0?(0,K.jsxs)(`div`,{className:`flex flex-col items-center text-center p-6 pt-9`,children:[(0,K.jsx)(tu,{className:`h-8 w-8 text-muted-foreground mb-3`}),(0,K.jsx)(`div`,{className:`text-sm font-medium mb-1`,children:`No Data`}),(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground max-w-[200px]`,children:n?`Start a conversation to inspect OpenTelemetry context from the Aspire Dashboard.`:t===`dotnet`?`Trace retrieval is not available for this server.`:(0,K.jsxs)(K.Fragment,{children:[`Run`,` `,(0,K.jsx)(`span`,{className:`font-mono bg-accent/10 px-1 rounded`,children:`devui --instrumentation`}),` `,`and start a conversation.`]})})]}):(0,K.jsxs)(`div`,{className:`h-full flex flex-col`,children:[(0,K.jsxs)(`div`,{className:`p-3 border-b flex-shrink-0 space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(tu,{className:`h-4 w-4`}),(0,K.jsx)(`span`,{className:`font-medium text-sm`,children:`Context Inspector`}),(0,K.jsxs)(Ft,{variant:`outline`,className:`text-xs`,children:[s.length,` turn`,s.length===1?``:`s`]})]}),(0,K.jsxs)(`label`,{className:`flex items-center gap-1.5 text-xs text-muted-foreground cursor-pointer`,children:[(0,K.jsx)(nh,{checked:a,onCheckedChange:e=>o(e===!0),className:`h-3.5 w-3.5`}),(0,K.jsx)(`span`,{children:`Cumulative`})]})]}),(0,K.jsxs)(`div`,{className:`flex items-center bg-muted rounded-md p-1`,children:[(0,K.jsx)(`button`,{onClick:()=>i(`tokens`),className:`flex-1 px-3 py-1.5 text-xs rounded transition-colors ${r===`tokens`?`bg-background shadow-sm font-medium`:`text-muted-foreground hover:text-foreground`}`,children:`Tokens`}),(0,K.jsx)(`button`,{onClick:()=>i(`composition`),className:`flex-1 px-3 py-1.5 text-xs rounded transition-colors ${r===`composition`?`bg-background shadow-sm font-medium`:`text-muted-foreground hover:text-foreground`}`,children:`Composition`})]}),(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground`,children:r===`tokens`?`Token usage per turn`:`Context breakdown by message type (chars)`})]}),(0,K.jsx)(mm,{className:`flex-1`,children:(0,K.jsxs)(`div`,{className:`p-3 space-y-4`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-4 text-xs px-1 flex-wrap`,children:[r===`tokens`?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,K.jsx)(`div`,{className:`w-3 h-3 rounded ${eg.input}`}),(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Input (↑)`})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,K.jsx)(`div`,{className:`w-3 h-3 rounded ${eg.output}`}),(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Output (↓)`})]})]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,K.jsx)(`div`,{className:`w-2.5 h-2.5 rounded-sm ${eg.system}`}),(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`System`})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,K.jsx)(`div`,{className:`w-2.5 h-2.5 rounded-sm ${eg.user}`}),(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`User`})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,K.jsx)(`div`,{className:`w-2.5 h-2.5 rounded-sm ${eg.assistant}`}),(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Assistant`})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,K.jsx)(`div`,{className:`w-2.5 h-2.5 rounded-sm ${eg.toolCalls}`}),(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Tools`})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,K.jsx)(`div`,{className:`w-2.5 h-2.5 rounded-sm ${eg.toolResults}`}),(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Results`})]})]}),(0,K.jsx)(`div`,{className:`flex-1`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-1 text-muted-foreground`,children:[(0,K.jsx)(td,{className:`h-3 w-3`}),(0,K.jsx)(`span`,{children:`Click for details`})]})]}),(0,K.jsx)(`div`,{className:`border rounded-lg overflow-hidden`,children:s.map((e,t)=>(0,K.jsx)(ag,{turn:e,index:t,maxValue:u,maxCompositionValue:d,cumulativeInput:f[t]?.input||0,cumulativeOutput:f[t]?.output||0,cumulativeComposition:f[t]?.composition||e.composition,showCumulative:a,viewMode:r},e.response_id))}),(0,K.jsxs)(`div`,{className:`border rounded-lg overflow-hidden`,children:[(0,K.jsx)(`div`,{className:`p-3 bg-muted/30 border-b`,children:(0,K.jsx)(`span`,{className:`text-xs font-medium`,children:`Session Summary`})}),(0,K.jsxs)(`div`,{className:`p-3 space-y-3`,children:[(0,K.jsxs)(`div`,{className:`grid grid-cols-3 gap-2`,children:[(0,K.jsx)(og,{label:`Total Tokens`,value:$h(c.totalTokens),icon:ad}),(0,K.jsx)(og,{label:`Input`,value:$h(c.totalInput),icon:tu,color:`blue`}),(0,K.jsx)(og,{label:`Output`,value:$h(c.totalOutput),icon:tu,color:`green`})]}),s.length>1&&(0,K.jsxs)(`div`,{className:`grid grid-cols-2 gap-x-4 gap-y-1 text-xs pt-2 border-t border-muted/50`,children:[(0,K.jsxs)(`div`,{className:`flex justify-between`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Avg per turn:`}),(0,K.jsx)(`span`,{className:`font-mono`,children:$h(c.avgTotal)})]}),(0,K.jsxs)(`div`,{className:`flex justify-between`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Peak turn:`}),(0,K.jsx)(`span`,{className:`font-mono`,children:$h(c.peakTotal)})]}),(0,K.jsxs)(`div`,{className:`flex justify-between`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Avg input:`}),(0,K.jsx)(`span`,{className:`font-mono text-blue-600 dark:text-blue-400`,children:$h(c.avgInput)})]}),(0,K.jsxs)(`div`,{className:`flex justify-between`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Avg output:`}),(0,K.jsx)(`span`,{className:`font-mono text-emerald-600 dark:text-emerald-400`,children:$h(c.avgOutput)})]})]}),l.total>0&&(0,K.jsx)(`div`,{className:`pt-3 border-t border-muted/50`,children:(0,K.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,K.jsx)(`div`,{className:`text-muted-foreground text-xs mt-0.5`,children:`└─`}),(0,K.jsxs)(`div`,{className:`flex-1`,children:[(0,K.jsxs)(`div`,{className:`text-xs text-muted-foreground mb-2 flex items-center gap-1`,children:[(0,K.jsx)(td,{className:`h-3 w-3`}),`Total Composition (all turns)`]}),(0,K.jsx)(ig,{composition:l})]})]})})]})]})]})})]})}gp();function cg(){return(0,K.jsx)(`div`,{className:`flex items-center gap-2 py-3 px-2`,children:(0,K.jsx)(`div`,{className:`flex-1 border-t border-border/50`})})}function lg(e){let t=[],n=!1;for(let r=0;r100&&(i.includes(` + `);let t=e.state[s];if(t==null)return;JSON.stringify(i.getState())!==JSON.stringify(t)&&p(t);return}rp(i)&&i.dispatch(e)});case`DISPATCH`:switch(e.payload.type){case`RESET`:return p(m),s===void 0?u?.init(i.getState()):u?.init(ap(c.name));case`COMMIT`:if(s===void 0){u?.init(i.getState());return}return u?.init(ap(c.name));case`ROLLBACK`:return fp(e.state,e=>{if(s===void 0){p(e),u?.init(i.getState());return}p(e[s]),u?.init(ap(c.name))});case`JUMP_TO_STATE`:case`JUMP_TO_ACTION`:return fp(e.state,e=>{if(s===void 0){p(e);return}JSON.stringify(i.getState())!==JSON.stringify(e[s])&&p(e[s])});case`IMPORT_STATE`:{let{nextLiftedState:t}=e.payload,n=t.computedStates.slice(-1)[0]?.state;if(!n)return;p(s===void 0?n:n[s]),u?.send(null,t);return}case`PAUSE_RECORDING`:return f=!f}return}}),m},dp=up,fp=(e,t)=>{let n;try{n=JSON.parse(e)}catch(e){console.error(`[zustand devtools middleware] Could not parse the received json`,e)}n!==void 0&&t(n)},pp=e=>t=>{try{let n=e(t);return n instanceof Promise?n:{then(e){return pp(e)(n)},catch(e){return this}}}catch(e){return{then(e){return this},catch(t){return pp(t)(e)}}}},mp=(e,t)=>(n,r,i)=>{let a={storage:np(()=>window.localStorage),partialize:e=>e,version:0,merge:(e,t)=>({...t,...e}),...t},o=!1,s=0,c=new Set,l=new Set,u=a.storage;if(!u)return e((...e)=>{console.warn(`[zustand persist middleware] Unable to update item '${a.name}', the given storage is currently unavailable.`),n(...e)},r,i);let d=()=>{let e=a.partialize({...r()});return u.setItem(a.name,{state:e,version:a.version})},f=i.setState;i.setState=(e,t)=>(f(e,t),d());let p=e((...e)=>(n(...e),d()),r,i);i.getInitialState=()=>p;let m,h=()=>{if(!u)return;let e=++s;o=!1,c.forEach(e=>e(r()??p));let t=a.onRehydrateStorage?.call(a,r()??p)||void 0;return pp(u.getItem.bind(u))(a.name).then(e=>{if(e){if(typeof e.version==`number`&&e.version!==a.version){if(a.migrate){let t=a.migrate(e.state,e.version);return t instanceof Promise?t.then(e=>[!0,e]):[!0,t]}console.error(`State loaded from storage couldn't be migrated since no migrate function was provided`)}else return[!1,e.state]}return[!1,void 0]}).then(t=>{if(e!==s)return;let[i,o]=t;if(m=a.merge(o,r()??p),n(m,!0),i)return d()}).then(()=>{e===s&&(t?.(r(),void 0),m=r(),o=!0,l.forEach(e=>e(m)))}).catch(n=>{e===s&&t?.(void 0,n)})};return i.persist={setOptions:e=>{a={...a,...e},e.storage&&(u=e.storage)},clearStorage:()=>{++s,u?.removeItem(a.name)},getOptions:()=>a,rehydrate:()=>h(),hasHydrated:()=>o,onHydrate:e=>(c.add(e),()=>{c.delete(e)}),onFinishHydration:e=>(l.add(e),()=>{l.delete(e)})},a.skipHydration||h(),m||p},hp=mp}));function _p(e){if(e.type!==`response.output_text.delta`||!(`delta`in e)||typeof e.delta!=`string`||e.delta.length<=yp)return e;let t=e.delta.length-yp;return{...e,delta:`${e.delta.slice(0,yp)}\n...[${t} chars omitted from debug view]`}}var vp,yp,bp,Q,xp=o((()=>{ep(),gp(),vp=1e3,yp=2048,bp={enabled:!0,maxDurationSeconds:60,maxPayloadBytes:10485760,sampleRate:16e3,echoCancellation:!0,noiseSuppression:!0,autoGainControl:!0,previewBeforeSend:!0,autoStopOnSilence:!1,silenceThreshold:.03,silenceDurationMs:1500,minimumRecordingMs:1e3,autoPlayAgentAudio:!1},Q=Qf()(dp(hp(e=>({agents:[],workflows:[],entities:[],selectedAgent:void 0,isLoadingEntities:!0,entityError:null,currentConversation:void 0,availableConversations:[],chatItems:[],isStreaming:!1,isSubmitting:!1,loadingConversations:!1,inputValue:``,attachments:[],conversationUsage:{total_tokens:0,message_count:0},pendingApprovals:[],currentSession:void 0,availableSessions:[],sessionCheckpoints:[],loadingSessions:!1,loadingCheckpoints:!1,showDebugPanel:!0,debugPanelMinimized:!1,debugPanelWidth:320,debugEvents:[],isResizing:!1,showToolCalls:!0,streamingEnabled:!0,audioInput:{...bp},debugPanelTab:`events`,debugTraceSubTab:`spans`,contextInspectorViewMode:`tokens`,contextInspectorCumulative:!1,showAboutModal:!1,showGallery:!1,showDeployModal:!1,showEntityNotFoundToast:!1,toasts:[],oaiMode:{enabled:!1,model:`gpt-4o-mini`},uiMode:`developer`,runtime:`python`,serverCapabilities:{instrumentation:!1,trace_retrieval:!1,openai_proxy:!1,deployment:!1},authRequired:!1,serverVersion:null,isDeploying:!1,deploymentLogs:[],lastDeployment:null,azureDeploymentEnabled:!1,setAgents:t=>e({agents:t}),setWorkflows:t=>e({workflows:t}),setEntities:t=>e({entities:t}),setSelectedAgent:t=>e({selectedAgent:t}),addAgent:t=>e(e=>({agents:[...e.agents,t]})),addWorkflow:t=>e(e=>({workflows:[...e.workflows,t]})),updateAgent:t=>e(e=>({agents:e.agents.map(e=>e.id===t.id?t:e),selectedAgent:e.selectedAgent?.id===t.id&&e.selectedAgent.type===`agent`?t:e.selectedAgent})),updateWorkflow:t=>e(e=>({workflows:e.workflows.map(e=>e.id===t.id?t:e),selectedAgent:e.selectedAgent?.id===t.id&&e.selectedAgent.type===`workflow`?t:e.selectedAgent})),removeEntity:t=>e(e=>({agents:e.agents.filter(e=>e.id!==t),workflows:e.workflows.filter(e=>e.id!==t),selectedAgent:e.selectedAgent?.id===t?void 0:e.selectedAgent})),setEntityError:t=>e({entityError:t}),setIsLoadingEntities:t=>e({isLoadingEntities:t}),setCurrentConversation:t=>e({currentConversation:t}),setAvailableConversations:t=>e({availableConversations:t}),setChatItems:t=>e({chatItems:t}),setIsStreaming:t=>e({isStreaming:t}),setIsSubmitting:t=>e({isSubmitting:t}),setLoadingConversations:t=>e({loadingConversations:t}),setInputValue:t=>e({inputValue:t}),setAttachments:t=>e({attachments:t}),updateConversationUsage:t=>e(e=>({conversationUsage:{total_tokens:e.conversationUsage.total_tokens+t,message_count:e.conversationUsage.message_count+1}})),setPendingApprovals:t=>e({pendingApprovals:t}),setCurrentSession:t=>e({currentSession:t}),setAvailableSessions:t=>e({availableSessions:t}),setSessionCheckpoints:t=>e({sessionCheckpoints:t}),setLoadingSessions:t=>e({loadingSessions:t}),setLoadingCheckpoints:t=>e({loadingCheckpoints:t}),addSession:t=>e(e=>({availableSessions:[t,...e.availableSessions]})),removeSession:t=>e(e=>({availableSessions:e.availableSessions.filter(e=>e.conversation_id!==t),currentSession:e.currentSession?.conversation_id===t?void 0:e.currentSession,sessionCheckpoints:e.currentSession?.conversation_id===t?[]:e.sessionCheckpoints})),setShowDebugPanel:t=>e({showDebugPanel:t}),setDebugPanelMinimized:t=>e({debugPanelMinimized:t}),setDebugPanelWidth:t=>e({debugPanelWidth:t}),setShowToolCalls:t=>e({showToolCalls:t}),setStreamingEnabled:t=>e({streamingEnabled:t}),setAudioInput:t=>e(e=>({audioInput:{...bp,...e.audioInput,...t}})),addDebugEvent:t=>e(e=>{let n=_p(t),r=Math.floor(Date.now()/1e3),i=(e.debugEvents.length>0?e.debugEvents[e.debugEvents.length-1]:null)?._uiTimestamp??0,a=Math.max(r,i+1);return{debugEvents:[...e.debugEvents.length>=vp?e.debugEvents.slice(-999):e.debugEvents,{...n,_uiTimestamp:`created_at`in n&&n.created_at?n.created_at:a}]}}),clearDebugEvents:()=>e({debugEvents:[]}),setIsResizing:t=>e({isResizing:t}),setDebugPanelTab:t=>e({debugPanelTab:t}),setDebugTraceSubTab:t=>e({debugTraceSubTab:t}),setContextInspectorViewMode:t=>e({contextInspectorViewMode:t}),setContextInspectorCumulative:t=>e({contextInspectorCumulative:t}),setShowAboutModal:t=>e({showAboutModal:t}),setShowGallery:t=>e({showGallery:t}),setShowDeployModal:t=>e({showDeployModal:t}),setShowEntityNotFoundToast:t=>e({showEntityNotFoundToast:t}),addToast:t=>e(e=>({toasts:[...e.toasts,{id:`toast-${Date.now()}-${Math.random().toString(36).substr(2,9)}`,type:t.type||`info`,duration:t.duration||4e3,...t}]})),removeToast:t=>e(e=>({toasts:e.toasts.filter(e=>e.id!==t)})),setOAIMode:t=>e(e=>t.enabled&&!e.oaiMode.enabled||!t.enabled&&e.oaiMode.enabled?(Object.keys(localStorage).forEach(e=>{e.startsWith(`devui_convs_`)&&localStorage.removeItem(e)}),{oaiMode:t,currentConversation:void 0,availableConversations:[],chatItems:[],inputValue:``,attachments:[],conversationUsage:{total_tokens:0,message_count:0},isStreaming:!1,isSubmitting:!1,pendingApprovals:[],debugEvents:[]}):{oaiMode:t}),toggleOAIMode:()=>e(e=>{let t=!e.oaiMode.enabled;return{oaiMode:{...e.oaiMode,enabled:t},currentConversation:void 0,availableConversations:[],chatItems:[],inputValue:``,attachments:[],conversationUsage:{total_tokens:0,message_count:0},isStreaming:!1,isSubmitting:!1,pendingApprovals:[],debugEvents:[]}}),setServerMeta:t=>e({uiMode:t.uiMode,runtime:t.runtime,serverCapabilities:t.capabilities,authRequired:t.authRequired,serverVersion:t.version||null}),startDeployment:()=>e({isDeploying:!0,deploymentLogs:[],lastDeployment:null}),addDeploymentLog:t=>e(e=>({deploymentLogs:[...e.deploymentLogs,t]})),setDeploymentResult:t=>e({isDeploying:!1,lastDeployment:t}),stopDeployment:()=>e({isDeploying:!1}),clearDeploymentState:()=>e({isDeploying:!1,deploymentLogs:[],lastDeployment:null}),setAzureDeploymentEnabled:t=>e({azureDeploymentEnabled:t}),selectEntity:t=>{e({selectedAgent:t,currentConversation:void 0,availableConversations:[],chatItems:[],inputValue:``,attachments:[],conversationUsage:{total_tokens:0,message_count:0},isStreaming:!1,isSubmitting:!1,pendingApprovals:[],currentSession:void 0,availableSessions:[],sessionCheckpoints:[],debugEvents:[]});let n=new URL(window.location.href);n.searchParams.set(`entity_id`,t.id),window.history.pushState({},``,n)}}),{name:`devui-storage`,merge:(e,t)=>{let n={...t,...e&&typeof e==`object`?e:{}};return{...n,audioInput:{...bp,...n.audioInput}}},partialize:e=>({showDebugPanel:e.showDebugPanel,debugPanelMinimized:e.debugPanelMinimized,debugPanelWidth:e.debugPanelWidth,showToolCalls:e.showToolCalls,streamingEnabled:e.streamingEnabled,audioInput:e.audioInput,oaiMode:e.oaiMode,azureDeploymentEnabled:e.azureDeploymentEnabled,debugPanelTab:e.debugPanelTab,debugTraceSubTab:e.debugTraceSubTab,contextInspectorViewMode:e.contextInspectorViewMode,contextInspectorCumulative:e.contextInspectorCumulative})}),{name:`DevUI Store`}))})),Sp=c({useDevUIStore:()=>Q}),Cp=o((()=>{xp()}));Cp();function wp({agents:e,workflows:t,entities:n,selectedItem:r,onSelect:i,onBrowseGallery:a,isLoading:o=!1,onSettingsClick:s}){let{oaiMode:c,serverVersion:l}=Q();return(0,K.jsxs)(`header`,{className:`flex h-14 items-center gap-4 border-b px-4`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 font-semibold`,children:[(0,K.jsxs)(`svg`,{width:`24`,height:`24`,viewBox:`0 0 805 805`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,className:`flex-shrink-0`,children:[(0,K.jsx)(`path`,{d:`M402.488 119.713C439.197 119.713 468.955 149.472 468.955 186.18C468.955 192.086 471.708 197.849 476.915 200.635L546.702 237.977C555.862 242.879 566.95 240.96 576.092 236.023C585.476 230.955 596.218 228.078 607.632 228.078C644.341 228.078 674.098 257.836 674.099 294.545C674.099 316.95 663.013 336.765 646.028 348.806C637.861 354.595 631.412 363.24 631.412 373.251V430.818C631.412 440.83 637.861 449.475 646.028 455.264C663.013 467.305 674.099 487.121 674.099 509.526C674.099 546.235 644.341 575.994 607.632 575.994C598.598 575.994 589.985 574.191 582.133 570.926C573.644 567.397 563.91 566.393 555.804 570.731L469.581 616.867C469.193 617.074 468.955 617.479 468.955 617.919C468.955 654.628 439.197 684.386 402.488 684.386C365.779 684.386 336.021 654.628 336.021 617.919C336.021 616.802 335.423 615.765 334.439 615.238L249.895 570C241.61 565.567 231.646 566.713 223.034 570.472C214.898 574.024 205.914 575.994 196.47 575.994C159.761 575.994 130.002 546.235 130.002 509.526C130.002 486.66 141.549 466.49 159.13 454.531C167.604 448.766 174.349 439.975 174.349 429.726V372.538C174.349 362.289 167.604 353.498 159.13 347.734C141.549 335.774 130.002 315.604 130.002 292.738C130.002 256.029 159.761 226.271 196.47 226.271C208.223 226.271 219.263 229.322 228.843 234.674C238.065 239.827 249.351 241.894 258.666 236.91L328.655 199.459C333.448 196.895 336.021 191.616 336.021 186.18C336.021 149.471 365.779 119.713 402.488 119.713ZM475.716 394.444C471.337 396.787 468.955 401.586 468.955 406.552C468.955 429.68 457.142 450.048 439.221 461.954C430.571 467.7 423.653 476.574 423.653 486.959V537.511C423.653 547.896 430.746 556.851 439.379 562.622C449 569.053 461.434 572.052 471.637 566.592L527.264 536.826C536.887 531.677 541.164 520.44 541.164 509.526C541.164 485.968 553.42 465.272 571.904 453.468C580.846 447.757 588.054 438.749 588.054 428.139V371.427C588.054 363.494 582.671 356.676 575.716 352.862C569.342 349.366 561.663 348.454 555.253 351.884L475.716 394.444ZM247.992 349.841C241.997 346.633 234.806 347.465 228.873 350.785C222.524 354.337 217.706 360.639 217.706 367.915V429.162C217.706 439.537 224.611 448.404 233.248 454.152C251.144 466.062 262.937 486.417 262.937 509.526C262.937 519.654 267.026 529.991 275.955 534.769L334.852 566.284C344.582 571.49 356.362 568.81 365.528 562.667C373.735 557.166 380.296 548.643 380.296 538.764V486.305C380.296 476.067 373.564 467.282 365.103 461.516C347.548 449.552 336.021 429.398 336.021 406.552C336.021 400.967 333.389 395.536 328.465 392.902L247.992 349.841ZM270.019 280.008C265.421 282.469 262.936 287.522 262.937 292.738C262.937 293.308 262.929 293.876 262.915 294.443C262.615 306.354 266.961 318.871 277.466 324.492L334.017 354.751C344.13 360.163 356.442 357.269 366.027 350.969C376.495 344.088 389.024 340.085 402.488 340.085C416.203 340.085 428.947 344.239 439.532 351.357C449.163 357.834 461.63 360.861 471.864 355.385L526.625 326.083C537.106 320.474 541.458 307.999 541.182 296.115C541.17 295.593 541.164 295.069 541.164 294.545C541.164 288.551 538.376 282.696 533.091 279.868L463.562 242.664C454.384 237.753 443.274 239.688 434.123 244.65C424.716 249.75 413.941 252.647 402.488 252.647C390.83 252.647 379.873 249.646 370.348 244.373C361.148 239.281 349.917 237.256 340.646 242.217L270.019 280.008Z`,fill:`url(#paint0_linear_510_1294)`}),(0,K.jsx)(`defs`,{children:(0,K.jsxs)(`linearGradient`,{id:`paint0_linear_510_1294`,x1:`255.628`,y1:`-34.3245`,x2:`618.483`,y2:`632.032`,gradientUnits:`userSpaceOnUse`,children:[(0,K.jsx)(`stop`,{stopColor:`#D59FFF`}),(0,K.jsx)(`stop`,{offset:`1`,stopColor:`#8562C5`})]})})]}),`Dev UI`,l&&(0,K.jsxs)(`span`,{className:`text-xs text-muted-foreground ml-1`,children:[`v`,l]}),c.enabled&&(0,K.jsxs)(Ft,{variant:`secondary`,className:`gap-1 ml-2`,children:[(0,K.jsx)(bf,{className:`h-3 w-3`}),`OpenAI: `,c.model]})]}),!c.enabled&&(0,K.jsx)(kf,{agents:e,workflows:t,entities:n,selectedItem:r,onSelect:i,onBrowseGallery:a,isLoading:o}),(0,K.jsx)(`div`,{className:`flex-1`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2 ml-auto`,children:[(0,K.jsx)(Wf,{}),(0,K.jsx)(q,{variant:`ghost`,size:`sm`,onClick:e=>{e.stopPropagation(),s?.()},children:(0,K.jsx)(Zd,{className:`h-4 w-4`})})]})]})}var Tp=Object.defineProperty,Ep=(e,t)=>Tp(e,`name`,{value:t,configurable:!0});function Dp(e,[t,n]){return Math.min(n,Math.max(t,e))}Ep(Dp,`clamp`);var Op=Object.defineProperty,kp=(e,t)=>Op(e,`name`,{value:t,configurable:!0});function Ap(e,t){return y.useReducer((e,n)=>t[e][n]??e,e)}kp(Ap,`useStateMachine`);var jp={Auto:`auto`,Always:`always`,Scroll:`scroll`,Hover:`hover`},Mp={Vertical:`vertical`,Horizontal:`horizontal`},Np={LTR:`ltr`,RTL:`rtl`},Pp=`ScrollArea`,[Fp,Ip]=Kt(Pp),[Lp,Rp]=Fp(Pp),zp=y.forwardRef(kp(function(e,t){let{__scopeScrollArea:n,type:r=jp.Hover,dir:i,scrollHideDelay:a=600,...o}=e,[s,c]=y.useState(null),[l,u]=y.useState(null),[d,f]=y.useState(null),[p,m]=y.useState(null),[h,g]=y.useState(null),[_,v]=y.useState(0),[b,x]=y.useState(0),[S,C]=y.useState(!1),[w,E]=y.useState(!1),D=T(t,c),O=jn(i);return(0,K.jsx)(Lp,{scope:n,type:r,dir:O,scrollHideDelay:a,scrollArea:s,viewport:l,onViewportChange:u,content:d,onContentChange:f,scrollbarX:p,onScrollbarXChange:m,scrollbarXEnabled:S,onScrollbarXEnabledChange:C,scrollbarY:h,onScrollbarYChange:g,scrollbarYEnabled:w,onScrollbarYEnabledChange:E,onCornerWidthChange:v,onCornerHeightChange:x,children:(0,K.jsx)(Y.div,{dir:O,...o,ref:D,style:{position:`relative`,"--radix-scroll-area-corner-width":_+`px`,"--radix-scroll-area-corner-height":b+`px`,...e.style}})})},`ScrollArea`)),Bp=`ScrollAreaViewport`,Vp=j(Bp),Hp=y.forwardRef(kp(function(e,t){let{__scopeScrollArea:n,children:r,nonce:i,disableImplicitContentElement:a,...o}=e,s=Rp(Bp,n),c=T(t,y.useRef(null),s.onViewportChange),l=y.isValidElement(r);return(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(Up,{nonce:i}),(0,K.jsx)(Y.div,{"data-radix-scroll-area-viewport":``,...o,ref:c,style:{overflowX:s.scrollbarXEnabled?`scroll`:`hidden`,overflowY:s.scrollbarYEnabled?`scroll`:`hidden`,...e.style},children:a?r:l?(0,K.jsx)(Vp,{child:r,children:e=>(0,K.jsx)(Gp,{__scopeScrollArea:n,children:e})}):(0,K.jsx)(Vp,{children:(0,K.jsx)(Gp,{__scopeScrollArea:n,children:r})})})]})},`ScrollAreaViewport`)),Up=y.memo(kp(function({nonce:e}){return(0,K.jsx)(`style`,{dangerouslySetInnerHTML:{__html:`[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}`},nonce:e})},`ScrollAreaViewportStyle`),(e,t)=>e.nonce===t.nonce),Wp=`ScrollAreaContent`,Gp=y.forwardRef(kp(function(e,t){let{__scopeScrollArea:n,children:r,...i}=e,a=T(t,Rp(Wp,n).onContentChange);return(0,K.jsx)(Y.div,{...i,ref:a,style:{minWidth:`100%`,display:`table`,...e.style},children:r})},`ScrollAreaContent`)),Kp=`ScrollAreaScrollbar`,qp=y.forwardRef(kp(function(e,t){let{forceMount:n,...r}=e,i=Rp(Kp,e.__scopeScrollArea),{onScrollbarXEnabledChange:a,onScrollbarYEnabledChange:o}=i,s=e.orientation===Mp.Horizontal;return y.useEffect(()=>(s?a(!0):o(!0),()=>{s?a(!1):o(!1)}),[s,a,o]),i.type===jp.Hover?(0,K.jsx)(Jp,{...r,ref:t,forceMount:n}):i.type===jp.Scroll?(0,K.jsx)(Yp,{...r,ref:t,forceMount:n}):i.type===jp.Auto?(0,K.jsx)(Xp,{...r,ref:t,forceMount:n}):i.type===jp.Always?(0,K.jsx)(Zp,{...r,ref:t,"data-state":`visible`}):null},`ScrollAreaScrollbar`)),Jp=y.forwardRef(kp(function(e,t){let{forceMount:n,...r}=e,i=Rp(Kp,e.__scopeScrollArea),[a,o]=y.useState(!1);return y.useEffect(()=>{let e=i.scrollArea,t=0;if(e){let n=kp(()=>{window.clearTimeout(t),o(!0)},`handlePointerEnter`),r=kp(()=>{t=window.setTimeout(()=>o(!1),i.scrollHideDelay)},`handlePointerLeave`);return e.addEventListener(`pointerenter`,n),e.addEventListener(`pointerleave`,r),()=>{window.clearTimeout(t),e.removeEventListener(`pointerenter`,n),e.removeEventListener(`pointerleave`,r)}}},[i.scrollArea,i.scrollHideDelay]),(0,K.jsx)(po,{present:n||a,children:(0,K.jsx)(Xp,{"data-state":a?`visible`:`hidden`,...r,ref:t})})},`ScrollAreaScrollbarHover`)),Yp=y.forwardRef(kp(function(e,t){let{forceMount:n,...r}=e,i=Rp(Kp,e.__scopeScrollArea),a=e.orientation===Mp.Horizontal,o=_m(()=>c(`SCROLL_END`),100),[s,c]=Ap(`hidden`,{hidden:{SCROLL:`scrolling`},scrolling:{SCROLL_END:`idle`,POINTER_ENTER:`interacting`},interacting:{SCROLL:`interacting`,POINTER_LEAVE:`idle`},idle:{HIDE:`hidden`,SCROLL:`scrolling`,POINTER_ENTER:`interacting`}});return y.useEffect(()=>{if(s===`idle`){let e=window.setTimeout(()=>c(`HIDE`),i.scrollHideDelay);return()=>window.clearTimeout(e)}},[s,i.scrollHideDelay,c]),y.useEffect(()=>{let e=i.viewport,t=a?`scrollLeft`:`scrollTop`;if(e){let n=e[t],r=kp(()=>{let r=e[t];n!==r&&(c(`SCROLL`),o()),n=r},`handleScroll`);return e.addEventListener(`scroll`,r),()=>e.removeEventListener(`scroll`,r)}},[i.viewport,a,c,o]),(0,K.jsx)(po,{present:n||s!==`hidden`,children:(0,K.jsx)(Zp,{"data-state":s===`hidden`?`hidden`:`visible`,...r,ref:t,onPointerEnter:J(e.onPointerEnter,()=>c(`POINTER_ENTER`)),onPointerLeave:J(e.onPointerLeave,()=>c(`POINTER_LEAVE`))})})},`ScrollAreaScrollbarScroll`)),Xp=y.forwardRef(kp(function(e,t){let n=Rp(Kp,e.__scopeScrollArea),{forceMount:r,...i}=e,[a,o]=y.useState(!1),s=e.orientation===Mp.Horizontal,c=_m(()=>{if(n.viewport){let e=n.viewport.offsetWidth0&&l<1,onThumbChange:kp(e=>a.current=e,`onThumbChange`),onThumbPointerUp:kp(()=>o.current=0,`onThumbPointerUp`),onThumbPointerDown:kp(e=>o.current=e,`onThumbPointerDown`)};function d(e,t){return fm(e,o.current,s,t)}return kp(d,`getScrollPosition`),n===Mp.Horizontal?(0,K.jsx)(Qp,{...u,ref:t,onThumbPositionChange:()=>{if(i.viewport&&a.current){let e=i.viewport.scrollLeft,t=pm(e,s,i.dir);a.current.style.transform=`translate3d(${t}px, 0, 0)`}},onWheelScroll:e=>{i.viewport&&(i.viewport.scrollLeft=e)},onDragScroll:e=>{i.viewport&&(i.viewport.scrollLeft=d(e,i.dir))}}):n===Mp.Vertical?(0,K.jsx)($p,{...u,ref:t,onThumbPositionChange:()=>{if(i.viewport&&a.current){let e=i.viewport.scrollTop,t=pm(e,s);a.current.style.transform=`translate3d(0, ${t}px, 0)`}},onWheelScroll:e=>{i.viewport&&(i.viewport.scrollTop=e)},onDragScroll:e=>{i.viewport&&(i.viewport.scrollTop=d(e))}}):null},`ScrollAreaScrollbarVisible`)),Qp=y.forwardRef(kp(function(e,t){let{sizes:n,onSizesChange:r,...i}=e,a=Rp(Kp,e.__scopeScrollArea),[o,s]=y.useState(),c=y.useRef(null),l=T(t,c,a.onScrollbarXChange);return y.useEffect(()=>{c.current&&s(getComputedStyle(c.current))},[c]),(0,K.jsx)(nm,{"data-orientation":`horizontal`,...i,ref:l,sizes:n,style:{bottom:0,left:a.dir===Np.RTL?`var(--radix-scroll-area-corner-width)`:0,right:a.dir===Np.LTR?`var(--radix-scroll-area-corner-width)`:0,"--radix-scroll-area-thumb-width":dm(n)+`px`,...e.style},onThumbPointerDown:t=>e.onThumbPointerDown(t.x),onDragScroll:t=>e.onDragScroll(t.x),onWheelScroll:(t,n)=>{if(a.viewport){let r=a.viewport.scrollLeft+t.deltaX;e.onWheelScroll(r),hm(r,n)&&t.preventDefault()}},onResize:()=>{c.current&&a.viewport&&o&&r({content:a.viewport.scrollWidth,viewport:a.viewport.offsetWidth,scrollbar:{size:c.current.clientWidth,paddingStart:lm(o.paddingLeft),paddingEnd:lm(o.paddingRight)}})}})},`ScrollAreaScrollbarX`)),$p=y.forwardRef(kp(function(e,t){let{sizes:n,onSizesChange:r,...i}=e,a=Rp(Kp,e.__scopeScrollArea),[o,s]=y.useState(),c=y.useRef(null),l=T(t,c,a.onScrollbarYChange);return y.useEffect(()=>{c.current&&s(getComputedStyle(c.current))},[c]),(0,K.jsx)(nm,{"data-orientation":`vertical`,...i,ref:l,sizes:n,style:{top:0,right:a.dir===Np.LTR?0:void 0,left:a.dir===Np.RTL?0:void 0,bottom:`var(--radix-scroll-area-corner-height)`,"--radix-scroll-area-thumb-height":dm(n)+`px`,...e.style},onThumbPointerDown:t=>e.onThumbPointerDown(t.y),onDragScroll:t=>e.onDragScroll(t.y),onWheelScroll:(t,n)=>{if(a.viewport){let r=a.viewport.scrollTop+t.deltaY;e.onWheelScroll(r),hm(r,n)&&t.preventDefault()}},onResize:()=>{c.current&&a.viewport&&o&&r({content:a.viewport.scrollHeight,viewport:a.viewport.offsetHeight,scrollbar:{size:c.current.clientHeight,paddingStart:lm(o.paddingTop),paddingEnd:lm(o.paddingBottom)}})}})},`ScrollAreaScrollbarY`)),[em,tm]=Fp(Kp),nm=y.forwardRef(kp(function(e,t){let{__scopeScrollArea:n,sizes:r,hasThumb:i,onThumbChange:a,onThumbPointerUp:o,onThumbPointerDown:s,onThumbPositionChange:c,onDragScroll:l,onWheelScroll:u,onResize:d,...f}=e,p=Rp(Kp,n),[m,h]=y.useState(null),g=T(t,h),_=y.useRef(null),v=y.useRef(``),b=p.viewport,x=r.content-r.viewport,S=Fn(u),C=Fn(c),w=_m(d,10);function E(e){if(_.current){let t=e.clientX-_.current.left,n=e.clientY-_.current.top;l({x:t,y:n})}}return kp(E,`handleDragScroll`),y.useEffect(()=>{let e=kp(e=>{let t=e.target;m?.contains(t)&&S(e,x)},`handleWheel`);return document.addEventListener(`wheel`,e,{passive:!1}),()=>document.removeEventListener(`wheel`,e,{passive:!1})},[b,m,x,S]),y.useEffect(C,[r,C]),vm(m,w),vm(p.content,w),(0,K.jsx)(em,{scope:n,scrollbar:m,hasThumb:i,onThumbChange:Fn(a),onThumbPointerUp:Fn(o),onThumbPositionChange:C,onThumbPointerDown:Fn(s),children:(0,K.jsx)(Y.div,{...f,ref:g,style:{position:`absolute`,...f.style},onPointerDown:J(e.onPointerDown,e=>{e.button===0&&(e.target.setPointerCapture(e.pointerId),_.current=m.getBoundingClientRect(),v.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect=`none`,p.viewport&&(p.viewport.style.scrollBehavior=`auto`),E(e))}),onPointerMove:J(e.onPointerMove,E),onPointerUp:J(e.onPointerUp,e=>{let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),document.body.style.webkitUserSelect=v.current,p.viewport&&(p.viewport.style.scrollBehavior=``),_.current=null})})})},`ScrollAreaScrollbarImpl`)),rm=`ScrollAreaThumb`,im=y.forwardRef(kp(function(e,t){let{forceMount:n,...r}=e,i=tm(rm,e.__scopeScrollArea);return(0,K.jsx)(po,{present:n||i.hasThumb,children:(0,K.jsx)(am,{ref:t,...r})})},`ScrollAreaThumb`)),am=y.forwardRef(kp(function(e,t){let{__scopeScrollArea:n,style:r,...i}=e,a=Rp(rm,n),o=tm(rm,n),{onThumbPositionChange:s}=o,c=T(t,o.onThumbChange),l=y.useRef(void 0),u=_m(()=>{l.current&&=(l.current(),void 0)},100);return y.useEffect(()=>{let e=a.viewport;if(e){let t=kp(()=>{if(u(),!l.current){let t=gm(e,s);l.current=t,s()}},`handleScroll`);return s(),e.addEventListener(`scroll`,t),()=>e.removeEventListener(`scroll`,t)}},[a.viewport,u,s]),(0,K.jsx)(Y.div,{"data-state":o.hasThumb?`visible`:`hidden`,...i,ref:c,style:{width:`var(--radix-scroll-area-thumb-width)`,height:`var(--radix-scroll-area-thumb-height)`,...r},onPointerDownCapture:J(e.onPointerDownCapture,e=>{let t=e.target.getBoundingClientRect(),n=e.clientX-t.left,r=e.clientY-t.top;o.onThumbPointerDown({x:n,y:r})}),onPointerUp:J(e.onPointerUp,o.onThumbPointerUp)})},`ScrollAreaThumbImpl`)),om=`ScrollAreaCorner`,sm=y.forwardRef(kp(function(e,t){let n=Rp(om,e.__scopeScrollArea),r=!!(n.scrollbarX&&n.scrollbarY);return n.type!==jp.Scroll&&r?(0,K.jsx)(cm,{...e,ref:t}):null},`ScrollAreaCorner`)),cm=y.forwardRef(kp(function(e,t){let{__scopeScrollArea:n,...r}=e,i=Rp(om,n),[a,o]=y.useState(0),[s,c]=y.useState(0),l=!!(a&&s),{onCornerWidthChange:u,onCornerHeightChange:d}=i;return vm(i.scrollbarX,()=>{let e=i.scrollbarX?.offsetHeight||0;i.onCornerHeightChange(e),c(e)}),vm(i.scrollbarY,()=>{let e=i.scrollbarY?.offsetWidth||0;i.onCornerWidthChange(e),o(e)}),y.useEffect(()=>()=>{u(0),d(0)},[u,d]),l?(0,K.jsx)(Y.div,{...r,ref:t,style:{width:a,height:s,position:`absolute`,right:i.dir===Np.LTR?0:void 0,left:i.dir===Np.RTL?0:void 0,bottom:0,...e.style}}):null},`ScrollAreaCornerImpl`));function lm(e){return e?parseInt(e,10):0}kp(lm,`toInt`);function um(e,t){let n=e/t;return isNaN(n)?0:n}kp(um,`getThumbRatio`);function dm(e){let t=um(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,r=(e.scrollbar.size-n)*t;return Math.max(r,18)}kp(dm,`getThumbSize`);function fm(e,t,n,r=Np.LTR){let i=dm(n),a=i/2,o=t||a,s=i-o,c=n.scrollbar.paddingStart+o,l=n.scrollbar.size-n.scrollbar.paddingEnd-s,u=n.content-n.viewport,d=r===Np.LTR?[0,u]:[u*-1,0];return mm([c,l],d)(e)}kp(fm,`getScrollPositionFromPointer`);function pm(e,t,n=Np.LTR){let r=dm(t),i=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,a=t.scrollbar.size-i,o=t.content-t.viewport,s=a-r,c=Dp(e,n===Np.LTR?[0,o]:[o*-1,0]);return mm([0,o],[0,s])(c)}kp(pm,`getThumbOffsetFromScroll`);function mm(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}kp(mm,`linearScale`);function hm(e,t){return e>0&&e{})=>{let n={left:e.scrollLeft,top:e.scrollTop},r=0;function i(){let a={left:e.scrollLeft,top:e.scrollTop},o=n.left!==a.left,s=n.top!==a.top;(o||s)&&t(),n=a,r=window.requestAnimationFrame(i)}return kp(i,`loop`),i(),()=>window.cancelAnimationFrame(r)},`addUnlinkedScrollListener`);function _m(e,t){let n=Fn(e),r=y.useRef(0);return y.useEffect(()=>()=>window.clearTimeout(r.current),[]),y.useCallback(()=>{window.clearTimeout(r.current),r.current=window.setTimeout(n,t)},[n,t])}kp(_m,`useDebounceCallback`);function vm(e,t){let n=Fn(t);Jt(()=>{let t=0;if(e){let r=new ResizeObserver(()=>{cancelAnimationFrame(t),t=window.requestAnimationFrame(n)});return r.observe(e),()=>{window.cancelAnimationFrame(t),r.unobserve(e)}}},[e,n])}kp(vm,`useResizeObserver`);var ym=y.forwardRef(({className:e,children:t,...n},r)=>(0,K.jsxs)(zp,{ref:r,className:jt(`relative overflow-hidden`,e),...n,children:[(0,K.jsx)(Hp,{className:`h-full w-full rounded-[inherit]`,children:t}),(0,K.jsx)(bm,{}),(0,K.jsx)(sm,{})]}));ym.displayName=zp.displayName;var bm=y.forwardRef(({className:e,orientation:t=`vertical`,...n},r)=>(0,K.jsx)(qp,{ref:r,orientation:t,className:jt(`flex touch-none select-none transition-colors`,t===`vertical`&&`h-full w-2.5 border-l border-l-transparent p-[1px]`,t===`horizontal`&&`h-2.5 flex-col border-t border-t-transparent p-[1px]`,e),...n,children:(0,K.jsx)(im,{className:`relative flex-1 rounded-full bg-border`})}));bm.displayName=qp.displayName;var xm=Object.defineProperty,Sm=(e,t)=>xm(e,`name`,{value:t,configurable:!0}),Cm={Automatic:`automatic`,Manual:`manual`},wm=`Tabs`,[Tm,Em]=Kt(wm,[Io]),Dm=Io(),[Om,km]=Tm(wm),Am=y.forwardRef(Sm(function(e,t){let{__scopeTabs:n,value:r,onValueChange:i,defaultValue:a,orientation:o=`horizontal`,dir:s,activationMode:c=Cm.Automatic,...l}=e,u=jn(s),[d,f]=rn({prop:r,onChange:i,defaultProp:a??``,caller:wm});return(0,K.jsx)(Om,{scope:n,baseId:Or(),value:d,onValueChange:f,orientation:o,dir:u,activationMode:c,children:(0,K.jsx)(Y.div,{dir:u,"data-orientation":o,...l,ref:t})})},`Tabs`)),jm=`TabsList`,Mm=y.forwardRef(Sm(function(e,t){let{__scopeTabs:n,loop:r=!0,...i}=e,a=km(jm,n),o=Dm(n);return(0,K.jsx)(Vo,{asChild:!0,...o,orientation:a.orientation,dir:a.dir,loop:r,children:(0,K.jsx)(Y.div,{role:`tablist`,"aria-orientation":a.orientation,...i,ref:t})})},`TabsList`)),Nm=`TabsTrigger`,Pm=y.forwardRef(Sm(function(e,t){let{__scopeTabs:n,value:r,disabled:i=!1,...a}=e,o=km(Nm,n),s=Dm(n),c=Lm(o.baseId,r),l=Rm(o.baseId,r),u=r===o.value;return(0,K.jsx)(Wo,{asChild:!0,...s,focusable:!i,active:u,children:(0,K.jsx)(Y.button,{type:`button`,role:`tab`,"aria-selected":u,"aria-controls":l,"data-state":u?`active`:`inactive`,"data-disabled":i?``:void 0,disabled:i,id:c,...a,ref:t,onMouseDown:J(e.onMouseDown,e=>{!i&&e.button===0&&e.ctrlKey===!1?(e.currentTarget.focus(),o.onValueChange(r)):e.preventDefault()}),onKeyDown:J(e.onKeyDown,e=>{i||e.target!==e.currentTarget||[` `,`Enter`].includes(e.key)&&o.onValueChange(r)}),onFocus:J(e.onFocus,()=>{let e=o.activationMode!==Cm.Manual;!u&&!i&&e&&o.onValueChange(r)})})})},`TabsTrigger`)),Fm=`TabsContent`,Im=y.forwardRef(Sm(function(e,t){let{__scopeTabs:n,value:r,forceMount:i,children:a,...o}=e,s=km(Fm,n),c=Lm(s.baseId,r),l=Rm(s.baseId,r),u=r===s.value,d=y.useRef(u);return y.useEffect(()=>{let e=requestAnimationFrame(()=>d.current=!1);return()=>cancelAnimationFrame(e)},[]),(0,K.jsx)(po,{present:i||u,children:({present:n})=>(0,K.jsx)(Y.div,{"data-state":u?`active`:`inactive`,"data-orientation":s.orientation,role:`tabpanel`,"aria-labelledby":c,hidden:!n,id:l,tabIndex:0,...o,ref:t,style:{...e.style,animationDuration:d.current?`0s`:void 0},children:n&&a})})},`TabsContent`));function Lm(e,t){return`${e}-trigger-${t}`}Sm(Lm,`makeTriggerId`);function Rm(e,t){return`${e}-content-${t}`}Sm(Rm,`makeContentId`);var zm=Am,Bm=y.forwardRef(({className:e,...t},n)=>(0,K.jsx)(Mm,{ref:n,className:jt(`inline-flex h-9 items-center justify-center rounded-lg bg-muted p-1 text-muted-foreground`,e),...t}));Bm.displayName=Mm.displayName;var Vm=y.forwardRef(({className:e,...t},n)=>(0,K.jsx)(Pm,{ref:n,className:jt(`inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow`,e),...t}));Vm.displayName=Pm.displayName;var Hm=y.forwardRef(({className:e,...t},n)=>(0,K.jsx)(Im,{ref:n,className:jt(`mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2`,e),...t}));Hm.displayName=Im.displayName;var Um=Object.defineProperty,Wm=(e,t)=>Um(e,`name`,{value:t,configurable:!0}),Gm=`Checkbox`,[Km,qm]=Kt(Gm),[Jm,Ym]=Km(Gm);function Xm(e){let{__scopeCheckbox:t,checked:n,children:r,defaultChecked:i,disabled:a,form:o,name:s,onCheckedChange:c,required:l,value:u=`on`,internal_do_not_use_render:d}=e,[f,p]=rn({prop:n,defaultProp:i??!1,onChange:c,caller:Gm}),[m,h]=y.useState(null),[g,_]=y.useState(null),[v,b]=y.useState(null),x=!m||!!o||!!m.closest(`form`),S={checked:f,disabled:a,setChecked:p,control:m,setControl:h,name:s,form:o,value:u,userClick:v,onUserClick:b,required:l,defaultChecked:!ah(i)&&i,isFormControl:x,bubbleInput:g,setBubbleInput:_};return(0,K.jsx)(Jm,{scope:t,...S,children:ih(d)?d(S):r})}Wm(Xm,`CheckboxProvider`);var Zm=`CheckboxTrigger`,Qm=y.forwardRef(Wm(function({__scopeCheckbox:e,onKeyDown:t,onClick:n,...r},i){let{control:a,value:o,disabled:s,checked:c,required:l,setControl:u,setChecked:d,onUserClick:f,isFormControl:p,bubbleInput:m}=Ym(Zm,e),h=T(i,u),g=y.useRef(c);return y.useEffect(()=>{let e=a?.form;if(e){let t=Wm(()=>d(g.current),`reset`);return e.addEventListener(`reset`,t),()=>e.removeEventListener(`reset`,t)}},[a,d]),(0,K.jsx)(Y.button,{type:`button`,role:`checkbox`,"aria-checked":ah(c)?`mixed`:c,"aria-required":l,"data-state":oh(c),"data-disabled":s?``:void 0,disabled:s,value:o,...r,ref:h,onKeyDown:J(t,e=>{e.key===`Enter`&&e.preventDefault()}),onClick:J(n,e=>{let t=e.isPropagationStopped();f({requestedChecked:ah(c)?!0:!c,hasConsumerStoppedPropagation:t}),d(e=>ah(e)?!0:!e),m&&p&&(t||e.stopPropagation())})})},`CheckboxTrigger`)),$m=y.forwardRef(Wm(function(e,t){let{__scopeCheckbox:n,name:r,checked:i,defaultChecked:a,required:o,disabled:s,value:c,onCheckedChange:l,form:u,...d}=e;return(0,K.jsx)(Xm,{__scopeCheckbox:n,checked:i,defaultChecked:a,disabled:s,required:o,onCheckedChange:l,name:r,form:u,value:c,internal_do_not_use_render:({isFormControl:e})=>(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(Qm,{...d,ref:t,__scopeCheckbox:n}),e&&(0,K.jsx)(rh,{__scopeCheckbox:n})]})})},`Checkbox`)),eh=`CheckboxIndicator`,th=y.forwardRef(Wm(function(e,t){let{__scopeCheckbox:n,forceMount:r,...i}=e,a=Ym(eh,n);return(0,K.jsx)(po,{present:r||ah(a.checked)||a.checked===!0,children:(0,K.jsx)(Y.span,{"data-state":oh(a.checked),"data-disabled":a.disabled?``:void 0,...i,ref:t,style:{pointerEvents:`none`,...e.style}})})},`CheckboxIndicator`)),nh=`CheckboxBubbleInput`,rh=y.forwardRef(Wm(function({__scopeCheckbox:e,onClick:t,...n},r){let{control:i,userClick:a,checked:o,defaultChecked:s,required:c,disabled:l,name:u,value:d,form:f,bubbleInput:p,setBubbleInput:m}=Ym(nh,e),h=T(r,m),g=Va(i),_=y.useRef(!1),v=y.useRef(o),b=y.useRef(a),x=y.useRef(null);y.useEffect(()=>{let e=p;if(!e)return;let t=window.HTMLInputElement.prototype,n=Object.getOwnPropertyDescriptor(t,`checked`).set;if(!n)return;let r=v.current!==o;v.current=o;let i=a!==null&&a!==b.current;if(b.current=a,i)x.current=r?null:a,r&&(e.indeterminate=ah(o),n.call(e,!ah(o)&&o)),e.dispatchEvent(new Event(`click`,{bubbles:!a.hasConsumerStoppedPropagation}));else if(r){let t=x.current;x.current=null;let r=t?.requestedChecked===o;_.current=!0,e.indeterminate=ah(o),n.call(e,!ah(o)&&o),e.dispatchEvent(new Event(`click`,{bubbles:!(r&&t.hasConsumerStoppedPropagation)})),_.current=!1}},[p,o,a]);let S=y.useRef(!ah(o)&&o);return(0,K.jsx)(Y.input,{type:`checkbox`,"aria-hidden":!0,defaultChecked:s??S.current,required:c,disabled:l,name:u,value:d,form:f,...n,tabIndex:-1,ref:h,onClick:J(t,e=>{_.current&&e.stopPropagation()}),style:{...n.style,...g,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0,transform:`translateX(-100%)`}})},`CheckboxBubbleInput`));function ih(e){return typeof e==`function`}Wm(ih,`isFunction`);function ah(e){return e===`indeterminate`}Wm(ah,`isIndeterminate`);function oh(e){return ah(e)?`indeterminate`:e?`checked`:`unchecked`}Wm(oh,`getState`);function sh({className:e,...t}){return(0,K.jsx)($m,{"data-slot":`checkbox`,className:jt(`peer border-input dark:bg-input/30 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive size-4 shrink-0 rounded-[4px] border shadow-xs transition-shadow outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50`,e),...t,children:(0,K.jsx)(th,{"data-slot":`checkbox-indicator`,className:`flex items-center justify-center text-current transition-none`,children:(0,K.jsx)(ru,{className:`size-3.5`})})})}var ch=Object.defineProperty,lh=(e,t)=>ch(e,`name`,{value:t,configurable:!0}),uh=Object.freeze({position:`absolute`,border:0,width:1,height:1,padding:0,margin:-1,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,whiteSpace:`nowrap`,wordWrap:`normal`}),dh=y.forwardRef(lh(function(e,t){return(0,K.jsx)(Y.span,{...e,ref:t,style:{...uh,...e.style}})},`VisuallyHidden`)),fh=Object.defineProperty,ph=(e,t)=>fh(e,`name`,{value:t,configurable:!0}),[mh,hh]=Kt(`Tooltip`,[Ja]),gh=Ja(),_h=`TooltipProvider`,vh=700,yh=`tooltip.open`,[bh,xh]=mh(_h),Sh=ph(e=>{let{__scopeTooltip:t,delayDuration:n=vh,skipDelayDuration:r=300,disableHoverableContent:i=!1,children:a}=e,o=y.useRef(!0),s=y.useRef(!1),c=y.useRef(0);return y.useEffect(()=>{let e=c.current;return()=>window.clearTimeout(e)},[]),(0,K.jsx)(bh,{scope:t,isOpenDelayedRef:o,delayDuration:n,onOpen:y.useCallback(()=>{r<=0||(window.clearTimeout(c.current),o.current=!1)},[r]),onClose:y.useCallback(()=>{r<=0||(window.clearTimeout(c.current),c.current=window.setTimeout(()=>o.current=!0,r))},[r]),isPointerInTransitRef:s,onPointerInTransitChange:y.useCallback(e=>{s.current=e},[]),disableHoverableContent:i,children:a})},`TooltipProvider`),Ch=`Tooltip`,[wh,Th]=mh(Ch),Eh=ph(e=>{let{__scopeTooltip:t,children:n,open:r,defaultOpen:i,onOpenChange:a,disableHoverableContent:o,delayDuration:s}=e,c=xh(Ch,e.__scopeTooltip),l=gh(t),[u,d]=y.useState(null),[f,p]=y.useState(void 0),m=Or(),h=y.useRef(0),g=o??c.disableHoverableContent,_=s??c.delayDuration,v=y.useRef(!1),[b,x]=rn({prop:r,defaultProp:i??!1,onChange:ph(e=>{e?(c.onOpen(),document.dispatchEvent(new CustomEvent(yh))):c.onClose(),a?.(e)},`onChange`),caller:Ch}),S=y.useMemo(()=>b?v.current?`delayed-open`:`instant-open`:`closed`,[b]),C=y.useCallback(()=>{window.clearTimeout(h.current),h.current=0,v.current=!1,x(!0)},[x]),w=y.useCallback(()=>{window.clearTimeout(h.current),h.current=0,x(!1)},[x]),T=y.useCallback(()=>{window.clearTimeout(h.current),h.current=window.setTimeout(()=>{v.current=!0,x(!0),h.current=0},_)},[_,x]);y.useEffect(()=>()=>{h.current&&=(window.clearTimeout(h.current),0)},[]);let E=f??m;return(0,K.jsx)(Za,{...l,children:(0,K.jsx)(wh,{scope:t,contentId:E,setContentId:p,open:b,stateAttribute:S,trigger:u,onTriggerChange:d,onTriggerEnter:y.useCallback(()=>{c.isOpenDelayedRef.current?T():C()},[c.isOpenDelayedRef,T,C]),onTriggerLeave:y.useCallback(()=>{g?w():(window.clearTimeout(h.current),h.current=0)},[w,g]),onOpen:C,onClose:w,disableHoverableContent:g,children:n})})},`Tooltip`),Dh=`TooltipTrigger`,Oh=y.forwardRef(ph(function(e,t){let{__scopeTooltip:n,"aria-describedby":r,...i}=e,a=Th(Dh,n),o=xh(Dh,n),s=gh(n),c=T(t,y.useRef(null),a.onTriggerChange),l=y.useRef(!1),u=y.useRef(!1),d=y.useCallback(()=>l.current=!1,[]);return y.useEffect(()=>()=>document.removeEventListener(`pointerup`,d),[d]),(0,K.jsx)($a,{asChild:!0,...s,children:(0,K.jsx)(Y.button,{"aria-describedby":a.open?Wh(r,a.contentId):r,"data-state":a.stateAttribute,...i,ref:c,onPointerMove:J(e.onPointerMove,e=>{e.pointerType!==`touch`&&!u.current&&!o.isPointerInTransitRef.current&&(a.onTriggerEnter(),u.current=!0)}),onPointerLeave:J(e.onPointerLeave,()=>{a.onTriggerLeave(),u.current=!1}),onPointerDown:J(e.onPointerDown,()=>{a.open&&a.onClose(),l.current=!0,document.addEventListener(`pointerup`,d,{once:!0})}),onFocus:J(e.onFocus,()=>{l.current||a.onOpen()}),onBlur:J(e.onBlur,a.onClose),onClick:J(e.onClick,a.onClose)})})},`TooltipTrigger`)),kh=`TooltipPortal`,[Ah,jh]=mh(kh,{forceMount:void 0}),Mh=ph(e=>{let{__scopeTooltip:t,forceMount:n,children:r,container:i}=e,a=Th(kh,t);return(0,K.jsx)(Ah,{scope:t,forceMount:n,children:(0,K.jsx)(po,{present:n||a.open,children:(0,K.jsx)(co,{asChild:!0,container:i,children:r})})})},`TooltipPortal`),Nh=`TooltipContent`,Ph=y.forwardRef(ph(function(e,t){let n=jh(Nh,e.__scopeTooltip),{forceMount:r=n.forceMount,side:i=`top`,...a}=e,o=Th(Nh,e.__scopeTooltip);return(0,K.jsx)(po,{present:r||o.open,children:o.disableHoverableContent?(0,K.jsx)(Lh,{side:i,...a,ref:t}):(0,K.jsx)(Fh,{side:i,...a,ref:t})})},`TooltipContent`)),Fh=y.forwardRef(ph(function(e,t){let n=Th(Nh,e.__scopeTooltip),r=xh(Nh,e.__scopeTooltip),i=y.useRef(null),a=T(t,i),[o,s]=y.useState(null),{trigger:c,onClose:l}=n,u=i.current,{onPointerInTransitChange:d}=r,f=y.useCallback(()=>{s(null),d(!1)},[d]),p=y.useCallback((e,t)=>{let n=e.currentTarget,r={x:e.clientX,y:e.clientY},i=zh(r,Rh(r,n.getBoundingClientRect())),a=Bh(t.getBoundingClientRect()),o=Hh([...i,...a]);s(o),d(!0)},[d]);return y.useEffect(()=>()=>f(),[f]),y.useEffect(()=>{if(c&&u){let e=ph(e=>p(e,u),`handleTriggerLeave`),t=ph(e=>p(e,c),`handleContentLeave`);return c.addEventListener(`pointerleave`,e),u.addEventListener(`pointerleave`,t),()=>{c.removeEventListener(`pointerleave`,e),u.removeEventListener(`pointerleave`,t)}}},[c,u,p,f]),y.useEffect(()=>{if(o){let e=ph(e=>{let t=e.target,n={x:e.clientX,y:e.clientY},r=c?.contains(t)||u?.contains(t),i=!Vh(n,o);r?f():i&&(f(),l())},`handleTrackPointerGrace`);return document.addEventListener(`pointermove`,e),()=>document.removeEventListener(`pointermove`,e)}},[c,u,o,l,f]),(0,K.jsx)(Lh,{...e,ref:a})},`TooltipContentHoverable`)),Ih=j(`TooltipContent`),Lh=y.forwardRef(ph(function(e,t){let{__scopeTooltip:n,children:r,"aria-label":i,id:a,onEscapeKeyDown:o,onPointerDownOutside:s,...c}=e,l=Th(Nh,n),u=gh(n),{onClose:d}=l,[f,p]=y.useState(null),m=T(t,p);fr(f),y.useEffect(()=>(document.addEventListener(yh,d),()=>document.removeEventListener(yh,d)),[d]),y.useEffect(()=>{if(l.trigger){let e=ph(e=>{e.target instanceof Node&&e.target.contains(l.trigger)&&d()},`handleScroll`);return window.addEventListener(`scroll`,e,{capture:!0}),()=>window.removeEventListener(`scroll`,e,{capture:!0})}},[l.trigger,d]);let{setContentId:h}=l;return Jt(()=>(h(a),()=>{h(void 0)}),[a,h]),(0,K.jsx)(Un,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:o,onPointerDownOutside:s,onFocusOutside:e=>e.preventDefault(),onDismiss:d,children:(0,K.jsxs)(ro,{"data-state":l.stateAttribute,role:i?void 0:`tooltip`,id:i?void 0:l.contentId,...u,...c,ref:m,style:{...c.style,"--radix-tooltip-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-tooltip-content-available-width":`var(--radix-popper-available-width)`,"--radix-tooltip-content-available-height":`var(--radix-popper-available-height)`,"--radix-tooltip-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-tooltip-trigger-height":`var(--radix-popper-anchor-height)`},children:[(0,K.jsx)(Ih,{children:r}),i?(0,K.jsx)(dh,{id:l.contentId,role:`tooltip`,children:i}):null]})})},`TooltipContentImpl`));function Rh(e,t){let n=Math.abs(t.top-e.y),r=Math.abs(t.bottom-e.y),i=Math.abs(t.right-e.x),a=Math.abs(t.left-e.x);switch(Math.min(n,r,i,a)){case a:return`left`;case i:return`right`;case n:return`top`;case r:return`bottom`;default:throw Error(`unreachable`)}}ph(Rh,`getExitSideFromRect`);function zh(e,t,n=5){let r=[];switch(t){case`top`:r.push({x:e.x-n,y:e.y+n},{x:e.x+n,y:e.y+n});break;case`bottom`:r.push({x:e.x-n,y:e.y-n},{x:e.x+n,y:e.y-n});break;case`left`:r.push({x:e.x+n,y:e.y-n},{x:e.x+n,y:e.y+n});break;case`right`:r.push({x:e.x-n,y:e.y-n},{x:e.x-n,y:e.y+n})}return r}ph(zh,`getPaddedExitPoints`);function Bh(e){let{top:t,right:n,bottom:r,left:i}=e;return[{x:i,y:t},{x:n,y:t},{x:n,y:r},{x:i,y:r}]}ph(Bh,`getPointsFromRect`);function Vh(e,t){let{x:n,y:r}=e,i=!1;for(let e=0,a=t.length-1;er!=d>r&&n<(u-c)*(r-l)/(d-l)+c&&(i=!i)}return i}ph(Vh,`isPointInPolygon`);function Hh(e){let t=e.slice();return t.sort((e,t)=>e.xt.x?1:e.yt.y)),Uh(t)}ph(Hh,`getHull`);function Uh(e){if(e.length<=1)return e.slice();let t=[];for(let n=0;n=2;){let e=t[t.length-1],n=t[t.length-2];if((e.x-n.x)*(r.y-n.y)>=(e.y-n.y)*(r.x-n.x))t.pop();else break}t.push(r)}t.pop();let n=[];for(let t=e.length-1;t>=0;t--){let r=e[t];for(;n.length>=2;){let e=n[n.length-1],t=n[n.length-2];if((e.x-t.x)*(r.y-t.y)>=(e.y-t.y)*(r.x-t.x))n.pop();else break}n.push(r)}return n.pop(),t.length===1&&n.length===1&&t[0].x===n[0].x&&t[0].y===n[0].y?t:t.concat(n)}ph(Uh,`getHullPresorted`);function Wh(...e){let t=new Set;for(let n of e)if(typeof n==`string`)for(let e of String(n).trim().split(/\s+/))e&&t.add(e);return t.size>0?Array.from(t).join(` `):void 0}ph(Wh,`concatAriaDescribedby`);var Gh=Sh,Kh=Eh,qh=Oh,Jh=y.forwardRef(({className:e,sideOffset:t=4,...n},r)=>(0,K.jsx)(Mh,{children:(0,K.jsx)(Ph,{ref:r,sideOffset:t,className:jt(`z-50 overflow-hidden rounded-md bg-primary px-3 py-1.5 text-xs text-primary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2`,e),...n})}));Jh.displayName=Ph.displayName;var Yh={MODEL:`gen_ai.request.model`,MAX_TOKENS:`gen_ai.request.max_tokens`,TEMPERATURE:`gen_ai.request.temperature`,TOP_P:`gen_ai.request.top_p`,SEED:`gen_ai.request.seed`,FREQUENCY_PENALTY:`gen_ai.request.frequency_penalty`,PRESENCE_PENALTY:`gen_ai.request.presence_penalty`,STOP_SEQUENCES:`gen_ai.request.stop_sequences`,FINISH_REASONS:`gen_ai.response.finish_reasons`,RESPONSE_ID:`gen_ai.response.id`,INPUT_TOKENS:`gen_ai.usage.input_tokens`,OUTPUT_TOKENS:`gen_ai.usage.output_tokens`,INPUT_MESSAGES:`gen_ai.input.messages`,OUTPUT_MESSAGES:`gen_ai.output.messages`,SYSTEM_INSTRUCTIONS:`gen_ai.system_instructions`,OUTPUT_TYPE:`gen_ai.output.type`,TOOL_CALL_ID:`gen_ai.tool.call.id`,TOOL_NAME:`gen_ai.tool.name`,TOOL_TYPE:`gen_ai.tool.type`,TOOL_DEFINITIONS:`gen_ai.tool.definitions`,TOOL_ARGUMENTS:`gen_ai.tool.call.arguments`,TOOL_RESULT:`gen_ai.tool.call.result`,AGENT_ID:`gen_ai.agent.id`,AGENT_NAME:`gen_ai.agent.name`,AGENT_DESCRIPTION:`gen_ai.agent.description`,CONVERSATION_ID:`gen_ai.conversation.id`,WORKFLOW_ID:`workflow.id`,WORKFLOW_NAME:`workflow.name`,EXECUTOR_ID:`executor.id`,EXECUTOR_TYPE:`executor.type`};function Xh(e){return e.type===`text`}function Zh(e){return e.type===`tool_call`||e.type===`function_call`}function Qh(e){return e.type===`tool_result`||e.type===`function_result`||e.type===`tool_call_response`}function $h(e){if(!e)return[];try{return JSON.parse(e)}catch{return[]}}xp();function eg(e){let t={system:0,user:0,assistant:0,toolCalls:0,toolResults:0,total:0};try{let n;if(typeof e==`string`)n=$h(e);else if(Array.isArray(e))n=e;else return t;for(let e of n){if(!e||typeof e!=`object`)continue;let n=e.role,r=e.parts,i=0;if(Array.isArray(r)){for(let e of r)if(e&&typeof e==`object`){if(Xh(e)){let t=e.content||e.text||``;i+=t.length}else if(Zh(e)){let n=e.name||``,r=e.arguments||``;t.toolCalls+=n.length+r.length}else if(Qh(e)){let n=e.result||e.response||``;t.toolResults+=n.length}}}n===`system`?t.system+=i:n===`user`?t.user+=i:n===`assistant`?t.assistant+=i:n===`tool`&&(t.toolResults+=i)}t.total=t.system+t.user+t.assistant+t.toolCalls+t.toolResults}catch{}return t}function tg(e){let t=e.filter(e=>e.type===`response.trace.completed`),n=new Map;for(let e of t){if(!(`data`in e))continue;let t=e.data,r=t.response_id||`unknown`;n.has(r)||n.set(r,[]),n.get(r).push(t)}let r=[];for(let[e,t]of n){let n=0,i=0,a,o=Date.now()/1e3,s,c=0,l={system:0,user:0,assistant:0,toolCalls:0,toolResults:0,total:0};for(let e of t){let t=e.attributes||{},r=t[Yh.INPUT_TOKENS],u=t[Yh.OUTPUT_TOKENS];r!==void 0&&(n+=Number(r)),u!==void 0&&(i+=Number(u)),t[Yh.MODEL]&&(a=String(t[Yh.MODEL])),e.start_time&&e.start_time0||i>0)&&r.push({response_id:e,timestamp:o,input_tokens:n,output_tokens:i,total_tokens:n+i,model:a,entity_id:s,duration_ms:c,composition:l})}return r.sort((e,t)=>e.timestamp-t.timestamp),r}function ng(e){if(e.length===0)return{totalInput:0,totalOutput:0,totalTokens:0,avgInput:0,avgOutput:0,avgTotal:0,peakInput:0,peakOutput:0,peakTotal:0,turnCount:0};let t=e.reduce((e,t)=>e+t.input_tokens,0),n=e.reduce((e,t)=>e+t.output_tokens,0),r=t+n,i=Math.max(...e.map(e=>e.input_tokens)),a=Math.max(...e.map(e=>e.output_tokens)),o=Math.max(...e.map(e=>e.total_tokens));return{totalInput:t,totalOutput:n,totalTokens:r,avgInput:Math.round(t/e.length),avgOutput:Math.round(n/e.length),avgTotal:Math.round(r/e.length),peakInput:i,peakOutput:a,peakTotal:o,turnCount:e.length}}function rg(e){return e.reduce((e,t)=>({system:e.system+t.composition.system,user:e.user+t.composition.user,assistant:e.assistant+t.composition.assistant,toolCalls:e.toolCalls+t.composition.toolCalls,toolResults:e.toolResults+t.composition.toolResults,total:e.total+t.composition.total}),{system:0,user:0,assistant:0,toolCalls:0,toolResults:0,total:0})}function ig(e){return e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e)}var ag={input:`bg-blue-500 dark:bg-blue-600`,output:`bg-emerald-500 dark:bg-emerald-600`,system:`bg-purple-500 dark:bg-purple-600`,user:`bg-blue-500 dark:bg-blue-600`,assistant:`bg-emerald-500 dark:bg-emerald-600`,toolCalls:`bg-amber-500 dark:bg-amber-600`,toolResults:`bg-orange-500 dark:bg-orange-600`};function og({segments:e,maxValue:t,height:n=20,renderLabel:r}){let i=e.reduce((e,t)=>e+t.value,0);if(i===0)return(0,K.jsx)(`div`,{className:`flex items-center gap-2 w-full`,children:(0,K.jsx)(`div`,{className:`rounded bg-muted/30 flex-1`,style:{height:`${n}px`}})});let a=t>0?i/t*100:100,o=e.filter(e=>e.value>0).map(e=>({...e,percent:Math.round(e.value/i*100)}));return(0,K.jsxs)(`div`,{className:`flex items-center gap-2 w-full`,children:[(0,K.jsx)(`div`,{className:`relative rounded overflow-hidden bg-muted/30 flex-1`,style:{height:`${n}px`},children:(0,K.jsx)(Gh,{delayDuration:150,children:(0,K.jsx)(`div`,{className:`h-full flex transition-all duration-300`,style:{width:`${a}%`},children:o.map(e=>(0,K.jsxs)(Kh,{children:[(0,K.jsx)(qh,{asChild:!0,children:(0,K.jsx)(`div`,{className:`h-full ${e.color} transition-all duration-150 hover:brightness-110 hover:scale-y-[1.15] origin-bottom cursor-default`,style:{width:`${e.value/i*100}%`}})}),(0,K.jsx)(Jh,{side:`top`,className:`text-xs`,children:(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,K.jsx)(`div`,{className:`w-2 h-2 rounded-sm ${e.color} flex-shrink-0`}),(0,K.jsx)(`span`,{className:`font-medium`,children:e.label}),(0,K.jsxs)(`span`,{className:`opacity-80`,children:[ig(e.value),` (`,e.percent,`%)`]})]})})]},e.key))})})}),r?.(i,e)]})}function sg(e,t){return[{key:`input`,value:e,color:ag.input,label:`Input`},{key:`output`,value:t,color:ag.output,label:`Output`}]}function cg(e){return[{key:`system`,value:e.system,color:ag.system,label:`System`},{key:`user`,value:e.user,color:ag.user,label:`User`},{key:`assistant`,value:e.assistant,color:ag.assistant,label:`Assistant`},{key:`toolCalls`,value:e.toolCalls,color:ag.toolCalls,label:`Tool Calls`},{key:`toolResults`,value:e.toolResults,color:ag.toolResults,label:`Tool Results`}]}function lg({composition:e,className:t=``}){let{system:n,user:r,assistant:i,toolCalls:a,toolResults:o,total:s}=e;if(s===0)return(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground ${t}`,children:`No composition data available`});let c=[{label:`System`,value:n,color:ag.system},{label:`User`,value:r,color:ag.user},{label:`Assistant`,value:i,color:ag.assistant},{label:`Tool Calls`,value:a,color:ag.toolCalls},{label:`Tool Results`,value:o,color:ag.toolResults}].filter(e=>e.value>0);return(0,K.jsx)(`div`,{className:`space-y-1.5 ${t}`,children:c.map(e=>{let t=Math.round(e.value/s*100);return(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-xs`,children:[(0,K.jsx)(`div`,{className:`w-2 h-2 rounded-sm ${e.color}`}),(0,K.jsx)(`span`,{className:`text-muted-foreground w-20`,children:e.label}),(0,K.jsx)(`div`,{className:`flex-1 h-3 bg-muted/30 rounded overflow-hidden`,children:(0,K.jsx)(`div`,{className:`h-full ${e.color} transition-all duration-300`,style:{width:`${t}%`}})}),(0,K.jsxs)(`span`,{className:`font-mono w-10 text-right text-muted-foreground`,children:[t,`%`]})]},e.label)})})}function ug({turn:e,index:t,maxValue:n,maxCompositionValue:r,cumulativeInput:i,cumulativeOutput:a,cumulativeComposition:o,showCumulative:s,viewMode:c}){let[l,u]=(0,y.useState)(!1),d=s?i:e.input_tokens,f=s?a:e.output_tokens,p=s?o:e.composition,m=new Date(e.timestamp*1e3).toLocaleTimeString([],{hour:`2-digit`,minute:`2-digit`,second:`2-digit`});return(0,K.jsxs)(`div`,{className:`border-b border-muted/50 last:border-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-3 py-2 px-2 hover:bg-muted/30 cursor-pointer transition-colors`,onClick:()=>u(!l),children:[(0,K.jsx)(`div`,{className:`w-6 h-6 rounded-full bg-muted flex items-center justify-center text-xs font-medium flex-shrink-0`,children:t+1}),(0,K.jsx)(`div`,{className:`flex-1 min-w-0`,children:c===`tokens`?(0,K.jsx)(og,{segments:sg(d,f),maxValue:n,height:20,renderLabel:(e,t)=>(0,K.jsxs)(`div`,{className:`flex items-center gap-1 text-xs font-mono text-muted-foreground min-w-[80px] justify-end`,children:[(0,K.jsxs)(`span`,{className:`text-blue-600 dark:text-blue-400`,children:[`↑`,ig(t[0]?.value||0)]}),(0,K.jsx)(`span`,{children:`/`}),(0,K.jsxs)(`span`,{className:`text-emerald-600 dark:text-emerald-400`,children:[`↓`,ig(t[1]?.value||0)]})]})}):(0,K.jsx)(og,{segments:cg(p),maxValue:r,height:20,renderLabel:e=>(0,K.jsxs)(`div`,{className:`text-xs font-mono text-muted-foreground min-w-[50px] text-right`,children:[ig(Math.round(e/4)),`~`]})})}),(0,K.jsx)(`div`,{className:`text-muted-foreground flex-shrink-0`,children:l?(0,K.jsx)(su,{className:`h-4 w-4`}):(0,K.jsx)(du,{className:`h-4 w-4`})})]}),l&&(0,K.jsx)(`div`,{className:`pb-3`,children:(0,K.jsxs)(`div`,{className:`flex items-start gap-3 px-2`,children:[(0,K.jsx)(`div`,{className:`w-6 flex justify-center flex-shrink-0`,children:(0,K.jsx)(`div`,{className:`w-px h-full bg-muted`})}),(0,K.jsx)(`div`,{className:`flex-1 min-w-0`,children:(0,K.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,K.jsx)(`div`,{className:`text-muted-foreground text-xs mt-1`,children:`└─`}),(0,K.jsxs)(`div`,{className:`flex-1 space-y-3`,children:[(0,K.jsxs)(`div`,{className:`grid grid-cols-2 gap-x-4 gap-y-1 text-xs text-muted-foreground`,children:[(0,K.jsxs)(`div`,{children:[`Time: `,(0,K.jsx)(`span`,{className:`font-mono text-foreground`,children:m})]}),(0,K.jsxs)(`div`,{children:[`Duration: `,(0,K.jsxs)(`span`,{className:`font-mono text-foreground`,children:[e.duration_ms.toFixed(0),`ms`]})]}),e.model&&(0,K.jsxs)(`div`,{children:[`Model: `,(0,K.jsx)(`span`,{className:`font-mono text-foreground`,children:e.model})]}),e.entity_id&&(0,K.jsxs)(`div`,{children:[`Entity: `,(0,K.jsx)(`span`,{className:`font-mono text-foreground`,children:e.entity_id})]})]}),c===`tokens`&&(0,K.jsxs)(`div`,{className:`flex gap-4 text-xs`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`text-blue-600 dark:text-blue-400`,children:`Input:`}),` `,(0,K.jsx)(`span`,{className:`font-mono`,children:e.input_tokens.toLocaleString()})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`text-emerald-600 dark:text-emerald-400`,children:`Output:`}),` `,(0,K.jsx)(`span`,{className:`font-mono`,children:e.output_tokens.toLocaleString()})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Total:`}),` `,(0,K.jsx)(`span`,{className:`font-mono`,children:e.total_tokens.toLocaleString()})]})]}),c===`composition`&&e.composition.total>0&&(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`div`,{className:`text-xs text-muted-foreground mb-2 flex items-center gap-1`,children:[(0,K.jsx)(td,{className:`h-3 w-3`}),`Context Composition (estimated from ~`,ig(Math.round(e.composition.total/4)),` tokens)`]}),(0,K.jsx)(lg,{composition:e.composition})]})]})]})})]})})]})}function dg({label:e,value:t,icon:n,color:r=`default`}){let i={default:`text-muted-foreground`,blue:`text-blue-600 dark:text-blue-400`,green:`text-emerald-600 dark:text-emerald-400`}[r];return(0,K.jsxs)(`div`,{className:`flex items-center gap-2 p-2 bg-muted/30 rounded`,children:[(0,K.jsx)(n,{className:`h-4 w-4 ${i}`}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground truncate`,children:e}),(0,K.jsx)(`div`,{className:`font-mono text-sm font-medium`,children:t})]})]})}function fg({events:e}){let t=Q(e=>e.runtime),n=Q(e=>e.serverCapabilities.trace_retrieval),r=Q(e=>e.contextInspectorViewMode),i=Q(e=>e.setContextInspectorViewMode),a=Q(e=>e.contextInspectorCumulative),o=Q(e=>e.setContextInspectorCumulative),s=(0,y.useMemo)(()=>tg(e),[e]),c=(0,y.useMemo)(()=>ng(s),[s]),l=(0,y.useMemo)(()=>rg(s),[s]),u=(0,y.useMemo)(()=>s.length===0?0:a?c.totalTokens:0,[s,a,c.totalTokens]),d=(0,y.useMemo)(()=>s.length===0?0:a?l.total:0,[s,a,l.total]),f=(0,y.useMemo)(()=>{let e=0,t=0,n={system:0,user:0,assistant:0,toolCalls:0,toolResults:0,total:0};return s.map(r=>(e+=r.input_tokens,t+=r.output_tokens,n={system:n.system+r.composition.system,user:n.user+r.composition.user,assistant:n.assistant+r.composition.assistant,toolCalls:n.toolCalls+r.composition.toolCalls,toolResults:n.toolResults+r.composition.toolResults,total:n.total+r.composition.total},{input:e,output:t,composition:{...n}}))},[s]);return s.length===0?(0,K.jsxs)(`div`,{className:`flex flex-col items-center text-center p-6 pt-9`,children:[(0,K.jsx)(tu,{className:`h-8 w-8 text-muted-foreground mb-3`}),(0,K.jsx)(`div`,{className:`text-sm font-medium mb-1`,children:`No Data`}),(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground max-w-[200px]`,children:n?`Start a conversation to inspect OpenTelemetry context from the Aspire Dashboard.`:t===`dotnet`?`Trace retrieval is not available for this server.`:(0,K.jsxs)(K.Fragment,{children:[`Run`,` `,(0,K.jsx)(`span`,{className:`font-mono bg-accent/10 px-1 rounded`,children:`devui --instrumentation`}),` `,`and start a conversation.`]})})]}):(0,K.jsxs)(`div`,{className:`h-full flex flex-col`,children:[(0,K.jsxs)(`div`,{className:`p-3 border-b flex-shrink-0 space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(tu,{className:`h-4 w-4`}),(0,K.jsx)(`span`,{className:`font-medium text-sm`,children:`Context Inspector`}),(0,K.jsxs)(Ft,{variant:`outline`,className:`text-xs`,children:[s.length,` turn`,s.length===1?``:`s`]})]}),(0,K.jsxs)(`label`,{className:`flex items-center gap-1.5 text-xs text-muted-foreground cursor-pointer`,children:[(0,K.jsx)(sh,{checked:a,onCheckedChange:e=>o(e===!0),className:`h-3.5 w-3.5`}),(0,K.jsx)(`span`,{children:`Cumulative`})]})]}),(0,K.jsxs)(`div`,{className:`flex items-center bg-muted rounded-md p-1`,children:[(0,K.jsx)(`button`,{onClick:()=>i(`tokens`),className:`flex-1 px-3 py-1.5 text-xs rounded transition-colors ${r===`tokens`?`bg-background shadow-sm font-medium`:`text-muted-foreground hover:text-foreground`}`,children:`Tokens`}),(0,K.jsx)(`button`,{onClick:()=>i(`composition`),className:`flex-1 px-3 py-1.5 text-xs rounded transition-colors ${r===`composition`?`bg-background shadow-sm font-medium`:`text-muted-foreground hover:text-foreground`}`,children:`Composition`})]}),(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground`,children:r===`tokens`?`Token usage per turn`:`Context breakdown by message type (chars)`})]}),(0,K.jsx)(ym,{className:`flex-1`,children:(0,K.jsxs)(`div`,{className:`p-3 space-y-4`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-4 text-xs px-1 flex-wrap`,children:[r===`tokens`?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,K.jsx)(`div`,{className:`w-3 h-3 rounded ${ag.input}`}),(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Input (↑)`})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,K.jsx)(`div`,{className:`w-3 h-3 rounded ${ag.output}`}),(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Output (↓)`})]})]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,K.jsx)(`div`,{className:`w-2.5 h-2.5 rounded-sm ${ag.system}`}),(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`System`})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,K.jsx)(`div`,{className:`w-2.5 h-2.5 rounded-sm ${ag.user}`}),(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`User`})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,K.jsx)(`div`,{className:`w-2.5 h-2.5 rounded-sm ${ag.assistant}`}),(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Assistant`})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,K.jsx)(`div`,{className:`w-2.5 h-2.5 rounded-sm ${ag.toolCalls}`}),(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Tools`})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,K.jsx)(`div`,{className:`w-2.5 h-2.5 rounded-sm ${ag.toolResults}`}),(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Results`})]})]}),(0,K.jsx)(`div`,{className:`flex-1`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-1 text-muted-foreground`,children:[(0,K.jsx)(td,{className:`h-3 w-3`}),(0,K.jsx)(`span`,{children:`Click for details`})]})]}),(0,K.jsx)(`div`,{className:`border rounded-lg overflow-hidden`,children:s.map((e,t)=>(0,K.jsx)(ug,{turn:e,index:t,maxValue:u,maxCompositionValue:d,cumulativeInput:f[t]?.input||0,cumulativeOutput:f[t]?.output||0,cumulativeComposition:f[t]?.composition||e.composition,showCumulative:a,viewMode:r},e.response_id))}),(0,K.jsxs)(`div`,{className:`border rounded-lg overflow-hidden`,children:[(0,K.jsx)(`div`,{className:`p-3 bg-muted/30 border-b`,children:(0,K.jsx)(`span`,{className:`text-xs font-medium`,children:`Session Summary`})}),(0,K.jsxs)(`div`,{className:`p-3 space-y-3`,children:[(0,K.jsxs)(`div`,{className:`grid grid-cols-3 gap-2`,children:[(0,K.jsx)(dg,{label:`Total Tokens`,value:ig(c.totalTokens),icon:ad}),(0,K.jsx)(dg,{label:`Input`,value:ig(c.totalInput),icon:tu,color:`blue`}),(0,K.jsx)(dg,{label:`Output`,value:ig(c.totalOutput),icon:tu,color:`green`})]}),s.length>1&&(0,K.jsxs)(`div`,{className:`grid grid-cols-2 gap-x-4 gap-y-1 text-xs pt-2 border-t border-muted/50`,children:[(0,K.jsxs)(`div`,{className:`flex justify-between`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Avg per turn:`}),(0,K.jsx)(`span`,{className:`font-mono`,children:ig(c.avgTotal)})]}),(0,K.jsxs)(`div`,{className:`flex justify-between`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Peak turn:`}),(0,K.jsx)(`span`,{className:`font-mono`,children:ig(c.peakTotal)})]}),(0,K.jsxs)(`div`,{className:`flex justify-between`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Avg input:`}),(0,K.jsx)(`span`,{className:`font-mono text-blue-600 dark:text-blue-400`,children:ig(c.avgInput)})]}),(0,K.jsxs)(`div`,{className:`flex justify-between`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Avg output:`}),(0,K.jsx)(`span`,{className:`font-mono text-emerald-600 dark:text-emerald-400`,children:ig(c.avgOutput)})]})]}),l.total>0&&(0,K.jsx)(`div`,{className:`pt-3 border-t border-muted/50`,children:(0,K.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,K.jsx)(`div`,{className:`text-muted-foreground text-xs mt-0.5`,children:`└─`}),(0,K.jsxs)(`div`,{className:`flex-1`,children:[(0,K.jsxs)(`div`,{className:`text-xs text-muted-foreground mb-2 flex items-center gap-1`,children:[(0,K.jsx)(td,{className:`h-3 w-3`}),`Total Composition (all turns)`]}),(0,K.jsx)(lg,{composition:l})]})]})})]})]})]})})]})}xp();function pg(){return(0,K.jsx)(`div`,{className:`flex items-center gap-2 py-3 px-2`,children:(0,K.jsx)(`div`,{className:`flex-1 border-t border-border/50`})})}function mg(e){let t=[],n=!1;for(let r=0;r100&&(i.includes(` -`)||i.trim().match(/[.!?]\s*$/))&&(t.push({type:`response.output_text.delta`,delta:i.trim()}),i=``);continue}a.type!==`response.usage.complete`&&t.push(a)}for(let[,e]of n)if(e.arguments.trim()&&e.arguments.trim().length>2){let n=r.get(e.callId)||e.name||`unknown`;t.push({type:`response.function_call.complete`,data:{name:n,arguments:e.arguments,call_id:e.callId}})}return i.trim()&&t.push({type:`response.output_text.delta`,delta:i.trim()}),t}function fg(e){switch(e.type){case`response.output_text.delta`:if(`delta`in e){let t=e.delta||``;return t.length>60?`${t.slice(0,60)}...`:t}return`Text output`;case`response.function_call.complete`:if(`data`in e&&e.data){let t=e.data,n=t.name||`unknown`;(!n||n===`unknown`)&&(n=`function_call`);let r=t.arguments?typeof t.arguments==`string`?t.arguments.slice(0,30):JSON.stringify(t.arguments).slice(0,30):``;return`Calling ${n}(${r}${r.length>=30?`...`:``})`}return`Function call`;case`response.function_call_arguments.delta`:return`delta`in e&&e.delta?`Function arg delta: ${e.delta.slice(0,30)}${e.delta.length>30?`...`:``}`:`Function arguments...`;case`response.function_result.complete`:{let t=e.output.slice(0,40);return`Function result: ${t}${t.length>=40?`...`:``}`}case`response.output_item.added`:{let t=e;return t.item.type===`function_call`?`Tool call: ${t.item.name}`:`Output item added`}case`response.workflow_event.completed`:return`data`in e&&e.data?`Executor: ${e.data.executor_id||`unknown`}`:`Workflow event`;case`response.trace.completed`:return`data`in e&&e.data?`Trace: ${e.data.operation_name||`unknown`}`:`Trace event`;case`response.completed`:if(`response`in e&&e.response&&`usage`in e.response){let t=e.response.usage;if(t)return`Response complete (${t.total_tokens} tokens)`}return`Response complete`;case`response.done`:return`Response complete`;case`error`:return`message`in e&&typeof e.message==`string`?e.message:`Error occurred`;default:return`${e.type}`}}function pg(e){switch(e){case`response.output_text.delta`:return _d;case`response.function_call.complete`:case`response.function_call.delta`:case`response.function_call_arguments.delta`:return ff;case`response.function_result.complete`:return yu;case`response.output_item.added`:return yu;case`response.workflow_event.completed`:return Ul;case`response.trace.completed`:return zd;case`response.completed`:return yu;case`response.done`:return yu;case`error`:return Cu;default:return hu}}function mg(e){switch(e){case`response.output_text.delta`:return`text-gray-600 dark:text-gray-400`;case`response.function_call.complete`:case`response.function_call.delta`:case`response.function_call_arguments.delta`:return`text-blue-600 dark:text-blue-400`;case`response.function_result.complete`:return`text-green-600 dark:text-green-400`;case`response.output_item.added`:return`text-green-600 dark:text-green-400`;case`response.workflow_event.completed`:return`text-purple-600 dark:text-purple-400`;case`response.trace.completed`:return`text-orange-600 dark:text-orange-400`;case`response.completed`:return`text-green-600 dark:text-green-400`;case`response.done`:return`text-green-600 dark:text-green-400`;case`error`:return`text-red-600 dark:text-red-400`;default:return`text-gray-600 dark:text-gray-400`}}function hg({event:e}){let[t,n]=(0,y.useState)(!1),r=e.type||`unknown`,i=pg(r),a=mg(r),o=`_uiTimestamp`in e&&typeof e._uiTimestamp==`number`?new Date(e._uiTimestamp*1e3).toLocaleTimeString():new Date().toLocaleTimeString(),s=fg(e),c=e.type===`response.function_call.complete`&&`data`in e&&e.data||e.type===`response.function_result.complete`||e.type===`response.output_item.added`&&ug(e)!==null||e.type===`response.workflow_event.completed`&&`data`in e&&e.data||e.type===`response.trace.completed`&&`data`in e&&e.data||e.type===`response.trace.completed`&&`data`in e&&e.data||e.type===`response.output_text.delta`&&`delta`in e&&e.delta&&e.delta.length>100||e.type===`response.completed`&&`response`in e&&e.response||e.type===`error`;return(0,K.jsxs)(`div`,{className:`border-l-2 border-muted pl-3 py-2 hover:bg-muted/50 transition-colors`,"data-devui-debug-event":r,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-muted-foreground mb-1`,children:[(0,K.jsx)(i,{className:`h-3 w-3 ${a}`}),(0,K.jsx)(`span`,{className:`font-mono`,children:o}),(0,K.jsx)(Ft,{variant:`outline`,className:`text-xs py-0`,children:e.type?e.type.replace(`response.`,``):`unknown`})]}),(0,K.jsxs)(`div`,{className:`text-sm`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 ${c?`cursor-pointer`:``}`,onClick:()=>c&&n(!t),children:[c&&(0,K.jsx)(`div`,{className:`text-muted-foreground`,children:t?(0,K.jsx)(su,{className:`h-3 w-3`}):(0,K.jsx)(du,{className:`h-3 w-3`})}),(0,K.jsx)(`div`,{className:`text-muted-foreground flex-1`,children:c&&s.length>80?`${s.slice(0,80)}...`:s})]}),t&&c&&(0,K.jsx)(`div`,{className:`mt-2 ml-5 p-3 bg-muted/30 rounded border`,children:(0,K.jsx)(gg,{event:e})})]})]})}function gg({event:e}){if(e.type===`error`){let t=e;return(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(Cu,{className:`h-4 w-4 text-red-500`}),(0,K.jsx)(`span`,{className:`font-semibold text-sm`,children:`Error Details`})]}),(0,K.jsxs)(`div`,{className:`text-xs`,children:[t.message&&(0,K.jsxs)(`div`,{className:`mb-2`,children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Message:`}),(0,K.jsx)(`div`,{className:`mt-1`,children:(0,K.jsx)(`pre`,{className:`text-xs bg-destructive/10 border border-destructive/30 rounded p-2 text-destructive whitespace-pre-wrap break-all`,children:t.message})})]}),t.code&&(0,K.jsxs)(`div`,{className:`mb-2`,children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Code:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono text-xs`,children:t.code})]}),t.param&&(0,K.jsxs)(`div`,{className:`mb-2`,children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Parameter:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono text-xs`,children:t.param})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Raw Event:`}),(0,K.jsx)(`div`,{className:`mt-1`,children:(0,K.jsx)(`pre`,{className:`text-xs bg-background border rounded p-2 whitespace-pre-wrap break-all max-h-32 overflow-auto`,children:JSON.stringify(e,null,2)})})]})]})]})}switch(e.type){case`response.function_call.complete`:if(`data`in e&&e.data){let t=e.data;return(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(ff,{className:`h-4 w-4 text-blue-500`}),(0,K.jsx)(`span`,{className:`font-semibold text-sm`,children:`Function Call`})]}),(0,K.jsxs)(`div`,{className:`grid grid-cols-1 gap-2 text-xs`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Function:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono bg-blue-100 dark:bg-blue-900 px-2 py-1 rounded`,children:t.name||`unknown`})]}),t.call_id&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Call ID:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono text-xs`,children:t.call_id})]}),t.arguments&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Arguments:`}),(0,K.jsx)(`div`,{className:`mt-1 max-h-32 overflow-auto`,children:(0,K.jsx)(`pre`,{className:`text-xs bg-background border rounded p-2 whitespace-pre-wrap max-w-full break-all`,children:typeof t.arguments==`string`?t.arguments:JSON.stringify(t.arguments,null,1)})})]})]})]})}break;case`response.function_result.complete`:{let t=e;return(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(yu,{className:`h-4 w-4 text-green-500`}),(0,K.jsx)(`span`,{className:`font-semibold text-sm`,children:`Function Result`})]}),(0,K.jsxs)(`div`,{className:`grid grid-cols-1 gap-2 text-xs`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Call ID:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono text-xs`,children:t.call_id})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Status:`}),(0,K.jsx)(`span`,{className:`ml-2 px-2 py-1 rounded text-xs font-medium ${t.status===`completed`?`bg-green-100 dark:bg-green-900 text-green-800 dark:text-green-200`:`bg-red-100 dark:bg-red-900 text-red-800 dark:text-red-200`}`,children:t.status})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Output:`}),(0,K.jsx)(`div`,{className:`mt-1 max-h-32 overflow-auto`,children:(0,K.jsx)(`pre`,{className:`text-xs bg-background border rounded p-2 whitespace-pre-wrap max-w-full break-all`,children:t.output})})]})]})]})}case`response.output_item.added`:{let t=ug(e);if(t)return(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(yu,{className:`h-4 w-4 text-green-500`}),(0,K.jsx)(`span`,{className:`font-semibold text-sm`,children:`Function Result`})]}),(0,K.jsxs)(`div`,{className:`grid grid-cols-1 gap-2 text-xs`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Call ID:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono text-xs`,children:t.call_id})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Status:`}),(0,K.jsx)(`span`,{className:`ml-2 px-2 py-1 rounded text-xs font-medium ${t.status===`completed`?`bg-green-100 dark:bg-green-900 text-green-800 dark:text-green-200`:`bg-red-100 dark:bg-red-900 text-red-800 dark:text-red-200`}`,children:t.status})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Output:`}),(0,K.jsx)(`div`,{className:`mt-1 max-h-32 overflow-auto`,children:(0,K.jsx)(`pre`,{className:`text-xs bg-background border rounded p-2 whitespace-pre-wrap max-w-full break-all`,children:t.output})})]})]})]});break}case`response.workflow_event.completed`:if(`data`in e&&e.data){let t=e.data;return(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(Ul,{className:`h-4 w-4 text-purple-500`}),(0,K.jsx)(`span`,{className:`font-semibold text-sm`,children:`Workflow Event`})]}),(0,K.jsxs)(`div`,{className:`grid grid-cols-1 gap-2 text-xs`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Event Type:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono bg-purple-100 dark:bg-purple-900 px-2 py-1 rounded`,children:t.event_type||`unknown`})]}),t.executor_id&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Executor:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono`,children:t.executor_id})]}),t.timestamp&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Timestamp:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono text-xs`,children:t.timestamp})]}),t.data&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Data:`}),(0,K.jsx)(`div`,{className:`mt-1 max-h-32 overflow-auto`,children:(0,K.jsx)(`pre`,{className:`text-xs bg-background border rounded p-2 whitespace-pre-wrap max-w-full break-all`,children:typeof t.data==`string`?t.data:JSON.stringify(t.data,null,1)})})]})]})]})}break;case`response.trace.completed`:if(`data`in e&&e.data){let t=e.data;return(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(zd,{className:`h-4 w-4 text-orange-500`}),(0,K.jsx)(`span`,{className:`font-semibold text-sm`,children:`Trace Event`})]}),(0,K.jsxs)(`div`,{className:`grid grid-cols-1 gap-2 text-xs`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Operation:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono bg-orange-100 dark:bg-orange-900 px-2 py-1 rounded`,children:t.operation_name||`unknown`})]}),t.span_id&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Span ID:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono text-xs`,children:t.span_id})]}),t.trace_id&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Trace ID:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono text-xs`,children:t.trace_id})]}),t.duration_ms&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Duration:`}),(0,K.jsxs)(`span`,{className:`ml-2 font-mono text-xs`,children:[Number(t.duration_ms).toFixed(2),`ms`]})]}),t.status&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Status:`}),(0,K.jsx)(`span`,{className:`ml-2 px-2 py-1 rounded text-xs font-medium ${t.status===`StatusCode.UNSET`||t.status===`OK`?`bg-green-100 dark:bg-green-900 text-green-800 dark:text-green-200`:`bg-red-100 dark:bg-red-900 text-red-800 dark:text-red-200`}`,children:t.status||`unknown`})]}),t.entity_id&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Entity:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono text-xs`,children:t.entity_id})]}),t.attributes&&Object.keys(t.attributes).length>0&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Attributes:`}),(0,K.jsx)(`div`,{className:`mt-1 max-h-32 overflow-auto`,children:(0,K.jsx)(`pre`,{className:`text-xs bg-background border rounded p-2 whitespace-pre-wrap break-all`,children:bg(t.attributes)})})]})]})]})}break;case`response.output_text.delta`:if(`delta`in e&&e.delta)return(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(_d,{className:`h-4 w-4 text-gray-500`}),(0,K.jsx)(`span`,{className:`font-semibold text-sm`,children:`Text Output`})]}),(0,K.jsx)(`div`,{className:`max-h-32 overflow-auto`,children:(0,K.jsx)(`pre`,{className:`text-xs bg-background border rounded p-2 whitespace-pre-wrap max-w-full break-all`,children:e.delta})})]});break;case`response.completed`:if(`response`in e&&e.response){let t=e.response;return(0,K.jsx)(`div`,{className:`space-y-2`,children:(0,K.jsxs)(`div`,{className:`grid grid-cols-1 gap-2 text-xs`,children:[t.usage&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`div`,{children:(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Usage:`})}),(0,K.jsxs)(`div`,{className:`ml-4 space-y-1`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Input tokens:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono`,children:t.usage.input_tokens})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Output tokens:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono`,children:t.usage.output_tokens})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Total tokens:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono bg-green-100 dark:bg-green-900 px-2 py-1 rounded`,children:t.usage.total_tokens})]})]})]}),t.id&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Response ID:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono text-xs break-all`,children:t.id})]}),t.model&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Model:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono text-xs break-all`,children:t.model})]})]})})}break;default:return(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground`,children:(0,K.jsx)(`pre`,{className:`bg-background border rounded p-2 overflow-auto max-h-32`,children:JSON.stringify(e,null,2)})})}return null}function _g({events:e,processedEvents:t,isStreaming:n}){let r=(0,y.useRef)(null),i=[...(0,y.useMemo)(()=>lg(t),[t])].reverse();return(0,K.jsxs)(`div`,{className:`h-full flex flex-col`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between p-3 border-b`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(Ul,{className:`h-4 w-4`}),(0,K.jsx)(`span`,{className:`font-medium`,children:`Events`}),(0,K.jsxs)(Ft,{variant:`outline`,children:[t.length,e.length>t.length?` (${e.length} raw)`:``]})]}),n&&(0,K.jsxs)(`div`,{className:`flex items-center gap-1 text-xs text-muted-foreground`,children:[(0,K.jsx)(`div`,{className:`h-2 w-2 animate-pulse rounded-full bg-green-500 dark:bg-green-400`}),`Streaming`]})]}),(0,K.jsx)(mm,{ref:r,className:`flex-1`,children:(0,K.jsx)(`div`,{className:`p-3`,children:t.length===0?(0,K.jsx)(`div`,{className:`text-center text-muted-foreground text-sm py-8`,children:e.length===0?`No events yet. Start a conversation to see real-time events.`:`Processing events... Accumulated events will appear here.`}):(0,K.jsx)(`div`,{className:`space-y-2`,children:i.map((e,t)=>`type`in e&&e.type===`separator`?(0,K.jsx)(cg,{},e.id):(0,K.jsx)(hg,{event:e},`${e.type}-${t}`))})})})]})}function vg(e){let t=new Map;for(let n of e){if(!(`data`in n))continue;let e=n.data.response_id||`unknown`;t.has(e)||t.set(e,[]),t.get(e).push(n)}let n=[];for(let[e,r]of t){let t=new Map,i=[];for(let e of r){if(!(`data`in e))continue;let n=e.data,r=n.span_id||`span_${Math.random()}`;t.set(r,{event:e,data:n,children:[]})}for(let e of r){if(!(`data`in e))continue;let n=e.data,r=n.span_id||``,a=n.parent_span_id,o=t.get(r);o&&(a&&t.has(a)?t.get(a).children.push(o):i.push(o))}i.sort((e,t)=>(e.data.start_time||0)-(t.data.start_time||0));let a=e=>{e.children.sort((e,t)=>(e.data.start_time||0)-(t.data.start_time||0)),e.children.forEach(a)};i.forEach(a);let o=r[0],s=o&&`data`in o?o.data:null,c=Math.min(...r.map(e=>(`data`in e?e.data:null)?.start_time||Date.now()/1e3)),l=r.reduce((e,t)=>e+((`data`in t?t.data:null)?.duration_ms||0),0);n.push({response_id:e,timestamp:c,traces:i,totalDuration:l,entity_id:s?.entity_id})}return n.sort((e,t)=>t.timestamp-e.timestamp),n}function yg(e){if(typeof e==`string`){let t=e.trim();if(t.startsWith(`[`)||t.startsWith(`{`))try{return yg(JSON.parse(e))}catch{return e}return e}if(Array.isArray(e))return e.map(yg);if(typeof e==`object`&&e){let t={};for(let[n,r]of Object.entries(e))t[n]=yg(r);return t}return e}function bg(e){try{let t=yg(e);return JSON.stringify(t,null,2)}catch{return JSON.stringify(e,null,2)}}function xg(e){return e.includes(`invoke_agent`)||e.includes(`Agent`)?`bg-purple-100 dark:bg-purple-900 text-purple-800 dark:text-purple-200`:e.includes(`chat`)||e.includes(`Chat`)?`bg-blue-100 dark:bg-blue-900 text-blue-800 dark:text-blue-200`:e.includes(`tool`)||e.includes(`execute`)?`bg-green-100 dark:bg-green-900 text-green-800 dark:text-green-200`:`bg-orange-100 dark:bg-orange-900 text-orange-800 dark:text-orange-200`}function Sg({node:e,depth:t=0}){let[n,r]=(0,y.useState)(t<2),[i,a]=(0,y.useState)(!1),{data:o}=e,s=o.operation_name||`Unknown`,c=o.duration_ms?`${Number(o.duration_ms).toFixed(1)}ms`:``,l=e.children.length>0,u=o.attributes?.[`gen_ai.usage.input_tokens`],d=o.attributes?.[`gen_ai.usage.output_tokens`],f=u!==void 0||d!==void 0;return(0,K.jsxs)(`div`,{className:`relative`,children:[t>0&&(0,K.jsx)(`div`,{className:`absolute left-0 top-0 bottom-0 border-l-2 border-muted`,style:{marginLeft:`${(t-1)*16+8}px`}}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2 py-1.5 hover:bg-muted/50 rounded transition-colors`,style:{paddingLeft:`${t*16}px`},children:[(0,K.jsx)(`button`,{onClick:()=>l?r(!n):a(!i),className:`w-4 h-4 flex items-center justify-center text-muted-foreground hover:text-foreground`,children:l?n?(0,K.jsx)(su,{className:`h-3 w-3`}):(0,K.jsx)(du,{className:`h-3 w-3`}):i?(0,K.jsx)(su,{className:`h-3 w-3`}):(0,K.jsx)(du,{className:`h-3 w-3`})}),(0,K.jsx)(`span`,{className:`text-xs px-1.5 py-0.5 rounded font-medium ${xg(s)}`,children:s.replace(`Agent.`,``).replace(`invoke_agent `,``)}),c&&(0,K.jsx)(`span`,{className:`text-xs text-muted-foreground font-mono`,children:c}),f&&(0,K.jsxs)(`span`,{className:`text-xs text-muted-foreground font-mono`,children:[u!==void 0&&(0,K.jsxs)(`span`,{children:[`↑`,String(u)]}),u!==void 0&&d!==void 0&&(0,K.jsx)(`span`,{className:`mx-0.5`,children:`/`}),d!==void 0&&(0,K.jsxs)(`span`,{children:[`↓`,String(d)]})]})]}),i&&!l&&(0,K.jsx)(`div`,{className:`ml-4 mt-1 mb-2 p-2 bg-muted/30 rounded border text-xs`,style:{marginLeft:`${t*16+20}px`},children:(0,K.jsxs)(`div`,{className:`space-y-1`,children:[o.span_id&&(0,K.jsxs)(`div`,{className:`flex gap-2`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground w-20`,children:`Span ID:`}),(0,K.jsx)(`span`,{className:`font-mono text-xs break-all`,children:o.span_id})]}),o.trace_id&&(0,K.jsxs)(`div`,{className:`flex gap-2`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground w-20`,children:`Trace ID:`}),(0,K.jsx)(`span`,{className:`font-mono text-xs break-all`,children:o.trace_id})]}),o.status&&(0,K.jsxs)(`div`,{className:`flex gap-2`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground w-20`,children:`Status:`}),(0,K.jsx)(`span`,{className:`px-1.5 py-0.5 rounded text-xs ${o.status===`StatusCode.UNSET`||o.status===`OK`?`bg-green-100 dark:bg-green-900 text-green-800 dark:text-green-200`:`bg-red-100 dark:bg-red-900 text-red-800 dark:text-red-200`}`,children:o.status})]}),o.attributes&&Object.keys(o.attributes).length>0&&(0,K.jsxs)(`div`,{className:`mt-2`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground block mb-1`,children:`Attributes:`}),(0,K.jsx)(`pre`,{className:`text-xs bg-background border rounded p-2 overflow-auto max-h-32 whitespace-pre-wrap break-all`,children:bg(o.attributes)})]})]})}),l&&n&&(0,K.jsx)(`div`,{children:e.children.map((e,n)=>(0,K.jsx)(Sg,{node:e,depth:t+1},e.data.span_id||n))})]})}function Cg({group:e}){let[t,n]=(0,y.useState)(!0),r=new Date(e.timestamp*1e3).toLocaleTimeString(),i=e.totalDuration>0?`${e.totalDuration.toFixed(0)}ms`:``,a=e.traces.reduce((e,t)=>{let n=e=>1+e.children.reduce((e,t)=>e+n(t),0);return e+n(t)},0);return(0,K.jsxs)(`div`,{className:`border rounded-lg overflow-hidden`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 p-2 bg-muted/50 cursor-pointer hover:bg-muted/70 transition-colors`,onClick:()=>n(!t),children:[(0,K.jsx)(`div`,{className:`text-muted-foreground`,children:t?(0,K.jsx)(su,{className:`h-4 w-4`}):(0,K.jsx)(du,{className:`h-4 w-4`})}),(0,K.jsx)(`span`,{className:`font-mono text-xs text-muted-foreground`,children:r}),e.entity_id&&(0,K.jsx)(Ft,{variant:`outline`,className:`text-xs py-0`,children:e.entity_id.replace(`agent_`,``).replace(`workflow_`,``)}),(0,K.jsx)(`div`,{className:`flex-1`}),i&&(0,K.jsx)(Ft,{variant:`secondary`,className:`text-xs py-0`,children:i}),(0,K.jsxs)(`span`,{className:`text-xs text-muted-foreground`,children:[a,` span`,a===1?``:`s`]})]}),t&&(0,K.jsx)(`div`,{className:`p-2 border-t`,children:e.traces.map((e,t)=>(0,K.jsx)(Sg,{node:e,depth:0},e.data.span_id||t))})]})}function wg({events:e}){let t=Q(e=>e.debugTraceSubTab),n=Q(e=>e.setDebugTraceSubTab),r=Q(e=>e.runtime),i=Q(e=>e.serverCapabilities.trace_retrieval),a=e.filter(e=>e.type===`response.trace.completed`),o=vg(a);return(0,K.jsxs)(`div`,{className:`h-full flex flex-col`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 p-3 border-b`,children:[(0,K.jsx)(zd,{className:`h-4 w-4`}),(0,K.jsx)(`span`,{className:`font-medium`,children:`Traces`}),(0,K.jsx)(Ft,{variant:`outline`,children:a.length}),(0,K.jsx)(`div`,{className:`flex-1`}),(0,K.jsxs)(`div`,{className:`flex items-center bg-muted rounded-md p-1 min-w-0`,children:[(0,K.jsx)(`button`,{onClick:()=>n(`spans`),className:`px-3 py-1.5 text-xs rounded transition-colors truncate ${t===`spans`?`bg-background shadow-sm font-medium`:`text-muted-foreground hover:text-foreground`}`,children:`OTel Spans`}),(0,K.jsxs)(`button`,{onClick:()=>n(`context`),className:`px-3 py-1.5 text-xs rounded transition-colors flex items-center gap-1.5 min-w-0 ${t===`context`?`bg-background shadow-sm font-medium`:`text-muted-foreground hover:text-foreground`}`,children:[(0,K.jsx)(tu,{className:`h-3.5 w-3.5 flex-shrink-0`}),(0,K.jsx)(`span`,{className:`truncate`,children:`Context Inspector`})]})]})]}),t===`spans`?(0,K.jsxs)(`div`,{className:`flex-1 flex flex-col min-h-0`,children:[a.length>0&&(0,K.jsx)(`div`,{className:`p-3 border-b flex-shrink-0`,children:(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(zd,{className:`h-4 w-4`}),(0,K.jsx)(`span`,{className:`font-medium text-sm`,children:`OTel Spans`}),(0,K.jsxs)(Ft,{variant:`outline`,className:`text-xs`,children:[o.length,` turn`,o.length===1?``:`s`]})]})}),a.length===0?(0,K.jsxs)(`div`,{className:`flex flex-col items-center text-center p-6 pt-9`,children:[(0,K.jsx)(tu,{className:`h-8 w-8 text-muted-foreground mb-3`}),(0,K.jsx)(`div`,{className:`text-sm font-medium mb-1`,children:`No Data`}),(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground max-w-[200px]`,children:i?`Start a conversation to view OpenTelemetry spans from the Aspire Dashboard.`:r===`dotnet`?`Trace retrieval is not available for this server.`:(0,K.jsxs)(K.Fragment,{children:[`Run`,` `,(0,K.jsx)(`span`,{className:`font-mono bg-accent/10 px-1 rounded`,children:`devui --instrumentation`}),` `,`and start a conversation.`]})})]}):(0,K.jsx)(mm,{className:`flex-1`,children:(0,K.jsx)(`div`,{className:`p-3`,children:(0,K.jsx)(`div`,{className:`space-y-3`,children:o.map(e=>(0,K.jsx)(Cg,{group:e},e.response_id))})})})]}):(0,K.jsx)(sg,{events:e})]})}function Tg({events:e,processedEvents:t}){let n=[],r=t.filter(e=>e.type===`response.function_call.complete`),i=e.filter(e=>ug(e)!==null),a=new Map;i.forEach(e=>{let t=ug(e);t&&a.set(t.call_id,e)}),r.forEach(e=>{if(n.push(e),`data`in e&&e.data&&e.data.call_id){let t=String(e.data.call_id),r=a.get(t);r&&(n.push(r),a.delete(t))}}),a.forEach(e=>{n.push(e)});let o=[...lg(n)].reverse();return(0,K.jsxs)(`div`,{className:`h-full flex flex-col`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 p-3 border-b`,children:[(0,K.jsx)(ff,{className:`h-4 w-4`}),(0,K.jsx)(`span`,{className:`font-medium`,children:`Tools`}),(0,K.jsx)(Ft,{variant:`outline`,children:n.length})]}),(0,K.jsx)(mm,{className:`flex-1`,children:(0,K.jsx)(`div`,{className:`p-3`,children:n.length===0?(0,K.jsx)(`div`,{className:`text-center text-muted-foreground text-sm py-8`,children:`No tool executions yet. Tool calls will appear here during conversations.`}):(0,K.jsx)(`div`,{className:`space-y-3`,children:o.map((e,t)=>`type`in e&&e.type===`separator`?(0,K.jsx)(cg,{},e.id):(0,K.jsx)(Eg,{event:e},t))})})})]})}function Eg({event:e}){let t=`_uiTimestamp`in e&&typeof e._uiTimestamp==`number`?new Date(e._uiTimestamp*1e3).toLocaleTimeString():new Date().toLocaleTimeString(),n=e.type===`response.function_call.complete`,r=ug(e),i=r!==null;if(!n&&!i)return null;let a=n&&`data`in e?e.data:null;return(0,K.jsxs)(`div`,{className:`border rounded p-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between mb-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(gf,{className:`h-4 w-4 text-yellow-600 dark:text-yellow-400`}),(0,K.jsx)(`span`,{className:`font-medium text-sm`,children:n?`Tool Call`:`Tool Result`}),n&&a&&a.name!==void 0&&(0,K.jsxs)(`span`,{className:`text-xs text-muted-foreground`,children:[`(`,String(a.name),`)`]})]}),(0,K.jsx)(`span`,{className:`text-xs text-muted-foreground font-mono`,children:t})]}),n&&a&&(0,K.jsxs)(`div`,{className:`p-2 bg-blue-50 dark:bg-blue-950/50 border border-blue-200 dark:border-blue-800 rounded`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 mb-2`,children:[(0,K.jsx)(ff,{className:`h-3 w-3 text-blue-600 dark:text-blue-400`}),(0,K.jsx)(`span`,{className:`text-xs font-mono bg-blue-100 dark:bg-blue-900 text-blue-800 dark:text-blue-200 px-2 py-1 rounded`,children:`CALL`}),(0,K.jsx)(`span`,{className:`font-medium text-sm`,children:String(a.name||`unknown`)})]}),a.arguments!==void 0&&(0,K.jsxs)(`div`,{className:`text-xs`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground mb-1 block`,children:`Arguments:`}),(0,K.jsx)(`pre`,{className:`p-2 bg-background border rounded text-xs overflow-auto max-h-32 max-w-full break-all whitespace-pre-wrap`,children:typeof a.arguments==`string`?a.arguments:JSON.stringify(a.arguments,null,1)})]})]}),i&&r&&(0,K.jsxs)(`div`,{className:`p-2 bg-green-50 dark:bg-green-950/50 border border-green-200 dark:border-green-800 rounded`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 mb-2`,children:[(0,K.jsx)(yu,{className:`h-3 w-3 text-green-600 dark:text-green-400`}),(0,K.jsx)(`span`,{className:`text-xs font-mono bg-green-100 dark:bg-green-900 text-green-800 dark:text-green-200 px-2 py-1 rounded`,children:`RESULT`}),r.status!==`completed`&&(0,K.jsx)(`span`,{className:`ml-auto px-2 py-1 rounded text-xs font-medium bg-red-100 dark:bg-red-900 text-red-800 dark:text-red-200`,children:r.status})]}),(0,K.jsxs)(`div`,{className:`text-xs space-y-1`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Call ID:`}),(0,K.jsx)(`span`,{className:`font-mono text-xs break-all`,children:r.call_id})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`text-muted-foreground block mb-1`,children:`Output:`}),(0,K.jsx)(`pre`,{className:`p-2 bg-background border rounded text-xs overflow-auto max-h-32 break-all whitespace-pre-wrap`,children:r.output})]})]})]})]})}function Dg({events:e,isStreaming:t=!1,onMinimize:n}){let r=Q(e=>e.debugPanelTab),i=Q(e=>e.setDebugPanelTab),a=(0,y.useMemo)(()=>dg(e),[e]),o=(0,y.useMemo)(()=>({eventsCount:a.length,tracesCount:e.filter(e=>e.type===`response.trace.completed`).length,toolsCount:a.filter(e=>e.type===`response.function_call.complete`).length+e.filter(e=>ug(e)!==null).length}),[e,a]);return(0,K.jsx)(`div`,{className:`flex-1 border-l flex flex-col min-h-0`,children:(0,K.jsxs)(Pm,{value:r,onValueChange:e=>i(e),className:`flex-1 flex flex-col min-h-0`,children:[(0,K.jsxs)(`div`,{className:`px-3 pt-3 flex items-center gap-2 flex-shrink-0`,children:[(0,K.jsxs)(Fm,{className:`flex-1`,children:[(0,K.jsxs)(Im,{value:`events`,className:`flex-1 gap-1.5`,children:[`Events`,o.eventsCount>0&&(0,K.jsx)(`span`,{className:`text-[10px] bg-muted-foreground/20 text-muted-foreground px-1.5 py-0.5 rounded-full min-w-[1.25rem] text-center`,children:o.eventsCount})]}),(0,K.jsxs)(Im,{value:`traces`,className:`flex-1 gap-1.5`,children:[`Traces`,o.tracesCount>0&&(0,K.jsx)(`span`,{className:`text-[10px] bg-muted-foreground/20 text-muted-foreground px-1.5 py-0.5 rounded-full min-w-[1.25rem] text-center`,children:o.tracesCount})]}),(0,K.jsxs)(Im,{value:`tools`,className:`flex-1 gap-1.5`,children:[`Tools`,o.toolsCount>0&&(0,K.jsx)(`span`,{className:`text-[10px] bg-muted-foreground/20 text-muted-foreground px-1.5 py-0.5 rounded-full min-w-[1.25rem] text-center`,children:o.toolsCount})]})]}),n&&(0,K.jsx)(q,{variant:`ghost`,size:`sm`,onClick:n,className:`h-8 w-8 p-0 flex-shrink-0`,title:`Minimize debug panel`,children:(0,K.jsx)(du,{className:`h-4 w-4`})})]}),(0,K.jsx)(Lm,{value:`events`,className:`flex-1 mt-0 overflow-hidden`,children:(0,K.jsx)(_g,{events:e,processedEvents:a,isStreaming:t})}),(0,K.jsx)(Lm,{value:`traces`,className:`flex-1 mt-0 overflow-hidden`,children:(0,K.jsx)(wg,{events:e})}),(0,K.jsx)(Lm,{value:`tools`,className:`flex-1 mt-0 overflow-hidden`,children:(0,K.jsx)(Tg,{events:e,processedEvents:a})})]})})}function Og({open:e,onOpenChange:t,children:n}){return e?(0,K.jsxs)(`div`,{className:`fixed inset-0 z-50 flex items-center justify-center`,children:[(0,K.jsx)(`div`,{className:`absolute inset-0 bg-black/50`,onClick:()=>{t(!1)}}),(0,K.jsx)(`div`,{className:`relative z-10`,onClick:e=>{e.stopPropagation()},onMouseDown:e=>{e.stopPropagation()},onMouseUp:e=>e.stopPropagation(),children:n})]}):null}function kg({children:e,className:t=``}){let n=t.includes(`w-[`)||t.includes(`w-full`)||t.includes(`max-w-`)?``:`max-w-lg w-full`;return(0,K.jsx)(`div`,{className:`relative bg-background border rounded-lg shadow-lg max-h-[90vh] overflow-hidden ${n} ${t}`,children:e})}function Ag({children:e,className:t=``}){return(0,K.jsx)(`div`,{className:`space-y-2 ${t}`,children:e})}function jg({children:e,className:t=``}){return(0,K.jsx)(`h2`,{className:`text-lg font-semibold ${t}`,children:e})}function Mg({children:e,className:t=``}){return(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground ${t}`,children:e})}function Ng({onClose:e}){return(0,K.jsx)(q,{variant:`ghost`,size:`sm`,onClick:e,className:`absolute top-4 right-4 h-8 w-8 p-0 rounded-sm opacity-70 hover:opacity-100`,children:(0,K.jsx)(mf,{className:`h-4 w-4`})})}function Pg({children:e}){return(0,K.jsx)(`div`,{className:`flex justify-end gap-2 p-4 border-t bg-muted/50`,children:e})}function Fg({className:e,type:t,...n}){return(0,K.jsx)(`input`,{type:t,"data-slot":`input`,className:jt(`file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input flex h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm`,`focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]`,`aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive`,e),...n})}var Ig=Object.defineProperty,Lg=y.forwardRef(((e,t)=>Ig(e,`name`,{value:t,configurable:!0}))(function(e,t){return(0,K.jsx)(Y.label,{...e,ref:t,onMouseDown:t=>{t.target.closest(`button, input, select, textarea`)||(e.onMouseDown?.(t),!t.defaultPrevented&&t.detail>1&&t.preventDefault())}})},`Label`));function Rg({className:e,...t}){return(0,K.jsx)(Lg,{"data-slot":`label`,className:jt(`flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50`,e),...t})}var zg=Object.defineProperty,Bg=(e,t)=>zg(e,`name`,{value:t,configurable:!0}),Vg=`Switch`,[Hg,Ug]=Kt(Vg),[Wg,Gg]=Hg(Vg);function Kg(e){let{__scopeSwitch:t,checked:n,children:r,defaultChecked:i,disabled:a,form:o,name:s,onCheckedChange:c,required:l,value:u=`on`,internal_do_not_use_render:d}=e,[f,p]=rn({prop:n,defaultProp:i??!1,onChange:c,caller:Vg}),[m,h]=y.useState(null),[g,_]=y.useState(null),[v,b]=y.useState(null),x={checked:f,setChecked:p,disabled:a,control:m,setControl:h,name:s,form:o,value:u,userClick:v,onUserClick:b,required:l,defaultChecked:i,isFormControl:!m||!!o||!!m.closest(`form`),bubbleInput:g,setBubbleInput:_};return(0,K.jsx)(Wg,{scope:t,...x,children:e_(d)?d(x):r})}Bg(Kg,`SwitchProvider`);var qg=`SwitchTrigger`,Jg=y.forwardRef(Bg(function({__scopeSwitch:e,onClick:t,...n},r){let{control:i,form:a,value:o,disabled:s,checked:c,required:l,setControl:u,setChecked:d,onUserClick:f,isFormControl:p,bubbleInput:m}=Gg(qg,e),h=T(r,u),g=y.useRef(c);return y.useEffect(()=>{let e=a?i?.ownerDocument.getElementById(a):i?.form;if(e instanceof HTMLFormElement){let t=Bg(()=>d(g.current),`reset`);return e.addEventListener(`reset`,t),()=>e.removeEventListener(`reset`,t)}},[i,a,d]),(0,K.jsx)(Y.button,{type:`button`,role:`switch`,"aria-checked":c,"aria-required":l,"data-state":t_(c),"data-disabled":s?``:void 0,disabled:s,value:o,...n,ref:h,onClick:J(t,e=>{let t=e.isPropagationStopped();f({requestedChecked:!c,hasConsumerStoppedPropagation:t}),d(e=>!e),m&&p&&(t||e.stopPropagation())})})},`SwitchTrigger`)),Yg=y.forwardRef(Bg(function(e,t){let{__scopeSwitch:n,name:r,checked:i,defaultChecked:a,required:o,disabled:s,value:c,onCheckedChange:l,form:u,...d}=e;return(0,K.jsx)(Kg,{__scopeSwitch:n,checked:i,defaultChecked:a,disabled:s,required:o,onCheckedChange:l,name:r,form:u,value:c,internal_do_not_use_render:({isFormControl:e})=>(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(Jg,{...d,ref:t,__scopeSwitch:n}),e&&(0,K.jsx)($g,{__scopeSwitch:n})]})})},`Switch`)),Xg=`SwitchThumb`,Zg=y.forwardRef(Bg(function(e,t){let{__scopeSwitch:n,...r}=e,i=Gg(Xg,n);return(0,K.jsx)(Y.span,{"data-state":t_(i.checked),"data-disabled":i.disabled?``:void 0,...r,ref:t})},`SwitchThumb`)),Qg=`SwitchBubbleInput`,$g=y.forwardRef(Bg(function({__scopeSwitch:e,onClick:t,...n},r){let{control:i,userClick:a,checked:o,defaultChecked:s,required:c,disabled:l,name:u,value:d,form:f,bubbleInput:p,setBubbleInput:m}=Gg(Qg,e),h=T(r,m),g=Va(i),_=y.useRef(!1),v=y.useRef(o),b=y.useRef(a),x=y.useRef(null);y.useEffect(()=>{let e=p;if(!e)return;let t=window.HTMLInputElement.prototype,n=Object.getOwnPropertyDescriptor(t,`checked`).set;if(!n)return;let r=v.current!==o;v.current=o;let i=a!==null&&a!==b.current;if(b.current=a,i)x.current=r?null:a,r&&n.call(e,o),e.dispatchEvent(new Event(`click`,{bubbles:!a.hasConsumerStoppedPropagation}));else if(r){let t=x.current;x.current=null;let r=t?.requestedChecked===o;_.current=!0,n.call(e,o),e.dispatchEvent(new Event(`click`,{bubbles:!(r&&t.hasConsumerStoppedPropagation)})),_.current=!1}},[p,o,a]);let S=y.useRef(o);return(0,K.jsx)(Y.input,{type:`checkbox`,"aria-hidden":!0,defaultChecked:s??S.current,required:c,disabled:l,name:u,value:d,form:f,...n,tabIndex:-1,ref:h,onClick:J(t,e=>{_.current&&e.stopPropagation()}),style:{...n.style,...g,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0,transform:`translateX(-100%)`}})},`SwitchBubbleInput`));function e_(e){return typeof e==`function`}Bg(e_,`isFunction`);function t_(e){return e?`checked`:`unchecked`}Bg(t_,`getState`);var n_=y.forwardRef(({className:e,...t},n)=>(0,K.jsx)(Yg,{className:jt(`peer inline-flex h-5 w-9 shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent shadow-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input`,e),...t,ref:n,children:(0,K.jsx)(Zg,{className:jt(`pointer-events-none block h-4 w-4 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-4 data-[state=unchecked]:translate-x-0`)})}));n_.displayName=Yg.displayName,vp();var r_=[`gpt-4.1`,`gpt-4.1-mini`,`o1`,`o1-mini`,`o3-mini`];function i_({open:e,onOpenChange:t,onBackendUrlChange:n}){let[r,i]=(0,y.useState)(`general`),{oaiMode:a,setOAIMode:o,azureDeploymentEnabled:s,setAzureDeploymentEnabled:c,authRequired:l,serverCapabilities:u,serverVersion:d,runtime:f,uiMode:p,streamingEnabled:m,setStreamingEnabled:h}=Q(),[g,_]=(0,y.useState)(()=>localStorage.getItem(`devui_backend_url`)||``),[v,b]=(0,y.useState)(g),[x,S]=(0,y.useState)(!!localStorage.getItem(`devui_auth_token`)),[C,w]=(0,y.useState)(``),T=()=>{try{new URL(v),localStorage.setItem(`devui_backend_url`,v),_(v),n?.(v),t(!1),window.location.reload()}catch{alert(`Please enter a valid URL (e.g., http://localhost:8080)`)}},E=()=>{localStorage.removeItem(`devui_backend_url`),b(``),_(``),n?.(``),window.location.reload()},D=()=>{C.trim()&&(localStorage.setItem(`devui_auth_token`,C.trim()),S(!0),w(``),window.location.reload())},O=()=>{localStorage.removeItem(`devui_auth_token`),S(!1),w(``),window.location.reload()},k=v!==g,A=!localStorage.getItem(`devui_backend_url`);return(0,K.jsx)(Og,{open:e,onOpenChange:t,children:(0,K.jsxs)(kg,{className:`w-[600px] max-w-[90vw] flex flex-col max-h-[85vh]`,children:[(0,K.jsx)(Ag,{className:`p-6 pb-2 flex-shrink-0`,children:(0,K.jsx)(jg,{children:`Settings`})}),(0,K.jsx)(Ng,{onClose:()=>t(!1)}),(0,K.jsxs)(`div`,{className:`flex border-b px-6 flex-shrink-0`,children:[(0,K.jsxs)(`button`,{onClick:()=>i(`general`),className:`px-4 py-2 text-sm font-medium transition-colors relative ${r===`general`?`text-foreground`:`text-muted-foreground hover:text-foreground`}`,children:[`General`,r===`general`&&(0,K.jsx)(`div`,{className:`absolute bottom-0 left-0 right-0 h-0.5 bg-primary`})]}),u.openai_proxy&&(0,K.jsxs)(`button`,{onClick:()=>i(`proxy`),className:`px-4 py-2 text-sm font-medium transition-colors relative ${r===`proxy`?`text-foreground`:`text-muted-foreground hover:text-foreground`}`,children:[`OpenAI Proxy`,r===`proxy`&&(0,K.jsx)(`div`,{className:`absolute bottom-0 left-0 right-0 h-0.5 bg-primary`})]}),(0,K.jsxs)(`button`,{onClick:()=>i(`about`),className:`px-4 py-2 text-sm font-medium transition-colors relative ${r===`about`?`text-foreground`:`text-muted-foreground hover:text-foreground`}`,children:[`About`,r===`about`&&(0,K.jsx)(`div`,{className:`absolute bottom-0 left-0 right-0 h-0.5 bg-primary`})]})]}),(0,K.jsxs)(`div`,{className:`px-6 pb-6 overflow-y-auto flex-1 min-h-[400px]`,children:[r===`general`&&(0,K.jsxs)(`div`,{className:`space-y-6 pt-4`,children:[(0,K.jsxs)(`div`,{className:`space-y-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsx)(Rg,{htmlFor:`backend-url`,className:`text-sm font-medium`,children:`Backend URL`}),!A&&(0,K.jsxs)(q,{variant:`ghost`,size:`sm`,onClick:E,className:`h-7 text-xs`,title:`Reset to default`,children:[(0,K.jsx)(Ld,{className:`h-3 w-3 mr-1`}),`Reset`]})]}),(0,K.jsx)(Fg,{id:`backend-url`,type:`url`,value:v,onChange:e=>b(e.target.value),placeholder:`http://localhost:8080`,className:`font-mono text-sm`}),(0,K.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`Default: `,(0,K.jsx)(`span`,{className:`font-mono`,children:``})]}),(0,K.jsx)(`div`,{className:`flex gap-2 pt-2 min-h-[36px]`,children:k&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(q,{onClick:T,size:`sm`,className:`flex-1`,children:`Apply & Reload`}),(0,K.jsx)(q,{onClick:()=>b(g),variant:`outline`,size:`sm`,className:`flex-1`,children:`Cancel`})]})})]}),(l||x)&&(0,K.jsxs)(`div`,{className:`space-y-3 border-t pt-6`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsx)(Rg,{className:`text-sm font-medium`,children:`Authentication Token`}),!l&&x&&(0,K.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`(Not required by current backend)`})]}),x?(0,K.jsxs)(`div`,{className:`space-y-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(Fg,{type:`password`,value:`••••••••••••••••••••`,disabled:!0,className:`font-mono text-sm flex-1`}),(0,K.jsx)(q,{variant:`destructive`,size:`sm`,onClick:O,className:`flex-shrink-0`,children:`Clear`})]}),(0,K.jsx)(`p`,{className:`text-xs text-green-600 dark:text-green-400`,children:`✓ Token configured and stored locally`})]}):(0,K.jsxs)(`div`,{className:`space-y-3`,children:[(0,K.jsx)(Fg,{type:`password`,value:C,onChange:e=>w(e.target.value),placeholder:`Enter bearer token`,className:`font-mono text-sm`,onKeyDown:e=>{e.key===`Enter`&&C.trim()&&D()}}),(0,K.jsx)(q,{onClick:D,size:`sm`,disabled:!C.trim(),className:`w-full`,children:`Save & Reload`}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:l?`Required by backend (started with --auth flag)`:`Not required by current backend`})]})]}),u.deployment&&(0,K.jsxs)(`div`,{className:`space-y-3 border-t pt-6`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`div`,{className:`space-y-0.5`,children:[(0,K.jsx)(Rg,{className:`text-sm font-medium`,children:`Azure Deployment`}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Enable one-click deployment to Azure Container Apps`})]}),(0,K.jsx)(n_,{checked:s,onCheckedChange:c})]}),(0,K.jsxs)(`details`,{className:`group`,children:[(0,K.jsxs)(`summary`,{className:`cursor-pointer text-xs text-muted-foreground hover:text-foreground transition-colors flex items-center gap-1`,children:[(0,K.jsx)(du,{className:`h-3 w-3 transition-transform group-open:rotate-90`}),`Learn more about Azure deployment`]}),(0,K.jsxs)(`div`,{className:`mt-3 space-y-3 pl-4`,children:[(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground leading-relaxed`,children:`When enabled, agents that support deployment will show a "Deploy to Azure" button. This allows you to deploy your agent to Azure Container Apps directly from DevUI.`}),(0,K.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,K.jsx)(`p`,{className:`text-xs font-medium`,children:`When enabled:`}),(0,K.jsxs)(`ul`,{className:`text-xs text-muted-foreground space-y-0.5 list-disc list-inside`,children:[(0,K.jsx)(`li`,{children:`Shows "Deploy to Azure" for supported agents`}),(0,K.jsx)(`li`,{children:`Requires Azure CLI and proper authentication`}),(0,K.jsx)(`li`,{children:`Backend must have deployment capabilities enabled`})]})]}),(0,K.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,K.jsx)(`p`,{className:`text-xs font-medium`,children:`When disabled:`}),(0,K.jsxs)(`ul`,{className:`text-xs text-muted-foreground space-y-0.5 list-disc list-inside`,children:[(0,K.jsx)(`li`,{children:`Shows "Deployment Guide" for all agents`}),(0,K.jsx)(`li`,{children:`Provides Docker templates and manual deployment instructions`}),(0,K.jsx)(`li`,{children:`No backend deployment capabilities required`})]})]})]})]})]}),(0,K.jsx)(`div`,{className:`space-y-3 border-t pt-6`,children:(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`div`,{className:`space-y-0.5`,children:[(0,K.jsx)(Rg,{className:`text-sm font-medium`,children:`Show Tool Calls`}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Display function/tool calls and results in chat messages`})]}),(0,K.jsx)(n_,{checked:Q.getState().showToolCalls,onCheckedChange:e=>Q.getState().setShowToolCalls(e)})]})}),(0,K.jsxs)(`div`,{className:`space-y-3 border-t pt-6`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`div`,{className:`space-y-0.5`,children:[(0,K.jsx)(Rg,{className:`text-sm font-medium`,children:`Streaming Mode`}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Stream responses token-by-token as they're generated`})]}),(0,K.jsx)(n_,{checked:m,onCheckedChange:h})]}),!m&&(0,K.jsxs)(`div`,{className:`flex items-start gap-2 text-xs text-amber-600 dark:text-amber-400 bg-amber-500/10 p-3 rounded`,children:[(0,K.jsx)(td,{className:`h-3.5 w-3.5 flex-shrink-0 mt-0.5`}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`p`,{className:`font-medium`,children:`Non-streaming mode limitations:`}),(0,K.jsxs)(`ul`,{className:`mt-1 space-y-0.5 list-disc list-inside text-amber-600/80 dark:text-amber-400/80`,children:[(0,K.jsx)(`li`,{children:`Tool calls won't display in real-time`}),(0,K.jsx)(`li`,{children:`No typing indicator during generation`}),(0,K.jsx)(`li`,{children:`Response appears all at once when complete`})]})]})]})]})]}),r===`proxy`&&u.openai_proxy&&(0,K.jsxs)(`div`,{className:`space-y-6 pt-4`,children:[(0,K.jsxs)(`div`,{className:`space-y-4`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`div`,{className:`space-y-0.5`,children:[(0,K.jsx)(Rg,{className:`text-base font-medium`,children:`OpenAI Proxy Mode`}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Route requests through DevUI backend to OpenAI API`})]}),(0,K.jsx)(n_,{checked:a.enabled,onCheckedChange:e=>o({...a,enabled:e})})]}),!a.enabled&&(0,K.jsx)(`div`,{className:`bordder border-muted bg-muted/30 rounded-lg p-4 space-y-3`,children:(0,K.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,K.jsx)(td,{className:`h-4 w-4 flex-shrink-0 mt-0.5 text-blue-600 dark:text-blue-400`}),(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsx)(`p`,{className:`text-sm font-medium`,children:`About OpenAI Proxy Mode`}),(0,K.jsxs)(`p`,{className:`text-xs text-muted-foreground leading-relaxed`,children:[`When enabled, your chat requests are sent to your DevUI backend`,` `,(0,K.jsxs)(`span`,{className:`font-mono font-semibold`,children:[`(`,g,`)`]}),`, which then forwards them to OpenAI's API. This keeps your`,` `,(0,K.jsx)(`span`,{className:`font-mono font-semibold`,children:`OPENAI_API_KEY`}),` `,`secure on the server instead of exposing it in the browser.`]}),(0,K.jsxs)(`div`,{className:`space-y-1.5 pt-1`,children:[(0,K.jsx)(`p`,{className:`text-xs font-medium`,children:`Requirements:`}),(0,K.jsxs)(`ul`,{className:`text-xs text-muted-foreground space-y-0.5 list-disc list-inside`,children:[(0,K.jsxs)(`li`,{children:[`Backend must have`,` `,(0,K.jsx)(`span`,{className:`font-mono`,children:`OPENAI_API_KEY`}),` `,`configured`]}),(0,K.jsx)(`li`,{children:`Backend must support OpenAI Responses API proxying (DevUI does)`})]})]}),(0,K.jsxs)(`div`,{className:`space-y-1.5 pt-1`,children:[(0,K.jsx)(`p`,{className:`text-xs font-medium`,children:`Why use this?`}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Quickly test and compare OpenAI models directly through the DevUI interface without creating custom agents or exposing API keys in the browser.`})]})]})]})}),a.enabled&&(0,K.jsxs)(`div`,{className:`space-y-4 pl-4 border-l-2 border-muted`,children:[(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsx)(Rg,{className:`text-sm font-medium`,children:`Model`}),(0,K.jsx)(Fg,{type:`text`,value:a.model,onChange:e=>o({...a,model:e.target.value}),placeholder:`gpt-4.1-mini`,className:`font-mono text-sm`}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Enter any OpenAI model ID (e.g., gpt-4.1, o1, o3-mini)`})]}),(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsx)(Rg,{className:`text-xs text-muted-foreground`,children:`Common presets`}),(0,K.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:r_.map(e=>(0,K.jsx)(q,{variant:a.model===e?`default`:`outline`,size:`sm`,onClick:()=>o({...a,model:e}),className:`text-xs h-7`,children:e},e))})]}),(0,K.jsxs)(`details`,{className:`group`,children:[(0,K.jsxs)(`summary`,{className:`cursor-pointer text-sm font-medium text-muted-foreground hover:text-foreground transition-colors flex items-center gap-1`,children:[(0,K.jsx)(du,{className:`h-3 w-3 transition-transform group-open:rotate-90`}),`Advanced Parameters (optional)`]}),(0,K.jsxs)(`div`,{className:`space-y-3 mt-3 pl-4`,children:[(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(Rg,{className:`text-xs`,children:`Temperature`}),(0,K.jsx)(Fg,{type:`number`,step:`0.1`,min:`0`,max:`2`,value:a.temperature??``,onChange:e=>o({...a,temperature:e.target.value?parseFloat(e.target.value):void 0}),placeholder:`1.0 (default)`,className:`text-sm`}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Controls randomness (0-2)`})]}),(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(Rg,{className:`text-xs`,children:`Max Output Tokens`}),(0,K.jsx)(Fg,{type:`number`,min:`1`,value:a.max_output_tokens??``,onChange:e=>o({...a,max_output_tokens:e.target.value?parseInt(e.target.value):void 0}),placeholder:`Auto`,className:`text-sm`}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Maximum tokens in response`})]}),(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(Rg,{className:`text-xs`,children:`Top P`}),(0,K.jsx)(Fg,{type:`number`,step:`0.1`,min:`0`,max:`1`,value:a.top_p??``,onChange:e=>o({...a,top_p:e.target.value?parseFloat(e.target.value):void 0}),placeholder:`1.0 (default)`,className:`text-sm`}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Nucleus sampling (0-1)`})]}),(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(Rg,{className:`text-xs`,children:`Reasoning Effort (o-series models)`}),(0,K.jsxs)(`select`,{value:a.reasoning_effort??``,onChange:e=>o({...a,reasoning_effort:e.target.value?e.target.value:void 0}),className:`flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring`,children:[(0,K.jsx)(`option`,{value:``,children:`Auto (default)`}),(0,K.jsx)(`option`,{value:`minimal`,children:`Minimal`}),(0,K.jsx)(`option`,{value:`low`,children:`Low`}),(0,K.jsx)(`option`,{value:`medium`,children:`Medium`}),(0,K.jsx)(`option`,{value:`high`,children:`High`})]}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Constrains reasoning effort (faster/cheaper vs thorough)`})]})]})]})]})]}),a.enabled&&(0,K.jsxs)(`div`,{className:`flex items-start gap-2 text-xs text-muted-foreground bg-muted/50 p-3 rounded`,children:[(0,K.jsx)(td,{className:`h-3.5 w-3.5 flex-shrink-0 mt-0.5`}),(0,K.jsx)(`div`,{className:`space-y-1`,children:(0,K.jsxs)(`p`,{children:[`Requests route through`,` `,(0,K.jsx)(`span`,{className:`font-mono font-semibold`,children:g}),` `,`to OpenAI API. Server must have`,` `,(0,K.jsx)(`span`,{className:`font-mono font-semibold`,children:`OPENAI_API_KEY`}),` `,`configured.`]})})]})]}),r===`about`&&(0,K.jsxs)(`div`,{className:`space-y-4 pt-4`,children:[(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`DevUI is a sample app for getting started with Agent Framework.`}),(0,K.jsxs)(`div`,{className:`space-y-2 text-sm`,children:[(0,K.jsxs)(`div`,{className:`flex justify-between`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Version:`}),(0,K.jsx)(`span`,{className:`font-mono`,children:d||`Unknown`})]}),(0,K.jsxs)(`div`,{className:`flex justify-between`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Runtime:`}),(0,K.jsx)(`span`,{className:`font-mono capitalize`,children:f||`Unknown`})]}),(0,K.jsxs)(`div`,{className:`flex justify-between`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`UI Mode:`}),(0,K.jsx)(`span`,{className:`font-mono capitalize`,children:p||`Unknown`})]})]}),(u||l!==void 0)&&(0,K.jsxs)(`div`,{className:`space-y-2 pt-2`,children:[(0,K.jsx)(`p`,{className:`text-xs font-medium text-muted-foreground uppercase tracking-wide`,children:`Capabilities`}),(0,K.jsxs)(`div`,{className:`space-y-1 text-sm`,children:[u?.instrumentation!==void 0&&(0,K.jsxs)(`div`,{className:`flex justify-between items-center`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Instrumentation:`}),(0,K.jsx)(`span`,{className:`text-xs px-2 py-0.5 rounded-full ${u.instrumentation?`bg-green-500/10 text-green-600 dark:text-green-400`:`bg-muted text-muted-foreground`}`,children:u.instrumentation?`Enabled`:`Disabled`})]}),u?.openai_proxy!==void 0&&(0,K.jsxs)(`div`,{className:`flex justify-between items-center`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`OpenAI Proxy:`}),(0,K.jsx)(`span`,{className:`text-xs px-2 py-0.5 rounded-full ${u.openai_proxy?`bg-green-500/10 text-green-600 dark:text-green-400`:`bg-muted text-muted-foreground`}`,children:u.openai_proxy?`Available`:`Not Configured`})]}),u?.deployment!==void 0&&(0,K.jsxs)(`div`,{className:`flex justify-between items-center`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Deployment:`}),(0,K.jsx)(`span`,{className:`text-xs px-2 py-0.5 rounded-full ${u.deployment?`bg-green-500/10 text-green-600 dark:text-green-400`:`bg-muted text-muted-foreground`}`,children:u.deployment?`Available`:`Disabled`})]}),l!==void 0&&(0,K.jsxs)(`div`,{className:`flex justify-between items-center`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Authentication:`}),(0,K.jsx)(`span`,{className:`text-xs px-2 py-0.5 rounded-full ${l?`bg-blue-500/10 text-blue-600 dark:text-blue-400`:`bg-muted text-muted-foreground`}`,children:l?`Required`:`Not Required`})]})]})]}),(0,K.jsx)(`div`,{className:`flex justify-center pt-2`,children:(0,K.jsxs)(q,{variant:`outline`,size:`sm`,onClick:()=>window.open(`https://github.com/microsoft/agent-framework`,`_blank`),className:`text-xs`,children:[(0,K.jsx)(Vu,{className:`h-3 w-3 mr-1`}),`Learn More about Agent Framework`]})})]})]})]})})}function a_(e,t){if(t.type!==`response.output_text.delta`&&t.type!==`response.refusal.delta`||!(`delta`in t)||typeof t.delta!=`string`||t.delta.length===0)return e;let n=t.type===`response.refusal.delta`?`refusal`:`text`,r=e.map(e=>({...e})),i=r.find(e=>e.itemId===t.item_id&&e.contentIndex===(t.content_index??0)&&e.type===n);return i?i.text+=t.delta:r.push({itemId:t.item_id,contentIndex:t.content_index??0,type:n,text:t.delta}),r}var o_=`devui_streaming_state_`,s_=864e5,c_=16384;function l_(e){return`${o_}${e}`}function u_(e){if(e.accumulatedParts?.length){let t=[],n=c_;for(let r of[...e.accumulatedParts].reverse()){if(n<=0)break;let e=r.text.slice(-n);t.unshift({...r,text:e}),n-=e.length}let r=t.map(e=>e.text).join(``);return{...e,accumulatedParts:t,accumulatedText:r,accumulatedTextIsPreview:e.accumulatedTextIsPreview||r.lengthe+t.text.length,0)}}return e.accumulatedText===void 0||e.accumulatedText.length<=c_?e:{...e,accumulatedText:e.accumulatedText.slice(-16384),accumulatedTextIsPreview:!0}}function d_(e){let t=l_(e),n=localStorage.getItem(t);if(!n)return null;let r=JSON.parse(n);return Date.now()-r.timestamp>s_?(g_(e),null):u_(r)}function f_({conversationId:e,responseId:t,lastMessageId:n,lastSequenceNumber:r=-1,accumulatedText:i,accumulatedTextIsPreview:a=!1,accumulatedTextType:o,accumulatedParts:s}){return u_({conversationId:e,responseId:t,lastMessageId:n,lastSequenceNumber:r,timestamp:Date.now(),completed:!1,accumulatedText:i,accumulatedTextIsPreview:a,accumulatedTextType:o,accumulatedParts:s})}function p_(e,t,n,r){let i=`sequence_number`in t?t.sequence_number:void 0,a={...e,responseId:n,lastMessageId:r,timestamp:Date.now(),completed:t.type===`response.completed`||t.type===`response.failed`};if(i!==void 0&&(a.lastSequenceNumber=i),(t.type===`response.output_text.delta`||t.type===`response.refusal.delta`)&&`delta`in t&&typeof t.delta==`string`&&t.delta.length>0){let n=t.type===`response.refusal.delta`?`refusal`:`text`,r=a_(e.accumulatedParts?e.accumulatedParts.map(e=>({...e})):e.accumulatedText?[{itemId:e.lastMessageId,contentIndex:0,type:e.accumulatedTextType??`text`,text:e.accumulatedText}]:[],t);a.accumulatedParts=r,a.accumulatedText=r.map(e=>e.text).join(``),a.accumulatedTextIsPreview=e.accumulatedTextIsPreview,a.accumulatedTextType=n}return u_(a)}function m_(e){try{let t=l_(e.conversationId),n=JSON.stringify(u_(e));localStorage.setItem(t,n)}catch(t){console.error(`Failed to save streaming state:`,t);try{__();let t=l_(e.conversationId),n=JSON.stringify(u_(e));localStorage.setItem(t,n)}catch{console.error(`Failed to save streaming state even after cleanup`)}}}function h_(e){try{let t=d_(e);return!t||t.completed?null:t}catch(e){return console.error(`Failed to load streaming state:`,e),null}}function g_(e){try{let t=l_(e);localStorage.removeItem(t)}catch(e){console.error(`Failed to clear streaming state:`,e)}}function __(){try{let e=Object.keys(localStorage),t=Date.now();for(let n of e)if(n.startsWith(o_))try{let e=localStorage.getItem(n);if(e){let r=JSON.parse(e);(t-r.timestamp>s_||r.completed)&&localStorage.removeItem(n)}}catch{localStorage.removeItem(n)}}catch(e){console.error(`Failed to clear expired streaming states:`,e)}}function v_(){__()}function y_(){let[e,t]=(0,y.useState)(!1),n=(0,y.useRef)(null);return{isCancelling:e,createAbortSignal:(0,y.useCallback)(()=>(n.current=new AbortController,t(!1),n.current.signal),[]),handleCancel:(0,y.useCallback)(()=>{n.current&&=(t(!0),n.current.abort(),null)},[]),resetCancelling:(0,y.useCallback)(()=>{t(!1)},[]),cleanup:(0,y.useCallback)(()=>{n.current&&=(n.current.abort(),null)},[])}}function b_(e){return e instanceof DOMException&&e.name===`AbortError`}function x_(e={}){let{onDrop:t,disabled:n=!1}=e,[r,i]=(0,y.useState)(!1),[a,o]=(0,y.useState)([]),s=(0,y.useRef)(0),c=(0,y.useCallback)(e=>{e.preventDefault(),e.stopPropagation(),!n&&(s.current++,e.dataTransfer.items&&e.dataTransfer.items.length>0&&i(!0))},[n]),l=(0,y.useCallback)(e=>{e.preventDefault(),e.stopPropagation(),!n&&(s.current--,s.current===0&&i(!1))},[n]),u=(0,y.useCallback)(e=>{e.preventDefault(),e.stopPropagation()},[]),d=(0,y.useCallback)(e=>{if(e.preventDefault(),e.stopPropagation(),i(!1),s.current=0,n)return;let r=Array.from(e.dataTransfer.files);r.length>0&&(o(r),t?.(r))},[n,t]);return{isDragOver:r,droppedFiles:a,clearDroppedFiles:(0,y.useCallback)(()=>{o([])},[]),dragHandlers:{onDragEnter:c,onDragLeave:l,onDragOver:u,onDrop:d}}}var S_=`modulepreload`,C_=function(e,t){return new URL(e,t).href},w_={},T_=function(e){return e.pathname.endsWith(`.css`)},E_=function(e,t,n){if(t in e)return e[t];let r=n();if(!r){e[t]=void 0;return}let i=r.then(()=>{e[t]=void 0},n=>{throw e[t]=void 0,n});return e[t]=i,i},D_=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e,i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function s(e){return import.meta.resolve?new URL(import.meta.resolve(e)):new URL(e,import.meta.url)}r=o(t.map(t=>{t=C_(t,n);let r=s(t),i=T_(r);return E_(w_,r.href,()=>{if(e===void 0){e={all:new Set,styles:new Set};let t=document.getElementsByTagName(`link`);for(let n=t.length-1;n>=0;n--){let r=t[n];e.all.add(r.href),r.rel===`stylesheet`&&e.styles.add(r.href)}}if((i?e.styles:e.all).has(r.href))return;let t=document.createElement(`link`);if(t.rel=i?`stylesheet`:S_,i||(t.as=`script`),t.crossOrigin=``,t.href=r.href,a&&t.setAttribute(`nonce`,a),document.head.appendChild(t),i)return new Promise((e,n)=>{t.addEventListener(`load`,e),t.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${r}`)))})})}).filter(e=>e!==void 0))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},O_=``,k_=1e3,A_=10,j_=250,M_=12,N_=500,P_=6e3;function F_(){return localStorage.getItem(`devui_backend_url`)||O_}function I_(e,t){return t?t.aborted?Promise.reject(new DOMException(`Request aborted`,`AbortError`)):new Promise((n,r)=>{let i=setTimeout(()=>{t.removeEventListener(`abort`,a),n()},e),a=()=>{clearTimeout(i),r(new DOMException(`Request aborted`,`AbortError`))};t.addEventListener(`abort`,a,{once:!0})}):new Promise(t=>setTimeout(t,e))}function L_(e){if(e.type===`response.trace.completed`&&`data`in e&&typeof e.data==`object`&&e.data!==null)return e.data}var R_=new class{baseUrl;authToken=null;constructor(e){this.baseUrl=e||F_(),this.authToken=localStorage.getItem(`devui_auth_token`)}setBaseUrl(e){this.baseUrl=e}getBaseUrl(){return this.baseUrl}setAuthToken(e){this.authToken=e,e?localStorage.setItem(`devui_auth_token`,e):localStorage.removeItem(`devui_auth_token`)}getAuthToken(){return this.authToken}clearAuthToken(){this.setAuthToken(null)}async request(e,t={}){let n=`${this.baseUrl}${e}`,r={"Content-Type":`application/json`,...t.headers};this.authToken&&(r.Authorization=`Bearer ${this.authToken}`);let i=await fetch(n,{...t,headers:r});if(!i.ok){if(i.status===401)throw this.clearAuthToken(),Error(`UNAUTHORIZED`);let e=`API request failed: ${i.status} ${i.statusText}`;try{let t=await i.json();t.detail?typeof t.detail==`string`?e=t.detail:typeof t.detail==`object`&&t.detail.error?.message&&(e=t.detail.error.message):t.error?.message&&(e=t.error.message)}catch{}throw Error(e)}return i.json()}async getTraceEvents(e,t,n){if(!t)return[];if(n?.aborted)throw new DOMException(`Request aborted`,`AbortError`);let r={};this.authToken&&(r.Authorization=`Bearer ${this.authToken}`);let i=new Map,a=new AbortController,o=()=>a.abort();n?.addEventListener(`abort`,o,{once:!0});let s=setTimeout(o,P_);try{for(let t=0;t0)for(let t of e.data){let e=L_(t)?.span_id;e&&i.set(e,t)}}else if(t.status===401)return this.clearAuthToken(),[];else if(t.status!==404&&t.status!==503)break}catch(e){if(b_(e)||a.signal.aborted)throw e}t<11&&await I_(N_,a.signal)}}catch(e){if(n?.aborted||!a.signal.aborted)throw e}finally{clearTimeout(s),n?.removeEventListener(`abort`,o)}return Array.from(i.values())}async getHealth(){return this.request(`/health`)}async getMeta(){return this.request(`/meta`)}async getEntities(){let e=(await this.request(`/v1/entities`)).entities.map(e=>{if(e.type===`agent`)return{id:e.id,name:e.name,description:e.description,type:`agent`,source:e.source||`directory`,tools:(e.tools||[]).map(e=>typeof e==`string`?e:JSON.stringify(e)),has_env:!!(e.required_env_vars&&e.required_env_vars.length>0),module_path:typeof e.metadata?.module_path==`string`?e.metadata.module_path:void 0,required_env_vars:e.required_env_vars,metadata:e.metadata,deployment_supported:e.deployment_supported,deployment_reason:e.deployment_reason,instructions:e.instructions,model_id:e.model_id,chat_client_type:e.chat_client_type,context_provider:e.context_provider,middleware:e.middleware};{let t=e.executors||e.tools||[],n=e.start_executor_id||``;if(!n&&t.length>0){let e=t[0];typeof e==`string`&&(n=e)}return{id:e.id,name:e.name,description:e.description,type:`workflow`,source:e.source||`directory`,executors:t.map(e=>typeof e==`string`?e:JSON.stringify(e)),has_env:!!(e.required_env_vars&&e.required_env_vars.length>0),module_path:typeof e.metadata?.module_path==`string`?e.metadata.module_path:void 0,required_env_vars:e.required_env_vars,metadata:e.metadata,deployment_supported:e.deployment_supported,deployment_reason:e.deployment_reason,input_schema:e.input_schema||{type:`string`},input_type_name:e.input_type_name||`Input`,start_executor_id:n,tools:[]}}});return{entities:e,agents:e.filter(e=>e.type===`agent`),workflows:e.filter(e=>e.type===`workflow`)}}async getAgents(){let{agents:e}=await this.getEntities();return e}async getWorkflows(){let{workflows:e}=await this.getEntities();return e}async getAgentInfo(e){return this.request(`/v1/entities/${e}/info?type=agent`)}async getWorkflowInfo(e){return this.request(`/v1/entities/${e}/info?type=workflow`)}async reloadEntity(e){return this.request(`/v1/entities/${e}/reload`,{method:`POST`})}async createConversation(e){let{oaiMode:t}=await D_(()=>Promise.resolve().then(()=>(vp(),_p)).then(e=>({oaiMode:e.useDevUIStore.getState().oaiMode})),void 0,import.meta.url),n={};t.enabled&&(n[`X-Proxy-Backend`]=`openai`);let r=await this.request(`/v1/conversations`,{method:`POST`,headers:n,body:JSON.stringify({metadata:e})});return{id:r.id,object:`conversation`,created_at:r.created_at,metadata:r.metadata}}async listConversations(e){let t=e?`/v1/conversations?agent_id=${encodeURIComponent(e)}`:`/v1/conversations`,n=await this.request(t);return{data:n.data.map(e=>({id:e.id,object:`conversation`,created_at:e.created_at,metadata:e.metadata})),has_more:n.has_more}}async getConversation(e){let t=await this.request(`/v1/conversations/${e}`);return{id:t.id,object:`conversation`,created_at:t.created_at,metadata:t.metadata}}async deleteConversation(e){try{return await this.request(`/v1/conversations/${e}`,{method:`DELETE`}),g_(e),!0}catch{return!1}}async listConversationItems(e,t){let n=new URLSearchParams;t?.limit&&n.set(`limit`,t.limit.toString()),t?.after&&n.set(`after`,t.after),t?.order&&n.set(`order`,t.order);let r=n.toString(),i=`/v1/conversations/${e}/items${r?`?${r}`:``}`;return this.request(i)}async getConversationItem(e,t){let n=`/v1/conversations/${e}/items/${t}`;return this.request(n)}async deleteConversationItem(e,t){let n=await fetch(`${this.baseUrl}/v1/conversations/${e}/items/${t}`,{method:`DELETE`});if(!n.ok)throw Error(`Failed to delete item: ${n.statusText}`)}async*streamOpenAIResponse(e,t,n,r){let{oaiMode:i}=await D_(()=>Promise.resolve().then(()=>(vp(),_p)).then(e=>({oaiMode:e.useDevUIStore.getState().oaiMode})),void 0,import.meta.url);i.enabled&&(e.model=i.model,i.temperature!==void 0&&(e.temperature=i.temperature),i.max_output_tokens!==void 0&&(e.max_output_tokens=i.max_output_tokens),i.top_p!==void 0&&(e.top_p=i.top_p),i.instructions!==void 0&&(e.instructions=i.instructions),i.reasoning_effort!==void 0&&(e.reasoning={effort:i.reasoning_effort}));let a=-1,o=0,s=!1,c=r,l,u=0,d=t?h_(t):null,f=d?{...d}:null,p=(e=!1)=>{if(!t||!f)return;let n=Date.now();!e&&n-u{if(!t||!c)return;f=p_(f??f_({conversationId:t,responseId:c,lastMessageId:l,lastSequenceNumber:a,accumulatedText:d?.accumulatedText,accumulatedTextIsPreview:d?.accumulatedTextIsPreview,accumulatedTextType:d?.accumulatedTextType,accumulatedParts:d?.accumulatedParts}),e,c,l);let n=(e.type===`response.output_text.delta`||e.type===`response.refusal.delta`)&&`delta`in e&&typeof e.delta==`string`&&e.delta.length>0;p(!n)};for(d&&(r||(c=d.responseId),a=d.lastSequenceNumber,l=d.lastMessageId,s=d.lastSequenceNumber>=0||!!d.accumulatedText);o<=A_;)try{let r;if(c){let e=new URLSearchParams;e.set(`stream`,`true`),a>=0&&e.set(`starting_after`,a.toString());let t=`${this.baseUrl}/v1/responses/${c}?${e.toString()}`,i={Accept:`text/event-stream`};this.authToken&&(i.Authorization=`Bearer ${this.authToken}`),r=await fetch(t,{method:`GET`,headers:i,signal:n})}else{let t=`${this.baseUrl}/v1/responses`,a={"Content-Type":`application/json`,Accept:`text/event-stream`};i.enabled&&(a[`X-Proxy-Backend`]=`openai`),this.authToken&&(a.Authorization=`Bearer ${this.authToken}`),r=await fetch(t,{method:`POST`,headers:a,body:JSON.stringify(e),signal:n})}if(!r.ok){if(r.status===401)throw this.clearAuthToken(),Error(`UNAUTHORIZED`);if(r.status>=400&&r.status<500){let e=`Client error ${r.status}`;try{let t=await r.json();t.error&&t.error.message?e=t.error.message:t.detail&&(e=t.detail)}catch{}throw Error(`CLIENT_ERROR: ${e}`)}let e=`Request failed with status ${r.status}`;try{let t=await r.json();t.error&&t.error.message?e=t.error.message:t.detail&&(e=t.detail)}catch{}throw Error(e)}let o=r.body?.getReader();if(!o)throw Error(`Response body is not readable`);let p=new TextDecoder,h=``;try{for(;;){if(n?.aborted)throw new DOMException(`Request aborted`,`AbortError`);let{done:e,value:r}=await o.read();if(e){t&&(g_(t),f=null);return}let i=p.decode(r,{stream:!0});h+=i;let g=h.split(` -`);h=g.pop()||``;for(let e of g)if(e.startsWith(`data: `)){let n=e.slice(6);if(n===`[DONE]`){t&&(g_(t),f=null);return}try{let e=JSON.parse(n);if(`response`in e&&e.response&&typeof e.response==`object`&&`id`in e.response){let t=e.response.id;(!c||c!==t)&&(c=t)}else if(`id`in e&&typeof e.id==`string`&&e.id.startsWith(`resp_`)){let t=e.id;(!c||c!==t)&&(c=t)}`item_id`in e&&e.item_id&&(l=e.item_id);let r=`sequence_number`in e?e.sequence_number:void 0;if(r!==void 0){if(s&&r<=1&&a>1)t&&g_(t),d=null,f=null,u=0,yield{type:`error`,message:`Connection lost - previous response failed. Starting new response.`},a=r,s=!0,m(e),yield e;else if(r<=a)continue;else a=r,s=!0,m(e),yield e}else s=!0,m(e),yield e}catch(e){console.error(`Failed to parse OpenAI SSE event:`,e)}}}}finally{o.releaseLock()}}catch(e){let r=e instanceof Error?e.message:String(e);if(b_(e))throw t&&(g_(t),f=null),e;if(r===`UNAUTHORIZED`||r.startsWith(`CLIENT_ERROR:`))throw e;if(o++,o>A_)throw Error(`Connection failed after ${A_} retry attempts: ${r}`);await I_(Math.min(k_*2**(o-1),3e4),n)}}async*streamAgentExecutionOpenAI(e,t,n,r){let i={metadata:{entity_id:e},input:t.input,stream:!0,conversation:t.conversation_id};return yield*this.streamAgentExecutionOpenAIDirect(e,i,t.conversation_id,n,r)}async*streamAgentExecutionOpenAIDirect(e,t,n,r,i){yield*this.streamOpenAIResponse(t,n,r,i)}async*streamWorkflowExecutionOpenAI(e,t,n){let r={metadata:{entity_id:e},input:JSON.stringify(t.input_data||{}),stream:!0,conversation:t.conversation_id,extra_body:t.checkpoint_id?{entity_id:e,checkpoint_id:t.checkpoint_id}:void 0};yield*this.streamOpenAIResponse(r,t.conversation_id,n)}async runAgentSync(e,t){let{oaiMode:n}=await D_(()=>Promise.resolve().then(()=>(vp(),_p)).then(e=>({oaiMode:e.useDevUIStore.getState().oaiMode})),void 0,import.meta.url),r={metadata:{entity_id:e},input:t.input,stream:!1,conversation:t.conversation_id};n.enabled&&(r.model=n.model,n.temperature!==void 0&&(r.temperature=n.temperature),n.max_output_tokens!==void 0&&(r.max_output_tokens=n.max_output_tokens));let i={};return n.enabled&&(i[`X-Proxy-Backend`]=`openai`),this.request(`/v1/responses`,{method:`POST`,headers:i,body:JSON.stringify(r)})}async runWorkflowSync(e,t){let n={metadata:{entity_id:e},input:JSON.stringify(t.input_data||{}),stream:!1,conversation:t.conversation_id,extra_body:t.checkpoint_id?{entity_id:e,checkpoint_id:t.checkpoint_id}:void 0};return this.request(`/v1/responses`,{method:`POST`,body:JSON.stringify(n)})}clearStreamingState(e){g_(e)}async*streamDeployment(e){let t=await fetch(`${this.baseUrl}/v1/deployments`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({...e,stream:!0})});if(!t.ok)throw Error(`Deployment failed: ${t.statusText}`);let n=t.body?.getReader();if(!n)throw Error(`No response body`);let r=new TextDecoder,i=``;try{for(;;){let{done:e,value:t}=await n.read();if(e)break;i+=r.decode(t,{stream:!0});let a=i.split(` -`);i=a.pop()||``;for(let e of a)if(e.startsWith(`data: `)){let t=e.slice(6);if(t===`[DONE]`)return;try{yield JSON.parse(t)}catch(e){yield{type:`deploy.error`,message:`Failed to parse deployment event: ${e instanceof Error?e.message:`Unknown error`}`}}}}}catch(e){throw yield{type:`deploy.failed`,message:`Stream interrupted: ${e instanceof Error?e.message:`Unknown error`}`},e}finally{n.releaseLock()}}async listWorkflowSessions(e){let t=`/v1/conversations?entity_id=${encodeURIComponent(e)}&type=workflow_session`;return{data:(await this.request(t)).data.map(t=>({conversation_id:t.id,entity_id:t.metadata?.entity_id||e,created_at:t.created_at,metadata:{name:t.metadata?.name||`Session ${new Date(t.created_at*1e3).toLocaleString()}`,description:t.metadata?.description,type:`workflow_session`,checkpoint_summary:t.metadata?.checkpoint_summary}}))}}async createWorkflowSession(e,t){let n={entity_id:e,type:`workflow_session`,name:t?.name||`Session ${new Date().toLocaleString()}`,...t?.description&&{description:t.description}},r=await this.createConversation(n);return{conversation_id:r.id,entity_id:e,created_at:r.created_at,metadata:{name:n.name,description:n.description,type:`workflow_session`}}}async deleteWorkflowSession(e,t){if(!await this.deleteConversation(t))throw Error(`Failed to delete workflow session`)}};vp();function z_({open:e,onClose:t,agentName:n=`Agent`,entity:r}){let i=Q(e=>e.azureDeploymentEnabled)&&(r?.deployment_supported??!1),[a,o]=(0,y.useState)(i?`azure`:`docker`),[s,c]=(0,y.useState)(null),l=(0,y.useRef)(null),u=(0,y.useRef)(null),d=Q(e=>e.isDeploying),f=Q(e=>e.deploymentLogs),p=Q(e=>e.lastDeployment),m=Q(e=>e.startDeployment),h=Q(e=>e.addDeploymentLog),g=Q(e=>e.setDeploymentResult),_=Q(e=>e.stopDeployment),v=Q(e=>e.clearDeploymentState),b=e=>{let t=e.toLowerCase().replace(/[_\s]+/g,`-`).replace(/[^a-z0-9-]/g,``).replace(/--+/g,`-`).replace(/^[^a-z]+/,``).replace(/-$/,``);return(t.match(/^[a-z]/)?t:`app-${t}`).substring(0,31)},x=r?b(r.id):``,[S,C]=(0,y.useState)(`my-test-rg`),[w,T]=(0,y.useState)(x),[E,D]=(0,y.useState)(`eastus`),[O,k]=(0,y.useState)(null);(0,y.useEffect)(()=>{if(r){let e=b(r.id);T(e);let t=A(e);k(t)}},[r?.id]),(0,y.useEffect)(()=>{u.current&&f.length>0&&(u.current.scrollTop=u.current.scrollHeight)},[f]);let A=e=>e?e.length>=32?`App name must be less than 32 characters`:/^[a-z0-9-]+$/.test(e)?/^[a-z]/.test(e)?/[a-z0-9]$/.test(e)?e.includes(`--`)?`App name cannot contain consecutive hyphens (--)`:null:`App name must end with a letter or number`:`App name must start with a lowercase letter`:`App name must contain only lowercase letters, numbers, and hyphens (no underscores or uppercase)`:null;(0,y.useEffect)(()=>()=>{l.current&&clearTimeout(l.current)},[]);let j=async()=>{if(!r?.id||!S||!w)return;let e=S.trim(),t=w.trim(),n=A(t);if(n){k(n);return}try{m();for await(let n of R_.streamDeployment({entity_id:r.id,resource_group:e,app_name:t,region:E,ui_mode:`user`}))h(n.message),n.type===`deploy.completed`&&n.url&&n.auth_token?g({url:n.url,authToken:n.auth_token}):n.type===`deploy.failed`&&_()}catch(e){h(`Error: ${e instanceof Error?e.message:`Deployment failed`}`),_()}},M=async(e,t)=>{try{await navigator.clipboard.writeText(e),c(t),l.current&&clearTimeout(l.current),l.current=setTimeout(()=>{c(null),l.current=null},2e3)}catch{c(null)}},N=`# Dockerfile for ${n} +`)||i.trim().match(/[.!?]\s*$/))&&(t.push({type:`response.output_text.delta`,delta:i.trim()}),i=``);continue}a.type!==`response.usage.complete`&&t.push(a)}for(let[,e]of n)if(e.arguments.trim()&&e.arguments.trim().length>2){let n=r.get(e.callId)||e.name||`unknown`;t.push({type:`response.function_call.complete`,data:{name:n,arguments:e.arguments,call_id:e.callId}})}return i.trim()&&t.push({type:`response.output_text.delta`,delta:i.trim()}),t}function _g(e){switch(e.type){case`response.output_text.delta`:if(`delta`in e){let t=e.delta||``;return t.length>60?`${t.slice(0,60)}...`:t}return`Text output`;case`response.function_call.complete`:if(`data`in e&&e.data){let t=e.data,n=t.name||`unknown`;(!n||n===`unknown`)&&(n=`function_call`);let r=t.arguments?typeof t.arguments==`string`?t.arguments.slice(0,30):JSON.stringify(t.arguments).slice(0,30):``;return`Calling ${n}(${r}${r.length>=30?`...`:``})`}return`Function call`;case`response.function_call_arguments.delta`:return`delta`in e&&e.delta?`Function arg delta: ${e.delta.slice(0,30)}${e.delta.length>30?`...`:``}`:`Function arguments...`;case`response.function_result.complete`:{let t=e.output.slice(0,40);return`Function result: ${t}${t.length>=40?`...`:``}`}case`response.output_item.added`:{let t=e;return t.item.type===`function_call`?`Tool call: ${t.item.name}`:`Output item added`}case`response.workflow_event.completed`:return`data`in e&&e.data?`Executor: ${e.data.executor_id||`unknown`}`:`Workflow event`;case`response.trace.completed`:return`data`in e&&e.data?`Trace: ${e.data.operation_name||`unknown`}`:`Trace event`;case`response.completed`:if(`response`in e&&e.response&&`usage`in e.response){let t=e.response.usage;if(t)return`Response complete (${t.total_tokens} tokens)`}return`Response complete`;case`response.done`:return`Response complete`;case`error`:return`message`in e&&typeof e.message==`string`?e.message:`Error occurred`;default:return`${e.type}`}}function vg(e){switch(e){case`response.output_text.delta`:return _d;case`response.function_call.complete`:case`response.function_call.delta`:case`response.function_call_arguments.delta`:return gf;case`response.function_result.complete`:return yu;case`response.output_item.added`:return yu;case`response.workflow_event.completed`:return Ul;case`response.trace.completed`:return Ud;case`response.completed`:return yu;case`response.done`:return yu;case`error`:return Cu;default:return hu}}function yg(e){switch(e){case`response.output_text.delta`:return`text-gray-600 dark:text-gray-400`;case`response.function_call.complete`:case`response.function_call.delta`:case`response.function_call_arguments.delta`:return`text-blue-600 dark:text-blue-400`;case`response.function_result.complete`:return`text-green-600 dark:text-green-400`;case`response.output_item.added`:return`text-green-600 dark:text-green-400`;case`response.workflow_event.completed`:return`text-purple-600 dark:text-purple-400`;case`response.trace.completed`:return`text-orange-600 dark:text-orange-400`;case`response.completed`:return`text-green-600 dark:text-green-400`;case`response.done`:return`text-green-600 dark:text-green-400`;case`error`:return`text-red-600 dark:text-red-400`;default:return`text-gray-600 dark:text-gray-400`}}function bg({event:e}){let[t,n]=(0,y.useState)(!1),r=e.type||`unknown`,i=vg(r),a=yg(r),o=`_uiTimestamp`in e&&typeof e._uiTimestamp==`number`?new Date(e._uiTimestamp*1e3).toLocaleTimeString():new Date().toLocaleTimeString(),s=_g(e),c=e.type===`response.function_call.complete`&&`data`in e&&e.data||e.type===`response.function_result.complete`||e.type===`response.output_item.added`&&hg(e)!==null||e.type===`response.workflow_event.completed`&&`data`in e&&e.data||e.type===`response.trace.completed`&&`data`in e&&e.data||e.type===`response.trace.completed`&&`data`in e&&e.data||e.type===`response.output_text.delta`&&`delta`in e&&e.delta&&e.delta.length>100||e.type===`response.completed`&&`response`in e&&e.response||e.type===`error`;return(0,K.jsxs)(`div`,{className:`border-l-2 border-muted pl-3 py-2 hover:bg-muted/50 transition-colors`,"data-devui-debug-event":r,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-muted-foreground mb-1`,children:[(0,K.jsx)(i,{className:`h-3 w-3 ${a}`}),(0,K.jsx)(`span`,{className:`font-mono`,children:o}),(0,K.jsx)(Ft,{variant:`outline`,className:`text-xs py-0`,children:e.type?e.type.replace(`response.`,``):`unknown`})]}),(0,K.jsxs)(`div`,{className:`text-sm`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 ${c?`cursor-pointer`:``}`,onClick:()=>c&&n(!t),children:[c&&(0,K.jsx)(`div`,{className:`text-muted-foreground`,children:t?(0,K.jsx)(su,{className:`h-3 w-3`}):(0,K.jsx)(du,{className:`h-3 w-3`})}),(0,K.jsx)(`div`,{className:`text-muted-foreground flex-1`,children:c&&s.length>80?`${s.slice(0,80)}...`:s})]}),t&&c&&(0,K.jsx)(`div`,{className:`mt-2 ml-5 p-3 bg-muted/30 rounded border`,children:(0,K.jsx)(xg,{event:e})})]})]})}function xg({event:e}){if(e.type===`error`){let t=e;return(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(Cu,{className:`h-4 w-4 text-red-500`}),(0,K.jsx)(`span`,{className:`font-semibold text-sm`,children:`Error Details`})]}),(0,K.jsxs)(`div`,{className:`text-xs`,children:[t.message&&(0,K.jsxs)(`div`,{className:`mb-2`,children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Message:`}),(0,K.jsx)(`div`,{className:`mt-1`,children:(0,K.jsx)(`pre`,{className:`text-xs bg-destructive/10 border border-destructive/30 rounded p-2 text-destructive whitespace-pre-wrap break-all`,children:t.message})})]}),t.code&&(0,K.jsxs)(`div`,{className:`mb-2`,children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Code:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono text-xs`,children:t.code})]}),t.param&&(0,K.jsxs)(`div`,{className:`mb-2`,children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Parameter:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono text-xs`,children:t.param})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Raw Event:`}),(0,K.jsx)(`div`,{className:`mt-1`,children:(0,K.jsx)(`pre`,{className:`text-xs bg-background border rounded p-2 whitespace-pre-wrap break-all max-h-32 overflow-auto`,children:JSON.stringify(e,null,2)})})]})]})]})}switch(e.type){case`response.function_call.complete`:if(`data`in e&&e.data){let t=e.data;return(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(gf,{className:`h-4 w-4 text-blue-500`}),(0,K.jsx)(`span`,{className:`font-semibold text-sm`,children:`Function Call`})]}),(0,K.jsxs)(`div`,{className:`grid grid-cols-1 gap-2 text-xs`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Function:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono bg-blue-100 dark:bg-blue-900 px-2 py-1 rounded`,children:t.name||`unknown`})]}),t.call_id&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Call ID:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono text-xs`,children:t.call_id})]}),t.arguments&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Arguments:`}),(0,K.jsx)(`div`,{className:`mt-1 max-h-32 overflow-auto`,children:(0,K.jsx)(`pre`,{className:`text-xs bg-background border rounded p-2 whitespace-pre-wrap max-w-full break-all`,children:typeof t.arguments==`string`?t.arguments:JSON.stringify(t.arguments,null,1)})})]})]})]})}break;case`response.function_result.complete`:{let t=e;return(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(yu,{className:`h-4 w-4 text-green-500`}),(0,K.jsx)(`span`,{className:`font-semibold text-sm`,children:`Function Result`})]}),(0,K.jsxs)(`div`,{className:`grid grid-cols-1 gap-2 text-xs`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Call ID:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono text-xs`,children:t.call_id})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Status:`}),(0,K.jsx)(`span`,{className:`ml-2 px-2 py-1 rounded text-xs font-medium ${t.status===`completed`?`bg-green-100 dark:bg-green-900 text-green-800 dark:text-green-200`:`bg-red-100 dark:bg-red-900 text-red-800 dark:text-red-200`}`,children:t.status})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Output:`}),(0,K.jsx)(`div`,{className:`mt-1 max-h-32 overflow-auto`,children:(0,K.jsx)(`pre`,{className:`text-xs bg-background border rounded p-2 whitespace-pre-wrap max-w-full break-all`,children:t.output})})]})]})]})}case`response.output_item.added`:{let t=hg(e);if(t)return(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(yu,{className:`h-4 w-4 text-green-500`}),(0,K.jsx)(`span`,{className:`font-semibold text-sm`,children:`Function Result`})]}),(0,K.jsxs)(`div`,{className:`grid grid-cols-1 gap-2 text-xs`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Call ID:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono text-xs`,children:t.call_id})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Status:`}),(0,K.jsx)(`span`,{className:`ml-2 px-2 py-1 rounded text-xs font-medium ${t.status===`completed`?`bg-green-100 dark:bg-green-900 text-green-800 dark:text-green-200`:`bg-red-100 dark:bg-red-900 text-red-800 dark:text-red-200`}`,children:t.status})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Output:`}),(0,K.jsx)(`div`,{className:`mt-1 max-h-32 overflow-auto`,children:(0,K.jsx)(`pre`,{className:`text-xs bg-background border rounded p-2 whitespace-pre-wrap max-w-full break-all`,children:t.output})})]})]})]});break}case`response.workflow_event.completed`:if(`data`in e&&e.data){let t=e.data;return(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(Ul,{className:`h-4 w-4 text-purple-500`}),(0,K.jsx)(`span`,{className:`font-semibold text-sm`,children:`Workflow Event`})]}),(0,K.jsxs)(`div`,{className:`grid grid-cols-1 gap-2 text-xs`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Event Type:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono bg-purple-100 dark:bg-purple-900 px-2 py-1 rounded`,children:t.event_type||`unknown`})]}),t.executor_id&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Executor:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono`,children:t.executor_id})]}),t.timestamp&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Timestamp:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono text-xs`,children:t.timestamp})]}),t.data&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Data:`}),(0,K.jsx)(`div`,{className:`mt-1 max-h-32 overflow-auto`,children:(0,K.jsx)(`pre`,{className:`text-xs bg-background border rounded p-2 whitespace-pre-wrap max-w-full break-all`,children:typeof t.data==`string`?t.data:JSON.stringify(t.data,null,1)})})]})]})]})}break;case`response.trace.completed`:if(`data`in e&&e.data){let t=e.data;return(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(Ud,{className:`h-4 w-4 text-orange-500`}),(0,K.jsx)(`span`,{className:`font-semibold text-sm`,children:`Trace Event`})]}),(0,K.jsxs)(`div`,{className:`grid grid-cols-1 gap-2 text-xs`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Operation:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono bg-orange-100 dark:bg-orange-900 px-2 py-1 rounded`,children:t.operation_name||`unknown`})]}),t.span_id&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Span ID:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono text-xs`,children:t.span_id})]}),t.trace_id&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Trace ID:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono text-xs`,children:t.trace_id})]}),t.duration_ms&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Duration:`}),(0,K.jsxs)(`span`,{className:`ml-2 font-mono text-xs`,children:[Number(t.duration_ms).toFixed(2),`ms`]})]}),t.status&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Status:`}),(0,K.jsx)(`span`,{className:`ml-2 px-2 py-1 rounded text-xs font-medium ${t.status===`StatusCode.UNSET`||t.status===`OK`?`bg-green-100 dark:bg-green-900 text-green-800 dark:text-green-200`:`bg-red-100 dark:bg-red-900 text-red-800 dark:text-red-200`}`,children:t.status||`unknown`})]}),t.entity_id&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Entity:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono text-xs`,children:t.entity_id})]}),t.attributes&&Object.keys(t.attributes).length>0&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Attributes:`}),(0,K.jsx)(`div`,{className:`mt-1 max-h-32 overflow-auto`,children:(0,K.jsx)(`pre`,{className:`text-xs bg-background border rounded p-2 whitespace-pre-wrap break-all`,children:Tg(t.attributes)})})]})]})]})}break;case`response.output_text.delta`:if(`delta`in e&&e.delta)return(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(_d,{className:`h-4 w-4 text-gray-500`}),(0,K.jsx)(`span`,{className:`font-semibold text-sm`,children:`Text Output`})]}),(0,K.jsx)(`div`,{className:`max-h-32 overflow-auto`,children:(0,K.jsx)(`pre`,{className:`text-xs bg-background border rounded p-2 whitespace-pre-wrap max-w-full break-all`,children:e.delta})})]});break;case`response.completed`:if(`response`in e&&e.response){let t=e.response;return(0,K.jsx)(`div`,{className:`space-y-2`,children:(0,K.jsxs)(`div`,{className:`grid grid-cols-1 gap-2 text-xs`,children:[t.usage&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`div`,{children:(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Usage:`})}),(0,K.jsxs)(`div`,{className:`ml-4 space-y-1`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Input tokens:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono`,children:t.usage.input_tokens})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Output tokens:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono`,children:t.usage.output_tokens})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Total tokens:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono bg-green-100 dark:bg-green-900 px-2 py-1 rounded`,children:t.usage.total_tokens})]})]})]}),t.id&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Response ID:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono text-xs break-all`,children:t.id})]}),t.model&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`font-medium text-muted-foreground`,children:`Model:`}),(0,K.jsx)(`span`,{className:`ml-2 font-mono text-xs break-all`,children:t.model})]})]})})}break;default:return(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground`,children:(0,K.jsx)(`pre`,{className:`bg-background border rounded p-2 overflow-auto max-h-32`,children:JSON.stringify(e,null,2)})})}return null}function Sg({events:e,processedEvents:t,isStreaming:n}){let r=(0,y.useRef)(null),i=[...(0,y.useMemo)(()=>mg(t),[t])].reverse();return(0,K.jsxs)(`div`,{className:`h-full flex flex-col`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between p-3 border-b`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(Ul,{className:`h-4 w-4`}),(0,K.jsx)(`span`,{className:`font-medium`,children:`Events`}),(0,K.jsxs)(Ft,{variant:`outline`,children:[t.length,e.length>t.length?` (${e.length} raw)`:``]})]}),n&&(0,K.jsxs)(`div`,{className:`flex items-center gap-1 text-xs text-muted-foreground`,children:[(0,K.jsx)(`div`,{className:`h-2 w-2 animate-pulse rounded-full bg-green-500 dark:bg-green-400`}),`Streaming`]})]}),(0,K.jsx)(ym,{ref:r,className:`flex-1`,children:(0,K.jsx)(`div`,{className:`p-3`,children:t.length===0?(0,K.jsx)(`div`,{className:`text-center text-muted-foreground text-sm py-8`,children:e.length===0?`No events yet. Start a conversation to see real-time events.`:`Processing events... Accumulated events will appear here.`}):(0,K.jsx)(`div`,{className:`space-y-2`,children:i.map((e,t)=>`type`in e&&e.type===`separator`?(0,K.jsx)(pg,{},e.id):(0,K.jsx)(bg,{event:e},`${e.type}-${t}`))})})})]})}function Cg(e){let t=new Map;for(let n of e){if(!(`data`in n))continue;let e=n.data.response_id||`unknown`;t.has(e)||t.set(e,[]),t.get(e).push(n)}let n=[];for(let[e,r]of t){let t=new Map,i=[];for(let e of r){if(!(`data`in e))continue;let n=e.data,r=n.span_id||`span_${Math.random()}`;t.set(r,{event:e,data:n,children:[]})}for(let e of r){if(!(`data`in e))continue;let n=e.data,r=n.span_id||``,a=n.parent_span_id,o=t.get(r);o&&(a&&t.has(a)?t.get(a).children.push(o):i.push(o))}i.sort((e,t)=>(e.data.start_time||0)-(t.data.start_time||0));let a=e=>{e.children.sort((e,t)=>(e.data.start_time||0)-(t.data.start_time||0)),e.children.forEach(a)};i.forEach(a);let o=r[0],s=o&&`data`in o?o.data:null,c=Math.min(...r.map(e=>(`data`in e?e.data:null)?.start_time||Date.now()/1e3)),l=r.reduce((e,t)=>e+((`data`in t?t.data:null)?.duration_ms||0),0);n.push({response_id:e,timestamp:c,traces:i,totalDuration:l,entity_id:s?.entity_id})}return n.sort((e,t)=>t.timestamp-e.timestamp),n}function wg(e){if(typeof e==`string`){let t=e.trim();if(t.startsWith(`[`)||t.startsWith(`{`))try{return wg(JSON.parse(e))}catch{return e}return e}if(Array.isArray(e))return e.map(wg);if(typeof e==`object`&&e){let t={};for(let[n,r]of Object.entries(e))t[n]=wg(r);return t}return e}function Tg(e){try{let t=wg(e);return JSON.stringify(t,null,2)}catch{return JSON.stringify(e,null,2)}}function Eg(e){return e.includes(`invoke_agent`)||e.includes(`Agent`)?`bg-purple-100 dark:bg-purple-900 text-purple-800 dark:text-purple-200`:e.includes(`chat`)||e.includes(`Chat`)?`bg-blue-100 dark:bg-blue-900 text-blue-800 dark:text-blue-200`:e.includes(`tool`)||e.includes(`execute`)?`bg-green-100 dark:bg-green-900 text-green-800 dark:text-green-200`:`bg-orange-100 dark:bg-orange-900 text-orange-800 dark:text-orange-200`}function Dg({node:e,depth:t=0}){let[n,r]=(0,y.useState)(t<2),[i,a]=(0,y.useState)(!1),{data:o}=e,s=o.operation_name||`Unknown`,c=o.duration_ms?`${Number(o.duration_ms).toFixed(1)}ms`:``,l=e.children.length>0,u=o.attributes?.[`gen_ai.usage.input_tokens`],d=o.attributes?.[`gen_ai.usage.output_tokens`],f=u!==void 0||d!==void 0;return(0,K.jsxs)(`div`,{className:`relative`,children:[t>0&&(0,K.jsx)(`div`,{className:`absolute left-0 top-0 bottom-0 border-l-2 border-muted`,style:{marginLeft:`${(t-1)*16+8}px`}}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2 py-1.5 hover:bg-muted/50 rounded transition-colors`,style:{paddingLeft:`${t*16}px`},children:[(0,K.jsx)(`button`,{onClick:()=>l?r(!n):a(!i),className:`w-4 h-4 flex items-center justify-center text-muted-foreground hover:text-foreground`,children:l?n?(0,K.jsx)(su,{className:`h-3 w-3`}):(0,K.jsx)(du,{className:`h-3 w-3`}):i?(0,K.jsx)(su,{className:`h-3 w-3`}):(0,K.jsx)(du,{className:`h-3 w-3`})}),(0,K.jsx)(`span`,{className:`text-xs px-1.5 py-0.5 rounded font-medium ${Eg(s)}`,children:s.replace(`Agent.`,``).replace(`invoke_agent `,``)}),c&&(0,K.jsx)(`span`,{className:`text-xs text-muted-foreground font-mono`,children:c}),f&&(0,K.jsxs)(`span`,{className:`text-xs text-muted-foreground font-mono`,children:[u!==void 0&&(0,K.jsxs)(`span`,{children:[`↑`,String(u)]}),u!==void 0&&d!==void 0&&(0,K.jsx)(`span`,{className:`mx-0.5`,children:`/`}),d!==void 0&&(0,K.jsxs)(`span`,{children:[`↓`,String(d)]})]})]}),i&&!l&&(0,K.jsx)(`div`,{className:`ml-4 mt-1 mb-2 p-2 bg-muted/30 rounded border text-xs`,style:{marginLeft:`${t*16+20}px`},children:(0,K.jsxs)(`div`,{className:`space-y-1`,children:[o.span_id&&(0,K.jsxs)(`div`,{className:`flex gap-2`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground w-20`,children:`Span ID:`}),(0,K.jsx)(`span`,{className:`font-mono text-xs break-all`,children:o.span_id})]}),o.trace_id&&(0,K.jsxs)(`div`,{className:`flex gap-2`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground w-20`,children:`Trace ID:`}),(0,K.jsx)(`span`,{className:`font-mono text-xs break-all`,children:o.trace_id})]}),o.status&&(0,K.jsxs)(`div`,{className:`flex gap-2`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground w-20`,children:`Status:`}),(0,K.jsx)(`span`,{className:`px-1.5 py-0.5 rounded text-xs ${o.status===`StatusCode.UNSET`||o.status===`OK`?`bg-green-100 dark:bg-green-900 text-green-800 dark:text-green-200`:`bg-red-100 dark:bg-red-900 text-red-800 dark:text-red-200`}`,children:o.status})]}),o.attributes&&Object.keys(o.attributes).length>0&&(0,K.jsxs)(`div`,{className:`mt-2`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground block mb-1`,children:`Attributes:`}),(0,K.jsx)(`pre`,{className:`text-xs bg-background border rounded p-2 overflow-auto max-h-32 whitespace-pre-wrap break-all`,children:Tg(o.attributes)})]})]})}),l&&n&&(0,K.jsx)(`div`,{children:e.children.map((e,n)=>(0,K.jsx)(Dg,{node:e,depth:t+1},e.data.span_id||n))})]})}function Og({group:e}){let[t,n]=(0,y.useState)(!0),r=new Date(e.timestamp*1e3).toLocaleTimeString(),i=e.totalDuration>0?`${e.totalDuration.toFixed(0)}ms`:``,a=e.traces.reduce((e,t)=>{let n=e=>1+e.children.reduce((e,t)=>e+n(t),0);return e+n(t)},0);return(0,K.jsxs)(`div`,{className:`border rounded-lg overflow-hidden`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 p-2 bg-muted/50 cursor-pointer hover:bg-muted/70 transition-colors`,onClick:()=>n(!t),children:[(0,K.jsx)(`div`,{className:`text-muted-foreground`,children:t?(0,K.jsx)(su,{className:`h-4 w-4`}):(0,K.jsx)(du,{className:`h-4 w-4`})}),(0,K.jsx)(`span`,{className:`font-mono text-xs text-muted-foreground`,children:r}),e.entity_id&&(0,K.jsx)(Ft,{variant:`outline`,className:`text-xs py-0`,children:e.entity_id.replace(`agent_`,``).replace(`workflow_`,``)}),(0,K.jsx)(`div`,{className:`flex-1`}),i&&(0,K.jsx)(Ft,{variant:`secondary`,className:`text-xs py-0`,children:i}),(0,K.jsxs)(`span`,{className:`text-xs text-muted-foreground`,children:[a,` span`,a===1?``:`s`]})]}),t&&(0,K.jsx)(`div`,{className:`p-2 border-t`,children:e.traces.map((e,t)=>(0,K.jsx)(Dg,{node:e,depth:0},e.data.span_id||t))})]})}function kg({events:e}){let t=Q(e=>e.debugTraceSubTab),n=Q(e=>e.setDebugTraceSubTab),r=Q(e=>e.runtime),i=Q(e=>e.serverCapabilities.trace_retrieval),a=e.filter(e=>e.type===`response.trace.completed`),o=Cg(a);return(0,K.jsxs)(`div`,{className:`h-full flex flex-col`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 p-3 border-b`,children:[(0,K.jsx)(Ud,{className:`h-4 w-4`}),(0,K.jsx)(`span`,{className:`font-medium`,children:`Traces`}),(0,K.jsx)(Ft,{variant:`outline`,children:a.length}),(0,K.jsx)(`div`,{className:`flex-1`}),(0,K.jsxs)(`div`,{className:`flex items-center bg-muted rounded-md p-1 min-w-0`,children:[(0,K.jsx)(`button`,{onClick:()=>n(`spans`),className:`px-3 py-1.5 text-xs rounded transition-colors truncate ${t===`spans`?`bg-background shadow-sm font-medium`:`text-muted-foreground hover:text-foreground`}`,children:`OTel Spans`}),(0,K.jsxs)(`button`,{onClick:()=>n(`context`),className:`px-3 py-1.5 text-xs rounded transition-colors flex items-center gap-1.5 min-w-0 ${t===`context`?`bg-background shadow-sm font-medium`:`text-muted-foreground hover:text-foreground`}`,children:[(0,K.jsx)(tu,{className:`h-3.5 w-3.5 flex-shrink-0`}),(0,K.jsx)(`span`,{className:`truncate`,children:`Context Inspector`})]})]})]}),t===`spans`?(0,K.jsxs)(`div`,{className:`flex-1 flex flex-col min-h-0`,children:[a.length>0&&(0,K.jsx)(`div`,{className:`p-3 border-b flex-shrink-0`,children:(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(Ud,{className:`h-4 w-4`}),(0,K.jsx)(`span`,{className:`font-medium text-sm`,children:`OTel Spans`}),(0,K.jsxs)(Ft,{variant:`outline`,className:`text-xs`,children:[o.length,` turn`,o.length===1?``:`s`]})]})}),a.length===0?(0,K.jsxs)(`div`,{className:`flex flex-col items-center text-center p-6 pt-9`,children:[(0,K.jsx)(tu,{className:`h-8 w-8 text-muted-foreground mb-3`}),(0,K.jsx)(`div`,{className:`text-sm font-medium mb-1`,children:`No Data`}),(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground max-w-[200px]`,children:i?`Start a conversation to view OpenTelemetry spans from the Aspire Dashboard.`:r===`dotnet`?`Trace retrieval is not available for this server.`:(0,K.jsxs)(K.Fragment,{children:[`Run`,` `,(0,K.jsx)(`span`,{className:`font-mono bg-accent/10 px-1 rounded`,children:`devui --instrumentation`}),` `,`and start a conversation.`]})})]}):(0,K.jsx)(ym,{className:`flex-1`,children:(0,K.jsx)(`div`,{className:`p-3`,children:(0,K.jsx)(`div`,{className:`space-y-3`,children:o.map(e=>(0,K.jsx)(Og,{group:e},e.response_id))})})})]}):(0,K.jsx)(fg,{events:e})]})}function Ag({events:e,processedEvents:t}){let n=[],r=t.filter(e=>e.type===`response.function_call.complete`),i=e.filter(e=>hg(e)!==null),a=new Map;i.forEach(e=>{let t=hg(e);t&&a.set(t.call_id,e)}),r.forEach(e=>{if(n.push(e),`data`in e&&e.data&&e.data.call_id){let t=String(e.data.call_id),r=a.get(t);r&&(n.push(r),a.delete(t))}}),a.forEach(e=>{n.push(e)});let o=[...mg(n)].reverse();return(0,K.jsxs)(`div`,{className:`h-full flex flex-col`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 p-3 border-b`,children:[(0,K.jsx)(gf,{className:`h-4 w-4`}),(0,K.jsx)(`span`,{className:`font-medium`,children:`Tools`}),(0,K.jsx)(Ft,{variant:`outline`,children:n.length})]}),(0,K.jsx)(ym,{className:`flex-1`,children:(0,K.jsx)(`div`,{className:`p-3`,children:n.length===0?(0,K.jsx)(`div`,{className:`text-center text-muted-foreground text-sm py-8`,children:`No tool executions yet. Tool calls will appear here during conversations.`}):(0,K.jsx)(`div`,{className:`space-y-3`,children:o.map((e,t)=>`type`in e&&e.type===`separator`?(0,K.jsx)(pg,{},e.id):(0,K.jsx)(jg,{event:e},t))})})})]})}function jg({event:e}){let t=`_uiTimestamp`in e&&typeof e._uiTimestamp==`number`?new Date(e._uiTimestamp*1e3).toLocaleTimeString():new Date().toLocaleTimeString(),n=e.type===`response.function_call.complete`,r=hg(e),i=r!==null;if(!n&&!i)return null;let a=n&&`data`in e?e.data:null;return(0,K.jsxs)(`div`,{className:`border rounded p-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between mb-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(bf,{className:`h-4 w-4 text-yellow-600 dark:text-yellow-400`}),(0,K.jsx)(`span`,{className:`font-medium text-sm`,children:n?`Tool Call`:`Tool Result`}),n&&a&&a.name!==void 0&&(0,K.jsxs)(`span`,{className:`text-xs text-muted-foreground`,children:[`(`,String(a.name),`)`]})]}),(0,K.jsx)(`span`,{className:`text-xs text-muted-foreground font-mono`,children:t})]}),n&&a&&(0,K.jsxs)(`div`,{className:`p-2 bg-blue-50 dark:bg-blue-950/50 border border-blue-200 dark:border-blue-800 rounded`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 mb-2`,children:[(0,K.jsx)(gf,{className:`h-3 w-3 text-blue-600 dark:text-blue-400`}),(0,K.jsx)(`span`,{className:`text-xs font-mono bg-blue-100 dark:bg-blue-900 text-blue-800 dark:text-blue-200 px-2 py-1 rounded`,children:`CALL`}),(0,K.jsx)(`span`,{className:`font-medium text-sm`,children:String(a.name||`unknown`)})]}),a.arguments!==void 0&&(0,K.jsxs)(`div`,{className:`text-xs`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground mb-1 block`,children:`Arguments:`}),(0,K.jsx)(`pre`,{className:`p-2 bg-background border rounded text-xs overflow-auto max-h-32 max-w-full break-all whitespace-pre-wrap`,children:typeof a.arguments==`string`?a.arguments:JSON.stringify(a.arguments,null,1)})]})]}),i&&r&&(0,K.jsxs)(`div`,{className:`p-2 bg-green-50 dark:bg-green-950/50 border border-green-200 dark:border-green-800 rounded`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 mb-2`,children:[(0,K.jsx)(yu,{className:`h-3 w-3 text-green-600 dark:text-green-400`}),(0,K.jsx)(`span`,{className:`text-xs font-mono bg-green-100 dark:bg-green-900 text-green-800 dark:text-green-200 px-2 py-1 rounded`,children:`RESULT`}),r.status!==`completed`&&(0,K.jsx)(`span`,{className:`ml-auto px-2 py-1 rounded text-xs font-medium bg-red-100 dark:bg-red-900 text-red-800 dark:text-red-200`,children:r.status})]}),(0,K.jsxs)(`div`,{className:`text-xs space-y-1`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Call ID:`}),(0,K.jsx)(`span`,{className:`font-mono text-xs break-all`,children:r.call_id})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`text-muted-foreground block mb-1`,children:`Output:`}),(0,K.jsx)(`pre`,{className:`p-2 bg-background border rounded text-xs overflow-auto max-h-32 break-all whitespace-pre-wrap`,children:r.output})]})]})]})]})}function Mg({events:e,isStreaming:t=!1,onMinimize:n}){let r=Q(e=>e.debugPanelTab),i=Q(e=>e.setDebugPanelTab),a=(0,y.useMemo)(()=>gg(e),[e]),o=(0,y.useMemo)(()=>({eventsCount:a.length,tracesCount:e.filter(e=>e.type===`response.trace.completed`).length,toolsCount:a.filter(e=>e.type===`response.function_call.complete`).length+e.filter(e=>hg(e)!==null).length}),[e,a]);return(0,K.jsx)(`div`,{className:`flex-1 border-l flex flex-col min-h-0`,children:(0,K.jsxs)(zm,{value:r,onValueChange:e=>i(e),className:`flex-1 flex flex-col min-h-0`,children:[(0,K.jsxs)(`div`,{className:`px-3 pt-3 flex items-center gap-2 flex-shrink-0`,children:[(0,K.jsxs)(Bm,{className:`flex-1`,children:[(0,K.jsxs)(Vm,{value:`events`,className:`flex-1 gap-1.5`,children:[`Events`,o.eventsCount>0&&(0,K.jsx)(`span`,{className:`text-[10px] bg-muted-foreground/20 text-muted-foreground px-1.5 py-0.5 rounded-full min-w-[1.25rem] text-center`,children:o.eventsCount})]}),(0,K.jsxs)(Vm,{value:`traces`,className:`flex-1 gap-1.5`,children:[`Traces`,o.tracesCount>0&&(0,K.jsx)(`span`,{className:`text-[10px] bg-muted-foreground/20 text-muted-foreground px-1.5 py-0.5 rounded-full min-w-[1.25rem] text-center`,children:o.tracesCount})]}),(0,K.jsxs)(Vm,{value:`tools`,className:`flex-1 gap-1.5`,children:[`Tools`,o.toolsCount>0&&(0,K.jsx)(`span`,{className:`text-[10px] bg-muted-foreground/20 text-muted-foreground px-1.5 py-0.5 rounded-full min-w-[1.25rem] text-center`,children:o.toolsCount})]})]}),n&&(0,K.jsx)(q,{variant:`ghost`,size:`sm`,onClick:n,className:`h-8 w-8 p-0 flex-shrink-0`,title:`Minimize debug panel`,children:(0,K.jsx)(du,{className:`h-4 w-4`})})]}),(0,K.jsx)(Hm,{value:`events`,className:`flex-1 mt-0 overflow-hidden`,children:(0,K.jsx)(Sg,{events:e,processedEvents:a,isStreaming:t})}),(0,K.jsx)(Hm,{value:`traces`,className:`flex-1 mt-0 overflow-hidden`,children:(0,K.jsx)(kg,{events:e})}),(0,K.jsx)(Hm,{value:`tools`,className:`flex-1 mt-0 overflow-hidden`,children:(0,K.jsx)(Ag,{events:e,processedEvents:a})})]})})}function Ng({open:e,onOpenChange:t,children:n}){return e?(0,K.jsxs)(`div`,{className:`fixed inset-0 z-50 flex items-center justify-center`,children:[(0,K.jsx)(`div`,{className:`absolute inset-0 bg-black/50`,onClick:()=>{t(!1)}}),(0,K.jsx)(`div`,{className:`relative z-10`,onClick:e=>{e.stopPropagation()},onMouseDown:e=>{e.stopPropagation()},onMouseUp:e=>e.stopPropagation(),children:n})]}):null}function Pg({children:e,className:t=``}){let n=t.includes(`w-[`)||t.includes(`w-full`)||t.includes(`max-w-`)?``:`max-w-lg w-full`;return(0,K.jsx)(`div`,{className:`relative bg-background border rounded-lg shadow-lg max-h-[90vh] overflow-hidden ${n} ${t}`,children:e})}function Fg({children:e,className:t=``}){return(0,K.jsx)(`div`,{className:`space-y-2 ${t}`,children:e})}function Ig({children:e,className:t=``}){return(0,K.jsx)(`h2`,{className:`text-lg font-semibold ${t}`,children:e})}function Lg({children:e,className:t=``}){return(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground ${t}`,children:e})}function Rg({onClose:e}){return(0,K.jsx)(q,{variant:`ghost`,size:`sm`,onClick:e,className:`absolute top-4 right-4 h-8 w-8 p-0 rounded-sm opacity-70 hover:opacity-100`,children:(0,K.jsx)(vf,{className:`h-4 w-4`})})}function zg({children:e}){return(0,K.jsx)(`div`,{className:`flex justify-end gap-2 p-4 border-t bg-muted/50`,children:e})}function Bg({className:e,type:t,...n}){return(0,K.jsx)(`input`,{type:t,"data-slot":`input`,className:jt(`file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input flex h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm`,`focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]`,`aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive`,e),...n})}var Vg=Object.defineProperty,Hg=y.forwardRef(((e,t)=>Vg(e,`name`,{value:t,configurable:!0}))(function(e,t){return(0,K.jsx)(Y.label,{...e,ref:t,onMouseDown:t=>{t.target.closest(`button, input, select, textarea`)||(e.onMouseDown?.(t),!t.defaultPrevented&&t.detail>1&&t.preventDefault())}})},`Label`));function Ug({className:e,...t}){return(0,K.jsx)(Hg,{"data-slot":`label`,className:jt(`flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50`,e),...t})}var Wg=Object.defineProperty,Gg=(e,t)=>Wg(e,`name`,{value:t,configurable:!0}),Kg=`Switch`,[qg,Jg]=Kt(Kg),[Yg,Xg]=qg(Kg);function Zg(e){let{__scopeSwitch:t,checked:n,children:r,defaultChecked:i,disabled:a,form:o,name:s,onCheckedChange:c,required:l,value:u=`on`,internal_do_not_use_render:d}=e,[f,p]=rn({prop:n,defaultProp:i??!1,onChange:c,caller:Kg}),[m,h]=y.useState(null),[g,_]=y.useState(null),[v,b]=y.useState(null),x={checked:f,setChecked:p,disabled:a,control:m,setControl:h,name:s,form:o,value:u,userClick:v,onUserClick:b,required:l,defaultChecked:i,isFormControl:!m||!!o||!!m.closest(`form`),bubbleInput:g,setBubbleInput:_};return(0,K.jsx)(Yg,{scope:t,...x,children:a_(d)?d(x):r})}Gg(Zg,`SwitchProvider`);var Qg=`SwitchTrigger`,$g=y.forwardRef(Gg(function({__scopeSwitch:e,onClick:t,...n},r){let{control:i,form:a,value:o,disabled:s,checked:c,required:l,setControl:u,setChecked:d,onUserClick:f,isFormControl:p,bubbleInput:m}=Xg(Qg,e),h=T(r,u),g=y.useRef(c);return y.useEffect(()=>{let e=a?i?.ownerDocument.getElementById(a):i?.form;if(e instanceof HTMLFormElement){let t=Gg(()=>d(g.current),`reset`);return e.addEventListener(`reset`,t),()=>e.removeEventListener(`reset`,t)}},[i,a,d]),(0,K.jsx)(Y.button,{type:`button`,role:`switch`,"aria-checked":c,"aria-required":l,"data-state":o_(c),"data-disabled":s?``:void 0,disabled:s,value:o,...n,ref:h,onClick:J(t,e=>{let t=e.isPropagationStopped();f({requestedChecked:!c,hasConsumerStoppedPropagation:t}),d(e=>!e),m&&p&&(t||e.stopPropagation())})})},`SwitchTrigger`)),e_=y.forwardRef(Gg(function(e,t){let{__scopeSwitch:n,name:r,checked:i,defaultChecked:a,required:o,disabled:s,value:c,onCheckedChange:l,form:u,...d}=e;return(0,K.jsx)(Zg,{__scopeSwitch:n,checked:i,defaultChecked:a,disabled:s,required:o,onCheckedChange:l,name:r,form:u,value:c,internal_do_not_use_render:({isFormControl:e})=>(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)($g,{...d,ref:t,__scopeSwitch:n}),e&&(0,K.jsx)(i_,{__scopeSwitch:n})]})})},`Switch`)),t_=`SwitchThumb`,n_=y.forwardRef(Gg(function(e,t){let{__scopeSwitch:n,...r}=e,i=Xg(t_,n);return(0,K.jsx)(Y.span,{"data-state":o_(i.checked),"data-disabled":i.disabled?``:void 0,...r,ref:t})},`SwitchThumb`)),r_=`SwitchBubbleInput`,i_=y.forwardRef(Gg(function({__scopeSwitch:e,onClick:t,...n},r){let{control:i,userClick:a,checked:o,defaultChecked:s,required:c,disabled:l,name:u,value:d,form:f,bubbleInput:p,setBubbleInput:m}=Xg(r_,e),h=T(r,m),g=Va(i),_=y.useRef(!1),v=y.useRef(o),b=y.useRef(a),x=y.useRef(null);y.useEffect(()=>{let e=p;if(!e)return;let t=window.HTMLInputElement.prototype,n=Object.getOwnPropertyDescriptor(t,`checked`).set;if(!n)return;let r=v.current!==o;v.current=o;let i=a!==null&&a!==b.current;if(b.current=a,i)x.current=r?null:a,r&&n.call(e,o),e.dispatchEvent(new Event(`click`,{bubbles:!a.hasConsumerStoppedPropagation}));else if(r){let t=x.current;x.current=null;let r=t?.requestedChecked===o;_.current=!0,n.call(e,o),e.dispatchEvent(new Event(`click`,{bubbles:!(r&&t.hasConsumerStoppedPropagation)})),_.current=!1}},[p,o,a]);let S=y.useRef(o);return(0,K.jsx)(Y.input,{type:`checkbox`,"aria-hidden":!0,defaultChecked:s??S.current,required:c,disabled:l,name:u,value:d,form:f,...n,tabIndex:-1,ref:h,onClick:J(t,e=>{_.current&&e.stopPropagation()}),style:{...n.style,...g,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0,transform:`translateX(-100%)`}})},`SwitchBubbleInput`));function a_(e){return typeof e==`function`}Gg(a_,`isFunction`);function o_(e){return e?`checked`:`unchecked`}Gg(o_,`getState`);var s_=y.forwardRef(({className:e,...t},n)=>(0,K.jsx)(e_,{className:jt(`peer inline-flex h-5 w-9 shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent shadow-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input`,e),...t,ref:n,children:(0,K.jsx)(n_,{className:jt(`pointer-events-none block h-4 w-4 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-4 data-[state=unchecked]:translate-x-0`)})}));s_.displayName=e_.displayName,Cp();var c_=[`gpt-4.1`,`gpt-4.1-mini`,`o1`,`o1-mini`,`o3-mini`];function l_({open:e,onOpenChange:t,onBackendUrlChange:n}){let[r,i]=(0,y.useState)(`general`),{oaiMode:a,setOAIMode:o,azureDeploymentEnabled:s,setAzureDeploymentEnabled:c,authRequired:l,serverCapabilities:u,serverVersion:d,runtime:f,uiMode:p,streamingEnabled:m,setStreamingEnabled:h}=Q(),g=Q(e=>e.audioInput),_=Q(e=>e.setAudioInput),[v,b]=(0,y.useState)(()=>localStorage.getItem(`devui_backend_url`)||``),[x,S]=(0,y.useState)(v),[C,w]=(0,y.useState)(!!localStorage.getItem(`devui_auth_token`)),[T,E]=(0,y.useState)(``),D=()=>{try{new URL(x),localStorage.setItem(`devui_backend_url`,x),b(x),n?.(x),t(!1),window.location.reload()}catch{alert(`Please enter a valid URL (e.g., http://localhost:8080)`)}},O=()=>{localStorage.removeItem(`devui_backend_url`),S(``),b(``),n?.(``),window.location.reload()},k=()=>{T.trim()&&(localStorage.setItem(`devui_auth_token`,T.trim()),w(!0),E(``),window.location.reload())},A=()=>{localStorage.removeItem(`devui_auth_token`),w(!1),E(``),window.location.reload()},j=x!==v,M=!localStorage.getItem(`devui_backend_url`);return(0,K.jsx)(Ng,{open:e,onOpenChange:t,children:(0,K.jsxs)(Pg,{className:`w-[600px] max-w-[90vw] flex flex-col max-h-[85vh]`,children:[(0,K.jsx)(Fg,{className:`p-6 pb-2 flex-shrink-0`,children:(0,K.jsx)(Ig,{children:`Settings`})}),(0,K.jsx)(Rg,{onClose:()=>t(!1)}),(0,K.jsxs)(`div`,{className:`flex border-b px-6 flex-shrink-0`,children:[(0,K.jsxs)(`button`,{onClick:()=>i(`general`),className:`px-4 py-2 text-sm font-medium transition-colors relative ${r===`general`?`text-foreground`:`text-muted-foreground hover:text-foreground`}`,children:[`General`,r===`general`&&(0,K.jsx)(`div`,{className:`absolute bottom-0 left-0 right-0 h-0.5 bg-primary`})]}),u.openai_proxy&&(0,K.jsxs)(`button`,{onClick:()=>i(`proxy`),className:`px-4 py-2 text-sm font-medium transition-colors relative ${r===`proxy`?`text-foreground`:`text-muted-foreground hover:text-foreground`}`,children:[`OpenAI Proxy`,r===`proxy`&&(0,K.jsx)(`div`,{className:`absolute bottom-0 left-0 right-0 h-0.5 bg-primary`})]}),(0,K.jsxs)(`button`,{onClick:()=>i(`about`),className:`px-4 py-2 text-sm font-medium transition-colors relative ${r===`about`?`text-foreground`:`text-muted-foreground hover:text-foreground`}`,children:[`About`,r===`about`&&(0,K.jsx)(`div`,{className:`absolute bottom-0 left-0 right-0 h-0.5 bg-primary`})]})]}),(0,K.jsxs)(`div`,{className:`px-6 pb-6 overflow-y-auto flex-1 min-h-[400px]`,children:[r===`general`&&(0,K.jsxs)(`div`,{className:`space-y-6 pt-4`,children:[(0,K.jsxs)(`div`,{className:`space-y-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsx)(Ug,{htmlFor:`backend-url`,className:`text-sm font-medium`,children:`Backend URL`}),!M&&(0,K.jsxs)(q,{variant:`ghost`,size:`sm`,onClick:O,className:`h-7 text-xs`,title:`Reset to default`,children:[(0,K.jsx)(Vd,{className:`h-3 w-3 mr-1`}),`Reset`]})]}),(0,K.jsx)(Bg,{id:`backend-url`,type:`url`,value:x,onChange:e=>S(e.target.value),placeholder:`http://localhost:8080`,className:`font-mono text-sm`}),(0,K.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`Default: `,(0,K.jsx)(`span`,{className:`font-mono`,children:``})]}),(0,K.jsx)(`div`,{className:`flex gap-2 pt-2 min-h-[36px]`,children:j&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(q,{onClick:D,size:`sm`,className:`flex-1`,children:`Apply & Reload`}),(0,K.jsx)(q,{onClick:()=>S(v),variant:`outline`,size:`sm`,className:`flex-1`,children:`Cancel`})]})})]}),(l||C)&&(0,K.jsxs)(`div`,{className:`space-y-3 border-t pt-6`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsx)(Ug,{className:`text-sm font-medium`,children:`Authentication Token`}),!l&&C&&(0,K.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`(Not required by current backend)`})]}),C?(0,K.jsxs)(`div`,{className:`space-y-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(Bg,{type:`password`,value:`••••••••••••••••••••`,disabled:!0,className:`font-mono text-sm flex-1`}),(0,K.jsx)(q,{variant:`destructive`,size:`sm`,onClick:A,className:`flex-shrink-0`,children:`Clear`})]}),(0,K.jsx)(`p`,{className:`text-xs text-green-600 dark:text-green-400`,children:`✓ Token configured and stored locally`})]}):(0,K.jsxs)(`div`,{className:`space-y-3`,children:[(0,K.jsx)(Bg,{type:`password`,value:T,onChange:e=>E(e.target.value),placeholder:`Enter bearer token`,className:`font-mono text-sm`,onKeyDown:e=>{e.key===`Enter`&&T.trim()&&k()}}),(0,K.jsx)(q,{onClick:k,size:`sm`,disabled:!T.trim(),className:`w-full`,children:`Save & Reload`}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:l?`Required by backend (started with --auth flag)`:`Not required by current backend`})]})]}),u.deployment&&(0,K.jsxs)(`div`,{className:`space-y-3 border-t pt-6`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`div`,{className:`space-y-0.5`,children:[(0,K.jsx)(Ug,{className:`text-sm font-medium`,children:`Azure Deployment`}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Enable one-click deployment to Azure Container Apps`})]}),(0,K.jsx)(s_,{checked:s,onCheckedChange:c})]}),(0,K.jsxs)(`details`,{className:`group`,children:[(0,K.jsxs)(`summary`,{className:`cursor-pointer text-xs text-muted-foreground hover:text-foreground transition-colors flex items-center gap-1`,children:[(0,K.jsx)(du,{className:`h-3 w-3 transition-transform group-open:rotate-90`}),`Learn more about Azure deployment`]}),(0,K.jsxs)(`div`,{className:`mt-3 space-y-3 pl-4`,children:[(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground leading-relaxed`,children:`When enabled, agents that support deployment will show a "Deploy to Azure" button. This allows you to deploy your agent to Azure Container Apps directly from DevUI.`}),(0,K.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,K.jsx)(`p`,{className:`text-xs font-medium`,children:`When enabled:`}),(0,K.jsxs)(`ul`,{className:`text-xs text-muted-foreground space-y-0.5 list-disc list-inside`,children:[(0,K.jsx)(`li`,{children:`Shows "Deploy to Azure" for supported agents`}),(0,K.jsx)(`li`,{children:`Requires Azure CLI and proper authentication`}),(0,K.jsx)(`li`,{children:`Backend must have deployment capabilities enabled`})]})]}),(0,K.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,K.jsx)(`p`,{className:`text-xs font-medium`,children:`When disabled:`}),(0,K.jsxs)(`ul`,{className:`text-xs text-muted-foreground space-y-0.5 list-disc list-inside`,children:[(0,K.jsx)(`li`,{children:`Shows "Deployment Guide" for all agents`}),(0,K.jsx)(`li`,{children:`Provides Docker templates and manual deployment instructions`}),(0,K.jsx)(`li`,{children:`No backend deployment capabilities required`})]})]})]})]})]}),(0,K.jsx)(`div`,{className:`space-y-3 border-t pt-6`,children:(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`div`,{className:`space-y-0.5`,children:[(0,K.jsx)(Ug,{className:`text-sm font-medium`,children:`Show Tool Calls`}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Display function/tool calls and results in chat messages`})]}),(0,K.jsx)(s_,{checked:Q.getState().showToolCalls,onCheckedChange:e=>Q.getState().setShowToolCalls(e)})]})}),(0,K.jsxs)(`div`,{className:`space-y-3 border-t pt-6`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`div`,{className:`space-y-0.5`,children:[(0,K.jsx)(Ug,{className:`text-sm font-medium`,children:`Streaming Mode`}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Stream responses token-by-token as they're generated`})]}),(0,K.jsx)(s_,{checked:m,onCheckedChange:h})]}),!m&&(0,K.jsxs)(`div`,{className:`flex items-start gap-2 text-xs text-amber-600 dark:text-amber-400 bg-amber-500/10 p-3 rounded`,children:[(0,K.jsx)(td,{className:`h-3.5 w-3.5 flex-shrink-0 mt-0.5`}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`p`,{className:`font-medium`,children:`Non-streaming mode limitations:`}),(0,K.jsxs)(`ul`,{className:`mt-1 space-y-0.5 list-disc list-inside text-amber-600/80 dark:text-amber-400/80`,children:[(0,K.jsx)(`li`,{children:`Tool calls won't display in real-time`}),(0,K.jsx)(`li`,{children:`No typing indicator during generation`}),(0,K.jsx)(`li`,{children:`Response appears all at once when complete`})]})]})]})]}),(0,K.jsxs)(`div`,{className:`space-y-3 border-t pt-6`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`div`,{className:`space-y-0.5`,children:[(0,K.jsx)(Ug,{className:`text-sm font-medium`,children:`Microphone Input`}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Record microphone audio and send it directly to audio-capable agents`})]}),(0,K.jsx)(s_,{checked:g.enabled,onCheckedChange:e=>_({enabled:e})})]}),g.enabled&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(`details`,{className:`group`,children:[(0,K.jsxs)(`summary`,{className:`cursor-pointer text-xs text-muted-foreground hover:text-foreground transition-colors flex items-center gap-1`,children:[(0,K.jsx)(du,{className:`h-3 w-3 transition-transform group-open:rotate-90`}),`Audio options`]}),(0,K.jsxs)(`div`,{className:`mt-3 space-y-2 pl-4 border-l-2 border-muted`,children:[(0,K.jsxs)(`details`,{className:`group/audio-input rounded-md border border-border/60 p-3`,open:!0,children:[(0,K.jsxs)(`summary`,{className:`flex cursor-pointer list-none items-center gap-1 text-xs font-medium [&::-webkit-details-marker]:hidden`,children:[(0,K.jsx)(du,{className:`h-3 w-3 transition-transform group-open/audio-input:rotate-90`}),`Input`]}),(0,K.jsxs)(`div`,{className:`mt-3 grid grid-cols-1 sm:grid-cols-2 gap-3`,children:[(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(Ug,{htmlFor:`audio-max-duration`,className:`text-xs`,children:`Max duration (seconds)`}),(0,K.jsx)(Bg,{id:`audio-max-duration`,type:`number`,min:`1`,max:`600`,value:g.maxDurationSeconds,onChange:e=>_({maxDurationSeconds:Math.max(1,parseInt(e.target.value||`60`))}),className:`text-sm`})]}),(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(Ug,{htmlFor:`audio-max-payload`,className:`text-xs`,children:`Max payload (MB)`}),(0,K.jsx)(Bg,{id:`audio-max-payload`,type:`number`,min:`1`,max:`50`,value:Math.round(g.maxPayloadBytes/1024/1024),onChange:e=>_({maxPayloadBytes:Math.max(1,parseInt(e.target.value||`10`))*1024*1024}),className:`text-sm`})]}),(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(Ug,{htmlFor:`audio-sample-rate`,className:`text-xs`,children:`Output sample rate (Hz)`}),(0,K.jsx)(Bg,{id:`audio-sample-rate`,type:`number`,min:`8000`,max:`48000`,step:`1000`,value:g.sampleRate,onChange:e=>_({sampleRate:Math.max(8e3,parseInt(e.target.value||`16000`))}),className:`text-sm`}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Resamples microphone recordings before sending.`})]}),(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,K.jsx)(Ug,{htmlFor:`audio-preview`,className:`text-xs`,children:`Preview before send`}),(0,K.jsx)(s_,{id:`audio-preview`,checked:g.previewBeforeSend,onCheckedChange:e=>_({previewBeforeSend:e})})]}),(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,K.jsx)(Ug,{htmlFor:`audio-echo`,className:`text-xs`,children:`Echo cancellation`}),(0,K.jsx)(s_,{id:`audio-echo`,checked:g.echoCancellation,onCheckedChange:e=>_({echoCancellation:e})})]}),(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,K.jsx)(Ug,{htmlFor:`audio-noise`,className:`text-xs`,children:`Noise suppression`}),(0,K.jsx)(s_,{id:`audio-noise`,checked:g.noiseSuppression,onCheckedChange:e=>_({noiseSuppression:e})})]}),(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,K.jsx)(Ug,{htmlFor:`audio-gain`,className:`text-xs`,children:`Auto gain control`}),(0,K.jsx)(s_,{id:`audio-gain`,checked:g.autoGainControl,onCheckedChange:e=>_({autoGainControl:e})})]}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Browser support may vary.`})]})]})]}),(0,K.jsxs)(`details`,{className:`group/audio-autostop rounded-md border border-border/60 p-3`,open:!0,children:[(0,K.jsxs)(`summary`,{className:`flex cursor-pointer list-none items-center gap-1 text-xs font-medium [&::-webkit-details-marker]:hidden`,children:[(0,K.jsx)(du,{className:`h-3 w-3 transition-transform group-open/audio-autostop:rotate-90`}),`Auto-stop on silence`]}),(0,K.jsxs)(`div`,{className:`mt-3 space-y-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Automatically attaches click-to-record audio after a quiet pause.`}),(0,K.jsx)(s_,{"aria-label":`Auto-stop on silence`,checked:g.autoStopOnSilence,onCheckedChange:e=>_({autoStopOnSilence:e})})]}),g.autoStopOnSilence&&(0,K.jsxs)(`div`,{className:`grid grid-cols-1 sm:grid-cols-3 gap-3`,children:[(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(Ug,{htmlFor:`audio-silence-threshold`,className:`text-xs`,children:`Silence threshold`}),(0,K.jsx)(Bg,{id:`audio-silence-threshold`,type:`number`,min:`0`,max:`1`,step:`0.01`,value:g.silenceThreshold,onChange:e=>_({silenceThreshold:Math.max(0,Math.min(1,Number(e.target.value||`0.03`)))}),className:`text-sm`})]}),(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(Ug,{htmlFor:`audio-silence-duration`,className:`text-xs`,children:`Silence duration (ms)`}),(0,K.jsx)(Bg,{id:`audio-silence-duration`,type:`number`,min:`250`,max:`10000`,step:`250`,value:g.silenceDurationMs,onChange:e=>_({silenceDurationMs:Math.max(250,parseInt(e.target.value||`1500`))}),className:`text-sm`})]}),(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(Ug,{htmlFor:`audio-min-recording`,className:`text-xs`,children:`Minimum recording (ms)`}),(0,K.jsx)(Bg,{id:`audio-min-recording`,type:`number`,min:`0`,max:`10000`,step:`250`,value:g.minimumRecordingMs,onChange:e=>_({minimumRecordingMs:Math.max(0,parseInt(e.target.value||`1000`))}),className:`text-sm`})]})]})]})]}),(0,K.jsxs)(`details`,{className:`group/audio-output rounded-md border border-border/60 p-3`,open:!0,children:[(0,K.jsxs)(`summary`,{className:`flex cursor-pointer list-none items-center gap-1 text-xs font-medium [&::-webkit-details-marker]:hidden`,children:[(0,K.jsx)(du,{className:`h-3 w-3 transition-transform group-open/audio-output:rotate-90`}),`Output`]}),(0,K.jsxs)(`div`,{className:`mt-3 flex items-center justify-between gap-3`,children:[(0,K.jsx)(Ug,{htmlFor:`audio-autoplay`,className:`text-xs`,children:`Auto-play agent audio`}),(0,K.jsx)(s_,{id:`audio-autoplay`,checked:g.autoPlayAgentAudio,onCheckedChange:e=>_({autoPlayAgentAudio:e})})]})]})]})]}),(0,K.jsxs)(`details`,{className:`group`,children:[(0,K.jsxs)(`summary`,{className:`cursor-pointer text-xs text-muted-foreground hover:text-foreground transition-colors flex items-center gap-1`,children:[(0,K.jsx)(du,{className:`h-3 w-3 transition-transform group-open:rotate-90`}),`Learn more about audio input`]}),(0,K.jsxs)(`div`,{className:`mt-3 space-y-3 pl-4`,children:[(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground leading-relaxed`,children:`Audio input requires browser microphone support on localhost or HTTPS. File uploads remain available when recording is unavailable.`}),(0,K.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,K.jsx)(`p`,{className:`text-xs font-medium`,children:`Supported input paths:`}),(0,K.jsxs)(`ul`,{className:`text-xs text-muted-foreground space-y-0.5 list-disc list-inside`,children:[(0,K.jsx)(`li`,{children:`Audio is sent without transcription`}),(0,K.jsx)(`li`,{children:`Microphone recordings become mono WAV`}),(0,K.jsx)(`li`,{children:`Uploaded files keep their original format`}),(0,K.jsx)(`li`,{children:`Supported audio formats depend on the selected agent`}),(0,K.jsx)(`li`,{children:`Auto-stop on silence is optional and uses local microphone level only`})]})]}),(0,K.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,K.jsx)(`p`,{className:`text-xs font-medium`,children:`Browser controls:`}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground leading-relaxed`,children:`Echo cancellation, noise suppression, and auto gain control are best-effort browser hints.`})]})]})]})]})]})]}),r===`proxy`&&u.openai_proxy&&(0,K.jsxs)(`div`,{className:`space-y-6 pt-4`,children:[(0,K.jsxs)(`div`,{className:`space-y-4`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`div`,{className:`space-y-0.5`,children:[(0,K.jsx)(Ug,{className:`text-base font-medium`,children:`OpenAI Proxy Mode`}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Route requests through DevUI backend to OpenAI API`})]}),(0,K.jsx)(s_,{checked:a.enabled,onCheckedChange:e=>o({...a,enabled:e})})]}),!a.enabled&&(0,K.jsx)(`div`,{className:`bordder border-muted bg-muted/30 rounded-lg p-4 space-y-3`,children:(0,K.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,K.jsx)(td,{className:`h-4 w-4 flex-shrink-0 mt-0.5 text-blue-600 dark:text-blue-400`}),(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsx)(`p`,{className:`text-sm font-medium`,children:`About OpenAI Proxy Mode`}),(0,K.jsxs)(`p`,{className:`text-xs text-muted-foreground leading-relaxed`,children:[`When enabled, your chat requests are sent to your DevUI backend`,` `,(0,K.jsxs)(`span`,{className:`font-mono font-semibold`,children:[`(`,v,`)`]}),`, which then forwards them to OpenAI's API. This keeps your`,` `,(0,K.jsx)(`span`,{className:`font-mono font-semibold`,children:`OPENAI_API_KEY`}),` `,`secure on the server instead of exposing it in the browser.`]}),(0,K.jsxs)(`div`,{className:`space-y-1.5 pt-1`,children:[(0,K.jsx)(`p`,{className:`text-xs font-medium`,children:`Requirements:`}),(0,K.jsxs)(`ul`,{className:`text-xs text-muted-foreground space-y-0.5 list-disc list-inside`,children:[(0,K.jsxs)(`li`,{children:[`Backend must have`,` `,(0,K.jsx)(`span`,{className:`font-mono`,children:`OPENAI_API_KEY`}),` `,`configured`]}),(0,K.jsx)(`li`,{children:`Backend must support OpenAI Responses API proxying (DevUI does)`})]})]}),(0,K.jsxs)(`div`,{className:`space-y-1.5 pt-1`,children:[(0,K.jsx)(`p`,{className:`text-xs font-medium`,children:`Why use this?`}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Quickly test and compare OpenAI models directly through the DevUI interface without creating custom agents or exposing API keys in the browser.`})]})]})]})}),a.enabled&&(0,K.jsxs)(`div`,{className:`space-y-4 pl-4 border-l-2 border-muted`,children:[(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsx)(Ug,{className:`text-sm font-medium`,children:`Model`}),(0,K.jsx)(Bg,{type:`text`,value:a.model,onChange:e=>o({...a,model:e.target.value}),placeholder:`gpt-4.1-mini`,className:`font-mono text-sm`}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Enter any OpenAI model ID (e.g., gpt-4.1, o1, o3-mini)`})]}),(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsx)(Ug,{className:`text-xs text-muted-foreground`,children:`Common presets`}),(0,K.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:c_.map(e=>(0,K.jsx)(q,{variant:a.model===e?`default`:`outline`,size:`sm`,onClick:()=>o({...a,model:e}),className:`text-xs h-7`,children:e},e))})]}),(0,K.jsxs)(`details`,{className:`group`,children:[(0,K.jsxs)(`summary`,{className:`cursor-pointer text-sm font-medium text-muted-foreground hover:text-foreground transition-colors flex items-center gap-1`,children:[(0,K.jsx)(du,{className:`h-3 w-3 transition-transform group-open:rotate-90`}),`Advanced Parameters (optional)`]}),(0,K.jsxs)(`div`,{className:`space-y-3 mt-3 pl-4`,children:[(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(Ug,{className:`text-xs`,children:`Temperature`}),(0,K.jsx)(Bg,{type:`number`,step:`0.1`,min:`0`,max:`2`,value:a.temperature??``,onChange:e=>o({...a,temperature:e.target.value?parseFloat(e.target.value):void 0}),placeholder:`1.0 (default)`,className:`text-sm`}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Controls randomness (0-2)`})]}),(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(Ug,{className:`text-xs`,children:`Max Output Tokens`}),(0,K.jsx)(Bg,{type:`number`,min:`1`,value:a.max_output_tokens??``,onChange:e=>o({...a,max_output_tokens:e.target.value?parseInt(e.target.value):void 0}),placeholder:`Auto`,className:`text-sm`}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Maximum tokens in response`})]}),(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(Ug,{className:`text-xs`,children:`Top P`}),(0,K.jsx)(Bg,{type:`number`,step:`0.1`,min:`0`,max:`1`,value:a.top_p??``,onChange:e=>o({...a,top_p:e.target.value?parseFloat(e.target.value):void 0}),placeholder:`1.0 (default)`,className:`text-sm`}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Nucleus sampling (0-1)`})]}),(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(Ug,{className:`text-xs`,children:`Reasoning Effort (o-series models)`}),(0,K.jsxs)(`select`,{value:a.reasoning_effort??``,onChange:e=>o({...a,reasoning_effort:e.target.value?e.target.value:void 0}),className:`flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring`,children:[(0,K.jsx)(`option`,{value:``,children:`Auto (default)`}),(0,K.jsx)(`option`,{value:`minimal`,children:`Minimal`}),(0,K.jsx)(`option`,{value:`low`,children:`Low`}),(0,K.jsx)(`option`,{value:`medium`,children:`Medium`}),(0,K.jsx)(`option`,{value:`high`,children:`High`})]}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Constrains reasoning effort (faster/cheaper vs thorough)`})]})]})]})]})]}),a.enabled&&(0,K.jsxs)(`div`,{className:`flex items-start gap-2 text-xs text-muted-foreground bg-muted/50 p-3 rounded`,children:[(0,K.jsx)(td,{className:`h-3.5 w-3.5 flex-shrink-0 mt-0.5`}),(0,K.jsx)(`div`,{className:`space-y-1`,children:(0,K.jsxs)(`p`,{children:[`Requests route through`,` `,(0,K.jsx)(`span`,{className:`font-mono font-semibold`,children:v}),` `,`to OpenAI API. Server must have`,` `,(0,K.jsx)(`span`,{className:`font-mono font-semibold`,children:`OPENAI_API_KEY`}),` `,`configured.`]})})]})]}),r===`about`&&(0,K.jsxs)(`div`,{className:`space-y-4 pt-4`,children:[(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`DevUI is a sample app for getting started with Agent Framework.`}),(0,K.jsxs)(`div`,{className:`space-y-2 text-sm`,children:[(0,K.jsxs)(`div`,{className:`flex justify-between`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Version:`}),(0,K.jsx)(`span`,{className:`font-mono`,children:d||`Unknown`})]}),(0,K.jsxs)(`div`,{className:`flex justify-between`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Runtime:`}),(0,K.jsx)(`span`,{className:`font-mono capitalize`,children:f||`Unknown`})]}),(0,K.jsxs)(`div`,{className:`flex justify-between`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`UI Mode:`}),(0,K.jsx)(`span`,{className:`font-mono capitalize`,children:p||`Unknown`})]})]}),(u||l!==void 0)&&(0,K.jsxs)(`div`,{className:`space-y-2 pt-2`,children:[(0,K.jsx)(`p`,{className:`text-xs font-medium text-muted-foreground uppercase tracking-wide`,children:`Capabilities`}),(0,K.jsxs)(`div`,{className:`space-y-1 text-sm`,children:[u?.instrumentation!==void 0&&(0,K.jsxs)(`div`,{className:`flex justify-between items-center`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Instrumentation:`}),(0,K.jsx)(`span`,{className:`text-xs px-2 py-0.5 rounded-full ${u.instrumentation?`bg-green-500/10 text-green-600 dark:text-green-400`:`bg-muted text-muted-foreground`}`,children:u.instrumentation?`Enabled`:`Disabled`})]}),u?.openai_proxy!==void 0&&(0,K.jsxs)(`div`,{className:`flex justify-between items-center`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`OpenAI Proxy:`}),(0,K.jsx)(`span`,{className:`text-xs px-2 py-0.5 rounded-full ${u.openai_proxy?`bg-green-500/10 text-green-600 dark:text-green-400`:`bg-muted text-muted-foreground`}`,children:u.openai_proxy?`Available`:`Not Configured`})]}),u?.deployment!==void 0&&(0,K.jsxs)(`div`,{className:`flex justify-between items-center`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Deployment:`}),(0,K.jsx)(`span`,{className:`text-xs px-2 py-0.5 rounded-full ${u.deployment?`bg-green-500/10 text-green-600 dark:text-green-400`:`bg-muted text-muted-foreground`}`,children:u.deployment?`Available`:`Disabled`})]}),l!==void 0&&(0,K.jsxs)(`div`,{className:`flex justify-between items-center`,children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Authentication:`}),(0,K.jsx)(`span`,{className:`text-xs px-2 py-0.5 rounded-full ${l?`bg-blue-500/10 text-blue-600 dark:text-blue-400`:`bg-muted text-muted-foreground`}`,children:l?`Required`:`Not Required`})]})]})]}),(0,K.jsx)(`div`,{className:`flex justify-center pt-2`,children:(0,K.jsxs)(q,{variant:`outline`,size:`sm`,onClick:()=>window.open(`https://github.com/microsoft/agent-framework`,`_blank`),className:`text-xs`,children:[(0,K.jsx)(Vu,{className:`h-3 w-3 mr-1`}),`Learn More about Agent Framework`]})})]})]})]})})}function u_(e,t){if(t.type!==`response.output_text.delta`&&t.type!==`response.refusal.delta`||!(`delta`in t)||typeof t.delta!=`string`||t.delta.length===0)return e;let n=t.type===`response.refusal.delta`?`refusal`:`text`,r=e.map(e=>({...e})),i=r.find(e=>e.itemId===t.item_id&&e.contentIndex===(t.content_index??0)&&e.type===n);return i?i.text+=t.delta:r.push({itemId:t.item_id,contentIndex:t.content_index??0,type:n,text:t.delta}),r}var d_=`devui_streaming_state_`,f_=864e5,p_=16384;function m_(e){return`${d_}${e}`}function h_(e){if(e.accumulatedParts?.length){let t=[],n=p_;for(let r of[...e.accumulatedParts].reverse()){if(n<=0)break;let e=r.text.slice(-n);t.unshift({...r,text:e}),n-=e.length}let r=t.map(e=>e.text).join(``);return{...e,accumulatedParts:t,accumulatedText:r,accumulatedTextIsPreview:e.accumulatedTextIsPreview||r.lengthe+t.text.length,0)}}return e.accumulatedText===void 0||e.accumulatedText.length<=p_?e:{...e,accumulatedText:e.accumulatedText.slice(-16384),accumulatedTextIsPreview:!0}}function g_(e){let t=m_(e),n=localStorage.getItem(t);if(!n)return null;let r=JSON.parse(n);return Date.now()-r.timestamp>f_?(x_(e),null):h_(r)}function __({conversationId:e,responseId:t,lastMessageId:n,lastSequenceNumber:r=-1,accumulatedText:i,accumulatedTextIsPreview:a=!1,accumulatedTextType:o,accumulatedParts:s}){return h_({conversationId:e,responseId:t,lastMessageId:n,lastSequenceNumber:r,timestamp:Date.now(),completed:!1,accumulatedText:i,accumulatedTextIsPreview:a,accumulatedTextType:o,accumulatedParts:s})}function v_(e,t,n,r){let i=`sequence_number`in t?t.sequence_number:void 0,a={...e,responseId:n,lastMessageId:r,timestamp:Date.now(),completed:t.type===`response.completed`||t.type===`response.failed`};if(i!==void 0&&(a.lastSequenceNumber=i),(t.type===`response.output_text.delta`||t.type===`response.refusal.delta`)&&`delta`in t&&typeof t.delta==`string`&&t.delta.length>0){let n=t.type===`response.refusal.delta`?`refusal`:`text`,r=u_(e.accumulatedParts?e.accumulatedParts.map(e=>({...e})):e.accumulatedText?[{itemId:e.lastMessageId,contentIndex:0,type:e.accumulatedTextType??`text`,text:e.accumulatedText}]:[],t);a.accumulatedParts=r,a.accumulatedText=r.map(e=>e.text).join(``),a.accumulatedTextIsPreview=e.accumulatedTextIsPreview,a.accumulatedTextType=n}return h_(a)}function y_(e){try{let t=m_(e.conversationId),n=JSON.stringify(h_(e));localStorage.setItem(t,n)}catch(t){console.error(`Failed to save streaming state:`,t);try{S_();let t=m_(e.conversationId),n=JSON.stringify(h_(e));localStorage.setItem(t,n)}catch{console.error(`Failed to save streaming state even after cleanup`)}}}function b_(e){try{let t=g_(e);return!t||t.completed?null:t}catch(e){return console.error(`Failed to load streaming state:`,e),null}}function x_(e){try{let t=m_(e);localStorage.removeItem(t)}catch(e){console.error(`Failed to clear streaming state:`,e)}}function S_(){try{let e=Object.keys(localStorage),t=Date.now();for(let n of e)if(n.startsWith(d_))try{let e=localStorage.getItem(n);if(e){let r=JSON.parse(e);(t-r.timestamp>f_||r.completed)&&localStorage.removeItem(n)}}catch{localStorage.removeItem(n)}}catch(e){console.error(`Failed to clear expired streaming states:`,e)}}function C_(){S_()}function w_(){let[e,t]=(0,y.useState)(!1),n=(0,y.useRef)(null);return{isCancelling:e,createAbortSignal:(0,y.useCallback)(()=>(n.current=new AbortController,t(!1),n.current.signal),[]),handleCancel:(0,y.useCallback)(()=>{n.current&&=(t(!0),n.current.abort(),null)},[]),resetCancelling:(0,y.useCallback)(()=>{t(!1)},[]),cleanup:(0,y.useCallback)(()=>{n.current&&=(n.current.abort(),null)},[])}}function T_(e){return e instanceof DOMException&&e.name===`AbortError`}function E_(e={}){let{onDrop:t,disabled:n=!1}=e,[r,i]=(0,y.useState)(!1),[a,o]=(0,y.useState)([]),s=(0,y.useRef)(0),c=(0,y.useCallback)(e=>{e.preventDefault(),e.stopPropagation(),!n&&(s.current++,e.dataTransfer.items&&e.dataTransfer.items.length>0&&i(!0))},[n]),l=(0,y.useCallback)(e=>{e.preventDefault(),e.stopPropagation(),!n&&(s.current--,s.current===0&&i(!1))},[n]),u=(0,y.useCallback)(e=>{e.preventDefault(),e.stopPropagation()},[]),d=(0,y.useCallback)(e=>{if(e.preventDefault(),e.stopPropagation(),i(!1),s.current=0,n)return;let r=Array.from(e.dataTransfer.files);r.length>0&&(o(r),t?.(r))},[n,t]);return{isDragOver:r,droppedFiles:a,clearDroppedFiles:(0,y.useCallback)(()=>{o([])},[]),dragHandlers:{onDragEnter:c,onDragLeave:l,onDragOver:u,onDrop:d}}}var D_=600;function O_(e){window.clearInterval(e.timer),window.clearTimeout(e.deadline),window.clearTimeout(e.warmup),e.meterFrame!==void 0&&window.cancelAnimationFrame(e.meterFrame),e.stream?.getTracks().forEach(e=>e.stop()),e.stream=void 0,e.meterContext&&=(e.meterContext.close().catch(e=>console.warn(`Could not close microphone meter:`,e)),void 0),e.recorder?.state===`recording`&&e.recorder.stop()}function k_(){return window.AudioContext||window.webkitAudioContext}function A_(e){let t=e.getChannelData(0),n=Math.min(64,t.length),r=Array.from({length:n},(e,r)=>{let i=Math.floor(r*t.length/n),a=Math.floor((r+1)*t.length/n),o=0;for(let e=i;ee/i)}function j_(e){let t=e.getChannelData(0),n=new DataView(new ArrayBuffer(44+t.length*2)),r=(e,t)=>{for(let r=0;r{let r=Math.max(-1,Math.min(1,e));n.setInt16(44+t*2,r*(r<0?32768:32767),!0)}),new Blob([n],{type:`audio/wav`})}async function M_(e,t){let n=k_();if(!n)throw Error(`This browser cannot convert microphone audio.`);let r=new n;try{let n=await r.decodeAudioData(await e.arrayBuffer()),i=new OfflineAudioContext(1,Math.max(1,Math.ceil(n.duration*t)),t),a=i.createBufferSource();a.buffer=n,a.connect(i.destination),a.start();let o=await i.startRendering();return{wav:j_(o),durationSeconds:o.duration,waveformPeaks:A_(o)}}finally{await r.close()}}async function N_(e){let t=new Uint8Array(await e.arrayBuffer()),n=``;for(let e=0;e{f.current&&URL.revokeObjectURL(f.current),f.current=null,i(null)},[]),m=(0,y.useCallback)(()=>{let e=d.current;d.current=null,e&&O_(e),c(0),n(`idle`),u(null)},[]);(0,y.useEffect)(()=>()=>{let e=d.current;d.current=null,e&&O_(e),f.current&&URL.revokeObjectURL(f.current)},[]);let h=(0,y.useCallback)(()=>{let e=d.current;if(e&&!e.recorder){m();return}e?.recorder?.state===`recording`&&(n(`processing`),c(0),O_(e))},[m]),g=(0,y.useCallback)(async(t=e.autoStopOnSilence)=>{if(d.current)return;let r={};d.current=r,p(),u(null),o(0),c(0),n(`starting`);let a=e=>{d.current===r&&(m(),u(e instanceof Error?e.message:`Microphone recording failed.`))};try{if(r.stream=await navigator.mediaDevices.getUserMedia({audio:{channelCount:1,sampleRate:e.sampleRate,echoCancellation:e.echoCancellation,noiseSuppression:e.noiseSuppression,autoGainControl:e.autoGainControl}}),d.current!==r){O_(r);return}let s=[`audio/webm;codecs=opus`,`audio/webm`,`audio/mp4`,`audio/ogg;codecs=opus`].find(e=>MediaRecorder.isTypeSupported(e)),l=new MediaRecorder(r.stream,s?{mimeType:s}:void 0);r.recorder=l;let u=[],p=0;l.ondataavailable=t=>{d.current===r&&(p+=t.data.size,p>e.maxPayloadBytes?a(Error(`Recording exceeds the ${Math.round(e.maxPayloadBytes/1024/1024)} MB limit.`)):u.push(t.data))},l.onerror=()=>a(Error(`Microphone recording failed. Please try again.`)),l.onstop=async()=>{if(O_(r),d.current===r){n(`processing`);try{let{wav:t,durationSeconds:a,waveformPeaks:o}=await M_(new Blob(u,{type:l.mimeType}),e.sampleRate);if(t.size>e.maxPayloadBytes)throw Error(`Recording exceeds the ${Math.round(e.maxPayloadBytes/1024/1024)} MB limit.`);let s=await N_(t);if(d.current!==r)return;let c=URL.createObjectURL(t);f.current=c,i({data:s,format:`wav`,blobUrl:c,sizeBytes:t.size,durationSeconds:a,waveformPeaks:o}),d.current=null,n(`idle`)}catch(e){a(e)}}};let m=k_();if(!m)throw Error(`This browser cannot meter microphone audio.`);let g=new m;r.meterContext=g;let _=g.createAnalyser();_.fftSize=256,_.smoothingTimeConstant=.75,g.createMediaStreamSource(r.stream).connect(_),g.state===`suspended`&&g.resume().catch(e=>console.warn(`Could not resume microphone meter:`,e));let v=new Uint8Array(_.fftSize);l.start(250);let y=Date.now(),b=null,x=()=>{if(d.current!==r)return;_.getByteTimeDomainData(v);let n=0;for(let e of v)n+=((e-128)/128)**2;let i=Math.min(1,Math.sqrt(n/v.length)*4);c(i);let a=Date.now();if(t&&a-y>=Math.max(D_,e.minimumRecordingMs)&&(b=i<=e.silenceThreshold?b??a:null,b!==null&&a-b>=e.silenceDurationMs)){h();return}r.meterFrame=window.requestAnimationFrame(x)};r.meterFrame=window.requestAnimationFrame(x),r.warmup=window.setTimeout(()=>{d.current===r&&n(`recording`)},D_),r.timer=window.setInterval(()=>{o(Math.floor((Date.now()-y)/1e3))},250),r.deadline=window.setTimeout(h,e.maxDurationSeconds*1e3)}catch(e){a(e)}},[m,p,e,h]);return{isSupported:typeof window<`u`&&window.isSecureContext&&!!(typeof navigator.mediaDevices?.getUserMedia==`function`&&window.MediaRecorder&&k_()&&window.OfflineAudioContext),isStarting:t===`starting`,isRecording:t===`recording`,isProcessing:t===`processing`,recording:r,recordingSeconds:a,inputLevel:s,error:l,startRecording:g,stopRecording:h,cancelRecording:m,clearRecording:p}}var F_=`modulepreload`,I_=function(e,t){return new URL(e,t).href},L_={},R_=function(e){return e.pathname.endsWith(`.css`)},z_=function(e,t,n){if(t in e)return e[t];let r=n();if(!r){e[t]=void 0;return}let i=r.then(()=>{e[t]=void 0},n=>{throw e[t]=void 0,n});return e[t]=i,i},B_=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e,i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function s(e){return import.meta.resolve?new URL(import.meta.resolve(e)):new URL(e,import.meta.url)}r=o(t.map(t=>{t=I_(t,n);let r=s(t),i=R_(r);return z_(L_,r.href,()=>{if(e===void 0){e={all:new Set,styles:new Set};let t=document.getElementsByTagName(`link`);for(let n=t.length-1;n>=0;n--){let r=t[n];e.all.add(r.href),r.rel===`stylesheet`&&e.styles.add(r.href)}}if((i?e.styles:e.all).has(r.href))return;let t=document.createElement(`link`);if(t.rel=i?`stylesheet`:F_,i||(t.as=`script`),t.crossOrigin=``,t.href=r.href,a&&t.setAttribute(`nonce`,a),document.head.appendChild(t),i)return new Promise((e,n)=>{t.addEventListener(`load`,e),t.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${r}`)))})})}).filter(e=>e!==void 0))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},V_=``,H_=1e3,U_=10,W_=250,G_=12,K_=500,q_=6e3;function J_(){return localStorage.getItem(`devui_backend_url`)||V_}function Y_(e,t){return t?t.aborted?Promise.reject(new DOMException(`Request aborted`,`AbortError`)):new Promise((n,r)=>{let i=setTimeout(()=>{t.removeEventListener(`abort`,a),n()},e),a=()=>{clearTimeout(i),r(new DOMException(`Request aborted`,`AbortError`))};t.addEventListener(`abort`,a,{once:!0})}):new Promise(t=>setTimeout(t,e))}function X_(e){if(e.type===`response.trace.completed`&&`data`in e&&typeof e.data==`object`&&e.data!==null)return e.data}var Z_=new class{baseUrl;authToken=null;constructor(e){this.baseUrl=e||J_(),this.authToken=localStorage.getItem(`devui_auth_token`)}setBaseUrl(e){this.baseUrl=e}getBaseUrl(){return this.baseUrl}setAuthToken(e){this.authToken=e,e?localStorage.setItem(`devui_auth_token`,e):localStorage.removeItem(`devui_auth_token`)}getAuthToken(){return this.authToken}clearAuthToken(){this.setAuthToken(null)}async request(e,t={}){let n=`${this.baseUrl}${e}`,r={"Content-Type":`application/json`,...t.headers};this.authToken&&(r.Authorization=`Bearer ${this.authToken}`);let i=await fetch(n,{...t,headers:r});if(!i.ok){if(i.status===401)throw this.clearAuthToken(),Error(`UNAUTHORIZED`);let e=`API request failed: ${i.status} ${i.statusText}`;try{let t=await i.json();t.detail?typeof t.detail==`string`?e=t.detail:typeof t.detail==`object`&&t.detail.error?.message&&(e=t.detail.error.message):t.error?.message&&(e=t.error.message)}catch{}throw Error(e)}return i.json()}async getTraceEvents(e,t,n){if(!t)return[];if(n?.aborted)throw new DOMException(`Request aborted`,`AbortError`);let r={};this.authToken&&(r.Authorization=`Bearer ${this.authToken}`);let i=new Map,a=new AbortController,o=()=>a.abort();n?.addEventListener(`abort`,o,{once:!0});let s=setTimeout(o,q_);try{for(let t=0;t0)for(let t of e.data){let e=X_(t)?.span_id;e&&i.set(e,t)}}else if(t.status===401)return this.clearAuthToken(),[];else if(t.status!==404&&t.status!==503)break}catch(e){if(T_(e)||a.signal.aborted)throw e}t<11&&await Y_(K_,a.signal)}}catch(e){if(n?.aborted||!a.signal.aborted)throw e}finally{clearTimeout(s),n?.removeEventListener(`abort`,o)}return Array.from(i.values())}async getHealth(){return this.request(`/health`)}async getMeta(){return this.request(`/meta`)}async getEntities(){let e=(await this.request(`/v1/entities`)).entities.map(e=>{if(e.type===`agent`)return{id:e.id,name:e.name,description:e.description,type:`agent`,source:e.source||`directory`,tools:(e.tools||[]).map(e=>typeof e==`string`?e:JSON.stringify(e)),has_env:!!(e.required_env_vars&&e.required_env_vars.length>0),module_path:typeof e.metadata?.module_path==`string`?e.metadata.module_path:void 0,required_env_vars:e.required_env_vars,metadata:e.metadata,deployment_supported:e.deployment_supported,deployment_reason:e.deployment_reason,instructions:e.instructions,model_id:e.model_id,chat_client_type:e.chat_client_type,context_provider:e.context_provider,middleware:e.middleware};{let t=e.executors||e.tools||[],n=e.start_executor_id||``;if(!n&&t.length>0){let e=t[0];typeof e==`string`&&(n=e)}return{id:e.id,name:e.name,description:e.description,type:`workflow`,source:e.source||`directory`,executors:t.map(e=>typeof e==`string`?e:JSON.stringify(e)),has_env:!!(e.required_env_vars&&e.required_env_vars.length>0),module_path:typeof e.metadata?.module_path==`string`?e.metadata.module_path:void 0,required_env_vars:e.required_env_vars,metadata:e.metadata,deployment_supported:e.deployment_supported,deployment_reason:e.deployment_reason,input_schema:e.input_schema||{type:`string`},input_type_name:e.input_type_name||`Input`,start_executor_id:n,tools:[]}}});return{entities:e,agents:e.filter(e=>e.type===`agent`),workflows:e.filter(e=>e.type===`workflow`)}}async getAgents(){let{agents:e}=await this.getEntities();return e}async getWorkflows(){let{workflows:e}=await this.getEntities();return e}async getAgentInfo(e){return this.request(`/v1/entities/${e}/info?type=agent`)}async getWorkflowInfo(e){return this.request(`/v1/entities/${e}/info?type=workflow`)}async reloadEntity(e){return this.request(`/v1/entities/${e}/reload`,{method:`POST`})}async createConversation(e){let{oaiMode:t}=await B_(()=>Promise.resolve().then(()=>(Cp(),Sp)).then(e=>({oaiMode:e.useDevUIStore.getState().oaiMode})),void 0,import.meta.url),n={};t.enabled&&(n[`X-Proxy-Backend`]=`openai`);let r=await this.request(`/v1/conversations`,{method:`POST`,headers:n,body:JSON.stringify({metadata:e})});return{id:r.id,object:`conversation`,created_at:r.created_at,metadata:r.metadata}}async listConversations(e){let t=e?`/v1/conversations?agent_id=${encodeURIComponent(e)}`:`/v1/conversations`,n=await this.request(t);return{data:n.data.map(e=>({id:e.id,object:`conversation`,created_at:e.created_at,metadata:e.metadata})),has_more:n.has_more}}async getConversation(e){let t=await this.request(`/v1/conversations/${e}`);return{id:t.id,object:`conversation`,created_at:t.created_at,metadata:t.metadata}}async deleteConversation(e){try{return await this.request(`/v1/conversations/${e}`,{method:`DELETE`}),x_(e),!0}catch{return!1}}async listConversationItems(e,t){let n=new URLSearchParams;t?.limit&&n.set(`limit`,t.limit.toString()),t?.after&&n.set(`after`,t.after),t?.order&&n.set(`order`,t.order);let r=n.toString(),i=`/v1/conversations/${e}/items${r?`?${r}`:``}`;return this.request(i)}async getConversationItem(e,t){let n=`/v1/conversations/${e}/items/${t}`;return this.request(n)}async deleteConversationItem(e,t){let n=await fetch(`${this.baseUrl}/v1/conversations/${e}/items/${t}`,{method:`DELETE`});if(!n.ok)throw Error(`Failed to delete item: ${n.statusText}`)}async*streamOpenAIResponse(e,t,n,r){let{oaiMode:i}=await B_(()=>Promise.resolve().then(()=>(Cp(),Sp)).then(e=>({oaiMode:e.useDevUIStore.getState().oaiMode})),void 0,import.meta.url);i.enabled&&(e.model=i.model,i.temperature!==void 0&&(e.temperature=i.temperature),i.max_output_tokens!==void 0&&(e.max_output_tokens=i.max_output_tokens),i.top_p!==void 0&&(e.top_p=i.top_p),i.instructions!==void 0&&(e.instructions=i.instructions),i.reasoning_effort!==void 0&&(e.reasoning={effort:i.reasoning_effort}));let a=-1,o=0,s=!1,c=r,l,u=0,d=t?b_(t):null,f=d?{...d}:null,p=(e=!1)=>{if(!t||!f)return;let n=Date.now();!e&&n-u{if(!t||!c)return;f=v_(f??__({conversationId:t,responseId:c,lastMessageId:l,lastSequenceNumber:a,accumulatedText:d?.accumulatedText,accumulatedTextIsPreview:d?.accumulatedTextIsPreview,accumulatedTextType:d?.accumulatedTextType,accumulatedParts:d?.accumulatedParts}),e,c,l);let n=(e.type===`response.output_text.delta`||e.type===`response.refusal.delta`)&&`delta`in e&&typeof e.delta==`string`&&e.delta.length>0;p(!n)};for(d&&(r||(c=d.responseId),a=d.lastSequenceNumber,l=d.lastMessageId,s=d.lastSequenceNumber>=0||!!d.accumulatedText);o<=U_;)try{let r;if(c){let e=new URLSearchParams;e.set(`stream`,`true`),a>=0&&e.set(`starting_after`,a.toString());let t=`${this.baseUrl}/v1/responses/${c}?${e.toString()}`,i={Accept:`text/event-stream`};this.authToken&&(i.Authorization=`Bearer ${this.authToken}`),r=await fetch(t,{method:`GET`,headers:i,signal:n})}else{let t=`${this.baseUrl}/v1/responses`,a={"Content-Type":`application/json`,Accept:`text/event-stream`};i.enabled&&(a[`X-Proxy-Backend`]=`openai`),this.authToken&&(a.Authorization=`Bearer ${this.authToken}`),r=await fetch(t,{method:`POST`,headers:a,body:JSON.stringify(e),signal:n})}if(!r.ok){if(r.status===401)throw this.clearAuthToken(),Error(`UNAUTHORIZED`);if(r.status>=400&&r.status<500){let e=`Client error ${r.status}`;try{let t=await r.json();t.error&&t.error.message?e=t.error.message:t.detail&&(e=t.detail)}catch{}throw Error(`CLIENT_ERROR: ${e}`)}let e=`Request failed with status ${r.status}`;try{let t=await r.json();t.error&&t.error.message?e=t.error.message:t.detail&&(e=t.detail)}catch{}throw Error(e)}let o=r.body?.getReader();if(!o)throw Error(`Response body is not readable`);let p=new TextDecoder,h=``;try{for(;;){if(n?.aborted)throw new DOMException(`Request aborted`,`AbortError`);let{done:e,value:r}=await o.read();if(e){t&&(x_(t),f=null);return}let i=p.decode(r,{stream:!0});h+=i;let g=h.split(` +`);h=g.pop()||``;for(let e of g)if(e.startsWith(`data: `)){let n=e.slice(6);if(n===`[DONE]`){t&&(x_(t),f=null);return}try{let e=JSON.parse(n);if(`response`in e&&e.response&&typeof e.response==`object`&&`id`in e.response){let t=e.response.id;(!c||c!==t)&&(c=t)}else if(`id`in e&&typeof e.id==`string`&&e.id.startsWith(`resp_`)){let t=e.id;(!c||c!==t)&&(c=t)}`item_id`in e&&e.item_id&&(l=e.item_id);let r=`sequence_number`in e?e.sequence_number:void 0;if(r!==void 0){if(s&&r<=1&&a>1)t&&x_(t),d=null,f=null,u=0,yield{type:`error`,message:`Connection lost - previous response failed. Starting new response.`},a=r,s=!0,m(e),yield e;else if(r<=a)continue;else a=r,s=!0,m(e),yield e}else s=!0,m(e),yield e}catch(e){console.error(`Failed to parse OpenAI SSE event:`,e)}}}}finally{o.releaseLock()}}catch(e){let r=e instanceof Error?e.message:String(e);if(T_(e))throw t&&(x_(t),f=null),e;if(r===`UNAUTHORIZED`||r.startsWith(`CLIENT_ERROR:`))throw e;if(o++,o>U_)throw Error(`Connection failed after ${U_} retry attempts: ${r}`);await Y_(Math.min(H_*2**(o-1),3e4),n)}}async*streamAgentExecutionOpenAI(e,t,n,r){let i={metadata:{entity_id:e},input:t.input,stream:!0,conversation:t.conversation_id};return yield*this.streamAgentExecutionOpenAIDirect(e,i,t.conversation_id,n,r)}async*streamAgentExecutionOpenAIDirect(e,t,n,r,i){yield*this.streamOpenAIResponse(t,n,r,i)}async*streamWorkflowExecutionOpenAI(e,t,n){let r={metadata:{entity_id:e},input:JSON.stringify(t.input_data||{}),stream:!0,conversation:t.conversation_id,extra_body:t.checkpoint_id?{entity_id:e,checkpoint_id:t.checkpoint_id}:void 0};yield*this.streamOpenAIResponse(r,t.conversation_id,n)}async runAgentSync(e,t){let{oaiMode:n}=await B_(()=>Promise.resolve().then(()=>(Cp(),Sp)).then(e=>({oaiMode:e.useDevUIStore.getState().oaiMode})),void 0,import.meta.url),r={metadata:{entity_id:e},input:t.input,stream:!1,conversation:t.conversation_id};n.enabled&&(r.model=n.model,n.temperature!==void 0&&(r.temperature=n.temperature),n.max_output_tokens!==void 0&&(r.max_output_tokens=n.max_output_tokens));let i={};return n.enabled&&(i[`X-Proxy-Backend`]=`openai`),this.request(`/v1/responses`,{method:`POST`,headers:i,body:JSON.stringify(r)})}async runWorkflowSync(e,t){let n={metadata:{entity_id:e},input:JSON.stringify(t.input_data||{}),stream:!1,conversation:t.conversation_id,extra_body:t.checkpoint_id?{entity_id:e,checkpoint_id:t.checkpoint_id}:void 0};return this.request(`/v1/responses`,{method:`POST`,body:JSON.stringify(n)})}clearStreamingState(e){x_(e)}async*streamDeployment(e){let t=await fetch(`${this.baseUrl}/v1/deployments`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({...e,stream:!0})});if(!t.ok)throw Error(`Deployment failed: ${t.statusText}`);let n=t.body?.getReader();if(!n)throw Error(`No response body`);let r=new TextDecoder,i=``;try{for(;;){let{done:e,value:t}=await n.read();if(e)break;i+=r.decode(t,{stream:!0});let a=i.split(` +`);i=a.pop()||``;for(let e of a)if(e.startsWith(`data: `)){let t=e.slice(6);if(t===`[DONE]`)return;try{yield JSON.parse(t)}catch(e){yield{type:`deploy.error`,message:`Failed to parse deployment event: ${e instanceof Error?e.message:`Unknown error`}`}}}}}catch(e){throw yield{type:`deploy.failed`,message:`Stream interrupted: ${e instanceof Error?e.message:`Unknown error`}`},e}finally{n.releaseLock()}}async listWorkflowSessions(e){let t=`/v1/conversations?entity_id=${encodeURIComponent(e)}&type=workflow_session`;return{data:(await this.request(t)).data.map(t=>({conversation_id:t.id,entity_id:t.metadata?.entity_id||e,created_at:t.created_at,metadata:{name:t.metadata?.name||`Session ${new Date(t.created_at*1e3).toLocaleString()}`,description:t.metadata?.description,type:`workflow_session`,checkpoint_summary:t.metadata?.checkpoint_summary}}))}}async createWorkflowSession(e,t){let n={entity_id:e,type:`workflow_session`,name:t?.name||`Session ${new Date().toLocaleString()}`,...t?.description&&{description:t.description}},r=await this.createConversation(n);return{conversation_id:r.id,entity_id:e,created_at:r.created_at,metadata:{name:n.name,description:n.description,type:`workflow_session`}}}async deleteWorkflowSession(e,t){if(!await this.deleteConversation(t))throw Error(`Failed to delete workflow session`)}};Cp();function Q_({open:e,onClose:t,agentName:n=`Agent`,entity:r}){let i=Q(e=>e.azureDeploymentEnabled)&&(r?.deployment_supported??!1),[a,o]=(0,y.useState)(i?`azure`:`docker`),[s,c]=(0,y.useState)(null),l=(0,y.useRef)(null),u=(0,y.useRef)(null),d=Q(e=>e.isDeploying),f=Q(e=>e.deploymentLogs),p=Q(e=>e.lastDeployment),m=Q(e=>e.startDeployment),h=Q(e=>e.addDeploymentLog),g=Q(e=>e.setDeploymentResult),_=Q(e=>e.stopDeployment),v=Q(e=>e.clearDeploymentState),b=e=>{let t=e.toLowerCase().replace(/[_\s]+/g,`-`).replace(/[^a-z0-9-]/g,``).replace(/--+/g,`-`).replace(/^[^a-z]+/,``).replace(/-$/,``);return(t.match(/^[a-z]/)?t:`app-${t}`).substring(0,31)},x=r?b(r.id):``,[S,C]=(0,y.useState)(`my-test-rg`),[w,T]=(0,y.useState)(x),[E,D]=(0,y.useState)(`eastus`),[O,k]=(0,y.useState)(null);(0,y.useEffect)(()=>{if(r){let e=b(r.id);T(e);let t=A(e);k(t)}},[r?.id]),(0,y.useEffect)(()=>{u.current&&f.length>0&&(u.current.scrollTop=u.current.scrollHeight)},[f]);let A=e=>e?e.length>=32?`App name must be less than 32 characters`:/^[a-z0-9-]+$/.test(e)?/^[a-z]/.test(e)?/[a-z0-9]$/.test(e)?e.includes(`--`)?`App name cannot contain consecutive hyphens (--)`:null:`App name must end with a letter or number`:`App name must start with a lowercase letter`:`App name must contain only lowercase letters, numbers, and hyphens (no underscores or uppercase)`:null;(0,y.useEffect)(()=>()=>{l.current&&clearTimeout(l.current)},[]);let j=async()=>{if(!r?.id||!S||!w)return;let e=S.trim(),t=w.trim(),n=A(t);if(n){k(n);return}try{m();for await(let n of Z_.streamDeployment({entity_id:r.id,resource_group:e,app_name:t,region:E,ui_mode:`user`}))h(n.message),n.type===`deploy.completed`&&n.url&&n.auth_token?g({url:n.url,authToken:n.auth_token}):n.type===`deploy.failed`&&_()}catch(e){h(`Error: ${e instanceof Error?e.message:`Deployment failed`}`),_()}},M=async(e,t)=>{try{await navigator.clipboard.writeText(e),c(t),l.current&&clearTimeout(l.current),l.current=setTimeout(()=>{c(null),l.current=null},2e3)}catch{c(null)}},N=`# Dockerfile for ${n} FROM python:3.11-slim WORKDIR /app @@ -98,7 +98,7 @@ agent-framework>=0.1.0 openai>=1.0.0 # azure-openai # anthropic -`;return(0,K.jsx)(Og,{open:e,onOpenChange:t,children:(0,K.jsxs)(kg,{className:`w-[800px] max-w-[90vw]`,children:[(0,K.jsx)(Ng,{onClose:t}),(0,K.jsxs)(Ag,{className:`p-6 pb-2`,children:[(0,K.jsxs)(jg,{className:`flex items-center gap-2`,children:[(0,K.jsx)(Fd,{className:`h-5 w-5`}),`Deploy `,n]}),(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground pt-1`,children:`Get started with containerizing your agent for deployment.`})]}),(0,K.jsxs)(`div`,{className:`flex border-b px-6`,children:[(0,K.jsxs)(`button`,{onClick:()=>o(`docker`),className:`px-4 py-2 text-sm font-medium transition-colors relative ${a===`docker`?`text-foreground`:`text-muted-foreground hover:text-foreground`}`,children:[(0,K.jsx)(ju,{className:`h-4 w-4 mr-2 inline`}),`Docker`,a===`docker`&&(0,K.jsx)(`div`,{className:`absolute bottom-0 left-0 right-0 h-0.5 bg-primary`})]}),i&&(0,K.jsxs)(`button`,{onClick:()=>o(`azure`),className:`px-4 py-2 text-sm font-medium transition-colors relative ${a===`azure`?`text-foreground`:`text-muted-foreground hover:text-foreground`}`,children:[(0,K.jsx)(Du,{className:`h-4 w-4 mr-2 inline`}),`Azure`,a===`azure`&&(0,K.jsx)(`div`,{className:`absolute bottom-0 left-0 right-0 h-0.5 bg-primary`})]})]}),(0,K.jsx)(`div`,{className:`px-6 pb-6 min-h-[400px]`,children:(0,K.jsx)(mm,{className:`h-[500px]`,children:(0,K.jsxs)(`div`,{className:`pr-4`,children:[a===`docker`&&(0,K.jsxs)(`div`,{className:`space-y-4 pt-4`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`h3`,{className:`font-semibold mb-2`,children:`Containerize with Docker`}),(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Package your agent as a Docker container for consistent deployment anywhere.`})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between mb-2`,children:[(0,K.jsx)(`span`,{className:`text-sm font-medium`,children:`Dockerfile`}),(0,K.jsx)(q,{size:`sm`,variant:`ghost`,onClick:()=>M(N,`dockerfile`),children:s===`dockerfile`?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(yu,{className:`h-4 w-4 mr-1 text-green-500`}),`Copied!`]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(Nu,{className:`h-4 w-4 mr-1`}),`Copy`]})})]}),(0,K.jsx)(`pre`,{className:`bg-muted p-3 rounded-md text-xs overflow-x-auto border`,children:N})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between mb-2`,children:[(0,K.jsx)(`span`,{className:`text-sm font-medium`,children:`docker-compose.yml`}),(0,K.jsx)(q,{size:`sm`,variant:`ghost`,onClick:()=>M(P,`compose`),children:s===`compose`?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(yu,{className:`h-4 w-4 mr-1 text-green-500`}),`Copied!`]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(Nu,{className:`h-4 w-4 mr-1`}),`Copy`]})})]}),(0,K.jsx)(`pre`,{className:`bg-muted p-3 rounded-md text-xs overflow-x-auto border`,children:P})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between mb-2`,children:[(0,K.jsx)(`span`,{className:`text-sm font-medium`,children:`requirements.txt`}),(0,K.jsx)(q,{size:`sm`,variant:`ghost`,onClick:()=>M(F,`requirements`),children:s===`requirements`?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(yu,{className:`h-4 w-4 mr-1 text-green-500`}),`Copied!`]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(Nu,{className:`h-4 w-4 mr-1`}),`Copy`]})})]}),(0,K.jsx)(`pre`,{className:`bg-muted p-3 rounded-md text-xs overflow-x-auto border`,children:F})]}),(0,K.jsxs)(`div`,{className:`bg-blue-50 dark:bg-blue-950/50 border border-blue-200 dark:border-blue-800 rounded-md p-3`,children:[(0,K.jsx)(`h4`,{className:`text-sm font-semibold mb-2`,children:`Quick Start`}),(0,K.jsxs)(`ol`,{className:`text-xs space-y-1 list-decimal list-inside text-muted-foreground`,children:[(0,K.jsx)(`li`,{children:`Save the files above to your project directory`}),(0,K.jsxs)(`li`,{children:[`Build:`,` `,(0,K.jsxs)(`code`,{className:`bg-muted px-1 rounded`,children:[`docker build -t `,n.toLowerCase(),`-agent .`]})]}),(0,K.jsxs)(`li`,{children:[`Run:`,` `,(0,K.jsx)(`code`,{className:`bg-muted px-1 rounded`,children:`docker-compose up`})]}),(0,K.jsx)(`li`,{children:`Your agent is now running in a container!`})]})]}),(0,K.jsxs)(`div`,{className:`bg-amber-50 dark:bg-amber-950/50 border border-amber-200 dark:border-amber-800 rounded-md p-3`,children:[(0,K.jsx)(`h4`,{className:`text-sm font-semibold mb-2 text-amber-900 dark:text-amber-100`,children:`⚠️ Production Considerations`}),(0,K.jsxs)(`ul`,{className:`text-xs space-y-1 list-disc list-inside text-amber-800 dark:text-amber-200`,children:[(0,K.jsxs)(`li`,{children:[(0,K.jsx)(`strong`,{children:`In-memory state:`}),` Conversations are lost when container restarts`]}),(0,K.jsxs)(`li`,{children:[(0,K.jsx)(`strong`,{children:`No authentication:`}),` Add reverse proxy (nginx, Caddy) with auth for production`]}),(0,K.jsxs)(`li`,{children:[(0,K.jsx)(`strong`,{children:`Security:`}),` Use Azure Key Vault for secrets management`]}),(0,K.jsxs)(`li`,{children:[(0,K.jsx)(`strong`,{children:`Scaling:`}),` Single instance only due to in-memory conversation store`]})]})]}),(0,K.jsxs)(`div`,{className:`border-t pt-4`,children:[(0,K.jsx)(`h4`,{className:`font-semibold text-sm mb-3`,children:`Pre-Deployment Checklist`}),(0,K.jsxs)(`div`,{className:`space-y-2 text-sm`,children:[(0,K.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,K.jsx)(yu,{className:`h-4 w-4 mt-0.5 text-muted-foreground flex-shrink-0`}),(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Set environment variables (API keys, secrets)`})]}),(0,K.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,K.jsx)(yu,{className:`h-4 w-4 mt-0.5 text-muted-foreground flex-shrink-0`}),(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Test agent locally in container`})]}),(0,K.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,K.jsx)(yu,{className:`h-4 w-4 mt-0.5 text-muted-foreground flex-shrink-0`}),(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Configure logging and monitoring`})]}),(0,K.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,K.jsx)(yu,{className:`h-4 w-4 mt-0.5 text-muted-foreground flex-shrink-0`}),(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Set up error handling and retries`})]})]})]})]}),a===`azure`&&(0,K.jsxs)(`div`,{className:`space-y-4 pt-4`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`h3`,{className:`font-semibold mb-2`,children:`Deploy to Azure Container Apps`}),(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:i?`One-click deployment to Azure with automatic containerization and authentication.`:`Azure Container Apps provides serverless containers with auto-scaling and integrated monitoring.`})]}),(0,K.jsxs)(`div`,{className:`bg-blue-50 dark:bg-blue-950/50 border border-blue-200 dark:border-blue-800 rounded-md p-3`,children:[(0,K.jsx)(`h4`,{className:`text-sm font-semibold mb-2 text-blue-900 dark:text-blue-100`,children:`Prerequisites for Azure Deployment`}),(0,K.jsxs)(`ul`,{className:`text-xs space-y-1 list-disc list-inside text-blue-800 dark:text-blue-200`,children:[(0,K.jsxs)(`li`,{children:[`Azure CLI installed and authenticated (`,(0,K.jsx)(`code`,{className:`bg-blue-100 dark:bg-blue-900 px-1 rounded`,children:`az login`}),`)`]}),(0,K.jsx)(`li`,{children:`Docker installed and running`}),(0,K.jsxs)(`li`,{children:[`Azure subscription with the following providers registered:`,(0,K.jsxs)(`ul`,{className:`ml-4 mt-1 space-y-0.5`,children:[(0,K.jsxs)(`li`,{className:`list-none`,children:[`• `,(0,K.jsx)(`code`,{className:`bg-blue-100 dark:bg-blue-900 px-1 rounded text-xs`,children:`Microsoft.App`}),` (Container Apps)`]}),(0,K.jsxs)(`li`,{className:`list-none`,children:[`• `,(0,K.jsx)(`code`,{className:`bg-blue-100 dark:bg-blue-900 px-1 rounded text-xs`,children:`Microsoft.ContainerRegistry`}),` (ACR)`]}),(0,K.jsxs)(`li`,{className:`list-none`,children:[`• `,(0,K.jsx)(`code`,{className:`bg-blue-100 dark:bg-blue-900 px-1 rounded text-xs`,children:`Microsoft.OperationalInsights`}),` (Logging)`]})]})]})]}),(0,K.jsxs)(`details`,{className:`mt-2`,children:[(0,K.jsx)(`summary`,{className:`text-xs cursor-pointer hover:underline text-blue-700 dark:text-blue-300`,children:`How to register providers?`}),(0,K.jsxs)(`div`,{className:`mt-2 p-2 bg-blue-100 dark:bg-blue-900 rounded text-xs`,children:[(0,K.jsx)(`p`,{className:`mb-1`,children:`Run these commands once per subscription:`}),(0,K.jsxs)(`code`,{className:`block font-mono`,children:[`az provider register -n Microsoft.App --wait`,(0,K.jsx)(`br`,{}),`az provider register -n Microsoft.ContainerRegistry --wait`,(0,K.jsx)(`br`,{}),`az provider register -n Microsoft.OperationalInsights --wait`]})]})]})]}),i&&r&&!p&&(0,K.jsxs)(`div`,{className:`border rounded-lg p-4 space-y-4`,children:[d?(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-sm font-medium`,children:[(0,K.jsx)(ld,{className:`h-4 w-4 animate-spin`}),`Deploying...`]}),(0,K.jsx)(`div`,{ref:u,className:`bg-muted p-3 rounded-md text-xs font-mono max-h-60 overflow-y-auto space-y-1`,children:f.map((e,t)=>(0,K.jsx)(`div`,{className:e.includes(`failed`)||e.includes(`Error`)?`text-red-600`:``,children:e},t))})]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(`div`,{className:`space-y-3`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`label`,{className:`text-sm font-medium`,children:`Resource Group`}),(0,K.jsx)(`input`,{type:`text`,className:`w-full mt-1 px-3 py-2 border rounded-md text-sm`,placeholder:`my-test-rg`,value:S,onChange:e=>C(e.target.value)})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`label`,{className:`text-sm font-medium`,children:`App Name`}),(0,K.jsx)(`input`,{type:`text`,className:`w-full mt-1 px-3 py-2 border rounded-md text-sm ${O?`border-red-500`:``}`,placeholder:`my-agent-app`,value:w,onChange:e=>{let t=e.target.value;T(t);let n=A(t.trim());k(n)}}),O&&(0,K.jsx)(`p`,{className:`mt-1 text-xs text-red-600`,children:O})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`label`,{className:`text-sm font-medium`,children:`Region`}),(0,K.jsxs)(`select`,{className:`w-full mt-1 px-3 py-2 border rounded-md text-sm`,value:E,onChange:e=>D(e.target.value),children:[(0,K.jsx)(`option`,{value:`eastus`,children:`East US`}),(0,K.jsx)(`option`,{value:`westus`,children:`West US`}),(0,K.jsx)(`option`,{value:`westeurope`,children:`West Europe`}),(0,K.jsx)(`option`,{value:`eastasia`,children:`East Asia`})]})]})]}),(0,K.jsxs)(q,{onClick:j,disabled:!S||!w||!!O,className:`w-full`,children:[(0,K.jsx)(Fd,{className:`h-4 w-4 mr-2`}),`Deploy to Azure`]})]}),!d&&f.length>0&&!p&&(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-sm font-medium text-red-600`,children:[(0,K.jsx)(hu,{className:`h-4 w-4`}),`Deployment Failed`]}),(0,K.jsx)(`div`,{className:`bg-muted p-3 rounded-md text-xs font-mono max-h-60 overflow-y-auto space-y-1`,children:f.map((e,t)=>(0,K.jsx)(`div`,{className:e.includes(`failed`)||e.includes(`Error`)?`text-red-600`:``,children:e},t))}),(0,K.jsx)(q,{onClick:v,variant:`outline`,className:`w-full`,children:`Try Again`})]})]}),p&&(0,K.jsxs)(`div`,{className:`border-2 border-green-200 bg-green-50 dark:bg-green-950/50 rounded-lg p-4 space-y-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(yu,{className:`h-5 w-5 text-green-600`}),(0,K.jsx)(`h4`,{className:`font-semibold text-green-900 dark:text-green-100`,children:`Deployment Successful!`})]}),(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`label`,{className:`text-xs font-medium text-green-800 dark:text-green-200`,children:`Deployment URL`}),(0,K.jsxs)(`div`,{className:`flex gap-2 mt-1`,children:[(0,K.jsx)(`code`,{className:`flex-1 bg-white dark:bg-gray-900 px-3 py-2 rounded border text-sm`,children:p.url}),(0,K.jsx)(q,{size:`sm`,variant:`outline`,onClick:()=>window.open(p.url,`_blank`),children:(0,K.jsx)(Vu,{className:`h-4 w-4`})})]})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`label`,{className:`text-xs font-medium text-green-800 dark:text-green-200`,children:`Auth Token (save this - shown only once)`}),(0,K.jsxs)(`div`,{className:`flex gap-2 mt-1`,children:[(0,K.jsx)(`code`,{className:`flex-1 bg-white dark:bg-gray-900 px-3 py-2 rounded border text-sm font-mono`,children:p.authToken}),(0,K.jsx)(q,{size:`sm`,variant:`outline`,onClick:()=>navigator.clipboard.writeText(p.authToken),children:(0,K.jsx)(Nu,{className:`h-4 w-4`})})]})]})]}),(0,K.jsx)(q,{onClick:v,variant:`outline`,className:`w-full`,children:`Deploy Another`})]}),!i&&r?.deployment_reason&&(0,K.jsx)(`div`,{className:`bg-amber-50 dark:bg-amber-950/50 border border-amber-200 dark:border-amber-800 rounded-md p-3`,children:(0,K.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,K.jsx)(hu,{className:`h-4 w-4 mt-0.5 text-amber-600 flex-shrink-0`}),(0,K.jsxs)(`div`,{className:`text-sm text-amber-800 dark:text-amber-200`,children:[(0,K.jsx)(`strong`,{children:`Deployment not available:`}),` `,r.deployment_reason]})]})}),!i&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(`div`,{className:`border rounded-lg p-4 space-y-3`,children:[(0,K.jsx)(`h4`,{className:`font-medium text-sm`,children:`Prerequisites`}),(0,K.jsxs)(`ul`,{className:`text-xs space-y-1 list-disc list-inside text-muted-foreground`,children:[(0,K.jsx)(`li`,{children:`Azure subscription`}),(0,K.jsxs)(`li`,{children:[`Azure CLI installed (`,(0,K.jsx)(`code`,{className:`bg-muted px-1 rounded`,children:`az --version`}),`)`]}),(0,K.jsx)(`li`,{children:`Docker installed and running`}),(0,K.jsxs)(`li`,{children:[`Logged in to Azure:`,` `,(0,K.jsx)(`code`,{className:`bg-muted px-1 rounded`,children:`az login`})]})]})]}),(0,K.jsxs)(`div`,{className:`space-y-3`,children:[(0,K.jsx)(`h4`,{className:`font-medium text-sm`,children:`Deployment Steps`}),(0,K.jsxs)(`div`,{className:`space-y-3`,children:[(0,K.jsxs)(`div`,{className:`border-l-2 border-primary pl-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 mb-1`,children:[(0,K.jsx)(`div`,{className:`w-5 h-5 rounded-full bg-primary text-primary-foreground flex items-center justify-center text-xs font-bold`,children:`1`}),(0,K.jsx)(`h5`,{className:`font-medium text-sm`,children:`Create Azure Container Registry`})]}),(0,K.jsx)(`pre`,{className:`bg-muted p-2 rounded text-xs overflow-x-auto border mt-2`,children:`# Create resource group +`;return(0,K.jsx)(Ng,{open:e,onOpenChange:t,children:(0,K.jsxs)(Pg,{className:`w-[800px] max-w-[90vw]`,children:[(0,K.jsx)(Rg,{onClose:t}),(0,K.jsxs)(Fg,{className:`p-6 pb-2`,children:[(0,K.jsxs)(Ig,{className:`flex items-center gap-2`,children:[(0,K.jsx)(zd,{className:`h-5 w-5`}),`Deploy `,n]}),(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground pt-1`,children:`Get started with containerizing your agent for deployment.`})]}),(0,K.jsxs)(`div`,{className:`flex border-b px-6`,children:[(0,K.jsxs)(`button`,{onClick:()=>o(`docker`),className:`px-4 py-2 text-sm font-medium transition-colors relative ${a===`docker`?`text-foreground`:`text-muted-foreground hover:text-foreground`}`,children:[(0,K.jsx)(ju,{className:`h-4 w-4 mr-2 inline`}),`Docker`,a===`docker`&&(0,K.jsx)(`div`,{className:`absolute bottom-0 left-0 right-0 h-0.5 bg-primary`})]}),i&&(0,K.jsxs)(`button`,{onClick:()=>o(`azure`),className:`px-4 py-2 text-sm font-medium transition-colors relative ${a===`azure`?`text-foreground`:`text-muted-foreground hover:text-foreground`}`,children:[(0,K.jsx)(Du,{className:`h-4 w-4 mr-2 inline`}),`Azure`,a===`azure`&&(0,K.jsx)(`div`,{className:`absolute bottom-0 left-0 right-0 h-0.5 bg-primary`})]})]}),(0,K.jsx)(`div`,{className:`px-6 pb-6 min-h-[400px]`,children:(0,K.jsx)(ym,{className:`h-[500px]`,children:(0,K.jsxs)(`div`,{className:`pr-4`,children:[a===`docker`&&(0,K.jsxs)(`div`,{className:`space-y-4 pt-4`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`h3`,{className:`font-semibold mb-2`,children:`Containerize with Docker`}),(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Package your agent as a Docker container for consistent deployment anywhere.`})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between mb-2`,children:[(0,K.jsx)(`span`,{className:`text-sm font-medium`,children:`Dockerfile`}),(0,K.jsx)(q,{size:`sm`,variant:`ghost`,onClick:()=>M(N,`dockerfile`),children:s===`dockerfile`?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(yu,{className:`h-4 w-4 mr-1 text-green-500`}),`Copied!`]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(Nu,{className:`h-4 w-4 mr-1`}),`Copy`]})})]}),(0,K.jsx)(`pre`,{className:`bg-muted p-3 rounded-md text-xs overflow-x-auto border`,children:N})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between mb-2`,children:[(0,K.jsx)(`span`,{className:`text-sm font-medium`,children:`docker-compose.yml`}),(0,K.jsx)(q,{size:`sm`,variant:`ghost`,onClick:()=>M(P,`compose`),children:s===`compose`?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(yu,{className:`h-4 w-4 mr-1 text-green-500`}),`Copied!`]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(Nu,{className:`h-4 w-4 mr-1`}),`Copy`]})})]}),(0,K.jsx)(`pre`,{className:`bg-muted p-3 rounded-md text-xs overflow-x-auto border`,children:P})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between mb-2`,children:[(0,K.jsx)(`span`,{className:`text-sm font-medium`,children:`requirements.txt`}),(0,K.jsx)(q,{size:`sm`,variant:`ghost`,onClick:()=>M(F,`requirements`),children:s===`requirements`?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(yu,{className:`h-4 w-4 mr-1 text-green-500`}),`Copied!`]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(Nu,{className:`h-4 w-4 mr-1`}),`Copy`]})})]}),(0,K.jsx)(`pre`,{className:`bg-muted p-3 rounded-md text-xs overflow-x-auto border`,children:F})]}),(0,K.jsxs)(`div`,{className:`bg-blue-50 dark:bg-blue-950/50 border border-blue-200 dark:border-blue-800 rounded-md p-3`,children:[(0,K.jsx)(`h4`,{className:`text-sm font-semibold mb-2`,children:`Quick Start`}),(0,K.jsxs)(`ol`,{className:`text-xs space-y-1 list-decimal list-inside text-muted-foreground`,children:[(0,K.jsx)(`li`,{children:`Save the files above to your project directory`}),(0,K.jsxs)(`li`,{children:[`Build:`,` `,(0,K.jsxs)(`code`,{className:`bg-muted px-1 rounded`,children:[`docker build -t `,n.toLowerCase(),`-agent .`]})]}),(0,K.jsxs)(`li`,{children:[`Run:`,` `,(0,K.jsx)(`code`,{className:`bg-muted px-1 rounded`,children:`docker-compose up`})]}),(0,K.jsx)(`li`,{children:`Your agent is now running in a container!`})]})]}),(0,K.jsxs)(`div`,{className:`bg-amber-50 dark:bg-amber-950/50 border border-amber-200 dark:border-amber-800 rounded-md p-3`,children:[(0,K.jsx)(`h4`,{className:`text-sm font-semibold mb-2 text-amber-900 dark:text-amber-100`,children:`⚠️ Production Considerations`}),(0,K.jsxs)(`ul`,{className:`text-xs space-y-1 list-disc list-inside text-amber-800 dark:text-amber-200`,children:[(0,K.jsxs)(`li`,{children:[(0,K.jsx)(`strong`,{children:`In-memory state:`}),` Conversations are lost when container restarts`]}),(0,K.jsxs)(`li`,{children:[(0,K.jsx)(`strong`,{children:`No authentication:`}),` Add reverse proxy (nginx, Caddy) with auth for production`]}),(0,K.jsxs)(`li`,{children:[(0,K.jsx)(`strong`,{children:`Security:`}),` Use Azure Key Vault for secrets management`]}),(0,K.jsxs)(`li`,{children:[(0,K.jsx)(`strong`,{children:`Scaling:`}),` Single instance only due to in-memory conversation store`]})]})]}),(0,K.jsxs)(`div`,{className:`border-t pt-4`,children:[(0,K.jsx)(`h4`,{className:`font-semibold text-sm mb-3`,children:`Pre-Deployment Checklist`}),(0,K.jsxs)(`div`,{className:`space-y-2 text-sm`,children:[(0,K.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,K.jsx)(yu,{className:`h-4 w-4 mt-0.5 text-muted-foreground flex-shrink-0`}),(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Set environment variables (API keys, secrets)`})]}),(0,K.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,K.jsx)(yu,{className:`h-4 w-4 mt-0.5 text-muted-foreground flex-shrink-0`}),(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Test agent locally in container`})]}),(0,K.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,K.jsx)(yu,{className:`h-4 w-4 mt-0.5 text-muted-foreground flex-shrink-0`}),(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Configure logging and monitoring`})]}),(0,K.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,K.jsx)(yu,{className:`h-4 w-4 mt-0.5 text-muted-foreground flex-shrink-0`}),(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Set up error handling and retries`})]})]})]})]}),a===`azure`&&(0,K.jsxs)(`div`,{className:`space-y-4 pt-4`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`h3`,{className:`font-semibold mb-2`,children:`Deploy to Azure Container Apps`}),(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:i?`One-click deployment to Azure with automatic containerization and authentication.`:`Azure Container Apps provides serverless containers with auto-scaling and integrated monitoring.`})]}),(0,K.jsxs)(`div`,{className:`bg-blue-50 dark:bg-blue-950/50 border border-blue-200 dark:border-blue-800 rounded-md p-3`,children:[(0,K.jsx)(`h4`,{className:`text-sm font-semibold mb-2 text-blue-900 dark:text-blue-100`,children:`Prerequisites for Azure Deployment`}),(0,K.jsxs)(`ul`,{className:`text-xs space-y-1 list-disc list-inside text-blue-800 dark:text-blue-200`,children:[(0,K.jsxs)(`li`,{children:[`Azure CLI installed and authenticated (`,(0,K.jsx)(`code`,{className:`bg-blue-100 dark:bg-blue-900 px-1 rounded`,children:`az login`}),`)`]}),(0,K.jsx)(`li`,{children:`Docker installed and running`}),(0,K.jsxs)(`li`,{children:[`Azure subscription with the following providers registered:`,(0,K.jsxs)(`ul`,{className:`ml-4 mt-1 space-y-0.5`,children:[(0,K.jsxs)(`li`,{className:`list-none`,children:[`• `,(0,K.jsx)(`code`,{className:`bg-blue-100 dark:bg-blue-900 px-1 rounded text-xs`,children:`Microsoft.App`}),` (Container Apps)`]}),(0,K.jsxs)(`li`,{className:`list-none`,children:[`• `,(0,K.jsx)(`code`,{className:`bg-blue-100 dark:bg-blue-900 px-1 rounded text-xs`,children:`Microsoft.ContainerRegistry`}),` (ACR)`]}),(0,K.jsxs)(`li`,{className:`list-none`,children:[`• `,(0,K.jsx)(`code`,{className:`bg-blue-100 dark:bg-blue-900 px-1 rounded text-xs`,children:`Microsoft.OperationalInsights`}),` (Logging)`]})]})]})]}),(0,K.jsxs)(`details`,{className:`mt-2`,children:[(0,K.jsx)(`summary`,{className:`text-xs cursor-pointer hover:underline text-blue-700 dark:text-blue-300`,children:`How to register providers?`}),(0,K.jsxs)(`div`,{className:`mt-2 p-2 bg-blue-100 dark:bg-blue-900 rounded text-xs`,children:[(0,K.jsx)(`p`,{className:`mb-1`,children:`Run these commands once per subscription:`}),(0,K.jsxs)(`code`,{className:`block font-mono`,children:[`az provider register -n Microsoft.App --wait`,(0,K.jsx)(`br`,{}),`az provider register -n Microsoft.ContainerRegistry --wait`,(0,K.jsx)(`br`,{}),`az provider register -n Microsoft.OperationalInsights --wait`]})]})]})]}),i&&r&&!p&&(0,K.jsxs)(`div`,{className:`border rounded-lg p-4 space-y-4`,children:[d?(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-sm font-medium`,children:[(0,K.jsx)(ld,{className:`h-4 w-4 animate-spin`}),`Deploying...`]}),(0,K.jsx)(`div`,{ref:u,className:`bg-muted p-3 rounded-md text-xs font-mono max-h-60 overflow-y-auto space-y-1`,children:f.map((e,t)=>(0,K.jsx)(`div`,{className:e.includes(`failed`)||e.includes(`Error`)?`text-red-600`:``,children:e},t))})]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(`div`,{className:`space-y-3`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`label`,{className:`text-sm font-medium`,children:`Resource Group`}),(0,K.jsx)(`input`,{type:`text`,className:`w-full mt-1 px-3 py-2 border rounded-md text-sm`,placeholder:`my-test-rg`,value:S,onChange:e=>C(e.target.value)})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`label`,{className:`text-sm font-medium`,children:`App Name`}),(0,K.jsx)(`input`,{type:`text`,className:`w-full mt-1 px-3 py-2 border rounded-md text-sm ${O?`border-red-500`:``}`,placeholder:`my-agent-app`,value:w,onChange:e=>{let t=e.target.value;T(t);let n=A(t.trim());k(n)}}),O&&(0,K.jsx)(`p`,{className:`mt-1 text-xs text-red-600`,children:O})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`label`,{className:`text-sm font-medium`,children:`Region`}),(0,K.jsxs)(`select`,{className:`w-full mt-1 px-3 py-2 border rounded-md text-sm`,value:E,onChange:e=>D(e.target.value),children:[(0,K.jsx)(`option`,{value:`eastus`,children:`East US`}),(0,K.jsx)(`option`,{value:`westus`,children:`West US`}),(0,K.jsx)(`option`,{value:`westeurope`,children:`West Europe`}),(0,K.jsx)(`option`,{value:`eastasia`,children:`East Asia`})]})]})]}),(0,K.jsxs)(q,{onClick:j,disabled:!S||!w||!!O,className:`w-full`,children:[(0,K.jsx)(zd,{className:`h-4 w-4 mr-2`}),`Deploy to Azure`]})]}),!d&&f.length>0&&!p&&(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-sm font-medium text-red-600`,children:[(0,K.jsx)(hu,{className:`h-4 w-4`}),`Deployment Failed`]}),(0,K.jsx)(`div`,{className:`bg-muted p-3 rounded-md text-xs font-mono max-h-60 overflow-y-auto space-y-1`,children:f.map((e,t)=>(0,K.jsx)(`div`,{className:e.includes(`failed`)||e.includes(`Error`)?`text-red-600`:``,children:e},t))}),(0,K.jsx)(q,{onClick:v,variant:`outline`,className:`w-full`,children:`Try Again`})]})]}),p&&(0,K.jsxs)(`div`,{className:`border-2 border-green-200 bg-green-50 dark:bg-green-950/50 rounded-lg p-4 space-y-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(yu,{className:`h-5 w-5 text-green-600`}),(0,K.jsx)(`h4`,{className:`font-semibold text-green-900 dark:text-green-100`,children:`Deployment Successful!`})]}),(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`label`,{className:`text-xs font-medium text-green-800 dark:text-green-200`,children:`Deployment URL`}),(0,K.jsxs)(`div`,{className:`flex gap-2 mt-1`,children:[(0,K.jsx)(`code`,{className:`flex-1 bg-white dark:bg-gray-900 px-3 py-2 rounded border text-sm`,children:p.url}),(0,K.jsx)(q,{size:`sm`,variant:`outline`,onClick:()=>window.open(p.url,`_blank`),children:(0,K.jsx)(Vu,{className:`h-4 w-4`})})]})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`label`,{className:`text-xs font-medium text-green-800 dark:text-green-200`,children:`Auth Token (save this - shown only once)`}),(0,K.jsxs)(`div`,{className:`flex gap-2 mt-1`,children:[(0,K.jsx)(`code`,{className:`flex-1 bg-white dark:bg-gray-900 px-3 py-2 rounded border text-sm font-mono`,children:p.authToken}),(0,K.jsx)(q,{size:`sm`,variant:`outline`,onClick:()=>navigator.clipboard.writeText(p.authToken),children:(0,K.jsx)(Nu,{className:`h-4 w-4`})})]})]})]}),(0,K.jsx)(q,{onClick:v,variant:`outline`,className:`w-full`,children:`Deploy Another`})]}),!i&&r?.deployment_reason&&(0,K.jsx)(`div`,{className:`bg-amber-50 dark:bg-amber-950/50 border border-amber-200 dark:border-amber-800 rounded-md p-3`,children:(0,K.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,K.jsx)(hu,{className:`h-4 w-4 mt-0.5 text-amber-600 flex-shrink-0`}),(0,K.jsxs)(`div`,{className:`text-sm text-amber-800 dark:text-amber-200`,children:[(0,K.jsx)(`strong`,{children:`Deployment not available:`}),` `,r.deployment_reason]})]})}),!i&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(`div`,{className:`border rounded-lg p-4 space-y-3`,children:[(0,K.jsx)(`h4`,{className:`font-medium text-sm`,children:`Prerequisites`}),(0,K.jsxs)(`ul`,{className:`text-xs space-y-1 list-disc list-inside text-muted-foreground`,children:[(0,K.jsx)(`li`,{children:`Azure subscription`}),(0,K.jsxs)(`li`,{children:[`Azure CLI installed (`,(0,K.jsx)(`code`,{className:`bg-muted px-1 rounded`,children:`az --version`}),`)`]}),(0,K.jsx)(`li`,{children:`Docker installed and running`}),(0,K.jsxs)(`li`,{children:[`Logged in to Azure:`,` `,(0,K.jsx)(`code`,{className:`bg-muted px-1 rounded`,children:`az login`})]})]})]}),(0,K.jsxs)(`div`,{className:`space-y-3`,children:[(0,K.jsx)(`h4`,{className:`font-medium text-sm`,children:`Deployment Steps`}),(0,K.jsxs)(`div`,{className:`space-y-3`,children:[(0,K.jsxs)(`div`,{className:`border-l-2 border-primary pl-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 mb-1`,children:[(0,K.jsx)(`div`,{className:`w-5 h-5 rounded-full bg-primary text-primary-foreground flex items-center justify-center text-xs font-bold`,children:`1`}),(0,K.jsx)(`h5`,{className:`font-medium text-sm`,children:`Create Azure Container Registry`})]}),(0,K.jsx)(`pre`,{className:`bg-muted p-2 rounded text-xs overflow-x-auto border mt-2`,children:`# Create resource group az group create --name myResourceGroup --location eastus # Create container registry @@ -116,40 +116,40 @@ az acr build --registry myregistry \\ --registry-server myregistry.azurecr.io \\ --env-vars OPENAI_API_KEY=secretref:openai-key OPENAI_CHAT_COMPLETION_MODEL=gpt-4o-mini`})]}),(0,K.jsxs)(`div`,{className:`border-l-2 border-primary pl-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 mb-1`,children:[(0,K.jsx)(`div`,{className:`w-5 h-5 rounded-full bg-primary text-primary-foreground flex items-center justify-center text-xs font-bold`,children:`5`}),(0,K.jsx)(`h5`,{className:`font-medium text-sm`,children:`Get Application URL`})]}),(0,K.jsx)(`pre`,{className:`bg-muted p-2 rounded text-xs overflow-x-auto border mt-2`,children:`az containerapp show --name ${n.toLowerCase()}-app \\ --resource-group myResourceGroup \\ - --query properties.configuration.ingress.fqdn`})]})]})]}),(0,K.jsxs)(`div`,{className:`bg-blue-50 dark:bg-blue-950/50 border border-blue-200 dark:border-blue-800 rounded-md p-3`,children:[(0,K.jsx)(`h4`,{className:`text-sm font-semibold mb-2`,children:`Learn More`}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground mb-3`,children:`Explore Azure Container Apps documentation for advanced features like scaling, monitoring, and CI/CD integration.`}),(0,K.jsx)(q,{size:`sm`,variant:`outline`,className:`w-full`,asChild:!0,children:(0,K.jsxs)(`a`,{href:`https://learn.microsoft.com/azure/container-apps/`,target:`_blank`,rel:`noopener noreferrer`,children:[(0,K.jsx)(Vu,{className:`h-3 w-3 mr-1`}),`View Azure Container Apps Documentation`]})})]})]})]})]})})})]})})}function B_({className:e,...t}){return(0,K.jsx)(`div`,{"data-slot":`card`,className:jt(`bg-card text-card-foreground flex flex-col gap-6 rounded border py-6 shadow-sm`,e),...t})}function V_({className:e,...t}){return(0,K.jsx)(`div`,{"data-slot":`card-header`,className:jt(`@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-1.5 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6`,e),...t})}function H_({className:e,...t}){return(0,K.jsx)(`div`,{"data-slot":`card-title`,className:jt(`leading-none font-semibold`,e),...t})}function U_({className:e,...t}){return(0,K.jsx)(`div`,{"data-slot":`card-description`,className:jt(`text-muted-foreground text-sm`,e),...t})}function W_({className:e,...t}){return(0,K.jsx)(`div`,{"data-slot":`card-content`,className:jt(`px-6`,e),...t})}function G_({className:e,...t}){return(0,K.jsx)(`div`,{"data-slot":`card-footer`,className:jt(`flex items-center px-6 [.border-t]:pt-6`,e),...t})}var K_=[{id:`foundry-weather-agent`,name:`Azure AI Weather Agent`,description:`Weather agent using Azure AI Agent (Foundry) with Azure CLI authentication`,type:`agent`,url:`https://raw.githubusercontent.com/microsoft/agent-framework/main/python/samples/02-agents/devui/foundry_agent/agent.py`,tags:[`azure-ai`,`foundry`,`tools`],author:`Microsoft`,difficulty:`beginner`,features:[`Azure AI Agent integration`,`Azure CLI authentication`,`Mock weather tools`],requiredEnvVars:[{name:`FOUNDRY_PROJECT_ENDPOINT`,description:`Microsoft Foundry project endpoint URL`,required:!0,example:`https://your-project.api.azureml.ms`},{name:`FOUNDRY_MODEL`,description:`Name of the deployed model in Microsoft Foundry`,required:!0,example:`gpt-4o`}]},{id:`weather-agent-azure`,name:`Azure OpenAI Weather Agent`,description:`Weather agent using Azure OpenAI with API key authentication`,type:`agent`,url:`https://raw.githubusercontent.com/microsoft/agent-framework/main/python/samples/02-agents/devui/weather_agent_azure/agent.py`,tags:[`azure`,`openai`,`tools`],author:`Microsoft`,difficulty:`beginner`,features:[`Azure OpenAI integration`,`API key authentication`,`Function calling`,`Mock weather tools`],requiredEnvVars:[{name:`AZURE_OPENAI_API_KEY`,description:`Azure OpenAI API key`,required:!0},{name:`AZURE_OPENAI_MODEL`,description:`Name of the deployed model in Azure OpenAI`,required:!0,example:`gpt-4o`},{name:`AZURE_OPENAI_ENDPOINT`,description:`Azure OpenAI endpoint URL`,required:!0,example:`https://your-resource.openai.azure.com`}]},{id:`spam-workflow`,name:`Spam Detection Workflow`,description:`5-step workflow demonstrating email spam detection with branching logic`,type:`workflow`,url:`https://raw.githubusercontent.com/microsoft/agent-framework/main/python/samples/02-agents/devui/spam_workflow/workflow.py`,tags:[`workflow`,`branching`,`multi-step`],author:`Microsoft`,difficulty:`beginner`,features:[`Sequential execution`,`Conditional branching`,`Mock spam detection`]},{id:`fanout-workflow`,name:`Complex Fan-In/Fan-Out Workflow`,description:`Advanced data processing workflow with parallel validation, transformation, and quality assurance stages`,type:`workflow`,url:`https://raw.githubusercontent.com/microsoft/agent-framework/main/python/samples/02-agents/devui/fanout_workflow/workflow.py`,tags:[`workflow`,`fan-out`,`fan-in`,`parallel`],author:`Microsoft`,difficulty:`advanced`,features:[`Fan-out pattern`,`Parallel execution`,`Complex state management`,`Multi-stage processing`]}];K_.filter(e=>e.type===`agent`),K_.filter(e=>e.type===`workflow`),K_.filter(e=>e.difficulty===`beginner`),K_.filter(e=>e.difficulty===`intermediate`),K_.filter(e=>e.difficulty===`advanced`);var q_=e=>{switch(e){case`beginner`:return`bg-green-100 text-green-700 border-green-200`;case`intermediate`:return`bg-yellow-100 text-yellow-700 border-yellow-200`;case`advanced`:return`bg-red-100 text-red-700 border-red-200`;default:return`bg-gray-100 text-gray-700 border-gray-200`}},J_=y.forwardRef(({className:e,...t},n)=>(0,K.jsx)(`div`,{ref:n,role:`alert`,className:jt(`relative w-full rounded-lg border p-4 [&>svg~*]:pl-7 [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground`,e),...t}));J_.displayName=`Alert`;var Y_=y.forwardRef(({className:e,...t},n)=>(0,K.jsx)(`h5`,{ref:n,className:jt(`mb-1 font-medium leading-none tracking-tight`,e),...t}));Y_.displayName=`AlertTitle`;var X_=y.forwardRef(({className:e,...t},n)=>(0,K.jsx)(`div`,{ref:n,className:jt(`text-sm [&_p]:leading-relaxed`,e),...t}));X_.displayName=`AlertDescription`;function Z_({children:e,copyable:t=!1}){let[n,r]=(0,y.useState)(!1);return(0,K.jsxs)(`div`,{className:`relative`,children:[(0,K.jsx)(`pre`,{className:`bg-muted p-3 rounded-md text-sm overflow-x-auto font-mono`,children:(0,K.jsx)(`code`,{children:e})}),t&&(0,K.jsx)(q,{variant:`ghost`,size:`sm`,className:`absolute top-2 right-2 h-6 w-6 p-0`,onClick:()=>{navigator.clipboard.writeText(e),r(!0),setTimeout(()=>r(!1),2e3)},children:n?(0,K.jsx)(ru,{className:`h-3 w-3`}):(0,K.jsx)(Nu,{className:`h-3 w-3`})})]})}function Q_({number:e,title:t,description:n,code:r,action:i,copyable:a=!1}){return(0,K.jsxs)(`div`,{className:`flex gap-4`,children:[(0,K.jsx)(`div`,{className:`flex-shrink-0`,children:(0,K.jsx)(`div`,{className:`flex h-8 w-8 items-center justify-center rounded-full bg-primary text-primary-foreground font-semibold`,children:e})}),(0,K.jsxs)(`div`,{className:`flex-1 space-y-2`,children:[(0,K.jsx)(`h4`,{className:`font-semibold`,children:t}),n&&(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:n}),r&&(0,K.jsx)(Z_,{copyable:a,children:r}),i&&(0,K.jsx)(`div`,{children:i})]})]})}function $_({sample:e,open:t,onOpenChange:n}){let r=e.requiredEnvVars&&e.requiredEnvVars.length>0,i=r?0:-1;return(0,K.jsx)(Og,{open:t,onOpenChange:n,children:(0,K.jsxs)(kg,{className:`max-w-3xl`,children:[(0,K.jsxs)(Ag,{className:`px-6 pt-6 pb-2`,children:[(0,K.jsxs)(jg,{children:[`Setup: `,e.name]}),(0,K.jsxs)(Mg,{children:[`Follow these steps to run this sample `,e.type,` locally`]})]}),(0,K.jsx)(`div`,{className:`px-6 pb-6`,children:(0,K.jsx)(mm,{className:`h-[500px]`,children:(0,K.jsxs)(`div`,{className:`space-y-6 pr-4`,children:[(0,K.jsx)(Q_,{number:1,title:`Download the sample file`,action:(0,K.jsx)(q,{asChild:!0,size:`sm`,children:(0,K.jsxs)(`a`,{href:e.url,download:`${e.id}.py`,target:`_blank`,rel:`noopener noreferrer`,children:[(0,K.jsx)(Lu,{className:`h-4 w-4 mr-2`}),`Download `,e.id,`.py`]})})}),(0,K.jsx)(Q_,{number:2,title:`Create a project folder`,description:`Create a dedicated folder for this sample and move the downloaded file there:`,code:`mkdir -p ~/my-agents/${e.id}\nmv ~/Downloads/${e.id}.py ~/my-agents/${e.id}/`,copyable:!0}),r&&(0,K.jsx)(Q_,{number:3,title:`Set up environment variables`,description:`Create a .env file in the project folder with these required variables:`,code:e.requiredEnvVars.map(e=>`${e.name}=${e.example||`your-value-here`}\n# ${e.description}`).join(` + --query properties.configuration.ingress.fqdn`})]})]})]}),(0,K.jsxs)(`div`,{className:`bg-blue-50 dark:bg-blue-950/50 border border-blue-200 dark:border-blue-800 rounded-md p-3`,children:[(0,K.jsx)(`h4`,{className:`text-sm font-semibold mb-2`,children:`Learn More`}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground mb-3`,children:`Explore Azure Container Apps documentation for advanced features like scaling, monitoring, and CI/CD integration.`}),(0,K.jsx)(q,{size:`sm`,variant:`outline`,className:`w-full`,asChild:!0,children:(0,K.jsxs)(`a`,{href:`https://learn.microsoft.com/azure/container-apps/`,target:`_blank`,rel:`noopener noreferrer`,children:[(0,K.jsx)(Vu,{className:`h-3 w-3 mr-1`}),`View Azure Container Apps Documentation`]})})]})]})]})]})})})]})})}function $_({className:e,...t}){return(0,K.jsx)(`div`,{"data-slot":`card`,className:jt(`bg-card text-card-foreground flex flex-col gap-6 rounded border py-6 shadow-sm`,e),...t})}function ev({className:e,...t}){return(0,K.jsx)(`div`,{"data-slot":`card-header`,className:jt(`@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-1.5 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6`,e),...t})}function tv({className:e,...t}){return(0,K.jsx)(`div`,{"data-slot":`card-title`,className:jt(`leading-none font-semibold`,e),...t})}function nv({className:e,...t}){return(0,K.jsx)(`div`,{"data-slot":`card-description`,className:jt(`text-muted-foreground text-sm`,e),...t})}function rv({className:e,...t}){return(0,K.jsx)(`div`,{"data-slot":`card-content`,className:jt(`px-6`,e),...t})}function iv({className:e,...t}){return(0,K.jsx)(`div`,{"data-slot":`card-footer`,className:jt(`flex items-center px-6 [.border-t]:pt-6`,e),...t})}var av=[{id:`foundry-weather-agent`,name:`Azure AI Weather Agent`,description:`Weather agent using Azure AI Agent (Foundry) with Azure CLI authentication`,type:`agent`,url:`https://raw.githubusercontent.com/microsoft/agent-framework/main/python/samples/02-agents/devui/foundry_agent/agent.py`,tags:[`azure-ai`,`foundry`,`tools`],author:`Microsoft`,difficulty:`beginner`,features:[`Azure AI Agent integration`,`Azure CLI authentication`,`Mock weather tools`],requiredEnvVars:[{name:`FOUNDRY_PROJECT_ENDPOINT`,description:`Microsoft Foundry project endpoint URL`,required:!0,example:`https://your-project.api.azureml.ms`},{name:`FOUNDRY_MODEL`,description:`Name of the deployed model in Microsoft Foundry`,required:!0,example:`gpt-4o`}]},{id:`weather-agent-azure`,name:`Azure OpenAI Weather Agent`,description:`Weather agent using Azure OpenAI with API key authentication`,type:`agent`,url:`https://raw.githubusercontent.com/microsoft/agent-framework/main/python/samples/02-agents/devui/weather_agent_azure/agent.py`,tags:[`azure`,`openai`,`tools`],author:`Microsoft`,difficulty:`beginner`,features:[`Azure OpenAI integration`,`API key authentication`,`Function calling`,`Mock weather tools`],requiredEnvVars:[{name:`AZURE_OPENAI_API_KEY`,description:`Azure OpenAI API key`,required:!0},{name:`AZURE_OPENAI_MODEL`,description:`Name of the deployed model in Azure OpenAI`,required:!0,example:`gpt-4o`},{name:`AZURE_OPENAI_ENDPOINT`,description:`Azure OpenAI endpoint URL`,required:!0,example:`https://your-resource.openai.azure.com`}]},{id:`spam-workflow`,name:`Spam Detection Workflow`,description:`5-step workflow demonstrating email spam detection with branching logic`,type:`workflow`,url:`https://raw.githubusercontent.com/microsoft/agent-framework/main/python/samples/02-agents/devui/spam_workflow/workflow.py`,tags:[`workflow`,`branching`,`multi-step`],author:`Microsoft`,difficulty:`beginner`,features:[`Sequential execution`,`Conditional branching`,`Mock spam detection`]},{id:`fanout-workflow`,name:`Complex Fan-In/Fan-Out Workflow`,description:`Advanced data processing workflow with parallel validation, transformation, and quality assurance stages`,type:`workflow`,url:`https://raw.githubusercontent.com/microsoft/agent-framework/main/python/samples/02-agents/devui/fanout_workflow/workflow.py`,tags:[`workflow`,`fan-out`,`fan-in`,`parallel`],author:`Microsoft`,difficulty:`advanced`,features:[`Fan-out pattern`,`Parallel execution`,`Complex state management`,`Multi-stage processing`]}];av.filter(e=>e.type===`agent`),av.filter(e=>e.type===`workflow`),av.filter(e=>e.difficulty===`beginner`),av.filter(e=>e.difficulty===`intermediate`),av.filter(e=>e.difficulty===`advanced`);var ov=e=>{switch(e){case`beginner`:return`bg-green-100 text-green-700 border-green-200`;case`intermediate`:return`bg-yellow-100 text-yellow-700 border-yellow-200`;case`advanced`:return`bg-red-100 text-red-700 border-red-200`;default:return`bg-gray-100 text-gray-700 border-gray-200`}},sv=y.forwardRef(({className:e,...t},n)=>(0,K.jsx)(`div`,{ref:n,role:`alert`,className:jt(`relative w-full rounded-lg border p-4 [&>svg~*]:pl-7 [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground`,e),...t}));sv.displayName=`Alert`;var cv=y.forwardRef(({className:e,...t},n)=>(0,K.jsx)(`h5`,{ref:n,className:jt(`mb-1 font-medium leading-none tracking-tight`,e),...t}));cv.displayName=`AlertTitle`;var lv=y.forwardRef(({className:e,...t},n)=>(0,K.jsx)(`div`,{ref:n,className:jt(`text-sm [&_p]:leading-relaxed`,e),...t}));lv.displayName=`AlertDescription`;function uv({children:e,copyable:t=!1}){let[n,r]=(0,y.useState)(!1);return(0,K.jsxs)(`div`,{className:`relative`,children:[(0,K.jsx)(`pre`,{className:`bg-muted p-3 rounded-md text-sm overflow-x-auto font-mono`,children:(0,K.jsx)(`code`,{children:e})}),t&&(0,K.jsx)(q,{variant:`ghost`,size:`sm`,className:`absolute top-2 right-2 h-6 w-6 p-0`,onClick:()=>{navigator.clipboard.writeText(e),r(!0),setTimeout(()=>r(!1),2e3)},children:n?(0,K.jsx)(ru,{className:`h-3 w-3`}):(0,K.jsx)(Nu,{className:`h-3 w-3`})})]})}function dv({number:e,title:t,description:n,code:r,action:i,copyable:a=!1}){return(0,K.jsxs)(`div`,{className:`flex gap-4`,children:[(0,K.jsx)(`div`,{className:`flex-shrink-0`,children:(0,K.jsx)(`div`,{className:`flex h-8 w-8 items-center justify-center rounded-full bg-primary text-primary-foreground font-semibold`,children:e})}),(0,K.jsxs)(`div`,{className:`flex-1 space-y-2`,children:[(0,K.jsx)(`h4`,{className:`font-semibold`,children:t}),n&&(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:n}),r&&(0,K.jsx)(uv,{copyable:a,children:r}),i&&(0,K.jsx)(`div`,{children:i})]})]})}function fv({sample:e,open:t,onOpenChange:n}){let r=e.requiredEnvVars&&e.requiredEnvVars.length>0,i=r?0:-1;return(0,K.jsx)(Ng,{open:t,onOpenChange:n,children:(0,K.jsxs)(Pg,{className:`max-w-3xl`,children:[(0,K.jsxs)(Fg,{className:`px-6 pt-6 pb-2`,children:[(0,K.jsxs)(Ig,{children:[`Setup: `,e.name]}),(0,K.jsxs)(Lg,{children:[`Follow these steps to run this sample `,e.type,` locally`]})]}),(0,K.jsx)(`div`,{className:`px-6 pb-6`,children:(0,K.jsx)(ym,{className:`h-[500px]`,children:(0,K.jsxs)(`div`,{className:`space-y-6 pr-4`,children:[(0,K.jsx)(dv,{number:1,title:`Download the sample file`,action:(0,K.jsx)(q,{asChild:!0,size:`sm`,children:(0,K.jsxs)(`a`,{href:e.url,download:`${e.id}.py`,target:`_blank`,rel:`noopener noreferrer`,children:[(0,K.jsx)(Lu,{className:`h-4 w-4 mr-2`}),`Download `,e.id,`.py`]})})}),(0,K.jsx)(dv,{number:2,title:`Create a project folder`,description:`Create a dedicated folder for this sample and move the downloaded file there:`,code:`mkdir -p ~/my-agents/${e.id}\nmv ~/Downloads/${e.id}.py ~/my-agents/${e.id}/`,copyable:!0}),r&&(0,K.jsx)(dv,{number:3,title:`Set up environment variables`,description:`Create a .env file in the project folder with these required variables:`,code:e.requiredEnvVars.map(e=>`${e.name}=${e.example||`your-value-here`}\n# ${e.description}`).join(` -`),copyable:!0}),(0,K.jsx)(Q_,{number:4+i,title:`Run with DevUI`,description:`Navigate to the folder and start DevUI:`,code:`cd ~/my-agents/${e.id}\ndevui .`,copyable:!0}),(0,K.jsxs)(J_,{children:[(0,K.jsx)(sd,{className:`h-4 w-4`}),(0,K.jsx)(Y_,{children:`Alternative: Run Programmatically`}),(0,K.jsxs)(X_,{className:`mt-2`,children:[(0,K.jsxs)(`p`,{className:`mb-2`,children:[`You can also run the `,e.type,` directly in Python:`]}),(0,K.jsx)(Z_,{copyable:!0,children:`from ${e.id} import ${e.type} +`),copyable:!0}),(0,K.jsx)(dv,{number:4+i,title:`Run with DevUI`,description:`Navigate to the folder and start DevUI:`,code:`cd ~/my-agents/${e.id}\ndevui .`,copyable:!0}),(0,K.jsxs)(sv,{children:[(0,K.jsx)(sd,{className:`h-4 w-4`}),(0,K.jsx)(cv,{children:`Alternative: Run Programmatically`}),(0,K.jsxs)(lv,{className:`mt-2`,children:[(0,K.jsxs)(`p`,{className:`mb-2`,children:[`You can also run the `,e.type,` directly in Python:`]}),(0,K.jsx)(uv,{copyable:!0,children:`from ${e.id} import ${e.type} import asyncio async def main(): response = await ${e.type}.run("Hello!") print(response) -asyncio.run(main())`})]})]}),(0,K.jsxs)(`div`,{className:`flex gap-2 pt-4 border-t`,children:[(0,K.jsx)(q,{variant:`outline`,size:`sm`,asChild:!0,children:(0,K.jsxs)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,children:[(0,K.jsx)(Vu,{className:`h-4 w-4 mr-2`}),`View Source`]})}),(0,K.jsx)(q,{variant:`outline`,size:`sm`,asChild:!0,children:(0,K.jsxs)(`a`,{href:`https://github.com/microsoft/agent-framework#readme`,target:`_blank`,rel:`noopener noreferrer`,children:[(0,K.jsx)(Zl,{className:`h-4 w-4 mr-2`}),`Documentation`]})})]})]})})})]})})}function ev({sample:e}){let[t,n]=(0,y.useState)(!1),r=e.type===`workflow`?uf:$l;return(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(B_,{className:`hover:shadow-md transition-shadow duration-200 h-full flex flex-col overflow-hidden w-full`,children:[(0,K.jsxs)(V_,{className:`pb-3 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-start justify-between mb-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(r,{className:`h-5 w-5`}),(0,K.jsx)(Ft,{variant:`secondary`,className:`text-xs`,children:e.type})]}),(0,K.jsx)(Ft,{variant:`outline`,className:jt(`text-xs border`,q_(e.difficulty)),children:e.difficulty})]}),(0,K.jsx)(H_,{className:`text-lg leading-tight`,children:e.name}),(0,K.jsx)(U_,{className:`text-sm line-clamp-3`,children:e.description})]}),(0,K.jsx)(W_,{className:`pt-0 flex-1 min-w-0 overflow-hidden`,children:(0,K.jsxs)(`div`,{className:`space-y-3 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`flex flex-wrap gap-1`,children:[e.tags.slice(0,3).map(e=>(0,K.jsx)(Ft,{variant:`outline`,className:`text-xs`,children:e},e)),e.tags.length>3&&(0,K.jsxs)(Ft,{variant:`outline`,className:`text-xs`,children:[`+`,e.tags.length-3]})]}),e.requiredEnvVars&&e.requiredEnvVars.length>0&&(0,K.jsxs)(`details`,{className:`group min-w-0 max-w-full overflow-hidden`,children:[(0,K.jsxs)(`summary`,{className:`cursor-pointer list-none p-2 bg-amber-50 dark:bg-amber-950/20 border border-amber-200 dark:border-amber-800 rounded-md hover:bg-amber-100 dark:hover:bg-amber-950/30 transition-colors flex items-center justify-between gap-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0`,children:[(0,K.jsx)(rd,{className:`h-3.5 w-3.5 text-amber-600 dark:text-amber-500 flex-shrink-0`}),(0,K.jsxs)(`span`,{className:`text-xs font-medium text-amber-900 dark:text-amber-100 truncate`,children:[`Requires `,e.requiredEnvVars.length,` env var`,e.requiredEnvVars.length>1?`s`:``]})]}),(0,K.jsx)(su,{className:`h-3 w-3 text-amber-600 dark:text-amber-500 flex-shrink-0 group-open:rotate-180 transition-transform`})]}),(0,K.jsx)(`div`,{className:`mt-2 p-2 bg-amber-50 dark:bg-amber-950/20 border border-amber-200 dark:border-amber-800 rounded-md space-y-2 min-w-0 max-w-full overflow-hidden`,children:e.requiredEnvVars.map(e=>(0,K.jsxs)(`div`,{className:`text-xs min-w-0 max-w-full overflow-hidden`,children:[(0,K.jsx)(`div`,{className:`font-mono font-medium text-amber-900 dark:text-amber-100 break-words`,children:e.name}),(0,K.jsx)(`div`,{className:`text-amber-700 dark:text-amber-300 mt-0.5 break-words`,children:e.description}),e.example&&(0,K.jsx)(`div`,{className:`font-mono text-amber-600 dark:text-amber-400 mt-0.5 break-all`,children:e.example})]},e.name))})]}),(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsx)(`div`,{className:`text-xs font-medium text-muted-foreground`,children:`Key Features:`}),(0,K.jsx)(`ul`,{className:`text-xs space-y-1`,children:e.features.slice(0,3).map(e=>(0,K.jsxs)(`li`,{className:`flex items-center gap-1`,children:[(0,K.jsx)(`div`,{className:`w-1 h-1 rounded-full bg-current opacity-50`}),(0,K.jsx)(`span`,{children:e})]},e))})]})]})}),(0,K.jsxs)(G_,{className:`pt-3 flex-col gap-3`,children:[(0,K.jsx)(`div`,{className:`w-full flex items-center justify-between text-xs text-muted-foreground`,children:(0,K.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,K.jsx)(cf,{className:`h-3 w-3`}),(0,K.jsx)(`span`,{children:e.author})]})}),(0,K.jsxs)(`div`,{className:`w-full flex gap-2`,children:[(0,K.jsx)(q,{asChild:!0,className:`flex-1`,size:`sm`,children:(0,K.jsxs)(`a`,{href:e.url,download:`${e.id}.py`,target:`_blank`,rel:`noopener noreferrer`,children:[(0,K.jsx)(Lu,{className:`h-4 w-4 mr-2`}),`Download`]})}),(0,K.jsxs)(q,{variant:`outline`,className:`flex-1`,size:`sm`,onClick:()=>n(!0),children:[(0,K.jsx)(Zl,{className:`h-4 w-4 mr-2`}),`Setup Guide`]})]})]})]}),(0,K.jsx)($_,{sample:e,open:t,onOpenChange:n})]})}function tv({samples:e}){return(0,K.jsx)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-4`,children:e.map(e=>(0,K.jsx)(`div`,{className:`min-w-0`,children:(0,K.jsx)(ev,{sample:e})},e.id))})}function nv({onClose:e,variant:t=`inline`,hasExistingEntities:n=!1}){return t===`inline`?(0,K.jsx)(`div`,{className:`flex-1 overflow-auto`,children:(0,K.jsxs)(`div`,{className:`max-w-7xl mx-auto px-6 py-8`,children:[(0,K.jsx)(`div`,{className:`mb-8 p-4 bg-muted/50 border border-border rounded-lg`,children:(0,K.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,K.jsx)(rf,{className:`h-5 w-5 text-amber-500 flex-shrink-0 mt-0.5`}),(0,K.jsxs)(`div`,{className:`flex-1`,children:[(0,K.jsx)(`h3`,{className:`font-semibold mb-1`,children:`No agents or workflows configured yet!`}),(0,K.jsxs)(`p`,{className:`text-sm text-muted-foreground mb-2`,children:[`You can configure agents or workflows by running`,` `,(0,K.jsx)(`code`,{className:`px-1.5 py-0.5 bg-background rounded text-xs`,children:`devui`}),` `,`in a directory containing them.`]}),(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Browse the sample agents and workflows below. Download them, review the code, and run them locally to get started quickly.`})]})]})}),(0,K.jsxs)(`div`,{className:`mb-6`,children:[(0,K.jsx)(`h3`,{className:`text-lg font-semibold mb-4`,children:`Sample Gallery`}),(0,K.jsx)(tv,{samples:K_})]}),(0,K.jsx)(`div`,{className:`text-center mt-12 pt-8 border-t`,children:(0,K.jsxs)(`p`,{className:`text-sm text-muted-foreground`,children:[`Want to create your own agents or workflows? Check out the`,` `,(0,K.jsx)(`a`,{href:`https://github.com/microsoft/agent-framework`,className:`text-primary hover:underline`,target:`_blank`,rel:`noopener noreferrer`,children:`documentation`})]})})]})}):t===`route`?(0,K.jsx)(`div`,{className:`h-full overflow-auto`,children:(0,K.jsxs)(`div`,{className:`max-w-7xl mx-auto px-6 py-8`,children:[(0,K.jsxs)(`div`,{className:`mb-8`,children:[n&&(0,K.jsx)(`div`,{className:`mb-4`,children:(0,K.jsxs)(q,{variant:`ghost`,onClick:e,className:`gap-2`,children:[(0,K.jsx)(Yl,{className:`h-4 w-4`}),`Back`]})}),(0,K.jsxs)(`div`,{className:`text-center`,children:[(0,K.jsx)(`h2`,{className:`text-2xl font-semibold mb-2`,children:`Sample Gallery`}),(0,K.jsx)(`p`,{className:`text-muted-foreground max-w-2xl mx-auto`,children:`Browse sample agents and workflows to learn the Agent Framework. Download these curated examples and run them locally. Examples range from beginner to advanced.`})]})]}),(0,K.jsx)(tv,{samples:K_}),(0,K.jsx)(`div`,{className:`text-center mt-12 pt-8 border-t`,children:(0,K.jsxs)(`p`,{className:`text-sm text-muted-foreground`,children:[`Want to create your own agents or workflows? Check out the`,` `,(0,K.jsx)(`a`,{href:`https://github.com/microsoft/agent-framework`,className:`text-primary hover:underline`,target:`_blank`,rel:`noopener noreferrer`,children:`documentation`})]})})]})}):(0,K.jsx)(tv,{samples:K_})}function rv({className:e,...t}){return(0,K.jsx)(`textarea`,{"data-slot":`textarea`,className:jt(`border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 flex field-sizing-content min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 md:text-sm`,e),...t})}function iv({onFilesSelected:e,accept:t=`image/*,.pdf,audio/*,.wav,.mp3,.m4a,.ogg`,multiple:n=!0,maxSize:r=52428800,disabled:i=!1,className:a=``}){let o=(0,y.useRef)(null),s=n=>{if(!n||n.length===0)return;let i=[],a=[];Array.from(n).forEach(e=>{if(e.size>r){a.push(`${e.name} is too large (max ${av(r)})`);return}if(t&&!ov(e,t)){a.push(`${e.name} is not an accepted file type`);return}i.push(e)}),a.length>0&&console.warn(`File upload errors:`,a),i.length>0&&e(i)};return(0,K.jsxs)(`div`,{className:a,children:[(0,K.jsx)(`input`,{ref:o,type:`file`,accept:t,multiple:n,onChange:e=>{s(e.target.files),e.target.value=``},className:`hidden`,disabled:i}),(0,K.jsx)(q,{type:`button`,variant:`outline`,size:`icon`,onClick:()=>{o.current&&o.current.click()},disabled:i,onDrop:e=>{if(e.preventDefault(),e.stopPropagation(),i)return;let t=e.dataTransfer.files;s(t)},onDragOver:e=>{e.preventDefault(),e.stopPropagation()},className:`shrink-0 transition-colors hover:bg-muted`,title:`Upload files (images, PDFs, audio)`,children:(0,K.jsx)(of,{className:`h-4 w-4`})})]})}function av(e){if(e===0)return`0 Bytes`;let t=1024,n=[`Bytes`,`KB`,`MB`,`GB`],r=Math.floor(Math.log(e)/Math.log(t));return parseFloat((e/t**r).toFixed(2))+` `+n[r]}function ov(e,t){return t.split(`,`).map(e=>e.trim()).some(t=>{if(t.startsWith(`.`))return e.name.toLowerCase().endsWith(t.toLowerCase());if(t.includes(`/*`)){let[n]=t.split(`/`);return e.type.startsWith(n+`/`)}return e.type===t})}function sv({attachments:e,onRemoveAttachment:t,className:n=``}){return e.length===0?null:(0,K.jsx)(`div`,{className:`flex flex-wrap gap-2 p-2 bg-muted rounded-lg ${n}`,children:e.map(e=>(0,K.jsx)(cv,{attachment:e,onRemove:()=>t(e.id)},e.id))})}function cv({attachment:e,onRemove:t}){let[n,r]=(0,y.useState)(!1);return(0,K.jsxs)(`div`,{className:`relative w-16 h-16 rounded border overflow-hidden group cursor-pointer`,onMouseEnter:()=>r(!0),onMouseLeave:()=>r(!1),title:e.file.name,children:[(()=>{switch(e.type){case`image`:return e.preview?(0,K.jsx)(`img`,{src:e.preview,alt:e.file.name,className:`w-full h-full object-cover`}):(0,K.jsx)(`div`,{className:`flex items-center justify-center w-full h-full bg-gray-200`,children:(0,K.jsx)($u,{className:`h-6 w-6 text-gray-400`})});case`pdf`:return(0,K.jsxs)(`div`,{className:`flex flex-col items-center justify-center w-full h-full bg-red-50`,children:[(0,K.jsx)(Uu,{className:`h-6 w-6 text-red-500 mb-1`}),(0,K.jsx)(`span`,{className:`text-xs text-red-600`,children:`PDF`})]});case`audio`:return(0,K.jsxs)(`div`,{className:`flex flex-col items-center justify-center w-full h-full bg-purple-50`,children:[(0,K.jsx)(xd,{className:`h-6 w-6 text-purple-500 mb-1`}),(0,K.jsx)(`span`,{className:`text-xs text-purple-600`,children:`AUDIO`})]});default:return(0,K.jsxs)(`div`,{className:`flex flex-col items-center justify-center w-full h-full bg-gray-100`,children:[(0,K.jsx)(Uu,{className:`h-6 w-6 text-gray-500 mb-1`}),(0,K.jsx)(`span`,{className:`text-xs text-gray-600`,children:`FILE`})]})}})(),(0,K.jsx)(`div`,{className:`absolute inset-0 bg-black/60 flex items-center justify-center transition-all duration-200 ease-in-out ${n?`opacity-100 backdrop-blur-sm`:`opacity-0 pointer-events-none`}`,onClick:t,children:(0,K.jsx)(`div`,{className:`transition-all duration-200 ease-in-out ${n?`scale-100 opacity-100`:`scale-75 opacity-0`}`,children:(0,K.jsx)(tf,{className:`h-5 w-5 text-white drop-shadow-lg`})})}),(0,K.jsx)(`div`,{className:`absolute bottom-0 left-0 right-0 bg-black bg-opacity-75 text-white text-xs p-1 truncate opacity-0 group-hover:opacity-100 transition-opacity duration-200`,children:e.file.name})]})}function lv({onSubmit:e,isSubmitting:t=!1,isStreaming:n=!1,onCancel:r,isCancelling:i=!1,placeholder:a,showFileUpload:o=!0,maxAttachments:s=10,className:c=``,disabled:l=!1,entityName:u=`assistant`,externalFiles:d,onExternalFilesProcessed:f}){let[p,m]=(0,y.useState)(``),[h,g]=(0,y.useState)([]),[_,v]=(0,y.useState)(!1),[b,x]=(0,y.useState)(null),S=(0,y.useRef)(null);(0,y.useEffect)(()=>{d&&d.length>0&&(E(d),f?.())},[d,f]);let C=e=>e.type.startsWith(`image/`)?`image`:e.type===`application/pdf`?`pdf`:e.type.startsWith(`audio/`)?`audio`:`other`,w=e=>new Promise((t,n)=>{let r=new FileReader;r.onload=()=>t(r.result),r.onerror=n,r.readAsDataURL(e)}),T=e=>{let t=e.trim(),n=t.split(` -`);if(/^{[\s\S]*}$|^\[[\s\S]*\]$/.test(t))return`.json`;if(/^<\?xml|^1)return`.tsv`;if(n.length>2){let e=n.filter(e=>e.includes(`,`)),t=n.filter(e=>e.includes(`;`));if(e.length>n.length*.5&&e.reduce((e,t)=>e+(t.match(/,/g)||[]).length,0)/e.length>=2||t.length>n.length*.5&&t.reduce((e,t)=>e+(t.match(/;/g)||[]).length,0)/t.length>=2)return`.csv`}return`.txt`},E=(0,y.useCallback)(async e=>{if(h.length+e.length>s){console.warn(`Cannot add more than ${s} attachments`);return}let t=[];for(let n of e){let e={id:`${Date.now()}-${Math.random()}`,file:n,type:C(n)};if(n.type.startsWith(`image/`))try{e.preview=await w(n)}catch(e){console.error(`Failed to generate preview:`,e)}t.push(e)}g(e=>[...e,...t])},[h.length,s]),D=e=>{g(t=>t.filter(t=>t.id!==e))},O=e=>{e.preventDefault(),e.stopPropagation(),v(!0)},k=e=>{e.preventDefault(),e.stopPropagation(),v(!1)},A=async e=>{e.preventDefault(),e.stopPropagation(),v(!1);let t=Array.from(e.dataTransfer.files);t.length>0&&await E(t)},j=async e=>{let t=Array.from(e.clipboardData.items),n=[],r=!1;for(let i of t)if(i.type.startsWith(`image/`)){e.preventDefault();let t=i.getAsFile();if(t){let e=Date.now();n.push(new File([t],`screenshot-${e}.png`,{type:t.type}))}}else i.type===`text/plain`&&!r&&(r=!0,e.preventDefault(),await new Promise(e=>{i.getAsString(t=>{let r=(t.match(/\n/g)||[]).length;if(t.length>1e4||r>50||/^\s*[{[][\s\S]*[}\]]\s*$/.test(t)||/^<\?xml|^{e.selectionStart=e.selectionEnd=n+t.length,e.focus()},0)}}e()})}));if(n.length>0){await E(n);let e=n.length===1?n[0].name.includes(`screenshot`)?`Screenshot added as attachment`:`Large text converted to file`:`${n.length} files added`;x(e),setTimeout(()=>x(null),3e3)}},M=async n=>{if(n.preventDefault(),!p.trim()&&h.length===0||t||l)return;let r=p.trim(),i=[];r&&i.push({text:r,type:`input_text`});for(let e of h){let t=await w(e.file);if(e.file.type.startsWith(`image/`))i.push({detail:`auto`,type:`input_image`,image_url:t});else if(e.file.type===`text/plain`&&(e.file.name.includes(`pasted-text-`)||e.file.name.endsWith(`.txt`)||e.file.name.endsWith(`.csv`)||e.file.name.endsWith(`.json`)||e.file.name.endsWith(`.html`)||e.file.name.endsWith(`.md`)||e.file.name.endsWith(`.tsv`))){let t=await e.file.text();i.push({text:t,type:`input_text`})}else{let n=t.split(`,`)[1];i.push({type:`input_file`,file_data:n,file_url:t,filename:e.file.name})}}await e(i),m(``),g([])},N=!l&&!t&&!n&&(p.trim()||h.length>0);return(0,K.jsxs)(`div`,{className:`relative ${c}`,onDragOver:O,onDragLeave:k,onDrop:A,children:[_&&(0,K.jsx)(`div`,{className:`absolute inset-2 border-2 border-dashed border-blue-400 dark:border-blue-500 rounded-lg bg-blue-50/80 dark:bg-blue-950/40 backdrop-blur-sm flex items-center justify-center transition-all duration-200 ease-in-out z-10`,children:(0,K.jsxs)(`div`,{className:`text-center`,children:[(0,K.jsx)(`div`,{className:`text-blue-600 dark:text-blue-400 text-sm font-medium mb-1`,children:`Drop files here`}),(0,K.jsx)(`div`,{className:`text-blue-500 dark:text-blue-500 text-xs`,children:`Images, PDFs, and other files`})]})}),h.length>0&&(0,K.jsx)(`div`,{className:`mb-3`,children:(0,K.jsx)(sv,{attachments:h,onRemoveAttachment:D})}),b&&(0,K.jsxs)(`div`,{className:`absolute bottom-24 left-1/2 -translate-x-1/2 z-20 +asyncio.run(main())`})]})]}),(0,K.jsxs)(`div`,{className:`flex gap-2 pt-4 border-t`,children:[(0,K.jsx)(q,{variant:`outline`,size:`sm`,asChild:!0,children:(0,K.jsxs)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,children:[(0,K.jsx)(Vu,{className:`h-4 w-4 mr-2`}),`View Source`]})}),(0,K.jsx)(q,{variant:`outline`,size:`sm`,asChild:!0,children:(0,K.jsxs)(`a`,{href:`https://github.com/microsoft/agent-framework#readme`,target:`_blank`,rel:`noopener noreferrer`,children:[(0,K.jsx)(Zl,{className:`h-4 w-4 mr-2`}),`Documentation`]})})]})]})})})]})})}function pv({sample:e}){let[t,n]=(0,y.useState)(!1),r=e.type===`workflow`?mf:$l;return(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)($_,{className:`hover:shadow-md transition-shadow duration-200 h-full flex flex-col overflow-hidden w-full`,children:[(0,K.jsxs)(ev,{className:`pb-3 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-start justify-between mb-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(r,{className:`h-5 w-5`}),(0,K.jsx)(Ft,{variant:`secondary`,className:`text-xs`,children:e.type})]}),(0,K.jsx)(Ft,{variant:`outline`,className:jt(`text-xs border`,ov(e.difficulty)),children:e.difficulty})]}),(0,K.jsx)(tv,{className:`text-lg leading-tight`,children:e.name}),(0,K.jsx)(nv,{className:`text-sm line-clamp-3`,children:e.description})]}),(0,K.jsx)(rv,{className:`pt-0 flex-1 min-w-0 overflow-hidden`,children:(0,K.jsxs)(`div`,{className:`space-y-3 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`flex flex-wrap gap-1`,children:[e.tags.slice(0,3).map(e=>(0,K.jsx)(Ft,{variant:`outline`,className:`text-xs`,children:e},e)),e.tags.length>3&&(0,K.jsxs)(Ft,{variant:`outline`,className:`text-xs`,children:[`+`,e.tags.length-3]})]}),e.requiredEnvVars&&e.requiredEnvVars.length>0&&(0,K.jsxs)(`details`,{className:`group min-w-0 max-w-full overflow-hidden`,children:[(0,K.jsxs)(`summary`,{className:`cursor-pointer list-none p-2 bg-amber-50 dark:bg-amber-950/20 border border-amber-200 dark:border-amber-800 rounded-md hover:bg-amber-100 dark:hover:bg-amber-950/30 transition-colors flex items-center justify-between gap-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0`,children:[(0,K.jsx)(rd,{className:`h-3.5 w-3.5 text-amber-600 dark:text-amber-500 flex-shrink-0`}),(0,K.jsxs)(`span`,{className:`text-xs font-medium text-amber-900 dark:text-amber-100 truncate`,children:[`Requires `,e.requiredEnvVars.length,` env var`,e.requiredEnvVars.length>1?`s`:``]})]}),(0,K.jsx)(su,{className:`h-3 w-3 text-amber-600 dark:text-amber-500 flex-shrink-0 group-open:rotate-180 transition-transform`})]}),(0,K.jsx)(`div`,{className:`mt-2 p-2 bg-amber-50 dark:bg-amber-950/20 border border-amber-200 dark:border-amber-800 rounded-md space-y-2 min-w-0 max-w-full overflow-hidden`,children:e.requiredEnvVars.map(e=>(0,K.jsxs)(`div`,{className:`text-xs min-w-0 max-w-full overflow-hidden`,children:[(0,K.jsx)(`div`,{className:`font-mono font-medium text-amber-900 dark:text-amber-100 break-words`,children:e.name}),(0,K.jsx)(`div`,{className:`text-amber-700 dark:text-amber-300 mt-0.5 break-words`,children:e.description}),e.example&&(0,K.jsx)(`div`,{className:`font-mono text-amber-600 dark:text-amber-400 mt-0.5 break-all`,children:e.example})]},e.name))})]}),(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsx)(`div`,{className:`text-xs font-medium text-muted-foreground`,children:`Key Features:`}),(0,K.jsx)(`ul`,{className:`text-xs space-y-1`,children:e.features.slice(0,3).map(e=>(0,K.jsxs)(`li`,{className:`flex items-center gap-1`,children:[(0,K.jsx)(`div`,{className:`w-1 h-1 rounded-full bg-current opacity-50`}),(0,K.jsx)(`span`,{children:e})]},e))})]})]})}),(0,K.jsxs)(iv,{className:`pt-3 flex-col gap-3`,children:[(0,K.jsx)(`div`,{className:`w-full flex items-center justify-between text-xs text-muted-foreground`,children:(0,K.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,K.jsx)(ff,{className:`h-3 w-3`}),(0,K.jsx)(`span`,{children:e.author})]})}),(0,K.jsxs)(`div`,{className:`w-full flex gap-2`,children:[(0,K.jsx)(q,{asChild:!0,className:`flex-1`,size:`sm`,children:(0,K.jsxs)(`a`,{href:e.url,download:`${e.id}.py`,target:`_blank`,rel:`noopener noreferrer`,children:[(0,K.jsx)(Lu,{className:`h-4 w-4 mr-2`}),`Download`]})}),(0,K.jsxs)(q,{variant:`outline`,className:`flex-1`,size:`sm`,onClick:()=>n(!0),children:[(0,K.jsx)(Zl,{className:`h-4 w-4 mr-2`}),`Setup Guide`]})]})]})]}),(0,K.jsx)(fv,{sample:e,open:t,onOpenChange:n})]})}function mv({samples:e}){return(0,K.jsx)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-4`,children:e.map(e=>(0,K.jsx)(`div`,{className:`min-w-0`,children:(0,K.jsx)(pv,{sample:e})},e.id))})}function hv({onClose:e,variant:t=`inline`,hasExistingEntities:n=!1}){return t===`inline`?(0,K.jsx)(`div`,{className:`flex-1 overflow-auto`,children:(0,K.jsxs)(`div`,{className:`max-w-7xl mx-auto px-6 py-8`,children:[(0,K.jsx)(`div`,{className:`mb-8 p-4 bg-muted/50 border border-border rounded-lg`,children:(0,K.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,K.jsx)(cf,{className:`h-5 w-5 text-amber-500 flex-shrink-0 mt-0.5`}),(0,K.jsxs)(`div`,{className:`flex-1`,children:[(0,K.jsx)(`h3`,{className:`font-semibold mb-1`,children:`No agents or workflows configured yet!`}),(0,K.jsxs)(`p`,{className:`text-sm text-muted-foreground mb-2`,children:[`You can configure agents or workflows by running`,` `,(0,K.jsx)(`code`,{className:`px-1.5 py-0.5 bg-background rounded text-xs`,children:`devui`}),` `,`in a directory containing them.`]}),(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Browse the sample agents and workflows below. Download them, review the code, and run them locally to get started quickly.`})]})]})}),(0,K.jsxs)(`div`,{className:`mb-6`,children:[(0,K.jsx)(`h3`,{className:`text-lg font-semibold mb-4`,children:`Sample Gallery`}),(0,K.jsx)(mv,{samples:av})]}),(0,K.jsx)(`div`,{className:`text-center mt-12 pt-8 border-t`,children:(0,K.jsxs)(`p`,{className:`text-sm text-muted-foreground`,children:[`Want to create your own agents or workflows? Check out the`,` `,(0,K.jsx)(`a`,{href:`https://github.com/microsoft/agent-framework`,className:`text-primary hover:underline`,target:`_blank`,rel:`noopener noreferrer`,children:`documentation`})]})})]})}):t===`route`?(0,K.jsx)(`div`,{className:`h-full overflow-auto`,children:(0,K.jsxs)(`div`,{className:`max-w-7xl mx-auto px-6 py-8`,children:[(0,K.jsxs)(`div`,{className:`mb-8`,children:[n&&(0,K.jsx)(`div`,{className:`mb-4`,children:(0,K.jsxs)(q,{variant:`ghost`,onClick:e,className:`gap-2`,children:[(0,K.jsx)(Yl,{className:`h-4 w-4`}),`Back`]})}),(0,K.jsxs)(`div`,{className:`text-center`,children:[(0,K.jsx)(`h2`,{className:`text-2xl font-semibold mb-2`,children:`Sample Gallery`}),(0,K.jsx)(`p`,{className:`text-muted-foreground max-w-2xl mx-auto`,children:`Browse sample agents and workflows to learn the Agent Framework. Download these curated examples and run them locally. Examples range from beginner to advanced.`})]})]}),(0,K.jsx)(mv,{samples:av}),(0,K.jsx)(`div`,{className:`text-center mt-12 pt-8 border-t`,children:(0,K.jsxs)(`p`,{className:`text-sm text-muted-foreground`,children:[`Want to create your own agents or workflows? Check out the`,` `,(0,K.jsx)(`a`,{href:`https://github.com/microsoft/agent-framework`,className:`text-primary hover:underline`,target:`_blank`,rel:`noopener noreferrer`,children:`documentation`})]})})]})}):(0,K.jsx)(mv,{samples:av})}function gv({className:e,...t}){return(0,K.jsx)(`textarea`,{"data-slot":`textarea`,className:jt(`border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 flex field-sizing-content min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 md:text-sm`,e),...t})}function _v({onFilesSelected:e,accept:t=`image/*,.pdf,audio/*,.wav,.mp3,.m4a,.ogg`,multiple:n=!0,maxSize:r=52428800,disabled:i=!1,className:a=``}){let o=(0,y.useRef)(null),s=n=>{if(!n||n.length===0)return;let i=[],a=[];Array.from(n).forEach(e=>{if(e.size>r){a.push(`${e.name} is too large (max ${vv(r)})`);return}if(t&&!yv(e,t)){a.push(`${e.name} is not an accepted file type`);return}i.push(e)}),a.length>0&&console.warn(`File upload errors:`,a),i.length>0&&e(i)};return(0,K.jsxs)(`div`,{className:a,children:[(0,K.jsx)(`input`,{ref:o,type:`file`,accept:t,multiple:n,onChange:e=>{s(e.target.files),e.target.value=``},className:`hidden`,disabled:i}),(0,K.jsx)(q,{type:`button`,variant:`outline`,size:`icon`,onClick:()=>{o.current&&o.current.click()},disabled:i,onDrop:e=>{if(e.preventDefault(),e.stopPropagation(),i)return;let t=e.dataTransfer.files;s(t)},onDragOver:e=>{e.preventDefault(),e.stopPropagation()},className:`shrink-0 transition-colors hover:bg-muted`,title:`Upload files (images, PDFs, audio)`,children:(0,K.jsx)(uf,{className:`h-4 w-4`})})]})}function vv(e){if(e===0)return`0 Bytes`;let t=1024,n=[`Bytes`,`KB`,`MB`,`GB`],r=Math.floor(Math.log(e)/Math.log(t));return parseFloat((e/t**r).toFixed(2))+` `+n[r]}function yv(e,t){return t.split(`,`).map(e=>e.trim()).some(t=>{if(t.startsWith(`.`))return e.name.toLowerCase().endsWith(t.toLowerCase());if(t.includes(`/*`)){let[n]=t.split(`/`);return e.type.startsWith(n+`/`)}return e.type===t})}function bv({attachments:e,onRemoveAttachment:t,className:n=``}){return e.length===0?null:(0,K.jsx)(`div`,{className:`flex flex-wrap gap-2 p-2 bg-muted rounded-lg ${n}`,children:e.map(e=>(0,K.jsx)(xv,{attachment:e,onRemove:()=>t(e.id)},e.id))})}function xv({attachment:e,onRemove:t}){let[n,r]=(0,y.useState)(!1);return(0,K.jsxs)(`div`,{className:`relative w-16 h-16 rounded border overflow-hidden group cursor-pointer`,onMouseEnter:()=>r(!0),onMouseLeave:()=>r(!1),title:e.file.name,children:[(()=>{switch(e.type){case`image`:return e.preview?(0,K.jsx)(`img`,{src:e.preview,alt:e.file.name,className:`w-full h-full object-cover`}):(0,K.jsx)(`div`,{className:`flex items-center justify-center w-full h-full bg-gray-200`,children:(0,K.jsx)($u,{className:`h-6 w-6 text-gray-400`})});case`pdf`:return(0,K.jsxs)(`div`,{className:`flex flex-col items-center justify-center w-full h-full bg-red-50`,children:[(0,K.jsx)(Uu,{className:`h-6 w-6 text-red-500 mb-1`}),(0,K.jsx)(`span`,{className:`text-xs text-red-600`,children:`PDF`})]});case`audio`:return(0,K.jsxs)(`div`,{className:`flex flex-col items-center justify-center w-full h-full bg-purple-50`,children:[(0,K.jsx)(Cd,{className:`h-6 w-6 text-purple-500 mb-1`}),(0,K.jsx)(`span`,{className:`text-xs text-purple-600`,children:`AUDIO`})]});default:return(0,K.jsxs)(`div`,{className:`flex flex-col items-center justify-center w-full h-full bg-gray-100`,children:[(0,K.jsx)(Uu,{className:`h-6 w-6 text-gray-500 mb-1`}),(0,K.jsx)(`span`,{className:`text-xs text-gray-600`,children:`FILE`})]})}})(),(0,K.jsx)(`div`,{className:`absolute inset-0 bg-black/60 flex items-center justify-center transition-all duration-200 ease-in-out ${n?`opacity-100 backdrop-blur-sm`:`opacity-0 pointer-events-none`}`,onClick:t,children:(0,K.jsx)(`div`,{className:`transition-all duration-200 ease-in-out ${n?`scale-100 opacity-100`:`scale-75 opacity-0`}`,children:(0,K.jsx)(of,{className:`h-5 w-5 text-white drop-shadow-lg`})})}),(0,K.jsx)(`div`,{className:`absolute bottom-0 left-0 right-0 bg-black bg-opacity-75 text-white text-xs p-1 truncate opacity-0 group-hover:opacity-100 transition-opacity duration-200`,children:e.file.name})]})}function Sv(e){let t=Math.floor(e);return`${Math.floor(t/60)}:${(t%60).toString().padStart(2,`0`)}`}function Cv({peaks:e,progress:t}){let n=e.length?e:[.12,.28,.16,.35,.2,.5,.18,.3];return(0,K.jsx)(`div`,{className:`flex h-full items-center gap-0.5`,"aria-hidden":`true`,children:n.map((e,r)=>(0,K.jsx)(`span`,{className:`w-0.5 shrink-0 rounded-full ${r/n.length<=t?`bg-violet-500`:`bg-muted-foreground/45`}`,style:{height:Math.max(3,Math.round(e*32))}},r))})}function wv({recordingSeconds:e,inputLevel:t,statusLabel:n,onStop:r,onCancel:i}){return(0,K.jsxs)(`div`,{className:`mx-auto flex w-full max-w-[760px] items-center gap-2`,role:`status`,children:[(0,K.jsxs)(`div`,{className:`flex h-[72px] min-w-0 flex-1 items-center justify-between gap-5 rounded-full border border-border bg-background px-4 py-2 shadow-sm`,children:[(0,K.jsx)(q,{type:`button`,size:`icon`,onClick:r,className:`h-11 w-11 shrink-0 rounded-full bg-violet-600 text-white hover:bg-violet-700`,title:`Stop recording and attach voice message`,"aria-label":`Stop recording`,children:(0,K.jsx)(tf,{className:`h-4 w-4 fill-current`})}),(0,K.jsx)(`span`,{"aria-label":`Recording duration`,className:`min-w-[4ch] text-center text-base font-semibold tabular-nums`,children:Sv(e)}),(0,K.jsxs)(`div`,{className:`flex h-full flex-1 flex-col items-center justify-center gap-1 overflow-hidden`,children:[(0,K.jsx)(`div`,{className:`flex h-10 items-center gap-1 overflow-hidden`,"aria-hidden":`true`,children:[8,12,16,22,28,32,30,24,18,14,12,16,20,24,18,14,12,16].map((e,n)=>(0,K.jsx)(`span`,{className:`w-1 shrink-0 animate-pulse rounded-full bg-violet-500 dark:bg-violet-400`,style:{height:Math.min(40,Math.max(6,Math.round(e*(.35+t*.9)))),animationDelay:`${n*80}ms`,animationDuration:`900ms`}},n))}),n&&(0,K.jsx)(`span`,{className:`h-3 text-[10px] leading-3 text-muted-foreground`,children:n})]}),(0,K.jsx)(`span`,{className:`sr-only`,children:`Recording voice message`})]}),(0,K.jsx)(q,{type:`button`,variant:`ghost`,size:`icon`,onClick:i,className:`h-10 w-10 shrink-0`,title:`Cancel recording`,"aria-label":`Cancel recording`,children:(0,K.jsx)(vf,{className:`h-4 w-4`})})]})}function Tv({audio:e,label:t=`Voice recording preview`,disabled:n,previewBeforeSend:r=!0,onRemove:i,autoPlay:a=!1,downloadFilename:o,maxWidth:s=760,minWidth:c=420,align:l=`center`,className:u=``}){let d=(0,y.useRef)(null),[f,p]=(0,y.useState)(!1),[m,h]=(0,y.useState)(0),[g,_]=(0,y.useState)(e.durationSeconds||0),[v,b]=(0,y.useState)(e.waveformPeaks||[]),[x,S]=(0,y.useState)(null),C=g>0?Math.min(1,m/g):0,w=Math.round(Math.min(s,Math.max(c,300+g*18)));(0,y.useEffect)(()=>{h(0),p(!1),_(e.durationSeconds||0),b(e.waveformPeaks||[]),S(null);let t=k_();if(e.waveformPeaks||!e.blobUrl.startsWith(`data:`)||!t)return;let n=new AbortController,r=!1;return(async()=>{let i=new t;try{let t=await fetch(e.blobUrl,{signal:n.signal});if(!t.ok)throw Error(`Audio waveform request failed (${t.status}).`);let a=await i.decodeAudioData(await t.arrayBuffer());r||(b(A_(a)),_(a.duration))}finally{await i.close()}})().catch(e=>{r||console.warn(`Could not generate audio waveform; playback is still available:`,e)}),()=>{r=!0,n.abort()}},[e.blobUrl,e.durationSeconds,e.waveformPeaks]);let T=async()=>{let e=d.current;if(e){if(!e.paused){e.pause();return}S(null);try{await e.play()}catch(e){S(e instanceof Error?e.message:`Audio playback failed.`)}}},E=e=>{let t=Math.min(g,Math.max(0,e));d.current&&(d.current.currentTime=t),h(t)};return(0,K.jsxs)(`div`,{className:`max-w-full ${u}`,children:[(0,K.jsxs)(`div`,{className:`${l===`center`?`mx-auto`:`me-auto`} max-w-full overflow-hidden rounded-full border bg-background text-foreground px-3 py-2 shadow-sm transition-[width]`,style:{width:`min(100%, ${w}px)`},children:[(0,K.jsx)(`audio`,{ref:d,src:e.blobUrl,"aria-label":i?`Voice recording preview`:t,preload:`metadata`,autoPlay:a,onPlay:()=>p(!0),onPause:()=>p(!1),onTimeUpdate:e=>h(e.currentTarget.currentTime),onDurationChange:e=>{let t=e.currentTarget.duration;Number.isFinite(t)&&_(t)},onEnded:()=>p(!1),onError:()=>S(`Audio could not be loaded. Download it or try again.`),className:`hidden`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[r&&(0,K.jsx)(q,{type:`button`,variant:`ghost`,size:`icon`,onClick:T,disabled:n,className:`h-8 w-8 shrink-0 rounded-full text-violet-600 hover:text-violet-700`,"aria-label":f?`Pause recording preview`:`Play recording preview`,children:f?(0,K.jsx)(jd,{className:`h-4 w-4`}):(0,K.jsx)(Nd,{className:`h-4 w-4 fill-current`})}),(0,K.jsxs)(`div`,{className:`min-w-0 flex-1 max-w-[560px]`,children:[(0,K.jsx)(`div`,{className:`mb-1 truncate text-xs font-medium`,children:t}),(0,K.jsxs)(`div`,{className:`group relative h-8 overflow-hidden rounded-md px-1 focus-within:ring-2 focus-within:ring-violet-500`,children:[(0,K.jsx)(Cv,{peaks:v,progress:C}),r&&(0,K.jsxs)(`div`,{className:`pointer-events-none absolute inset-x-3 top-1/2 h-6 -translate-y-1/2 opacity-0 transition-opacity group-hover:opacity-100 group-focus-within:opacity-100 group-active:opacity-100`,"aria-hidden":`true`,children:[(0,K.jsx)(`div`,{className:`absolute inset-x-0 top-1/2 h-1 -translate-y-1/2 rounded-full bg-muted-foreground/35`}),(0,K.jsx)(`div`,{className:`absolute left-0 top-1/2 h-1 -translate-y-1/2 rounded-full bg-violet-500/80`,style:{width:`${C*100}%`}}),(0,K.jsx)(`div`,{className:`absolute top-1/2 h-5 w-5 -translate-x-1/2 -translate-y-1/2 rounded-full border-4 border-background bg-violet-500 shadow-md`,style:{left:`${C*100}%`}})]}),r&&(0,K.jsx)(`input`,{type:`range`,min:0,max:g,step:.01,value:m,"aria-label":`Audio playback position`,"aria-valuetext":`${Sv(m)} of ${Sv(g)}`,disabled:n||g<=0,onChange:e=>E(Number(e.currentTarget.value)),onKeyDown:e=>{let t={ArrowLeft:-1,ArrowDown:-1,ArrowRight:1,ArrowUp:1},n=e.key===`Home`?0:e.key===`End`?g:e.key in t?m+t[e.key]:void 0;n!==void 0&&(e.preventDefault(),E(n))},className:`absolute inset-0 h-full w-full cursor-pointer opacity-0 disabled:cursor-default`})]})]}),(0,K.jsx)(`span`,{className:`min-w-[4ch] text-sm font-semibold tabular-nums`,children:Sv(m||g)}),i&&(0,K.jsx)(q,{type:`button`,variant:`ghost`,size:`icon`,onClick:i,disabled:n,className:`h-8 w-8 shrink-0`,title:`Remove recording`,"aria-label":`Remove recording`,children:(0,K.jsx)(vf,{className:`h-4 w-4`})}),o&&(0,K.jsx)(`a`,{href:e.blobUrl,download:o,className:`inline-flex h-8 w-8 shrink-0 items-center justify-center rounded-full text-muted-foreground transition-colors hover:bg-accent hover:text-foreground`,title:`Download audio`,"aria-label":`Download audio`,children:(0,K.jsx)(Lu,{className:`h-4 w-4`})})]})]}),x&&(0,K.jsx)(`div`,{role:`alert`,className:`mt-1 text-xs text-destructive`,children:x})]})}Cp();function Ev({onSubmit:e,isSubmitting:t=!1,isStreaming:n=!1,onCancel:r,isCancelling:i=!1,placeholder:a,showFileUpload:o=!0,maxAttachments:s=10,className:c=``,disabled:l=!1,entityName:u=`assistant`,externalFiles:d,onExternalFilesProcessed:f}){let[p,m]=(0,y.useState)(``),[h,g]=(0,y.useState)([]),[_,v]=(0,y.useState)(!1),[b,x]=(0,y.useState)(null),S=(0,y.useRef)(null),C=Q(e=>e.audioInput),w=(0,y.useRef)(null),T=(0,y.useRef)(!1);(0,y.useEffect)(()=>()=>w.current?.(),[]);let E=e=>e.type.startsWith(`image/`)?`image`:e.type===`application/pdf`?`pdf`:e.type.startsWith(`audio/`)?`audio`:`other`,D=e=>new Promise((t,n)=>{let r=new FileReader;r.onload=()=>t(r.result),r.onerror=n,r.readAsDataURL(e)}),{isSupported:O,isRecording:k,isStarting:A,isProcessing:j,recordingSeconds:M,inputLevel:N,recording:P,error:F,startRecording:I,stopRecording:L,cancelRecording:R,clearRecording:z}=P_(C),B=e=>{if(e.button!==0||!U)return;w.current?.(),T.current=!1;let t=()=>{window.clearTimeout(r),window.removeEventListener(`pointerup`,n),window.removeEventListener(`pointercancel`,n),window.removeEventListener(`blur`,n),w.current=null},n=()=>{t(),T.current&&L()},r=window.setTimeout(()=>{T.current=!0,I(!1)},300);window.addEventListener(`pointerup`,n),window.addEventListener(`pointercancel`,n),window.addEventListener(`blur`,n),w.current=t},ee=()=>{w.current?.(),R()},V=e=>{let t=e.trim(),n=t.split(` +`);if(/^{[\s\S]*}$|^\[[\s\S]*\]$/.test(t))return`.json`;if(/^<\?xml|^1)return`.tsv`;if(n.length>2){let e=n.filter(e=>e.includes(`,`)),t=n.filter(e=>e.includes(`;`));if(e.length>n.length*.5&&e.reduce((e,t)=>e+(t.match(/,/g)||[]).length,0)/e.length>=2||t.length>n.length*.5&&t.reduce((e,t)=>e+(t.match(/;/g)||[]).length,0)/t.length>=2)return`.csv`}return`.txt`},H=(0,y.useCallback)(async e=>{if(h.length+e.length>s){console.warn(`Cannot add more than ${s} attachments`);return}let t=[];for(let n of e){let e={id:`${Date.now()}-${Math.random()}`,file:n,type:E(n)};if(n.type.startsWith(`image/`))try{e.preview=await D(n)}catch(e){console.error(`Failed to generate preview:`,e)}t.push(e)}g(e=>[...e,...t])},[h.length,s]);(0,y.useEffect)(()=>{d&&d.length>0&&(H(d),f?.())},[d,H,f]);let te=e=>{g(t=>t.filter(t=>t.id!==e))},ne=e=>{e.preventDefault(),e.stopPropagation(),v(!0)},re=e=>{e.preventDefault(),e.stopPropagation(),v(!1)},ie=async e=>{e.preventDefault(),e.stopPropagation(),v(!1);let t=Array.from(e.dataTransfer.files);t.length>0&&await H(t)},ae=async e=>{let t=Array.from(e.clipboardData.items),n=[],r=!1;for(let i of t)if(i.type.startsWith(`image/`)){e.preventDefault();let t=i.getAsFile();if(t){let e=Date.now();n.push(new File([t],`screenshot-${e}.png`,{type:t.type}))}}else i.type===`text/plain`&&!r&&(r=!0,e.preventDefault(),await new Promise(e=>{i.getAsString(t=>{let r=(t.match(/\n/g)||[]).length;if(t.length>1e4||r>50||/^\s*[{[][\s\S]*[}\]]\s*$/.test(t)||/^<\?xml|^{e.selectionStart=e.selectionEnd=n+t.length,e.focus()},0)}}e()})}));if(n.length>0){await H(n);let e=n.length===1?n[0].name.includes(`screenshot`)?`Screenshot added as attachment`:`Large text converted to file`:`${n.length} files added`;x(e),setTimeout(()=>x(null),3e3)}},oe=async r=>{if(r.preventDefault(),!p.trim()&&h.length===0&&!P||t||n||A||k||j||l)return;let i=p.trim(),a=[];i&&a.push({text:i,type:`input_text`}),P&&a.push({type:`input_audio`,input_audio:{data:P.data,format:P.format}});for(let e of h){let t=await D(e.file);if(e.file.type.startsWith(`image/`))a.push({detail:`auto`,type:`input_image`,image_url:t});else if(e.file.type===`text/plain`&&(e.file.name.includes(`pasted-text-`)||e.file.name.endsWith(`.txt`)||e.file.name.endsWith(`.csv`)||e.file.name.endsWith(`.json`)||e.file.name.endsWith(`.html`)||e.file.name.endsWith(`.md`)||e.file.name.endsWith(`.tsv`))){let t=await e.file.text();a.push({text:t,type:`input_text`})}else{let n=t.split(`,`)[1];a.push({type:`input_file`,file_data:n,file_url:t,filename:e.file.name})}}await e(a),m(``),g([]),z()},se=!l&&!t&&!n&&!A&&!k&&!j&&(p.trim()||h.length>0||P),U=C.enabled&&O&&!l&&!t&&!n&&!A&&!k&&!j,ce=C.enabled?O?A?`Preparing microphone`:`Click to record or hold to push-to-talk`:`Microphone input requires a supported browser and localhost or HTTPS`:`Microphone input is disabled in settings`;return(0,K.jsxs)(`div`,{className:`relative ${c}`,onDragOver:ne,onDragLeave:re,onDrop:ie,children:[_&&(0,K.jsx)(`div`,{className:`absolute inset-2 border-2 border-dashed border-blue-400 dark:border-blue-500 rounded-lg bg-blue-50/80 dark:bg-blue-950/40 backdrop-blur-sm flex items-center justify-center transition-all duration-200 ease-in-out z-10`,children:(0,K.jsxs)(`div`,{className:`text-center`,children:[(0,K.jsx)(`div`,{className:`text-blue-600 dark:text-blue-400 text-sm font-medium mb-1`,children:`Drop files here`}),(0,K.jsx)(`div`,{className:`text-blue-500 dark:text-blue-500 text-xs`,children:`Images, PDFs, and other files`})]})}),h.length>0&&(0,K.jsx)(`div`,{className:`mb-3`,children:(0,K.jsx)(bv,{attachments:h,onRemoveAttachment:te})}),b&&(0,K.jsxs)(`div`,{className:`absolute bottom-24 left-1/2 -translate-x-1/2 z-20 bg-blue-500 text-white px-4 py-2 rounded-full text-sm animate-in slide-in-from-bottom-2 fade-in duration-200 - flex items-center gap-2 shadow-lg`,children:[b.includes(`screenshot`)?(0,K.jsx)(Dd,{className:`h-3 w-3`}):(0,K.jsx)(Uu,{className:`h-3 w-3`}),b]}),(0,K.jsxs)(`form`,{onSubmit:M,className:`flex gap-2 items-end`,children:[(0,K.jsx)(rv,{ref:S,value:p,onChange:e=>m(e.target.value),onPaste:j,onKeyDown:e=>{e.key===`Enter`&&!e.shiftKey&&(e.preventDefault(),M(e))},placeholder:a||`Message ${u}... (Shift+Enter for new line)`,disabled:l||t||n,className:`flex-1 min-h-[40px] max-h-[200px] resize-none`,style:{fieldSizing:`content`}}),o&&(0,K.jsx)(iv,{onFilesSelected:E,disabled:l||t||n}),n&&r?(0,K.jsx)(q,{type:`button`,size:`icon`,onClick:r,disabled:i,className:`shrink-0 h-10 transition-all`,title:`Stop generating`,"aria-label":`Stop generating response`,children:i?(0,K.jsx)(Cf,{size:`sm`}):(0,K.jsx)(Zd,{className:`h-4 w-4 fill-current`})}):(0,K.jsx)(q,{type:`submit`,size:`icon`,disabled:!N,className:`shrink-0 h-10 transition-all`,title:`Send message`,"aria-label":`Send message`,children:t?(0,K.jsx)(Cf,{size:`sm`}):(0,K.jsx)(Vd,{className:`h-4 w-4`})})]})]})}function uv({code:e,language:t}){let[n,r]=(0,y.useState)(!1),i=(0,y.useRef)(null);return(0,y.useEffect)(()=>()=>{i.current&&clearTimeout(i.current)},[]),(0,K.jsxs)(`div`,{className:`relative group`,children:[(0,K.jsx)(`pre`,{className:`my-3 p-3 bg-foreground/5 dark:bg-foreground/10 rounded overflow-x-auto border border-foreground/10`,children:(0,K.jsxs)(`code`,{className:`text-xs font-mono block whitespace-pre-wrap break-words`,children:[t&&(0,K.jsx)(`span`,{className:`opacity-60 text-[10px] mb-1 block uppercase`,children:t}),e]})}),(0,K.jsx)(`button`,{onClick:async()=>{try{await navigator.clipboard.writeText(e),r(!0),i.current&&clearTimeout(i.current),i.current=setTimeout(()=>{r(!1),i.current=null},2e3)}catch(e){console.error(`Failed to copy code:`,e)}},className:`absolute top-2 right-2 p-1.5 rounded-md border shadow-sm + flex items-center gap-2 shadow-lg`,children:[b.includes(`screenshot`)?(0,K.jsx)(kd,{className:`h-3 w-3`}):(0,K.jsx)(Uu,{className:`h-3 w-3`}),b]}),(P||A||j||F)&&(0,K.jsxs)(`div`,{className:`mb-3 space-y-2`,children:[P&&(0,K.jsx)(Tv,{audio:P,label:`Voice recording · ${(P.sizeBytes/1024).toFixed(0)} KB · ${P.format.toUpperCase()}`,disabled:l||t||n,previewBeforeSend:C.previewBeforeSend,onRemove:z}),A&&(0,K.jsxs)(`div`,{className:`flex items-center gap-2 rounded-lg border bg-muted/50 p-2 text-sm text-muted-foreground`,children:[(0,K.jsx)(Df,{size:`sm`}),`Preparing microphone...`]}),j&&(0,K.jsxs)(`div`,{className:`flex items-center gap-2 rounded-lg border bg-muted/50 p-2 text-sm text-muted-foreground`,children:[(0,K.jsx)(Df,{size:`sm`}),`Processing audio...`]}),F&&(0,K.jsx)(`div`,{role:`alert`,className:`rounded-lg border border-orange-500/30 bg-orange-500/10 p-2 text-xs text-orange-700 dark:text-orange-300`,children:F}),(A||j)&&(0,K.jsx)(q,{type:`button`,variant:`outline`,onClick:ee,children:`Cancel recording`})]}),(0,K.jsxs)(`form`,{onSubmit:oe,className:`flex gap-2 items-end`,children:[k?(0,K.jsx)(wv,{recordingSeconds:M,inputLevel:N,statusLabel:C.autoStopOnSilence?`Auto-stops after silence`:void 0,onStop:L,onCancel:ee}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(gv,{ref:S,value:p,onChange:e=>m(e.target.value),onPaste:ae,onKeyDown:e=>{e.key===`Enter`&&!e.shiftKey&&(e.preventDefault(),oe(e))},placeholder:a||`Message ${u}... (Shift+Enter for new line)`,disabled:l||t||n,className:`flex-1 min-h-[40px] max-h-[200px] resize-none`,style:{fieldSizing:`content`}}),o&&(0,K.jsx)(_v,{onFilesSelected:H,disabled:l||t||n}),C.enabled&&(0,K.jsx)(q,{type:`button`,variant:`outline`,size:`icon`,onClick:()=>{T.current||I(),T.current=!1},onPointerDown:B,disabled:!U,className:`shrink-0 h-10 touch-none transition-all`,title:ce,"aria-label":ce,children:A||j?(0,K.jsx)(Df,{size:`sm`}):(0,K.jsx)(yd,{className:`h-4 w-4`})})]}),!k&&(n&&r?(0,K.jsx)(q,{type:`button`,size:`icon`,onClick:r,disabled:i,className:`shrink-0 h-10 transition-all`,title:`Stop generating`,"aria-label":`Stop generating response`,children:i?(0,K.jsx)(Df,{size:`sm`}):(0,K.jsx)(tf,{className:`h-4 w-4 fill-current`})}):(0,K.jsx)(q,{type:`submit`,size:`icon`,disabled:!se,className:`shrink-0 h-10 transition-all`,title:`Send message`,"aria-label":`Send message`,children:t?(0,K.jsx)(Df,{size:`sm`}):(0,K.jsx)(Gd,{className:`h-4 w-4`})}))]})]})}function Dv({code:e,language:t}){let[n,r]=(0,y.useState)(!1),i=(0,y.useRef)(null);return(0,y.useEffect)(()=>()=>{i.current&&clearTimeout(i.current)},[]),(0,K.jsxs)(`div`,{className:`relative group`,children:[(0,K.jsx)(`pre`,{className:`my-3 p-3 bg-foreground/5 dark:bg-foreground/10 rounded overflow-x-auto border border-foreground/10`,children:(0,K.jsxs)(`code`,{className:`text-xs font-mono block whitespace-pre-wrap break-words`,children:[t&&(0,K.jsx)(`span`,{className:`opacity-60 text-[10px] mb-1 block uppercase`,children:t}),e]})}),(0,K.jsx)(`button`,{onClick:async()=>{try{await navigator.clipboard.writeText(e),r(!0),i.current&&clearTimeout(i.current),i.current=setTimeout(()=>{r(!1),i.current=null},2e3)}catch(e){console.error(`Failed to copy code:`,e)}},className:`absolute top-2 right-2 p-1.5 rounded-md border shadow-sm bg-background hover:bg-accent text-muted-foreground hover:text-foreground transition-all duration-200 - opacity-0 group-hover:opacity-100`,title:n?`Copied!`:`Copy code`,children:n?(0,K.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`14`,height:`14`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,className:`text-green-600 dark:text-green-400`,children:(0,K.jsx)(`polyline`,{points:`20 6 9 17 4 12`})}):(0,K.jsxs)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`14`,height:`14`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`rect`,{x:`9`,y:`9`,width:`13`,height:`13`,rx:`2`,ry:`2`}),(0,K.jsx)(`path`,{d:`M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1`})]})})]})}function dv({content:e,className:t=``}){let n=e.split(` -`),r=[],i=0;for(;i(0,K.jsx)(`li`,{className:`text-sm break-words`,children:fv(e)},t))},r.length));continue}if(e.match(/^[\s]*\d+\.\s+/)){let e=[];for(;i(0,K.jsx)(`li`,{className:`text-sm break-words`,children:fv(e)},t))},r.length));continue}if(e.trim().startsWith(`|`)&&e.trim().endsWith(`|`)){let e=[];for(;i=2){let t=e[0].split(`|`).slice(1,-1).map(e=>e.trim());if(e[1].match(/^\|[\s\-:|]+\|$/)){let n=e.slice(2).map(e=>e.split(`|`).slice(1,-1).map(e=>e.trim()));r.push((0,K.jsx)(`div`,{className:`my-3 overflow-x-auto`,children:(0,K.jsxs)(`table`,{className:`min-w-full border border-foreground/10 text-sm`,children:[(0,K.jsx)(`thead`,{className:`bg-foreground/5`,children:(0,K.jsx)(`tr`,{children:t.map((e,t)=>(0,K.jsx)(`th`,{className:`border-b border-foreground/10 px-3 py-2 text-left font-semibold break-words`,children:fv(e)},t))})}),(0,K.jsx)(`tbody`,{children:n.map((e,t)=>(0,K.jsx)(`tr`,{className:`border-b border-foreground/5 last:border-b-0`,children:e.map((e,t)=>(0,K.jsx)(`td`,{className:`px-3 py-2 border-r border-foreground/5 last:border-r-0 break-words`,children:fv(e)},t))},t))})]})},r.length));continue}}for(let t of e)r.push((0,K.jsx)(`p`,{className:`my-1`,children:fv(t)},r.length));continue}if(e.trim().startsWith(`>`)){let e=[];for(;i`);)e.push(n[i].replace(/^>\s?/,``)),i++;r.push((0,K.jsx)(`blockquote`,{className:`my-2 pl-4 border-l-4 border-current/30 opacity-80 italic break-words`,children:e.map((e,t)=>(0,K.jsx)(`div`,{className:`break-words`,children:fv(e)},t))},r.length));continue}if(e.match(/^[\s]*[-*_]{3,}[\s]*$/)){r.push((0,K.jsx)(`hr`,{className:`my-4 border-t border-border`},r.length)),i++;continue}if(e.trim()===``){r.push((0,K.jsx)(`div`,{className:`h-2`},r.length)),i++;continue}r.push((0,K.jsx)(`p`,{className:`my-1 break-words`,children:fv(e)},r.length)),i++}return(0,K.jsx)(`div`,{className:`markdown-content break-words ${t}`,children:r})}function fv(e){let t=[],n=e,r=0;for(;n.length>0;){let e=n.match(/`([^`]+)`/);if(e&&e.index!==void 0){e.index>0&&t.push((0,K.jsx)(`span`,{children:pv(n.slice(0,e.index))},r++)),t.push((0,K.jsx)(`code`,{className:`px-1.5 py-0.5 bg-foreground/10 rounded text-xs font-mono border border-foreground/20`,children:e[1]},r++)),n=n.slice(e.index+e[0].length);continue}t.push((0,K.jsx)(`span`,{children:pv(n)},r++));break}return t}function pv(e){let t=[],n=e,r=0;for(;n.length>0;){let e=[{regex:/\*\*\[([^\]]+)\]\(([^)]+)\)\*\*/,component:`strong-link`},{regex:/__\[([^\]]+)\]\(([^)]+)\)__/,component:`strong-link`},{regex:/\*\[([^\]]+)\]\(([^)]+)\)\*/,component:`em-link`},{regex:/_\[([^\]]+)\]\(([^)]+)\)_/,component:`em-link`},{regex:/\[([^\]]+)\]\(([^)]+)\)/,component:`link`},{regex:/\*\*(.+?)\*\*/,component:`strong`},{regex:/__(.+?)__/,component:`strong`},{regex:/\*(.+?)\*/,component:`em`},{regex:/_(.+?)_/,component:`em`}],i=!1;for(let a of e){let e=n.match(a.regex);if(e&&e.index!==void 0){if(e.index>0&&t.push(n.slice(0,e.index)),a.component===`strong`)t.push((0,K.jsx)(`strong`,{className:`font-semibold`,children:e[1]},r++));else if(a.component===`em`)t.push((0,K.jsx)(`em`,{className:`italic`,children:e[1]},r++));else if(a.component===`strong-link`){let n=e[1],i=e[2],a=pv(n);t.push((0,K.jsx)(`strong`,{className:`font-semibold`,children:(0,K.jsx)(`a`,{href:i,target:`_blank`,rel:`noopener noreferrer`,className:`text-primary hover:underline break-words`,children:a})},r++))}else if(a.component===`em-link`){let n=e[1],i=e[2],a=pv(n);t.push((0,K.jsx)(`em`,{className:`italic`,children:(0,K.jsx)(`a`,{href:i,target:`_blank`,rel:`noopener noreferrer`,className:`text-primary hover:underline break-words`,children:a})},r++))}else if(a.component===`link`){let n=e[1],i=e[2],a=pv(n);t.push((0,K.jsx)(`a`,{href:i,target:`_blank`,rel:`noopener noreferrer`,className:`text-primary hover:underline break-words`,children:a},r++))}n=n.slice(e.index+e[0].length),i=!0;break}}if(!i){n.length>0&&t.push(n);break}}return t}function mv({content:e,className:t,isStreaming:n}){if(e.type!==`text`&&e.type!==`input_text`&&e.type!==`output_text`&&e.type!==`refusal`)return null;let r=e.type===`refusal`?e.refusal:e.text;return(0,K.jsxs)(`div`,{className:`break-words ${t||``}`,children:[(0,K.jsx)(dv,{content:r}),n&&r.length>0&&(0,K.jsx)(`span`,{className:`ml-1 inline-block h-2 w-2 animate-pulse rounded-full bg-current`})]})}function hv({content:e,className:t}){let[n,r]=(0,y.useState)(!1),[i,a]=(0,y.useState)(!1);if(e.type!==`input_image`&&e.type!==`output_image`)return null;let o=e.image_url;return n?(0,K.jsx)(`div`,{className:`my-2 p-3 border rounded-lg bg-muted ${t||``}`,children:(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-sm text-muted-foreground`,children:[(0,K.jsx)(Uu,{className:`h-4 w-4`}),(0,K.jsx)(`span`,{children:`Image could not be loaded`})]})}):(0,K.jsxs)(`div`,{className:`my-2 ${t||``}`,children:[(0,K.jsx)(`img`,{src:o,alt:`Uploaded image`,className:`rounded-lg border max-w-full transition-all cursor-pointer ${i?`max-h-none`:`max-h-64`}`,onClick:()=>a(!i),onError:()=>r(!0)}),i&&(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground mt-1`,children:`Click to collapse`})]})}function gv(e,t){let[n,r]=(0,y.useState)(null);return(0,y.useEffect)(()=>{if(!e){r(null);return}try{let n;if(e.startsWith(`data:`)){let t=e.split(`,`);if(t.length!==2){r(null);return}n=t[1]}else n=e;let i=atob(n),a=new Uint8Array(i.length);for(let e=0;e{URL.revokeObjectURL(s)}}catch(e){console.error(`Failed to convert base64 to blob URL:`,e),r(null)}},[e,t]),n}function _v({content:e,className:t}){let[n,r]=(0,y.useState)(!0),i=e.type===`input_file`||e.type===`output_file`,a=i?e.file_url||e.file_data:void 0,o=i?e.filename||`file`:void 0,s=o?.toLowerCase().endsWith(`.pdf`)||a?.includes(`application/pdf`),c=o?.toLowerCase().match(/\.(mp3|wav|m4a|ogg|flac|aac)$/),l=gv(i&&s?e.file_data||e.file_url:void 0,`application/pdf`);if(!i)return null;let u=l||a;return s&&a?(0,K.jsxs)(`div`,{className:`my-2 ${t||``}`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 mb-2 px-1`,children:[(0,K.jsx)(Uu,{className:`h-4 w-4 text-red-500`}),(0,K.jsx)(`span`,{className:`text-sm font-medium truncate flex-1`,children:o}),(0,K.jsx)(`button`,{onClick:()=>r(!n),className:`text-xs text-muted-foreground hover:text-foreground flex items-center gap-1`,children:n?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(su,{className:`h-3 w-3`}),`Collapse`]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(du,{className:`h-3 w-3`}),`Expand`]})})]}),n&&(0,K.jsxs)(`div`,{className:`border rounded-lg p-6 bg-muted/50 flex flex-col items-center justify-center gap-4`,children:[(0,K.jsx)(Uu,{className:`h-16 w-16 text-red-400`}),(0,K.jsxs)(`div`,{className:`text-center`,children:[(0,K.jsx)(`p`,{className:`text-sm font-medium mb-1`,children:o}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`PDF Document`})]}),(0,K.jsxs)(`div`,{className:`flex gap-3`,children:[(0,K.jsx)(`button`,{onClick:()=>{u&&window.open(u,`_blank`)},className:`text-sm bg-primary text-primary-foreground hover:bg-primary/90 flex items-center gap-2 px-4 py-2 rounded-md transition-colors`,children:`Open in new tab`}),(0,K.jsxs)(`a`,{href:u||a,download:o,className:`text-sm text-foreground hover:bg-accent flex items-center gap-2 px-4 py-2 border rounded-md transition-colors`,children:[(0,K.jsx)(Lu,{className:`h-4 w-4`}),`Download`]})]})]})]}):c&&a?(0,K.jsxs)(`div`,{className:`my-2 p-3 border rounded-lg ${t||``}`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 mb-2`,children:[(0,K.jsx)(xd,{className:`h-4 w-4 text-muted-foreground`}),(0,K.jsx)(`span`,{className:`text-sm font-medium`,children:o})]}),(0,K.jsxs)(`audio`,{controls:!0,className:`w-full`,children:[(0,K.jsx)(`source`,{src:a}),`Your browser does not support audio playback.`]})]}):(0,K.jsx)(`div`,{className:`my-2 p-3 border rounded-lg bg-muted ${t||``}`,children:(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(Uu,{className:`h-4 w-4 text-muted-foreground`}),(0,K.jsx)(`span`,{className:`text-sm`,children:o})]}),a&&(0,K.jsxs)(`a`,{href:a,download:o,className:`text-xs text-primary hover:underline flex items-center gap-1`,children:[(0,K.jsx)(Lu,{className:`h-3 w-3`}),`Download`]})]})})}function vv({content:e,className:t}){let[n,r]=(0,y.useState)(!1);if(e.type!==`output_data`)return null;let i=e.data,a=e.mime_type,o=e.description,s=i;try{let e=JSON.parse(i);s=JSON.stringify(e,null,2)}catch{}return(0,K.jsxs)(`div`,{className:`my-2 p-3 border rounded-lg bg-muted ${t||``}`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 cursor-pointer`,onClick:()=>r(!n),children:[(0,K.jsx)(Uu,{className:`h-4 w-4 text-muted-foreground`}),(0,K.jsx)(`span`,{className:`text-sm font-medium`,children:o||`Data Output`}),(0,K.jsx)(`span`,{className:`text-xs text-muted-foreground ml-auto`,children:a}),n?(0,K.jsx)(su,{className:`h-4 w-4 text-muted-foreground`}):(0,K.jsx)(du,{className:`h-4 w-4 text-muted-foreground`})]}),n&&(0,K.jsx)(`pre`,{className:`mt-2 text-xs overflow-auto max-h-64 bg-background p-2 rounded border font-mono`,children:s})]})}function yv({content:e,className:t}){let[n,r]=(0,y.useState)(!1);if(e.type!==`function_approval_request`)return null;let{status:i,function_call:a}=e,o={pending:{icon:Tu,label:`Awaiting approval`,iconClass:`text-amber-600 dark:text-amber-400`},approved:{icon:ru,label:`Approved`,iconClass:`text-green-600 dark:text-green-400`},rejected:{icon:mf,label:`Rejected`,iconClass:`text-red-600 dark:text-red-400`}}[i],s=o.icon,c;try{c=typeof a.arguments==`string`?JSON.parse(a.arguments):a.arguments}catch{c=a.arguments}return(0,K.jsxs)(`div`,{className:t,children:[(0,K.jsxs)(`button`,{onClick:()=>r(!n),className:`flex items-center gap-2 px-2 py-1 text-xs rounded hover:bg-muted/50 transition-colors w-fit`,children:[(0,K.jsx)(s,{className:`h-3 w-3 ${o.iconClass}`}),(0,K.jsx)(`span`,{className:`text-muted-foreground font-mono`,children:a.name}),(0,K.jsx)(`span`,{className:`text-xs ${o.iconClass}`,children:o.label}),n?(0,K.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`▼`}):(0,K.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`▶`})]}),n&&(0,K.jsx)(`div`,{className:`ml-5 mt-1 text-xs font-mono text-muted-foreground border-l-2 border-muted pl-3`,children:(0,K.jsx)(`pre`,{className:`whitespace-pre-wrap break-all`,children:JSON.stringify(c,null,2)})})]})}function bv({content:e,className:t,isStreaming:n}){switch(e.type){case`text`:case`input_text`:case`output_text`:case`refusal`:return(0,K.jsx)(mv,{content:e,className:t,isStreaming:n});case`input_image`:case`output_image`:return(0,K.jsx)(hv,{content:e,className:t});case`input_file`:case`output_file`:return(0,K.jsx)(_v,{content:e,className:t});case`output_data`:return(0,K.jsx)(vv,{content:e,className:t});case`function_approval_request`:return(0,K.jsx)(yv,{content:e,className:t});default:return null}}function xv({name:e,arguments:t,className:n}){let[r,i]=(0,y.useState)(!1),a;try{a=typeof t==`string`?JSON.parse(t):t}catch{a=t}return(0,K.jsxs)(`div`,{className:`my-2 p-3 border rounded bg-blue-50 dark:bg-blue-950/20 ${n||``}`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 cursor-pointer`,onClick:()=>i(!r),children:[(0,K.jsx)(ku,{className:`h-4 w-4 text-blue-600 dark:text-blue-400`}),(0,K.jsxs)(`span`,{className:`text-sm font-medium text-blue-800 dark:text-blue-300`,children:[`Function Call: `,e]}),r?(0,K.jsx)(su,{className:`h-4 w-4 text-blue-600 dark:text-blue-400 ml-auto`}):(0,K.jsx)(du,{className:`h-4 w-4 text-blue-600 dark:text-blue-400 ml-auto`})]}),r&&(0,K.jsxs)(`div`,{className:`mt-2 text-xs font-mono bg-white dark:bg-gray-900 p-2 rounded border`,children:[(0,K.jsx)(`div`,{className:`text-blue-600 dark:text-blue-400 mb-1`,children:`Arguments:`}),(0,K.jsx)(`pre`,{className:`whitespace-pre-wrap`,children:JSON.stringify(a,null,2)})]})]})}function Sv({output:e,call_id:t,className:n}){let[r,i]=(0,y.useState)(!1),a;try{a=typeof e==`string`?JSON.parse(e):e}catch{a=e}return(0,K.jsxs)(`div`,{className:`my-2 p-3 border rounded bg-green-50 dark:bg-green-950/20 ${n||``}`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 cursor-pointer`,onClick:()=>i(!r),children:[(0,K.jsx)(ku,{className:`h-4 w-4 text-green-600 dark:text-green-400`}),(0,K.jsx)(`span`,{className:`text-sm font-medium text-green-800 dark:text-green-300`,children:`Function Result`}),r?(0,K.jsx)(su,{className:`h-4 w-4 text-green-600 dark:text-green-400 ml-auto`}):(0,K.jsx)(du,{className:`h-4 w-4 text-green-600 dark:text-green-400 ml-auto`})]}),r&&(0,K.jsxs)(`div`,{className:`mt-2 text-xs font-mono bg-white dark:bg-gray-900 p-2 rounded border`,children:[(0,K.jsx)(`div`,{className:`text-green-600 dark:text-green-400 mb-1`,children:`Output:`}),(0,K.jsx)(`pre`,{className:`whitespace-pre-wrap`,children:JSON.stringify(a,null,2)}),(0,K.jsxs)(`div`,{className:`text-gray-500 text-[10px] mt-2`,children:[`Call ID: `,t]})]})]})}function Cv({item:e,className:t}){if(e.type===`message`){let n=e.status===`in_progress`,r=e.content.length>0;return(0,K.jsxs)(`div`,{className:t,children:[e.content.map((e,t)=>(0,K.jsx)(bv,{content:e,className:t>0?`mt-2`:``,isStreaming:n},t)),n&&!r&&(0,K.jsx)(`div`,{className:`flex items-center space-x-1`,children:(0,K.jsxs)(`div`,{className:`flex space-x-1`,children:[(0,K.jsx)(`div`,{className:`h-2 w-2 animate-bounce rounded-full bg-current [animation-delay:-0.3s]`}),(0,K.jsx)(`div`,{className:`h-2 w-2 animate-bounce rounded-full bg-current [animation-delay:-0.15s]`}),(0,K.jsx)(`div`,{className:`h-2 w-2 animate-bounce rounded-full bg-current`})]})})]})}return e.type===`function_call`?(0,K.jsx)(xv,{name:e.name,arguments:e.arguments,className:t}):e.type===`function_call_output`?(0,K.jsx)(Sv,{output:e.output,call_id:e.call_id,className:t}):null}var wv=Object.defineProperty,Tv=(e,t)=>wv(e,`name`,{value:t,configurable:!0}),Ev={ItemAligned:`item-aligned`,Popper:`popper`},Dv={LTR:`ltr`,RTL:`rtl`},Ov=[` `,`Enter`,`ArrowUp`,`ArrowDown`],kv=[` `,`Enter`],Av=`Select`,[jv,Mv,Nv]=hn(Av),[Pv,Fv]=Kt(Av,[Nv,Ja]),Iv=Ja(),[Lv,Rv]=Pv(Av),[zv,Bv]=Pv(Av);function Vv(e){let{__scopeSelect:t,children:n,open:r,defaultOpen:i,onOpenChange:a,value:o,defaultValue:s,onValueChange:c,dir:l,name:u,autoComplete:d,disabled:f,required:p,form:m,internal_do_not_use_render:h}=e,g=Iv(t),[_,v]=y.useState(null),[b,x]=y.useState(null),[S,C]=y.useState(!1),w=jn(l),[T,E]=rn({prop:r,defaultProp:i??!1,onChange:a,caller:Av}),[D,O]=rn({prop:o,defaultProp:s,onChange:c,caller:Av}),k=y.useRef(null),A=y.useRef(!1),[j,M]=y.useState(null),N=Tv(e=>{M({value:e,hasConsumerStoppedPropagation:A.current}),O(e)},`handleUserSelect`),P=y.useRef(D);y.useEffect(()=>{let e=m?_?.ownerDocument.getElementById(m):_?.form;if(e instanceof HTMLFormElement){let t=Tv(()=>O(P.current),`reset`);return e.addEventListener(`reset`,t),()=>e.removeEventListener(`reset`,t)}},[m,_,O]);let F=!_||!!m||!!_.closest(`form`),[I,L]=y.useState(new Set),R=Or(),z=Array.from(I).map(e=>e.props.value).join(`;`),B=y.useCallback(e=>{L(t=>new Set(t).add(e))},[]),ee=y.useCallback(e=>{L(t=>{let n=new Set(t);return n.delete(e),n})},[]),V={required:p,trigger:_,onTriggerChange:v,valueNode:b,onValueNodeChange:x,valueNodeHasChildren:S,onValueNodeHasChildrenChange:C,contentId:R,value:D,onValueChange:O,hasConsumerStoppedPropagationRef:A,userSelection:j,onUserSelect:N,open:T,onOpenChange:E,dir:w,triggerPointerDownPosRef:k,disabled:f,name:u,autoComplete:d,form:m,nativeOptions:I,nativeSelectKey:z,isFormControl:F};return(0,K.jsx)(Za,{...g,children:(0,K.jsx)(Lv,{scope:t,...V,children:(0,K.jsx)(jv.Provider,{scope:t,children:(0,K.jsx)(zv,{scope:t,onNativeOptionAdd:B,onNativeOptionRemove:ee,children:Oy(h)?h(V):n})})})})}Tv(Vv,`SelectProvider`);var Hv=Tv(e=>{let{__scopeSelect:t,children:n,...r}=e;return(0,K.jsx)(Vv,{__scopeSelect:t,...r,internal_do_not_use_render:({isFormControl:e})=>(0,K.jsxs)(K.Fragment,{children:[n,e?(0,K.jsx)(Dy,{__scopeSelect:t}):null]})})},`Select`),Uv=`SelectTrigger`,Wv=y.forwardRef(Tv(function(e,t){let{__scopeSelect:n,disabled:r=!1,...i}=e,a=Iv(n),o=Rv(Uv,n),s=o.disabled||r,c=T(t,o.onTriggerChange),l=Mv(n),u=y.useRef(`touch`),[d,f,p]=Ay(e=>{let t=l().filter(e=>!e.disabled),n=jy(t,e,t.find(e=>e.value===o.value));n!==void 0&&o.onUserSelect(n.value)}),m=Tv(e=>{s||(o.onOpenChange(!0),p()),e&&(o.triggerPointerDownPosRef.current={x:Math.round(e.pageX),y:Math.round(e.pageY)})},`handleOpen`);return(0,K.jsx)($a,{asChild:!0,...a,children:(0,K.jsx)(Y.button,{type:`button`,role:`combobox`,"aria-controls":o.open?o.contentId:void 0,"aria-expanded":o.open,"aria-required":o.required,"aria-autocomplete":`none`,dir:o.dir,"data-state":o.open?`open`:`closed`,disabled:s,"data-disabled":s?``:void 0,"data-placeholder":ky(o.value)?``:void 0,...i,ref:c,onClick:J(i.onClick,e=>{e.currentTarget.focus(),u.current!==`mouse`&&m(e)}),onPointerDown:J(i.onPointerDown,e=>{u.current=e.pointerType;let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),e.button===0&&e.ctrlKey===!1&&e.pointerType===`mouse`&&(m(e),e.preventDefault())}),onKeyDown:J(i.onKeyDown,e=>{let t=d.current!==``;!(e.ctrlKey||e.altKey||e.metaKey)&&e.key.length===1&&(o.hasConsumerStoppedPropagationRef.current=e.isPropagationStopped(),f(e.key)),!(t&&e.key===` `)&&Ov.includes(e.key)&&(m(),e.preventDefault())})})})},`SelectTrigger`)),Gv=`SelectValue`,Kv=y.forwardRef(Tv(function(e,t){let{__scopeSelect:n,className:r,style:i,children:a,placeholder:o=``,...s}=e,c=Rv(Gv,n),{onValueNodeHasChildrenChange:l}=c,u=a!==void 0,d=T(t,c.onValueNodeChange);Jt(()=>{l(u)},[l,u]);let f=ky(c.value);return(0,K.jsx)(Y.span,{...s,asChild:!f&&s.asChild,ref:d,style:{pointerEvents:`none`},children:(0,K.jsx)(y.Fragment,{children:f?o:a},f?`placeholder`:`value`)})},`SelectValue`)),qv=y.forwardRef(Tv(function(e,t){let{__scopeSelect:n,children:r,...i}=e;return(0,K.jsx)(Y.span,{"aria-hidden":!0,...i,ref:t,children:r||`▼`})},`SelectIcon`)),[Jv,Yv]=Pv(`SelectPortal`,{forceMount:void 0}),Xv=Tv(e=>{let{__scopeSelect:t,forceMount:n,...r}=e;return(0,K.jsx)(Jv,{scope:e.__scopeSelect,forceMount:n,children:(0,K.jsx)(co,{asChild:!0,...r})})},`SelectPortal`),Zv=`SelectContent`,Qv=y.forwardRef(Tv(function(e,t){let n=Yv(Zv,e.__scopeSelect),{forceMount:r=n.forceMount,...i}=e,a=Rv(Zv,e.__scopeSelect),[o,s]=y.useState();return Jt(()=>{s(new DocumentFragment)},[]),(0,K.jsx)(po,{present:r||a.open,children:({present:e})=>e?(0,K.jsx)(iy,{...i,ref:t}):(0,K.jsx)($v,{...i,fragment:o})})},`SelectContent`)),$v=y.forwardRef(Tv(function(e,t){let{__scopeSelect:n,children:r,fragment:i}=e;return i?ln.createPortal((0,K.jsx)(ty,{scope:n,children:(0,K.jsx)(jv.Slot,{scope:n,children:(0,K.jsx)(`div`,{ref:t,children:r})})}),i):null},`SelectContentFragment`)),ey=10,[ty,ny]=Pv(Zv),ry=O(`SelectContent.RemoveScroll`),iy=y.forwardRef(Tv(function(e,t){let{__scopeSelect:n}=e,{position:r=Ev.ItemAligned,onCloseAutoFocus:i,onEscapeKeyDown:a,onPointerDownOutside:o,side:s,sideOffset:c,align:l,alignOffset:u,arrowPadding:d,collisionBoundary:f,collisionPadding:p,sticky:m,hideWhenDetached:h,avoidCollisions:g,..._}=e,v=Rv(Zv,n),[b,x]=y.useState(null),[S,C]=y.useState(null),w=T(t,x),[E,D]=y.useState(null),[O,k]=y.useState(null),A=Mv(n),[j,M]=y.useState(!1),N=y.useRef(!1),P=y.useRef(!1),F=y.useRef(!1);y.useEffect(()=>{if(b)return is(b)},[b]),tr();let I=y.useCallback(e=>{let[t,...n]=A().map(e=>e.ref.current),[r]=n.slice(-1),i=document.activeElement;for(let n of e)if(n===i||(n?.scrollIntoView({block:`nearest`}),n===t&&S&&(S.scrollTop=0),n===r&&S&&(S.scrollTop=S.scrollHeight),n?.focus(),document.activeElement!==i))return},[A,S]),L=y.useCallback(()=>I([E,b]),[I,E,b]);y.useEffect(()=>{j&&L()},[j,L]);let{onOpenChange:R,triggerPointerDownPosRef:z}=v;y.useEffect(()=>{if(b){let e={x:0,y:0},t=Tv(t=>{e={x:Math.abs(Math.round(t.pageX)-(z.current?.x??0)),y:Math.abs(Math.round(t.pageY)-(z.current?.y??0))}},`handlePointerMove`),n=Tv(n=>{e.x<=10&&e.y<=10?n.preventDefault():n.composedPath().includes(b)||R(!1),document.removeEventListener(`pointermove`,t),z.current=null},`handlePointerUp`);return z.current!==null&&(document.addEventListener(`pointermove`,t),document.addEventListener(`pointerup`,n,{capture:!0,once:!0})),()=>{document.removeEventListener(`pointermove`,t),document.removeEventListener(`pointerup`,n,{capture:!0})}}},[b,R,z]),y.useEffect(()=>{let e=Tv(()=>R(!1),`close`);return window.addEventListener(`blur`,e),window.addEventListener(`resize`,e),()=>{window.removeEventListener(`blur`,e),window.removeEventListener(`resize`,e)}},[R]);let[B,ee]=Ay(e=>{let t=A().filter(e=>!e.disabled),n=jy(t,e,t.find(e=>e.ref.current===document.activeElement));n&&setTimeout(()=>n.ref.current?.focus())}),V=y.useCallback((e,t,n)=>{let r=!P.current;r&&(P.current=!0);let i=!N.current&&!n;v.value!==void 0&&v.value===t||i?(D(e),i&&(N.current=!0)):r&&D(e)},[v.value]),H=y.useCallback(()=>b?.focus(),[b]),te=y.useCallback((e,t,n)=>{if(!e)return;let r=!F.current;r&&(F.current=!0);let i=!N.current&&!n;(v.value!==void 0&&v.value===t||i||r)&&k(e)},[v.value]),ne=r===Ev.Popper?oy:ay,re=ne===oy?{side:s,sideOffset:c,align:l,alignOffset:u,arrowPadding:d,collisionBoundary:f,collisionPadding:p,sticky:m,hideWhenDetached:h,avoidCollisions:g}:{};return(0,K.jsx)(ty,{scope:n,content:b,viewport:S,onViewportChange:C,itemRefCallback:V,selectedItem:E,onItemLeave:H,itemTextRefCallback:te,focusSelectedItem:L,selectedItemText:O,position:r,isPositioned:j,searchRef:B,children:(0,K.jsx)(fc,{as:ry,allowPinchZoom:!0,children:(0,K.jsx)(cr,{asChild:!0,trapped:v.open,onMountAutoFocus:e=>{e.preventDefault()},onUnmountAutoFocus:J(i,e=>{v.trigger?.focus({preventScroll:!0}),e.preventDefault()}),children:(0,K.jsx)(Un,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:a,onPointerDownOutside:o,onFocusOutside:e=>e.preventDefault(),onDismiss:()=>v.onOpenChange(!1),children:(0,K.jsx)(ne,{role:`listbox`,id:v.contentId,"data-state":v.open?`open`:`closed`,dir:v.dir,onContextMenu:e=>e.preventDefault(),..._,...re,onPlaced:()=>M(!0),ref:w,style:{display:`flex`,flexDirection:`column`,outline:`none`,..._.style},onKeyDown:J(_.onKeyDown,e=>{let t=e.ctrlKey||e.altKey||e.metaKey;if(e.key===`Tab`&&e.preventDefault(),!t&&e.key.length===1&&ee(e.key),[`ArrowUp`,`ArrowDown`,`Home`,`End`].includes(e.key)){let t=A().filter(e=>!e.disabled).map(e=>e.ref.current);if([`ArrowUp`,`End`].includes(e.key)&&(t=t.slice().reverse()),[`ArrowUp`,`ArrowDown`].includes(e.key)){let n=e.target,r=t.indexOf(n);t=t.slice(r+1)}setTimeout(()=>I(t)),e.preventDefault()}})})})})})})},`SelectContentImpl`)),ay=y.forwardRef(Tv(function(e,t){let{__scopeSelect:n,onPlaced:r,...i}=e,a=Rv(Zv,n),o=ny(Zv,n),[s,c]=y.useState(null),[l,u]=y.useState(null),d=T(t,u),f=Mv(n),p=y.useRef(!1),m=y.useRef(!0),{viewport:h,selectedItem:g,selectedItemText:_,focusSelectedItem:v}=o,b=y.useCallback(()=>{if(a.trigger&&a.valueNode&&s&&l&&h&&g&&_){let e=a.trigger.getBoundingClientRect(),t=l.getBoundingClientRect(),n=a.valueNode.getBoundingClientRect(),i=_.getBoundingClientRect();if(a.dir!==Dv.RTL){let r=i.left-t.left,a=n.left-r,o=e.left-a,c=e.width+o,l=Math.max(c,t.width),u=window.innerWidth-ey,d=Sp(a,[ey,Math.max(ey,u-l)]);s.style.minWidth=c+`px`,s.style.left=d+`px`}else{let r=t.right-i.right,a=window.innerWidth-n.right-r,o=window.innerWidth-e.right-a,c=e.width+o,l=Math.max(c,t.width),u=window.innerWidth-ey,d=Sp(a,[ey,Math.max(ey,u-l)]);s.style.minWidth=c+`px`,s.style.right=d+`px`}let o=f(),c=window.innerHeight-ey*2,u=h.scrollHeight,d=window.getComputedStyle(l),m=parseInt(d.borderTopWidth,10),v=parseInt(d.paddingTop,10),y=parseInt(d.borderBottomWidth,10),b=parseInt(d.paddingBottom,10),x=m+v+u+b+y,S=Math.min(g.offsetHeight*5,x),C=window.getComputedStyle(h),w=parseInt(C.paddingTop,10),T=parseInt(C.paddingBottom,10),E=e.top+e.height/2-ey,D=c-E,O=g.offsetHeight/2,k=g.offsetTop+O,A=m+v+k,j=x-A;if(A<=E){let e=o.length>0&&g===o[o.length-1].ref.current;s.style.bottom=`0px`;let t=l.clientHeight-h.offsetTop-h.offsetHeight,n=A+Math.max(D,O+(e?T:0)+t+y);s.style.height=n+`px`}else{let e=o.length>0&&g===o[0].ref.current;s.style.top=`0px`;let t=Math.max(E,m+h.offsetTop+(e?w:0)+O)+j;s.style.height=t+`px`,h.scrollTop=A-E+h.offsetTop}s.style.margin=`${ey}px 0`,s.style.minHeight=S+`px`,s.style.maxHeight=c+`px`,r?.(),requestAnimationFrame(()=>p.current=!0)}},[f,a.trigger,a.valueNode,s,l,h,g,_,a.dir,r]);Jt(()=>b(),[b]);let[x,S]=y.useState();Jt(()=>{l&&S(window.getComputedStyle(l).zIndex)},[l]);let C=y.useCallback(e=>{e&&m.current===!0&&(b(),v?.(),m.current=!1)},[b,v]);return(0,K.jsx)(sy,{scope:n,contentWrapper:s,shouldExpandOnScrollRef:p,onScrollButtonChange:C,children:(0,K.jsx)(`div`,{ref:c,style:{display:`flex`,flexDirection:`column`,position:`fixed`,zIndex:x},children:(0,K.jsx)(Y.div,{...i,ref:d,style:{boxSizing:`border-box`,maxHeight:`100%`,...i.style}})})})},`SelectItemAlignedPosition`)),oy=y.forwardRef(Tv(function(e,t){let{__scopeSelect:n,align:r=`start`,collisionPadding:i=ey,...a}=e,o=Iv(n);return(0,K.jsx)(ro,{...o,...a,ref:t,align:r,collisionPadding:i,style:{boxSizing:`border-box`,...a.style,"--radix-select-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-select-content-available-width":`var(--radix-popper-available-width)`,"--radix-select-content-available-height":`var(--radix-popper-available-height)`,"--radix-select-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-select-trigger-height":`var(--radix-popper-anchor-height)`}})},`SelectPopperPosition`)),[sy,cy]=Pv(Zv,{}),ly=`SelectViewport`,uy=y.forwardRef(Tv(function(e,t){let{__scopeSelect:n,nonce:r,...i}=e,a=ny(ly,n),o=cy(ly,n),s=T(t,a.onViewportChange),c=y.useRef(0);return(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`style`,{dangerouslySetInnerHTML:{__html:`[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}`},nonce:r}),(0,K.jsx)(jv.Slot,{scope:n,children:(0,K.jsx)(Y.div,{"data-radix-select-viewport":``,role:`presentation`,...i,ref:s,style:{position:`relative`,flex:1,overflow:`hidden auto`,...i.style},onScroll:J(i.onScroll,e=>{let t=e.currentTarget,{contentWrapper:n,shouldExpandOnScrollRef:r}=o;if(r?.current&&n){let e=Math.abs(c.current-t.scrollTop);if(e>0){let r=window.innerHeight-ey*2,i=parseFloat(n.style.minHeight),a=parseFloat(n.style.height),o=Math.max(i,a);if(o0?s:0,n.style.justifyContent=`flex-end`)}}}c.current=t.scrollTop})})})]})},`SelectViewport`)),[dy,fy]=Pv(`SelectGroup`),py=`SelectItem`,[my,hy]=Pv(py),gy=y.forwardRef(Tv(function(e,t){let{__scopeSelect:n,value:r,disabled:i=!1,textValue:a,...o}=e,s=Rv(py,n),c=ny(py,n),l=s.value===r,[u,d]=y.useState(a??``),[f,p]=y.useState(!1),m=T(t,Fn(e=>c.itemRefCallback?.(e,r,i))),h=Or(),g=y.useRef(`touch`);function _(e){s.hasConsumerStoppedPropagationRef.current=e.isPropagationStopped(),s.onUserSelect(r),s.onOpenChange(!1)}return Tv(_,`handleSelect`),(0,K.jsx)(my,{scope:n,value:r,disabled:i,textId:h,isSelected:l,onItemTextChange:y.useCallback(e=>{d(t=>t||(e?.textContent??``).trim())},[]),children:(0,K.jsx)(jv.ItemSlot,{scope:n,value:r,disabled:i,textValue:u,children:(0,K.jsx)(Y.div,{role:`option`,"aria-labelledby":h,"data-highlighted":f?``:void 0,"aria-selected":l&&f,"data-state":l?`checked`:`unchecked`,"aria-disabled":i||void 0,"data-disabled":i?``:void 0,tabIndex:i?void 0:-1,...o,ref:m,onFocus:J(o.onFocus,()=>p(!0)),onBlur:J(o.onBlur,()=>p(!1)),onClick:J(o.onClick,e=>{i||g.current!==`mouse`&&_(e)}),onPointerUp:J(o.onPointerUp,e=>{i||g.current===`mouse`&&_(e)}),onPointerDown:J(o.onPointerDown,e=>{g.current=e.pointerType}),onPointerMove:J(o.onPointerMove,e=>{g.current=e.pointerType,i?c.onItemLeave?.():g.current===`mouse`&&e.currentTarget.focus({preventScroll:!0})}),onPointerLeave:J(o.onPointerLeave,e=>{e.currentTarget===document.activeElement&&c.onItemLeave?.()}),onKeyDown:J(o.onKeyDown,e=>{i||e.target!==e.currentTarget||(c.searchRef?.current===``||e.key!==` `)&&(kv.includes(e.key)&&_(e),e.key===` `&&e.preventDefault())})})})})},`SelectItem`)),_y=`SelectItemText`,vy=y.forwardRef(Tv(function(e,t){let{__scopeSelect:n,className:r,style:i,...a}=e,o=Rv(_y,n),s=ny(_y,n),c=hy(_y,n),l=Bv(_y,n),[u,d]=y.useState(null),f=Fn(e=>s.itemTextRefCallback?.(e,c.value,c.disabled)),p=T(t,d,c.onItemTextChange,f),m=u?.textContent,h=y.useMemo(()=>(0,K.jsx)(`option`,{value:c.value,disabled:c.disabled,children:m},c.value),[c.disabled,c.value,m]),{onNativeOptionAdd:g,onNativeOptionRemove:_}=l;return Jt(()=>(g(h),()=>_(h)),[g,_,h]),(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(Y.span,{id:c.textId,...a,ref:p}),c.isSelected&&o.valueNode&&!o.valueNodeHasChildren&&!ky(o.value)?ln.createPortal(a.children,o.valueNode):null]})},`SelectItemText`)),yy=`SelectItemIndicator`,by=y.forwardRef(Tv(function(e,t){let{__scopeSelect:n,...r}=e;return hy(yy,n).isSelected?(0,K.jsx)(Y.span,{"aria-hidden":!0,...r,ref:t}):null},`SelectItemIndicator`)),xy=`SelectScrollUpButton`,Sy=y.forwardRef(Tv(function(e,t){let n=ny(xy,e.__scopeSelect),r=cy(xy,e.__scopeSelect),[i,a]=y.useState(!1),o=T(t,r.onScrollButtonChange);return Jt(()=>{if(n.viewport&&n.isPositioned){let e=function(){let e=t.scrollTop>0;a(e)};Tv(e,`handleScroll`);let t=n.viewport;return e(),t.addEventListener(`scroll`,e),()=>t.removeEventListener(`scroll`,e)}},[n.viewport,n.isPositioned]),i?(0,K.jsx)(Ty,{...e,ref:o,onAutoScroll:()=>{let{viewport:e,selectedItem:t}=n;e&&t&&(e.scrollTop-=t.offsetHeight)}}):null},`SelectScrollUpButton`)),Cy=`SelectScrollDownButton`,wy=y.forwardRef(Tv(function(e,t){let n=ny(Cy,e.__scopeSelect),r=cy(Cy,e.__scopeSelect),[i,a]=y.useState(!1),o=T(t,r.onScrollButtonChange);return Jt(()=>{if(n.viewport&&n.isPositioned){let e=function(){let e=t.scrollHeight-t.clientHeight,n=Math.ceil(t.scrollTop)t.removeEventListener(`scroll`,e)}},[n.viewport,n.isPositioned]),i?(0,K.jsx)(Ty,{...e,ref:o,onAutoScroll:()=>{let{viewport:e,selectedItem:t}=n;e&&t&&(e.scrollTop+=t.offsetHeight)}}):null},`SelectScrollDownButton`)),Ty=y.forwardRef(Tv(function(e,t){let{__scopeSelect:n,onAutoScroll:r,...i}=e,a=ny(`SelectScrollButton`,n),o=y.useRef(null),s=Mv(n),c=y.useCallback(()=>{o.current!==null&&(window.clearInterval(o.current),o.current=null)},[]);return y.useEffect(()=>()=>c(),[c]),Jt(()=>{s().find(e=>e.ref.current===document.activeElement)?.ref.current?.scrollIntoView({block:`nearest`})},[s]),(0,K.jsx)(Y.div,{"aria-hidden":!0,...i,ref:t,style:{flexShrink:0,...i.style},onPointerDown:J(i.onPointerDown,()=>{o.current===null&&(o.current=window.setInterval(r,50))}),onPointerMove:J(i.onPointerMove,()=>{a.onItemLeave?.(),o.current===null&&(o.current=window.setInterval(r,50))}),onPointerLeave:J(i.onPointerLeave,()=>{c()})})},`SelectScrollButtonImpl`)),Ey=`SelectBubbleInput`,Dy=y.forwardRef(Tv(function({__scopeSelect:e,...t},n){let r=Rv(Ey,e),{value:i,onValueChange:a,required:o,disabled:s,name:c,autoComplete:l,form:u,userSelection:d}=r,{nativeOptions:f,nativeSelectKey:p}=r,m=y.useRef(null),h=T(n,m),g=i??``,_=y.useRef(g),v=y.useRef(d),b=y.useRef(!1),x=Array.from(f).some(e=>(e.props.value??``)===``);return y.useEffect(()=>{let e=m.current;if(!e)return;let t=window.HTMLSelectElement.prototype,n=Object.getOwnPropertyDescriptor(t,`value`).set,r=d!==null&&d!==v.current;v.current=d;let i=_.current!==g;_.current=g;let a=r&&i;if(r&&!i&&d.value!==g&&!d.hasConsumerStoppedPropagation&&n){b.current=!0;try{n.call(e,d.value),e.dispatchEvent(new Event(`change`,{bubbles:!0}))}finally{b.current=!1,n.call(e,g)}return}let o=a&&!d.hasConsumerStoppedPropagation;if(i&&n){let t=new Event(`change`,{bubbles:o});n.call(e,g),e.dispatchEvent(t)}},[g,d]),(0,K.jsxs)(Y.select,{"aria-hidden":!0,required:o,tabIndex:-1,name:c,autoComplete:l,disabled:s,form:u,onChange:e=>{b.current||a(e.target.value)},...t,style:{...ah,...t.style},ref:h,defaultValue:g,children:[ky(i)&&!x?(0,K.jsx)(`option`,{value:``}):null,Array.from(f)]},p)},`SelectBubbleInput`));function Oy(e){return typeof e==`function`}Tv(Oy,`isFunction`);function ky(e){return e===``||e===void 0}Tv(ky,`shouldShowPlaceholder`);function Ay(e){let t=Fn(e),n=y.useRef(``),r=y.useRef(0),i=y.useCallback(e=>{let i=n.current+e;t(i);function a(e){n.current=e,window.clearTimeout(r.current),e!==``&&(r.current=window.setTimeout(()=>a(``),1e3))}Tv(a,`updateSearch`),a(i)},[t]),a=y.useCallback(()=>{n.current=``,window.clearTimeout(r.current)},[]);return y.useEffect(()=>()=>window.clearTimeout(r.current),[]),[n,i,a]}Tv(Ay,`useTypeaheadSearch`);function jy(e,t,n){let r=t.length>1&&Array.from(t).every(e=>e===t[0])?t[0]:t,i=n?e.indexOf(n):-1,a=My(e,Math.max(i,0));r.length===1&&(a=a.filter(e=>e!==n));let o=a.find(e=>e.textValue.toLowerCase().startsWith(r.toLowerCase()));return o===n?void 0:o}Tv(jy,`findNextItem`);function My(e,t){return e.map((n,r)=>e[(t+r)%e.length])}Tv(My,`wrapArray`);function Ny({...e}){return(0,K.jsx)(Hv,{"data-slot":`select`,...e})}function Py({...e}){return(0,K.jsx)(Kv,{"data-slot":`select-value`,...e})}function Fy({className:e,size:t=`default`,children:n,...r}){return(0,K.jsxs)(Wv,{"data-slot":`select-trigger`,"data-size":t,className:jt(`border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,e),...r,children:[n,(0,K.jsx)(qv,{asChild:!0,children:(0,K.jsx)(su,{className:`size-4 opacity-50`})})]})}function Iy({className:e,children:t,position:n=`popper`,...r}){return(0,K.jsx)(Xv,{children:(0,K.jsxs)(Qv,{"data-slot":`select-content`,className:jt(`bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border shadow-md`,n===`popper`&&`data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1`,e),position:n,...r,children:[(0,K.jsx)(Ry,{}),(0,K.jsx)(uy,{className:jt(`p-1`,n===`popper`&&`h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1`),children:t}),(0,K.jsx)(zy,{})]})})}function Ly({className:e,children:t,...n}){return(0,K.jsxs)(gy,{"data-slot":`select-item`,className:jt(`focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2`,e),...n,children:[(0,K.jsx)(`span`,{className:`absolute right-2 flex size-3.5 items-center justify-center`,children:(0,K.jsx)(by,{children:(0,K.jsx)(ru,{className:`size-4`})})}),(0,K.jsx)(vy,{children:t})]})}function Ry({className:e,...t}){return(0,K.jsx)(Sy,{"data-slot":`select-scroll-up-button`,className:jt(`flex cursor-default items-center justify-center py-1`,e),...t,children:(0,K.jsx)(pu,{className:`size-4`})})}function zy({className:e,...t}){return(0,K.jsx)(wy,{"data-slot":`select-scroll-down-button`,className:jt(`flex cursor-default items-center justify-center py-1`,e),...t,children:(0,K.jsx)(su,{className:`size-4`})})}function By({title:e,icon:t,children:n,className:r=``}){return(0,K.jsxs)(`div`,{className:`border rounded-lg p-4 bg-card ${r}`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 mb-3`,children:[t,(0,K.jsx)(`h3`,{className:`text-sm font-semibold text-foreground`,children:e})]}),(0,K.jsx)(`div`,{className:`text-sm text-muted-foreground`,children:n})]})}function Vy({agent:e,open:t,onOpenChange:n}){let r=e.source===`directory`?(0,K.jsx)(Gu,{className:`h-4 w-4 text-muted-foreground`}):e.source===`in_memory`?(0,K.jsx)(Fu,{className:`h-4 w-4 text-muted-foreground`}):(0,K.jsx)(qu,{className:`h-4 w-4 text-muted-foreground`}),i=e.source===`directory`?`Local`:e.source===`in_memory`?`In-Memory`:`Gallery`;return(0,K.jsx)(Og,{open:t,onOpenChange:n,children:(0,K.jsxs)(kg,{className:`max-w-4xl max-h-[90vh] flex flex-col`,children:[(0,K.jsxs)(Ag,{className:`px-6 pt-6 flex-shrink-0`,children:[(0,K.jsx)(jg,{children:`Agent Details`}),(0,K.jsx)(Ng,{onClose:()=>n(!1)})]}),(0,K.jsxs)(`div`,{className:`px-6 pb-6 overflow-y-auto flex-1`,children:[(0,K.jsxs)(`div`,{className:`mb-6`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-3 mb-2`,children:[(0,K.jsx)($l,{className:`h-6 w-6 text-primary`}),(0,K.jsx)(`h2`,{className:`text-xl font-semibold text-foreground`,children:e.name||e.id})]}),e.description&&(0,K.jsx)(`p`,{className:`text-muted-foreground`,children:e.description})]}),(0,K.jsx)(`div`,{className:`h-px bg-border mb-6`}),(0,K.jsxs)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 gap-4 mb-4`,children:[(e.model_id||e.chat_client_type)&&(0,K.jsx)(By,{title:`Model & Client`,icon:(0,K.jsx)($l,{className:`h-4 w-4 text-muted-foreground`}),children:(0,K.jsxs)(`div`,{className:`space-y-1`,children:[e.model_id&&(0,K.jsx)(`div`,{className:`font-mono text-foreground`,children:e.model_id}),e.chat_client_type&&(0,K.jsxs)(`div`,{className:`text-xs`,children:[`(`,e.chat_client_type,`)`]})]})}),(0,K.jsx)(By,{title:`Source`,icon:r,children:(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(`div`,{className:`text-foreground`,children:i}),e.module_path&&(0,K.jsx)(`div`,{className:`font-mono text-xs break-all`,children:e.module_path})]})}),(0,K.jsx)(By,{title:`Environment`,icon:e.has_env?(0,K.jsx)(Cu,{className:`h-4 w-4 text-orange-500`}):(0,K.jsx)(_u,{className:`h-4 w-4 text-green-500`}),className:`md:col-span-2`,children:(0,K.jsx)(`div`,{className:e.has_env?`text-orange-600 dark:text-orange-400`:`text-green-600 dark:text-green-400`,children:e.has_env?`Requires environment variables`:`No environment variables required`})})]}),e.instructions&&(0,K.jsx)(By,{title:`Instructions`,icon:(0,K.jsx)(Uu,{className:`h-4 w-4 text-muted-foreground`}),className:`mb-4`,children:(0,K.jsx)(`div`,{className:`text-sm text-foreground leading-relaxed whitespace-pre-wrap`,children:e.instructions})}),(0,K.jsxs)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 gap-4`,children:[e.tools&&e.tools.length>0&&(0,K.jsx)(By,{title:`Tools (${e.tools.length})`,icon:(0,K.jsx)(Cd,{className:`h-4 w-4 text-muted-foreground`}),children:(0,K.jsx)(`ul`,{className:`space-y-1`,children:e.tools.map((e,t)=>(0,K.jsxs)(`li`,{className:`font-mono text-xs text-foreground`,children:[`• `,e]},t))})}),e.middleware&&e.middleware.length>0&&(0,K.jsx)(By,{title:`Middlewares (${e.middleware.length})`,icon:(0,K.jsx)(Cd,{className:`h-4 w-4 text-muted-foreground`}),children:(0,K.jsx)(`ul`,{className:`space-y-1`,children:e.middleware.map((e,t)=>(0,K.jsxs)(`li`,{className:`font-mono text-xs text-foreground`,children:[`• `,e]},t))})}),e.context_provider&&(0,K.jsx)(By,{title:`Context Provider`,icon:(0,K.jsx)(Fu,{className:`h-4 w-4 text-muted-foreground`}),className:!e.middleware||e.middleware.length===0?`md:col-start-2`:``,children:(0,K.jsx)(`div`,{className:`font-mono text-xs text-foreground`,children:e.context_provider})})]})]})]})})}vp();var Hy=50,Uy=`[Earlier streaming content omitted after refresh] + opacity-0 group-hover:opacity-100`,title:n?`Copied!`:`Copy code`,children:n?(0,K.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`14`,height:`14`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,className:`text-green-600 dark:text-green-400`,children:(0,K.jsx)(`polyline`,{points:`20 6 9 17 4 12`})}):(0,K.jsxs)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`14`,height:`14`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`rect`,{x:`9`,y:`9`,width:`13`,height:`13`,rx:`2`,ry:`2`}),(0,K.jsx)(`path`,{d:`M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1`})]})})]})}function Ov({content:e,className:t=``}){let n=e.split(` +`),r=[],i=0;for(;i(0,K.jsx)(`li`,{className:`text-sm break-words`,children:kv(e)},t))},r.length));continue}if(e.match(/^[\s]*\d+\.\s+/)){let e=[];for(;i(0,K.jsx)(`li`,{className:`text-sm break-words`,children:kv(e)},t))},r.length));continue}if(e.trim().startsWith(`|`)&&e.trim().endsWith(`|`)){let e=[];for(;i=2){let t=e[0].split(`|`).slice(1,-1).map(e=>e.trim());if(e[1].match(/^\|[\s\-:|]+\|$/)){let n=e.slice(2).map(e=>e.split(`|`).slice(1,-1).map(e=>e.trim()));r.push((0,K.jsx)(`div`,{className:`my-3 overflow-x-auto`,children:(0,K.jsxs)(`table`,{className:`min-w-full border border-foreground/10 text-sm`,children:[(0,K.jsx)(`thead`,{className:`bg-foreground/5`,children:(0,K.jsx)(`tr`,{children:t.map((e,t)=>(0,K.jsx)(`th`,{className:`border-b border-foreground/10 px-3 py-2 text-left font-semibold break-words`,children:kv(e)},t))})}),(0,K.jsx)(`tbody`,{children:n.map((e,t)=>(0,K.jsx)(`tr`,{className:`border-b border-foreground/5 last:border-b-0`,children:e.map((e,t)=>(0,K.jsx)(`td`,{className:`px-3 py-2 border-r border-foreground/5 last:border-r-0 break-words`,children:kv(e)},t))},t))})]})},r.length));continue}}for(let t of e)r.push((0,K.jsx)(`p`,{className:`my-1`,children:kv(t)},r.length));continue}if(e.trim().startsWith(`>`)){let e=[];for(;i`);)e.push(n[i].replace(/^>\s?/,``)),i++;r.push((0,K.jsx)(`blockquote`,{className:`my-2 pl-4 border-l-4 border-current/30 opacity-80 italic break-words`,children:e.map((e,t)=>(0,K.jsx)(`div`,{className:`break-words`,children:kv(e)},t))},r.length));continue}if(e.match(/^[\s]*[-*_]{3,}[\s]*$/)){r.push((0,K.jsx)(`hr`,{className:`my-4 border-t border-border`},r.length)),i++;continue}if(e.trim()===``){r.push((0,K.jsx)(`div`,{className:`h-2`},r.length)),i++;continue}r.push((0,K.jsx)(`p`,{className:`my-1 break-words`,children:kv(e)},r.length)),i++}return(0,K.jsx)(`div`,{className:`markdown-content break-words ${t}`,children:r})}function kv(e){let t=[],n=e,r=0;for(;n.length>0;){let e=n.match(/`([^`]+)`/);if(e&&e.index!==void 0){e.index>0&&t.push((0,K.jsx)(`span`,{children:Av(n.slice(0,e.index))},r++)),t.push((0,K.jsx)(`code`,{className:`px-1.5 py-0.5 bg-foreground/10 rounded text-xs font-mono border border-foreground/20`,children:e[1]},r++)),n=n.slice(e.index+e[0].length);continue}t.push((0,K.jsx)(`span`,{children:Av(n)},r++));break}return t}function Av(e){let t=[],n=e,r=0;for(;n.length>0;){let e=[{regex:/\*\*\[([^\]]+)\]\(([^)]+)\)\*\*/,component:`strong-link`},{regex:/__\[([^\]]+)\]\(([^)]+)\)__/,component:`strong-link`},{regex:/\*\[([^\]]+)\]\(([^)]+)\)\*/,component:`em-link`},{regex:/_\[([^\]]+)\]\(([^)]+)\)_/,component:`em-link`},{regex:/\[([^\]]+)\]\(([^)]+)\)/,component:`link`},{regex:/\*\*(.+?)\*\*/,component:`strong`},{regex:/__(.+?)__/,component:`strong`},{regex:/\*(.+?)\*/,component:`em`},{regex:/_(.+?)_/,component:`em`}],i=!1;for(let a of e){let e=n.match(a.regex);if(e&&e.index!==void 0){if(e.index>0&&t.push(n.slice(0,e.index)),a.component===`strong`)t.push((0,K.jsx)(`strong`,{className:`font-semibold`,children:e[1]},r++));else if(a.component===`em`)t.push((0,K.jsx)(`em`,{className:`italic`,children:e[1]},r++));else if(a.component===`strong-link`){let n=e[1],i=e[2],a=Av(n);t.push((0,K.jsx)(`strong`,{className:`font-semibold`,children:(0,K.jsx)(`a`,{href:i,target:`_blank`,rel:`noopener noreferrer`,className:`text-primary hover:underline break-words`,children:a})},r++))}else if(a.component===`em-link`){let n=e[1],i=e[2],a=Av(n);t.push((0,K.jsx)(`em`,{className:`italic`,children:(0,K.jsx)(`a`,{href:i,target:`_blank`,rel:`noopener noreferrer`,className:`text-primary hover:underline break-words`,children:a})},r++))}else if(a.component===`link`){let n=e[1],i=e[2],a=Av(n);t.push((0,K.jsx)(`a`,{href:i,target:`_blank`,rel:`noopener noreferrer`,className:`text-primary hover:underline break-words`,children:a},r++))}n=n.slice(e.index+e[0].length),i=!0;break}}if(!i){n.length>0&&t.push(n);break}}return t}xp();function jv({content:e,className:t,isStreaming:n}){if(e.type!==`text`&&e.type!==`input_text`&&e.type!==`output_text`&&e.type!==`refusal`)return null;let r=e.type===`refusal`?e.refusal:e.text;return(0,K.jsxs)(`div`,{className:`break-words ${t||``}`,children:[(0,K.jsx)(Ov,{content:r}),n&&r.length>0&&(0,K.jsx)(`span`,{className:`ml-1 inline-block h-2 w-2 animate-pulse rounded-full bg-current`})]})}function Mv({content:e,className:t}){let[n,r]=(0,y.useState)(!1),[i,a]=(0,y.useState)(!1);if(e.type!==`input_image`&&e.type!==`output_image`)return null;let o=e.image_url;return n?(0,K.jsx)(`div`,{className:`my-2 p-3 border rounded-lg bg-muted ${t||``}`,children:(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-sm text-muted-foreground`,children:[(0,K.jsx)(Uu,{className:`h-4 w-4`}),(0,K.jsx)(`span`,{children:`Image could not be loaded`})]})}):(0,K.jsxs)(`div`,{className:`my-2 ${t||``}`,children:[(0,K.jsx)(`img`,{src:o,alt:`Uploaded image`,className:`rounded-lg border max-w-full transition-all cursor-pointer ${i?`max-h-none`:`max-h-64`}`,onClick:()=>a(!i),onError:()=>r(!0)}),i&&(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground mt-1`,children:`Click to collapse`})]})}function Nv(e,t){let[n,r]=(0,y.useState)(null);return(0,y.useEffect)(()=>{if(!e){r(null);return}try{let n;if(e.startsWith(`data:`)){let t=e.split(`,`);if(t.length!==2){r(null);return}n=t[1]}else n=e;let i=atob(n),a=new Uint8Array(i.length);for(let e=0;e{URL.revokeObjectURL(s)}}catch(e){console.error(`Failed to convert base64 to blob URL:`,e),r(null)}},[e,t]),n}function Pv(e){let t=e?.toLowerCase()||``;if(t.endsWith(`.wav`))return`audio/wav`;if(t.endsWith(`.mp3`))return`audio/mpeg`;if(t.endsWith(`.m4a`))return`audio/mp4`;if(t.endsWith(`.ogg`))return`audio/ogg`;if(t.endsWith(`.flac`))return`audio/flac`;if(t.endsWith(`.aac`))return`audio/aac`}function Fv(e,t){if(e)return e.startsWith(`data:`)?e:`data:${t||`application/octet-stream`};base64,${e}`}function Iv(e){return!!e?.toLowerCase().match(/\.(mp3|wav|m4a|ogg|flac|aac)$/)}function Lv({sourceUrl:e,filename:t,className:n,autoPlay:r}){return(0,K.jsx)(Tv,{audio:{blobUrl:e},label:t||`Audio file`,minWidth:360,align:`start`,downloadFilename:t||`audio`,className:`my-2 ${n||``}`,autoPlay:r})}function Rv({content:e,className:t,autoPlayAudio:n}){let[r,i]=(0,y.useState)(!0),a=Q(e=>e.audioInput.autoPlayAgentAudio),o=e.type===`input_file`||e.type===`output_file`,s=o?e.file_url||e.file_data:void 0,c=o?e.filename||`file`:void 0,l=e.type===`output_file`?e.mime_type:Pv(c),u=c?.toLowerCase().endsWith(`.pdf`)||s?.includes(`application/pdf`),d=!!(Iv(c)||l?.startsWith(`audio/`)||s?.startsWith(`data:audio/`)),f=Nv(o&&u?e.file_data||e.file_url:void 0,`application/pdf`);if(!o)return null;let p=f||s,m=()=>{p&&window.open(p,`_blank`)};if(u&&s)return(0,K.jsxs)(`div`,{className:`my-2 ${t||``}`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 mb-2 px-1`,children:[(0,K.jsx)(Uu,{className:`h-4 w-4 text-red-500`}),(0,K.jsx)(`span`,{className:`text-sm font-medium truncate flex-1`,children:c}),(0,K.jsx)(`button`,{onClick:()=>i(!r),className:`text-xs text-muted-foreground hover:text-foreground flex items-center gap-1`,children:r?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(su,{className:`h-3 w-3`}),`Collapse`]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(du,{className:`h-3 w-3`}),`Expand`]})})]}),r&&(0,K.jsxs)(`div`,{className:`border rounded-lg p-6 bg-muted/50 flex flex-col items-center justify-center gap-4`,children:[(0,K.jsx)(Uu,{className:`h-16 w-16 text-red-400`}),(0,K.jsxs)(`div`,{className:`text-center`,children:[(0,K.jsx)(`p`,{className:`text-sm font-medium mb-1`,children:c}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`PDF Document`})]}),(0,K.jsxs)(`div`,{className:`flex gap-3`,children:[(0,K.jsx)(`button`,{onClick:m,className:`text-sm bg-primary text-primary-foreground hover:bg-primary/90 flex items-center gap-2 px-4 py-2 rounded-md transition-colors`,children:`Open in new tab`}),(0,K.jsxs)(`a`,{href:p||s,download:c,className:`text-sm text-foreground hover:bg-accent flex items-center gap-2 px-4 py-2 border rounded-md transition-colors`,children:[(0,K.jsx)(Lu,{className:`h-4 w-4`}),`Download`]})]})]})]});if(d&&s){let r=Fv(e.file_data,l)||s;return(0,K.jsx)(Lv,{sourceUrl:r,filename:c,className:t,autoPlay:e.type===`output_file`&&!!(n&&a)})}return(0,K.jsx)(`div`,{className:`my-2 p-3 border rounded-lg bg-muted ${t||``}`,children:(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(Uu,{className:`h-4 w-4 text-muted-foreground`}),(0,K.jsx)(`span`,{className:`text-sm`,children:c})]}),s&&(0,K.jsxs)(`a`,{href:s,download:c,className:`text-xs text-primary hover:underline flex items-center gap-1`,children:[(0,K.jsx)(Lu,{className:`h-3 w-3`}),`Download`]})]})})}function zv({content:e,className:t}){if(e.type!==`input_audio`)return null;let{data:n,format:r}=e.input_audio,i=r===`mp3`?`audio/mpeg`:`audio/wav`,a=n.startsWith(`data:`)?n:`data:${i};base64,${n}`,o=`Voice message (${r.toUpperCase()})`;return(0,K.jsx)(Lv,{sourceUrl:a,filename:o,className:t})}function Bv({content:e,className:t}){let[n,r]=(0,y.useState)(!1);if(e.type!==`output_data`)return null;let i=e.data,a=e.mime_type,o=e.description,s=i;try{let e=JSON.parse(i);s=JSON.stringify(e,null,2)}catch{}return(0,K.jsxs)(`div`,{className:`my-2 p-3 border rounded-lg bg-muted ${t||``}`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 cursor-pointer`,onClick:()=>r(!n),children:[(0,K.jsx)(Uu,{className:`h-4 w-4 text-muted-foreground`}),(0,K.jsx)(`span`,{className:`text-sm font-medium`,children:o||`Data Output`}),(0,K.jsx)(`span`,{className:`text-xs text-muted-foreground ml-auto`,children:a}),n?(0,K.jsx)(su,{className:`h-4 w-4 text-muted-foreground`}):(0,K.jsx)(du,{className:`h-4 w-4 text-muted-foreground`})]}),n&&(0,K.jsx)(`pre`,{className:`mt-2 text-xs overflow-auto max-h-64 bg-background p-2 rounded border font-mono`,children:s})]})}function Vv({content:e,className:t}){let[n,r]=(0,y.useState)(!1);if(e.type!==`function_approval_request`)return null;let{status:i,function_call:a}=e,o={pending:{icon:Tu,label:`Awaiting approval`,iconClass:`text-amber-600 dark:text-amber-400`},approved:{icon:ru,label:`Approved`,iconClass:`text-green-600 dark:text-green-400`},rejected:{icon:vf,label:`Rejected`,iconClass:`text-red-600 dark:text-red-400`}}[i],s=o.icon,c;try{c=typeof a.arguments==`string`?JSON.parse(a.arguments):a.arguments}catch{c=a.arguments}return(0,K.jsxs)(`div`,{className:t,children:[(0,K.jsxs)(`button`,{onClick:()=>r(!n),className:`flex items-center gap-2 px-2 py-1 text-xs rounded hover:bg-muted/50 transition-colors w-fit`,children:[(0,K.jsx)(s,{className:`h-3 w-3 ${o.iconClass}`}),(0,K.jsx)(`span`,{className:`text-muted-foreground font-mono`,children:a.name}),(0,K.jsx)(`span`,{className:`text-xs ${o.iconClass}`,children:o.label}),n?(0,K.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`▼`}):(0,K.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`▶`})]}),n&&(0,K.jsx)(`div`,{className:`ml-5 mt-1 text-xs font-mono text-muted-foreground border-l-2 border-muted pl-3`,children:(0,K.jsx)(`pre`,{className:`whitespace-pre-wrap break-all`,children:JSON.stringify(c,null,2)})})]})}function Hv({content:e,className:t,isStreaming:n,autoPlayAudio:r}){switch(e.type){case`text`:case`input_text`:case`output_text`:case`refusal`:return(0,K.jsx)(jv,{content:e,className:t,isStreaming:n});case`input_image`:case`output_image`:return(0,K.jsx)(Mv,{content:e,className:t});case`input_file`:case`output_file`:return(0,K.jsx)(Rv,{content:e,className:t,autoPlayAudio:r});case`input_audio`:return(0,K.jsx)(zv,{content:e,className:t});case`output_data`:return(0,K.jsx)(Bv,{content:e,className:t});case`function_approval_request`:return(0,K.jsx)(Vv,{content:e,className:t});default:return null}}function Uv({name:e,arguments:t,className:n}){let[r,i]=(0,y.useState)(!1),a;try{a=typeof t==`string`?JSON.parse(t):t}catch{a=t}return(0,K.jsxs)(`div`,{className:`my-2 p-3 border rounded bg-blue-50 dark:bg-blue-950/20 ${n||``}`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 cursor-pointer`,onClick:()=>i(!r),children:[(0,K.jsx)(ku,{className:`h-4 w-4 text-blue-600 dark:text-blue-400`}),(0,K.jsxs)(`span`,{className:`text-sm font-medium text-blue-800 dark:text-blue-300`,children:[`Function Call: `,e]}),r?(0,K.jsx)(su,{className:`h-4 w-4 text-blue-600 dark:text-blue-400 ml-auto`}):(0,K.jsx)(du,{className:`h-4 w-4 text-blue-600 dark:text-blue-400 ml-auto`})]}),r&&(0,K.jsxs)(`div`,{className:`mt-2 text-xs font-mono bg-white dark:bg-gray-900 p-2 rounded border`,children:[(0,K.jsx)(`div`,{className:`text-blue-600 dark:text-blue-400 mb-1`,children:`Arguments:`}),(0,K.jsx)(`pre`,{className:`whitespace-pre-wrap`,children:JSON.stringify(a,null,2)})]})]})}function Wv({output:e,call_id:t,className:n}){let[r,i]=(0,y.useState)(!1),a;try{a=typeof e==`string`?JSON.parse(e):e}catch{a=e}return(0,K.jsxs)(`div`,{className:`my-2 p-3 border rounded bg-green-50 dark:bg-green-950/20 ${n||``}`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 cursor-pointer`,onClick:()=>i(!r),children:[(0,K.jsx)(ku,{className:`h-4 w-4 text-green-600 dark:text-green-400`}),(0,K.jsx)(`span`,{className:`text-sm font-medium text-green-800 dark:text-green-300`,children:`Function Result`}),r?(0,K.jsx)(su,{className:`h-4 w-4 text-green-600 dark:text-green-400 ml-auto`}):(0,K.jsx)(du,{className:`h-4 w-4 text-green-600 dark:text-green-400 ml-auto`})]}),r&&(0,K.jsxs)(`div`,{className:`mt-2 text-xs font-mono bg-white dark:bg-gray-900 p-2 rounded border`,children:[(0,K.jsx)(`div`,{className:`text-green-600 dark:text-green-400 mb-1`,children:`Output:`}),(0,K.jsx)(`pre`,{className:`whitespace-pre-wrap`,children:JSON.stringify(a,null,2)}),(0,K.jsxs)(`div`,{className:`text-gray-500 text-[10px] mt-2`,children:[`Call ID: `,t]})]})]})}function Gv({item:e,className:t}){if(e.type===`message`){let n=e.status===`in_progress`,r=e.content.length>0;return(0,K.jsxs)(`div`,{className:t,children:[e.content.map((e,t)=>(0,K.jsx)(Hv,{content:e,className:t>0?`mt-2`:``,isStreaming:n,autoPlayAudio:e.type===`output_file`&&e.auto_play},t)),n&&!r&&(0,K.jsx)(`div`,{className:`flex items-center space-x-1`,children:(0,K.jsxs)(`div`,{className:`flex space-x-1`,children:[(0,K.jsx)(`div`,{className:`h-2 w-2 animate-bounce rounded-full bg-current [animation-delay:-0.3s]`}),(0,K.jsx)(`div`,{className:`h-2 w-2 animate-bounce rounded-full bg-current [animation-delay:-0.15s]`}),(0,K.jsx)(`div`,{className:`h-2 w-2 animate-bounce rounded-full bg-current`})]})})]})}return e.type===`function_call`?(0,K.jsx)(Uv,{name:e.name,arguments:e.arguments,className:t}):e.type===`function_call_output`?(0,K.jsx)(Wv,{output:e.output,call_id:e.call_id,className:t}):null}var Kv=Object.defineProperty,qv=(e,t)=>Kv(e,`name`,{value:t,configurable:!0}),Jv={ItemAligned:`item-aligned`,Popper:`popper`},Yv={LTR:`ltr`,RTL:`rtl`},Xv=[` `,`Enter`,`ArrowUp`,`ArrowDown`],Zv=[` `,`Enter`],Qv=`Select`,[$v,ey,ty]=hn(Qv),[ny,ry]=Kt(Qv,[ty,Ja]),iy=Ja(),[ay,oy]=ny(Qv),[sy,cy]=ny(Qv);function ly(e){let{__scopeSelect:t,children:n,open:r,defaultOpen:i,onOpenChange:a,value:o,defaultValue:s,onValueChange:c,dir:l,name:u,autoComplete:d,disabled:f,required:p,form:m,internal_do_not_use_render:h}=e,g=iy(t),[_,v]=y.useState(null),[b,x]=y.useState(null),[S,C]=y.useState(!1),w=jn(l),[T,E]=rn({prop:r,defaultProp:i??!1,onChange:a,caller:Qv}),[D,O]=rn({prop:o,defaultProp:s,onChange:c,caller:Qv}),k=y.useRef(null),A=y.useRef(!1),[j,M]=y.useState(null),N=qv(e=>{M({value:e,hasConsumerStoppedPropagation:A.current}),O(e)},`handleUserSelect`),P=y.useRef(D);y.useEffect(()=>{let e=m?_?.ownerDocument.getElementById(m):_?.form;if(e instanceof HTMLFormElement){let t=qv(()=>O(P.current),`reset`);return e.addEventListener(`reset`,t),()=>e.removeEventListener(`reset`,t)}},[m,_,O]);let F=!_||!!m||!!_.closest(`form`),[I,L]=y.useState(new Set),R=Or(),z=Array.from(I).map(e=>e.props.value).join(`;`),B=y.useCallback(e=>{L(t=>new Set(t).add(e))},[]),ee=y.useCallback(e=>{L(t=>{let n=new Set(t);return n.delete(e),n})},[]),V={required:p,trigger:_,onTriggerChange:v,valueNode:b,onValueNodeChange:x,valueNodeHasChildren:S,onValueNodeHasChildrenChange:C,contentId:R,value:D,onValueChange:O,hasConsumerStoppedPropagationRef:A,userSelection:j,onUserSelect:N,open:T,onOpenChange:E,dir:w,triggerPointerDownPosRef:k,disabled:f,name:u,autoComplete:d,form:m,nativeOptions:I,nativeSelectKey:z,isFormControl:F};return(0,K.jsx)(Za,{...g,children:(0,K.jsx)(ay,{scope:t,...V,children:(0,K.jsx)($v.Provider,{scope:t,children:(0,K.jsx)(sy,{scope:t,onNativeOptionAdd:B,onNativeOptionRemove:ee,children:Xy(h)?h(V):n})})})})}qv(ly,`SelectProvider`);var uy=qv(e=>{let{__scopeSelect:t,children:n,...r}=e;return(0,K.jsx)(ly,{__scopeSelect:t,...r,internal_do_not_use_render:({isFormControl:e})=>(0,K.jsxs)(K.Fragment,{children:[n,e?(0,K.jsx)(Yy,{__scopeSelect:t}):null]})})},`Select`),dy=`SelectTrigger`,fy=y.forwardRef(qv(function(e,t){let{__scopeSelect:n,disabled:r=!1,...i}=e,a=iy(n),o=oy(dy,n),s=o.disabled||r,c=T(t,o.onTriggerChange),l=ey(n),u=y.useRef(`touch`),[d,f,p]=Qy(e=>{let t=l().filter(e=>!e.disabled),n=$y(t,e,t.find(e=>e.value===o.value));n!==void 0&&o.onUserSelect(n.value)}),m=qv(e=>{s||(o.onOpenChange(!0),p()),e&&(o.triggerPointerDownPosRef.current={x:Math.round(e.pageX),y:Math.round(e.pageY)})},`handleOpen`);return(0,K.jsx)($a,{asChild:!0,...a,children:(0,K.jsx)(Y.button,{type:`button`,role:`combobox`,"aria-controls":o.open?o.contentId:void 0,"aria-expanded":o.open,"aria-required":o.required,"aria-autocomplete":`none`,dir:o.dir,"data-state":o.open?`open`:`closed`,disabled:s,"data-disabled":s?``:void 0,"data-placeholder":Zy(o.value)?``:void 0,...i,ref:c,onClick:J(i.onClick,e=>{e.currentTarget.focus(),u.current!==`mouse`&&m(e)}),onPointerDown:J(i.onPointerDown,e=>{u.current=e.pointerType;let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),e.button===0&&e.ctrlKey===!1&&e.pointerType===`mouse`&&(m(e),e.preventDefault())}),onKeyDown:J(i.onKeyDown,e=>{let t=d.current!==``;!(e.ctrlKey||e.altKey||e.metaKey)&&e.key.length===1&&(o.hasConsumerStoppedPropagationRef.current=e.isPropagationStopped(),f(e.key)),!(t&&e.key===` `)&&Xv.includes(e.key)&&(m(),e.preventDefault())})})})},`SelectTrigger`)),py=`SelectValue`,my=y.forwardRef(qv(function(e,t){let{__scopeSelect:n,className:r,style:i,children:a,placeholder:o=``,...s}=e,c=oy(py,n),{onValueNodeHasChildrenChange:l}=c,u=a!==void 0,d=T(t,c.onValueNodeChange);Jt(()=>{l(u)},[l,u]);let f=Zy(c.value);return(0,K.jsx)(Y.span,{...s,asChild:!f&&s.asChild,ref:d,style:{pointerEvents:`none`},children:(0,K.jsx)(y.Fragment,{children:f?o:a},f?`placeholder`:`value`)})},`SelectValue`)),hy=y.forwardRef(qv(function(e,t){let{__scopeSelect:n,children:r,...i}=e;return(0,K.jsx)(Y.span,{"aria-hidden":!0,...i,ref:t,children:r||`▼`})},`SelectIcon`)),[gy,_y]=ny(`SelectPortal`,{forceMount:void 0}),vy=qv(e=>{let{__scopeSelect:t,forceMount:n,...r}=e;return(0,K.jsx)(gy,{scope:e.__scopeSelect,forceMount:n,children:(0,K.jsx)(co,{asChild:!0,...r})})},`SelectPortal`),yy=`SelectContent`,by=y.forwardRef(qv(function(e,t){let n=_y(yy,e.__scopeSelect),{forceMount:r=n.forceMount,...i}=e,a=oy(yy,e.__scopeSelect),[o,s]=y.useState();return Jt(()=>{s(new DocumentFragment)},[]),(0,K.jsx)(po,{present:r||a.open,children:({present:e})=>e?(0,K.jsx)(Ey,{...i,ref:t}):(0,K.jsx)(xy,{...i,fragment:o})})},`SelectContent`)),xy=y.forwardRef(qv(function(e,t){let{__scopeSelect:n,children:r,fragment:i}=e;return i?ln.createPortal((0,K.jsx)(Cy,{scope:n,children:(0,K.jsx)($v.Slot,{scope:n,children:(0,K.jsx)(`div`,{ref:t,children:r})})}),i):null},`SelectContentFragment`)),Sy=10,[Cy,wy]=ny(yy),Ty=O(`SelectContent.RemoveScroll`),Ey=y.forwardRef(qv(function(e,t){let{__scopeSelect:n}=e,{position:r=Jv.ItemAligned,onCloseAutoFocus:i,onEscapeKeyDown:a,onPointerDownOutside:o,side:s,sideOffset:c,align:l,alignOffset:u,arrowPadding:d,collisionBoundary:f,collisionPadding:p,sticky:m,hideWhenDetached:h,avoidCollisions:g,..._}=e,v=oy(yy,n),[b,x]=y.useState(null),[S,C]=y.useState(null),w=T(t,x),[E,D]=y.useState(null),[O,k]=y.useState(null),A=ey(n),[j,M]=y.useState(!1),N=y.useRef(!1),P=y.useRef(!1),F=y.useRef(!1);y.useEffect(()=>{if(b)return is(b)},[b]),tr();let I=y.useCallback(e=>{let[t,...n]=A().map(e=>e.ref.current),[r]=n.slice(-1),i=document.activeElement;for(let n of e)if(n===i||(n?.scrollIntoView({block:`nearest`}),n===t&&S&&(S.scrollTop=0),n===r&&S&&(S.scrollTop=S.scrollHeight),n?.focus(),document.activeElement!==i))return},[A,S]),L=y.useCallback(()=>I([E,b]),[I,E,b]);y.useEffect(()=>{j&&L()},[j,L]);let{onOpenChange:R,triggerPointerDownPosRef:z}=v;y.useEffect(()=>{if(b){let e={x:0,y:0},t=qv(t=>{e={x:Math.abs(Math.round(t.pageX)-(z.current?.x??0)),y:Math.abs(Math.round(t.pageY)-(z.current?.y??0))}},`handlePointerMove`),n=qv(n=>{e.x<=10&&e.y<=10?n.preventDefault():n.composedPath().includes(b)||R(!1),document.removeEventListener(`pointermove`,t),z.current=null},`handlePointerUp`);return z.current!==null&&(document.addEventListener(`pointermove`,t),document.addEventListener(`pointerup`,n,{capture:!0,once:!0})),()=>{document.removeEventListener(`pointermove`,t),document.removeEventListener(`pointerup`,n,{capture:!0})}}},[b,R,z]),y.useEffect(()=>{let e=qv(()=>R(!1),`close`);return window.addEventListener(`blur`,e),window.addEventListener(`resize`,e),()=>{window.removeEventListener(`blur`,e),window.removeEventListener(`resize`,e)}},[R]);let[B,ee]=Qy(e=>{let t=A().filter(e=>!e.disabled),n=$y(t,e,t.find(e=>e.ref.current===document.activeElement));n&&setTimeout(()=>n.ref.current?.focus())}),V=y.useCallback((e,t,n)=>{let r=!P.current;r&&(P.current=!0);let i=!N.current&&!n;v.value!==void 0&&v.value===t||i?(D(e),i&&(N.current=!0)):r&&D(e)},[v.value]),H=y.useCallback(()=>b?.focus(),[b]),te=y.useCallback((e,t,n)=>{if(!e)return;let r=!F.current;r&&(F.current=!0);let i=!N.current&&!n;(v.value!==void 0&&v.value===t||i||r)&&k(e)},[v.value]),ne=r===Jv.Popper?Oy:Dy,re=ne===Oy?{side:s,sideOffset:c,align:l,alignOffset:u,arrowPadding:d,collisionBoundary:f,collisionPadding:p,sticky:m,hideWhenDetached:h,avoidCollisions:g}:{};return(0,K.jsx)(Cy,{scope:n,content:b,viewport:S,onViewportChange:C,itemRefCallback:V,selectedItem:E,onItemLeave:H,itemTextRefCallback:te,focusSelectedItem:L,selectedItemText:O,position:r,isPositioned:j,searchRef:B,children:(0,K.jsx)(fc,{as:Ty,allowPinchZoom:!0,children:(0,K.jsx)(cr,{asChild:!0,trapped:v.open,onMountAutoFocus:e=>{e.preventDefault()},onUnmountAutoFocus:J(i,e=>{v.trigger?.focus({preventScroll:!0}),e.preventDefault()}),children:(0,K.jsx)(Un,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:a,onPointerDownOutside:o,onFocusOutside:e=>e.preventDefault(),onDismiss:()=>v.onOpenChange(!1),children:(0,K.jsx)(ne,{role:`listbox`,id:v.contentId,"data-state":v.open?`open`:`closed`,dir:v.dir,onContextMenu:e=>e.preventDefault(),..._,...re,onPlaced:()=>M(!0),ref:w,style:{display:`flex`,flexDirection:`column`,outline:`none`,..._.style},onKeyDown:J(_.onKeyDown,e=>{let t=e.ctrlKey||e.altKey||e.metaKey;if(e.key===`Tab`&&e.preventDefault(),!t&&e.key.length===1&&ee(e.key),[`ArrowUp`,`ArrowDown`,`Home`,`End`].includes(e.key)){let t=A().filter(e=>!e.disabled).map(e=>e.ref.current);if([`ArrowUp`,`End`].includes(e.key)&&(t=t.slice().reverse()),[`ArrowUp`,`ArrowDown`].includes(e.key)){let n=e.target,r=t.indexOf(n);t=t.slice(r+1)}setTimeout(()=>I(t)),e.preventDefault()}})})})})})})},`SelectContentImpl`)),Dy=y.forwardRef(qv(function(e,t){let{__scopeSelect:n,onPlaced:r,...i}=e,a=oy(yy,n),o=wy(yy,n),[s,c]=y.useState(null),[l,u]=y.useState(null),d=T(t,u),f=ey(n),p=y.useRef(!1),m=y.useRef(!0),{viewport:h,selectedItem:g,selectedItemText:_,focusSelectedItem:v}=o,b=y.useCallback(()=>{if(a.trigger&&a.valueNode&&s&&l&&h&&g&&_){let e=a.trigger.getBoundingClientRect(),t=l.getBoundingClientRect(),n=a.valueNode.getBoundingClientRect(),i=_.getBoundingClientRect();if(a.dir!==Yv.RTL){let r=i.left-t.left,a=n.left-r,o=e.left-a,c=e.width+o,l=Math.max(c,t.width),u=window.innerWidth-Sy,d=Dp(a,[Sy,Math.max(Sy,u-l)]);s.style.minWidth=c+`px`,s.style.left=d+`px`}else{let r=t.right-i.right,a=window.innerWidth-n.right-r,o=window.innerWidth-e.right-a,c=e.width+o,l=Math.max(c,t.width),u=window.innerWidth-Sy,d=Dp(a,[Sy,Math.max(Sy,u-l)]);s.style.minWidth=c+`px`,s.style.right=d+`px`}let o=f(),c=window.innerHeight-Sy*2,u=h.scrollHeight,d=window.getComputedStyle(l),m=parseInt(d.borderTopWidth,10),v=parseInt(d.paddingTop,10),y=parseInt(d.borderBottomWidth,10),b=parseInt(d.paddingBottom,10),x=m+v+u+b+y,S=Math.min(g.offsetHeight*5,x),C=window.getComputedStyle(h),w=parseInt(C.paddingTop,10),T=parseInt(C.paddingBottom,10),E=e.top+e.height/2-Sy,D=c-E,O=g.offsetHeight/2,k=g.offsetTop+O,A=m+v+k,j=x-A;if(A<=E){let e=o.length>0&&g===o[o.length-1].ref.current;s.style.bottom=`0px`;let t=l.clientHeight-h.offsetTop-h.offsetHeight,n=A+Math.max(D,O+(e?T:0)+t+y);s.style.height=n+`px`}else{let e=o.length>0&&g===o[0].ref.current;s.style.top=`0px`;let t=Math.max(E,m+h.offsetTop+(e?w:0)+O)+j;s.style.height=t+`px`,h.scrollTop=A-E+h.offsetTop}s.style.margin=`${Sy}px 0`,s.style.minHeight=S+`px`,s.style.maxHeight=c+`px`,r?.(),requestAnimationFrame(()=>p.current=!0)}},[f,a.trigger,a.valueNode,s,l,h,g,_,a.dir,r]);Jt(()=>b(),[b]);let[x,S]=y.useState();Jt(()=>{l&&S(window.getComputedStyle(l).zIndex)},[l]);let C=y.useCallback(e=>{e&&m.current===!0&&(b(),v?.(),m.current=!1)},[b,v]);return(0,K.jsx)(ky,{scope:n,contentWrapper:s,shouldExpandOnScrollRef:p,onScrollButtonChange:C,children:(0,K.jsx)(`div`,{ref:c,style:{display:`flex`,flexDirection:`column`,position:`fixed`,zIndex:x},children:(0,K.jsx)(Y.div,{...i,ref:d,style:{boxSizing:`border-box`,maxHeight:`100%`,...i.style}})})})},`SelectItemAlignedPosition`)),Oy=y.forwardRef(qv(function(e,t){let{__scopeSelect:n,align:r=`start`,collisionPadding:i=Sy,...a}=e,o=iy(n);return(0,K.jsx)(ro,{...o,...a,ref:t,align:r,collisionPadding:i,style:{boxSizing:`border-box`,...a.style,"--radix-select-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-select-content-available-width":`var(--radix-popper-available-width)`,"--radix-select-content-available-height":`var(--radix-popper-available-height)`,"--radix-select-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-select-trigger-height":`var(--radix-popper-anchor-height)`}})},`SelectPopperPosition`)),[ky,Ay]=ny(yy,{}),jy=`SelectViewport`,My=y.forwardRef(qv(function(e,t){let{__scopeSelect:n,nonce:r,...i}=e,a=wy(jy,n),o=Ay(jy,n),s=T(t,a.onViewportChange),c=y.useRef(0);return(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`style`,{dangerouslySetInnerHTML:{__html:`[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}`},nonce:r}),(0,K.jsx)($v.Slot,{scope:n,children:(0,K.jsx)(Y.div,{"data-radix-select-viewport":``,role:`presentation`,...i,ref:s,style:{position:`relative`,flex:1,overflow:`hidden auto`,...i.style},onScroll:J(i.onScroll,e=>{let t=e.currentTarget,{contentWrapper:n,shouldExpandOnScrollRef:r}=o;if(r?.current&&n){let e=Math.abs(c.current-t.scrollTop);if(e>0){let r=window.innerHeight-Sy*2,i=parseFloat(n.style.minHeight),a=parseFloat(n.style.height),o=Math.max(i,a);if(o0?s:0,n.style.justifyContent=`flex-end`)}}}c.current=t.scrollTop})})})]})},`SelectViewport`)),[Ny,Py]=ny(`SelectGroup`),Fy=`SelectItem`,[Iy,Ly]=ny(Fy),Ry=y.forwardRef(qv(function(e,t){let{__scopeSelect:n,value:r,disabled:i=!1,textValue:a,...o}=e,s=oy(Fy,n),c=wy(Fy,n),l=s.value===r,[u,d]=y.useState(a??``),[f,p]=y.useState(!1),m=T(t,Fn(e=>c.itemRefCallback?.(e,r,i))),h=Or(),g=y.useRef(`touch`);function _(e){s.hasConsumerStoppedPropagationRef.current=e.isPropagationStopped(),s.onUserSelect(r),s.onOpenChange(!1)}return qv(_,`handleSelect`),(0,K.jsx)(Iy,{scope:n,value:r,disabled:i,textId:h,isSelected:l,onItemTextChange:y.useCallback(e=>{d(t=>t||(e?.textContent??``).trim())},[]),children:(0,K.jsx)($v.ItemSlot,{scope:n,value:r,disabled:i,textValue:u,children:(0,K.jsx)(Y.div,{role:`option`,"aria-labelledby":h,"data-highlighted":f?``:void 0,"aria-selected":l&&f,"data-state":l?`checked`:`unchecked`,"aria-disabled":i||void 0,"data-disabled":i?``:void 0,tabIndex:i?void 0:-1,...o,ref:m,onFocus:J(o.onFocus,()=>p(!0)),onBlur:J(o.onBlur,()=>p(!1)),onClick:J(o.onClick,e=>{i||g.current!==`mouse`&&_(e)}),onPointerUp:J(o.onPointerUp,e=>{i||g.current===`mouse`&&_(e)}),onPointerDown:J(o.onPointerDown,e=>{g.current=e.pointerType}),onPointerMove:J(o.onPointerMove,e=>{g.current=e.pointerType,i?c.onItemLeave?.():g.current===`mouse`&&e.currentTarget.focus({preventScroll:!0})}),onPointerLeave:J(o.onPointerLeave,e=>{e.currentTarget===document.activeElement&&c.onItemLeave?.()}),onKeyDown:J(o.onKeyDown,e=>{i||e.target!==e.currentTarget||(c.searchRef?.current===``||e.key!==` `)&&(Zv.includes(e.key)&&_(e),e.key===` `&&e.preventDefault())})})})})},`SelectItem`)),zy=`SelectItemText`,By=y.forwardRef(qv(function(e,t){let{__scopeSelect:n,className:r,style:i,...a}=e,o=oy(zy,n),s=wy(zy,n),c=Ly(zy,n),l=cy(zy,n),[u,d]=y.useState(null),f=Fn(e=>s.itemTextRefCallback?.(e,c.value,c.disabled)),p=T(t,d,c.onItemTextChange,f),m=u?.textContent,h=y.useMemo(()=>(0,K.jsx)(`option`,{value:c.value,disabled:c.disabled,children:m},c.value),[c.disabled,c.value,m]),{onNativeOptionAdd:g,onNativeOptionRemove:_}=l;return Jt(()=>(g(h),()=>_(h)),[g,_,h]),(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(Y.span,{id:c.textId,...a,ref:p}),c.isSelected&&o.valueNode&&!o.valueNodeHasChildren&&!Zy(o.value)?ln.createPortal(a.children,o.valueNode):null]})},`SelectItemText`)),Vy=`SelectItemIndicator`,Hy=y.forwardRef(qv(function(e,t){let{__scopeSelect:n,...r}=e;return Ly(Vy,n).isSelected?(0,K.jsx)(Y.span,{"aria-hidden":!0,...r,ref:t}):null},`SelectItemIndicator`)),Uy=`SelectScrollUpButton`,Wy=y.forwardRef(qv(function(e,t){let n=wy(Uy,e.__scopeSelect),r=Ay(Uy,e.__scopeSelect),[i,a]=y.useState(!1),o=T(t,r.onScrollButtonChange);return Jt(()=>{if(n.viewport&&n.isPositioned){let e=function(){let e=t.scrollTop>0;a(e)};qv(e,`handleScroll`);let t=n.viewport;return e(),t.addEventListener(`scroll`,e),()=>t.removeEventListener(`scroll`,e)}},[n.viewport,n.isPositioned]),i?(0,K.jsx)(qy,{...e,ref:o,onAutoScroll:()=>{let{viewport:e,selectedItem:t}=n;e&&t&&(e.scrollTop-=t.offsetHeight)}}):null},`SelectScrollUpButton`)),Gy=`SelectScrollDownButton`,Ky=y.forwardRef(qv(function(e,t){let n=wy(Gy,e.__scopeSelect),r=Ay(Gy,e.__scopeSelect),[i,a]=y.useState(!1),o=T(t,r.onScrollButtonChange);return Jt(()=>{if(n.viewport&&n.isPositioned){let e=function(){let e=t.scrollHeight-t.clientHeight,n=Math.ceil(t.scrollTop)t.removeEventListener(`scroll`,e)}},[n.viewport,n.isPositioned]),i?(0,K.jsx)(qy,{...e,ref:o,onAutoScroll:()=>{let{viewport:e,selectedItem:t}=n;e&&t&&(e.scrollTop+=t.offsetHeight)}}):null},`SelectScrollDownButton`)),qy=y.forwardRef(qv(function(e,t){let{__scopeSelect:n,onAutoScroll:r,...i}=e,a=wy(`SelectScrollButton`,n),o=y.useRef(null),s=ey(n),c=y.useCallback(()=>{o.current!==null&&(window.clearInterval(o.current),o.current=null)},[]);return y.useEffect(()=>()=>c(),[c]),Jt(()=>{s().find(e=>e.ref.current===document.activeElement)?.ref.current?.scrollIntoView({block:`nearest`})},[s]),(0,K.jsx)(Y.div,{"aria-hidden":!0,...i,ref:t,style:{flexShrink:0,...i.style},onPointerDown:J(i.onPointerDown,()=>{o.current===null&&(o.current=window.setInterval(r,50))}),onPointerMove:J(i.onPointerMove,()=>{a.onItemLeave?.(),o.current===null&&(o.current=window.setInterval(r,50))}),onPointerLeave:J(i.onPointerLeave,()=>{c()})})},`SelectScrollButtonImpl`)),Jy=`SelectBubbleInput`,Yy=y.forwardRef(qv(function({__scopeSelect:e,...t},n){let r=oy(Jy,e),{value:i,onValueChange:a,required:o,disabled:s,name:c,autoComplete:l,form:u,userSelection:d}=r,{nativeOptions:f,nativeSelectKey:p}=r,m=y.useRef(null),h=T(n,m),g=i??``,_=y.useRef(g),v=y.useRef(d),b=y.useRef(!1),x=Array.from(f).some(e=>(e.props.value??``)===``);return y.useEffect(()=>{let e=m.current;if(!e)return;let t=window.HTMLSelectElement.prototype,n=Object.getOwnPropertyDescriptor(t,`value`).set,r=d!==null&&d!==v.current;v.current=d;let i=_.current!==g;_.current=g;let a=r&&i;if(r&&!i&&d.value!==g&&!d.hasConsumerStoppedPropagation&&n){b.current=!0;try{n.call(e,d.value),e.dispatchEvent(new Event(`change`,{bubbles:!0}))}finally{b.current=!1,n.call(e,g)}return}let o=a&&!d.hasConsumerStoppedPropagation;if(i&&n){let t=new Event(`change`,{bubbles:o});n.call(e,g),e.dispatchEvent(t)}},[g,d]),(0,K.jsxs)(Y.select,{"aria-hidden":!0,required:o,tabIndex:-1,name:c,autoComplete:l,disabled:s,form:u,onChange:e=>{b.current||a(e.target.value)},...t,style:{...uh,...t.style},ref:h,defaultValue:g,children:[Zy(i)&&!x?(0,K.jsx)(`option`,{value:``}):null,Array.from(f)]},p)},`SelectBubbleInput`));function Xy(e){return typeof e==`function`}qv(Xy,`isFunction`);function Zy(e){return e===``||e===void 0}qv(Zy,`shouldShowPlaceholder`);function Qy(e){let t=Fn(e),n=y.useRef(``),r=y.useRef(0),i=y.useCallback(e=>{let i=n.current+e;t(i);function a(e){n.current=e,window.clearTimeout(r.current),e!==``&&(r.current=window.setTimeout(()=>a(``),1e3))}qv(a,`updateSearch`),a(i)},[t]),a=y.useCallback(()=>{n.current=``,window.clearTimeout(r.current)},[]);return y.useEffect(()=>()=>window.clearTimeout(r.current),[]),[n,i,a]}qv(Qy,`useTypeaheadSearch`);function $y(e,t,n){let r=t.length>1&&Array.from(t).every(e=>e===t[0])?t[0]:t,i=n?e.indexOf(n):-1,a=eb(e,Math.max(i,0));r.length===1&&(a=a.filter(e=>e!==n));let o=a.find(e=>e.textValue.toLowerCase().startsWith(r.toLowerCase()));return o===n?void 0:o}qv($y,`findNextItem`);function eb(e,t){return e.map((n,r)=>e[(t+r)%e.length])}qv(eb,`wrapArray`);function tb({...e}){return(0,K.jsx)(uy,{"data-slot":`select`,...e})}function nb({...e}){return(0,K.jsx)(my,{"data-slot":`select-value`,...e})}function rb({className:e,size:t=`default`,children:n,...r}){return(0,K.jsxs)(fy,{"data-slot":`select-trigger`,"data-size":t,className:jt(`border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,e),...r,children:[n,(0,K.jsx)(hy,{asChild:!0,children:(0,K.jsx)(su,{className:`size-4 opacity-50`})})]})}function ib({className:e,children:t,position:n=`popper`,...r}){return(0,K.jsx)(vy,{children:(0,K.jsxs)(by,{"data-slot":`select-content`,className:jt(`bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border shadow-md`,n===`popper`&&`data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1`,e),position:n,...r,children:[(0,K.jsx)(ob,{}),(0,K.jsx)(My,{className:jt(`p-1`,n===`popper`&&`h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1`),children:t}),(0,K.jsx)(sb,{})]})})}function ab({className:e,children:t,...n}){return(0,K.jsxs)(Ry,{"data-slot":`select-item`,className:jt(`focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2`,e),...n,children:[(0,K.jsx)(`span`,{className:`absolute right-2 flex size-3.5 items-center justify-center`,children:(0,K.jsx)(Hy,{children:(0,K.jsx)(ru,{className:`size-4`})})}),(0,K.jsx)(By,{children:t})]})}function ob({className:e,...t}){return(0,K.jsx)(Wy,{"data-slot":`select-scroll-up-button`,className:jt(`flex cursor-default items-center justify-center py-1`,e),...t,children:(0,K.jsx)(pu,{className:`size-4`})})}function sb({className:e,...t}){return(0,K.jsx)(Ky,{"data-slot":`select-scroll-down-button`,className:jt(`flex cursor-default items-center justify-center py-1`,e),...t,children:(0,K.jsx)(su,{className:`size-4`})})}function cb({title:e,icon:t,children:n,className:r=``}){return(0,K.jsxs)(`div`,{className:`border rounded-lg p-4 bg-card ${r}`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 mb-3`,children:[t,(0,K.jsx)(`h3`,{className:`text-sm font-semibold text-foreground`,children:e})]}),(0,K.jsx)(`div`,{className:`text-sm text-muted-foreground`,children:n})]})}function lb({agent:e,open:t,onOpenChange:n}){let r=e.source===`directory`?(0,K.jsx)(Gu,{className:`h-4 w-4 text-muted-foreground`}):e.source===`in_memory`?(0,K.jsx)(Fu,{className:`h-4 w-4 text-muted-foreground`}):(0,K.jsx)(qu,{className:`h-4 w-4 text-muted-foreground`}),i=e.source===`directory`?`Local`:e.source===`in_memory`?`In-Memory`:`Gallery`;return(0,K.jsx)(Ng,{open:t,onOpenChange:n,children:(0,K.jsxs)(Pg,{className:`max-w-4xl max-h-[90vh] flex flex-col`,children:[(0,K.jsxs)(Fg,{className:`px-6 pt-6 flex-shrink-0`,children:[(0,K.jsx)(Ig,{children:`Agent Details`}),(0,K.jsx)(Rg,{onClose:()=>n(!1)})]}),(0,K.jsxs)(`div`,{className:`px-6 pb-6 overflow-y-auto flex-1`,children:[(0,K.jsxs)(`div`,{className:`mb-6`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-3 mb-2`,children:[(0,K.jsx)($l,{className:`h-6 w-6 text-primary`}),(0,K.jsx)(`h2`,{className:`text-xl font-semibold text-foreground`,children:e.name||e.id})]}),e.description&&(0,K.jsx)(`p`,{className:`text-muted-foreground`,children:e.description})]}),(0,K.jsx)(`div`,{className:`h-px bg-border mb-6`}),(0,K.jsxs)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 gap-4 mb-4`,children:[(e.model_id||e.chat_client_type)&&(0,K.jsx)(cb,{title:`Model & Client`,icon:(0,K.jsx)($l,{className:`h-4 w-4 text-muted-foreground`}),children:(0,K.jsxs)(`div`,{className:`space-y-1`,children:[e.model_id&&(0,K.jsx)(`div`,{className:`font-mono text-foreground`,children:e.model_id}),e.chat_client_type&&(0,K.jsxs)(`div`,{className:`text-xs`,children:[`(`,e.chat_client_type,`)`]})]})}),(0,K.jsx)(cb,{title:`Source`,icon:r,children:(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(`div`,{className:`text-foreground`,children:i}),e.module_path&&(0,K.jsx)(`div`,{className:`font-mono text-xs break-all`,children:e.module_path})]})}),(0,K.jsx)(cb,{title:`Environment`,icon:e.has_env?(0,K.jsx)(Cu,{className:`h-4 w-4 text-orange-500`}):(0,K.jsx)(_u,{className:`h-4 w-4 text-green-500`}),className:`md:col-span-2`,children:(0,K.jsx)(`div`,{className:e.has_env?`text-orange-600 dark:text-orange-400`:`text-green-600 dark:text-green-400`,children:e.has_env?`Requires environment variables`:`No environment variables required`})})]}),e.instructions&&(0,K.jsx)(cb,{title:`Instructions`,icon:(0,K.jsx)(Uu,{className:`h-4 w-4 text-muted-foreground`}),className:`mb-4`,children:(0,K.jsx)(`div`,{className:`text-sm text-foreground leading-relaxed whitespace-pre-wrap`,children:e.instructions})}),(0,K.jsxs)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 gap-4`,children:[e.tools&&e.tools.length>0&&(0,K.jsx)(cb,{title:`Tools (${e.tools.length})`,icon:(0,K.jsx)(Td,{className:`h-4 w-4 text-muted-foreground`}),children:(0,K.jsx)(`ul`,{className:`space-y-1`,children:e.tools.map((e,t)=>(0,K.jsxs)(`li`,{className:`font-mono text-xs text-foreground`,children:[`• `,e]},t))})}),e.middleware&&e.middleware.length>0&&(0,K.jsx)(cb,{title:`Middlewares (${e.middleware.length})`,icon:(0,K.jsx)(Td,{className:`h-4 w-4 text-muted-foreground`}),children:(0,K.jsx)(`ul`,{className:`space-y-1`,children:e.middleware.map((e,t)=>(0,K.jsxs)(`li`,{className:`font-mono text-xs text-foreground`,children:[`• `,e]},t))})}),e.context_provider&&(0,K.jsx)(cb,{title:`Context Provider`,icon:(0,K.jsx)(Fu,{className:`h-4 w-4 text-muted-foreground`}),className:!e.middleware||e.middleware.length===0?`md:col-start-2`:``,children:(0,K.jsx)(`div`,{className:`font-mono text-xs text-foreground`,children:e.context_provider})})]})]})]})})}function ub(e){return e.type===`output_file`||e.type===`output_image`||e.type===`output_data`}function db(e){return e.type===`message`&&Array.isArray(e.content)}function fb(e,t){return e.id&&t.id?e.id===t.id:e.type===`output_file`&&t.type===`output_file`?e.file_url===t.file_url&&e.file_data===t.file_data&&e.filename===t.filename&&e.mime_type===t.mime_type:e.type===`output_image`&&t.type===`output_image`?e.image_url===t.image_url&&e.mime_type===t.mime_type:e.type===`output_data`&&t.type===`output_data`&&e.data===t.data&&e.mime_type===t.mime_type}function pb(e,t,n=!1){let r=[...e];for(let e of t){let t=ub(e)?[e]:db(e)?e.content.filter(ub):[];for(let e of t){if(r.some(t=>ub(t)&&fb(t,e)))continue;let t=e.type===`output_file`&&e.mime_type.startsWith(`audio/`)&&!r.some(e=>e.type===`output_file`&&e.mime_type.startsWith(`audio/`));r.push(e.type===`output_file`?{...e,auto_play:n&&t}:e)}}return r}Cp();var mb=50,hb=`[Earlier streaming content omitted after refresh] -`;function Wy(e){let t=e.accumulatedParts?.map(e=>({...e}))??(e.accumulatedText?[{itemId:e.lastMessageId,contentIndex:0,type:e.accumulatedTextType??`text`,text:e.accumulatedText}]:[]);return e.accumulatedTextIsPreview&&t.unshift({itemId:e.lastMessageId,contentIndex:-1,type:`text`,text:Uy}),t}function Gy(e,t){return t===`refusal`?{type:`refusal`,refusal:e}:{type:`text`,text:e}}function Ky(e){return e.map(e=>Gy(e.text,e.type))}function qy({item:e,toolCalls:t=[],toolResults:n=[]}){let[r,i]=(0,y.useState)(!1),[a,o]=(0,y.useState)(!1),[s,c]=(0,y.useState)(!1),l=Q(e=>e.showToolCalls),u=()=>e.type===`message`?e.content.filter(e=>e.type===`text`||e.type===`output_text`||e.type===`refusal`).map(e=>`refusal`in e?e.refusal:e.text).join(` -`):``,d=async()=>{let e=u();if(e)try{await navigator.clipboard.writeText(e),o(!0),setTimeout(()=>o(!1),2e3)}catch(e){console.error(`Failed to copy:`,e)}};if(e.type===`message`){let o=e.role===`user`,f=e.status===`incomplete`,p=o?cf:f?hu:$l,m=u();return(0,K.jsxs)(`div`,{className:`flex gap-3 ${o?`flex-row-reverse`:``}`,onMouseEnter:()=>i(!0),onMouseLeave:()=>i(!1),children:[(0,K.jsx)(`div`,{className:`flex h-8 w-8 shrink-0 select-none items-center justify-center rounded-md border ${o?`bg-primary text-primary-foreground`:f?`bg-orange-100 dark:bg-orange-900 text-orange-600 dark:text-orange-400 border-orange-200 dark:border-orange-800`:`bg-muted`}`,children:(0,K.jsx)(p,{className:`h-4 w-4`})}),(0,K.jsxs)(`div`,{className:`flex flex-col space-y-1 ${o?`items-end`:`items-start`} max-w-[80%]`,children:[(0,K.jsxs)(`div`,{className:`relative group`,children:[(0,K.jsxs)(`div`,{className:`rounded px-3 py-2 text-sm ${o?`bg-primary text-primary-foreground`:f?`bg-orange-50 dark:bg-orange-950/50 text-orange-800 dark:text-orange-200 border border-orange-200 dark:border-orange-800`:`bg-muted`}`,children:[f&&(0,K.jsxs)(`div`,{className:`flex items-start gap-2 mb-2`,children:[(0,K.jsx)(hu,{className:`h-4 w-4 text-orange-500 mt-0.5 flex-shrink-0`}),(0,K.jsx)(`span`,{className:`font-medium text-sm`,children:`Unable to process request`})]}),(0,K.jsx)(`div`,{className:f?`text-xs leading-relaxed break-all`:``,children:(0,K.jsx)(Cv,{item:e})})]}),m&&r&&(0,K.jsx)(`button`,{onClick:d,className:`absolute top-1 right-1 +`;function gb(e){let t=e.accumulatedParts?.map(e=>({...e}))??(e.accumulatedText?[{itemId:e.lastMessageId,contentIndex:0,type:e.accumulatedTextType??`text`,text:e.accumulatedText}]:[]);return e.accumulatedTextIsPreview&&t.unshift({itemId:e.lastMessageId,contentIndex:-1,type:`text`,text:hb}),t}function _b(e,t){return t===`refusal`?{type:`refusal`,refusal:e}:{type:`text`,text:e}}function vb(e){return e.map(e=>_b(e.text,e.type))}function yb({item:e,toolCalls:t=[],toolResults:n=[]}){let[r,i]=(0,y.useState)(!1),[a,o]=(0,y.useState)(!1),[s,c]=(0,y.useState)(!1),l=Q(e=>e.showToolCalls),u=()=>e.type===`message`?e.content.filter(e=>e.type===`text`||e.type===`output_text`||e.type===`refusal`).map(e=>`refusal`in e?e.refusal:e.text).join(` +`):``,d=async()=>{let e=u();if(e)try{await navigator.clipboard.writeText(e),o(!0),setTimeout(()=>o(!1),2e3)}catch(e){console.error(`Failed to copy:`,e)}};if(e.type===`message`){let o=e.role===`user`,f=e.status===`incomplete`,p=o?ff:f?hu:$l,m=u();return(0,K.jsxs)(`div`,{className:`flex gap-3 ${o?`flex-row-reverse`:``}`,onMouseEnter:()=>i(!0),onMouseLeave:()=>i(!1),children:[(0,K.jsx)(`div`,{className:`flex h-8 w-8 shrink-0 select-none items-center justify-center rounded-md border ${o?`bg-primary text-primary-foreground`:f?`bg-orange-100 dark:bg-orange-900 text-orange-600 dark:text-orange-400 border-orange-200 dark:border-orange-800`:`bg-muted`}`,children:(0,K.jsx)(p,{className:`h-4 w-4`})}),(0,K.jsxs)(`div`,{className:`flex flex-col space-y-1 ${o?`items-end`:`items-start`} max-w-[80%]`,children:[(0,K.jsxs)(`div`,{className:`relative group`,children:[(0,K.jsxs)(`div`,{className:`rounded px-3 py-2 text-sm ${o?`bg-primary text-primary-foreground`:f?`bg-orange-50 dark:bg-orange-950/50 text-orange-800 dark:text-orange-200 border border-orange-200 dark:border-orange-800`:`bg-muted`}`,children:[f&&(0,K.jsxs)(`div`,{className:`flex items-start gap-2 mb-2`,children:[(0,K.jsx)(hu,{className:`h-4 w-4 text-orange-500 mt-0.5 flex-shrink-0`}),(0,K.jsx)(`span`,{className:`font-medium text-sm`,children:`Unable to process request`})]}),(0,K.jsx)(`div`,{className:f?`text-xs leading-relaxed break-all`:``,children:(0,K.jsx)(Gv,{item:e})})]}),m&&r&&(0,K.jsx)(`button`,{onClick:d,className:`absolute top-1 right-1 p-1.5 rounded-md border shadow-sm bg-background hover:bg-accent text-muted-foreground hover:text-foreground transition-all duration-200 ease-in-out - opacity-0 group-hover:opacity-100`,title:a?`Copied!`:`Copy message`,children:a?(0,K.jsx)(au,{className:`h-3.5 w-3.5 text-green-600 dark:text-green-400`}):(0,K.jsx)(Nu,{className:`h-3.5 w-3.5`})})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-muted-foreground font-mono`,children:[(0,K.jsx)(`span`,{children:e.created_at?new Date(e.created_at*1e3).toLocaleTimeString():new Date().toLocaleTimeString()}),!o&&e.usage&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`span`,{children:`•`}),(0,K.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,K.jsxs)(`span`,{className:`text-blue-600 dark:text-blue-400`,children:[`↑`,e.usage.input_tokens]}),(0,K.jsxs)(`span`,{className:`text-green-600 dark:text-green-400`,children:[`↓`,e.usage.output_tokens]}),(0,K.jsxs)(`span`,{children:[`(`,e.usage.total_tokens,` tokens)`]})]})]}),!o&&l&&t.length>0&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`span`,{children:`•`}),(0,K.jsxs)(`button`,{onClick:()=>c(!s),className:`flex items-center gap-1 hover:text-foreground transition-colors`,title:`${t.length} tool call${t.length>1?`s`:``} - click to ${s?`hide`:`show`} details`,children:[(0,K.jsx)(ff,{className:`h-3 w-3`}),(0,K.jsx)(`span`,{children:t.length})]})]})]}),!o&&s&&t.length>0&&(0,K.jsx)(`div`,{className:`mt-2 ml-0 p-3 bg-muted/30 rounded-md border border-muted`,children:(0,K.jsx)(`div`,{className:`space-y-2`,children:t.map(e=>{let t=n.find(t=>t.call_id===e.call_id);return(0,K.jsx)(`div`,{className:`text-xs`,children:(0,K.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,K.jsx)(ff,{className:`h-3 w-3 text-muted-foreground mt-0.5 flex-shrink-0`}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`font-mono text-muted-foreground`,children:[(0,K.jsx)(`span`,{className:`text-blue-600 dark:text-blue-400`,children:e.name}),(0,K.jsx)(`span`,{className:`text-muted-foreground/60 ml-1`,children:e.arguments&&(0,K.jsxs)(`span`,{className:`break-all`,children:[`(`,e.arguments,`)`]})})]}),t&&t.output&&(0,K.jsx)(`div`,{className:`mt-1 pl-5 border-l-2 border-green-600/20`,children:(0,K.jsxs)(`div`,{className:`flex items-start gap-1`,children:[(0,K.jsx)(ru,{className:`h-3 w-3 text-green-600 dark:text-green-400 mt-0.5 flex-shrink-0`}),(0,K.jsx)(`pre`,{className:`font-mono text-muted-foreground whitespace-pre-wrap break-all`,children:t.output.substring(0,200)+(t.output.length>200?`...`:``)})]})}),e.status===`incomplete`&&(0,K.jsx)(`div`,{className:`mt-1 pl-5 border-l-2 border-orange-600/20`,children:(0,K.jsxs)(`div`,{className:`flex items-start gap-1`,children:[(0,K.jsx)(mf,{className:`h-3 w-3 text-orange-600 dark:text-orange-400 mt-0.5 flex-shrink-0`}),(0,K.jsx)(`span`,{className:`font-mono text-orange-600 dark:text-orange-400`,children:`Failed`})]})})]})]})},e.id)})})})]})]})}return e.type===`function_call`||e.type,null}function Jy({selectedAgent:e,onDebugEvent:t}){let n=Q(e=>e.currentConversation),r=Q(e=>e.availableConversations),i=Q(e=>e.chatItems),a=Q(e=>e.isStreaming),o=Q(e=>e.isSubmitting),s=Q(e=>e.loadingConversations),c=Q(e=>e.uiMode),l=Q(e=>e.conversationUsage),u=Q(e=>e.pendingApprovals),d=Q(e=>e.oaiMode),f=Q(e=>e.streamingEnabled),p=Q(e=>e.setCurrentConversation),m=Q(e=>e.setAvailableConversations),h=Q(e=>e.setChatItems),g=Q(e=>e.setIsStreaming),_=Q(e=>e.setIsSubmitting),v=Q(e=>e.setLoadingConversations),b=Q(e=>e.updateConversationUsage),x=Q(e=>e.setPendingApprovals),[S,C]=(0,y.useState)(!1),[w,T]=(0,y.useState)(null),[E,D]=(0,y.useState)(!1),[O,k]=(0,y.useState)(!1),{isCancelling:A,createAbortSignal:j,handleCancel:M,resetCancelling:N}=y_(),{isDragOver:P,droppedFiles:F,clearDroppedFiles:I,dragHandlers:L}=x_({disabled:o||a}),R=(0,y.useRef)(null),z=(0,y.useRef)(null),B=(0,y.useRef)(null),ee=(0,y.useRef)(!1),V=(0,y.useRef)(``),H=(0,y.useRef)([]),te=(0,y.useRef)(0),ne=(0,y.useRef)(new Set),re=(0,y.useCallback)(()=>{for(let e of ne.current)e.abort();ne.current.clear()},[]),ie=(0,y.useCallback)(e=>{let n=new AbortController;ne.current.add(n),R_.getTraceEvents(e,Q.getState().serverCapabilities.trace_retrieval,n.signal).then(e=>{if(!n.signal.aborted)for(let n of e)t(n)}).catch(e=>{b_(e)||console.debug(`Failed to retrieve response traces`,e)}).finally(()=>{ne.current.delete(n)})},[t]),ae=(0,y.useCallback)(()=>{re(),t(`clear`)},[re,t]);(0,y.useEffect)(()=>re,[e?.id,re]);let oe=(0,y.useCallback)((e,t=`in_progress`,n=!1)=>{let r=performance.now();if(!n&&r-te.current{if(n.id!==e||n.type!==`message`)return n;let r=n.content.filter(e=>e.type!==`text`&&e.type!==`output_text`&&e.type!==`refusal`),i=Ky(H.current),o=n.content.filter(e=>e.type===`text`||e.type===`output_text`||e.type===`refusal`);return JSON.stringify(o)===JSON.stringify(i)&&n.status===t?n:(a=!0,{...n,content:[...r,...i],status:t})});a?(te.current=r,h(o)):n&&(te.current=r)},[h]);(0,y.useEffect)(()=>{if(!z.current)return;let e=R.current?.querySelector(`[data-radix-scroll-area-viewport]`),t=!1;if(e){let{scrollTop:n,scrollHeight:r,clientHeight:i}=e,a=r-n-i<100;t=ee.current||a}else t=!0;t&&z.current.scrollIntoView({behavior:a?`instant`:`smooth`}),ee.current&&!a&&(ee.current=!1)},[i,a]),(0,y.useEffect)(()=>{},[a,o]),(0,y.useEffect)(()=>{let n=async(e,n,r)=>{let i=h_(n.id);if(!i||!i.responseId){g(!1);return}try{let a={model:r.id,input:[],stream:!0,conversation:n.id},o=R_.streamAgentExecutionOpenAIDirect(r.id,a,n.id,void 0,i.responseId);te.current=0;for await(let n of o){if(t(n),n.type===`response.completed`){let e=n.response?.usage;e&&(B.current={input_tokens:e.input_tokens,output_tokens:e.output_tokens,total_tokens:e.total_tokens});continue}if(n.type===`response.failed`){let t=n.response?.error,r=t?typeof t==`object`&&`message`in t?t.message:JSON.stringify(t):`Request failed`;if(V.current){oe(e.id,`incomplete`,!0),g(!1);return}let i=Q.getState().chatItems;h(i.map(t=>t.id===e.id&&t.type===`message`?{...t,content:[{type:`text`,text:V.current||r}],status:`incomplete`}:t)),g(!1);return}if(n.type===`response.function_approval.requested`){let t=n;oe(e.id,`in_progress`,!0),x([...Q.getState().pendingApprovals,{request_id:t.request_id,function_call:t.function_call}]);continue}if(n.type===`response.function_approval.responded`){let e=n;x(Q.getState().pendingApprovals.filter(t=>t.request_id!==e.request_id));continue}if(n.type===`error`){let t=n.message||`An error occurred`;if(V.current){oe(e.id,`incomplete`,!0),g(!1);return}let r=Q.getState().chatItems;h(r.map(n=>n.id===e.id&&n.type===`message`?{...n,content:[{type:`text`,text:V.current||t}],status:`incomplete`}:n)),g(!1);return}(n.type===`response.output_text.delta`||n.type===`response.refusal.delta`)&&`delta`in n&&n.delta&&(H.current=a_(H.current,n),V.current=H.current.map(e=>e.text).join(``),oe(e.id))}let s=B.current;oe(e.id,`in_progress`,!0);let c=Q.getState().chatItems;h(c.map(t=>t.id===e.id&&t.type===`message`?{...t,status:`completed`,usage:s||void 0}:t)),g(!1),s&&b(s.total_tokens),B.current=null}catch(t){let n=Q.getState().chatItems;h(n.map(n=>n.id===e.id&&n.type===`message`?{...n,content:[{type:`text`,text:`Error resuming stream: ${t instanceof Error?t.message:`Unknown error`}`}],status:`incomplete`}:n)),g(!1)}};h([]),g(!1),p(void 0),V.current=``,H.current=[],te.current=0,(async()=>{if(e){v(!0);try{try{let{data:r}=await R_.listConversations(e.id);if(m(r),r.length>0){let i=r[0];p(i);try{let r=[],a=!0,o,s=[];for(;a;){let e=await R_.listConversationItems(i.id,{order:`asc`,after:o});r=r.concat(e.data),a=e.has_more,e.metadata?.traces&&e.metadata.traces.length>0&&(s=e.metadata.traces),a&&e.data.length>0&&(o=e.data[e.data.length-1].id)}if(h(r),g(!1),s.length>0){ae();for(let e of s)t({type:`response.trace.completed`,data:e,sequence_number:0})}let c=h_(i.id);if(c&&!c.completed){let t=Wy(c);H.current=t,V.current=t.map(e=>e.text).join(``);let a={id:c.lastMessageId||`assistant-${Date.now()}`,type:`message`,role:`assistant`,content:Ky(t),status:`in_progress`};h([...r,a]),g(!0),setTimeout(()=>{n(a,i,e)},100)}setTimeout(()=>{z.current?.scrollIntoView({behavior:`smooth`})},100)}catch{console.debug(`No items found for conversation ${i.id}, starting fresh`),h([]),g(!1)}return}}catch{}let r=`devui_convs_${e.id}`,i=localStorage.getItem(r);if(i)try{let e=JSON.parse(i);if(e.length>0)try{await R_.listConversationItems(e[0].id),m(e),p(e[0]),h([]),g(!1);return}catch{console.debug(`Cached conversation ${e[0].id} no longer exists, clearing cache`),localStorage.removeItem(r)}}catch{localStorage.removeItem(r)}let a=await R_.createConversation({agent_id:e.id});p(a),m([a]),h([]),g(!1),T(null),localStorage.setItem(r,JSON.stringify([a]))}catch(e){m([]),h([]),g(!1);let t=e instanceof Error?e.message:`Failed to create conversation`;T({message:t,type:`conversation_creation_error`})}finally{v(!1)}}})()},[e,t,ae,oe,h,g,v,m,p,x,b]);let se=(0,y.useCallback)(async()=>{if(e)try{let t=await R_.createConversation({agent_id:e.id});p(t),m([t,...Q.getState().availableConversations]),h([]),g(!1),T(null),Q.setState({conversationUsage:{total_tokens:0,message_count:0}}),V.current=``,H.current=[],ae();let n=`devui_convs_${e.id}`,i=[t,...r];localStorage.setItem(n,JSON.stringify(i))}catch(e){let t=e instanceof Error?e.message:`Failed to create conversation`;T({message:t,type:`conversation_creation_error`})}},[e,r,ae,p,m,h,g]),U=(0,y.useCallback)(async(e,t)=>{if(t&&(t.preventDefault(),t.stopPropagation()),confirm(`Delete this conversation? This cannot be undone.`))try{if(await R_.deleteConversation(e)){let t=r.filter(t=>t.id!==e);if(m(t),n?.id===e){if(t.length>0){let e=t[0];p(e),h([]),g(!1)}else p(void 0),h([]),g(!1),Q.setState({conversationUsage:{total_tokens:0,message_count:0}}),V.current=``,H.current=[]}ae()}}catch{alert(`Failed to delete conversation. Please try again.`)}},[r,n,ae,m,p,h,g]),ce=(0,y.useCallback)(async()=>{if(E||!e)return;D(!0);let t=Q.getState().addToast,n=Q.getState().updateAgent;try{await R_.reloadEntity(e.id),n(await R_.getAgentInfo(e.id)),t({message:`${e.name} has been reloaded successfully`,type:`success`})}catch(e){t({message:`Failed to reload: ${e instanceof Error?e.message:`Failed to reload entity`}`,type:`error`,duration:6e3})}finally{D(!1)}},[E,e]),le=(0,y.useCallback)(async e=>{let n=r.find(t=>t.id===e);if(n){p(n),ae();try{let n=[],r=!0,i,a=[];for(;r;){let t=await R_.listConversationItems(e,{order:`asc`,after:i});n=n.concat(t.data),r=t.has_more,t.metadata?.traces&&t.metadata.traces.length>0&&(a=t.metadata.traces),r&&t.data.length>0&&(i=t.data[t.data.length-1].id)}let o=n;if(h(o),g(!1),a.length>0)for(let e of a)t({type:`response.trace.completed`,data:e,sequence_number:0});Q.setState({conversationUsage:{total_tokens:0,message_count:o.length}});let s=h_(e);if(s?.accumulatedText){let e=Wy(s);H.current=e,V.current=e.map(e=>e.text).join(``);let t={id:`assistant-${Date.now()}`,type:`message`,role:`assistant`,content:Ky(e),status:`in_progress`};h([...o,t]),g(!0)}setTimeout(()=>{z.current?.scrollIntoView({behavior:`smooth`})},100)}catch{console.debug(`No items found for conversation ${e}, starting with empty chat`),h([]),g(!1),Q.setState({conversationUsage:{total_tokens:0,message_count:0}})}V.current=``,H.current=[]}},[r,t,ae,p,h,g]),ue=async(e,t)=>{let r=u.find(t=>t.request_id===e);if(!r)return;let i=Math.floor(Date.now()/1e3),a={id:`user-approval-${Date.now()}`,type:`message`,role:`user`,content:[{type:`function_approval_request`,request_id:e,status:t?`approved`:`rejected`,function_call:r.function_call}],status:`completed`,created_at:i},o=Q.getState().chatItems;h([...o,a]);let s={input:[{type:`message`,role:`user`,content:[{type:`function_approval_response`,request_id:e,approved:t,function_call:r.function_call}]}],conversation_id:n?.id};return x(Q.getState().pendingApprovals.filter(t=>t.request_id!==e)),s},de=(0,y.useCallback)(async r=>{if(!e)return;let i=r.input.some(e=>e.type===`message`&&Array.isArray(e.content)&&e.content.some(e=>e.type===`function_approval_response`)),a=[];for(let e of r.input)if(e.type===`message`&&Array.isArray(e.content)){for(let t of e.content)if(t.type===`input_text`)a.push({type:`text`,text:t.text});else if(t.type===`input_image`)a.push({type:`input_image`,image_url:t.image_url||``,detail:`auto`});else if(t.type===`input_file`){let e=t;a.push({type:`input_file`,file_data:e.file_data,filename:e.filename})}}let o=Math.floor(Date.now()/1e3);if(!i&&a.length>0){let e={id:`user-${Date.now()}`,type:`message`,role:`user`,content:a,status:`completed`,created_at:o};h([...Q.getState().chatItems,e])}g(!0);let s={id:`assistant-${Date.now()}`,type:`message`,role:`assistant`,content:[],status:`in_progress`,created_at:o};h([...Q.getState().chatItems,s]);let c,l;try{let i=n;if(!i)try{i=await R_.createConversation({agent_id:e.id}),p(i),m([i,...Q.getState().availableConversations]),T(null)}catch(e){let t=e instanceof Error?e.message:`Failed to create conversation`;T({message:t,type:`conversation_creation_error`}),_(!1),g(!1);return}i?.id&&R_.clearStreamingState(i.id);let a={input:r.input,conversation_id:i?.id};V.current=``,H.current=[],te.current=0,l=j();let o=R_.streamAgentExecutionOpenAI(e.id,a,l);for await(let e of o){if(t(e),`response`in e&&e.response&&typeof e.response==`object`&&`id`in e.response&&typeof e.response.id==`string`&&(c=e.response.id),e.type===`response.completed`){let t=e.response?.usage;t&&(B.current={input_tokens:t.input_tokens,output_tokens:t.output_tokens,total_tokens:t.total_tokens});continue}if(e.type===`response.failed`){let t=e.response?.error,n=`Request failed`;if(t&&(typeof t==`object`&&`message`in t?(n=t.message,`code`in t&&t.code&&(n+=` (Code: ${t.code})`)):typeof t==`string`&&(n=t)),V.current){oe(s.id,`incomplete`,!0),g(!1);return}let r=Q.getState().chatItems;h(r.map(e=>e.id===s.id&&e.type===`message`?{...e,content:[{type:`text`,text:V.current||n}],status:`incomplete`}:e)),g(!1);return}if(e.type===`response.function_approval.requested`){let t=e;oe(s.id,`in_progress`,!0),x([...Q.getState().pendingApprovals,{request_id:t.request_id,function_call:t.function_call}]);let n=Q.getState().chatItems;h(n.map(e=>e.id===s.id&&e.type===`message`?{...e,content:[...e.content,{type:`function_approval_request`,request_id:t.request_id,status:`pending`,function_call:t.function_call}],status:`in_progress`}:e));continue}if(e.type===`response.function_call_arguments.delta`){let t=e,n=Q.getState().chatItems;h(n.map(e=>e.type===`function_call`&&e.call_id===t.item_id?{...e,arguments:(e.arguments||``)+(t.delta||``)}:e));continue}if(e.type===`response.function_result.complete`){let t=e,n={id:`result-${Date.now()}`,type:`function_call_output`,call_id:t.call_id,output:t.output,status:t.status===`completed`?`completed`:`incomplete`,created_at:Math.floor(Date.now()/1e3)},r=Q.getState().chatItems;h([...r,n]);continue}if(e.type===`error`){let t=e.message||`An error occurred`;if(V.current){oe(s.id,`incomplete`,!0),g(!1);return}let n=Q.getState().chatItems;h(n.map(e=>e.id===s.id&&e.type===`message`?{...e,content:[{type:`text`,text:t}],status:`incomplete`}:e)),g(!1);return}if(e.type===`response.output_item.added`){let t=e.item;if(oe(s.id,`in_progress`,!0),t.type===`function_call`){let e=t,n={id:e.id||`call-${Date.now()}`,type:`function_call`,name:e.name,arguments:e.arguments||``,call_id:e.call_id,status:e.status||`in_progress`,created_at:Math.floor(Date.now()/1e3)},r=Q.getState().chatItems;h([...r,n]);continue}let n=Q.getState().chatItems;h(n.map(e=>{if(e.id===s.id&&e.type===`message`){let n=e.content,r=null;if(t.type===`output_image`?r={type:`output_image`,image_url:t.image_url,alt_text:t.alt_text,mime_type:t.mime_type}:t.type===`output_file`?r={type:`output_file`,filename:t.filename,file_url:t.file_url,file_data:t.file_data,mime_type:t.mime_type}:t.type===`output_data`&&(r={type:`output_data`,data:t.data,mime_type:t.mime_type,description:t.description}),r)return{...e,content:[...n,r],status:`in_progress`}}return e}));continue}(e.type===`response.output_text.delta`||e.type===`response.refusal.delta`)&&`delta`in e&&e.delta&&(H.current=a_(H.current,e),V.current=H.current.map(e=>e.text).join(``),oe(s.id))}let u=B.current;oe(s.id,`in_progress`,!0);let d=Q.getState().chatItems;h(d.map(e=>e.id===s.id&&e.type===`message`?{...e,status:`completed`,usage:u||void 0}:e)),g(!1),u&&b(u.total_tokens),B.current=null}catch(e){if(b_(e))k(!0),oe(s.id,V.current?`completed`:`incomplete`,!0);else if(V.current)oe(s.id,`incomplete`,!0);else{let t=Q.getState().chatItems;h(t.map(t=>t.id===s.id&&t.type===`message`?{...t,content:[{type:`text`,text:`Error: ${e instanceof Error?e.message:`Failed to get response`}`}],status:`incomplete`}:t))}g(!1),N()}finally{c&&!l?.aborted&&ie(c)}},[e,n,t,oe,h,g,_,p,m,x,b,j,N,ie]),fe=(0,y.useCallback)(async r=>{if(!e)return;let i=r.input.some(e=>e.type===`message`&&Array.isArray(e.content)&&e.content.some(e=>e.type===`function_approval_response`)),a=[];for(let e of r.input)if(e.type===`message`&&Array.isArray(e.content)){for(let t of e.content)if(t.type===`input_text`)a.push({type:`text`,text:t.text});else if(t.type===`input_image`)a.push({type:`input_image`,image_url:t.image_url||``,detail:`auto`});else if(t.type===`input_file`){let e=t;a.push({type:`input_file`,file_data:e.file_data,filename:e.filename})}}let o=Math.floor(Date.now()/1e3);if(!i&&a.length>0){let e={id:`user-${Date.now()}`,type:`message`,role:`user`,content:a,status:`completed`,created_at:o};h([...Q.getState().chatItems,e])}_(!0);try{let i=n;if(!i)try{i=await R_.createConversation({agent_id:e.id}),p(i),m([i,...Q.getState().availableConversations]),T(null)}catch(e){let t=e instanceof Error?e.message:`Failed to create conversation`;T({message:t,type:`conversation_creation_error`}),_(!1);return}let a=await R_.runAgentSync(e.id,{input:r.input,conversation_id:i?.id}),s=[],c=[],l=[];if(a.output){for(let e of a.output)if(e.type===`message`){let t=e;if(t.content)for(let e of t.content)e.type===`output_text`?s.push({type:`text`,text:e.text}):e.type===`refusal`?s.push({type:`refusal`,refusal:e.refusal}):(e.type===`output_image`||e.type===`output_file`||e.type===`output_data`)&&s.push(e)}else if(e.type===`function_call`){let t=e;c.push({id:t.id||`call-${Date.now()}`,type:`function_call`,name:t.name,arguments:t.arguments||``,call_id:t.call_id,status:t.status||`completed`,created_at:o})}else if(e.type===`function_call_output`){let t=e;l.push({id:`result-${Date.now()}`,type:`function_call_output`,call_id:t.call_id,output:t.output,status:`completed`,created_at:o})}}let u={id:`assistant-${Date.now()}`,type:`message`,role:`assistant`,content:s,status:`completed`,created_at:o,usage:a.usage?{input_tokens:a.usage.input_tokens,output_tokens:a.usage.output_tokens,total_tokens:a.usage.total_tokens}:void 0},d=[...Q.getState().chatItems,u,...c,...l];h(d),a.usage&&b(a.usage.total_tokens),t({type:`response.completed`,response:a,sequence_number:0}),typeof a.id==`string`&&ie(a.id)}catch(e){let t=e instanceof Error?e.message:`Failed to get response`,n={id:`assistant-${Date.now()}`,type:`message`,role:`assistant`,content:[{type:`text`,text:`Error: ${t}`}],status:`incomplete`,created_at:o},r=Q.getState().chatItems;h([...r,n])}finally{_(!1)}},[e,n,t,h,p,m,b,_,ie]),pe=async t=>{if(e&&t.length!==0){ee.current=!0,k(!1),_(!0);try{let e={input:[{type:`message`,role:`user`,content:t}],conversation_id:n?.id};f?await de(e):await fe(e)}finally{_(!1)}}};return(0,K.jsxs)(`div`,{className:`flex h-[calc(100vh-3.5rem)] flex-col relative`,...L,children:[P&&(0,K.jsx)(`div`,{className:`absolute inset-0 z-50 bg-blue-50/95 dark:bg-blue-950/95 backdrop-blur-sm flex items-center justify-center border-2 border-dashed border-blue-400 dark:border-blue-500 rounded-lg m-2`,children:(0,K.jsxs)(`div`,{className:`text-center p-8`,children:[(0,K.jsx)(`div`,{className:`text-blue-600 dark:text-blue-400 text-lg font-medium mb-2`,children:`Drop files here`}),(0,K.jsx)(`div`,{className:`text-blue-500/80 dark:text-blue-400/70 text-sm`,children:`Images, PDFs, audio, and other files`})]})}),(0,K.jsxs)(`div`,{className:`border-b pb-2 p-4 flex-shrink-0`,children:[(0,K.jsxs)(`div`,{className:`flex flex-col lg:flex-row lg:items-center lg:justify-between gap-3 mb-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0`,children:[(0,K.jsx)(`h2`,{className:`font-semibold text-sm truncate`,children:(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)($l,{className:`h-4 w-4 flex-shrink-0`}),(0,K.jsx)(`span`,{className:`truncate`,children:d.enabled?`Chat with ${d.model}`:`Chat with ${e.name||e.id}`})]})}),!d.enabled&&c===`developer`&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(q,{variant:`ghost`,size:`sm`,onClick:()=>C(!0),className:`h-6 w-6 p-0 flex-shrink-0`,title:`View agent details`,children:(0,K.jsx)(td,{className:`h-4 w-4`})}),e.source!==`in_memory`&&(0,K.jsx)(q,{variant:`ghost`,size:`sm`,onClick:ce,disabled:E,className:`h-6 w-6 p-0 flex-shrink-0`,title:E?`Reloading...`:`Reload entity code (hot reload)`,children:(0,K.jsx)(Nd,{className:`h-4 w-4 ${E?`animate-spin`:``}`})})]})]}),(0,K.jsxs)(`div`,{className:`flex flex-col sm:flex-row items-stretch sm:items-center gap-2 flex-shrink-0`,children:[(0,K.jsxs)(Ny,{value:n?.id||``,onValueChange:le,disabled:s||o,children:[(0,K.jsx)(Fy,{className:`w-full sm:w-64`,children:(0,K.jsx)(Py,{placeholder:s?`Loading...`:r.length===0?`No conversations`:n?`Conversation ${n.id.slice(-8)}`:`Select conversation`,children:n&&(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-xs`,children:[(0,K.jsxs)(`span`,{children:[`Conversation `,n.id.slice(-8)]}),l.total_tokens>0&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`•`}),(0,K.jsxs)(`span`,{className:`text-muted-foreground`,children:[l.total_tokens>=1e3?`${(l.total_tokens/1e3).toFixed(1)}k`:l.total_tokens,` `,`tokens`]})]})]})})}),(0,K.jsx)(Iy,{children:r.map(e=>(0,K.jsx)(Ly,{value:e.id,children:(0,K.jsxs)(`div`,{className:`flex items-center justify-between w-full`,children:[(0,K.jsxs)(`span`,{children:[`Conversation `,e.id.slice(-8)]}),e.created_at&&(0,K.jsx)(`span`,{className:`text-xs text-muted-foreground ml-3`,children:new Date(e.created_at*1e3).toLocaleDateString()})]})},e.id))})]}),(0,K.jsx)(q,{variant:`outline`,size:`icon`,onClick:()=>n&&U(n.id),disabled:!n||o,title:n?`Delete Conversation ${n.id.slice(-8)}`:`No conversation selected`,children:(0,K.jsx)(tf,{className:`h-4 w-4`})}),(0,K.jsxs)(q,{variant:`outline`,size:`lg`,onClick:se,disabled:!e||o,className:`whitespace-nowrap `,children:[(0,K.jsx)(jd,{className:`h-4 w-4 mr-2`}),(0,K.jsx)(`span`,{className:`hidden md:inline`,children:` New Conversation`})]})]})]}),d.enabled?(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Using OpenAI model directly. Local agent tools and instructions are not applied.`}):e.description&&(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:e.description})]}),w&&(0,K.jsxs)(`div`,{className:`mx-4 mt-2 p-3 bg-destructive/10 border border-destructive/30 rounded-md flex items-start gap-2`,children:[(0,K.jsx)(hu,{className:`h-4 w-4 text-destructive mt-0.5 flex-shrink-0`}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsx)(`div`,{className:`text-sm font-medium text-destructive`,children:`Failed to Create Conversation`}),(0,K.jsx)(`div`,{className:`text-xs text-destructive/90 mt-1 break-words`,children:w.message}),w.code&&(0,K.jsxs)(`div`,{className:`text-xs text-destructive/70 mt-1`,children:[`Error Code: `,w.code]})]}),(0,K.jsx)(`button`,{onClick:()=>T(null),className:`text-destructive hover:text-destructive/80 flex-shrink-0`,title:`Dismiss error`,children:(0,K.jsx)(mf,{className:`h-4 w-4`})})]}),(0,K.jsx)(mm,{className:`flex-1 p-4 h-0`,ref:R,children:(0,K.jsxs)(`div`,{className:`space-y-4`,children:[i.length===0?(0,K.jsxs)(`div`,{className:`flex flex-col items-center justify-center h-32 text-center`,children:[(0,K.jsxs)(`div`,{className:`text-muted-foreground text-sm`,children:[`Start a conversation with`,` `,e.name||e.id]}),(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground mt-1`,children:`Type a message below to begin`})]}):(()=>{let e=[],t=new Map,n=new Map,r=null,a=[],o=[];for(let e=0;e0){let e=t.get(s.id)||[];e.push(...a),t.set(s.id,e),a.length=0}if(o.length>0){let e=n.get(s.id)||[];e.push(...o),n.set(s.id,e),o.length=0}r=s.id}else if(s.type===`function_call`){if(r){let e=t.get(r)||[];e.push(s),t.set(r,e)}else a.push(s)}else if(s.type===`function_call_output`){if(r){let e=n.get(r)||[];e.push(s),n.set(r,e)}else o.push(s)}else s.type===`message`&&s.role===`user`&&(r=null)}for(let r of i)if(r.type===`message`){let i=t.get(r.id)||[],a=n.get(r.id)||[];e.push((0,K.jsx)(qy,{item:r,toolCalls:i,toolResults:a},r.id))}return e})(),O&&!a&&(0,K.jsx)(`div`,{className:`px-4 py-2`,children:(0,K.jsx)(`div`,{className:`border rounded-lg border-orange-500/40 bg-orange-500/5 dark:bg-orange-500/10`,children:(0,K.jsxs)(`div`,{className:`px-4 py-3 flex items-center gap-2`,children:[(0,K.jsx)(Zd,{className:`w-4 h-4 text-orange-500 dark:text-orange-400 fill-current`}),(0,K.jsx)(`span`,{className:`font-medium text-sm text-orange-700 dark:text-orange-300`,children:`Response stopped by user`})]})})}),(0,K.jsx)(`div`,{ref:z})]})}),u.length>0&&(0,K.jsx)(`div`,{className:`border-t bg-amber-50 dark:bg-amber-950/20 p-4 flex-shrink-0`,children:(0,K.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,K.jsx)(hu,{className:`h-5 w-5 text-amber-600 dark:text-amber-500 mt-0.5 flex-shrink-0`}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsx)(`h4`,{className:`font-medium text-sm mb-2`,children:`Approval Required`}),(0,K.jsx)(`div`,{className:`space-y-2`,children:u.map(e=>(0,K.jsxs)(`div`,{className:`bg-white dark:bg-gray-900 rounded-lg p-3 border border-amber-200 dark:border-amber-900`,children:[(0,K.jsxs)(`div`,{className:`font-mono text-xs mb-3 break-all`,children:[(0,K.jsx)(`span`,{className:`text-blue-600 dark:text-blue-400 font-semibold`,children:e.function_call.name}),(0,K.jsx)(`span`,{className:`text-gray-500`,children:`(`}),(0,K.jsx)(`span`,{className:`text-gray-700 dark:text-gray-300`,children:JSON.stringify(e.function_call.arguments)}),(0,K.jsx)(`span`,{className:`text-gray-500`,children:`)`})]}),(0,K.jsxs)(`div`,{className:`flex gap-2`,children:[(0,K.jsxs)(q,{size:`sm`,onClick:async()=>{let t=await ue(e.request_id,!0);t&&await de(t)},variant:`default`,className:`flex-1 sm:flex-none`,children:[(0,K.jsx)(ru,{className:`h-4 w-4 mr-1`}),`Approve`]}),(0,K.jsxs)(q,{size:`sm`,onClick:async()=>{let t=await ue(e.request_id,!1);t&&await de(t)},variant:`outline`,className:`flex-1 sm:flex-none`,children:[(0,K.jsx)(mf,{className:`h-4 w-4 mr-1`}),`Reject`]})]})]},e.request_id))})]})]})}),(0,K.jsx)(`div`,{className:`border-t flex-shrink-0`,children:(0,K.jsx)(`div`,{className:`p-4`,children:(0,K.jsx)(lv,{onSubmit:pe,isSubmitting:o,isStreaming:a,onCancel:M,isCancelling:A,placeholder:`Message ${e.name||e.id}... (Shift+Enter for new line)`,showFileUpload:!0,entityName:e.name||e.id,disabled:!e,externalFiles:F,onExternalFilesProcessed:I})})}),(0,K.jsx)(Vy,{agent:e,open:S,onOpenChange:C})]})}function Yy({message:e=`Loading...`,description:t,size:n=`md`,className:r,fullPage:i=!1}){let a=(0,K.jsxs)(`div`,{className:jt(`flex flex-col items-center justify-center gap-3`,i?`min-h-[50vh]`:`py-8`,r),children:[(0,K.jsx)(Cf,{size:n,className:`text-muted-foreground`}),(0,K.jsxs)(`div`,{className:`text-center space-y-1`,children:[(0,K.jsx)(`p`,{className:jt(`font-medium text-muted-foreground`,n===`sm`&&`text-sm`,n===`lg`&&`text-lg`),children:e}),t&&(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground/80`,children:t})]})]});return i?(0,K.jsx)(`div`,{className:`flex items-center justify-center min-h-screen bg-background`,children:a}):a}function Xy(e){return[`name`,`title`,`id`,`key`,`label`,`type`,`status`,`tag`,`category`,`code`,`username`,`password`,`email`].includes(e.toLowerCase())}function Zy(e){if(e.type)return e;if(e.anyOf&&e.anyOf.length>0){let t=e.anyOf.filter(e=>e.type!==`null`&&e.type!==void 0);if(t.length>0)return{...t[0],default:e.default??t[0].default,description:e.description??t[0].description,title:e.title??t[0].title}}if(e.oneOf&&e.oneOf.length>0){let t=e.oneOf.filter(e=>e.type!==`null`&&e.type!==void 0);if(t.length>0)return{...t[0],default:e.default??t[0].default,description:e.description??t[0].description,title:e.title??t[0].title}}return e}function Qy(e,t){return t.format===`textarea`||!!t.description&&t.description.length>100||t.type===`string`&&!t.enum&&!Xy(e)}function $y(e,t){let n=Qy(e,t),r=!!t.description&&t.description.length>150;return n||r?`md:col-span-2 lg:col-span-3 xl:col-span-4`:t.type===`array`||t.description&&t.description.length>80?`xl:col-span-2`:``}function eb(e,t){if(e.type!==`object`||!e.properties)return!1;let n=e.properties,r=Object.keys(n).filter(e=>!t.includes(e));return t.includes(`role`)&&r.some(e=>[`text`,`message`,`content`].includes(e))&&n.role?.type===`string`}function tb({name:e,schema:t,value:n,onChange:r,isRequired:i=!1,isReadOnly:a=!1}){let o=Zy(t),{type:s,description:c,enum:l,default:u}=o,d=Qy(e,o);return(0,K.jsx)(`div`,{className:$y(e,o),children:(()=>{if(a)return(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsx)(Rg,{htmlFor:e,className:`text-muted-foreground`,children:e}),(0,K.jsx)(`div`,{className:`text-sm p-2 bg-muted rounded border`,children:typeof n==`object`?JSON.stringify(n,null,2):String(n)}),c&&(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:c})]});switch(s){case`string`:return l?(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(Rg,{htmlFor:e,children:[e,i&&(0,K.jsx)(`span`,{className:`text-destructive ml-1`,children:`*`})]}),(0,K.jsxs)(Ny,{value:typeof n==`string`&&n?n:typeof u==`string`?u:l[0],onValueChange:e=>r(e),children:[(0,K.jsx)(Fy,{children:(0,K.jsx)(Py,{placeholder:`Select ${e}`})}),(0,K.jsx)(Iy,{children:l.map(e=>(0,K.jsx)(Ly,{value:e,children:e},e))})]}),c&&(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:c})]}):d?(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(Rg,{htmlFor:e,children:[e,i&&(0,K.jsx)(`span`,{className:`text-destructive ml-1`,children:`*`})]}),(0,K.jsx)(rv,{id:e,value:typeof n==`string`?n:``,onChange:e=>r(e.target.value),placeholder:typeof u==`string`?u:`Enter ${e}`,rows:4,className:`min-w-[300px] w-full`}),c&&(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:c})]}):(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(Rg,{htmlFor:e,children:[e,i&&(0,K.jsx)(`span`,{className:`text-destructive ml-1`,children:`*`})]}),(0,K.jsx)(Fg,{id:e,type:`text`,value:typeof n==`string`?n:``,onChange:e=>r(e.target.value),placeholder:typeof u==`string`?u:`Enter ${e}`}),c&&(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:c})]});case`integer`:case`number`:return(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(Rg,{htmlFor:e,children:[e,i&&(0,K.jsx)(`span`,{className:`text-destructive ml-1`,children:`*`})]}),(0,K.jsx)(Fg,{id:e,type:`number`,step:s===`integer`?`1`:`any`,value:typeof n==`number`?n:``,onChange:e=>{let t=s===`integer`?parseInt(e.target.value):parseFloat(e.target.value);r(isNaN(t)?``:t)},placeholder:typeof u==`number`?u.toString():`Enter ${e}`}),c&&(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:c})]});case`boolean`:return(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center space-x-2`,children:[(0,K.jsx)(nh,{id:e,checked:!!n,onCheckedChange:e=>r(e)}),(0,K.jsxs)(Rg,{htmlFor:e,children:[e,i&&(0,K.jsx)(`span`,{className:`text-destructive ml-1`,children:`*`})]})]}),c&&(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:c})]});case`array`:return(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(Rg,{htmlFor:e,children:[e,i&&(0,K.jsx)(`span`,{className:`text-destructive ml-1`,children:`*`})]}),(0,K.jsx)(rv,{id:e,value:Array.isArray(n)?n.join(`, `):typeof n==`string`?n:``,onChange:e=>{r(e.target.value.split(`,`).map(e=>e.trim()).filter(e=>e.length>0))},placeholder:`Enter items separated by commas`,rows:2}),c&&(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:c})]});default:return(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(Rg,{htmlFor:e,children:[e,i&&(0,K.jsx)(`span`,{className:`text-destructive ml-1`,children:`*`})]}),(0,K.jsx)(rv,{id:e,value:typeof n==`object`&&n?JSON.stringify(n,null,2):typeof n==`string`?n:``,onChange:e=>{try{r(JSON.parse(e.target.value))}catch{r(e.target.value)}},placeholder:`{"key": "value"}`,rows:3,className:`font-mono text-xs`}),c&&(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:c})]})}})()})}function nb({schema:e,values:t,onChange:n,disabled:r=!1,readOnlyFields:i=[],hideFields:a=[],showCollapsedByDefault:o=!1,layout:s=`stack`}){let[c,l]=(0,y.useState)(o),u=s===`grid`?`grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-6`:`space-y-3`,d=e.properties||{},f=Object.keys(d).filter(e=>!a.includes(e)),p=(e.required||[]).filter(e=>!a.includes(e)),m=eb(e,p),h=f.filter(e=>p.includes(e)&&!(m&&e===`role`)),g=f.filter(e=>!p.includes(e)),_=m?[...g].sort((e,t)=>{let n=e=>+!![`text`,`message`,`content`].includes(e);return n(t)-n(e)}):g,v=Math.max(0,(m?1:6)-h.length),b=_.slice(0,v),x=_.slice(v),S=x.length>0,C=h.length>0,w=(e,r)=>{n({...t,[e]:r})},T=s===`grid`?`md:col-span-2 lg:col-span-3 xl:col-span-4`:``;return(0,K.jsxs)(`div`,{className:u,children:[h.map(e=>(0,K.jsx)(tb,{name:e,schema:d[e],value:t[e],onChange:t=>w(e,t),isRequired:!0,isReadOnly:r||i.includes(e)},e)),C&&g.length>0&&(0,K.jsx)(`div`,{className:T,children:(0,K.jsx)(`div`,{className:`border-t border-border`})}),b.map(e=>(0,K.jsx)(tb,{name:e,schema:d[e],value:t[e],onChange:t=>w(e,t),isRequired:!1,isReadOnly:r||i.includes(e)},e)),S&&(0,K.jsx)(`div`,{className:T,children:(0,K.jsx)(q,{type:`button`,variant:`ghost`,size:`sm`,onClick:()=>l(!c),className:`w-full justify-center gap-2`,disabled:r,children:c?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(pu,{className:`h-4 w-4`}),`Hide `,x.length,` optional field`,x.length===1?``:`s`]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(su,{className:`h-4 w-4`}),`Show `,x.length,` optional field`,x.length===1?``:`s`]})})}),c&&x.map(e=>(0,K.jsx)(tb,{name:e,schema:d[e],value:t[e],onChange:t=>w(e,t),isRequired:!1,isReadOnly:r||i.includes(e)},e))]})}function rb(e,t){return(e.required||[]).every(e=>{let n=t[e];return n!==void 0&&n!==``&&n!==null})}function ib(e,t){let n=e.required||[],r={};return Object.keys(t).forEach(e=>{let i=t[e];(n.includes(e)||i!==void 0&&i!==``&&i!==null)&&(r[e]=i)}),r}function ab({inputSchema:e,inputTypeName:t,onSubmit:n,isSubmitting:r=!1,className:i}){let[a,o]=(0,y.useState)(!1),s=i?.includes(`embedded`),[c,l]=(0,y.useState)({}),[u,d]=(0,y.useState)(!1),f=e.properties||{},p=Object.keys(f),m=e.required||[],h=e.type===`string`&&!e.enum,g=eb(e,m),_=h?c.value!==void 0&&c.value!==``:m.length>0?m.every(e=>g&&e===`role`&&c.role===`user`?!0:c[e]!==void 0&&c[e]!==``):Object.keys(c).length>0;(0,y.useEffect)(()=>{if(e.type===`string`)l({value:e.default||``});else if(e.type===`object`&&e.properties){let t={};Object.entries(e.properties).forEach(([e,n])=>{n.default===void 0?n.enum&&n.enum.length>0&&(t[e]=n.enum[0]):t[e]=n.default}),g&&!t.role&&(t.role=`user`),l(t)}},[e,g]);let v=t=>{if(t.preventDefault(),d(!0),e.type===`string`)n({input:c.value||``});else if(e.type===`object`){let t=e.properties||{},r=Object.keys(t);if(r.length===1){let e=r[0];n({[e]:c[e]||``})}else n(ib(e,c))}else n(c);s||o(!1),d(!1)},b=e=>{l(e)},x=()=>(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsx)(Rg,{htmlFor:`simple-input`,children:`Input`}),(0,K.jsx)(rv,{id:`simple-input`,value:typeof c.value==`string`?c.value:``,onChange:e=>l({value:e.target.value}),placeholder:typeof e.default==`string`?e.default:`Enter input`,rows:4,className:`min-w-[300px] w-full`}),e.description&&(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:e.description})]});return s?(0,K.jsxs)(`form`,{onSubmit:v,className:i,children:[h&&x(),!h&&(0,K.jsx)(nb,{schema:e,values:c,onChange:b,disabled:u,hideFields:g?[`role`]:[],layout:`grid`}),(0,K.jsx)(`div`,{className:`flex gap-2 mt-4 justify-end`,children:(0,K.jsxs)(q,{type:`submit`,disabled:u||!_,size:`default`,children:[(0,K.jsx)(Ud,{className:`h-4 w-4`}),u?`Running...`:`Run Workflow`]})})]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(`div`,{className:jt(`flex flex-col`,i),children:[(0,K.jsxs)(`div`,{className:`border-b border-border px-4 py-3 bg-muted`,children:[(0,K.jsx)(H_,{className:`text-sm mb-3`,children:`Run Workflow`}),(0,K.jsxs)(q,{onClick:()=>o(!0),disabled:r,className:`w-full`,size:`default`,children:[(0,K.jsx)(Ud,{className:`h-4 w-4 mr-2`}),r?`Running...`:`Run Workflow`]})]}),(0,K.jsxs)(`div`,{className:`px-4 py-3`,children:[(0,K.jsxs)(`div`,{className:`text-sm text-muted-foreground`,children:[(0,K.jsx)(`strong`,{children:`Input Type:`}),` `,(0,K.jsx)(`code`,{className:`bg-muted px-1 py-0.5 rounded`,children:t}),e.type===`object`&&e.properties&&(0,K.jsxs)(`span`,{className:`ml-2`,children:[`(`,Object.keys(e.properties).length,` field`,Object.keys(e.properties).length===1?``:`s`,`)`]})]}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground mt-2`,children:`Click "Run Workflow" to configure inputs and execute`})]})]}),(0,K.jsx)(Og,{open:a,onOpenChange:o,children:(0,K.jsxs)(kg,{className:`w-full max-w-md sm:max-w-lg md:max-w-2xl lg:max-w-4xl xl:max-w-5xl max-h-[90vh] flex flex-col`,children:[(0,K.jsxs)(Ag,{children:[(0,K.jsx)(jg,{children:`Run Workflow`}),(0,K.jsx)(Ng,{onClose:()=>o(!1)})]}),(0,K.jsx)(`div`,{className:`px-8 py-4 border-b flex-shrink-0`,children:(0,K.jsx)(`div`,{className:`text-sm text-muted-foreground`,children:(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,K.jsx)(`span`,{className:`font-medium`,children:`Input Type:`}),(0,K.jsx)(`code`,{className:`bg-muted px-3 py-1 text-xs font-mono`,children:t}),e.type===`object`&&(0,K.jsxs)(`span`,{className:`text-xs text-muted-foreground`,children:[p.length,` field`,p.length===1?``:`s`]})]})})}),(0,K.jsx)(`div`,{className:`px-8 py-6 overflow-y-auto flex-1 min-h-0`,children:(0,K.jsxs)(`form`,{id:`workflow-modal-form`,onSubmit:v,children:[h&&x(),!h&&(0,K.jsx)(nb,{schema:e,values:c,onChange:b,disabled:u,hideFields:g?[`role`]:[],layout:`grid`})]})}),(0,K.jsx)(`div`,{className:`px-8 py-4 border-t flex-shrink-0`,children:(0,K.jsxs)(Pg,{children:[(0,K.jsx)(q,{variant:`outline`,onClick:()=>o(!1),disabled:u,children:`Cancel`}),(0,K.jsxs)(q,{type:`submit`,form:`workflow-modal-form`,disabled:u||!_,children:[(0,K.jsx)(Ud,{className:`h-4 w-4 mr-2`}),u?`Running...`:`Run Workflow`]})]})})]})})]})}function ob(e,t,n=`LR`){if(e.length===0)return e;if(e.length===1)return e.map(e=>({...e,position:{x:0,y:0}}));let r=new Map,i=new Map;e.forEach(e=>{r.set(e.id,[]),i.set(e.id,[])}),t.forEach(e=>{r.get(e.source)?.push(e.target),i.get(e.target)?.push(e.source)});let a=e.filter(e=>(i.get(e.id)||[]).length===0);a.length===0&&a.push(e[0]);let o=n===`LR`?350:280,s=n===`TB`?250:180,c=new Map,l=new Map,u=[],d=new Set;for(a.forEach(e=>{u.push({nodeId:e.id,level:0})});u.length>0;){let{nodeId:e,level:t}=u.shift();d.has(e)||(d.add(e),l.has(t)||l.set(t,[]),l.get(t).push(e),(r.get(e)||[]).forEach(e=>{d.has(e)||u.push({nodeId:e,level:t+1})}))}return e.forEach(e=>{if(!d.has(e.id)){let t=Math.max(...Array.from(l.keys()),-1)+1;l.has(t)||l.set(t,[]),l.get(t).push(e.id)}}),l.forEach((e,t)=>{let r=e.length;e.forEach((e,i)=>{let a,l;n===`LR`?(a=t*o,l=-((r-1)*s)/2+i*s):(l=t*s,a=-((r-1)*o)/2+i*o),c.set(e,{x:a,y:l,level:t})})}),e.map(e=>{let t=c.get(e.id)||{x:0,y:0};return{...e,position:{x:t.x-110,y:t.y-60}}})}function sb(e){if(typeof e!=`object`||!e)return!1;let t=e;return`id`in t&&`edge_groups`in t&&`executors`in t&&`start_executor_id`in t&&`max_iterations`in t&&typeof t.id==`string`&&Array.isArray(t.edge_groups)&&typeof t.executors==`object`&&typeof t.start_executor_id==`string`&&typeof t.max_iterations==`number`}function cb(e){return sb(e)?e:null}function lb(e){if(!e||e.type!==`object`||!e.properties)return!1;let t=e.properties,n=`text`in t&&t.text?.type===`string`,r=`role`in t&&t.role?.type===`string`;return!!(n&&r||Object.keys(t).length===1&&n)}function ub(e,t=50,n=`...`){return e.length<=t?e:e.substring(0,t)+n}function db(e,t,n){if(!e)return console.warn(`convertWorkflowDumpToNodes: workflowDump is undefined`),[];let r=cb(e),i,a;return r?(i=Object.values(r.executors).map(e=>({id:e.id,type:e.type,name:e.name||e.id,description:e.description,config:e.config})),a=r.start_executor_id):(i=pb(e),a=e?.start_executor_id),!i||!Array.isArray(i)||i.length===0?(console.warn(`No executors found in workflow dump. Available keys:`,Object.keys(e)),[]):i.map(e=>({id:e.id,type:`executor`,position:{x:0,y:0},data:{executorId:e.id,executorType:e.type,name:e.name||e.id,state:`pending`,isStartNode:e.id===a,layoutDirection:n||`LR`,onNodeClick:t}}))}function fb(e){if(!e)return console.warn(`convertWorkflowDumpToEdges: workflowDump is undefined`),[];let t=cb(e),n;return t?(n=[],t.edge_groups.forEach(e=>{e.edges.forEach(e=>{n.push({source:e.source_id,target:e.target_id,condition:e.condition_name})})})):n=mb(e),!n||!Array.isArray(n)||n.length===0?(console.warn(`No connections found in workflow dump. Available keys:`,Object.keys(e)),[]):n.map(e=>{let t=e.source===e.target;return{id:`${e.source}-${e.target}`,source:e.source,target:e.target,sourceHandle:`source`,targetHandle:`target`,type:t?`selfLoop`:`default`,animated:!1,style:{stroke:`#6b7280`,strokeWidth:2}}})}function pb(e){if(e.executors&&typeof e.executors==`object`&&!Array.isArray(e.executors)){let t=e.executors;return Object.entries(t).map(([e,t])=>({id:e,type:t.type_||t.type||`executor`,name:t.name||e,description:t.description,config:t.config}))}for(let t of[`executors`,`agents`,`steps`,`nodes`])if(e[t]&&Array.isArray(e[t]))return e[t];if(e.config&&typeof e.config==`object`)return pb(e.config);let t=[];return Object.entries(e).forEach(([e,n])=>{if(typeof n==`object`&&n&&(`type`in n||`type_`in n)){let r=n;t.push({id:e,type:r.type_||r.type||`executor`,name:r.name||e,description:r.description,config:r.config})}}),t}function mb(e){if(e.edge_groups&&Array.isArray(e.edge_groups)){let t=[];return e.edge_groups.forEach(e=>{if(typeof e==`object`&&e&&`edges`in e){let n=e.edges;Array.isArray(n)&&n.forEach(e=>{if(typeof e==`object`&&e&&`source_id`in e&&`target_id`in e){let n=e;t.push({source:n.source_id,target:n.target_id,condition:n.condition_name||void 0})}})}}),t}for(let t of[`connections`,`edges`,`transitions`,`links`])if(e[t]&&Array.isArray(e[t]))return e[t];return e.config&&typeof e.config==`object`?mb(e.config):[]}function hb(e,t,n=`LR`){return ob(e,t,n)}function gb(e,t){let n={},r=!1,i={};return e.forEach(e=>{if(e.type===`response.output_item.added`||e.type===`response.output_item.done`){let t=e.item;if(t&&t.type===`executor_action`&&`executor_id`in t){let r=t.executor_id,a=t.id;if(e.type===`response.output_item.added`&&(i[r]=a),i[r]!==a&&e.type===`response.output_item.done`)return;let o=`pending`,s;e.type===`response.output_item.added`?o=`running`:e.type===`response.output_item.done`&&(t.status===`completed`?o=`completed`:t.status===`failed`?(o=`failed`,s=t.error?typeof t.error==`string`?t.error:JSON.stringify(t.error):`Execution failed`):t.status===`cancelled`&&(o=`cancelled`)),n[r]={nodeId:r,state:o,data:t.result,error:s,timestamp:new Date().toISOString()}}}else if(e.type===`response.created`||e.type===`response.in_progress`)r=!0;else if(e.type===`response.workflow_event.completed`&&`data`in e&&e.data){let t=e.data,i=t.executor_id,a=t.event_type,o=t.data,s=`pending`,c;a===`ExecutorInvokedEvent`?s=`running`:a===`ExecutorCompletedEvent`?s=`completed`:a?.includes(`Error`)||a?.includes(`Failed`)?(s=`failed`,c=typeof o==`string`?o:`Execution failed`):a?.includes(`Cancel`)?s=`cancelled`:a===`WorkflowCompletedEvent`||a===`WorkflowOutputEvent`?s=`completed`:a===`WorkflowStartedEvent`&&(r=!0),i&&(n[i]={nodeId:i,state:s,data:o,error:c,timestamp:new Date().toISOString()})}}),r&&t&&!n[t]&&(e.some(e=>{if(e.type===`response.output_item.done`){let n=e.item;return n&&n.type===`executor_action`&&`executor_id`in n&&n.executor_id===t}if(e.type===`response.workflow_event.completed`&&`data`in e&&e.data){let n=e.data;return n.executor_id===t&&(n.event_type===`ExecutorCompletedEvent`||n.event_type===`ExecutorFailedEvent`||typeof n.event_type==`string`&&n.event_type.includes(`Error`)||typeof n.event_type==`string`&&n.event_type.includes(`Failed`))}return!1})||(n[t]={nodeId:t,state:`running`,data:void 0,error:void 0,timestamp:new Date().toISOString()})),n}function _b(e,t,n=!0){return e.map(e=>{let r=t[e.id];return r?{...e,data:{...e.data,state:r.state,outputData:r.data,error:r.error,isStreaming:n,layoutDirection:e.data.layoutDirection}}:e})}function vb(e){let t={};return e.forEach(e=>{if(e.type===`response.output_item.added`||e.type===`response.output_item.done`){let n=e.item;if(n&&n.type===`executor_action`&&`executor_id`in n){let r=n.executor_id;t[r]={lastEvent:e.type===`response.output_item.added`?`ExecutorInvokedEvent`:`ExecutorCompletedEvent`,timestamp:new Date().toISOString()}}}else if(e.type===`response.workflow_event.completed`&&`data`in e&&e.data){let n=e.data,r=n.executor_id,i=n.event_type;r&&(i===`ExecutorInvokedEvent`||i===`ExecutorCompletedEvent`)&&(t[r]={lastEvent:i,timestamp:new Date().toISOString()})}}),Object.entries(t).filter(([,e])=>e.lastEvent===`ExecutorInvokedEvent`).map(([e])=>e)}function yb(e,t){let n=vb(t),r={};return t.forEach(e=>{if(e.type===`response.workflow_event.completed`&&`data`in e&&e.data){let t=e.data,n=t.executor_id,i=t.event_type;n&&i&&(r[n]||(r[n]={completed:!1,invoked:!1}),i===`ExecutorInvokedEvent`?r[n].invoked=!0:i===`ExecutorCompletedEvent`&&(r[n].completed=!0))}}),e.map(e=>{let t=r[e.source],i=r[e.target],a=n.includes(e.target),o={...e.style},s=!1;return t?.completed&&a?(o={stroke:`#643FB2`,strokeWidth:3,strokeDasharray:`5,5`},s=!0):o=t?.completed&&i?.completed?{stroke:`#10b981`,strokeWidth:2}:t?.completed&&i?.invoked?{stroke:`#f59e0b`,strokeWidth:2}:{stroke:`#6b7280`,strokeWidth:2},{...e,style:o,animated:s}})}function bb(e){let t=new Map,n=new Set;return e.forEach(e=>{let r=`${e.source}-${e.target}`,i=`${e.target}-${e.source}`;if(e.source===e.target){t.set(r,e);return}if(t.has(i)){n.add(i),n.add(r);let e=t.get(i);t.set(i,{...e,markerStart:{type:`arrow`,width:20,height:20},markerEnd:{type:`arrow`,width:20,height:20},data:{...e.data,isBidirectional:!0}})}else n.has(r)||t.set(r,e)}),Array.from(t.values())}function xb({inputSchema:e,onRun:t,onCancel:n,isSubmitting:r,isCancelling:i=!1,workflowState:a,checkpoints:o=[],showCheckpoints:s=!0}){let[c,l]=(0,y.useState)(!1);(0,y.useEffect)(()=>{let e=e=>{e.key===`Escape`&&c&&l(!1)};if(c)return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},[c]);let u=(0,y.useMemo)(()=>{let t=lb(e);if(!e)return{needsInput:!1,hasDefaults:!1,fieldCount:0,canRunDirectly:!0,isChatMessage:!1};if(e.type===`string`)return{needsInput:!e.default,hasDefaults:!!e.default,fieldCount:1,canRunDirectly:!!e.default,isChatMessage:!1};if(e.type===`object`&&e.properties){let n=e.properties,r=Object.entries(n),i=r.filter(([,e])=>e.default!==void 0||e.enum&&e.enum.length>0);return{needsInput:r.length>0,hasDefaults:i.length>0,fieldCount:r.length,canRunDirectly:r.length===0||i.length===r.length,isChatMessage:t}}return{needsInput:!1,hasDefaults:!1,fieldCount:0,canRunDirectly:!0,isChatMessage:!1}},[e]),d=()=>{if(a===`running`&&n)n();else if(u.canRunDirectly){let n={};e?.type===`string`&&e.default?n.input=e.default:e?.type===`object`&&e.properties&&Object.entries(e.properties).forEach(([e,t])=>{t.default===void 0?t.enum&&t.enum.length>0&&(n[e]=t.enum[0]):n[e]=t.default}),t(n)}else l(!0)},f=n=>{if(u.canRunDirectly){let r={};e?.type===`string`&&e.default?r.input=e.default:e?.type===`object`&&e.properties&&Object.entries(e.properties).forEach(([e,t])=>{t.default===void 0?t.enum&&t.enum.length>0&&(r[e]=t.enum[0]):r[e]=t.default}),t(r,n)}else l(!0)},p=s&&o.length>0,m=e=>{if(!e)return``;let t=e/1024;return t<1?`${e} B`:t<1024?`${t.toFixed(1)} KB`:`${(t/1024).toFixed(1)} MB`},{icon:h,text:g}={icon:i?(0,K.jsx)(ld,{className:`w-4 h-4 animate-spin`}):a===`running`&&n?(0,K.jsx)(Zd,{className:`w-4 h-4 fill-current`}):a===`running`?(0,K.jsx)(ld,{className:`w-4 h-4 animate-spin`}):a===`error`?(0,K.jsx)(Ld,{className:`w-4 h-4`}):u.needsInput&&!u.canRunDirectly?(0,K.jsx)(qd,{className:`w-4 h-4`}):(0,K.jsx)(kd,{className:`w-4 h-4`}),text:i?`Stopping...`:a===`running`&&n?`Stop`:a===`running`?`Running...`:a===`completed`?`Run Again`:a===`error`?`Retry`:u.fieldCount===0||u.canRunDirectly?`Run Workflow`:`Configure & Run`},_=a===`running`&&!n||i,v=a===`error`?`destructive`:`default`;return(0,K.jsxs)(K.Fragment,{children:[p||u.needsInput?(0,K.jsxs)(_f,{children:[(0,K.jsxs)(`div`,{className:`flex w-full`,children:[(0,K.jsxs)(q,{onClick:d,disabled:_,variant:v,className:`gap-2 rounded-r-none flex-1`,title:a===`running`&&n?`Stop workflow execution`:void 0,children:[h,g]}),(0,K.jsx)(vf,{asChild:!0,children:(0,K.jsx)(q,{disabled:_,variant:v,className:`rounded-l-none border-l-0 px-2`,title:`More options`,children:(0,K.jsx)(su,{className:`w-4 h-4`})})})]}),(0,K.jsxs)(yf,{align:`end`,className:`w-80 max-h-[400px] overflow-y-auto`,children:[p&&(0,K.jsxs)(bf,{onClick:d,children:[(0,K.jsx)(kd,{className:`w-4 h-4 mr-2`}),`Run Fresh`]}),u.needsInput&&(0,K.jsxs)(bf,{onClick:()=>l(!0),children:[(0,K.jsx)(qd,{className:`w-4 h-4 mr-2`}),`Configure Inputs`]}),p&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(Sf,{}),(0,K.jsx)(`div`,{className:`px-2 py-1.5 text-xs text-muted-foreground`,children:`Resume from checkpoint`}),o.map((e,t)=>(0,K.jsxs)(bf,{onClick:()=>f(e.checkpoint_id),className:`flex flex-col items-start py-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 w-full`,children:[(0,K.jsx)(Nd,{className:`w-4 h-4 flex-shrink-0`}),(0,K.jsx)(`span`,{className:`font-medium`,children:e.metadata.iteration_count===0?`Initial State`:`Step ${e.metadata.iteration_count}`}),t===0&&(0,K.jsx)(Ft,{variant:`secondary`,className:`text-[10px] h-4 px-1 ml-auto`,children:`Latest`})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-muted-foreground ml-6 mt-0.5`,children:[(0,K.jsx)(Tu,{className:`w-3 h-3`}),(0,K.jsx)(`span`,{children:new Date(e.timestamp).toLocaleTimeString()}),e.metadata.size_bytes&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`span`,{children:`•`}),(0,K.jsx)(`span`,{children:m(e.metadata.size_bytes)})]})]})]},e.checkpoint_id))]})]})]}):(0,K.jsxs)(q,{onClick:d,disabled:_,variant:v,className:`gap-2 w-full`,title:a===`running`&&n?`Stop workflow execution`:void 0,children:[h,g]}),e&&(0,K.jsx)(Og,{open:c,onOpenChange:l,children:(0,K.jsxs)(kg,{className:`w-full min-w-[400px] max-w-md sm:max-w-lg md:max-w-2xl lg:max-w-4xl xl:max-w-5xl max-h-[90vh] flex flex-col`,children:[(0,K.jsxs)(Ag,{className:`px-8 pt-6`,children:[(0,K.jsx)(jg,{children:`Configure Workflow Inputs`}),(0,K.jsx)(Ng,{onClose:()=>l(!1)})]}),(0,K.jsx)(`div`,{className:`px-8 py-4 border-b flex-shrink-0`,children:(0,K.jsx)(`div`,{className:`text-sm text-muted-foreground`,children:(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,K.jsx)(`span`,{className:`font-medium`,children:`Input Type:`}),(0,K.jsx)(Ft,{variant:`secondary`,children:u.isChatMessage?`Chat Message`:e.type===`string`?`Simple Text`:`Structured Data`})]})})}),(0,K.jsx)(`div`,{className:`flex-1 overflow-y-auto py-4 px-8`,children:u.isChatMessage?(0,K.jsx)(lv,{onSubmit:async e=>{t([{type:`message`,role:`user`,content:e}]),l(!1)},isSubmitting:r,placeholder:`Enter your message...`,entityName:`workflow`,showFileUpload:!0}):(0,K.jsx)(ab,{inputSchema:e,inputTypeName:`Input`,onSubmit:e=>{t(e),l(!1)},isSubmitting:r,className:`embedded`})})]})})]})}function Sb(e){if(typeof e==`string`||typeof e==`number`)return``+e;let t=``;if(Array.isArray(e))for(let n=0,r;n{}};function wb(){for(var e=0,t=arguments.length,n={},r;e=0&&(n=e.slice(r+1),e=e.slice(0,r)),e&&!t.hasOwnProperty(e))throw Error(`unknown type: `+e);return{type:e,name:n}})}Tb.prototype=wb.prototype={constructor:Tb,on:function(e,t){var n=this._,r=Eb(e+``,n),i,a=-1,o=r.length;if(arguments.length<2){for(;++a0)for(var n=Array(i),r=0,i,a;r=0&&(t=e.slice(0,n))!==`xmlns`&&(e=e.slice(n+1)),kb.hasOwnProperty(t)?{space:kb[t],local:e}:e}function jb(e){return function(){var t=this.ownerDocument,n=this.namespaceURI;return n===`http://www.w3.org/1999/xhtml`&&t.documentElement.namespaceURI===`http://www.w3.org/1999/xhtml`?t.createElement(e):t.createElementNS(n,e)}}function Mb(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function Nb(e){var t=Ab(e);return(t.local?Mb:jb)(t)}function Pb(){}function Fb(e){return e==null?Pb:function(){return this.querySelector(e)}}function Ib(e){typeof e!=`function`&&(e=Fb(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i=v&&(v=_+1);!(b=g[v])&&++v=0;)(o=r[i])&&(a&&o.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(o,a),a=o);return this}function fx(e){e||=px;function t(t,n){return t&&n?e(t.__data__,n.__data__):!t-!n}for(var n=this._groups,r=n.length,i=Array(r),a=0;at?1:e>=t?0:NaN}function mx(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function hx(){return Array.from(this)}function gx(){for(var e=this._groups,t=0,n=e.length;t1?this.each((t==null?Ox:typeof t==`function`?Ax:kx)(e,t,n??``)):Mx(this.node(),e)}function Mx(e,t){return e.style.getPropertyValue(t)||Dx(e).getComputedStyle(e,null).getPropertyValue(t)}function Nx(e){return function(){delete this[e]}}function Px(e,t){return function(){this[e]=t}}function Fx(e,t){return function(){var n=t.apply(this,arguments);n==null?delete this[e]:this[e]=n}}function Ix(e,t){return arguments.length>1?this.each((t==null?Nx:typeof t==`function`?Fx:Px)(e,t)):this.node()[e]}function Lx(e){return e.trim().split(/^|\s+/)}function Rx(e){return e.classList||new zx(e)}function zx(e){this._node=e,this._names=Lx(e.getAttribute(`class`)||``)}zx.prototype={add:function(e){this._names.indexOf(e)<0&&(this._names.push(e),this._node.setAttribute(`class`,this._names.join(` `)))},remove:function(e){var t=this._names.indexOf(e);t>=0&&(this._names.splice(t,1),this._node.setAttribute(`class`,this._names.join(` `)))},contains:function(e){return this._names.indexOf(e)>=0}};function Bx(e,t){for(var n=Rx(e),r=-1,i=t.length;++r=0&&(t=e.slice(n+1),e=e.slice(0,n)),{type:e,name:t}})}function hS(e){return function(){var t=this.__on;if(t){for(var n=0,r=-1,i=t.length,a;n()=>e;function LS(e,{sourceEvent:t,subject:n,target:r,identifier:i,active:a,x:o,y:s,dx:c,dy:l,dispatch:u}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},subject:{value:n,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},identifier:{value:i,enumerable:!0,configurable:!0},active:{value:a,enumerable:!0,configurable:!0},x:{value:o,enumerable:!0,configurable:!0},y:{value:s,enumerable:!0,configurable:!0},dx:{value:c,enumerable:!0,configurable:!0},dy:{value:l,enumerable:!0,configurable:!0},_:{value:u}})}LS.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function RS(e){return!e.ctrlKey&&!e.button}function zS(){return this.parentNode}function BS(e,t){return t??{x:e.x,y:e.y}}function VS(){return navigator.maxTouchPoints||`ontouchstart`in this}function HS(){var e=RS,t=zS,n=BS,r=VS,i={},a=wb(`start`,`drag`,`end`),o=0,s,c,l,u,d=0;function f(e){e.on(`mousedown.drag`,p).filter(r).on(`touchstart.drag`,g).on(`touchmove.drag`,_,AS).on(`touchend.drag touchcancel.drag`,v).style(`touch-action`,`none`).style(`-webkit-tap-highlight-color`,`rgba(0,0,0,0)`)}function p(n,r){if(!u&&e.call(this,n,r)){var i=y(this,t.call(this,n,r),n,r,`mouse`);i&&(DS(n.view).on(`mousemove.drag`,m,jS).on(`mouseup.drag`,h,jS),PS(n.view),MS(n),l=!1,s=n.clientX,c=n.clientY,i(`start`,n))}}function m(e){if(NS(e),!l){var t=e.clientX-s,n=e.clientY-c;l=t*t+n*n>d}i.mouse(`drag`,e)}function h(e){DS(e.view).on(`mousemove.drag mouseup.drag`,null),FS(e.view,l),NS(e),i.mouse(`end`,e)}function g(n,r){if(e.call(this,n,r))for(var i=n.changedTouches,a=t.call(this,n,r),o=i.length,s=0,c;s>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?dC(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?dC(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=QS.exec(e))?new mC(t[1],t[2],t[3],1):(t=$S.exec(e))?new mC(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=eC.exec(e))?dC(t[1],t[2],t[3],t[4]):(t=tC.exec(e))?dC(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=nC.exec(e))?xC(t[1],t[2]/100,t[3]/100,1):(t=rC.exec(e))?xC(t[1],t[2]/100,t[3]/100,t[4]):iC.hasOwnProperty(e)?uC(iC[e]):e===`transparent`?new mC(NaN,NaN,NaN,0):null}function uC(e){return new mC(e>>16&255,e>>8&255,e&255,1)}function dC(e,t,n,r){return r<=0&&(e=t=n=NaN),new mC(e,t,n,r)}function fC(e){return e instanceof GS||(e=lC(e)),e?(e=e.rgb(),new mC(e.r,e.g,e.b,e.opacity)):new mC}function pC(e,t,n,r){return arguments.length===1?fC(e):new mC(e,t,n,r??1)}function mC(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}US(mC,pC,WS(GS,{brighter(e){return e=e==null?qS:qS**+e,new mC(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?KS:KS**+e,new mC(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new mC(yC(this.r),yC(this.g),yC(this.b),vC(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:hC,formatHex:hC,formatHex8:gC,formatRgb:_C,toString:_C}));function hC(){return`#${bC(this.r)}${bC(this.g)}${bC(this.b)}`}function gC(){return`#${bC(this.r)}${bC(this.g)}${bC(this.b)}${bC((isNaN(this.opacity)?1:this.opacity)*255)}`}function _C(){let e=vC(this.opacity);return`${e===1?`rgb(`:`rgba(`}${yC(this.r)}, ${yC(this.g)}, ${yC(this.b)}${e===1?`)`:`, ${e})`}`}function vC(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function yC(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function bC(e){return e=yC(e),(e<16?`0`:``)+e.toString(16)}function xC(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new wC(e,t,n,r)}function SC(e){if(e instanceof wC)return new wC(e.h,e.s,e.l,e.opacity);if(e instanceof GS||(e=lC(e)),!e)return new wC;if(e instanceof wC)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,i=Math.min(t,n,r),a=Math.max(t,n,r),o=NaN,s=a-i,c=(a+i)/2;return s?(o=t===a?(n-r)/s+(n0&&c<1?0:o,new wC(o,s,c,e.opacity)}function CC(e,t,n,r){return arguments.length===1?SC(e):new wC(e,t,n,r??1)}function wC(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}US(wC,CC,WS(GS,{brighter(e){return e=e==null?qS:qS**+e,new wC(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?KS:KS**+e,new wC(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,i=2*n-r;return new mC(DC(e>=240?e-240:e+120,i,r),DC(e,i,r),DC(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new wC(TC(this.h),EC(this.s),EC(this.l),vC(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let e=vC(this.opacity);return`${e===1?`hsl(`:`hsla(`}${TC(this.h)}, ${EC(this.s)*100}%, ${EC(this.l)*100}%${e===1?`)`:`, ${e})`}`}}));function TC(e){return e=(e||0)%360,e<0?e+360:e}function EC(e){return Math.max(0,Math.min(1,e||0))}function DC(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}var OC=e=>()=>e;function kC(e,t){return function(n){return e+n*t}}function AC(e,t,n){return e**=+n,t=t**+n-e,n=1/n,function(r){return(e+r*t)**+n}}function jC(e){return(e=+e)==1?MC:function(t,n){return n-t?AC(t,n,e):OC(isNaN(t)?n:t)}}function MC(e,t){var n=t-e;return n?kC(e,n):OC(isNaN(e)?t:e)}var NC=(function e(t){var n=jC(t);function r(e,t){var r=n((e=pC(e)).r,(t=pC(t)).r),i=n(e.g,t.g),a=n(e.b,t.b),o=MC(e.opacity,t.opacity);return function(t){return e.r=r(t),e.g=i(t),e.b=a(t),e.opacity=o(t),e+``}}return r.gamma=e,r})(1);function PC(e,t){t||=[];var n=e?Math.min(t.length,e.length):0,r=t.slice(),i;return function(a){for(i=0;in&&(a=t.slice(n,a),s[o]?s[o]+=a:s[++o]=a),(r=r[0])===(i=i[0])?s[o]?s[o]+=i:s[++o]=i:(s[++o]=null,c.push({i:o,x:RC(r,i)})),n=VC.lastIndex;return n180?t+=360:t-e>180&&(e+=360),a.push({i:n.push(i(n)+`rotate(`,null,r)-2,x:RC(e,t)}))}function s(e,t,n,a){e===t?t&&n.push(i(n)+`skewX(`+t+r):a.push({i:n.push(i(n)+`skewX(`,null,r)-2,x:RC(e,t)})}function c(e,t,n,r,a,o){if(e!==n||t!==r){var s=a.push(i(a)+`scale(`,null,`,`,null,`)`);o.push({i:s-4,x:RC(e,n)},{i:s-2,x:RC(t,r)})}else(n!==1||r!==1)&&a.push(i(a)+`scale(`+n+`,`+r+`)`)}return function(t,n){var r=[],i=[];return t=e(t),n=e(n),a(t.translateX,t.translateY,n.translateX,n.translateY,r,i),o(t.rotate,n.rotate,r,i),s(t.skewX,n.skewX,r,i),c(t.scaleX,t.scaleY,n.scaleX,n.scaleY,r,i),t=n=null,function(e){for(var t=-1,n=i.length,a;++t=0&&e._call.call(void 0,t),e=e._next;--ow}function Sw(){pw=(fw=hw.now())+mw,ow=sw=0;try{xw()}finally{ow=0,ww(),pw=0}}function Cw(){var e=hw.now(),t=e-fw;t>lw&&(mw-=t,fw=e)}function ww(){for(var e,t=uw,n,r=1/0;t;)t._call?(r>t._time&&(r=t._time),e=t,t=t._next):(n=t._next,t._next=null,t=e?e._next=n:uw=n);dw=e,Tw(r)}function Tw(e){ow||(sw&&=clearTimeout(sw),e-pw>24?(e<1/0&&(sw=setTimeout(Sw,e-hw.now()-mw)),cw&&=clearInterval(cw)):(cw||=(fw=hw.now(),setInterval(Cw,lw)),ow=1,gw(Sw)))}function Ew(e,t,n){var r=new yw;return t=t==null?0:+t,r.restart(n=>{r.stop(),e(n+t)},t,n),r}var Dw=wb(`start`,`end`,`cancel`,`interrupt`),Ow=[];function kw(e,t,n,r,i,a){var o=e.__transition;if(!o)e.__transition={};else if(n in o)return;Nw(e,n,{name:t,index:r,group:i,on:Dw,tween:Ow,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:0})}function Aw(e,t){var n=Mw(e,t);if(n.state>0)throw Error(`too late; already scheduled`);return n}function jw(e,t){var n=Mw(e,t);if(n.state>3)throw Error(`too late; already running`);return n}function Mw(e,t){var n=e.__transition;if(!n||!(n=n[t]))throw Error(`transition not found`);return n}function Nw(e,t,n){var r=e.__transition,i;r[t]=n,n.timer=bw(a,0,n.time);function a(e){n.state=1,n.timer.restart(o,n.delay,n.time),n.delay<=e&&o(e-n.delay)}function o(a){var l,u,d,f;if(n.state!==1)return c();for(l in r)if(f=r[l],f.name===n.name){if(f.state===3)return Ew(o);f.state===4?(f.state=6,f.timer.stop(),f.on.call(`interrupt`,e,e.__data__,f.index,f.group),delete r[l]):+l2&&r.state<5,r.state=6,r.timer.stop(),r.on.call(i?`interrupt`:`cancel`,e,e.__data__,r.index,r.group),delete n[o]}a&&delete e.__transition}}function Fw(e){return this.each(function(){Pw(this,e)})}function Iw(e,t){var n,r;return function(){var i=jw(this,e),a=i.tween;if(a!==n){r=n=a;for(var o=0,s=r.length;o=0&&(e=e.slice(0,t)),!e||e===`start`})}function fT(e,t,n){var r,i,a=dT(t)?Aw:jw;return function(){var o=a(this,e),s=o.on;s!==r&&(i=(r=s).copy()).on(t,n),o.on=i}}function pT(e,t){var n=this._id;return arguments.length<2?Mw(this.node(),n).on.on(e):this.each(fT(n,e,t))}function mT(e){return function(){var t=this.parentNode;for(var n in this.__transition)if(+n!==e)return;t&&t.removeChild(this)}}function hT(){return this.on(`end.remove`,mT(this._id))}function gT(e){var t=this._name,n=this._id;typeof e!=`function`&&(e=Fb(e));for(var r=this._groups,i=r.length,a=Array(i),o=0;o()=>e;function KT(e,{sourceEvent:t,target:n,transform:r,dispatch:i}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:i}})}function qT(e,t,n){this.k=e,this.x=t,this.y=n}qT.prototype={constructor:qT,scale:function(e){return e===1?this:new qT(this.k*e,this.x,this.y)},translate:function(e,t){return e===0&t===0?this:new qT(this.k,this.x+this.k*e,this.y+this.k*t)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return`translate(`+this.x+`,`+this.y+`) scale(`+this.k+`)`}};var JT=new qT(1,0,0);YT.prototype=qT.prototype;function YT(e){for(;!e.__zoom;)if(!(e=e.parentNode))return JT;return e.__zoom}function XT(e){e.stopImmediatePropagation()}function ZT(e){e.preventDefault(),e.stopImmediatePropagation()}function QT(e){return(!e.ctrlKey||e.type===`wheel`)&&!e.button}function $T(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e,e.hasAttribute(`viewBox`)?(e=e.viewBox.baseVal,[[e.x,e.y],[e.x+e.width,e.y+e.height]]):[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]):[[0,0],[e.clientWidth,e.clientHeight]]}function eE(){return this.__zoom||JT}function tE(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function nE(){return navigator.maxTouchPoints||`ontouchstart`in this}function rE(e,t,n){var r=e.invertX(t[0][0])-n[0][0],i=e.invertX(t[1][0])-n[1][0],a=e.invertY(t[0][1])-n[0][1],o=e.invertY(t[1][1])-n[1][1];return e.translate(i>r?(r+i)/2:Math.min(0,r)||Math.max(0,i),o>a?(a+o)/2:Math.min(0,a)||Math.max(0,o))}function iE(){var e=QT,t=$T,n=rE,r=tE,i=nE,a=[0,1/0],o=[[-1/0,-1/0],[1/0,1/0]],s=250,c=aw,l=wb(`start`,`zoom`,`end`),u,d,f,p=500,m=150,h=0,g=10;function _(e){e.property(`__zoom`,eE).on(`wheel.zoom`,w,{passive:!1}).on(`mousedown.zoom`,T).on(`dblclick.zoom`,E).filter(i).on(`touchstart.zoom`,D).on(`touchmove.zoom`,O).on(`touchend.zoom touchcancel.zoom`,k).style(`-webkit-tap-highlight-color`,`rgba(0,0,0,0)`)}_.transform=function(e,t,n,r){var i=e.selection?e.selection():e;i.property(`__zoom`,eE),e===i?i.interrupt().each(function(){S(this,arguments).event(r).start().zoom(null,typeof t==`function`?t.apply(this,arguments):t).end()}):x(e,t,n,r)},_.scaleBy=function(e,t,n,r){_.scaleTo(e,function(){return this.__zoom.k*(typeof t==`function`?t.apply(this,arguments):t)},n,r)},_.scaleTo=function(e,r,i,a){_.transform(e,function(){var e=t.apply(this,arguments),a=this.__zoom,s=i==null?b(e):typeof i==`function`?i.apply(this,arguments):i,c=a.invert(s),l=typeof r==`function`?r.apply(this,arguments):r;return n(y(v(a,l),s,c),e,o)},i,a)},_.translateBy=function(e,r,i,a){_.transform(e,function(){return n(this.__zoom.translate(typeof r==`function`?r.apply(this,arguments):r,typeof i==`function`?i.apply(this,arguments):i),t.apply(this,arguments),o)},null,a)},_.translateTo=function(e,r,i,a,s){_.transform(e,function(){var e=t.apply(this,arguments),s=this.__zoom,c=a==null?b(e):typeof a==`function`?a.apply(this,arguments):a;return n(JT.translate(c[0],c[1]).scale(s.k).translate(typeof r==`function`?-r.apply(this,arguments):-r,typeof i==`function`?-i.apply(this,arguments):-i),e,o)},a,s)};function v(e,t){return t=Math.max(a[0],Math.min(a[1],t)),t===e.k?e:new qT(t,e.x,e.y)}function y(e,t,n){var r=t[0]-n[0]*e.k,i=t[1]-n[1]*e.k;return r===e.x&&i===e.y?e:new qT(e.k,r,i)}function b(e){return[(+e[0][0]+ +e[1][0])/2,(+e[0][1]+ +e[1][1])/2]}function x(e,n,r,i){e.on(`start.zoom`,function(){S(this,arguments).event(i).start()}).on(`interrupt.zoom end.zoom`,function(){S(this,arguments).event(i).end()}).tween(`zoom`,function(){var e=this,a=arguments,o=S(e,a).event(i),s=t.apply(e,a),l=r==null?b(s):typeof r==`function`?r.apply(e,a):r,u=Math.max(s[1][0]-s[0][0],s[1][1]-s[0][1]),d=e.__zoom,f=typeof n==`function`?n.apply(e,a):n,p=c(d.invert(l).concat(u/d.k),f.invert(l).concat(u/f.k));return function(e){if(e===1)e=f;else{var t=p(e),n=u/t[2];e=new qT(n,l[0]-t[0]*n,l[1]-t[1]*n)}o.zoom(null,e)}})}function S(e,t,n){return!n&&e.__zooming||new C(e,t)}function C(e,n){this.that=e,this.args=n,this.active=0,this.sourceEvent=null,this.extent=t.apply(e,n),this.taps=0}C.prototype={event:function(e){return e&&(this.sourceEvent=e),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit(`start`)),this},zoom:function(e,t){return this.mouse&&e!==`mouse`&&(this.mouse[1]=t.invert(this.mouse[0])),this.touch0&&e!==`touch`&&(this.touch0[1]=t.invert(this.touch0[0])),this.touch1&&e!==`touch`&&(this.touch1[1]=t.invert(this.touch1[0])),this.that.__zoom=t,this.emit(`zoom`),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit(`end`)),this},emit:function(e){var t=DS(this.that).datum();l.call(e,this.that,new KT(e,{sourceEvent:this.sourceEvent,target:_,type:e,transform:this.that.__zoom,dispatch:l}),t)}};function w(t,...i){if(!e.apply(this,arguments))return;var s=S(this,i).event(t),c=this.__zoom,l=Math.max(a[0],Math.min(a[1],c.k*2**r.apply(this,arguments))),u=kS(t);if(s.wheel)(s.mouse[0][0]!==u[0]||s.mouse[0][1]!==u[1])&&(s.mouse[1]=c.invert(s.mouse[0]=u)),clearTimeout(s.wheel);else if(c.k===l)return;else s.mouse=[u,c.invert(u)],Pw(this),s.start();ZT(t),s.wheel=setTimeout(d,m),s.zoom(`mouse`,n(y(v(c,l),s.mouse[0],s.mouse[1]),s.extent,o));function d(){s.wheel=null,s.end()}}function T(t,...r){if(f||!e.apply(this,arguments))return;var i=t.currentTarget,a=S(this,r,!0).event(t),s=DS(t.view).on(`mousemove.zoom`,d,!0).on(`mouseup.zoom`,p,!0),c=kS(t,i),l=t.clientX,u=t.clientY;PS(t.view),XT(t),a.mouse=[c,this.__zoom.invert(c)],Pw(this),a.start();function d(e){if(ZT(e),!a.moved){var t=e.clientX-l,r=e.clientY-u;a.moved=t*t+r*r>h}a.event(e).zoom(`mouse`,n(y(a.that.__zoom,a.mouse[0]=kS(e,i),a.mouse[1]),a.extent,o))}function p(e){s.on(`mousemove.zoom mouseup.zoom`,null),FS(e.view,a.moved),ZT(e),a.event(e).end()}}function E(r,...i){if(e.apply(this,arguments)){var a=this.__zoom,c=kS(r.changedTouches?r.changedTouches[0]:r,this),l=a.invert(c),u=a.k*(r.shiftKey?.5:2),d=n(y(v(a,u),c,l),t.apply(this,i),o);ZT(r),s>0?DS(this).transition().duration(s).call(x,d,c,r):DS(this).call(_.transform,d,c,r)}}function D(t,...n){if(e.apply(this,arguments)){var r=t.touches,i=r.length,a=S(this,n,t.changedTouches.length===i).event(t),o,s,c,l;for(XT(t),s=0;s`Seems like you have not used ${e===`svelte`?`SvelteFlowProvider`:`ReactFlowProvider`} as an ancestor. Help: https://${e}flow.dev/error#001`,error002:()=>`It looks like you've created a new nodeTypes or edgeTypes object. If this wasn't on purpose please define the nodeTypes/edgeTypes outside of the component or memoize them.`,error003:e=>`Node type "${e}" not found. Using fallback type "default".`,error004:()=>`The parent container needs a width and a height to render the graph.`,error005:()=>`Only child nodes can use a parent extent.`,error006:()=>`Can't create edge. An edge needs a source and a target.`,error007:e=>`The old edge with id=${e} does not exist.`,error009:e=>`Marker type "${e}" doesn't exist.`,error008:(e,{id:t,sourceHandle:n,targetHandle:r})=>`Couldn't create edge for ${e} handle id: "${e===`source`?n:r}", edge id: ${t}.`,error010:()=>`Handle: No node id found. Make sure to only use a Handle inside a custom Node.`,error011:e=>`Edge type "${e}" not found. Using fallback type "default".`,error012:e=>`Node with id "${e}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,error013:(e=`react`)=>`It seems that you haven't loaded the styles. Please import '@xyflow/${e}/dist/style.css' or base.css to make sure everything is working properly.`,error014:()=>`useNodeConnections: No node ID found. Call useNodeConnections inside a custom Node or provide a node ID.`,error015:()=>`It seems that you are trying to drag a node that is not initialized. Please use onNodesChange as explained in the docs.`,error016:e=>`Edge with id "${e}" does not exist, it may have been removed. This can happen when an edge is deleted before the "onEdgeClick" handler is called.`},oE=[[-1/0,-1/0],[1/0,1/0]],sE=[`Enter`,` `,`Escape`],cE={"node.a11yDescription.default":`Press enter or space to select a node. Press delete to remove it and escape to cancel.`,"node.a11yDescription.keyboardDisabled":`Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.`,"node.a11yDescription.ariaLiveMessage":({direction:e,x:t,y:n})=>`Moved selected node ${e}. New position, x: ${t}, y: ${n}`,"edge.a11yDescription.default":`Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.`,"controls.ariaLabel":`Control Panel`,"controls.zoomIn.ariaLabel":`Zoom In`,"controls.zoomOut.ariaLabel":`Zoom Out`,"controls.fitView.ariaLabel":`Fit View`,"controls.interactive.ariaLabel":`Toggle Interactivity`,"minimap.ariaLabel":`Mini Map`,"handle.ariaLabel":`Handle`},lE;(function(e){e.Strict=`strict`,e.Loose=`loose`})(lE||={});var uE;(function(e){e.Free=`free`,e.Vertical=`vertical`,e.Horizontal=`horizontal`})(uE||={});var dE;(function(e){e.Partial=`partial`,e.Full=`full`})(dE||={});var fE={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null,pointer:null},pE;(function(e){e.Bezier=`default`,e.Straight=`straight`,e.Step=`step`,e.SmoothStep=`smoothstep`,e.SimpleBezier=`simplebezier`})(pE||={});var mE;(function(e){e.Arrow=`arrow`,e.ArrowClosed=`arrowclosed`})(mE||={});var $;(function(e){e.Left=`left`,e.Top=`top`,e.Right=`right`,e.Bottom=`bottom`})($||={});var hE={[$.Left]:$.Right,[$.Right]:$.Left,[$.Top]:$.Bottom,[$.Bottom]:$.Top},gE=e=>!!e&&typeof e==`object`&&`id`in e&&`source`in e&&`target`in e,_E=e=>!!e&&typeof e==`object`&&`id`in e&&`position`in e&&!(`source`in e)&&!(`target`in e),vE=e=>!!e&&typeof e==`object`&&`id`in e&&`internals`in e&&!(`source`in e)&&!(`target`in e),yE=(e,t=[0,0])=>{let{width:n,height:r}=$E(e),i=e.origin??t,a=n*i[0],o=r*i[1];return{x:e.position.x-a,y:e.position.y-o}},bE=(e,t={nodeOrigin:[0,0]})=>{if(e.length===0)return{x:0,y:0,width:0,height:0};let n=!1,r=e.reduce((e,r)=>{let i=typeof r==`string`,a=!t.nodeLookup&&!i?r:void 0;return t.nodeLookup&&(a=i?t.nodeLookup.get(r):vE(r)?r:t.nodeLookup.get(r.id)),a?(n=!0,NE(e,LE(a,t.nodeOrigin))):e},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return n?FE(r):{x:0,y:0,width:0,height:0}},xE=(e,t={})=>{let n={x:1/0,y:1/0,x2:-1/0,y2:-1/0},r=!1;return e.forEach(e=>{(t.filter===void 0||t.filter(e))&&(n=NE(n,LE(e)),r=!0)}),r?FE(n):{x:0,y:0,width:0,height:0}},SE=(e,t,[n,r,i]=[0,0,1],a=!1,o=!1)=>{let s=(t.x-n)/i,c=(t.y-r)/i,l=t.width/i,u=t.height/i,d=[];for(let t of e.values()){let{measured:e,selectable:n=!0,hidden:r=!1}=t;if(o&&!n||r)continue;let i=e.width??t.width??t.initialWidth??0,f=e.height??t.height??t.initialHeight??0,{x:p,y:m}=t.internals.positionAbsolute,h=zE(s,c,l,u,p,m,i,f),g=i*f,_=a&&h>0;(!t.internals.handleBounds||_||h>=g||t.dragging)&&d.push(t)}return d},CE=(e,t)=>{let n=new Set;return e.forEach(e=>{n.add(e.id)}),t.filter(e=>n.has(e.source)||n.has(e.target))};function wE(e,t){let n=new Map,r=t?.nodes?new Set(t.nodes.map(e=>e.id)):null;return e.forEach(e=>{let i;if(t?.includeHiddenNodes){let{width:t,height:n}=$E(e);i=t>0&&n>0}else i=!!(e.measured.width&&e.measured.height&&!e.hidden);i&&(!r||r.has(e.id))&&n.set(e.id,e)}),n}async function TE({nodes:e,width:t,height:n,panZoom:r,minZoom:i,maxZoom:a},o){if(e.size===0)return!0;let s=XE(xE(wE(e,o)),t,n,o?.minZoom??i,o?.maxZoom??a,o?.padding??.1);return await r.setViewport(s,{duration:o?.duration,ease:o?.ease,interpolate:o?.interpolate}),!0}function EE({nodeId:e,nextPosition:t,nodeLookup:n,nodeOrigin:r=[0,0],nodeExtent:i,onError:a}){let o=n.get(e),s=o.parentId?n.get(o.parentId):void 0,{x:c,y:l}=s?s.internals.positionAbsolute:{x:0,y:0},u=o.origin??r,d=o.extent||i;if(o.extent===`parent`&&!o.expandParent){if(!s)a?.(`005`,aE.error005());else{let{width:e,height:t}=$E(s);e&&t&&(d=[[c,l],[c+e,l+t]])}}else s&&QE(o.extent)&&(d=[[o.extent[0][0]+c,o.extent[0][1]+l],[o.extent[1][0]+c,o.extent[1][1]+l]]);let f=QE(d)?kE(t,d,o.measured):t;return(o.measured.width===void 0||o.measured.height===void 0)&&a?.(`015`,aE.error015()),{position:{x:f.x-c+(o.measured.width??0)*u[0],y:f.y-l+(o.measured.height??0)*u[1]},positionAbsolute:f}}async function DE({nodesToRemove:e=[],edgesToRemove:t=[],nodes:n,edges:r,onBeforeDelete:i}){let a=new Set(e.map(e=>e.id)),o=[];for(let e of n){if(e.deletable===!1)continue;let t=a.has(e.id),n=!t&&e.parentId&&o.find(t=>t.id===e.parentId);(t||n)&&o.push(e)}let s=new Set(t.map(e=>e.id)),c=r.filter(e=>e.deletable!==!1),l=CE(o,c);for(let e of c)s.has(e.id)&&!l.find(t=>t.id===e.id)&&l.push(e);if(!i)return{edges:l,nodes:o};let u=await i({nodes:o,edges:l});return typeof u==`boolean`?u?{edges:l,nodes:o}:{edges:[],nodes:[]}:u}var OE=(e,t=0,n=1)=>Math.min(Math.max(e,t),n),kE=(e={x:0,y:0},t,n)=>({x:OE(e.x,t[0][0],t[1][0]-(n?.width??0)),y:OE(e.y,t[0][1],t[1][1]-(n?.height??0))});function AE(e,t,n){let{width:r,height:i}=$E(n),{x:a,y:o}=n.internals.positionAbsolute;return kE(e,[[a,o],[a+r,o+i]],t)}var jE=(e,t,n)=>en?-OE(Math.abs(e-n),1,t)/t:0,ME=(e,t,n=15,r=40)=>[jE(e.x,r,t.width-r)*n,jE(e.y,r,t.height-r)*n],NE=(e,t)=>({x:Math.min(e.x,t.x),y:Math.min(e.y,t.y),x2:Math.max(e.x2,t.x2),y2:Math.max(e.y2,t.y2)}),PE=({x:e,y:t,width:n,height:r})=>({x:e,y:t,x2:e+n,y2:t+r}),FE=({x:e,y:t,x2:n,y2:r})=>({x:e,y:t,width:n-e,height:r-t}),IE=(e,t=[0,0])=>{let{x:n,y:r}=vE(e)?e.internals.positionAbsolute:yE(e,t);return{x:n,y:r,width:e.measured?.width??e.width??e.initialWidth??0,height:e.measured?.height??e.height??e.initialHeight??0}},LE=(e,t=[0,0])=>{let{x:n,y:r}=vE(e)?e.internals.positionAbsolute:yE(e,t);return{x:n,y:r,x2:n+(e.measured?.width??e.width??e.initialWidth??0),y2:r+(e.measured?.height??e.height??e.initialHeight??0)}},RE=(e,t)=>FE(NE(PE(e),PE(t))),zE=(e,t,n,r,i,a,o,s)=>{let c=Math.max(0,Math.min(e+n,i+o)-Math.max(e,i)),l=Math.max(0,Math.min(t+r,a+s)-Math.max(t,a));return Math.ceil(c*l)},BE=(e,t)=>zE(e.x,e.y,e.width,e.height,t.x,t.y,t.width,t.height),VE=e=>HE(e.width)&&HE(e.height)&&HE(e.x)&&HE(e.y),HE=e=>!isNaN(e)&&isFinite(e),UE=(e,t)=>(e,t)=>{},WE=(e,t=[1,1])=>({x:t[0]*Math.round(e.x/t[0]),y:t[1]*Math.round(e.y/t[1])}),GE=({x:e,y:t},[n,r,i],a=!1,o=[1,1])=>{let s={x:(e-n)/i,y:(t-r)/i};return a?WE(s,o):s},KE=({x:e,y:t},[n,r,i])=>({x:e*i+n,y:t*i+r});function qE(e,t){if(typeof e==`number`)return Math.floor((t-t/(1+e))*.5);if(typeof e==`string`&&e.endsWith(`px`)){let t=parseFloat(e);if(!Number.isNaN(t))return Math.floor(t)}if(typeof e==`string`&&e.endsWith(`%`)){let n=parseFloat(e);if(!Number.isNaN(n))return Math.floor(t*n*.01)}return console.error(`The padding value "${e}" is invalid. Please provide a number or a string with a valid unit (px or %).`),0}function JE(e,t,n){if(typeof e==`string`||typeof e==`number`){let r=qE(e,n),i=qE(e,t);return{top:r,right:i,bottom:r,left:i,x:i*2,y:r*2}}if(typeof e==`object`){let r=qE(e.top??e.y??0,n),i=qE(e.bottom??e.y??0,n),a=qE(e.left??e.x??0,t),o=qE(e.right??e.x??0,t);return{top:r,right:o,bottom:i,left:a,x:a+o,y:r+i}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}function YE(e,t,n,r,i,a){let{x:o,y:s}=KE(e,[t,n,r]),{x:c,y:l}=KE({x:e.x+e.width,y:e.y+e.height},[t,n,r]),u=i-c,d=a-l;return{left:Math.floor(o),top:Math.floor(s),right:Math.floor(u),bottom:Math.floor(d)}}var XE=(e,t,n,r,i,a)=>{let o=JE(a,t,n),s=(t-o.x)/e.width,c=(n-o.y)/e.height,l=OE(Math.min(s,c),r,i),u=e.x+e.width/2,d=e.y+e.height/2,f=t/2-u*l,p=n/2-d*l,m=YE(e,f,p,l,t,n),h={left:Math.min(m.left-o.left,0),top:Math.min(m.top-o.top,0),right:Math.min(m.right-o.right,0),bottom:Math.min(m.bottom-o.bottom,0)};return{x:f-h.left+h.right,y:p-h.top+h.bottom,zoom:l}},ZE=()=>typeof navigator<`u`&&navigator?.userAgent?.indexOf(`Mac`)>=0;function QE(e){return e!=null&&e!==`parent`}function $E(e){return{width:e.measured?.width??e.width??e.initialWidth??0,height:e.measured?.height??e.height??e.initialHeight??0}}function eD(e){return(e.measured?.width??e.width??e.initialWidth)!==void 0&&(e.measured?.height??e.height??e.initialHeight)!==void 0}function tD(e,t={width:0,height:0},n,r,i){let a={...e},o=r.get(n);if(o){let e=o.origin||i;a.x+=o.internals.positionAbsolute.x-(t.width??0)*e[0],a.y+=o.internals.positionAbsolute.y-(t.height??0)*e[1]}return a}function nD(e,t){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}function rD(){let e,t;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}function iD(e){return{...cE,...e||{}}}function aD(e){return e===null?null:e?`valid`:`invalid`}function oD(e,{snapGrid:t=[0,0],snapToGrid:n=!1,transform:r,containerBounds:i}){let{x:a,y:o}=fD(e),s=GE({x:a-(i?.left??0),y:o-(i?.top??0)},r),{x:c,y:l}=n?WE(s,t):s;return{xSnapped:c,ySnapped:l,...s}}var sD=e=>({width:e.offsetWidth,height:e.offsetHeight}),cD=e=>e?.getRootNode?.()||window?.document,lD=[`INPUT`,`SELECT`,`TEXTAREA`];function uD(e){let t=e.composedPath?.()?.[0]||e.target;return t?.nodeType===1?lD.includes(t.nodeName)||t.hasAttribute(`contenteditable`)||!!t.closest(`.nokey`):!1}var dD=e=>`clientX`in e,fD=(e,t)=>{let n=dD(e),r=n?e.clientX:e.touches?.[0].clientX,i=n?e.clientY:e.touches?.[0].clientY;return{x:r-(t?.left??0),y:i-(t?.top??0)}},pD=(e,t,n,r,i)=>{let a=t.querySelectorAll(`.${e}`);return!a||!a.length?null:Array.from(a).map(t=>{let a=t.getBoundingClientRect();return{id:t.getAttribute(`data-handleid`),type:e,nodeId:i,position:t.getAttribute(`data-handlepos`),x:(a.left-n.left)/r,y:(a.top-n.top)/r,...sD(t)}})};function mD({sourceX:e,sourceY:t,targetX:n,targetY:r,sourceControlX:i,sourceControlY:a,targetControlX:o,targetControlY:s}){let c=e*.125+i*.375+o*.375+n*.125,l=t*.125+a*.375+s*.375+r*.125;return[c,l,Math.abs(c-e),Math.abs(l-t)]}function hD(e,t){return e>=0?.5*e:t*25*Math.sqrt(-e)}function gD({pos:e,x1:t,y1:n,x2:r,y2:i,c:a}){switch(e){case $.Left:return[t-hD(t-r,a),n];case $.Right:return[t+hD(r-t,a),n];case $.Top:return[t,n-hD(n-i,a)];case $.Bottom:return[t,n+hD(i-n,a)]}}function _D({sourceX:e,sourceY:t,sourcePosition:n=$.Bottom,targetX:r,targetY:i,targetPosition:a=$.Top,curvature:o=.25}){let[s,c]=gD({pos:n,x1:e,y1:t,x2:r,y2:i,c:o}),[l,u]=gD({pos:a,x1:r,y1:i,x2:e,y2:t,c:o}),[d,f,p,m]=mD({sourceX:e,sourceY:t,targetX:r,targetY:i,sourceControlX:s,sourceControlY:c,targetControlX:l,targetControlY:u});return[`M${e},${t} C${s},${c} ${l},${u} ${r},${i}`,d,f,p,m]}function vD({sourceX:e,sourceY:t,targetX:n,targetY:r}){let i=Math.abs(n-e)/2,a=n0}var xD=({source:e,sourceHandle:t,target:n,targetHandle:r})=>`xy-edge__${e}${t||``}-${n}${r||``}`,SD=(e,t)=>t.some(t=>t.source===e.source&&t.target===e.target&&(t.sourceHandle===e.sourceHandle||!t.sourceHandle&&!e.sourceHandle)&&(t.targetHandle===e.targetHandle||!t.targetHandle&&!e.targetHandle)),CD=(e,t,n={})=>{if(!e.source||!e.target)return n.onError?.(`006`,aE.error006()),t;let r=n.getEdgeId||xD,i;return i=gE(e)?{...e}:{...e,id:r(e)},SD(i,t)?t:(i.sourceHandle===null&&delete i.sourceHandle,i.targetHandle===null&&delete i.targetHandle,t.concat(i))};function wD({sourceX:e,sourceY:t,targetX:n,targetY:r}){let[i,a,o,s]=vD({sourceX:e,sourceY:t,targetX:n,targetY:r});return[`M ${e},${t}L ${n},${r}`,i,a,o,s]}var TD={[$.Left]:{x:-1,y:0},[$.Right]:{x:1,y:0},[$.Top]:{x:0,y:-1},[$.Bottom]:{x:0,y:1}},ED=({source:e,sourcePosition:t=$.Bottom,target:n})=>t===$.Left||t===$.Right?e.xMath.sqrt((t.x-e.x)**2+(t.y-e.y)**2);function OD({source:e,sourcePosition:t=$.Bottom,target:n,targetPosition:r=$.Top,center:i,offset:a,stepPosition:o}){let s=TD[t],c=TD[r],l={x:e.x+s.x*a,y:e.y+s.y*a},u={x:n.x+c.x*a,y:n.y+c.y*a},d=ED({source:l,sourcePosition:t,target:u}),f=d.x===0?`y`:`x`,p=d[f],m=[],h,g,_={x:0,y:0},v={x:0,y:0},[,,y,b]=vD({sourceX:e.x,sourceY:e.y,targetX:n.x,targetY:n.y});if(s[f]*c[f]===-1){f===`x`?(h=i.x??l.x+(u.x-l.x)*o,g=i.y??(l.y+u.y)/2):(h=i.x??(l.x+u.x)/2,g=i.y??l.y+(u.y-l.y)*o);let e=[{x:h,y:l.y},{x:h,y:u.y}],t=[{x:l.x,y:g},{x:u.x,y:g}];m=s[f]===p?f===`x`?e:t:f===`x`?t:e}else{let i=[{x:l.x,y:u.y}],o=[{x:u.x,y:l.y}];if(m=f===`x`?s.x===p?o:i:s.y===p?i:o,t===r){let t=Math.abs(e[f]-n[f]);if(t<=a){let r=Math.min(a-1,a-t);s[f]===p?_[f]=(l[f]>e[f]?-1:1)*r:v[f]=(u[f]>n[f]?-1:1)*r}}if(t!==r){let e=f===`x`?`y`:`x`,t=s[f]===c[e],n=l[e]>u[e],r=l[e]=Math.max(Math.abs(d.y-m[0].y),Math.abs(y.y-m[0].y))?(h=(d.x+y.x)/2,g=m[0].y):(h=m[0].x,g=(d.y+y.y)/2)}let x={x:l.x+_.x,y:l.y+_.y},S={x:u.x+v.x,y:u.y+v.y};return[[e,...x.x!==m[0].x||x.y!==m[0].y?[x]:[],...m,...S.x!==m[m.length-1].x||S.y!==m[m.length-1].y?[S]:[],n],h,g,y,b]}function kD(e,t,n,r){let i=Math.min(DD(e,t)/2,DD(t,n)/2,r),{x:a,y:o}=t;if(e.x===a&&a===n.x||e.y===o&&o===n.y)return`L${a} ${o}`;if(e.y===o){let t=e.xe.id===t):e[0])||null}function ID(e,t){return e?typeof e==`string`?e:`${t?`${t}__`:``}${Object.keys(e).sort().map(t=>`${t}=${e[t]}`).join(`&`)}`:``}function LD(e,{id:t,defaultColor:n,defaultMarkerStart:r,defaultMarkerEnd:i}){let a=new Set;return e.reduce((e,o)=>([o.markerStart||r,o.markerEnd||i].forEach(r=>{if(r&&typeof r==`object`){let i=ID(r,t);a.has(i)||(e.push({id:i,color:r.color||n,...r}),a.add(i))}}),e),[]).sort((e,t)=>e.id.localeCompare(t.id))}var RD=1e3,zD=10,BD={nodeOrigin:[0,0],nodeExtent:oE,elevateNodesOnSelect:!0,zIndexMode:`basic`,defaults:{}},VD={...BD,checkEquality:!0};function HD(e,t){let n={...e};for(let e in t)t[e]!==void 0&&(n[e]=t[e]);return n}function UD(e,t,n){let r=HD(BD,n);for(let n of e.values())if(n.parentId)JD(n,e,t,r);else{let e=kE(yE(n,r.nodeOrigin),QE(n.extent)?n.extent:r.nodeExtent,$E(n));n.internals.positionAbsolute=e}}function WD(e,t){if(!e.handles)return e.measured?t?.internals.handleBounds:void 0;let n=[],r=[];for(let t of e.handles){let i={id:t.id,width:t.width??1,height:t.height??1,nodeId:e.id,x:t.x,y:t.y,position:t.position,type:t.type};t.type===`source`?n.push(i):t.type===`target`&&r.push(i)}return{source:n,target:r}}function GD(e){return e===`manual`}function KD(e,t,n,r={}){let i=HD(VD,r),a={i:0},o=new Map(t),s=i?.elevateNodesOnSelect&&!GD(i.zIndexMode)?RD:0,c=e.length>0,l=!1;t.clear(),n.clear();for(let u of e){let e=o.get(u.id);if(i.checkEquality&&u===e?.internals.userNode)t.set(u.id,e);else{let n=kE(yE(u,i.nodeOrigin),QE(u.extent)?u.extent:i.nodeExtent,$E(u));e={...i.defaults,...u,measured:{width:u.measured?.width,height:u.measured?.height},internals:{positionAbsolute:n,handleBounds:WD(u,e),z:YD(u,s,i.zIndexMode),userNode:u}},t.set(u.id,e)}(e.measured===void 0||e.measured.width===void 0||e.measured.height===void 0)&&!e.hidden&&(c=!1),u.parentId&&JD(e,t,n,r,a),l||=u.selected??!1}return{nodesInitialized:c,hasSelectedNodes:l}}function qD(e,t){if(!e.parentId)return;let n=t.get(e.parentId);n?n.set(e.id,e):t.set(e.parentId,new Map([[e.id,e]]))}function JD(e,t,n,r,i){let{elevateNodesOnSelect:a,nodeOrigin:o,nodeExtent:s,zIndexMode:c}=HD(BD,r),l=e.parentId,u=t.get(l);if(!u){console.warn(`Parent node ${l} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);return}qD(e,n),i&&!u.parentId&&u.internals.rootParentIndex===void 0&&c===`auto`&&(u.internals.rootParentIndex=++i.i,u.internals.z=u.internals.z+i.i*zD),i&&u.internals.rootParentIndex!==void 0&&(i.i=u.internals.rootParentIndex);let{x:d,y:f,z:p}=XD(e,u,o,s,a&&!GD(c)?RD:0,c),{positionAbsolute:m}=e.internals,h=d!==m.x||f!==m.y;(h||p!==e.internals.z)&&t.set(e.id,{...e,internals:{...e.internals,positionAbsolute:h?{x:d,y:f}:m,z:p}})}function YD(e,t,n){let r=HE(e.zIndex)?e.zIndex:0;return GD(n)?r:r+(e.selected?t:0)}function XD(e,t,n,r,i,a){let{x:o,y:s}=t.internals.positionAbsolute,c=$E(e),l=yE(e,n),u=QE(e.extent)?kE(l,e.extent,c):l,d=kE({x:o+u.x,y:s+u.y},r,c);e.extent===`parent`&&(d=AE(d,c,t));let f=YD(e,i,a),p=t.internals.z??0;return{x:d.x,y:d.y,z:p>=f?p+1:f}}function ZD(e,t,n,r=[0,0]){let i=[],a=new Map;for(let n of e){let e=t.get(n.parentId);if(!e)continue;let r=RE(a.get(n.parentId)?.expandedRect??IE(e),n.rect);a.set(n.parentId,{expandedRect:r,parent:e})}return a.size>0&&a.forEach(({expandedRect:t,parent:a},o)=>{let s=a.internals.positionAbsolute,c=$E(a),l=a.origin??r,u=t.x0||d>0||m||h)&&(i.push({id:o,type:`position`,position:{x:a.position.x-u+m,y:a.position.y-d+h}}),n.get(o)?.forEach(t=>{e.some(e=>e.id===t.id)||i.push({id:t.id,type:`position`,position:{x:t.position.x+u,y:t.position.y+d}})})),(c.width0){let e=ZD(f,t,n,i);l.push(...e)}return{changes:l,updatedInternals:c}}async function $D({delta:e,panZoom:t,transform:n,translateExtent:r,width:i,height:a}){if(!t||!e.x&&!e.y)return!1;let o=await t.setViewportConstrained({x:n[0]+e.x,y:n[1]+e.y,zoom:n[2]},[[0,0],[i,a]],r);return!!o&&(o.x!==n[0]||o.y!==n[1]||o.k!==n[2])}function eO(e,t,n,r,i,a){let o=i,s=r.get(o)||new Map;r.set(o,s.set(n,t)),o=`${i}-${e}`;let c=r.get(o)||new Map;if(r.set(o,c.set(n,t)),a){o=`${i}-${e}-${a}`;let s=r.get(o)||new Map;r.set(o,s.set(n,t))}}function tO(e,t,n){e.clear(),t.clear();for(let r of n){let{source:n,target:i,sourceHandle:a=null,targetHandle:o=null}=r,s={edgeId:r.id,source:n,target:i,sourceHandle:a,targetHandle:o},c=`${n}-${a}--${i}-${o}`;eO(`source`,s,`${i}-${o}--${n}-${a}`,e,n,a),eO(`target`,s,c,e,i,o),t.set(r.id,r)}}function nO(e,t){if(!e.parentId)return!1;let n=t.get(e.parentId);return n?n.selected?!0:nO(n,t):!1}function rO(e,t,n){let r=e;do{if(r?.matches?.(t))return!0;if(r===n)return!1;r=r?.parentElement}while(r);return!1}function iO(e,t,n,r){let i=new Map;for(let[a,o]of e)if((o.selected||o.id===r)&&(!o.parentId||!nO(o,e))&&(o.draggable||t&&o.draggable===void 0)){let t=e.get(a);t&&i.set(a,{id:a,position:t.position||{x:0,y:0},distance:{x:n.x-t.internals.positionAbsolute.x,y:n.y-t.internals.positionAbsolute.y},extent:t.extent,parentId:t.parentId,origin:t.origin,expandParent:t.expandParent,internals:{positionAbsolute:t.internals.positionAbsolute||{x:0,y:0}},measured:{width:t.measured.width??0,height:t.measured.height??0}})}return i}function aO({nodeId:e,dragItems:t,nodeLookup:n,dragging:r=!0}){let i=[];for(let[e,a]of t){let t=n.get(e)?.internals.userNode;t&&i.push({...t,position:a.position,dragging:r})}if(!e)return[i[0],i];let a=n.get(e)?.internals.userNode;return[a?{...a,position:t.get(e)?.position||a.position,dragging:r}:i[0],i]}function oO({dragItems:e,snapGrid:t,x:n,y:r}){let i=e.values().next().value;if(!i)return null;let a={x:n-i.distance.x,y:r-i.distance.y},o=WE(a,t);return{x:o.x-a.x,y:o.y-a.y}}function sO({onNodeMouseDown:e,getStoreItems:t,onDragStart:n,onDrag:r,onDragStop:i}){let a={x:null,y:null},o=0,s=new Map,c=!1,l={x:0,y:0},u=null,d=!1,f=null,p=!1,m=!1,h=null;function g({noDragClassName:g,handleSelector:_,domNode:v,isSelectable:y,nodeId:b,nodeClickDistance:x=0}){f=DS(v);function S({x:e,y:n}){let{nodeLookup:i,nodeExtent:o,snapGrid:c,snapToGrid:l,nodeOrigin:u,onNodeDrag:d,onSelectionDrag:f,onError:p,updateNodePositions:g}=t();a={x:e,y:n};let _=!1,v=s.size>1,y=v&&o?PE(xE(s)):null,x=v&&l?oO({dragItems:s,snapGrid:c,x:e,y:n}):null;for(let[t,r]of s){if(!i.has(t))continue;let a={x:e-r.distance.x,y:n-r.distance.y};l&&(a=x?{x:Math.round(a.x+x.x),y:Math.round(a.y+x.y)}:WE(a,c));let s=null;if(v&&o&&!r.extent&&y){let{positionAbsolute:e}=r.internals,t=e.x-y.x+o[0][0],n=e.x+r.measured.width-y.x2+o[1][0],i=e.y-y.y+o[0][1],a=e.y+r.measured.height-y.y2+o[1][1];s=[[t,i],[n,a]]}let{position:d,positionAbsolute:f}=EE({nodeId:t,nextPosition:a,nodeLookup:i,nodeExtent:s||o,nodeOrigin:u,onError:p});_=_||r.position.x!==d.x||r.position.y!==d.y,r.position=d,r.internals.positionAbsolute=f}if(m||=_,_&&(g(s,!0),h&&(r||d||!b&&f))){let[e,t]=aO({nodeId:b,dragItems:s,nodeLookup:i});r?.(h,s,e,t),d?.(h,e,t),b||f?.(h,t)}}async function C(){if(!u)return;let{transform:e,panBy:n,autoPanSpeed:r,autoPanOnNodeDrag:i}=t();if(!i){c=!1,cancelAnimationFrame(o);return}let[s,d]=ME(l,u,r);(s!==0||d!==0)&&(a.x=(a.x??0)-s/e[2],a.y=(a.y??0)-d/e[2],await n({x:s,y:d})&&S(a)),o=requestAnimationFrame(C)}function w(r){let{nodeLookup:i,multiSelectionActive:o,nodesDraggable:c,transform:l,snapGrid:f,snapToGrid:p,selectNodesOnDrag:m,onNodeDragStart:h,onSelectionDragStart:g,unselectNodesAndEdges:_}=t();d=!0,(!m||!y)&&!o&&b&&(i.get(b)?.selected||_()),y&&m&&b&&e?.(b);let v=oD(r.sourceEvent,{transform:l,snapGrid:f,snapToGrid:p,containerBounds:u});if(a=v,s=iO(i,c,v,b),s.size>0&&(n||h||!b&&g)){let[e,t]=aO({nodeId:b,dragItems:s,nodeLookup:i});n?.(r.sourceEvent,s,e,t),h?.(r.sourceEvent,e,t),b||g?.(r.sourceEvent,t)}}let T=HS().clickDistance(x).on(`start`,e=>{let{domNode:n,nodeDragThreshold:r,transform:i,snapGrid:o,snapToGrid:s}=t();u=n?.getBoundingClientRect()||null,p=!1,m=!1,h=e.sourceEvent,r===0&&w(e),a=oD(e.sourceEvent,{transform:i,snapGrid:o,snapToGrid:s,containerBounds:u}),l=fD(e.sourceEvent,u)}).on(`drag`,e=>{let{autoPanOnNodeDrag:n,transform:r,snapGrid:i,snapToGrid:o,nodeDragThreshold:f,nodeLookup:m}=t(),g=oD(e.sourceEvent,{transform:r,snapGrid:i,snapToGrid:o,containerBounds:u});if(h=e.sourceEvent,(e.sourceEvent.type===`touchmove`&&e.sourceEvent.touches.length>1||b&&!m.has(b))&&(p=!0),!p){if(!c&&n&&d&&(c=!0,C()),!d){let t=fD(e.sourceEvent,u),n=t.x-l.x,r=t.y-l.y;Math.sqrt(n*n+r*r)>f&&w(e)}(a.x!==g.xSnapped||a.y!==g.ySnapped)&&s&&d&&(l=fD(e.sourceEvent,u),S(g))}}).on(`end`,e=>{if(!d||p){p&&s.size>0&&t().updateNodePositions(s,!1);return}if(c=!1,d=!1,cancelAnimationFrame(o),s.size>0){let{nodeLookup:n,updateNodePositions:r,onNodeDragStop:a,onSelectionDragStop:o}=t();if(m&&=(r(s,!1),!1),i||a||!b&&o){let[t,r]=aO({nodeId:b,dragItems:s,nodeLookup:n,dragging:!1});i?.(e.sourceEvent,s,t,r),a?.(e.sourceEvent,t,r),b||o?.(e.sourceEvent,r)}}}).filter(e=>{let t=e.target;return!e.button&&(!g||!rO(t,`.${g}`,v))&&(!_||rO(t,_,v))});f.call(T)}function _(){f?.on(`.drag`,null)}return{update:g,destroy:_}}function cO(e,t,n){let r=[],i={x:e.x-n,y:e.y-n,width:n*2,height:n*2};for(let e of t.values())BE(i,IE(e))>0&&r.push(e);return r}var lO=250;function uO(e,t,n,r){let i=[],a=1/0,o=cO(e,n,t+lO);for(let n of o){let o=[...n.internals.handleBounds?.source??[],...n.internals.handleBounds?.target??[]];for(let s of o){if(r.nodeId===s.nodeId&&r.type===s.type&&r.id===s.id)continue;let{x:o,y:c}=PD(n,s,s.position,!0),l=Math.sqrt((o-e.x)**2+(c-e.y)**2);l>t||(l1){let e=r.type===`source`?`target`:`source`;return i.find(t=>t.type===e)??i[0]}return i[0]}function dO(e,t,n,r,i,a=!1){let o=r.get(e);if(!o)return null;let s=i===`strict`?o.internals.handleBounds?.[t]:[...o.internals.handleBounds?.source??[],...o.internals.handleBounds?.target??[]],c=(n?s?.find(e=>e.id===n):s?.[0])??null;return c&&a?{...c,...PD(o,c,c.position,!0)}:c}function fO(e,t){return e||(t?.classList.contains(`target`)?`target`:t?.classList.contains(`source`)?`source`:null)}function pO(e,t){let n=null;return t?n=!0:e&&!t&&(n=!1),n}var mO=()=>!0;function hO(e,{connectionMode:t,connectionRadius:n,handleId:r,nodeId:i,edgeUpdaterType:a,isTarget:o,domNode:s,nodeLookup:c,lib:l,autoPanOnConnect:u,flowId:d,panBy:f,cancelConnection:p,onConnectStart:m,onConnect:h,onConnectEnd:g,isValidConnection:_=mO,onReconnectEnd:v,updateConnection:y,getTransform:b,getFromHandle:x,autoPanSpeed:S,dragThreshold:C=1,handleDomNode:w}){let T=cD(e.target),E=0,D,{x:O,y:k}=fD(e),A=fO(a,w),j=s?.getBoundingClientRect(),M=!1;if(!j||!A)return;let N=dO(i,A,r,c,t);if(!N)return;let P=fD(e,j),F=!1,I=null,L=!1,R=null;function z(){if(!u||!j)return;let[e,t]=ME(P,j,S);f({x:e,y:t}),E=requestAnimationFrame(z)}let B={...N,nodeId:i,type:A,position:N.position},ee=c.get(i),V={inProgress:!0,isValid:null,from:PD(ee,B,$.Left,!0),fromHandle:B,fromPosition:B.position,fromNode:ee,to:P,toHandle:null,toPosition:hE[B.position],toNode:null,pointer:P};function H(){M=!0,y(V),m?.(e,{nodeId:i,handleId:r,handleType:A})}C===0&&H();function te(e){if(!M){let{x:t,y:n}=fD(e),r=t-O,i=n-k;if(!(r*r+i*i>C*C))return;H()}if(!x()||!B){ne(e);return}let a=b();P=fD(e,j),D=uO(GE(P,a,!1,[1,1]),n,c,B),F||=(z(),!0);let s=gO(e,{handle:D,connectionMode:t,fromNodeId:i,fromHandleId:r,fromType:o?`target`:`source`,isValidConnection:_,doc:T,lib:l,flowId:d,nodeLookup:c});R=s.handleDomNode,I=s.connection,L=pO(!!D,s.isValid);let u=c.get(i),f=u?PD(u,B,$.Left,!0):V.from,p={...V,from:f,isValid:L,to:s.toHandle&&L?KE({x:s.toHandle.x,y:s.toHandle.y},a):P,toHandle:s.toHandle,toPosition:L&&s.toHandle?s.toHandle.position:hE[B.position],toNode:s.toHandle?c.get(s.toHandle.nodeId):null,pointer:P};y(p),V=p}function ne(e){if(!(`touches`in e&&e.touches.length>0)){if(M){(D||R)&&I&&L&&h?.(I);let{inProgress:t,...n}=V,r={...n,toPosition:V.toHandle?V.toPosition:null};g?.(e,r),a&&v?.(e,r)}p(),cancelAnimationFrame(E),F=!1,L=!1,I=null,R=null,T.removeEventListener(`mousemove`,te),T.removeEventListener(`mouseup`,ne),T.removeEventListener(`touchmove`,te),T.removeEventListener(`touchend`,ne)}}T.addEventListener(`mousemove`,te),T.addEventListener(`mouseup`,ne),T.addEventListener(`touchmove`,te),T.addEventListener(`touchend`,ne)}function gO(e,{handle:t,connectionMode:n,fromNodeId:r,fromHandleId:i,fromType:a,doc:o,lib:s,flowId:c,isValidConnection:l=mO,nodeLookup:u}){let d=a===`target`,f=t?o.querySelector(`.${s}-flow__handle[data-id="${c}-${t?.nodeId}-${t?.id}-${t?.type}"]`):null,{x:p,y:m}=fD(e),h=o.elementFromPoint(p,m),g=h?.classList.contains(`${s}-flow__handle`)?h:f,_={handleDomNode:g,isValid:!1,connection:null,toHandle:null};if(g){let e=fO(void 0,g),t=g.getAttribute(`data-nodeid`),a=g.getAttribute(`data-handleid`),o=g.classList.contains(`connectable`),s=g.classList.contains(`connectableend`);if(!t||!e)return _;let c={source:d?t:r,sourceHandle:d?a:i,target:d?r:t,targetHandle:d?i:a};_.connection=c,_.isValid=o&&s&&(n===lE.Strict?d&&e===`source`||!d&&e===`target`:t!==r||a!==i)&&l(c),_.toHandle=dO(t,e,a,u,n,!0)}return _}var _O={onPointerDown:hO,isValid:gO};function vO({domNode:e,panZoom:t,getTransform:n,getViewScale:r}){let i=DS(e);function a({translateExtent:e,width:a,height:o,zoomStep:s=1,pannable:c=!0,zoomable:l=!0,inversePan:u=!1}){let d=e=>{if(e.sourceEvent.type!==`wheel`||!t)return;let r=n(),i=e.sourceEvent.ctrlKey&&ZE()?10:1,a=-e.sourceEvent.deltaY*(e.sourceEvent.deltaMode===1?.05:e.sourceEvent.deltaMode?1:.002)*s,o=r[2]*2**(a*i);t.scaleTo(o)},f=[0,0],p=iE().on(`start`,e=>{(e.sourceEvent.type===`mousedown`||e.sourceEvent.type===`touchstart`)&&(f=[e.sourceEvent.clientX??e.sourceEvent.touches[0].clientX,e.sourceEvent.clientY??e.sourceEvent.touches[0].clientY])}).on(`zoom`,c?i=>{let s=n();if(i.sourceEvent.type!==`mousemove`&&i.sourceEvent.type!==`touchmove`||!t)return;let c=[i.sourceEvent.clientX??i.sourceEvent.touches[0].clientX,i.sourceEvent.clientY??i.sourceEvent.touches[0].clientY],l=[c[0]-f[0],c[1]-f[1]];f=c;let d=r()*Math.max(s[2],Math.log(s[2]))*(u?-1:1),p={x:s[0]-l[0]*d,y:s[1]-l[1]*d},m=[[0,0],[a,o]];t.setViewportConstrained({x:p.x,y:p.y,zoom:s[2]},m,e)}:null).on(`zoom.wheel`,l?d:null);i.call(p,{})}function o(){i.on(`zoom`,null)}return{update:a,destroy:o,pointer:kS}}var yO=e=>({x:e.x,y:e.y,zoom:e.k}),bO=({x:e,y:t,zoom:n})=>JT.translate(e,t).scale(n),xO=(e,t)=>e.target.closest(`.${t}`),SO=(e,t)=>t===2&&Array.isArray(e)&&e.includes(2),CO=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2,wO=(e,t=0,n=CO,r=()=>{})=>{let i=typeof t==`number`&&t>0;return i||r(),i?e.transition().duration(t).ease(n).on(`end`,r):e},TO=e=>{let t=e.ctrlKey&&ZE()?10:1;return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*t};function EO({zoomPanValues:e,noWheelClassName:t,d3Selection:n,d3Zoom:r,panOnScrollMode:i,panOnScrollSpeed:a,zoomOnPinch:o,onPanZoomStart:s,onPanZoom:c,onPanZoomEnd:l}){return u=>{if(xO(u,t))return u.ctrlKey&&u.preventDefault(),!1;u.preventDefault(),u.stopImmediatePropagation();let d=n.property(`__zoom`).k||1;if(u.ctrlKey&&o){let e=kS(u),t=d*2**TO(u);r.scaleTo(n,t,e,u);return}let f=u.deltaMode===1?20:1,p=i===uE.Vertical?0:u.deltaX*f,m=i===uE.Horizontal?0:u.deltaY*f;!ZE()&&u.shiftKey&&i!==uE.Vertical&&(p=u.deltaY*f,m=0),r.translateBy(n,-(p/d)*a,-(m/d)*a,{internal:!0});let h=yO(n.property(`__zoom`));clearTimeout(e.panScrollTimeout),e.isPanScrolling?c?.(u,h):(e.isPanScrolling=!0,s?.(u,h)),e.panScrollTimeout=setTimeout(()=>{l?.(u,h),e.isPanScrolling=!1},150)}}function DO({noWheelClassName:e,preventScrolling:t,d3ZoomHandler:n}){return function(r,i){let a=r.type===`wheel`,o=!t&&a&&!r.ctrlKey,s=xO(r,e);if(r.ctrlKey&&a&&s&&r.preventDefault(),o||s)return null;r.preventDefault(),n.call(this,r,i)}}function OO({zoomPanValues:e,onDraggingChange:t,onPanZoomStart:n}){return r=>{if(r.sourceEvent?.internal)return;let i=yO(r.transform);e.mouseButton=r.sourceEvent?.button||0,e.isZoomingOrPanning=!0,e.prevViewport=i,r.sourceEvent?.type===`mousedown`&&t(!0),n&&n?.(r.sourceEvent,i)}}function kO({zoomPanValues:e,panOnDrag:t,onPaneContextMenu:n,onTransformChange:r,onPanZoom:i}){return a=>{e.usedRightMouseButton=!!(n&&SO(t,e.mouseButton??0)),a.sourceEvent?.sync||r([a.transform.x,a.transform.y,a.transform.k]),i&&!a.sourceEvent?.internal&&i?.(a.sourceEvent,yO(a.transform))}}function AO({zoomPanValues:e,panOnDrag:t,panOnScroll:n,onDraggingChange:r,onPanZoomEnd:i,onPaneContextMenu:a}){return o=>{if(!o.sourceEvent?.internal&&(e.isZoomingOrPanning=!1,a&&SO(t,e.mouseButton??0)&&!e.usedRightMouseButton&&o.sourceEvent&&a(o.sourceEvent),e.usedRightMouseButton=!1,r(!1),i)){let t=yO(o.transform);e.prevViewport=t,clearTimeout(e.timerId),e.timerId=setTimeout(()=>{i?.(o.sourceEvent,t)},n?150:0)}}}function jO({panActivationKeyPressed:e,zoomActivationKeyPressed:t,zoomOnScroll:n,zoomOnPinch:r,panOnDrag:i,panOnScroll:a,zoomOnDoubleClick:o,userSelectionActive:s,noWheelClassName:c,noPanClassName:l,lib:u,connectionInProgress:d}){return f=>{let p=t||n,m=r&&f.ctrlKey,h=f.type===`wheel`;if(f.button===1&&f.type===`mousedown`&&(xO(f,`${u}-flow__node`)||xO(f,`${u}-flow__edge`)||xO(f,`${u}-flow__selection`)||xO(f,`${u}-flow__nodesselection`)))return!0;if(!i&&!p&&!a&&!o&&!r||s||d&&!h||xO(f,c)&&h||xO(f,l)&&(!h||a&&h&&!t)||!r&&f.ctrlKey&&h)return!1;if(!r&&f.type===`touchstart`&&f.touches?.length>1)return f.preventDefault(),!1;if(!p&&!a&&!m&&h||!i&&(f.type===`mousedown`||f.type===`touchstart`)||Array.isArray(i)&&!i.includes(f.button)&&f.type===`mousedown`)return!1;let g=Array.isArray(i)&&i.includes(f.button)||!f.button||f.button<=1;return(!f.ctrlKey||h||e)&&g}}function MO({domNode:e,minZoom:t,maxZoom:n,translateExtent:r,viewport:i,onPanZoom:a,onPanZoomStart:o,onPanZoomEnd:s,onDraggingChange:c}){let l={isZoomingOrPanning:!1,usedRightMouseButton:!1,prevViewport:{},mouseButton:0,timerId:void 0,panScrollTimeout:void 0,isPanScrolling:!1},u=e.getBoundingClientRect(),d=[[0,0],[u.width,u.height]];(typeof ResizeObserver<`u`?new ResizeObserver(e=>{let t=e[0];t&&(d=[[0,0],[t.contentRect.width,t.contentRect.height]])}):null)?.observe(e);let f=iE().extent(()=>d).scaleExtent([t,n]).translateExtent(r),p=DS(e).call(f);y({x:i.x,y:i.y,zoom:OE(i.zoom,t,n)},[[0,0],[u.width,u.height]],r);let m=p.on(`wheel.zoom`),h=p.on(`dblclick.zoom`);f.wheelDelta(TO);async function g(e,t){return p?new Promise(n=>{f?.interpolate(t?.interpolate===`linear`?GC:aw).transform(wO(p,t?.duration,t?.ease,()=>n(!0)),e)}):!1}function _({noWheelClassName:e,noPanClassName:t,onPaneContextMenu:n,userSelectionActive:r,panOnScroll:i,panOnDrag:u,panOnScrollMode:d,panOnScrollSpeed:g,preventScrolling:_,zoomOnPinch:y,zoomOnScroll:b,zoomOnDoubleClick:x,panActivationKeyPressed:S=!1,zoomActivationKeyPressed:C,lib:w,onTransformChange:T,connectionInProgress:E,paneClickDistance:D,selectionOnDrag:O}){r&&!l.isZoomingOrPanning&&v();let k=i&&!C&&!r;f.clickDistance(O?1/0:!HE(D)||D<0?0:D);let A=k?EO({zoomPanValues:l,noWheelClassName:e,d3Selection:p,d3Zoom:f,panOnScrollMode:d,panOnScrollSpeed:g,zoomOnPinch:y,onPanZoomStart:o,onPanZoom:a,onPanZoomEnd:s}):DO({noWheelClassName:e,preventScrolling:_,d3ZoomHandler:m});p.on(`wheel.zoom`,A,{passive:!1});let j=OO({zoomPanValues:l,onDraggingChange:c,onPanZoomStart:o});f.on(`start`,j);let M=kO({zoomPanValues:l,panOnDrag:u,onPaneContextMenu:!!n,onPanZoom:a,onTransformChange:T});f.on(`zoom`,M);let N=AO({zoomPanValues:l,panOnDrag:u,panOnScroll:i,onPaneContextMenu:n,onPanZoomEnd:s,onDraggingChange:c});f.on(`end`,N);let P=jO({panActivationKeyPressed:S,zoomActivationKeyPressed:C,panOnDrag:u,zoomOnScroll:b,panOnScroll:i,zoomOnDoubleClick:x,zoomOnPinch:y,userSelectionActive:r,noPanClassName:t,noWheelClassName:e,lib:w,connectionInProgress:E});f.filter(P),x?p.on(`dblclick.zoom`,h):p.on(`dblclick.zoom`,null)}function v(){f.on(`zoom`,null)}async function y(e,t,n){let r=bO(e),i=f?.constrain()(r,t,n);return i&&await g(i),i}async function b(e,t){let n=bO(e);return await g(n,t),n}function x(e){if(p){let t=bO(e),n=p.property(`__zoom`);(n.k!==e.zoom||n.x!==e.x||n.y!==e.y)&&f?.transform(p,t,null,{sync:!0})}}function S(){let e=p?YT(p.node()):{x:0,y:0,k:1};return{x:e.x,y:e.y,zoom:e.k}}async function C(e,t){return p?new Promise(n=>{f?.interpolate(t?.interpolate===`linear`?GC:aw).scaleTo(wO(p,t?.duration,t?.ease,()=>n(!0)),e)}):!1}async function w(e,t){return p?new Promise(n=>{f?.interpolate(t?.interpolate===`linear`?GC:aw).scaleBy(wO(p,t?.duration,t?.ease,()=>n(!0)),e)}):!1}function T(e){f?.scaleExtent(e)}function E(e){f?.translateExtent(e)}function D(e){let t=!HE(e)||e<0?0:e;f?.clickDistance(t)}return{update:_,destroy:v,setViewport:b,setViewportConstrained:y,getViewport:S,scaleTo:C,scaleBy:w,setScaleExtent:T,setTranslateExtent:E,syncViewport:x,setClickDistance:D}}var NO;(function(e){e.Line=`line`,e.Handle=`handle`})(NO||={});function PO({width:e,prevWidth:t,height:n,prevHeight:r,affectsX:i,affectsY:a}){let o=e-t,s=n-r,c=[o>0?1:o<0?-1:0,s>0?1:s<0?-1:0];return o&&i&&(c[0]*=-1),s&&a&&(c[1]*=-1),c}function FO(e){return{isHorizontal:e.includes(`right`)||e.includes(`left`),isVertical:e.includes(`bottom`)||e.includes(`top`),affectsX:e.includes(`left`),affectsY:e.includes(`top`)}}function IO(e,t){return Math.max(0,t-e)}function LO(e,t){return Math.max(0,e-t)}function RO(e,t,n){return Math.max(0,t-e,e-n)}function zO(e,t){return e?!t:t}function BO(e,t,n,r,i,a,o,s){let{affectsX:c,affectsY:l}=t,{isHorizontal:u,isVertical:d}=t,f=u&&d,{xSnapped:p,ySnapped:m}=n,{minWidth:h,maxWidth:g,minHeight:_,maxHeight:v}=r,{x:y,y:b,width:x,height:S,aspectRatio:C}=e,w=Math.floor(u?p-e.pointerX:0),T=Math.floor(d?m-e.pointerY:0),E=x+(c?-w:w),D=S+(l?-T:T),O=-a[0]*x,k=-a[1]*S,A=RO(E,h,g),j=RO(D,_,v);if(o){let e=0,t=0;c&&w<0?e=IO(y+w+O,o[0][0]):!c&&w>0&&(e=LO(y+E+O,o[1][0])),l&&T<0?t=IO(b+T+k,o[0][1]):!l&&T>0&&(t=LO(b+D+k,o[1][1])),A=Math.max(A,e),j=Math.max(j,t)}if(s){let e=0,t=0;c&&w>0?e=LO(y+w,s[0][0]):!c&&w<0&&(e=IO(y+E,s[1][0])),l&&T>0?t=LO(b+T,s[0][1]):!l&&T<0&&(t=IO(b+D,s[1][1])),A=Math.max(A,e),j=Math.max(j,t)}if(i){if(u){let e=RO(E/C,_,v)*C;if(A=Math.max(A,e),o){let e=0;e=!c&&!l||c&&!l&&f?LO(b+k+E/C,o[1][1])*C:IO(b+k+(c?w:-w)/C,o[0][1])*C,A=Math.max(A,e)}if(s){let e=0;e=!c&&!l||c&&!l&&f?IO(b+E/C,s[1][1])*C:LO(b+(c?w:-w)/C,s[0][1])*C,A=Math.max(A,e)}}if(d){let e=RO(D*C,h,g)/C;if(j=Math.max(j,e),o){let e=0;e=!c&&!l||l&&!c&&f?LO(y+D*C+O,o[1][0])/C:IO(y+(l?T:-T)*C+O,o[0][0])/C,j=Math.max(j,e)}if(s){let e=0;e=!c&&!l||l&&!c&&f?IO(y+D*C,s[1][0])/C:LO(y+(l?T:-T)*C,s[0][0])/C,j=Math.max(j,e)}}}T+=T<0?j:-j,w+=w<0?A:-A,i&&(f?E>D*C?T=(zO(c,l)?-w:w)/C:w=(zO(c,l)?-T:T)*C:u?(T=w/C,l=c):(w=T*C,c=l));let M=c?y+w:y,N=l?b+T:b;return{width:x+(c?-w:w),height:S+(l?-T:T),x:a[0]*w*(c?-1:1)+M,y:a[1]*T*(l?-1:1)+N}}var VO={width:0,height:0,x:0,y:0},HO={...VO,pointerX:0,pointerY:0,aspectRatio:1};function UO(e,t,n){let r=t.position.x+e.position.x,i=t.position.y+e.position.y,a=e.measured.width??0,o=e.measured.height??0,s=n[0]*a,c=n[1]*o;return[[r-s,i-c],[r+a-s,i+o-c]]}function WO({domNode:e,nodeId:t,getStoreItems:n,onChange:r,onEnd:i}){let a=DS(e),o={controlDirection:FO(`bottom-right`),boundaries:{minWidth:0,minHeight:0,maxWidth:Number.MAX_VALUE,maxHeight:Number.MAX_VALUE},resizeDirection:void 0,keepAspectRatio:!1};function s({controlPosition:e,boundaries:s,keepAspectRatio:c,resizeDirection:l,onResizeStart:u,onResize:d,onResizeEnd:f,shouldResize:p}){let m={...VO},h={...HO};o={boundaries:s,resizeDirection:l,keepAspectRatio:c,controlDirection:FO(e)};let g,_=null,v=[],y,b,x,S=HS().on(`start`,e=>{let{nodeLookup:r,transform:i,snapGrid:a,snapToGrid:o,nodeOrigin:s,paneDomNode:c}=n();if(g=r.get(t),!g)return;_=c?.getBoundingClientRect()??null;let{xSnapped:l,ySnapped:d}=oD(e.sourceEvent,{transform:i,snapGrid:a,snapToGrid:o,containerBounds:_});m={width:g.measured.width??0,height:g.measured.height??0,x:g.position.x??0,y:g.position.y??0},h={...m,pointerX:l,pointerY:d,aspectRatio:m.width/m.height},y=void 0,b=QE(g.extent)?g.extent:void 0,g.parentId&&(g.extent===`parent`||g.expandParent)&&(y=r.get(g.parentId)),y&&g.extent===`parent`&&(b=[[0,0],[y.measured.width,y.measured.height]]),v=[],x=void 0;for(let[e,n]of r)if(n.parentId===t&&(v.push({id:e,position:{...n.position},extent:n.extent}),n.extent===`parent`||n.expandParent)){let e=UO(n,g,n.origin??s);x=x?[[Math.min(e[0][0],x[0][0]),Math.min(e[0][1],x[0][1])],[Math.max(e[1][0],x[1][0]),Math.max(e[1][1],x[1][1])]]:e}u?.(e,{...m})}).on(`drag`,e=>{let{transform:t,snapGrid:i,snapToGrid:a,nodeOrigin:s}=n(),c=oD(e.sourceEvent,{transform:t,snapGrid:i,snapToGrid:a,containerBounds:_}),l=[];if(!g)return;let{x:u,y:f,width:S,height:C}=m,w={},T=g.origin??s,{width:E,height:D,x:O,y:k}=BO(h,o.controlDirection,c,o.boundaries,o.keepAspectRatio,T,b,x),A=E!==S,j=D!==C,M=O!==u&&A,N=k!==f&&j;if(!M&&!N&&!A&&!j)return;let P={prevValues:{...m},startX:h.x,startY:h.y,childNodes:v.map(e=>({...e,position:{...e.position}}))};if((M||N||T[0]===1||T[1]===1)&&(w.x=M?O:m.x,w.y=N?k:m.y,m.x=w.x,m.y=w.y,v.length>0)){let e=O-u,t=k-f;for(let n of v)n.position={x:n.position.x-e+T[0]*(E-S),y:n.position.y-t+T[1]*(D-C)},l.push(n)}if((A||j)&&(w.width=A&&(!o.resizeDirection||o.resizeDirection===`horizontal`)?E:m.width,w.height=j&&(!o.resizeDirection||o.resizeDirection===`vertical`)?D:m.height,m.width=w.width,m.height=w.height),y&&g.expandParent){let e=T[0]*(w.width??0);w.x&&w.x{e.position=P.childNodes[t].position});return}d?.(e,I),r(w,l)}).on(`end`,e=>{f?.(e,{...m}),i?.({...m})});a.call(S)}function c(){a.on(`.drag`,null)}return{update:s,destroy:c}}var GO=s((e=>{var t=f();function n(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var r=typeof Object.is==`function`?Object.is:n,i=t.useState,a=t.useEffect,o=t.useLayoutEffect,s=t.useDebugValue;function c(e,t){var n=t(),r=i({inst:{value:n,getSnapshot:t}}),c=r[0].inst,u=r[1];return o(function(){c.value=n,c.getSnapshot=t,l(c)&&u({inst:c})},[e,n,t]),a(function(){return l(c)&&u({inst:c}),e(function(){l(c)&&u({inst:c})})},[e]),s(n),n}function l(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!r(e,n)}catch{return!0}}function u(e,t){return t()}var d=typeof window>`u`||window.document===void 0||window.document.createElement===void 0?u:c;e.useSyncExternalStore=t.useSyncExternalStore===void 0?d:t.useSyncExternalStore})),KO=s(((e,t)=>{t.exports=GO()})),qO=s((e=>{var t=f(),n=KO();function r(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var i=typeof Object.is==`function`?Object.is:r,a=n.useSyncExternalStore,o=t.useRef,s=t.useEffect,c=t.useMemo,l=t.useDebugValue;e.useSyncExternalStoreWithSelector=function(e,t,n,r,u){var d=o(null);if(d.current===null){var f={hasValue:!1,value:null};d.current=f}else f=d.current;d=c(function(){function e(e){if(!a){if(a=!0,o=e,e=r(e),u!==void 0&&f.hasValue){var t=f.value;if(u(t,e))return s=t}return s=e}if(t=s,i(o,e))return t;var n=r(e);return u!==void 0&&u(t,n)?(o=e,t):(o=e,s=n)}var a=!1,o,s,c=n===void 0?null:n;return[function(){return e(t())},c===null?void 0:function(){return e(c())}]},[t,n,r,u]);var p=a(e,d[0],d[1]);return s(function(){f.hasValue=!0,f.value=p},[p]),l(p),p}})),JO=u(s(((e,t)=>{t.exports=qO()}))(),1),YO=e=>{let t,n=new Set,r=(e,r)=>{let i=typeof e==`function`?e(t):e;if(!Object.is(i,t)){let e=t;t=r??(typeof i!=`object`||!i)?i:Object.assign({},t,i),n.forEach(n=>n(t,e))}},i=()=>t,a={setState:r,getState:i,getInitialState:()=>o,subscribe:e=>(n.add(e),()=>n.delete(e)),destroy:()=>{n.clear()}},o=t=e(r,i,a);return a},XO=e=>e?YO(e):YO,{useDebugValue:ZO}=y.default,{useSyncExternalStoreWithSelector:QO}=JO.default,$O=e=>e;function ek(e,t=$O,n){let r=QO(e.subscribe,e.getState,e.getServerState||e.getInitialState,t,n);return ZO(r),r}var tk=(e,t)=>{let n=XO(e),r=(e,r=t)=>ek(n,e,r);return Object.assign(r,n),r},nk=(e,t)=>e?tk(e,t):tk;function rk(e,t){if(Object.is(e,t))return!0;if(typeof e!=`object`||!e||typeof t!=`object`||!t)return!1;if(e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(let[n,r]of e)if(!Object.is(r,t.get(n)))return!1;return!0}if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}let n=Object.keys(e);if(n.length!==Object.keys(t).length)return!1;for(let r of n)if(!Object.prototype.hasOwnProperty.call(t,r)||!Object.is(e[r],t[r]))return!1;return!0}var ik=(0,y.createContext)(null),ak=ik.Provider,ok=aE.error001(`react`);function sk(e,t){let n=(0,y.useContext)(ik);if(n===null)throw Error(ok);return ek(n,e,t)}function ck(){let e=(0,y.useContext)(ik);if(e===null)throw Error(ok);return(0,y.useMemo)(()=>({getState:e.getState,setState:e.setState,subscribe:e.subscribe}),[e])}var lk={display:`none`},uk={position:`absolute`,width:1,height:1,margin:-1,border:0,padding:0,overflow:`hidden`,clip:`rect(0px, 0px, 0px, 0px)`,clipPath:`inset(100%)`},dk=`react-flow__node-desc`,fk=`react-flow__edge-desc`,pk=`react-flow__aria-live`,mk=e=>e.ariaLiveMessage,hk=e=>e.ariaLabelConfig;function gk({rfId:e}){let t=sk(mk);return(0,K.jsx)(`div`,{id:`${pk}-${e}`,"aria-live":`assertive`,"aria-atomic":`true`,style:uk,children:t})}function _k({rfId:e,disableKeyboardA11y:t}){let n=sk(hk);return(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`div`,{id:`${dk}-${e}`,style:lk,children:t?n[`node.a11yDescription.default`]:n[`node.a11yDescription.keyboardDisabled`]}),(0,K.jsx)(`div`,{id:`${fk}-${e}`,style:lk,children:n[`edge.a11yDescription.default`]}),!t&&(0,K.jsx)(gk,{rfId:e})]})}var vk=(0,y.forwardRef)(({position:e=`top-left`,children:t,className:n,style:r,...i},a)=>{let o=`${e}`.split(`-`);return(0,K.jsx)(`div`,{className:Sb([`react-flow__panel`,n,...o]),style:r,ref:a,...i,children:t})});vk.displayName=`Panel`;var yk=`https://reactflow.dev?utm_source=attribution`;function bk({proOptions:e,position:t=`bottom-right`}){return(0,y.useEffect)(()=>{},[]),e?.hideAttribution?null:(0,K.jsx)(vk,{position:t,className:`react-flow__attribution`,"data-message":`Please only hide this attribution when you are subscribed to React Flow Pro: ${yk}`,children:(0,K.jsx)(`a`,{href:yk,target:`_blank`,rel:`noopener noreferrer`,"aria-label":`React Flow attribution`,children:`React Flow`})})}var xk=e=>{let t=[],n=[];for(let[,n]of e.nodeLookup)n.selected&&t.push(n.internals.userNode);for(let[,t]of e.edgeLookup)t.selected&&n.push(t);return{selectedNodes:t,selectedEdges:n}},Sk=e=>e.id;function Ck(e,t){return rk(e.selectedNodes.map(Sk),t.selectedNodes.map(Sk))&&rk(e.selectedEdges.map(Sk),t.selectedEdges.map(Sk))}function wk({onSelectionChange:e}){let t=ck(),{selectedNodes:n,selectedEdges:r}=sk(xk,Ck);return(0,y.useEffect)(()=>{let i={nodes:n,edges:r};e?.(i),t.getState().onSelectionChangeHandlers.forEach(e=>e(i))},[n,r,e]),null}var Tk=e=>!!e.onSelectionChangeHandlers;function Ek({onSelectionChange:e}){let t=sk(Tk);return e||t?(0,K.jsx)(wk,{onSelectionChange:e}):null}var Dk=[0,0],Ok={x:0,y:0,zoom:1},kk=[...`nodes.edges.defaultNodes.defaultEdges.onConnect.onConnectStart.onConnectEnd.onClickConnectStart.onClickConnectEnd.nodesDraggable.autoPanOnNodeFocus.nodesConnectable.nodesFocusable.edgesFocusable.edgesReconnectable.elevateNodesOnSelect.elevateEdgesOnSelect.minZoom.maxZoom.nodeExtent.onNodesChange.onEdgesChange.elementsSelectable.connectionMode.snapGrid.snapToGrid.translateExtent.connectOnClick.defaultEdgeOptions.fitView.fitViewOptions.onNodesDelete.onEdgesDelete.onDelete.onNodeDrag.onNodeDragStart.onNodeDragStop.onSelectionDrag.onSelectionDragStart.onSelectionDragStop.onMoveStart.onMove.onMoveEnd.noPanClassName.nodeOrigin.autoPanOnConnect.autoPanOnNodeDrag.onError.connectionRadius.isValidConnection.selectNodesOnDrag.nodeDragThreshold.connectionDragThreshold.onBeforeDelete.debug.autoPanSpeed.ariaLabelConfig.zIndexMode`.split(`.`),`rfId`],Ak=e=>({setNodes:e.setNodes,setEdges:e.setEdges,setMinZoom:e.setMinZoom,setMaxZoom:e.setMaxZoom,setTranslateExtent:e.setTranslateExtent,setNodeExtent:e.setNodeExtent,reset:e.reset,setDefaultNodesAndEdges:e.setDefaultNodesAndEdges}),jk={translateExtent:oE,nodeOrigin:Dk,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:`nopan`,rfId:`1`};function Mk(e){let{setNodes:t,setEdges:n,setMinZoom:r,setMaxZoom:i,setTranslateExtent:a,setNodeExtent:o,reset:s,setDefaultNodesAndEdges:c}=sk(Ak,rk),l=ck();(0,y.useEffect)(()=>(c(e.defaultNodes,e.defaultEdges),()=>{u.current=jk,s()}),[]);let u=(0,y.useRef)(jk);return(0,y.useEffect)(()=>{for(let s of kk){let c=e[s];c!==u.current[s]&&e[s]!==void 0&&(s===`nodes`?t(c):s===`edges`?n(c):s===`minZoom`?r(c):s===`maxZoom`?i(c):s===`translateExtent`?a(c):s===`nodeExtent`?o(c):s===`ariaLabelConfig`?l.setState({ariaLabelConfig:iD(c)}):s===`fitView`?l.setState({fitViewQueued:c}):s===`fitViewOptions`?l.setState({fitViewOptions:c}):l.setState({[s]:c}))}u.current=e},kk.map(t=>e[t])),null}function Nk(){return typeof window>`u`||!window.matchMedia?null:window.matchMedia(`(prefers-color-scheme: dark)`)}function Pk(e){let[t,n]=(0,y.useState)(e===`system`?null:e);return(0,y.useEffect)(()=>{if(e!==`system`){n(e);return}let t=Nk(),r=()=>n(t?.matches?`dark`:`light`);return r(),t?.addEventListener(`change`,r),()=>{t?.removeEventListener(`change`,r)}},[e]),t===null?Nk()?.matches?`dark`:`light`:t}var Fk=typeof document<`u`?document:null;function Ik(e=null,t={target:Fk,actInsideInputWithModifier:!0}){let[n,r]=(0,y.useState)(!1),i=(0,y.useRef)(!1),a=(0,y.useRef)(new Set([])),[o,s]=(0,y.useMemo)(()=>{if(e!==null){let t=(Array.isArray(e)?e:[e]).filter(e=>typeof e==`string`).map(e=>e.replace(/\+/g,` + opacity-0 group-hover:opacity-100`,title:a?`Copied!`:`Copy message`,children:a?(0,K.jsx)(au,{className:`h-3.5 w-3.5 text-green-600 dark:text-green-400`}):(0,K.jsx)(Nu,{className:`h-3.5 w-3.5`})})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-muted-foreground font-mono`,children:[(0,K.jsx)(`span`,{children:e.created_at?new Date(e.created_at*1e3).toLocaleTimeString():new Date().toLocaleTimeString()}),!o&&e.usage&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`span`,{children:`•`}),(0,K.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,K.jsxs)(`span`,{className:`text-blue-600 dark:text-blue-400`,children:[`↑`,e.usage.input_tokens]}),(0,K.jsxs)(`span`,{className:`text-green-600 dark:text-green-400`,children:[`↓`,e.usage.output_tokens]}),(0,K.jsxs)(`span`,{children:[`(`,e.usage.total_tokens,` tokens)`]})]})]}),!o&&l&&t.length>0&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`span`,{children:`•`}),(0,K.jsxs)(`button`,{onClick:()=>c(!s),className:`flex items-center gap-1 hover:text-foreground transition-colors`,title:`${t.length} tool call${t.length>1?`s`:``} - click to ${s?`hide`:`show`} details`,children:[(0,K.jsx)(gf,{className:`h-3 w-3`}),(0,K.jsx)(`span`,{children:t.length})]})]})]}),!o&&s&&t.length>0&&(0,K.jsx)(`div`,{className:`mt-2 ml-0 p-3 bg-muted/30 rounded-md border border-muted`,children:(0,K.jsx)(`div`,{className:`space-y-2`,children:t.map(e=>{let t=n.find(t=>t.call_id===e.call_id);return(0,K.jsx)(`div`,{className:`text-xs`,children:(0,K.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,K.jsx)(gf,{className:`h-3 w-3 text-muted-foreground mt-0.5 flex-shrink-0`}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`font-mono text-muted-foreground`,children:[(0,K.jsx)(`span`,{className:`text-blue-600 dark:text-blue-400`,children:e.name}),(0,K.jsx)(`span`,{className:`text-muted-foreground/60 ml-1`,children:e.arguments&&(0,K.jsxs)(`span`,{className:`break-all`,children:[`(`,e.arguments,`)`]})})]}),t&&t.output&&(0,K.jsx)(`div`,{className:`mt-1 pl-5 border-l-2 border-green-600/20`,children:(0,K.jsxs)(`div`,{className:`flex items-start gap-1`,children:[(0,K.jsx)(ru,{className:`h-3 w-3 text-green-600 dark:text-green-400 mt-0.5 flex-shrink-0`}),(0,K.jsx)(`pre`,{className:`font-mono text-muted-foreground whitespace-pre-wrap break-all`,children:t.output.substring(0,200)+(t.output.length>200?`...`:``)})]})}),e.status===`incomplete`&&(0,K.jsx)(`div`,{className:`mt-1 pl-5 border-l-2 border-orange-600/20`,children:(0,K.jsxs)(`div`,{className:`flex items-start gap-1`,children:[(0,K.jsx)(vf,{className:`h-3 w-3 text-orange-600 dark:text-orange-400 mt-0.5 flex-shrink-0`}),(0,K.jsx)(`span`,{className:`font-mono text-orange-600 dark:text-orange-400`,children:`Failed`})]})})]})]})},e.id)})})})]})]})}return e.type===`function_call`||e.type,null}function bb({selectedAgent:e,onDebugEvent:t}){let n=Q(e=>e.currentConversation),r=Q(e=>e.availableConversations),i=Q(e=>e.chatItems),a=Q(e=>e.isStreaming),o=Q(e=>e.isSubmitting),s=Q(e=>e.loadingConversations),c=Q(e=>e.uiMode),l=Q(e=>e.conversationUsage),u=Q(e=>e.pendingApprovals),d=Q(e=>e.oaiMode),f=Q(e=>e.streamingEnabled),p=Q(e=>e.setCurrentConversation),m=Q(e=>e.setAvailableConversations),h=Q(e=>e.setChatItems),g=Q(e=>e.setIsStreaming),_=Q(e=>e.setIsSubmitting),v=Q(e=>e.setLoadingConversations),b=Q(e=>e.updateConversationUsage),x=Q(e=>e.setPendingApprovals),[S,C]=(0,y.useState)(!1),[w,T]=(0,y.useState)(null),[E,D]=(0,y.useState)(!1),[O,k]=(0,y.useState)(!1),{isCancelling:A,createAbortSignal:j,handleCancel:M,resetCancelling:N}=w_(),{isDragOver:P,droppedFiles:F,clearDroppedFiles:I,dragHandlers:L}=E_({disabled:o||a}),R=(0,y.useRef)(null),z=(0,y.useRef)(null),B=(0,y.useRef)(null),ee=(0,y.useRef)(!1),V=(0,y.useRef)(``),H=(0,y.useRef)([]),te=(0,y.useRef)(0),ne=(0,y.useRef)(new Set),re=(0,y.useCallback)(()=>{for(let e of ne.current)e.abort();ne.current.clear()},[]),ie=(0,y.useCallback)(e=>{let n=new AbortController;ne.current.add(n),Z_.getTraceEvents(e,Q.getState().serverCapabilities.trace_retrieval,n.signal).then(e=>{if(!n.signal.aborted)for(let n of e)t(n)}).catch(e=>{T_(e)||console.debug(`Failed to retrieve response traces`,e)}).finally(()=>{ne.current.delete(n)})},[t]),ae=(0,y.useCallback)(()=>{re(),t(`clear`)},[re,t]);(0,y.useEffect)(()=>re,[e?.id,re]);let oe=(0,y.useCallback)((e,t=`in_progress`,n=!1)=>{let r=performance.now();if(!n&&r-te.current{if(n.id!==e||n.type!==`message`)return n;let r=n.content.filter(e=>e.type!==`text`&&e.type!==`output_text`&&e.type!==`refusal`),i=vb(H.current),o=n.content.filter(e=>e.type===`text`||e.type===`output_text`||e.type===`refusal`);return JSON.stringify(o)===JSON.stringify(i)&&n.status===t?n:(a=!0,{...n,content:[...r,...i],status:t})});a?(te.current=r,h(o)):n&&(te.current=r)},[h]),se=(0,y.useCallback)((e,t,n=!1)=>{let r=Q.getState().chatItems;h(r.map(r=>r.id===e&&r.type===`message`?{...r,content:pb(r.content,t,n)}:r))},[h]);(0,y.useEffect)(()=>{if(!z.current)return;let e=R.current?.querySelector(`[data-radix-scroll-area-viewport]`),t=!1;if(e){let{scrollTop:n,scrollHeight:r,clientHeight:i}=e,a=r-n-i<100;t=ee.current||a}else t=!0;t&&z.current.scrollIntoView({behavior:a?`instant`:`smooth`}),ee.current&&!a&&(ee.current=!1)},[i,a]),(0,y.useEffect)(()=>{},[a,o]),(0,y.useEffect)(()=>{let n=async(e,n,r)=>{let i=b_(n.id);if(!i||!i.responseId){g(!1);return}try{let a={model:r.id,input:[],stream:!0,conversation:n.id},o=Z_.streamAgentExecutionOpenAIDirect(r.id,a,n.id,void 0,i.responseId);te.current=0;for await(let n of o){if(t(n),n.type===`response.output_item.added`){let t=n;se(e.id,[t.item]);continue}if(n.type===`response.completed`){let t=n;se(e.id,t.response.output??[]);let r=t.response?.usage;r&&(B.current={input_tokens:r.input_tokens,output_tokens:r.output_tokens,total_tokens:r.total_tokens});continue}if(n.type===`response.failed`){let t=n;se(e.id,t.response.output??[]);let r=t.response?.error,i=r?typeof r==`object`&&`message`in r?r.message:JSON.stringify(r):`Request failed`;if(V.current){oe(e.id,`incomplete`,!0),g(!1);return}let a=Q.getState().chatItems;h(a.map(t=>t.id===e.id&&t.type===`message`?{...t,content:[...t.content.filter(e=>e.type!==`text`&&e.type!==`output_text`&&e.type!==`refusal`),{type:`text`,text:V.current||i}],status:`incomplete`}:t)),g(!1);return}if(n.type===`response.function_approval.requested`){let t=n;oe(e.id,`in_progress`,!0),x([...Q.getState().pendingApprovals,{request_id:t.request_id,function_call:t.function_call}]);continue}if(n.type===`response.function_approval.responded`){let e=n;x(Q.getState().pendingApprovals.filter(t=>t.request_id!==e.request_id));continue}if(n.type===`error`){let t=n.message||`An error occurred`;if(V.current){oe(e.id,`incomplete`,!0),g(!1);return}let r=Q.getState().chatItems;h(r.map(n=>n.id===e.id&&n.type===`message`?{...n,content:[...n.content.filter(e=>e.type!==`text`&&e.type!==`output_text`&&e.type!==`refusal`),{type:`text`,text:V.current||t}],status:`incomplete`}:n)),g(!1);return}(n.type===`response.output_text.delta`||n.type===`response.refusal.delta`)&&`delta`in n&&n.delta&&(H.current=u_(H.current,n),V.current=H.current.map(e=>e.text).join(``),oe(e.id))}let s=B.current;oe(e.id,`in_progress`,!0);let c=Q.getState().chatItems;h(c.map(t=>t.id===e.id&&t.type===`message`?{...t,status:`completed`,usage:s||void 0}:t)),g(!1),s&&b(s.total_tokens),B.current=null}catch(t){let n=Q.getState().chatItems;h(n.map(n=>n.id===e.id&&n.type===`message`?{...n,content:[...n.content.filter(e=>e.type!==`text`&&e.type!==`output_text`&&e.type!==`refusal`),{type:`text`,text:`Error resuming stream: ${t instanceof Error?t.message:`Unknown error`}`}],status:`incomplete`}:n)),g(!1)}};h([]),g(!1),p(void 0),V.current=``,H.current=[],te.current=0,(async()=>{if(e){v(!0);try{try{let{data:r}=await Z_.listConversations(e.id);if(m(r),r.length>0){let i=r[0];p(i);try{let r=[],a=!0,o,s=[];for(;a;){let e=await Z_.listConversationItems(i.id,{order:`asc`,after:o});r=r.concat(e.data),a=e.has_more,e.metadata?.traces&&e.metadata.traces.length>0&&(s=e.metadata.traces),a&&e.data.length>0&&(o=e.data[e.data.length-1].id)}if(h(r),g(!1),s.length>0){ae();for(let e of s)t({type:`response.trace.completed`,data:e,sequence_number:0})}let c=b_(i.id);if(c&&!c.completed){let t=gb(c);H.current=t,V.current=t.map(e=>e.text).join(``);let a={id:c.lastMessageId||`assistant-${Date.now()}`,type:`message`,role:`assistant`,content:vb(t),status:`in_progress`};h([...r,a]),g(!0),setTimeout(()=>{n(a,i,e)},100)}setTimeout(()=>{z.current?.scrollIntoView({behavior:`smooth`})},100)}catch{console.debug(`No items found for conversation ${i.id}, starting fresh`),h([]),g(!1)}return}}catch{}let r=`devui_convs_${e.id}`,i=localStorage.getItem(r);if(i)try{let e=JSON.parse(i);if(e.length>0)try{await Z_.listConversationItems(e[0].id),m(e),p(e[0]),h([]),g(!1);return}catch{console.debug(`Cached conversation ${e[0].id} no longer exists, clearing cache`),localStorage.removeItem(r)}}catch{localStorage.removeItem(r)}let a=await Z_.createConversation({agent_id:e.id});p(a),m([a]),h([]),g(!1),T(null),localStorage.setItem(r,JSON.stringify([a]))}catch(e){m([]),h([]),g(!1);let t=e instanceof Error?e.message:`Failed to create conversation`;T({message:t,type:`conversation_creation_error`})}finally{v(!1)}}})()},[e,t,ae,oe,se,h,g,v,m,p,x,b]);let U=(0,y.useCallback)(async()=>{if(e)try{let t=await Z_.createConversation({agent_id:e.id});p(t),m([t,...Q.getState().availableConversations]),h([]),g(!1),T(null),Q.setState({conversationUsage:{total_tokens:0,message_count:0}}),V.current=``,H.current=[],ae();let n=`devui_convs_${e.id}`,i=[t,...r];localStorage.setItem(n,JSON.stringify(i))}catch(e){let t=e instanceof Error?e.message:`Failed to create conversation`;T({message:t,type:`conversation_creation_error`})}},[e,r,ae,p,m,h,g]),ce=(0,y.useCallback)(async(e,t)=>{if(t&&(t.preventDefault(),t.stopPropagation()),confirm(`Delete this conversation? This cannot be undone.`))try{if(await Z_.deleteConversation(e)){let t=r.filter(t=>t.id!==e);if(m(t),n?.id===e){if(t.length>0){let e=t[0];p(e),h([]),g(!1)}else p(void 0),h([]),g(!1),Q.setState({conversationUsage:{total_tokens:0,message_count:0}}),V.current=``,H.current=[]}ae()}}catch{alert(`Failed to delete conversation. Please try again.`)}},[r,n,ae,m,p,h,g]),le=(0,y.useCallback)(async()=>{if(E||!e)return;D(!0);let t=Q.getState().addToast,n=Q.getState().updateAgent;try{await Z_.reloadEntity(e.id),n(await Z_.getAgentInfo(e.id)),t({message:`${e.name} has been reloaded successfully`,type:`success`})}catch(e){t({message:`Failed to reload: ${e instanceof Error?e.message:`Failed to reload entity`}`,type:`error`,duration:6e3})}finally{D(!1)}},[E,e]),ue=(0,y.useCallback)(async e=>{let n=r.find(t=>t.id===e);if(n){p(n),ae();try{let n=[],r=!0,i,a=[];for(;r;){let t=await Z_.listConversationItems(e,{order:`asc`,after:i});n=n.concat(t.data),r=t.has_more,t.metadata?.traces&&t.metadata.traces.length>0&&(a=t.metadata.traces),r&&t.data.length>0&&(i=t.data[t.data.length-1].id)}let o=n;if(h(o),g(!1),a.length>0)for(let e of a)t({type:`response.trace.completed`,data:e,sequence_number:0});Q.setState({conversationUsage:{total_tokens:0,message_count:o.length}});let s=b_(e);if(s?.accumulatedText){let e=gb(s);H.current=e,V.current=e.map(e=>e.text).join(``);let t={id:`assistant-${Date.now()}`,type:`message`,role:`assistant`,content:vb(e),status:`in_progress`};h([...o,t]),g(!0)}setTimeout(()=>{z.current?.scrollIntoView({behavior:`smooth`})},100)}catch{console.debug(`No items found for conversation ${e}, starting with empty chat`),h([]),g(!1),Q.setState({conversationUsage:{total_tokens:0,message_count:0}})}V.current=``,H.current=[]}},[r,t,ae,p,h,g]),de=async(e,t)=>{let r=u.find(t=>t.request_id===e);if(!r)return;let i=Math.floor(Date.now()/1e3),a={id:`user-approval-${Date.now()}`,type:`message`,role:`user`,content:[{type:`function_approval_request`,request_id:e,status:t?`approved`:`rejected`,function_call:r.function_call}],status:`completed`,created_at:i},o=Q.getState().chatItems;h([...o,a]);let s={input:[{type:`message`,role:`user`,content:[{type:`function_approval_response`,request_id:e,approved:t,function_call:r.function_call}]}],conversation_id:n?.id};return x(Q.getState().pendingApprovals.filter(t=>t.request_id!==e)),s},fe=(0,y.useCallback)(async r=>{if(!e)return;let i=r.input.some(e=>e.type===`message`&&Array.isArray(e.content)&&e.content.some(e=>e.type===`function_approval_response`)),a=[];for(let e of r.input)if(e.type===`message`&&Array.isArray(e.content))for(let t of e.content)if(t.type===`input_text`)a.push({type:`text`,text:t.text});else if(t.type===`input_image`)a.push({type:`input_image`,image_url:t.image_url||``,detail:`auto`});else if(t.type===`input_file`){let e=t;a.push({type:`input_file`,file_data:e.file_data,filename:e.filename})}else t.type===`input_audio`&&a.push({type:`input_audio`,input_audio:t.input_audio});let o=Math.floor(Date.now()/1e3);if(!i&&a.length>0){let e={id:`user-${Date.now()}`,type:`message`,role:`user`,content:a,status:`completed`,created_at:o};h([...Q.getState().chatItems,e])}g(!0);let s={id:`assistant-${Date.now()}`,type:`message`,role:`assistant`,content:[],status:`in_progress`,created_at:o};h([...Q.getState().chatItems,s]);let c,l;try{let i=n;if(!i)try{i=await Z_.createConversation({agent_id:e.id}),p(i),m([i,...Q.getState().availableConversations]),T(null)}catch(e){let t=e instanceof Error?e.message:`Failed to create conversation`;T({message:t,type:`conversation_creation_error`}),_(!1),g(!1);return}i?.id&&Z_.clearStreamingState(i.id);let a={input:r.input,conversation_id:i?.id};V.current=``,H.current=[],te.current=0,l=j();let o=Z_.streamAgentExecutionOpenAI(e.id,a,l);for await(let e of o){if(t(e),`response`in e&&e.response&&typeof e.response==`object`&&`id`in e.response&&typeof e.response.id==`string`&&(c=e.response.id),e.type===`response.completed`){let t=e;se(s.id,t.response.output??[],!0);let n=t.response?.usage;n&&(B.current={input_tokens:n.input_tokens,output_tokens:n.output_tokens,total_tokens:n.total_tokens});continue}if(e.type===`response.failed`){let t=e;se(s.id,t.response.output??[],!0);let n=t.response?.error,r=`Request failed`;if(n&&(typeof n==`object`&&`message`in n?(r=n.message,`code`in n&&n.code&&(r+=` (Code: ${n.code})`)):typeof n==`string`&&(r=n)),V.current){oe(s.id,`incomplete`,!0),g(!1);return}let i=Q.getState().chatItems;h(i.map(e=>e.id===s.id&&e.type===`message`?{...e,content:[...e.content.filter(e=>e.type!==`text`&&e.type!==`output_text`&&e.type!==`refusal`),{type:`text`,text:V.current||r}],status:`incomplete`}:e)),g(!1);return}if(e.type===`response.function_approval.requested`){let t=e;oe(s.id,`in_progress`,!0),x([...Q.getState().pendingApprovals,{request_id:t.request_id,function_call:t.function_call}]);let n=Q.getState().chatItems;h(n.map(e=>e.id===s.id&&e.type===`message`?{...e,content:[...e.content,{type:`function_approval_request`,request_id:t.request_id,status:`pending`,function_call:t.function_call}],status:`in_progress`}:e));continue}if(e.type===`response.function_call_arguments.delta`){let t=e,n=Q.getState().chatItems;h(n.map(e=>e.type===`function_call`&&e.call_id===t.item_id?{...e,arguments:(e.arguments||``)+(t.delta||``)}:e));continue}if(e.type===`response.function_result.complete`){let t=e,n={id:`result-${Date.now()}`,type:`function_call_output`,call_id:t.call_id,output:t.output,status:t.status===`completed`?`completed`:`incomplete`,created_at:Math.floor(Date.now()/1e3)},r=Q.getState().chatItems;h([...r,n]);continue}if(e.type===`error`){let t=e.message||`An error occurred`;if(V.current){oe(s.id,`incomplete`,!0),g(!1);return}let n=Q.getState().chatItems;h(n.map(e=>e.id===s.id&&e.type===`message`?{...e,content:[...e.content.filter(e=>e.type!==`text`&&e.type!==`output_text`&&e.type!==`refusal`),{type:`text`,text:t}],status:`incomplete`}:e)),g(!1);return}if(e.type===`response.output_item.added`){let t=e.item;if(oe(s.id,`in_progress`,!0),t.type===`function_call`){let e=t,n={id:e.id||`call-${Date.now()}`,type:`function_call`,name:e.name,arguments:e.arguments||``,call_id:e.call_id,status:e.status||`in_progress`,created_at:Math.floor(Date.now()/1e3)},r=Q.getState().chatItems;h([...r,n]);continue}se(s.id,[t],!0);continue}(e.type===`response.output_text.delta`||e.type===`response.refusal.delta`)&&`delta`in e&&e.delta&&(H.current=u_(H.current,e),V.current=H.current.map(e=>e.text).join(``),oe(s.id))}let u=B.current;oe(s.id,`in_progress`,!0);let d=Q.getState().chatItems;h(d.map(e=>e.id===s.id&&e.type===`message`?{...e,status:`completed`,usage:u||void 0}:e)),g(!1),u&&b(u.total_tokens),B.current=null}catch(e){if(T_(e))k(!0),oe(s.id,V.current?`completed`:`incomplete`,!0);else if(V.current)oe(s.id,`incomplete`,!0);else{let t=Q.getState().chatItems;h(t.map(t=>t.id===s.id&&t.type===`message`?{...t,content:[...t.content.filter(e=>e.type!==`text`&&e.type!==`output_text`&&e.type!==`refusal`),{type:`text`,text:`Error: ${e instanceof Error?e.message:`Failed to get response`}`}],status:`incomplete`}:t))}g(!1),N()}finally{c&&!l?.aborted&&ie(c)}},[e,n,t,oe,se,h,g,_,p,m,x,b,j,N,ie]),pe=(0,y.useCallback)(async r=>{if(!e)return;let i=r.input.some(e=>e.type===`message`&&Array.isArray(e.content)&&e.content.some(e=>e.type===`function_approval_response`)),a=[];for(let e of r.input)if(e.type===`message`&&Array.isArray(e.content))for(let t of e.content)if(t.type===`input_text`)a.push({type:`text`,text:t.text});else if(t.type===`input_image`)a.push({type:`input_image`,image_url:t.image_url||``,detail:`auto`});else if(t.type===`input_file`){let e=t;a.push({type:`input_file`,file_data:e.file_data,filename:e.filename})}else t.type===`input_audio`&&a.push({type:`input_audio`,input_audio:t.input_audio});let o=Math.floor(Date.now()/1e3);if(!i&&a.length>0){let e={id:`user-${Date.now()}`,type:`message`,role:`user`,content:a,status:`completed`,created_at:o};h([...Q.getState().chatItems,e])}_(!0);try{let i=n;if(!i)try{i=await Z_.createConversation({agent_id:e.id}),p(i),m([i,...Q.getState().availableConversations]),T(null)}catch(e){let t=e instanceof Error?e.message:`Failed to create conversation`;T({message:t,type:`conversation_creation_error`}),_(!1);return}let a=await Z_.runAgentSync(e.id,{input:r.input,conversation_id:i?.id}),s=pb([],a.output??[],!0),c=[],l=[];if(a.output){for(let e of a.output)if(e.type===`message`){let t=e;if(t.content)for(let e of t.content)e.type===`output_text`?s.push({type:`text`,text:e.text}):e.type===`refusal`&&s.push({type:`refusal`,refusal:e.refusal})}else if(e.type===`function_call`){let t=e;c.push({id:t.id||`call-${Date.now()}`,type:`function_call`,name:t.name,arguments:t.arguments||``,call_id:t.call_id,status:t.status||`completed`,created_at:o})}else if(e.type===`function_call_output`){let t=e;l.push({id:`result-${Date.now()}`,type:`function_call_output`,call_id:t.call_id,output:t.output,status:`completed`,created_at:o})}}let u={id:`assistant-${Date.now()}`,type:`message`,role:`assistant`,content:s,status:`completed`,created_at:o,usage:a.usage?{input_tokens:a.usage.input_tokens,output_tokens:a.usage.output_tokens,total_tokens:a.usage.total_tokens}:void 0},d=[...Q.getState().chatItems,u,...c,...l];h(d),a.usage&&b(a.usage.total_tokens),t({type:`response.completed`,response:a,sequence_number:0}),typeof a.id==`string`&&ie(a.id)}catch(e){let t=e instanceof Error?e.message:`Failed to get response`,n={id:`assistant-${Date.now()}`,type:`message`,role:`assistant`,content:[{type:`text`,text:`Error: ${t}`}],status:`incomplete`,created_at:o},r=Q.getState().chatItems;h([...r,n])}finally{_(!1)}},[e,n,t,h,p,m,b,_,ie]),me=async t=>{if(e&&t.length!==0){ee.current=!0,k(!1),_(!0);try{let e={input:[{type:`message`,role:`user`,content:t}],conversation_id:n?.id};f?await fe(e):await pe(e)}finally{_(!1)}}};return(0,K.jsxs)(`div`,{className:`flex h-[calc(100vh-3.5rem)] flex-col relative`,...L,children:[P&&(0,K.jsx)(`div`,{className:`absolute inset-0 z-50 bg-blue-50/95 dark:bg-blue-950/95 backdrop-blur-sm flex items-center justify-center border-2 border-dashed border-blue-400 dark:border-blue-500 rounded-lg m-2`,children:(0,K.jsxs)(`div`,{className:`text-center p-8`,children:[(0,K.jsx)(`div`,{className:`text-blue-600 dark:text-blue-400 text-lg font-medium mb-2`,children:`Drop files here`}),(0,K.jsx)(`div`,{className:`text-blue-500/80 dark:text-blue-400/70 text-sm`,children:`Images, PDFs, audio, and other files`})]})}),(0,K.jsxs)(`div`,{className:`border-b pb-2 p-4 flex-shrink-0`,children:[(0,K.jsxs)(`div`,{className:`flex flex-col lg:flex-row lg:items-center lg:justify-between gap-3 mb-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0`,children:[(0,K.jsx)(`h2`,{className:`font-semibold text-sm truncate`,children:(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)($l,{className:`h-4 w-4 flex-shrink-0`}),(0,K.jsx)(`span`,{className:`truncate`,children:d.enabled?`Chat with ${d.model}`:`Chat with ${e.name||e.id}`})]})}),!d.enabled&&c===`developer`&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(q,{variant:`ghost`,size:`sm`,onClick:()=>C(!0),className:`h-6 w-6 p-0 flex-shrink-0`,title:`View agent details`,children:(0,K.jsx)(td,{className:`h-4 w-4`})}),e.source!==`in_memory`&&(0,K.jsx)(q,{variant:`ghost`,size:`sm`,onClick:le,disabled:E,className:`h-6 w-6 p-0 flex-shrink-0`,title:E?`Reloading...`:`Reload entity code (hot reload)`,children:(0,K.jsx)(Ld,{className:`h-4 w-4 ${E?`animate-spin`:``}`})})]})]}),(0,K.jsxs)(`div`,{className:`flex flex-col sm:flex-row items-stretch sm:items-center gap-2 flex-shrink-0`,children:[(0,K.jsxs)(tb,{value:n?.id||``,onValueChange:ue,disabled:s||o,children:[(0,K.jsx)(rb,{className:`w-full sm:w-64`,children:(0,K.jsx)(nb,{placeholder:s?`Loading...`:r.length===0?`No conversations`:n?`Conversation ${n.id.slice(-8)}`:`Select conversation`,children:n&&(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-xs`,children:[(0,K.jsxs)(`span`,{children:[`Conversation `,n.id.slice(-8)]}),l.total_tokens>0&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`•`}),(0,K.jsxs)(`span`,{className:`text-muted-foreground`,children:[l.total_tokens>=1e3?`${(l.total_tokens/1e3).toFixed(1)}k`:l.total_tokens,` `,`tokens`]})]})]})})}),(0,K.jsx)(ib,{children:r.map(e=>(0,K.jsx)(ab,{value:e.id,children:(0,K.jsxs)(`div`,{className:`flex items-center justify-between w-full`,children:[(0,K.jsxs)(`span`,{children:[`Conversation `,e.id.slice(-8)]}),e.created_at&&(0,K.jsx)(`span`,{className:`text-xs text-muted-foreground ml-3`,children:new Date(e.created_at*1e3).toLocaleDateString()})]})},e.id))})]}),(0,K.jsx)(q,{variant:`outline`,size:`icon`,onClick:()=>n&&ce(n.id),disabled:!n||o,title:n?`Delete Conversation ${n.id.slice(-8)}`:`No conversation selected`,children:(0,K.jsx)(of,{className:`h-4 w-4`})}),(0,K.jsxs)(q,{variant:`outline`,size:`lg`,onClick:U,disabled:!e||o,className:`whitespace-nowrap `,children:[(0,K.jsx)(Fd,{className:`h-4 w-4 mr-2`}),(0,K.jsx)(`span`,{className:`hidden md:inline`,children:` New Conversation`})]})]})]}),d.enabled?(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Using OpenAI model directly. Local agent tools and instructions are not applied.`}):e.description&&(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:e.description})]}),w&&(0,K.jsxs)(`div`,{className:`mx-4 mt-2 p-3 bg-destructive/10 border border-destructive/30 rounded-md flex items-start gap-2`,children:[(0,K.jsx)(hu,{className:`h-4 w-4 text-destructive mt-0.5 flex-shrink-0`}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsx)(`div`,{className:`text-sm font-medium text-destructive`,children:`Failed to Create Conversation`}),(0,K.jsx)(`div`,{className:`text-xs text-destructive/90 mt-1 break-words`,children:w.message}),w.code&&(0,K.jsxs)(`div`,{className:`text-xs text-destructive/70 mt-1`,children:[`Error Code: `,w.code]})]}),(0,K.jsx)(`button`,{onClick:()=>T(null),className:`text-destructive hover:text-destructive/80 flex-shrink-0`,title:`Dismiss error`,children:(0,K.jsx)(vf,{className:`h-4 w-4`})})]}),(0,K.jsx)(ym,{className:`flex-1 p-4 h-0`,ref:R,children:(0,K.jsxs)(`div`,{className:`space-y-4`,children:[i.length===0?(0,K.jsxs)(`div`,{className:`flex flex-col items-center justify-center h-32 text-center`,children:[(0,K.jsxs)(`div`,{className:`text-muted-foreground text-sm`,children:[`Start a conversation with`,` `,e.name||e.id]}),(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground mt-1`,children:`Type a message below to begin`})]}):(()=>{let e=[],t=new Map,n=new Map,r=null,a=[],o=[];for(let e=0;e0){let e=t.get(s.id)||[];e.push(...a),t.set(s.id,e),a.length=0}if(o.length>0){let e=n.get(s.id)||[];e.push(...o),n.set(s.id,e),o.length=0}r=s.id}else if(s.type===`function_call`){if(r){let e=t.get(r)||[];e.push(s),t.set(r,e)}else a.push(s)}else if(s.type===`function_call_output`){if(r){let e=n.get(r)||[];e.push(s),n.set(r,e)}else o.push(s)}else s.type===`message`&&s.role===`user`&&(r=null)}for(let r of i)if(r.type===`message`){let i=t.get(r.id)||[],a=n.get(r.id)||[];e.push((0,K.jsx)(yb,{item:r,toolCalls:i,toolResults:a},r.id))}return e})(),O&&!a&&(0,K.jsx)(`div`,{className:`px-4 py-2`,children:(0,K.jsx)(`div`,{className:`border rounded-lg border-orange-500/40 bg-orange-500/5 dark:bg-orange-500/10`,children:(0,K.jsxs)(`div`,{className:`px-4 py-3 flex items-center gap-2`,children:[(0,K.jsx)(tf,{className:`w-4 h-4 text-orange-500 dark:text-orange-400 fill-current`}),(0,K.jsx)(`span`,{className:`font-medium text-sm text-orange-700 dark:text-orange-300`,children:`Response stopped by user`})]})})}),(0,K.jsx)(`div`,{ref:z})]})}),u.length>0&&(0,K.jsx)(`div`,{className:`border-t bg-amber-50 dark:bg-amber-950/20 p-4 flex-shrink-0`,children:(0,K.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,K.jsx)(hu,{className:`h-5 w-5 text-amber-600 dark:text-amber-500 mt-0.5 flex-shrink-0`}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsx)(`h4`,{className:`font-medium text-sm mb-2`,children:`Approval Required`}),(0,K.jsx)(`div`,{className:`space-y-2`,children:u.map(e=>(0,K.jsxs)(`div`,{className:`bg-white dark:bg-gray-900 rounded-lg p-3 border border-amber-200 dark:border-amber-900`,children:[(0,K.jsxs)(`div`,{className:`font-mono text-xs mb-3 break-all`,children:[(0,K.jsx)(`span`,{className:`text-blue-600 dark:text-blue-400 font-semibold`,children:e.function_call.name}),(0,K.jsx)(`span`,{className:`text-gray-500`,children:`(`}),(0,K.jsx)(`span`,{className:`text-gray-700 dark:text-gray-300`,children:JSON.stringify(e.function_call.arguments)}),(0,K.jsx)(`span`,{className:`text-gray-500`,children:`)`})]}),(0,K.jsxs)(`div`,{className:`flex gap-2`,children:[(0,K.jsxs)(q,{size:`sm`,onClick:async()=>{let t=await de(e.request_id,!0);t&&await fe(t)},variant:`default`,className:`flex-1 sm:flex-none`,children:[(0,K.jsx)(ru,{className:`h-4 w-4 mr-1`}),`Approve`]}),(0,K.jsxs)(q,{size:`sm`,onClick:async()=>{let t=await de(e.request_id,!1);t&&await fe(t)},variant:`outline`,className:`flex-1 sm:flex-none`,children:[(0,K.jsx)(vf,{className:`h-4 w-4 mr-1`}),`Reject`]})]})]},e.request_id))})]})]})}),(0,K.jsx)(`div`,{className:`border-t flex-shrink-0`,children:(0,K.jsx)(`div`,{className:`p-4`,children:(0,K.jsx)(Ev,{onSubmit:me,isSubmitting:o,isStreaming:a,onCancel:M,isCancelling:A,placeholder:`Message ${e.name||e.id}... (Shift+Enter for new line)`,showFileUpload:!0,entityName:e.name||e.id,disabled:!e,externalFiles:F,onExternalFilesProcessed:I})})}),(0,K.jsx)(lb,{agent:e,open:S,onOpenChange:C})]})}function xb({message:e=`Loading...`,description:t,size:n=`md`,className:r,fullPage:i=!1}){let a=(0,K.jsxs)(`div`,{className:jt(`flex flex-col items-center justify-center gap-3`,i?`min-h-[50vh]`:`py-8`,r),children:[(0,K.jsx)(Df,{size:n,className:`text-muted-foreground`}),(0,K.jsxs)(`div`,{className:`text-center space-y-1`,children:[(0,K.jsx)(`p`,{className:jt(`font-medium text-muted-foreground`,n===`sm`&&`text-sm`,n===`lg`&&`text-lg`),children:e}),t&&(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground/80`,children:t})]})]});return i?(0,K.jsx)(`div`,{className:`flex items-center justify-center min-h-screen bg-background`,children:a}):a}function Sb(e){return[`name`,`title`,`id`,`key`,`label`,`type`,`status`,`tag`,`category`,`code`,`username`,`password`,`email`].includes(e.toLowerCase())}function Cb(e){if(e.type)return e;if(e.anyOf&&e.anyOf.length>0){let t=e.anyOf.filter(e=>e.type!==`null`&&e.type!==void 0);if(t.length>0)return{...t[0],default:e.default??t[0].default,description:e.description??t[0].description,title:e.title??t[0].title}}if(e.oneOf&&e.oneOf.length>0){let t=e.oneOf.filter(e=>e.type!==`null`&&e.type!==void 0);if(t.length>0)return{...t[0],default:e.default??t[0].default,description:e.description??t[0].description,title:e.title??t[0].title}}return e}function wb(e,t){return t.format===`textarea`||!!t.description&&t.description.length>100||t.type===`string`&&!t.enum&&!Sb(e)}function Tb(e,t){let n=wb(e,t),r=!!t.description&&t.description.length>150;return n||r?`md:col-span-2 lg:col-span-3 xl:col-span-4`:t.type===`array`||t.description&&t.description.length>80?`xl:col-span-2`:``}function Eb(e,t){if(e.type!==`object`||!e.properties)return!1;let n=e.properties,r=Object.keys(n).filter(e=>!t.includes(e));return t.includes(`role`)&&r.some(e=>[`text`,`message`,`content`].includes(e))&&n.role?.type===`string`}function Db({name:e,schema:t,value:n,onChange:r,isRequired:i=!1,isReadOnly:a=!1}){let o=Cb(t),{type:s,description:c,enum:l,default:u}=o,d=wb(e,o);return(0,K.jsx)(`div`,{className:Tb(e,o),children:(()=>{if(a)return(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsx)(Ug,{htmlFor:e,className:`text-muted-foreground`,children:e}),(0,K.jsx)(`div`,{className:`text-sm p-2 bg-muted rounded border`,children:typeof n==`object`?JSON.stringify(n,null,2):String(n)}),c&&(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:c})]});switch(s){case`string`:return l?(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(Ug,{htmlFor:e,children:[e,i&&(0,K.jsx)(`span`,{className:`text-destructive ml-1`,children:`*`})]}),(0,K.jsxs)(tb,{value:typeof n==`string`&&n?n:typeof u==`string`?u:l[0],onValueChange:e=>r(e),children:[(0,K.jsx)(rb,{children:(0,K.jsx)(nb,{placeholder:`Select ${e}`})}),(0,K.jsx)(ib,{children:l.map(e=>(0,K.jsx)(ab,{value:e,children:e},e))})]}),c&&(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:c})]}):d?(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(Ug,{htmlFor:e,children:[e,i&&(0,K.jsx)(`span`,{className:`text-destructive ml-1`,children:`*`})]}),(0,K.jsx)(gv,{id:e,value:typeof n==`string`?n:``,onChange:e=>r(e.target.value),placeholder:typeof u==`string`?u:`Enter ${e}`,rows:4,className:`min-w-[300px] w-full`}),c&&(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:c})]}):(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(Ug,{htmlFor:e,children:[e,i&&(0,K.jsx)(`span`,{className:`text-destructive ml-1`,children:`*`})]}),(0,K.jsx)(Bg,{id:e,type:`text`,value:typeof n==`string`?n:``,onChange:e=>r(e.target.value),placeholder:typeof u==`string`?u:`Enter ${e}`}),c&&(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:c})]});case`integer`:case`number`:return(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(Ug,{htmlFor:e,children:[e,i&&(0,K.jsx)(`span`,{className:`text-destructive ml-1`,children:`*`})]}),(0,K.jsx)(Bg,{id:e,type:`number`,step:s===`integer`?`1`:`any`,value:typeof n==`number`?n:``,onChange:e=>{let t=s===`integer`?parseInt(e.target.value):parseFloat(e.target.value);r(isNaN(t)?``:t)},placeholder:typeof u==`number`?u.toString():`Enter ${e}`}),c&&(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:c})]});case`boolean`:return(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center space-x-2`,children:[(0,K.jsx)(sh,{id:e,checked:!!n,onCheckedChange:e=>r(e)}),(0,K.jsxs)(Ug,{htmlFor:e,children:[e,i&&(0,K.jsx)(`span`,{className:`text-destructive ml-1`,children:`*`})]})]}),c&&(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:c})]});case`array`:return(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(Ug,{htmlFor:e,children:[e,i&&(0,K.jsx)(`span`,{className:`text-destructive ml-1`,children:`*`})]}),(0,K.jsx)(gv,{id:e,value:Array.isArray(n)?n.join(`, `):typeof n==`string`?n:``,onChange:e=>{r(e.target.value.split(`,`).map(e=>e.trim()).filter(e=>e.length>0))},placeholder:`Enter items separated by commas`,rows:2}),c&&(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:c})]});default:return(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(Ug,{htmlFor:e,children:[e,i&&(0,K.jsx)(`span`,{className:`text-destructive ml-1`,children:`*`})]}),(0,K.jsx)(gv,{id:e,value:typeof n==`object`&&n?JSON.stringify(n,null,2):typeof n==`string`?n:``,onChange:e=>{try{r(JSON.parse(e.target.value))}catch{r(e.target.value)}},placeholder:`{"key": "value"}`,rows:3,className:`font-mono text-xs`}),c&&(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:c})]})}})()})}function Ob({schema:e,values:t,onChange:n,disabled:r=!1,readOnlyFields:i=[],hideFields:a=[],showCollapsedByDefault:o=!1,layout:s=`stack`}){let[c,l]=(0,y.useState)(o),u=s===`grid`?`grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-6`:`space-y-3`,d=e.properties||{},f=Object.keys(d).filter(e=>!a.includes(e)),p=(e.required||[]).filter(e=>!a.includes(e)),m=Eb(e,p),h=f.filter(e=>p.includes(e)&&!(m&&e===`role`)),g=f.filter(e=>!p.includes(e)),_=m?[...g].sort((e,t)=>{let n=e=>+!![`text`,`message`,`content`].includes(e);return n(t)-n(e)}):g,v=Math.max(0,(m?1:6)-h.length),b=_.slice(0,v),x=_.slice(v),S=x.length>0,C=h.length>0,w=(e,r)=>{n({...t,[e]:r})},T=s===`grid`?`md:col-span-2 lg:col-span-3 xl:col-span-4`:``;return(0,K.jsxs)(`div`,{className:u,children:[h.map(e=>(0,K.jsx)(Db,{name:e,schema:d[e],value:t[e],onChange:t=>w(e,t),isRequired:!0,isReadOnly:r||i.includes(e)},e)),C&&g.length>0&&(0,K.jsx)(`div`,{className:T,children:(0,K.jsx)(`div`,{className:`border-t border-border`})}),b.map(e=>(0,K.jsx)(Db,{name:e,schema:d[e],value:t[e],onChange:t=>w(e,t),isRequired:!1,isReadOnly:r||i.includes(e)},e)),S&&(0,K.jsx)(`div`,{className:T,children:(0,K.jsx)(q,{type:`button`,variant:`ghost`,size:`sm`,onClick:()=>l(!c),className:`w-full justify-center gap-2`,disabled:r,children:c?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(pu,{className:`h-4 w-4`}),`Hide `,x.length,` optional field`,x.length===1?``:`s`]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(su,{className:`h-4 w-4`}),`Show `,x.length,` optional field`,x.length===1?``:`s`]})})}),c&&x.map(e=>(0,K.jsx)(Db,{name:e,schema:d[e],value:t[e],onChange:t=>w(e,t),isRequired:!1,isReadOnly:r||i.includes(e)},e))]})}function kb(e,t){return(e.required||[]).every(e=>{let n=t[e];return n!==void 0&&n!==``&&n!==null})}function Ab(e,t){let n=e.required||[],r={};return Object.keys(t).forEach(e=>{let i=t[e];(n.includes(e)||i!==void 0&&i!==``&&i!==null)&&(r[e]=i)}),r}function jb({inputSchema:e,inputTypeName:t,onSubmit:n,isSubmitting:r=!1,className:i}){let[a,o]=(0,y.useState)(!1),s=i?.includes(`embedded`),[c,l]=(0,y.useState)({}),[u,d]=(0,y.useState)(!1),f=e.properties||{},p=Object.keys(f),m=e.required||[],h=e.type===`string`&&!e.enum,g=Eb(e,m),_=h?c.value!==void 0&&c.value!==``:m.length>0?m.every(e=>g&&e===`role`&&c.role===`user`?!0:c[e]!==void 0&&c[e]!==``):Object.keys(c).length>0;(0,y.useEffect)(()=>{if(e.type===`string`)l({value:e.default||``});else if(e.type===`object`&&e.properties){let t={};Object.entries(e.properties).forEach(([e,n])=>{n.default===void 0?n.enum&&n.enum.length>0&&(t[e]=n.enum[0]):t[e]=n.default}),g&&!t.role&&(t.role=`user`),l(t)}},[e,g]);let v=t=>{if(t.preventDefault(),d(!0),e.type===`string`)n({input:c.value||``});else if(e.type===`object`){let t=e.properties||{},r=Object.keys(t);if(r.length===1){let e=r[0];n({[e]:c[e]||``})}else n(Ab(e,c))}else n(c);s||o(!1),d(!1)},b=e=>{l(e)},x=()=>(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsx)(Ug,{htmlFor:`simple-input`,children:`Input`}),(0,K.jsx)(gv,{id:`simple-input`,value:typeof c.value==`string`?c.value:``,onChange:e=>l({value:e.target.value}),placeholder:typeof e.default==`string`?e.default:`Enter input`,rows:4,className:`min-w-[300px] w-full`}),e.description&&(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:e.description})]});return s?(0,K.jsxs)(`form`,{onSubmit:v,className:i,children:[h&&x(),!h&&(0,K.jsx)(Ob,{schema:e,values:c,onChange:b,disabled:u,hideFields:g?[`role`]:[],layout:`grid`}),(0,K.jsx)(`div`,{className:`flex gap-2 mt-4 justify-end`,children:(0,K.jsxs)(q,{type:`submit`,disabled:u||!_,size:`default`,children:[(0,K.jsx)(qd,{className:`h-4 w-4`}),u?`Running...`:`Run Workflow`]})})]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(`div`,{className:jt(`flex flex-col`,i),children:[(0,K.jsxs)(`div`,{className:`border-b border-border px-4 py-3 bg-muted`,children:[(0,K.jsx)(tv,{className:`text-sm mb-3`,children:`Run Workflow`}),(0,K.jsxs)(q,{onClick:()=>o(!0),disabled:r,className:`w-full`,size:`default`,children:[(0,K.jsx)(qd,{className:`h-4 w-4 mr-2`}),r?`Running...`:`Run Workflow`]})]}),(0,K.jsxs)(`div`,{className:`px-4 py-3`,children:[(0,K.jsxs)(`div`,{className:`text-sm text-muted-foreground`,children:[(0,K.jsx)(`strong`,{children:`Input Type:`}),` `,(0,K.jsx)(`code`,{className:`bg-muted px-1 py-0.5 rounded`,children:t}),e.type===`object`&&e.properties&&(0,K.jsxs)(`span`,{className:`ml-2`,children:[`(`,Object.keys(e.properties).length,` field`,Object.keys(e.properties).length===1?``:`s`,`)`]})]}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground mt-2`,children:`Click "Run Workflow" to configure inputs and execute`})]})]}),(0,K.jsx)(Ng,{open:a,onOpenChange:o,children:(0,K.jsxs)(Pg,{className:`w-full max-w-md sm:max-w-lg md:max-w-2xl lg:max-w-4xl xl:max-w-5xl max-h-[90vh] flex flex-col`,children:[(0,K.jsxs)(Fg,{children:[(0,K.jsx)(Ig,{children:`Run Workflow`}),(0,K.jsx)(Rg,{onClose:()=>o(!1)})]}),(0,K.jsx)(`div`,{className:`px-8 py-4 border-b flex-shrink-0`,children:(0,K.jsx)(`div`,{className:`text-sm text-muted-foreground`,children:(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,K.jsx)(`span`,{className:`font-medium`,children:`Input Type:`}),(0,K.jsx)(`code`,{className:`bg-muted px-3 py-1 text-xs font-mono`,children:t}),e.type===`object`&&(0,K.jsxs)(`span`,{className:`text-xs text-muted-foreground`,children:[p.length,` field`,p.length===1?``:`s`]})]})})}),(0,K.jsx)(`div`,{className:`px-8 py-6 overflow-y-auto flex-1 min-h-0`,children:(0,K.jsxs)(`form`,{id:`workflow-modal-form`,onSubmit:v,children:[h&&x(),!h&&(0,K.jsx)(Ob,{schema:e,values:c,onChange:b,disabled:u,hideFields:g?[`role`]:[],layout:`grid`})]})}),(0,K.jsx)(`div`,{className:`px-8 py-4 border-t flex-shrink-0`,children:(0,K.jsxs)(zg,{children:[(0,K.jsx)(q,{variant:`outline`,onClick:()=>o(!1),disabled:u,children:`Cancel`}),(0,K.jsxs)(q,{type:`submit`,form:`workflow-modal-form`,disabled:u||!_,children:[(0,K.jsx)(qd,{className:`h-4 w-4 mr-2`}),u?`Running...`:`Run Workflow`]})]})})]})})]})}function Mb(e,t,n=`LR`){if(e.length===0)return e;if(e.length===1)return e.map(e=>({...e,position:{x:0,y:0}}));let r=new Map,i=new Map;e.forEach(e=>{r.set(e.id,[]),i.set(e.id,[])}),t.forEach(e=>{r.get(e.source)?.push(e.target),i.get(e.target)?.push(e.source)});let a=e.filter(e=>(i.get(e.id)||[]).length===0);a.length===0&&a.push(e[0]);let o=n===`LR`?350:280,s=n===`TB`?250:180,c=new Map,l=new Map,u=[],d=new Set;for(a.forEach(e=>{u.push({nodeId:e.id,level:0})});u.length>0;){let{nodeId:e,level:t}=u.shift();d.has(e)||(d.add(e),l.has(t)||l.set(t,[]),l.get(t).push(e),(r.get(e)||[]).forEach(e=>{d.has(e)||u.push({nodeId:e,level:t+1})}))}return e.forEach(e=>{if(!d.has(e.id)){let t=Math.max(...Array.from(l.keys()),-1)+1;l.has(t)||l.set(t,[]),l.get(t).push(e.id)}}),l.forEach((e,t)=>{let r=e.length;e.forEach((e,i)=>{let a,l;n===`LR`?(a=t*o,l=-((r-1)*s)/2+i*s):(l=t*s,a=-((r-1)*o)/2+i*o),c.set(e,{x:a,y:l,level:t})})}),e.map(e=>{let t=c.get(e.id)||{x:0,y:0};return{...e,position:{x:t.x-110,y:t.y-60}}})}function Nb(e){if(typeof e!=`object`||!e)return!1;let t=e;return`id`in t&&`edge_groups`in t&&`executors`in t&&`start_executor_id`in t&&`max_iterations`in t&&typeof t.id==`string`&&Array.isArray(t.edge_groups)&&typeof t.executors==`object`&&typeof t.start_executor_id==`string`&&typeof t.max_iterations==`number`}function Pb(e){return Nb(e)?e:null}function Fb(e){if(!e||e.type!==`object`||!e.properties)return!1;let t=e.properties,n=`text`in t&&t.text?.type===`string`,r=`role`in t&&t.role?.type===`string`;return!!(n&&r||Object.keys(t).length===1&&n)}function Ib(e,t=50,n=`...`){return e.length<=t?e:e.substring(0,t)+n}function Lb(e,t,n){if(!e)return console.warn(`convertWorkflowDumpToNodes: workflowDump is undefined`),[];let r=Pb(e),i,a;return r?(i=Object.values(r.executors).map(e=>({id:e.id,type:e.type,name:e.name||e.id,description:e.description,config:e.config})),a=r.start_executor_id):(i=zb(e),a=e?.start_executor_id),!i||!Array.isArray(i)||i.length===0?(console.warn(`No executors found in workflow dump. Available keys:`,Object.keys(e)),[]):i.map(e=>({id:e.id,type:`executor`,position:{x:0,y:0},data:{executorId:e.id,executorType:e.type,name:e.name||e.id,state:`pending`,isStartNode:e.id===a,layoutDirection:n||`LR`,onNodeClick:t}}))}function Rb(e){if(!e)return console.warn(`convertWorkflowDumpToEdges: workflowDump is undefined`),[];let t=Pb(e),n;return t?(n=[],t.edge_groups.forEach(e=>{e.edges.forEach(e=>{n.push({source:e.source_id,target:e.target_id,condition:e.condition_name})})})):n=Bb(e),!n||!Array.isArray(n)||n.length===0?(console.warn(`No connections found in workflow dump. Available keys:`,Object.keys(e)),[]):n.map(e=>{let t=e.source===e.target;return{id:`${e.source}-${e.target}`,source:e.source,target:e.target,sourceHandle:`source`,targetHandle:`target`,type:t?`selfLoop`:`default`,animated:!1,style:{stroke:`#6b7280`,strokeWidth:2}}})}function zb(e){if(e.executors&&typeof e.executors==`object`&&!Array.isArray(e.executors)){let t=e.executors;return Object.entries(t).map(([e,t])=>({id:e,type:t.type_||t.type||`executor`,name:t.name||e,description:t.description,config:t.config}))}for(let t of[`executors`,`agents`,`steps`,`nodes`])if(e[t]&&Array.isArray(e[t]))return e[t];if(e.config&&typeof e.config==`object`)return zb(e.config);let t=[];return Object.entries(e).forEach(([e,n])=>{if(typeof n==`object`&&n&&(`type`in n||`type_`in n)){let r=n;t.push({id:e,type:r.type_||r.type||`executor`,name:r.name||e,description:r.description,config:r.config})}}),t}function Bb(e){if(e.edge_groups&&Array.isArray(e.edge_groups)){let t=[];return e.edge_groups.forEach(e=>{if(typeof e==`object`&&e&&`edges`in e){let n=e.edges;Array.isArray(n)&&n.forEach(e=>{if(typeof e==`object`&&e&&`source_id`in e&&`target_id`in e){let n=e;t.push({source:n.source_id,target:n.target_id,condition:n.condition_name||void 0})}})}}),t}for(let t of[`connections`,`edges`,`transitions`,`links`])if(e[t]&&Array.isArray(e[t]))return e[t];return e.config&&typeof e.config==`object`?Bb(e.config):[]}function Vb(e,t,n=`LR`){return Mb(e,t,n)}function Hb(e,t){let n={},r=!1,i={};return e.forEach(e=>{if(e.type===`response.output_item.added`||e.type===`response.output_item.done`){let t=e.item;if(t&&t.type===`executor_action`&&`executor_id`in t){let r=t.executor_id,a=t.id;if(e.type===`response.output_item.added`&&(i[r]=a),i[r]!==a&&e.type===`response.output_item.done`)return;let o=`pending`,s;e.type===`response.output_item.added`?o=`running`:e.type===`response.output_item.done`&&(t.status===`completed`?o=`completed`:t.status===`failed`?(o=`failed`,s=t.error?typeof t.error==`string`?t.error:JSON.stringify(t.error):`Execution failed`):t.status===`cancelled`&&(o=`cancelled`)),n[r]={nodeId:r,state:o,data:t.result,error:s,timestamp:new Date().toISOString()}}}else if(e.type===`response.created`||e.type===`response.in_progress`)r=!0;else if(e.type===`response.workflow_event.completed`&&`data`in e&&e.data){let t=e.data,i=t.executor_id,a=t.event_type,o=t.data,s=`pending`,c;a===`ExecutorInvokedEvent`?s=`running`:a===`ExecutorCompletedEvent`?s=`completed`:a?.includes(`Error`)||a?.includes(`Failed`)?(s=`failed`,c=typeof o==`string`?o:`Execution failed`):a?.includes(`Cancel`)?s=`cancelled`:a===`WorkflowCompletedEvent`||a===`WorkflowOutputEvent`?s=`completed`:a===`WorkflowStartedEvent`&&(r=!0),i&&(n[i]={nodeId:i,state:s,data:o,error:c,timestamp:new Date().toISOString()})}}),r&&t&&!n[t]&&(e.some(e=>{if(e.type===`response.output_item.done`){let n=e.item;return n&&n.type===`executor_action`&&`executor_id`in n&&n.executor_id===t}if(e.type===`response.workflow_event.completed`&&`data`in e&&e.data){let n=e.data;return n.executor_id===t&&(n.event_type===`ExecutorCompletedEvent`||n.event_type===`ExecutorFailedEvent`||typeof n.event_type==`string`&&n.event_type.includes(`Error`)||typeof n.event_type==`string`&&n.event_type.includes(`Failed`))}return!1})||(n[t]={nodeId:t,state:`running`,data:void 0,error:void 0,timestamp:new Date().toISOString()})),n}function Ub(e,t,n=!0){return e.map(e=>{let r=t[e.id];return r?{...e,data:{...e.data,state:r.state,outputData:r.data,error:r.error,isStreaming:n,layoutDirection:e.data.layoutDirection}}:e})}function Wb(e){let t={};return e.forEach(e=>{if(e.type===`response.output_item.added`||e.type===`response.output_item.done`){let n=e.item;if(n&&n.type===`executor_action`&&`executor_id`in n){let r=n.executor_id;t[r]={lastEvent:e.type===`response.output_item.added`?`ExecutorInvokedEvent`:`ExecutorCompletedEvent`,timestamp:new Date().toISOString()}}}else if(e.type===`response.workflow_event.completed`&&`data`in e&&e.data){let n=e.data,r=n.executor_id,i=n.event_type;r&&(i===`ExecutorInvokedEvent`||i===`ExecutorCompletedEvent`)&&(t[r]={lastEvent:i,timestamp:new Date().toISOString()})}}),Object.entries(t).filter(([,e])=>e.lastEvent===`ExecutorInvokedEvent`).map(([e])=>e)}function Gb(e,t){let n=Wb(t),r={};return t.forEach(e=>{if(e.type===`response.workflow_event.completed`&&`data`in e&&e.data){let t=e.data,n=t.executor_id,i=t.event_type;n&&i&&(r[n]||(r[n]={completed:!1,invoked:!1}),i===`ExecutorInvokedEvent`?r[n].invoked=!0:i===`ExecutorCompletedEvent`&&(r[n].completed=!0))}}),e.map(e=>{let t=r[e.source],i=r[e.target],a=n.includes(e.target),o={...e.style},s=!1;return t?.completed&&a?(o={stroke:`#643FB2`,strokeWidth:3,strokeDasharray:`5,5`},s=!0):o=t?.completed&&i?.completed?{stroke:`#10b981`,strokeWidth:2}:t?.completed&&i?.invoked?{stroke:`#f59e0b`,strokeWidth:2}:{stroke:`#6b7280`,strokeWidth:2},{...e,style:o,animated:s}})}function Kb(e){let t=new Map,n=new Set;return e.forEach(e=>{let r=`${e.source}-${e.target}`,i=`${e.target}-${e.source}`;if(e.source===e.target){t.set(r,e);return}if(t.has(i)){n.add(i),n.add(r);let e=t.get(i);t.set(i,{...e,markerStart:{type:`arrow`,width:20,height:20},markerEnd:{type:`arrow`,width:20,height:20},data:{...e.data,isBidirectional:!0}})}else n.has(r)||t.set(r,e)}),Array.from(t.values())}function qb({inputSchema:e,onRun:t,onCancel:n,isSubmitting:r,isCancelling:i=!1,workflowState:a,checkpoints:o=[],showCheckpoints:s=!0}){let[c,l]=(0,y.useState)(!1);(0,y.useEffect)(()=>{let e=e=>{e.key===`Escape`&&c&&l(!1)};if(c)return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},[c]);let u=(0,y.useMemo)(()=>{let t=Fb(e);if(!e)return{needsInput:!1,hasDefaults:!1,fieldCount:0,canRunDirectly:!0,isChatMessage:!1};if(e.type===`string`)return{needsInput:!e.default,hasDefaults:!!e.default,fieldCount:1,canRunDirectly:!!e.default,isChatMessage:!1};if(e.type===`object`&&e.properties){let n=e.properties,r=Object.entries(n),i=r.filter(([,e])=>e.default!==void 0||e.enum&&e.enum.length>0);return{needsInput:r.length>0,hasDefaults:i.length>0,fieldCount:r.length,canRunDirectly:r.length===0||i.length===r.length,isChatMessage:t}}return{needsInput:!1,hasDefaults:!1,fieldCount:0,canRunDirectly:!0,isChatMessage:!1}},[e]),d=()=>{if(a===`running`&&n)n();else if(u.canRunDirectly){let n={};e?.type===`string`&&e.default?n.input=e.default:e?.type===`object`&&e.properties&&Object.entries(e.properties).forEach(([e,t])=>{t.default===void 0?t.enum&&t.enum.length>0&&(n[e]=t.enum[0]):n[e]=t.default}),t(n)}else l(!0)},f=n=>{if(u.canRunDirectly){let r={};e?.type===`string`&&e.default?r.input=e.default:e?.type===`object`&&e.properties&&Object.entries(e.properties).forEach(([e,t])=>{t.default===void 0?t.enum&&t.enum.length>0&&(r[e]=t.enum[0]):r[e]=t.default}),t(r,n)}else l(!0)},p=s&&o.length>0,m=e=>{if(!e)return``;let t=e/1024;return t<1?`${e} B`:t<1024?`${t.toFixed(1)} KB`:`${(t/1024).toFixed(1)} MB`},{icon:h,text:g}={icon:i?(0,K.jsx)(ld,{className:`w-4 h-4 animate-spin`}):a===`running`&&n?(0,K.jsx)(tf,{className:`w-4 h-4 fill-current`}):a===`running`?(0,K.jsx)(ld,{className:`w-4 h-4 animate-spin`}):a===`error`?(0,K.jsx)(Vd,{className:`w-4 h-4`}):u.needsInput&&!u.canRunDirectly?(0,K.jsx)(Zd,{className:`w-4 h-4`}):(0,K.jsx)(Nd,{className:`w-4 h-4`}),text:i?`Stopping...`:a===`running`&&n?`Stop`:a===`running`?`Running...`:a===`completed`?`Run Again`:a===`error`?`Retry`:u.fieldCount===0||u.canRunDirectly?`Run Workflow`:`Configure & Run`},_=a===`running`&&!n||i,v=a===`error`?`destructive`:`default`;return(0,K.jsxs)(K.Fragment,{children:[p||u.needsInput?(0,K.jsxs)(xf,{children:[(0,K.jsxs)(`div`,{className:`flex w-full`,children:[(0,K.jsxs)(q,{onClick:d,disabled:_,variant:v,className:`gap-2 rounded-r-none flex-1`,title:a===`running`&&n?`Stop workflow execution`:void 0,children:[h,g]}),(0,K.jsx)(Sf,{asChild:!0,children:(0,K.jsx)(q,{disabled:_,variant:v,className:`rounded-l-none border-l-0 px-2`,title:`More options`,children:(0,K.jsx)(su,{className:`w-4 h-4`})})})]}),(0,K.jsxs)(Cf,{align:`end`,className:`w-80 max-h-[400px] overflow-y-auto`,children:[p&&(0,K.jsxs)(wf,{onClick:d,children:[(0,K.jsx)(Nd,{className:`w-4 h-4 mr-2`}),`Run Fresh`]}),u.needsInput&&(0,K.jsxs)(wf,{onClick:()=>l(!0),children:[(0,K.jsx)(Zd,{className:`w-4 h-4 mr-2`}),`Configure Inputs`]}),p&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(Ef,{}),(0,K.jsx)(`div`,{className:`px-2 py-1.5 text-xs text-muted-foreground`,children:`Resume from checkpoint`}),o.map((e,t)=>(0,K.jsxs)(wf,{onClick:()=>f(e.checkpoint_id),className:`flex flex-col items-start py-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 w-full`,children:[(0,K.jsx)(Ld,{className:`w-4 h-4 flex-shrink-0`}),(0,K.jsx)(`span`,{className:`font-medium`,children:e.metadata.iteration_count===0?`Initial State`:`Step ${e.metadata.iteration_count}`}),t===0&&(0,K.jsx)(Ft,{variant:`secondary`,className:`text-[10px] h-4 px-1 ml-auto`,children:`Latest`})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-muted-foreground ml-6 mt-0.5`,children:[(0,K.jsx)(Tu,{className:`w-3 h-3`}),(0,K.jsx)(`span`,{children:new Date(e.timestamp).toLocaleTimeString()}),e.metadata.size_bytes&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`span`,{children:`•`}),(0,K.jsx)(`span`,{children:m(e.metadata.size_bytes)})]})]})]},e.checkpoint_id))]})]})]}):(0,K.jsxs)(q,{onClick:d,disabled:_,variant:v,className:`gap-2 w-full`,title:a===`running`&&n?`Stop workflow execution`:void 0,children:[h,g]}),e&&(0,K.jsx)(Ng,{open:c,onOpenChange:l,children:(0,K.jsxs)(Pg,{className:`w-full min-w-[400px] max-w-md sm:max-w-lg md:max-w-2xl lg:max-w-4xl xl:max-w-5xl max-h-[90vh] flex flex-col`,children:[(0,K.jsxs)(Fg,{className:`px-8 pt-6`,children:[(0,K.jsx)(Ig,{children:`Configure Workflow Inputs`}),(0,K.jsx)(Rg,{onClose:()=>l(!1)})]}),(0,K.jsx)(`div`,{className:`px-8 py-4 border-b flex-shrink-0`,children:(0,K.jsx)(`div`,{className:`text-sm text-muted-foreground`,children:(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,K.jsx)(`span`,{className:`font-medium`,children:`Input Type:`}),(0,K.jsx)(Ft,{variant:`secondary`,children:u.isChatMessage?`Chat Message`:e.type===`string`?`Simple Text`:`Structured Data`})]})})}),(0,K.jsx)(`div`,{className:`flex-1 overflow-y-auto py-4 px-8`,children:u.isChatMessage?(0,K.jsx)(Ev,{onSubmit:async e=>{t([{type:`message`,role:`user`,content:e}]),l(!1)},isSubmitting:r,placeholder:`Enter your message...`,entityName:`workflow`,showFileUpload:!0}):(0,K.jsx)(jb,{inputSchema:e,inputTypeName:`Input`,onSubmit:e=>{t(e),l(!1)},isSubmitting:r,className:`embedded`})})]})})]})}function Jb(e){if(typeof e==`string`||typeof e==`number`)return``+e;let t=``;if(Array.isArray(e))for(let n=0,r;n{}};function Xb(){for(var e=0,t=arguments.length,n={},r;e=0&&(n=e.slice(r+1),e=e.slice(0,r)),e&&!t.hasOwnProperty(e))throw Error(`unknown type: `+e);return{type:e,name:n}})}Zb.prototype=Xb.prototype={constructor:Zb,on:function(e,t){var n=this._,r=Qb(e+``,n),i,a=-1,o=r.length;if(arguments.length<2){for(;++a0)for(var n=Array(i),r=0,i,a;r=0&&(t=e.slice(0,n))!==`xmlns`&&(e=e.slice(n+1)),tx.hasOwnProperty(t)?{space:tx[t],local:e}:e}function rx(e){return function(){var t=this.ownerDocument,n=this.namespaceURI;return n===`http://www.w3.org/1999/xhtml`&&t.documentElement.namespaceURI===`http://www.w3.org/1999/xhtml`?t.createElement(e):t.createElementNS(n,e)}}function ix(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function ax(e){var t=nx(e);return(t.local?ix:rx)(t)}function ox(){}function sx(e){return e==null?ox:function(){return this.querySelector(e)}}function cx(e){typeof e!=`function`&&(e=sx(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i=v&&(v=_+1);!(b=g[v])&&++v=0;)(o=r[i])&&(a&&o.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(o,a),a=o);return this}function Rx(e){e||=zx;function t(t,n){return t&&n?e(t.__data__,n.__data__):!t-!n}for(var n=this._groups,r=n.length,i=Array(r),a=0;at?1:e>=t?0:NaN}function Bx(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function Vx(){return Array.from(this)}function Hx(){for(var e=this._groups,t=0,n=e.length;t1?this.each((t==null?eS:typeof t==`function`?nS:tS)(e,t,n??``)):iS(this.node(),e)}function iS(e,t){return e.style.getPropertyValue(t)||$x(e).getComputedStyle(e,null).getPropertyValue(t)}function aS(e){return function(){delete this[e]}}function oS(e,t){return function(){this[e]=t}}function sS(e,t){return function(){var n=t.apply(this,arguments);n==null?delete this[e]:this[e]=n}}function cS(e,t){return arguments.length>1?this.each((t==null?aS:typeof t==`function`?sS:oS)(e,t)):this.node()[e]}function lS(e){return e.trim().split(/^|\s+/)}function uS(e){return e.classList||new dS(e)}function dS(e){this._node=e,this._names=lS(e.getAttribute(`class`)||``)}dS.prototype={add:function(e){this._names.indexOf(e)<0&&(this._names.push(e),this._node.setAttribute(`class`,this._names.join(` `)))},remove:function(e){var t=this._names.indexOf(e);t>=0&&(this._names.splice(t,1),this._node.setAttribute(`class`,this._names.join(` `)))},contains:function(e){return this._names.indexOf(e)>=0}};function fS(e,t){for(var n=uS(e),r=-1,i=t.length;++r=0&&(t=e.slice(n+1),e=e.slice(0,n)),{type:e,name:t}})}function VS(e){return function(){var t=this.__on;if(t){for(var n=0,r=-1,i=t.length,a;n()=>e;function lC(e,{sourceEvent:t,subject:n,target:r,identifier:i,active:a,x:o,y:s,dx:c,dy:l,dispatch:u}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},subject:{value:n,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},identifier:{value:i,enumerable:!0,configurable:!0},active:{value:a,enumerable:!0,configurable:!0},x:{value:o,enumerable:!0,configurable:!0},y:{value:s,enumerable:!0,configurable:!0},dx:{value:c,enumerable:!0,configurable:!0},dy:{value:l,enumerable:!0,configurable:!0},_:{value:u}})}lC.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function uC(e){return!e.ctrlKey&&!e.button}function dC(){return this.parentNode}function fC(e,t){return t??{x:e.x,y:e.y}}function pC(){return navigator.maxTouchPoints||`ontouchstart`in this}function mC(){var e=uC,t=dC,n=fC,r=pC,i={},a=Xb(`start`,`drag`,`end`),o=0,s,c,l,u,d=0;function f(e){e.on(`mousedown.drag`,p).filter(r).on(`touchstart.drag`,g).on(`touchmove.drag`,_,nC).on(`touchend.drag touchcancel.drag`,v).style(`touch-action`,`none`).style(`-webkit-tap-highlight-color`,`rgba(0,0,0,0)`)}function p(n,r){if(!u&&e.call(this,n,r)){var i=y(this,t.call(this,n,r),n,r,`mouse`);i&&($S(n.view).on(`mousemove.drag`,m,rC).on(`mouseup.drag`,h,rC),oC(n.view),iC(n),l=!1,s=n.clientX,c=n.clientY,i(`start`,n))}}function m(e){if(aC(e),!l){var t=e.clientX-s,n=e.clientY-c;l=t*t+n*n>d}i.mouse(`drag`,e)}function h(e){$S(e.view).on(`mousemove.drag mouseup.drag`,null),sC(e.view,l),aC(e),i.mouse(`end`,e)}function g(n,r){if(e.call(this,n,r))for(var i=n.changedTouches,a=t.call(this,n,r),o=i.length,s=0,c;s>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?LC(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?LC(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=wC.exec(e))?new BC(t[1],t[2],t[3],1):(t=TC.exec(e))?new BC(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=EC.exec(e))?LC(t[1],t[2],t[3],t[4]):(t=DC.exec(e))?LC(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=OC.exec(e))?qC(t[1],t[2]/100,t[3]/100,1):(t=kC.exec(e))?qC(t[1],t[2]/100,t[3]/100,t[4]):AC.hasOwnProperty(e)?IC(AC[e]):e===`transparent`?new BC(NaN,NaN,NaN,0):null}function IC(e){return new BC(e>>16&255,e>>8&255,e&255,1)}function LC(e,t,n,r){return r<=0&&(e=t=n=NaN),new BC(e,t,n,r)}function RC(e){return e instanceof _C||(e=FC(e)),e?(e=e.rgb(),new BC(e.r,e.g,e.b,e.opacity)):new BC}function zC(e,t,n,r){return arguments.length===1?RC(e):new BC(e,t,n,r??1)}function BC(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}hC(BC,zC,gC(_C,{brighter(e){return e=e==null?yC:yC**+e,new BC(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?vC:vC**+e,new BC(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new BC(GC(this.r),GC(this.g),GC(this.b),WC(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:VC,formatHex:VC,formatHex8:HC,formatRgb:UC,toString:UC}));function VC(){return`#${KC(this.r)}${KC(this.g)}${KC(this.b)}`}function HC(){return`#${KC(this.r)}${KC(this.g)}${KC(this.b)}${KC((isNaN(this.opacity)?1:this.opacity)*255)}`}function UC(){let e=WC(this.opacity);return`${e===1?`rgb(`:`rgba(`}${GC(this.r)}, ${GC(this.g)}, ${GC(this.b)}${e===1?`)`:`, ${e})`}`}function WC(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function GC(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function KC(e){return e=GC(e),(e<16?`0`:``)+e.toString(16)}function qC(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new XC(e,t,n,r)}function JC(e){if(e instanceof XC)return new XC(e.h,e.s,e.l,e.opacity);if(e instanceof _C||(e=FC(e)),!e)return new XC;if(e instanceof XC)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,i=Math.min(t,n,r),a=Math.max(t,n,r),o=NaN,s=a-i,c=(a+i)/2;return s?(o=t===a?(n-r)/s+(n0&&c<1?0:o,new XC(o,s,c,e.opacity)}function YC(e,t,n,r){return arguments.length===1?JC(e):new XC(e,t,n,r??1)}function XC(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}hC(XC,YC,gC(_C,{brighter(e){return e=e==null?yC:yC**+e,new XC(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?vC:vC**+e,new XC(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,i=2*n-r;return new BC($C(e>=240?e-240:e+120,i,r),$C(e,i,r),$C(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new XC(ZC(this.h),QC(this.s),QC(this.l),WC(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let e=WC(this.opacity);return`${e===1?`hsl(`:`hsla(`}${ZC(this.h)}, ${QC(this.s)*100}%, ${QC(this.l)*100}%${e===1?`)`:`, ${e})`}`}}));function ZC(e){return e=(e||0)%360,e<0?e+360:e}function QC(e){return Math.max(0,Math.min(1,e||0))}function $C(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}var ew=e=>()=>e;function tw(e,t){return function(n){return e+n*t}}function nw(e,t,n){return e**=+n,t=t**+n-e,n=1/n,function(r){return(e+r*t)**+n}}function rw(e){return(e=+e)==1?iw:function(t,n){return n-t?nw(t,n,e):ew(isNaN(t)?n:t)}}function iw(e,t){var n=t-e;return n?tw(e,n):ew(isNaN(e)?t:e)}var aw=(function e(t){var n=rw(t);function r(e,t){var r=n((e=zC(e)).r,(t=zC(t)).r),i=n(e.g,t.g),a=n(e.b,t.b),o=iw(e.opacity,t.opacity);return function(t){return e.r=r(t),e.g=i(t),e.b=a(t),e.opacity=o(t),e+``}}return r.gamma=e,r})(1);function ow(e,t){t||=[];var n=e?Math.min(t.length,e.length):0,r=t.slice(),i;return function(a){for(i=0;in&&(a=t.slice(n,a),s[o]?s[o]+=a:s[++o]=a),(r=r[0])===(i=i[0])?s[o]?s[o]+=i:s[++o]=i:(s[++o]=null,c.push({i:o,x:uw(r,i)})),n=pw.lastIndex;return n180?t+=360:t-e>180&&(e+=360),a.push({i:n.push(i(n)+`rotate(`,null,r)-2,x:uw(e,t)}))}function s(e,t,n,a){e===t?t&&n.push(i(n)+`skewX(`+t+r):a.push({i:n.push(i(n)+`skewX(`,null,r)-2,x:uw(e,t)})}function c(e,t,n,r,a,o){if(e!==n||t!==r){var s=a.push(i(a)+`scale(`,null,`,`,null,`)`);o.push({i:s-4,x:uw(e,n)},{i:s-2,x:uw(t,r)})}else(n!==1||r!==1)&&a.push(i(a)+`scale(`+n+`,`+r+`)`)}return function(t,n){var r=[],i=[];return t=e(t),n=e(n),a(t.translateX,t.translateY,n.translateX,n.translateY,r,i),o(t.rotate,n.rotate,r,i),s(t.skewX,n.skewX,r,i),c(t.scaleX,t.scaleY,n.scaleX,n.scaleY,r,i),t=n=null,function(e){for(var t=-1,n=i.length,a;++t=0&&e._call.call(void 0,t),e=e._next;--Mw}function Jw(){zw=(Rw=Vw.now())+Bw,Mw=Nw=0;try{qw()}finally{Mw=0,Xw(),zw=0}}function Yw(){var e=Vw.now(),t=e-Rw;t>Fw&&(Bw-=t,Rw=e)}function Xw(){for(var e,t=Iw,n,r=1/0;t;)t._call?(r>t._time&&(r=t._time),e=t,t=t._next):(n=t._next,t._next=null,t=e?e._next=n:Iw=n);Lw=e,Zw(r)}function Zw(e){Mw||(Nw&&=clearTimeout(Nw),e-zw>24?(e<1/0&&(Nw=setTimeout(Jw,e-Vw.now()-Bw)),Pw&&=clearInterval(Pw)):(Pw||=(Rw=Vw.now(),setInterval(Yw,Fw)),Mw=1,Hw(Jw)))}function Qw(e,t,n){var r=new Gw;return t=t==null?0:+t,r.restart(n=>{r.stop(),e(n+t)},t,n),r}var $w=Xb(`start`,`end`,`cancel`,`interrupt`),eT=[];function tT(e,t,n,r,i,a){var o=e.__transition;if(!o)e.__transition={};else if(n in o)return;aT(e,n,{name:t,index:r,group:i,on:$w,tween:eT,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:0})}function nT(e,t){var n=iT(e,t);if(n.state>0)throw Error(`too late; already scheduled`);return n}function rT(e,t){var n=iT(e,t);if(n.state>3)throw Error(`too late; already running`);return n}function iT(e,t){var n=e.__transition;if(!n||!(n=n[t]))throw Error(`transition not found`);return n}function aT(e,t,n){var r=e.__transition,i;r[t]=n,n.timer=Kw(a,0,n.time);function a(e){n.state=1,n.timer.restart(o,n.delay,n.time),n.delay<=e&&o(e-n.delay)}function o(a){var l,u,d,f;if(n.state!==1)return c();for(l in r)if(f=r[l],f.name===n.name){if(f.state===3)return Qw(o);f.state===4?(f.state=6,f.timer.stop(),f.on.call(`interrupt`,e,e.__data__,f.index,f.group),delete r[l]):+l2&&r.state<5,r.state=6,r.timer.stop(),r.on.call(i?`interrupt`:`cancel`,e,e.__data__,r.index,r.group),delete n[o]}a&&delete e.__transition}}function sT(e){return this.each(function(){oT(this,e)})}function cT(e,t){var n,r;return function(){var i=rT(this,e),a=i.tween;if(a!==n){r=n=a;for(var o=0,s=r.length;o=0&&(e=e.slice(0,t)),!e||e===`start`})}function RT(e,t,n){var r,i,a=LT(t)?nT:rT;return function(){var o=a(this,e),s=o.on;s!==r&&(i=(r=s).copy()).on(t,n),o.on=i}}function zT(e,t){var n=this._id;return arguments.length<2?iT(this.node(),n).on.on(e):this.each(RT(n,e,t))}function BT(e){return function(){var t=this.parentNode;for(var n in this.__transition)if(+n!==e)return;t&&t.removeChild(this)}}function VT(){return this.on(`end.remove`,BT(this._id))}function HT(e){var t=this._name,n=this._id;typeof e!=`function`&&(e=sx(e));for(var r=this._groups,i=r.length,a=Array(i),o=0;o()=>e;function vE(e,{sourceEvent:t,target:n,transform:r,dispatch:i}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:i}})}function yE(e,t,n){this.k=e,this.x=t,this.y=n}yE.prototype={constructor:yE,scale:function(e){return e===1?this:new yE(this.k*e,this.x,this.y)},translate:function(e,t){return e===0&t===0?this:new yE(this.k,this.x+this.k*e,this.y+this.k*t)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return`translate(`+this.x+`,`+this.y+`) scale(`+this.k+`)`}};var bE=new yE(1,0,0);xE.prototype=yE.prototype;function xE(e){for(;!e.__zoom;)if(!(e=e.parentNode))return bE;return e.__zoom}function SE(e){e.stopImmediatePropagation()}function CE(e){e.preventDefault(),e.stopImmediatePropagation()}function wE(e){return(!e.ctrlKey||e.type===`wheel`)&&!e.button}function TE(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e,e.hasAttribute(`viewBox`)?(e=e.viewBox.baseVal,[[e.x,e.y],[e.x+e.width,e.y+e.height]]):[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]):[[0,0],[e.clientWidth,e.clientHeight]]}function EE(){return this.__zoom||bE}function DE(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function OE(){return navigator.maxTouchPoints||`ontouchstart`in this}function kE(e,t,n){var r=e.invertX(t[0][0])-n[0][0],i=e.invertX(t[1][0])-n[1][0],a=e.invertY(t[0][1])-n[0][1],o=e.invertY(t[1][1])-n[1][1];return e.translate(i>r?(r+i)/2:Math.min(0,r)||Math.max(0,i),o>a?(a+o)/2:Math.min(0,a)||Math.max(0,o))}function AE(){var e=wE,t=TE,n=kE,r=DE,i=OE,a=[0,1/0],o=[[-1/0,-1/0],[1/0,1/0]],s=250,c=jw,l=Xb(`start`,`zoom`,`end`),u,d,f,p=500,m=150,h=0,g=10;function _(e){e.property(`__zoom`,EE).on(`wheel.zoom`,w,{passive:!1}).on(`mousedown.zoom`,T).on(`dblclick.zoom`,E).filter(i).on(`touchstart.zoom`,D).on(`touchmove.zoom`,O).on(`touchend.zoom touchcancel.zoom`,k).style(`-webkit-tap-highlight-color`,`rgba(0,0,0,0)`)}_.transform=function(e,t,n,r){var i=e.selection?e.selection():e;i.property(`__zoom`,EE),e===i?i.interrupt().each(function(){S(this,arguments).event(r).start().zoom(null,typeof t==`function`?t.apply(this,arguments):t).end()}):x(e,t,n,r)},_.scaleBy=function(e,t,n,r){_.scaleTo(e,function(){return this.__zoom.k*(typeof t==`function`?t.apply(this,arguments):t)},n,r)},_.scaleTo=function(e,r,i,a){_.transform(e,function(){var e=t.apply(this,arguments),a=this.__zoom,s=i==null?b(e):typeof i==`function`?i.apply(this,arguments):i,c=a.invert(s),l=typeof r==`function`?r.apply(this,arguments):r;return n(y(v(a,l),s,c),e,o)},i,a)},_.translateBy=function(e,r,i,a){_.transform(e,function(){return n(this.__zoom.translate(typeof r==`function`?r.apply(this,arguments):r,typeof i==`function`?i.apply(this,arguments):i),t.apply(this,arguments),o)},null,a)},_.translateTo=function(e,r,i,a,s){_.transform(e,function(){var e=t.apply(this,arguments),s=this.__zoom,c=a==null?b(e):typeof a==`function`?a.apply(this,arguments):a;return n(bE.translate(c[0],c[1]).scale(s.k).translate(typeof r==`function`?-r.apply(this,arguments):-r,typeof i==`function`?-i.apply(this,arguments):-i),e,o)},a,s)};function v(e,t){return t=Math.max(a[0],Math.min(a[1],t)),t===e.k?e:new yE(t,e.x,e.y)}function y(e,t,n){var r=t[0]-n[0]*e.k,i=t[1]-n[1]*e.k;return r===e.x&&i===e.y?e:new yE(e.k,r,i)}function b(e){return[(+e[0][0]+ +e[1][0])/2,(+e[0][1]+ +e[1][1])/2]}function x(e,n,r,i){e.on(`start.zoom`,function(){S(this,arguments).event(i).start()}).on(`interrupt.zoom end.zoom`,function(){S(this,arguments).event(i).end()}).tween(`zoom`,function(){var e=this,a=arguments,o=S(e,a).event(i),s=t.apply(e,a),l=r==null?b(s):typeof r==`function`?r.apply(e,a):r,u=Math.max(s[1][0]-s[0][0],s[1][1]-s[0][1]),d=e.__zoom,f=typeof n==`function`?n.apply(e,a):n,p=c(d.invert(l).concat(u/d.k),f.invert(l).concat(u/f.k));return function(e){if(e===1)e=f;else{var t=p(e),n=u/t[2];e=new yE(n,l[0]-t[0]*n,l[1]-t[1]*n)}o.zoom(null,e)}})}function S(e,t,n){return!n&&e.__zooming||new C(e,t)}function C(e,n){this.that=e,this.args=n,this.active=0,this.sourceEvent=null,this.extent=t.apply(e,n),this.taps=0}C.prototype={event:function(e){return e&&(this.sourceEvent=e),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit(`start`)),this},zoom:function(e,t){return this.mouse&&e!==`mouse`&&(this.mouse[1]=t.invert(this.mouse[0])),this.touch0&&e!==`touch`&&(this.touch0[1]=t.invert(this.touch0[0])),this.touch1&&e!==`touch`&&(this.touch1[1]=t.invert(this.touch1[0])),this.that.__zoom=t,this.emit(`zoom`),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit(`end`)),this},emit:function(e){var t=$S(this.that).datum();l.call(e,this.that,new vE(e,{sourceEvent:this.sourceEvent,target:_,type:e,transform:this.that.__zoom,dispatch:l}),t)}};function w(t,...i){if(!e.apply(this,arguments))return;var s=S(this,i).event(t),c=this.__zoom,l=Math.max(a[0],Math.min(a[1],c.k*2**r.apply(this,arguments))),u=tC(t);if(s.wheel)(s.mouse[0][0]!==u[0]||s.mouse[0][1]!==u[1])&&(s.mouse[1]=c.invert(s.mouse[0]=u)),clearTimeout(s.wheel);else if(c.k===l)return;else s.mouse=[u,c.invert(u)],oT(this),s.start();CE(t),s.wheel=setTimeout(d,m),s.zoom(`mouse`,n(y(v(c,l),s.mouse[0],s.mouse[1]),s.extent,o));function d(){s.wheel=null,s.end()}}function T(t,...r){if(f||!e.apply(this,arguments))return;var i=t.currentTarget,a=S(this,r,!0).event(t),s=$S(t.view).on(`mousemove.zoom`,d,!0).on(`mouseup.zoom`,p,!0),c=tC(t,i),l=t.clientX,u=t.clientY;oC(t.view),SE(t),a.mouse=[c,this.__zoom.invert(c)],oT(this),a.start();function d(e){if(CE(e),!a.moved){var t=e.clientX-l,r=e.clientY-u;a.moved=t*t+r*r>h}a.event(e).zoom(`mouse`,n(y(a.that.__zoom,a.mouse[0]=tC(e,i),a.mouse[1]),a.extent,o))}function p(e){s.on(`mousemove.zoom mouseup.zoom`,null),sC(e.view,a.moved),CE(e),a.event(e).end()}}function E(r,...i){if(e.apply(this,arguments)){var a=this.__zoom,c=tC(r.changedTouches?r.changedTouches[0]:r,this),l=a.invert(c),u=a.k*(r.shiftKey?.5:2),d=n(y(v(a,u),c,l),t.apply(this,i),o);CE(r),s>0?$S(this).transition().duration(s).call(x,d,c,r):$S(this).call(_.transform,d,c,r)}}function D(t,...n){if(e.apply(this,arguments)){var r=t.touches,i=r.length,a=S(this,n,t.changedTouches.length===i).event(t),o,s,c,l;for(SE(t),s=0;s`Seems like you have not used ${e===`svelte`?`SvelteFlowProvider`:`ReactFlowProvider`} as an ancestor. Help: https://${e}flow.dev/error#001`,error002:()=>`It looks like you've created a new nodeTypes or edgeTypes object. If this wasn't on purpose please define the nodeTypes/edgeTypes outside of the component or memoize them.`,error003:e=>`Node type "${e}" not found. Using fallback type "default".`,error004:()=>`The parent container needs a width and a height to render the graph.`,error005:()=>`Only child nodes can use a parent extent.`,error006:()=>`Can't create edge. An edge needs a source and a target.`,error007:e=>`The old edge with id=${e} does not exist.`,error009:e=>`Marker type "${e}" doesn't exist.`,error008:(e,{id:t,sourceHandle:n,targetHandle:r})=>`Couldn't create edge for ${e} handle id: "${e===`source`?n:r}", edge id: ${t}.`,error010:()=>`Handle: No node id found. Make sure to only use a Handle inside a custom Node.`,error011:e=>`Edge type "${e}" not found. Using fallback type "default".`,error012:e=>`Node with id "${e}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,error013:(e=`react`)=>`It seems that you haven't loaded the styles. Please import '@xyflow/${e}/dist/style.css' or base.css to make sure everything is working properly.`,error014:()=>`useNodeConnections: No node ID found. Call useNodeConnections inside a custom Node or provide a node ID.`,error015:()=>`It seems that you are trying to drag a node that is not initialized. Please use onNodesChange as explained in the docs.`,error016:e=>`Edge with id "${e}" does not exist, it may have been removed. This can happen when an edge is deleted before the "onEdgeClick" handler is called.`},ME=[[-1/0,-1/0],[1/0,1/0]],NE=[`Enter`,` `,`Escape`],PE={"node.a11yDescription.default":`Press enter or space to select a node. Press delete to remove it and escape to cancel.`,"node.a11yDescription.keyboardDisabled":`Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.`,"node.a11yDescription.ariaLiveMessage":({direction:e,x:t,y:n})=>`Moved selected node ${e}. New position, x: ${t}, y: ${n}`,"edge.a11yDescription.default":`Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.`,"controls.ariaLabel":`Control Panel`,"controls.zoomIn.ariaLabel":`Zoom In`,"controls.zoomOut.ariaLabel":`Zoom Out`,"controls.fitView.ariaLabel":`Fit View`,"controls.interactive.ariaLabel":`Toggle Interactivity`,"minimap.ariaLabel":`Mini Map`,"handle.ariaLabel":`Handle`},FE;(function(e){e.Strict=`strict`,e.Loose=`loose`})(FE||={});var IE;(function(e){e.Free=`free`,e.Vertical=`vertical`,e.Horizontal=`horizontal`})(IE||={});var LE;(function(e){e.Partial=`partial`,e.Full=`full`})(LE||={});var RE={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null,pointer:null},zE;(function(e){e.Bezier=`default`,e.Straight=`straight`,e.Step=`step`,e.SmoothStep=`smoothstep`,e.SimpleBezier=`simplebezier`})(zE||={});var BE;(function(e){e.Arrow=`arrow`,e.ArrowClosed=`arrowclosed`})(BE||={});var $;(function(e){e.Left=`left`,e.Top=`top`,e.Right=`right`,e.Bottom=`bottom`})($||={});var VE={[$.Left]:$.Right,[$.Right]:$.Left,[$.Top]:$.Bottom,[$.Bottom]:$.Top},HE=e=>!!e&&typeof e==`object`&&`id`in e&&`source`in e&&`target`in e,UE=e=>!!e&&typeof e==`object`&&`id`in e&&`position`in e&&!(`source`in e)&&!(`target`in e),WE=e=>!!e&&typeof e==`object`&&`id`in e&&`internals`in e&&!(`source`in e)&&!(`target`in e),GE=(e,t=[0,0])=>{let{width:n,height:r}=TD(e),i=e.origin??t,a=n*i[0],o=r*i[1];return{x:e.position.x-a,y:e.position.y-o}},KE=(e,t={nodeOrigin:[0,0]})=>{if(e.length===0)return{x:0,y:0,width:0,height:0};let n=!1,r=e.reduce((e,r)=>{let i=typeof r==`string`,a=!t.nodeLookup&&!i?r:void 0;return t.nodeLookup&&(a=i?t.nodeLookup.get(r):WE(r)?r:t.nodeLookup.get(r.id)),a?(n=!0,aD(e,lD(a,t.nodeOrigin))):e},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return n?sD(r):{x:0,y:0,width:0,height:0}},qE=(e,t={})=>{let n={x:1/0,y:1/0,x2:-1/0,y2:-1/0},r=!1;return e.forEach(e=>{(t.filter===void 0||t.filter(e))&&(n=aD(n,lD(e)),r=!0)}),r?sD(n):{x:0,y:0,width:0,height:0}},JE=(e,t,[n,r,i]=[0,0,1],a=!1,o=!1)=>{let s=(t.x-n)/i,c=(t.y-r)/i,l=t.width/i,u=t.height/i,d=[];for(let t of e.values()){let{measured:e,selectable:n=!0,hidden:r=!1}=t;if(o&&!n||r)continue;let i=e.width??t.width??t.initialWidth??0,f=e.height??t.height??t.initialHeight??0,{x:p,y:m}=t.internals.positionAbsolute,h=dD(s,c,l,u,p,m,i,f),g=i*f,_=a&&h>0;(!t.internals.handleBounds||_||h>=g||t.dragging)&&d.push(t)}return d},YE=(e,t)=>{let n=new Set;return e.forEach(e=>{n.add(e.id)}),t.filter(e=>n.has(e.source)||n.has(e.target))};function XE(e,t){let n=new Map,r=t?.nodes?new Set(t.nodes.map(e=>e.id)):null;return e.forEach(e=>{let i;if(t?.includeHiddenNodes){let{width:t,height:n}=TD(e);i=t>0&&n>0}else i=!!(e.measured.width&&e.measured.height&&!e.hidden);i&&(!r||r.has(e.id))&&n.set(e.id,e)}),n}async function ZE({nodes:e,width:t,height:n,panZoom:r,minZoom:i,maxZoom:a},o){if(e.size===0)return!0;let s=SD(qE(XE(e,o)),t,n,o?.minZoom??i,o?.maxZoom??a,o?.padding??.1);return await r.setViewport(s,{duration:o?.duration,ease:o?.ease,interpolate:o?.interpolate}),!0}function QE({nodeId:e,nextPosition:t,nodeLookup:n,nodeOrigin:r=[0,0],nodeExtent:i,onError:a}){let o=n.get(e),s=o.parentId?n.get(o.parentId):void 0,{x:c,y:l}=s?s.internals.positionAbsolute:{x:0,y:0},u=o.origin??r,d=o.extent||i;if(o.extent===`parent`&&!o.expandParent){if(!s)a?.(`005`,jE.error005());else{let{width:e,height:t}=TD(s);e&&t&&(d=[[c,l],[c+e,l+t]])}}else s&&wD(o.extent)&&(d=[[o.extent[0][0]+c,o.extent[0][1]+l],[o.extent[1][0]+c,o.extent[1][1]+l]]);let f=wD(d)?tD(t,d,o.measured):t;return(o.measured.width===void 0||o.measured.height===void 0)&&a?.(`015`,jE.error015()),{position:{x:f.x-c+(o.measured.width??0)*u[0],y:f.y-l+(o.measured.height??0)*u[1]},positionAbsolute:f}}async function $E({nodesToRemove:e=[],edgesToRemove:t=[],nodes:n,edges:r,onBeforeDelete:i}){let a=new Set(e.map(e=>e.id)),o=[];for(let e of n){if(e.deletable===!1)continue;let t=a.has(e.id),n=!t&&e.parentId&&o.find(t=>t.id===e.parentId);(t||n)&&o.push(e)}let s=new Set(t.map(e=>e.id)),c=r.filter(e=>e.deletable!==!1),l=YE(o,c);for(let e of c)s.has(e.id)&&!l.find(t=>t.id===e.id)&&l.push(e);if(!i)return{edges:l,nodes:o};let u=await i({nodes:o,edges:l});return typeof u==`boolean`?u?{edges:l,nodes:o}:{edges:[],nodes:[]}:u}var eD=(e,t=0,n=1)=>Math.min(Math.max(e,t),n),tD=(e={x:0,y:0},t,n)=>({x:eD(e.x,t[0][0],t[1][0]-(n?.width??0)),y:eD(e.y,t[0][1],t[1][1]-(n?.height??0))});function nD(e,t,n){let{width:r,height:i}=TD(n),{x:a,y:o}=n.internals.positionAbsolute;return tD(e,[[a,o],[a+r,o+i]],t)}var rD=(e,t,n)=>en?-eD(Math.abs(e-n),1,t)/t:0,iD=(e,t,n=15,r=40)=>[rD(e.x,r,t.width-r)*n,rD(e.y,r,t.height-r)*n],aD=(e,t)=>({x:Math.min(e.x,t.x),y:Math.min(e.y,t.y),x2:Math.max(e.x2,t.x2),y2:Math.max(e.y2,t.y2)}),oD=({x:e,y:t,width:n,height:r})=>({x:e,y:t,x2:e+n,y2:t+r}),sD=({x:e,y:t,x2:n,y2:r})=>({x:e,y:t,width:n-e,height:r-t}),cD=(e,t=[0,0])=>{let{x:n,y:r}=WE(e)?e.internals.positionAbsolute:GE(e,t);return{x:n,y:r,width:e.measured?.width??e.width??e.initialWidth??0,height:e.measured?.height??e.height??e.initialHeight??0}},lD=(e,t=[0,0])=>{let{x:n,y:r}=WE(e)?e.internals.positionAbsolute:GE(e,t);return{x:n,y:r,x2:n+(e.measured?.width??e.width??e.initialWidth??0),y2:r+(e.measured?.height??e.height??e.initialHeight??0)}},uD=(e,t)=>sD(aD(oD(e),oD(t))),dD=(e,t,n,r,i,a,o,s)=>{let c=Math.max(0,Math.min(e+n,i+o)-Math.max(e,i)),l=Math.max(0,Math.min(t+r,a+s)-Math.max(t,a));return Math.ceil(c*l)},fD=(e,t)=>dD(e.x,e.y,e.width,e.height,t.x,t.y,t.width,t.height),pD=e=>mD(e.width)&&mD(e.height)&&mD(e.x)&&mD(e.y),mD=e=>!isNaN(e)&&isFinite(e),hD=(e,t)=>(e,t)=>{},gD=(e,t=[1,1])=>({x:t[0]*Math.round(e.x/t[0]),y:t[1]*Math.round(e.y/t[1])}),_D=({x:e,y:t},[n,r,i],a=!1,o=[1,1])=>{let s={x:(e-n)/i,y:(t-r)/i};return a?gD(s,o):s},vD=({x:e,y:t},[n,r,i])=>({x:e*i+n,y:t*i+r});function yD(e,t){if(typeof e==`number`)return Math.floor((t-t/(1+e))*.5);if(typeof e==`string`&&e.endsWith(`px`)){let t=parseFloat(e);if(!Number.isNaN(t))return Math.floor(t)}if(typeof e==`string`&&e.endsWith(`%`)){let n=parseFloat(e);if(!Number.isNaN(n))return Math.floor(t*n*.01)}return console.error(`The padding value "${e}" is invalid. Please provide a number or a string with a valid unit (px or %).`),0}function bD(e,t,n){if(typeof e==`string`||typeof e==`number`){let r=yD(e,n),i=yD(e,t);return{top:r,right:i,bottom:r,left:i,x:i*2,y:r*2}}if(typeof e==`object`){let r=yD(e.top??e.y??0,n),i=yD(e.bottom??e.y??0,n),a=yD(e.left??e.x??0,t),o=yD(e.right??e.x??0,t);return{top:r,right:o,bottom:i,left:a,x:a+o,y:r+i}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}function xD(e,t,n,r,i,a){let{x:o,y:s}=vD(e,[t,n,r]),{x:c,y:l}=vD({x:e.x+e.width,y:e.y+e.height},[t,n,r]),u=i-c,d=a-l;return{left:Math.floor(o),top:Math.floor(s),right:Math.floor(u),bottom:Math.floor(d)}}var SD=(e,t,n,r,i,a)=>{let o=bD(a,t,n),s=(t-o.x)/e.width,c=(n-o.y)/e.height,l=eD(Math.min(s,c),r,i),u=e.x+e.width/2,d=e.y+e.height/2,f=t/2-u*l,p=n/2-d*l,m=xD(e,f,p,l,t,n),h={left:Math.min(m.left-o.left,0),top:Math.min(m.top-o.top,0),right:Math.min(m.right-o.right,0),bottom:Math.min(m.bottom-o.bottom,0)};return{x:f-h.left+h.right,y:p-h.top+h.bottom,zoom:l}},CD=()=>typeof navigator<`u`&&navigator?.userAgent?.indexOf(`Mac`)>=0;function wD(e){return e!=null&&e!==`parent`}function TD(e){return{width:e.measured?.width??e.width??e.initialWidth??0,height:e.measured?.height??e.height??e.initialHeight??0}}function ED(e){return(e.measured?.width??e.width??e.initialWidth)!==void 0&&(e.measured?.height??e.height??e.initialHeight)!==void 0}function DD(e,t={width:0,height:0},n,r,i){let a={...e},o=r.get(n);if(o){let e=o.origin||i;a.x+=o.internals.positionAbsolute.x-(t.width??0)*e[0],a.y+=o.internals.positionAbsolute.y-(t.height??0)*e[1]}return a}function OD(e,t){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}function kD(){let e,t;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}function AD(e){return{...PE,...e||{}}}function jD(e){return e===null?null:e?`valid`:`invalid`}function MD(e,{snapGrid:t=[0,0],snapToGrid:n=!1,transform:r,containerBounds:i}){let{x:a,y:o}=RD(e),s=_D({x:a-(i?.left??0),y:o-(i?.top??0)},r),{x:c,y:l}=n?gD(s,t):s;return{xSnapped:c,ySnapped:l,...s}}var ND=e=>({width:e.offsetWidth,height:e.offsetHeight}),PD=e=>e?.getRootNode?.()||window?.document,FD=[`INPUT`,`SELECT`,`TEXTAREA`];function ID(e){let t=e.composedPath?.()?.[0]||e.target;return t?.nodeType===1?FD.includes(t.nodeName)||t.hasAttribute(`contenteditable`)||!!t.closest(`.nokey`):!1}var LD=e=>`clientX`in e,RD=(e,t)=>{let n=LD(e),r=n?e.clientX:e.touches?.[0].clientX,i=n?e.clientY:e.touches?.[0].clientY;return{x:r-(t?.left??0),y:i-(t?.top??0)}},zD=(e,t,n,r,i)=>{let a=t.querySelectorAll(`.${e}`);return!a||!a.length?null:Array.from(a).map(t=>{let a=t.getBoundingClientRect();return{id:t.getAttribute(`data-handleid`),type:e,nodeId:i,position:t.getAttribute(`data-handlepos`),x:(a.left-n.left)/r,y:(a.top-n.top)/r,...ND(t)}})};function BD({sourceX:e,sourceY:t,targetX:n,targetY:r,sourceControlX:i,sourceControlY:a,targetControlX:o,targetControlY:s}){let c=e*.125+i*.375+o*.375+n*.125,l=t*.125+a*.375+s*.375+r*.125;return[c,l,Math.abs(c-e),Math.abs(l-t)]}function VD(e,t){return e>=0?.5*e:t*25*Math.sqrt(-e)}function HD({pos:e,x1:t,y1:n,x2:r,y2:i,c:a}){switch(e){case $.Left:return[t-VD(t-r,a),n];case $.Right:return[t+VD(r-t,a),n];case $.Top:return[t,n-VD(n-i,a)];case $.Bottom:return[t,n+VD(i-n,a)]}}function UD({sourceX:e,sourceY:t,sourcePosition:n=$.Bottom,targetX:r,targetY:i,targetPosition:a=$.Top,curvature:o=.25}){let[s,c]=HD({pos:n,x1:e,y1:t,x2:r,y2:i,c:o}),[l,u]=HD({pos:a,x1:r,y1:i,x2:e,y2:t,c:o}),[d,f,p,m]=BD({sourceX:e,sourceY:t,targetX:r,targetY:i,sourceControlX:s,sourceControlY:c,targetControlX:l,targetControlY:u});return[`M${e},${t} C${s},${c} ${l},${u} ${r},${i}`,d,f,p,m]}function WD({sourceX:e,sourceY:t,targetX:n,targetY:r}){let i=Math.abs(n-e)/2,a=n0}var qD=({source:e,sourceHandle:t,target:n,targetHandle:r})=>`xy-edge__${e}${t||``}-${n}${r||``}`,JD=(e,t)=>t.some(t=>t.source===e.source&&t.target===e.target&&(t.sourceHandle===e.sourceHandle||!t.sourceHandle&&!e.sourceHandle)&&(t.targetHandle===e.targetHandle||!t.targetHandle&&!e.targetHandle)),YD=(e,t,n={})=>{if(!e.source||!e.target)return n.onError?.(`006`,jE.error006()),t;let r=n.getEdgeId||qD,i;return i=HE(e)?{...e}:{...e,id:r(e)},JD(i,t)?t:(i.sourceHandle===null&&delete i.sourceHandle,i.targetHandle===null&&delete i.targetHandle,t.concat(i))};function XD({sourceX:e,sourceY:t,targetX:n,targetY:r}){let[i,a,o,s]=WD({sourceX:e,sourceY:t,targetX:n,targetY:r});return[`M ${e},${t}L ${n},${r}`,i,a,o,s]}var ZD={[$.Left]:{x:-1,y:0},[$.Right]:{x:1,y:0},[$.Top]:{x:0,y:-1},[$.Bottom]:{x:0,y:1}},QD=({source:e,sourcePosition:t=$.Bottom,target:n})=>t===$.Left||t===$.Right?e.xMath.sqrt((t.x-e.x)**2+(t.y-e.y)**2);function eO({source:e,sourcePosition:t=$.Bottom,target:n,targetPosition:r=$.Top,center:i,offset:a,stepPosition:o}){let s=ZD[t],c=ZD[r],l={x:e.x+s.x*a,y:e.y+s.y*a},u={x:n.x+c.x*a,y:n.y+c.y*a},d=QD({source:l,sourcePosition:t,target:u}),f=d.x===0?`y`:`x`,p=d[f],m=[],h,g,_={x:0,y:0},v={x:0,y:0},[,,y,b]=WD({sourceX:e.x,sourceY:e.y,targetX:n.x,targetY:n.y});if(s[f]*c[f]===-1){f===`x`?(h=i.x??l.x+(u.x-l.x)*o,g=i.y??(l.y+u.y)/2):(h=i.x??(l.x+u.x)/2,g=i.y??l.y+(u.y-l.y)*o);let e=[{x:h,y:l.y},{x:h,y:u.y}],t=[{x:l.x,y:g},{x:u.x,y:g}];m=s[f]===p?f===`x`?e:t:f===`x`?t:e}else{let i=[{x:l.x,y:u.y}],o=[{x:u.x,y:l.y}];if(m=f===`x`?s.x===p?o:i:s.y===p?i:o,t===r){let t=Math.abs(e[f]-n[f]);if(t<=a){let r=Math.min(a-1,a-t);s[f]===p?_[f]=(l[f]>e[f]?-1:1)*r:v[f]=(u[f]>n[f]?-1:1)*r}}if(t!==r){let e=f===`x`?`y`:`x`,t=s[f]===c[e],n=l[e]>u[e],r=l[e]=Math.max(Math.abs(d.y-m[0].y),Math.abs(y.y-m[0].y))?(h=(d.x+y.x)/2,g=m[0].y):(h=m[0].x,g=(d.y+y.y)/2)}let x={x:l.x+_.x,y:l.y+_.y},S={x:u.x+v.x,y:u.y+v.y};return[[e,...x.x!==m[0].x||x.y!==m[0].y?[x]:[],...m,...S.x!==m[m.length-1].x||S.y!==m[m.length-1].y?[S]:[],n],h,g,y,b]}function tO(e,t,n,r){let i=Math.min($D(e,t)/2,$D(t,n)/2,r),{x:a,y:o}=t;if(e.x===a&&a===n.x||e.y===o&&o===n.y)return`L${a} ${o}`;if(e.y===o){let t=e.xe.id===t):e[0])||null}function cO(e,t){return e?typeof e==`string`?e:`${t?`${t}__`:``}${Object.keys(e).sort().map(t=>`${t}=${e[t]}`).join(`&`)}`:``}function lO(e,{id:t,defaultColor:n,defaultMarkerStart:r,defaultMarkerEnd:i}){let a=new Set;return e.reduce((e,o)=>([o.markerStart||r,o.markerEnd||i].forEach(r=>{if(r&&typeof r==`object`){let i=cO(r,t);a.has(i)||(e.push({id:i,color:r.color||n,...r}),a.add(i))}}),e),[]).sort((e,t)=>e.id.localeCompare(t.id))}var uO=1e3,dO=10,fO={nodeOrigin:[0,0],nodeExtent:ME,elevateNodesOnSelect:!0,zIndexMode:`basic`,defaults:{}},pO={...fO,checkEquality:!0};function mO(e,t){let n={...e};for(let e in t)t[e]!==void 0&&(n[e]=t[e]);return n}function hO(e,t,n){let r=mO(fO,n);for(let n of e.values())if(n.parentId)bO(n,e,t,r);else{let e=tD(GE(n,r.nodeOrigin),wD(n.extent)?n.extent:r.nodeExtent,TD(n));n.internals.positionAbsolute=e}}function gO(e,t){if(!e.handles)return e.measured?t?.internals.handleBounds:void 0;let n=[],r=[];for(let t of e.handles){let i={id:t.id,width:t.width??1,height:t.height??1,nodeId:e.id,x:t.x,y:t.y,position:t.position,type:t.type};t.type===`source`?n.push(i):t.type===`target`&&r.push(i)}return{source:n,target:r}}function _O(e){return e===`manual`}function vO(e,t,n,r={}){let i=mO(pO,r),a={i:0},o=new Map(t),s=i?.elevateNodesOnSelect&&!_O(i.zIndexMode)?uO:0,c=e.length>0,l=!1;t.clear(),n.clear();for(let u of e){let e=o.get(u.id);if(i.checkEquality&&u===e?.internals.userNode)t.set(u.id,e);else{let n=tD(GE(u,i.nodeOrigin),wD(u.extent)?u.extent:i.nodeExtent,TD(u));e={...i.defaults,...u,measured:{width:u.measured?.width,height:u.measured?.height},internals:{positionAbsolute:n,handleBounds:gO(u,e),z:xO(u,s,i.zIndexMode),userNode:u}},t.set(u.id,e)}(e.measured===void 0||e.measured.width===void 0||e.measured.height===void 0)&&!e.hidden&&(c=!1),u.parentId&&bO(e,t,n,r,a),l||=u.selected??!1}return{nodesInitialized:c,hasSelectedNodes:l}}function yO(e,t){if(!e.parentId)return;let n=t.get(e.parentId);n?n.set(e.id,e):t.set(e.parentId,new Map([[e.id,e]]))}function bO(e,t,n,r,i){let{elevateNodesOnSelect:a,nodeOrigin:o,nodeExtent:s,zIndexMode:c}=mO(fO,r),l=e.parentId,u=t.get(l);if(!u){console.warn(`Parent node ${l} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);return}yO(e,n),i&&!u.parentId&&u.internals.rootParentIndex===void 0&&c===`auto`&&(u.internals.rootParentIndex=++i.i,u.internals.z=u.internals.z+i.i*dO),i&&u.internals.rootParentIndex!==void 0&&(i.i=u.internals.rootParentIndex);let{x:d,y:f,z:p}=SO(e,u,o,s,a&&!_O(c)?uO:0,c),{positionAbsolute:m}=e.internals,h=d!==m.x||f!==m.y;(h||p!==e.internals.z)&&t.set(e.id,{...e,internals:{...e.internals,positionAbsolute:h?{x:d,y:f}:m,z:p}})}function xO(e,t,n){let r=mD(e.zIndex)?e.zIndex:0;return _O(n)?r:r+(e.selected?t:0)}function SO(e,t,n,r,i,a){let{x:o,y:s}=t.internals.positionAbsolute,c=TD(e),l=GE(e,n),u=wD(e.extent)?tD(l,e.extent,c):l,d=tD({x:o+u.x,y:s+u.y},r,c);e.extent===`parent`&&(d=nD(d,c,t));let f=xO(e,i,a),p=t.internals.z??0;return{x:d.x,y:d.y,z:p>=f?p+1:f}}function CO(e,t,n,r=[0,0]){let i=[],a=new Map;for(let n of e){let e=t.get(n.parentId);if(!e)continue;let r=uD(a.get(n.parentId)?.expandedRect??cD(e),n.rect);a.set(n.parentId,{expandedRect:r,parent:e})}return a.size>0&&a.forEach(({expandedRect:t,parent:a},o)=>{let s=a.internals.positionAbsolute,c=TD(a),l=a.origin??r,u=t.x0||d>0||m||h)&&(i.push({id:o,type:`position`,position:{x:a.position.x-u+m,y:a.position.y-d+h}}),n.get(o)?.forEach(t=>{e.some(e=>e.id===t.id)||i.push({id:t.id,type:`position`,position:{x:t.position.x+u,y:t.position.y+d}})})),(c.width0){let e=CO(f,t,n,i);l.push(...e)}return{changes:l,updatedInternals:c}}async function TO({delta:e,panZoom:t,transform:n,translateExtent:r,width:i,height:a}){if(!t||!e.x&&!e.y)return!1;let o=await t.setViewportConstrained({x:n[0]+e.x,y:n[1]+e.y,zoom:n[2]},[[0,0],[i,a]],r);return!!o&&(o.x!==n[0]||o.y!==n[1]||o.k!==n[2])}function EO(e,t,n,r,i,a){let o=i,s=r.get(o)||new Map;r.set(o,s.set(n,t)),o=`${i}-${e}`;let c=r.get(o)||new Map;if(r.set(o,c.set(n,t)),a){o=`${i}-${e}-${a}`;let s=r.get(o)||new Map;r.set(o,s.set(n,t))}}function DO(e,t,n){e.clear(),t.clear();for(let r of n){let{source:n,target:i,sourceHandle:a=null,targetHandle:o=null}=r,s={edgeId:r.id,source:n,target:i,sourceHandle:a,targetHandle:o},c=`${n}-${a}--${i}-${o}`;EO(`source`,s,`${i}-${o}--${n}-${a}`,e,n,a),EO(`target`,s,c,e,i,o),t.set(r.id,r)}}function OO(e,t){if(!e.parentId)return!1;let n=t.get(e.parentId);return n?n.selected?!0:OO(n,t):!1}function kO(e,t,n){let r=e;do{if(r?.matches?.(t))return!0;if(r===n)return!1;r=r?.parentElement}while(r);return!1}function AO(e,t,n,r){let i=new Map;for(let[a,o]of e)if((o.selected||o.id===r)&&(!o.parentId||!OO(o,e))&&(o.draggable||t&&o.draggable===void 0)){let t=e.get(a);t&&i.set(a,{id:a,position:t.position||{x:0,y:0},distance:{x:n.x-t.internals.positionAbsolute.x,y:n.y-t.internals.positionAbsolute.y},extent:t.extent,parentId:t.parentId,origin:t.origin,expandParent:t.expandParent,internals:{positionAbsolute:t.internals.positionAbsolute||{x:0,y:0}},measured:{width:t.measured.width??0,height:t.measured.height??0}})}return i}function jO({nodeId:e,dragItems:t,nodeLookup:n,dragging:r=!0}){let i=[];for(let[e,a]of t){let t=n.get(e)?.internals.userNode;t&&i.push({...t,position:a.position,dragging:r})}if(!e)return[i[0],i];let a=n.get(e)?.internals.userNode;return[a?{...a,position:t.get(e)?.position||a.position,dragging:r}:i[0],i]}function MO({dragItems:e,snapGrid:t,x:n,y:r}){let i=e.values().next().value;if(!i)return null;let a={x:n-i.distance.x,y:r-i.distance.y},o=gD(a,t);return{x:o.x-a.x,y:o.y-a.y}}function NO({onNodeMouseDown:e,getStoreItems:t,onDragStart:n,onDrag:r,onDragStop:i}){let a={x:null,y:null},o=0,s=new Map,c=!1,l={x:0,y:0},u=null,d=!1,f=null,p=!1,m=!1,h=null;function g({noDragClassName:g,handleSelector:_,domNode:v,isSelectable:y,nodeId:b,nodeClickDistance:x=0}){f=$S(v);function S({x:e,y:n}){let{nodeLookup:i,nodeExtent:o,snapGrid:c,snapToGrid:l,nodeOrigin:u,onNodeDrag:d,onSelectionDrag:f,onError:p,updateNodePositions:g}=t();a={x:e,y:n};let _=!1,v=s.size>1,y=v&&o?oD(qE(s)):null,x=v&&l?MO({dragItems:s,snapGrid:c,x:e,y:n}):null;for(let[t,r]of s){if(!i.has(t))continue;let a={x:e-r.distance.x,y:n-r.distance.y};l&&(a=x?{x:Math.round(a.x+x.x),y:Math.round(a.y+x.y)}:gD(a,c));let s=null;if(v&&o&&!r.extent&&y){let{positionAbsolute:e}=r.internals,t=e.x-y.x+o[0][0],n=e.x+r.measured.width-y.x2+o[1][0],i=e.y-y.y+o[0][1],a=e.y+r.measured.height-y.y2+o[1][1];s=[[t,i],[n,a]]}let{position:d,positionAbsolute:f}=QE({nodeId:t,nextPosition:a,nodeLookup:i,nodeExtent:s||o,nodeOrigin:u,onError:p});_=_||r.position.x!==d.x||r.position.y!==d.y,r.position=d,r.internals.positionAbsolute=f}if(m||=_,_&&(g(s,!0),h&&(r||d||!b&&f))){let[e,t]=jO({nodeId:b,dragItems:s,nodeLookup:i});r?.(h,s,e,t),d?.(h,e,t),b||f?.(h,t)}}async function C(){if(!u)return;let{transform:e,panBy:n,autoPanSpeed:r,autoPanOnNodeDrag:i}=t();if(!i){c=!1,cancelAnimationFrame(o);return}let[s,d]=iD(l,u,r);(s!==0||d!==0)&&(a.x=(a.x??0)-s/e[2],a.y=(a.y??0)-d/e[2],await n({x:s,y:d})&&S(a)),o=requestAnimationFrame(C)}function w(r){let{nodeLookup:i,multiSelectionActive:o,nodesDraggable:c,transform:l,snapGrid:f,snapToGrid:p,selectNodesOnDrag:m,onNodeDragStart:h,onSelectionDragStart:g,unselectNodesAndEdges:_}=t();d=!0,(!m||!y)&&!o&&b&&(i.get(b)?.selected||_()),y&&m&&b&&e?.(b);let v=MD(r.sourceEvent,{transform:l,snapGrid:f,snapToGrid:p,containerBounds:u});if(a=v,s=AO(i,c,v,b),s.size>0&&(n||h||!b&&g)){let[e,t]=jO({nodeId:b,dragItems:s,nodeLookup:i});n?.(r.sourceEvent,s,e,t),h?.(r.sourceEvent,e,t),b||g?.(r.sourceEvent,t)}}let T=mC().clickDistance(x).on(`start`,e=>{let{domNode:n,nodeDragThreshold:r,transform:i,snapGrid:o,snapToGrid:s}=t();u=n?.getBoundingClientRect()||null,p=!1,m=!1,h=e.sourceEvent,r===0&&w(e),a=MD(e.sourceEvent,{transform:i,snapGrid:o,snapToGrid:s,containerBounds:u}),l=RD(e.sourceEvent,u)}).on(`drag`,e=>{let{autoPanOnNodeDrag:n,transform:r,snapGrid:i,snapToGrid:o,nodeDragThreshold:f,nodeLookup:m}=t(),g=MD(e.sourceEvent,{transform:r,snapGrid:i,snapToGrid:o,containerBounds:u});if(h=e.sourceEvent,(e.sourceEvent.type===`touchmove`&&e.sourceEvent.touches.length>1||b&&!m.has(b))&&(p=!0),!p){if(!c&&n&&d&&(c=!0,C()),!d){let t=RD(e.sourceEvent,u),n=t.x-l.x,r=t.y-l.y;Math.sqrt(n*n+r*r)>f&&w(e)}(a.x!==g.xSnapped||a.y!==g.ySnapped)&&s&&d&&(l=RD(e.sourceEvent,u),S(g))}}).on(`end`,e=>{if(!d||p){p&&s.size>0&&t().updateNodePositions(s,!1);return}if(c=!1,d=!1,cancelAnimationFrame(o),s.size>0){let{nodeLookup:n,updateNodePositions:r,onNodeDragStop:a,onSelectionDragStop:o}=t();if(m&&=(r(s,!1),!1),i||a||!b&&o){let[t,r]=jO({nodeId:b,dragItems:s,nodeLookup:n,dragging:!1});i?.(e.sourceEvent,s,t,r),a?.(e.sourceEvent,t,r),b||o?.(e.sourceEvent,r)}}}).filter(e=>{let t=e.target;return!e.button&&(!g||!kO(t,`.${g}`,v))&&(!_||kO(t,_,v))});f.call(T)}function _(){f?.on(`.drag`,null)}return{update:g,destroy:_}}function PO(e,t,n){let r=[],i={x:e.x-n,y:e.y-n,width:n*2,height:n*2};for(let e of t.values())fD(i,cD(e))>0&&r.push(e);return r}var FO=250;function IO(e,t,n,r){let i=[],a=1/0,o=PO(e,n,t+FO);for(let n of o){let o=[...n.internals.handleBounds?.source??[],...n.internals.handleBounds?.target??[]];for(let s of o){if(r.nodeId===s.nodeId&&r.type===s.type&&r.id===s.id)continue;let{x:o,y:c}=oO(n,s,s.position,!0),l=Math.sqrt((o-e.x)**2+(c-e.y)**2);l>t||(l1){let e=r.type===`source`?`target`:`source`;return i.find(t=>t.type===e)??i[0]}return i[0]}function LO(e,t,n,r,i,a=!1){let o=r.get(e);if(!o)return null;let s=i===`strict`?o.internals.handleBounds?.[t]:[...o.internals.handleBounds?.source??[],...o.internals.handleBounds?.target??[]],c=(n?s?.find(e=>e.id===n):s?.[0])??null;return c&&a?{...c,...oO(o,c,c.position,!0)}:c}function RO(e,t){return e||(t?.classList.contains(`target`)?`target`:t?.classList.contains(`source`)?`source`:null)}function zO(e,t){let n=null;return t?n=!0:e&&!t&&(n=!1),n}var BO=()=>!0;function VO(e,{connectionMode:t,connectionRadius:n,handleId:r,nodeId:i,edgeUpdaterType:a,isTarget:o,domNode:s,nodeLookup:c,lib:l,autoPanOnConnect:u,flowId:d,panBy:f,cancelConnection:p,onConnectStart:m,onConnect:h,onConnectEnd:g,isValidConnection:_=BO,onReconnectEnd:v,updateConnection:y,getTransform:b,getFromHandle:x,autoPanSpeed:S,dragThreshold:C=1,handleDomNode:w}){let T=PD(e.target),E=0,D,{x:O,y:k}=RD(e),A=RO(a,w),j=s?.getBoundingClientRect(),M=!1;if(!j||!A)return;let N=LO(i,A,r,c,t);if(!N)return;let P=RD(e,j),F=!1,I=null,L=!1,R=null;function z(){if(!u||!j)return;let[e,t]=iD(P,j,S);f({x:e,y:t}),E=requestAnimationFrame(z)}let B={...N,nodeId:i,type:A,position:N.position},ee=c.get(i),V={inProgress:!0,isValid:null,from:oO(ee,B,$.Left,!0),fromHandle:B,fromPosition:B.position,fromNode:ee,to:P,toHandle:null,toPosition:VE[B.position],toNode:null,pointer:P};function H(){M=!0,y(V),m?.(e,{nodeId:i,handleId:r,handleType:A})}C===0&&H();function te(e){if(!M){let{x:t,y:n}=RD(e),r=t-O,i=n-k;if(!(r*r+i*i>C*C))return;H()}if(!x()||!B){ne(e);return}let a=b();P=RD(e,j),D=IO(_D(P,a,!1,[1,1]),n,c,B),F||=(z(),!0);let s=HO(e,{handle:D,connectionMode:t,fromNodeId:i,fromHandleId:r,fromType:o?`target`:`source`,isValidConnection:_,doc:T,lib:l,flowId:d,nodeLookup:c});R=s.handleDomNode,I=s.connection,L=zO(!!D,s.isValid);let u=c.get(i),f=u?oO(u,B,$.Left,!0):V.from,p={...V,from:f,isValid:L,to:s.toHandle&&L?vD({x:s.toHandle.x,y:s.toHandle.y},a):P,toHandle:s.toHandle,toPosition:L&&s.toHandle?s.toHandle.position:VE[B.position],toNode:s.toHandle?c.get(s.toHandle.nodeId):null,pointer:P};y(p),V=p}function ne(e){if(!(`touches`in e&&e.touches.length>0)){if(M){(D||R)&&I&&L&&h?.(I);let{inProgress:t,...n}=V,r={...n,toPosition:V.toHandle?V.toPosition:null};g?.(e,r),a&&v?.(e,r)}p(),cancelAnimationFrame(E),F=!1,L=!1,I=null,R=null,T.removeEventListener(`mousemove`,te),T.removeEventListener(`mouseup`,ne),T.removeEventListener(`touchmove`,te),T.removeEventListener(`touchend`,ne)}}T.addEventListener(`mousemove`,te),T.addEventListener(`mouseup`,ne),T.addEventListener(`touchmove`,te),T.addEventListener(`touchend`,ne)}function HO(e,{handle:t,connectionMode:n,fromNodeId:r,fromHandleId:i,fromType:a,doc:o,lib:s,flowId:c,isValidConnection:l=BO,nodeLookup:u}){let d=a===`target`,f=t?o.querySelector(`.${s}-flow__handle[data-id="${c}-${t?.nodeId}-${t?.id}-${t?.type}"]`):null,{x:p,y:m}=RD(e),h=o.elementFromPoint(p,m),g=h?.classList.contains(`${s}-flow__handle`)?h:f,_={handleDomNode:g,isValid:!1,connection:null,toHandle:null};if(g){let e=RO(void 0,g),t=g.getAttribute(`data-nodeid`),a=g.getAttribute(`data-handleid`),o=g.classList.contains(`connectable`),s=g.classList.contains(`connectableend`);if(!t||!e)return _;let c={source:d?t:r,sourceHandle:d?a:i,target:d?r:t,targetHandle:d?i:a};_.connection=c,_.isValid=o&&s&&(n===FE.Strict?d&&e===`source`||!d&&e===`target`:t!==r||a!==i)&&l(c),_.toHandle=LO(t,e,a,u,n,!0)}return _}var UO={onPointerDown:VO,isValid:HO};function WO({domNode:e,panZoom:t,getTransform:n,getViewScale:r}){let i=$S(e);function a({translateExtent:e,width:a,height:o,zoomStep:s=1,pannable:c=!0,zoomable:l=!0,inversePan:u=!1}){let d=e=>{if(e.sourceEvent.type!==`wheel`||!t)return;let r=n(),i=e.sourceEvent.ctrlKey&&CD()?10:1,a=-e.sourceEvent.deltaY*(e.sourceEvent.deltaMode===1?.05:e.sourceEvent.deltaMode?1:.002)*s,o=r[2]*2**(a*i);t.scaleTo(o)},f=[0,0],p=AE().on(`start`,e=>{(e.sourceEvent.type===`mousedown`||e.sourceEvent.type===`touchstart`)&&(f=[e.sourceEvent.clientX??e.sourceEvent.touches[0].clientX,e.sourceEvent.clientY??e.sourceEvent.touches[0].clientY])}).on(`zoom`,c?i=>{let s=n();if(i.sourceEvent.type!==`mousemove`&&i.sourceEvent.type!==`touchmove`||!t)return;let c=[i.sourceEvent.clientX??i.sourceEvent.touches[0].clientX,i.sourceEvent.clientY??i.sourceEvent.touches[0].clientY],l=[c[0]-f[0],c[1]-f[1]];f=c;let d=r()*Math.max(s[2],Math.log(s[2]))*(u?-1:1),p={x:s[0]-l[0]*d,y:s[1]-l[1]*d},m=[[0,0],[a,o]];t.setViewportConstrained({x:p.x,y:p.y,zoom:s[2]},m,e)}:null).on(`zoom.wheel`,l?d:null);i.call(p,{})}function o(){i.on(`zoom`,null)}return{update:a,destroy:o,pointer:tC}}var GO=e=>({x:e.x,y:e.y,zoom:e.k}),KO=({x:e,y:t,zoom:n})=>bE.translate(e,t).scale(n),qO=(e,t)=>e.target.closest(`.${t}`),JO=(e,t)=>t===2&&Array.isArray(e)&&e.includes(2),YO=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2,XO=(e,t=0,n=YO,r=()=>{})=>{let i=typeof t==`number`&&t>0;return i||r(),i?e.transition().duration(t).ease(n).on(`end`,r):e},ZO=e=>{let t=e.ctrlKey&&CD()?10:1;return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*t};function QO({zoomPanValues:e,noWheelClassName:t,d3Selection:n,d3Zoom:r,panOnScrollMode:i,panOnScrollSpeed:a,zoomOnPinch:o,onPanZoomStart:s,onPanZoom:c,onPanZoomEnd:l}){return u=>{if(qO(u,t))return u.ctrlKey&&u.preventDefault(),!1;u.preventDefault(),u.stopImmediatePropagation();let d=n.property(`__zoom`).k||1;if(u.ctrlKey&&o){let e=tC(u),t=d*2**ZO(u);r.scaleTo(n,t,e,u);return}let f=u.deltaMode===1?20:1,p=i===IE.Vertical?0:u.deltaX*f,m=i===IE.Horizontal?0:u.deltaY*f;!CD()&&u.shiftKey&&i!==IE.Vertical&&(p=u.deltaY*f,m=0),r.translateBy(n,-(p/d)*a,-(m/d)*a,{internal:!0});let h=GO(n.property(`__zoom`));clearTimeout(e.panScrollTimeout),e.isPanScrolling?c?.(u,h):(e.isPanScrolling=!0,s?.(u,h)),e.panScrollTimeout=setTimeout(()=>{l?.(u,h),e.isPanScrolling=!1},150)}}function $O({noWheelClassName:e,preventScrolling:t,d3ZoomHandler:n}){return function(r,i){let a=r.type===`wheel`,o=!t&&a&&!r.ctrlKey,s=qO(r,e);if(r.ctrlKey&&a&&s&&r.preventDefault(),o||s)return null;r.preventDefault(),n.call(this,r,i)}}function ek({zoomPanValues:e,onDraggingChange:t,onPanZoomStart:n}){return r=>{if(r.sourceEvent?.internal)return;let i=GO(r.transform);e.mouseButton=r.sourceEvent?.button||0,e.isZoomingOrPanning=!0,e.prevViewport=i,r.sourceEvent?.type===`mousedown`&&t(!0),n&&n?.(r.sourceEvent,i)}}function tk({zoomPanValues:e,panOnDrag:t,onPaneContextMenu:n,onTransformChange:r,onPanZoom:i}){return a=>{e.usedRightMouseButton=!!(n&&JO(t,e.mouseButton??0)),a.sourceEvent?.sync||r([a.transform.x,a.transform.y,a.transform.k]),i&&!a.sourceEvent?.internal&&i?.(a.sourceEvent,GO(a.transform))}}function nk({zoomPanValues:e,panOnDrag:t,panOnScroll:n,onDraggingChange:r,onPanZoomEnd:i,onPaneContextMenu:a}){return o=>{if(!o.sourceEvent?.internal&&(e.isZoomingOrPanning=!1,a&&JO(t,e.mouseButton??0)&&!e.usedRightMouseButton&&o.sourceEvent&&a(o.sourceEvent),e.usedRightMouseButton=!1,r(!1),i)){let t=GO(o.transform);e.prevViewport=t,clearTimeout(e.timerId),e.timerId=setTimeout(()=>{i?.(o.sourceEvent,t)},n?150:0)}}}function rk({panActivationKeyPressed:e,zoomActivationKeyPressed:t,zoomOnScroll:n,zoomOnPinch:r,panOnDrag:i,panOnScroll:a,zoomOnDoubleClick:o,userSelectionActive:s,noWheelClassName:c,noPanClassName:l,lib:u,connectionInProgress:d}){return f=>{let p=t||n,m=r&&f.ctrlKey,h=f.type===`wheel`;if(f.button===1&&f.type===`mousedown`&&(qO(f,`${u}-flow__node`)||qO(f,`${u}-flow__edge`)||qO(f,`${u}-flow__selection`)||qO(f,`${u}-flow__nodesselection`)))return!0;if(!i&&!p&&!a&&!o&&!r||s||d&&!h||qO(f,c)&&h||qO(f,l)&&(!h||a&&h&&!t)||!r&&f.ctrlKey&&h)return!1;if(!r&&f.type===`touchstart`&&f.touches?.length>1)return f.preventDefault(),!1;if(!p&&!a&&!m&&h||!i&&(f.type===`mousedown`||f.type===`touchstart`)||Array.isArray(i)&&!i.includes(f.button)&&f.type===`mousedown`)return!1;let g=Array.isArray(i)&&i.includes(f.button)||!f.button||f.button<=1;return(!f.ctrlKey||h||e)&&g}}function ik({domNode:e,minZoom:t,maxZoom:n,translateExtent:r,viewport:i,onPanZoom:a,onPanZoomStart:o,onPanZoomEnd:s,onDraggingChange:c}){let l={isZoomingOrPanning:!1,usedRightMouseButton:!1,prevViewport:{},mouseButton:0,timerId:void 0,panScrollTimeout:void 0,isPanScrolling:!1},u=e.getBoundingClientRect(),d=[[0,0],[u.width,u.height]];(typeof ResizeObserver<`u`?new ResizeObserver(e=>{let t=e[0];t&&(d=[[0,0],[t.contentRect.width,t.contentRect.height]])}):null)?.observe(e);let f=AE().extent(()=>d).scaleExtent([t,n]).translateExtent(r),p=$S(e).call(f);y({x:i.x,y:i.y,zoom:eD(i.zoom,t,n)},[[0,0],[u.width,u.height]],r);let m=p.on(`wheel.zoom`),h=p.on(`dblclick.zoom`);f.wheelDelta(ZO);async function g(e,t){return p?new Promise(n=>{f?.interpolate(t?.interpolate===`linear`?_w:jw).transform(XO(p,t?.duration,t?.ease,()=>n(!0)),e)}):!1}function _({noWheelClassName:e,noPanClassName:t,onPaneContextMenu:n,userSelectionActive:r,panOnScroll:i,panOnDrag:u,panOnScrollMode:d,panOnScrollSpeed:g,preventScrolling:_,zoomOnPinch:y,zoomOnScroll:b,zoomOnDoubleClick:x,panActivationKeyPressed:S=!1,zoomActivationKeyPressed:C,lib:w,onTransformChange:T,connectionInProgress:E,paneClickDistance:D,selectionOnDrag:O}){r&&!l.isZoomingOrPanning&&v();let k=i&&!C&&!r;f.clickDistance(O?1/0:!mD(D)||D<0?0:D);let A=k?QO({zoomPanValues:l,noWheelClassName:e,d3Selection:p,d3Zoom:f,panOnScrollMode:d,panOnScrollSpeed:g,zoomOnPinch:y,onPanZoomStart:o,onPanZoom:a,onPanZoomEnd:s}):$O({noWheelClassName:e,preventScrolling:_,d3ZoomHandler:m});p.on(`wheel.zoom`,A,{passive:!1});let j=ek({zoomPanValues:l,onDraggingChange:c,onPanZoomStart:o});f.on(`start`,j);let M=tk({zoomPanValues:l,panOnDrag:u,onPaneContextMenu:!!n,onPanZoom:a,onTransformChange:T});f.on(`zoom`,M);let N=nk({zoomPanValues:l,panOnDrag:u,panOnScroll:i,onPaneContextMenu:n,onPanZoomEnd:s,onDraggingChange:c});f.on(`end`,N);let P=rk({panActivationKeyPressed:S,zoomActivationKeyPressed:C,panOnDrag:u,zoomOnScroll:b,panOnScroll:i,zoomOnDoubleClick:x,zoomOnPinch:y,userSelectionActive:r,noPanClassName:t,noWheelClassName:e,lib:w,connectionInProgress:E});f.filter(P),x?p.on(`dblclick.zoom`,h):p.on(`dblclick.zoom`,null)}function v(){f.on(`zoom`,null)}async function y(e,t,n){let r=KO(e),i=f?.constrain()(r,t,n);return i&&await g(i),i}async function b(e,t){let n=KO(e);return await g(n,t),n}function x(e){if(p){let t=KO(e),n=p.property(`__zoom`);(n.k!==e.zoom||n.x!==e.x||n.y!==e.y)&&f?.transform(p,t,null,{sync:!0})}}function S(){let e=p?xE(p.node()):{x:0,y:0,k:1};return{x:e.x,y:e.y,zoom:e.k}}async function C(e,t){return p?new Promise(n=>{f?.interpolate(t?.interpolate===`linear`?_w:jw).scaleTo(XO(p,t?.duration,t?.ease,()=>n(!0)),e)}):!1}async function w(e,t){return p?new Promise(n=>{f?.interpolate(t?.interpolate===`linear`?_w:jw).scaleBy(XO(p,t?.duration,t?.ease,()=>n(!0)),e)}):!1}function T(e){f?.scaleExtent(e)}function E(e){f?.translateExtent(e)}function D(e){let t=!mD(e)||e<0?0:e;f?.clickDistance(t)}return{update:_,destroy:v,setViewport:b,setViewportConstrained:y,getViewport:S,scaleTo:C,scaleBy:w,setScaleExtent:T,setTranslateExtent:E,syncViewport:x,setClickDistance:D}}var ak;(function(e){e.Line=`line`,e.Handle=`handle`})(ak||={});function ok({width:e,prevWidth:t,height:n,prevHeight:r,affectsX:i,affectsY:a}){let o=e-t,s=n-r,c=[o>0?1:o<0?-1:0,s>0?1:s<0?-1:0];return o&&i&&(c[0]*=-1),s&&a&&(c[1]*=-1),c}function sk(e){return{isHorizontal:e.includes(`right`)||e.includes(`left`),isVertical:e.includes(`bottom`)||e.includes(`top`),affectsX:e.includes(`left`),affectsY:e.includes(`top`)}}function ck(e,t){return Math.max(0,t-e)}function lk(e,t){return Math.max(0,e-t)}function uk(e,t,n){return Math.max(0,t-e,e-n)}function dk(e,t){return e?!t:t}function fk(e,t,n,r,i,a,o,s){let{affectsX:c,affectsY:l}=t,{isHorizontal:u,isVertical:d}=t,f=u&&d,{xSnapped:p,ySnapped:m}=n,{minWidth:h,maxWidth:g,minHeight:_,maxHeight:v}=r,{x:y,y:b,width:x,height:S,aspectRatio:C}=e,w=Math.floor(u?p-e.pointerX:0),T=Math.floor(d?m-e.pointerY:0),E=x+(c?-w:w),D=S+(l?-T:T),O=-a[0]*x,k=-a[1]*S,A=uk(E,h,g),j=uk(D,_,v);if(o){let e=0,t=0;c&&w<0?e=ck(y+w+O,o[0][0]):!c&&w>0&&(e=lk(y+E+O,o[1][0])),l&&T<0?t=ck(b+T+k,o[0][1]):!l&&T>0&&(t=lk(b+D+k,o[1][1])),A=Math.max(A,e),j=Math.max(j,t)}if(s){let e=0,t=0;c&&w>0?e=lk(y+w,s[0][0]):!c&&w<0&&(e=ck(y+E,s[1][0])),l&&T>0?t=lk(b+T,s[0][1]):!l&&T<0&&(t=ck(b+D,s[1][1])),A=Math.max(A,e),j=Math.max(j,t)}if(i){if(u){let e=uk(E/C,_,v)*C;if(A=Math.max(A,e),o){let e=0;e=!c&&!l||c&&!l&&f?lk(b+k+E/C,o[1][1])*C:ck(b+k+(c?w:-w)/C,o[0][1])*C,A=Math.max(A,e)}if(s){let e=0;e=!c&&!l||c&&!l&&f?ck(b+E/C,s[1][1])*C:lk(b+(c?w:-w)/C,s[0][1])*C,A=Math.max(A,e)}}if(d){let e=uk(D*C,h,g)/C;if(j=Math.max(j,e),o){let e=0;e=!c&&!l||l&&!c&&f?lk(y+D*C+O,o[1][0])/C:ck(y+(l?T:-T)*C+O,o[0][0])/C,j=Math.max(j,e)}if(s){let e=0;e=!c&&!l||l&&!c&&f?ck(y+D*C,s[1][0])/C:lk(y+(l?T:-T)*C,s[0][0])/C,j=Math.max(j,e)}}}T+=T<0?j:-j,w+=w<0?A:-A,i&&(f?E>D*C?T=(dk(c,l)?-w:w)/C:w=(dk(c,l)?-T:T)*C:u?(T=w/C,l=c):(w=T*C,c=l));let M=c?y+w:y,N=l?b+T:b;return{width:x+(c?-w:w),height:S+(l?-T:T),x:a[0]*w*(c?-1:1)+M,y:a[1]*T*(l?-1:1)+N}}var pk={width:0,height:0,x:0,y:0},mk={...pk,pointerX:0,pointerY:0,aspectRatio:1};function hk(e,t,n){let r=t.position.x+e.position.x,i=t.position.y+e.position.y,a=e.measured.width??0,o=e.measured.height??0,s=n[0]*a,c=n[1]*o;return[[r-s,i-c],[r+a-s,i+o-c]]}function gk({domNode:e,nodeId:t,getStoreItems:n,onChange:r,onEnd:i}){let a=$S(e),o={controlDirection:sk(`bottom-right`),boundaries:{minWidth:0,minHeight:0,maxWidth:Number.MAX_VALUE,maxHeight:Number.MAX_VALUE},resizeDirection:void 0,keepAspectRatio:!1};function s({controlPosition:e,boundaries:s,keepAspectRatio:c,resizeDirection:l,onResizeStart:u,onResize:d,onResizeEnd:f,shouldResize:p}){let m={...pk},h={...mk};o={boundaries:s,resizeDirection:l,keepAspectRatio:c,controlDirection:sk(e)};let g,_=null,v=[],y,b,x,S=mC().on(`start`,e=>{let{nodeLookup:r,transform:i,snapGrid:a,snapToGrid:o,nodeOrigin:s,paneDomNode:c}=n();if(g=r.get(t),!g)return;_=c?.getBoundingClientRect()??null;let{xSnapped:l,ySnapped:d}=MD(e.sourceEvent,{transform:i,snapGrid:a,snapToGrid:o,containerBounds:_});m={width:g.measured.width??0,height:g.measured.height??0,x:g.position.x??0,y:g.position.y??0},h={...m,pointerX:l,pointerY:d,aspectRatio:m.width/m.height},y=void 0,b=wD(g.extent)?g.extent:void 0,g.parentId&&(g.extent===`parent`||g.expandParent)&&(y=r.get(g.parentId)),y&&g.extent===`parent`&&(b=[[0,0],[y.measured.width,y.measured.height]]),v=[],x=void 0;for(let[e,n]of r)if(n.parentId===t&&(v.push({id:e,position:{...n.position},extent:n.extent}),n.extent===`parent`||n.expandParent)){let e=hk(n,g,n.origin??s);x=x?[[Math.min(e[0][0],x[0][0]),Math.min(e[0][1],x[0][1])],[Math.max(e[1][0],x[1][0]),Math.max(e[1][1],x[1][1])]]:e}u?.(e,{...m})}).on(`drag`,e=>{let{transform:t,snapGrid:i,snapToGrid:a,nodeOrigin:s}=n(),c=MD(e.sourceEvent,{transform:t,snapGrid:i,snapToGrid:a,containerBounds:_}),l=[];if(!g)return;let{x:u,y:f,width:S,height:C}=m,w={},T=g.origin??s,{width:E,height:D,x:O,y:k}=fk(h,o.controlDirection,c,o.boundaries,o.keepAspectRatio,T,b,x),A=E!==S,j=D!==C,M=O!==u&&A,N=k!==f&&j;if(!M&&!N&&!A&&!j)return;let P={prevValues:{...m},startX:h.x,startY:h.y,childNodes:v.map(e=>({...e,position:{...e.position}}))};if((M||N||T[0]===1||T[1]===1)&&(w.x=M?O:m.x,w.y=N?k:m.y,m.x=w.x,m.y=w.y,v.length>0)){let e=O-u,t=k-f;for(let n of v)n.position={x:n.position.x-e+T[0]*(E-S),y:n.position.y-t+T[1]*(D-C)},l.push(n)}if((A||j)&&(w.width=A&&(!o.resizeDirection||o.resizeDirection===`horizontal`)?E:m.width,w.height=j&&(!o.resizeDirection||o.resizeDirection===`vertical`)?D:m.height,m.width=w.width,m.height=w.height),y&&g.expandParent){let e=T[0]*(w.width??0);w.x&&w.x{e.position=P.childNodes[t].position});return}d?.(e,I),r(w,l)}).on(`end`,e=>{f?.(e,{...m}),i?.({...m})});a.call(S)}function c(){a.on(`.drag`,null)}return{update:s,destroy:c}}var _k=s((e=>{var t=f();function n(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var r=typeof Object.is==`function`?Object.is:n,i=t.useState,a=t.useEffect,o=t.useLayoutEffect,s=t.useDebugValue;function c(e,t){var n=t(),r=i({inst:{value:n,getSnapshot:t}}),c=r[0].inst,u=r[1];return o(function(){c.value=n,c.getSnapshot=t,l(c)&&u({inst:c})},[e,n,t]),a(function(){return l(c)&&u({inst:c}),e(function(){l(c)&&u({inst:c})})},[e]),s(n),n}function l(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!r(e,n)}catch{return!0}}function u(e,t){return t()}var d=typeof window>`u`||window.document===void 0||window.document.createElement===void 0?u:c;e.useSyncExternalStore=t.useSyncExternalStore===void 0?d:t.useSyncExternalStore})),vk=s(((e,t)=>{t.exports=_k()})),yk=s((e=>{var t=f(),n=vk();function r(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var i=typeof Object.is==`function`?Object.is:r,a=n.useSyncExternalStore,o=t.useRef,s=t.useEffect,c=t.useMemo,l=t.useDebugValue;e.useSyncExternalStoreWithSelector=function(e,t,n,r,u){var d=o(null);if(d.current===null){var f={hasValue:!1,value:null};d.current=f}else f=d.current;d=c(function(){function e(e){if(!a){if(a=!0,o=e,e=r(e),u!==void 0&&f.hasValue){var t=f.value;if(u(t,e))return s=t}return s=e}if(t=s,i(o,e))return t;var n=r(e);return u!==void 0&&u(t,n)?(o=e,t):(o=e,s=n)}var a=!1,o,s,c=n===void 0?null:n;return[function(){return e(t())},c===null?void 0:function(){return e(c())}]},[t,n,r,u]);var p=a(e,d[0],d[1]);return s(function(){f.hasValue=!0,f.value=p},[p]),l(p),p}})),bk=u(s(((e,t)=>{t.exports=yk()}))(),1),xk=e=>{let t,n=new Set,r=(e,r)=>{let i=typeof e==`function`?e(t):e;if(!Object.is(i,t)){let e=t;t=r??(typeof i!=`object`||!i)?i:Object.assign({},t,i),n.forEach(n=>n(t,e))}},i=()=>t,a={setState:r,getState:i,getInitialState:()=>o,subscribe:e=>(n.add(e),()=>n.delete(e)),destroy:()=>{n.clear()}},o=t=e(r,i,a);return a},Sk=e=>e?xk(e):xk,{useDebugValue:Ck}=y.default,{useSyncExternalStoreWithSelector:wk}=bk.default,Tk=e=>e;function Ek(e,t=Tk,n){let r=wk(e.subscribe,e.getState,e.getServerState||e.getInitialState,t,n);return Ck(r),r}var Dk=(e,t)=>{let n=Sk(e),r=(e,r=t)=>Ek(n,e,r);return Object.assign(r,n),r},Ok=(e,t)=>e?Dk(e,t):Dk;function kk(e,t){if(Object.is(e,t))return!0;if(typeof e!=`object`||!e||typeof t!=`object`||!t)return!1;if(e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(let[n,r]of e)if(!Object.is(r,t.get(n)))return!1;return!0}if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}let n=Object.keys(e);if(n.length!==Object.keys(t).length)return!1;for(let r of n)if(!Object.prototype.hasOwnProperty.call(t,r)||!Object.is(e[r],t[r]))return!1;return!0}var Ak=(0,y.createContext)(null),jk=Ak.Provider,Mk=jE.error001(`react`);function Nk(e,t){let n=(0,y.useContext)(Ak);if(n===null)throw Error(Mk);return Ek(n,e,t)}function Pk(){let e=(0,y.useContext)(Ak);if(e===null)throw Error(Mk);return(0,y.useMemo)(()=>({getState:e.getState,setState:e.setState,subscribe:e.subscribe}),[e])}var Fk={display:`none`},Ik={position:`absolute`,width:1,height:1,margin:-1,border:0,padding:0,overflow:`hidden`,clip:`rect(0px, 0px, 0px, 0px)`,clipPath:`inset(100%)`},Lk=`react-flow__node-desc`,Rk=`react-flow__edge-desc`,zk=`react-flow__aria-live`,Bk=e=>e.ariaLiveMessage,Vk=e=>e.ariaLabelConfig;function Hk({rfId:e}){let t=Nk(Bk);return(0,K.jsx)(`div`,{id:`${zk}-${e}`,"aria-live":`assertive`,"aria-atomic":`true`,style:Ik,children:t})}function Uk({rfId:e,disableKeyboardA11y:t}){let n=Nk(Vk);return(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`div`,{id:`${Lk}-${e}`,style:Fk,children:t?n[`node.a11yDescription.default`]:n[`node.a11yDescription.keyboardDisabled`]}),(0,K.jsx)(`div`,{id:`${Rk}-${e}`,style:Fk,children:n[`edge.a11yDescription.default`]}),!t&&(0,K.jsx)(Hk,{rfId:e})]})}var Wk=(0,y.forwardRef)(({position:e=`top-left`,children:t,className:n,style:r,...i},a)=>{let o=`${e}`.split(`-`);return(0,K.jsx)(`div`,{className:Jb([`react-flow__panel`,n,...o]),style:r,ref:a,...i,children:t})});Wk.displayName=`Panel`;var Gk=`https://reactflow.dev?utm_source=attribution`;function Kk({proOptions:e,position:t=`bottom-right`}){return(0,y.useEffect)(()=>{},[]),e?.hideAttribution?null:(0,K.jsx)(Wk,{position:t,className:`react-flow__attribution`,"data-message":`Please only hide this attribution when you are subscribed to React Flow Pro: ${Gk}`,children:(0,K.jsx)(`a`,{href:Gk,target:`_blank`,rel:`noopener noreferrer`,"aria-label":`React Flow attribution`,children:`React Flow`})})}var qk=e=>{let t=[],n=[];for(let[,n]of e.nodeLookup)n.selected&&t.push(n.internals.userNode);for(let[,t]of e.edgeLookup)t.selected&&n.push(t);return{selectedNodes:t,selectedEdges:n}},Jk=e=>e.id;function Yk(e,t){return kk(e.selectedNodes.map(Jk),t.selectedNodes.map(Jk))&&kk(e.selectedEdges.map(Jk),t.selectedEdges.map(Jk))}function Xk({onSelectionChange:e}){let t=Pk(),{selectedNodes:n,selectedEdges:r}=Nk(qk,Yk);return(0,y.useEffect)(()=>{let i={nodes:n,edges:r};e?.(i),t.getState().onSelectionChangeHandlers.forEach(e=>e(i))},[n,r,e]),null}var Zk=e=>!!e.onSelectionChangeHandlers;function Qk({onSelectionChange:e}){let t=Nk(Zk);return e||t?(0,K.jsx)(Xk,{onSelectionChange:e}):null}var $k=[0,0],eA={x:0,y:0,zoom:1},tA=[...`nodes.edges.defaultNodes.defaultEdges.onConnect.onConnectStart.onConnectEnd.onClickConnectStart.onClickConnectEnd.nodesDraggable.autoPanOnNodeFocus.nodesConnectable.nodesFocusable.edgesFocusable.edgesReconnectable.elevateNodesOnSelect.elevateEdgesOnSelect.minZoom.maxZoom.nodeExtent.onNodesChange.onEdgesChange.elementsSelectable.connectionMode.snapGrid.snapToGrid.translateExtent.connectOnClick.defaultEdgeOptions.fitView.fitViewOptions.onNodesDelete.onEdgesDelete.onDelete.onNodeDrag.onNodeDragStart.onNodeDragStop.onSelectionDrag.onSelectionDragStart.onSelectionDragStop.onMoveStart.onMove.onMoveEnd.noPanClassName.nodeOrigin.autoPanOnConnect.autoPanOnNodeDrag.onError.connectionRadius.isValidConnection.selectNodesOnDrag.nodeDragThreshold.connectionDragThreshold.onBeforeDelete.debug.autoPanSpeed.ariaLabelConfig.zIndexMode`.split(`.`),`rfId`],nA=e=>({setNodes:e.setNodes,setEdges:e.setEdges,setMinZoom:e.setMinZoom,setMaxZoom:e.setMaxZoom,setTranslateExtent:e.setTranslateExtent,setNodeExtent:e.setNodeExtent,reset:e.reset,setDefaultNodesAndEdges:e.setDefaultNodesAndEdges}),rA={translateExtent:ME,nodeOrigin:$k,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:`nopan`,rfId:`1`};function iA(e){let{setNodes:t,setEdges:n,setMinZoom:r,setMaxZoom:i,setTranslateExtent:a,setNodeExtent:o,reset:s,setDefaultNodesAndEdges:c}=Nk(nA,kk),l=Pk();(0,y.useEffect)(()=>(c(e.defaultNodes,e.defaultEdges),()=>{u.current=rA,s()}),[]);let u=(0,y.useRef)(rA);return(0,y.useEffect)(()=>{for(let s of tA){let c=e[s];c!==u.current[s]&&e[s]!==void 0&&(s===`nodes`?t(c):s===`edges`?n(c):s===`minZoom`?r(c):s===`maxZoom`?i(c):s===`translateExtent`?a(c):s===`nodeExtent`?o(c):s===`ariaLabelConfig`?l.setState({ariaLabelConfig:AD(c)}):s===`fitView`?l.setState({fitViewQueued:c}):s===`fitViewOptions`?l.setState({fitViewOptions:c}):l.setState({[s]:c}))}u.current=e},tA.map(t=>e[t])),null}function aA(){return typeof window>`u`||!window.matchMedia?null:window.matchMedia(`(prefers-color-scheme: dark)`)}function oA(e){let[t,n]=(0,y.useState)(e===`system`?null:e);return(0,y.useEffect)(()=>{if(e!==`system`){n(e);return}let t=aA(),r=()=>n(t?.matches?`dark`:`light`);return r(),t?.addEventListener(`change`,r),()=>{t?.removeEventListener(`change`,r)}},[e]),t===null?aA()?.matches?`dark`:`light`:t}var sA=typeof document<`u`?document:null;function cA(e=null,t={target:sA,actInsideInputWithModifier:!0}){let[n,r]=(0,y.useState)(!1),i=(0,y.useRef)(!1),a=(0,y.useRef)(new Set([])),[o,s]=(0,y.useMemo)(()=>{if(e!==null){let t=(Array.isArray(e)?e:[e]).filter(e=>typeof e==`string`).map(e=>e.replace(/\+/g,` `).replace(` `,` +`).split(` -`));return[t,t.reduce((e,t)=>e.concat(...t),[])]}return[[],[]]},[e]);return(0,y.useEffect)(()=>{let n=t?.target??Fk,c=t?.actInsideInputWithModifier??!0;if(e!==null){let e=e=>{if(i.current=e.ctrlKey||e.metaKey||e.shiftKey||e.altKey,(!i.current||i.current&&!c)&&uD(e))return!1;let n=Rk(e.code,s);if(a.current.add(e[n]),Lk(o,a.current,!1)){let n=e.composedPath?.()?.[0]||e.target,a=n?.nodeName===`BUTTON`||n?.nodeName===`A`;t.preventDefault!==!1&&(i.current||!a)&&e.preventDefault(),r(!0)}},l=e=>{let t=Rk(e.code,s);Lk(o,a.current,!0)?(r(!1),a.current.clear()):a.current.delete(e[t]),e.key===`Meta`&&a.current.clear(),i.current=!1},u=()=>{a.current.clear(),r(!1)};return n?.addEventListener(`keydown`,e),n?.addEventListener(`keyup`,l),window.addEventListener(`blur`,u),window.addEventListener(`contextmenu`,u),()=>{n?.removeEventListener(`keydown`,e),n?.removeEventListener(`keyup`,l),window.removeEventListener(`blur`,u),window.removeEventListener(`contextmenu`,u)}}},[e,r]),n}function Lk(e,t,n){return e.filter(e=>n||e.length===t.size).some(e=>e.every(e=>t.has(e)))}function Rk(e,t){return t.includes(e)?`code`:`key`}var zk=()=>{let e=ck();return(0,y.useMemo)(()=>({zoomIn:async t=>{let{panZoom:n}=e.getState();return n?n.scaleBy(1.2,t):!1},zoomOut:async t=>{let{panZoom:n}=e.getState();return n?n.scaleBy(1/1.2,t):!1},zoomTo:async(t,n)=>{let{panZoom:r}=e.getState();return r?r.scaleTo(t,n):!1},getZoom:()=>e.getState().transform[2],setViewport:async(t,n)=>{let{transform:[r,i,a],panZoom:o}=e.getState();return o?(await o.setViewport({x:t.x??r,y:t.y??i,zoom:t.zoom??a},n),!0):!1},getViewport:()=>{let[t,n,r]=e.getState().transform;return{x:t,y:n,zoom:r}},setCenter:async(t,n,r)=>e.getState().setCenter(t,n,r),fitBounds:async(t,n)=>{let{width:r,height:i,minZoom:a,maxZoom:o,panZoom:s}=e.getState(),c=XE(t,r,i,a,o,n?.padding??.1);return s?(await s.setViewport(c,{duration:n?.duration,ease:n?.ease,interpolate:n?.interpolate}),!0):!1},screenToFlowPosition:(t,n={})=>{let{transform:r,snapGrid:i,snapToGrid:a,domNode:o}=e.getState();if(!o)return t;let{x:s,y:c}=o.getBoundingClientRect(),l={x:t.x-s,y:t.y-c},u=n.snapGrid??i;return GE(l,r,n.snapToGrid??a,u)},flowToScreenPosition:t=>{let{transform:n,domNode:r}=e.getState();if(!r)return t;let{x:i,y:a}=r.getBoundingClientRect(),o=KE(t,n);return{x:o.x+i,y:o.y+a}}}),[])};function Bk(e,t){let n=[],r=new Map,i=[];for(let t of e)if(t.type===`add`){i.push(t);continue}else if(t.type===`remove`||t.type===`replace`)r.set(t.id,[t]);else{let e=r.get(t.id);e?e.push(t):r.set(t.id,[t])}for(let e of t){let t=r.get(e.id);if(!t){n.push(e);continue}if(t[0].type===`remove`)continue;if(t[0].type===`replace`){n.push({...t[0].item});continue}let i={...e};for(let e of t)Vk(e,i);n.push(i)}return i.length&&i.forEach(e=>{e.index===void 0?n.push({...e.item}):n.splice(e.index,0,{...e.item})}),n}function Vk(e,t){switch(e.type){case`select`:t.selected=e.selected;break;case`position`:e.position!==void 0&&(t.position=e.position),e.dragging!==void 0&&(t.dragging=e.dragging);break;case`dimensions`:e.dimensions!==void 0&&(t.measured={...e.dimensions},e.setAttributes&&((e.setAttributes===!0||e.setAttributes===`width`)&&(t.width=e.dimensions.width),(e.setAttributes===!0||e.setAttributes===`height`)&&(t.height=e.dimensions.height))),typeof e.resizing==`boolean`&&(t.resizing=e.resizing)}}function Hk(e,t){return Bk(e,t)}function Uk(e,t){return Bk(e,t)}function Wk(e,t){return{id:e,type:`select`,selected:t}}function Gk(e,t=new Set,n=!1){let r=[];for(let[i,a]of e){let e=t.has(i);(a.selected!==void 0||e)&&a.selected!==e&&(n&&(a.selected=e),r.push(Wk(a.id,e)))}return r}function Kk({items:e=[],lookup:t}){let n=[],r=new Map(e.map(e=>[e.id,e]));for(let[r,i]of e.entries()){let e=t.get(i.id),a=e?.internals?.userNode??e;a!==void 0&&a!==i&&n.push({id:i.id,item:i,type:`replace`}),a===void 0&&n.push({item:i,type:`add`,index:r})}for(let[e]of t)r.get(e)===void 0&&n.push({id:e,type:`remove`});return n}function qk(e){return{id:e.id,type:`remove`}}var Jk=UE(`React Flow`,`https://reactflow.dev/`);function Yk(e,t,n={}){return CD(e,t,{...n,onError:n.onError??Jk})}var Xk=e=>_E(e),Zk=e=>gE(e);function Qk(e){return(0,y.forwardRef)(e)}var $k=typeof window<`u`?y.useLayoutEffect:y.useEffect;function eA(e){let[t,n]=(0,y.useState)(BigInt(0)),[r]=(0,y.useState)(()=>tA(()=>n(e=>e+BigInt(1))));return $k(()=>{let t=r.get();t.length&&(e(t),r.reset())},[t]),r}function tA(e){let t=[];return{get:()=>t,reset:()=>{t=[]},push:n=>{t.push(n),e()}}}var nA=(0,y.createContext)(null);function rA({children:e}){let t=ck(),n=eA((0,y.useCallback)(e=>{let{nodes:n=[],setNodes:r,hasDefaultNodes:i,onNodesChange:a,nodeLookup:o,fitViewQueued:s,onNodesChangeMiddlewareMap:c}=t.getState(),l=n;for(let t of e)l=typeof t==`function`?t(l):t;let u=Kk({items:l,lookup:o});for(let e of c.values())u=e(u);i&&r(l),u.length>0?a?.(u):s&&window.requestAnimationFrame(()=>{let{fitViewQueued:e,nodes:n,setNodes:r}=t.getState();e&&r(n)})},[])),r=eA((0,y.useCallback)(e=>{let{edges:n=[],setEdges:r,hasDefaultEdges:i,onEdgesChange:a,edgeLookup:o}=t.getState(),s=n;for(let t of e)s=typeof t==`function`?t(s):t;i?r(s):a&&a(Kk({items:s,lookup:o}))},[])),i=(0,y.useMemo)(()=>({nodeQueue:n,edgeQueue:r}),[]);return(0,K.jsx)(nA.Provider,{value:i,children:e})}function iA(){let e=(0,y.useContext)(nA);if(!e)throw Error(`useBatchContext must be used within a BatchProvider`);return e}var aA=e=>!!e.panZoom;function oA(){let e=zk(),t=ck(),n=iA(),r=sk(aA),i=(0,y.useMemo)(()=>{let e=e=>t.getState().nodeLookup.get(e),r=e=>{n.nodeQueue.push(e)},i=e=>{n.edgeQueue.push(e)},a=e=>{let{nodeLookup:n,nodeOrigin:r}=t.getState(),i=Xk(e)?e:n.get(e.id),a=i.parentId?tD(i.position,i.measured,i.parentId,n,r):i.position;return IE({...i,position:a,width:i.measured?.width??i.width,height:i.measured?.height??i.height})},o=(e,t,n={replace:!1})=>{r(r=>r.map(r=>{if(r.id===e){let e=typeof t==`function`?t(r):t;return n.replace&&Xk(e)?e:{...r,...e}}return r}))},s=(e,t,n={replace:!1})=>{i(r=>r.map(r=>{if(r.id===e){let e=typeof t==`function`?t(r):t;return n.replace&&Zk(e)?e:{...r,...e}}return r}))};return{getNodes:()=>t.getState().nodes.map(e=>({...e})),getNode:t=>e(t)?.internals.userNode,getInternalNode:e,getEdges:()=>{let{edges:e=[]}=t.getState();return e.map(e=>({...e}))},getEdge:e=>t.getState().edgeLookup.get(e),setNodes:r,setEdges:i,addNodes:e=>{let t=Array.isArray(e)?e:[e];n.nodeQueue.push(e=>[...e,...t])},addEdges:e=>{let t=Array.isArray(e)?e:[e];n.edgeQueue.push(e=>[...e,...t])},toObject:()=>{let{nodes:e=[],edges:n=[],transform:r}=t.getState(),[i,a,o]=r;return{nodes:e.map(e=>({...e})),edges:n.map(e=>({...e})),viewport:{x:i,y:a,zoom:o}}},deleteElements:async({nodes:e=[],edges:n=[]})=>{let{nodes:r,edges:i,onNodesDelete:a,onEdgesDelete:o,triggerNodeChanges:s,triggerEdgeChanges:c,onDelete:l,onBeforeDelete:u}=t.getState(),{nodes:d,edges:f}=await DE({nodesToRemove:e,edgesToRemove:n,nodes:r,edges:i,onBeforeDelete:u}),p=f.length>0,m=d.length>0;if(p){let e=f.map(qk);o?.(f),c(e)}if(m){let e=d.map(qk);a?.(d),s(e)}return(m||p)&&l?.({nodes:d,edges:f}),{deletedNodes:d,deletedEdges:f}},getIntersectingNodes:(e,n=!0,r)=>{let i=VE(e),o=i?e:a(e),s=r!==void 0;return o?(r||t.getState().nodes).filter(r=>{let a=t.getState().nodeLookup.get(r.id);if(a&&!i&&(r.id===e.id||!a.internals.positionAbsolute))return!1;let c=IE(s?r:a),l=BE(c,o);return n&&l>0||l>=c.width*c.height||l>=o.width*o.height}):[]},isNodeIntersecting:(e,t,n=!0)=>{let r=VE(e)?e:a(e);if(!r)return!1;let i=BE(r,t);return n&&i>0||i>=t.width*t.height||i>=r.width*r.height},updateNode:o,updateNodeData:(e,t,n={replace:!1})=>{o(e,e=>{let r=typeof t==`function`?t(e):t;return n.replace?{...e,data:r}:{...e,data:{...e.data,...r}}},n)},updateEdge:s,updateEdgeData:(e,t,n={replace:!1})=>{s(e,e=>{let r=typeof t==`function`?t(e):t;return n.replace?{...e,data:r}:{...e,data:{...e.data,...r}}},n)},getNodesBounds:e=>{let{nodeLookup:n,nodeOrigin:r}=t.getState();return bE(e,{nodeLookup:n,nodeOrigin:r})},getHandleConnections:({type:e,id:n,nodeId:r})=>Array.from(t.getState().connectionLookup.get(`${r}-${e}${n?`-${n}`:``}`)?.values()??[]),getNodeConnections:({type:e,handleId:n,nodeId:r})=>Array.from(t.getState().connectionLookup.get(`${r}${e?n?`-${e}-${n}`:`-${e}`:``}`)?.values()??[]),fitView:async e=>{let r=t.getState().fitViewResolver??rD();return t.setState({fitViewQueued:!0,fitViewOptions:e,fitViewResolver:r}),n.nodeQueue.push(e=>[...e]),r.promise}}},[]);return(0,y.useMemo)(()=>({...i,...e,viewportInitialized:r}),[r])}var sA=e=>e.selected,cA=typeof window<`u`?window:void 0;function lA({deleteKeyCode:e,multiSelectionKeyCode:t}){let n=ck(),{deleteElements:r}=oA(),i=Ik(e,{actInsideInputWithModifier:!1}),a=Ik(t,{target:cA});(0,y.useEffect)(()=>{if(i){let{edges:e,nodes:t}=n.getState();r({nodes:t.filter(sA),edges:e.filter(sA)}),n.setState({nodesSelectionActive:!1})}},[i]),(0,y.useEffect)(()=>{n.setState({multiSelectionActive:a})},[a])}function uA(e){let t=ck();(0,y.useEffect)(()=>{let n=()=>{if(!e.current||!(e.current.checkVisibility?.()??!0))return!1;let n=sD(e.current);(n.height===0||n.width===0)&&t.getState().onError?.(`004`,aE.error004()),t.setState({width:n.width||500,height:n.height||500})};if(e.current){n(),window.addEventListener(`resize`,n);let t=new ResizeObserver(()=>n());return t.observe(e.current),()=>{window.removeEventListener(`resize`,n),t&&e.current&&t.unobserve(e.current)}}},[])}var dA={position:`absolute`,width:`100%`,height:`100%`,top:0,left:0},fA=e=>({userSelectionActive:e.userSelectionActive,lib:e.lib,connectionInProgress:e.connection.inProgress});function pA({onPaneContextMenu:e,zoomOnScroll:t=!0,zoomOnPinch:n=!0,panOnScroll:r=!1,panActivationKeyPressed:i,panOnScrollSpeed:a=.5,panOnScrollMode:o=uE.Free,zoomOnDoubleClick:s=!0,panOnDrag:c=!0,defaultViewport:l,translateExtent:u,minZoom:d,maxZoom:f,zoomActivationKeyCode:p,preventScrolling:m=!0,children:h,noWheelClassName:g,noPanClassName:_,onViewportChange:v,isControlledViewport:b,paneClickDistance:x,selectionOnDrag:S}){let C=ck(),w=(0,y.useRef)(null),{userSelectionActive:T,lib:E,connectionInProgress:D}=sk(fA,rk),O=Ik(p),k=(0,y.useRef)();uA(w);let A=(0,y.useCallback)(e=>{v?.({x:e[0],y:e[1],zoom:e[2]}),b||C.setState({transform:e})},[v,b]);return(0,y.useEffect)(()=>{if(w.current){k.current=MO({domNode:w.current,minZoom:d,maxZoom:f,translateExtent:u,viewport:l,onDraggingChange:e=>C.setState(t=>t.paneDragging===e?t:{paneDragging:e}),onPanZoomStart:(e,t)=>{let{onViewportChangeStart:n,onMoveStart:r}=C.getState();r?.(e,t),n?.(t)},onPanZoom:(e,t)=>{let{onViewportChange:n,onMove:r}=C.getState();r?.(e,t),n?.(t)},onPanZoomEnd:(e,t)=>{let{onViewportChangeEnd:n,onMoveEnd:r}=C.getState();r?.(e,t),n?.(t)}});let{x:e,y:t,zoom:n}=k.current.getViewport();return C.setState({panZoom:k.current,transform:[e,t,n],domNode:w.current.closest(`.react-flow`)}),()=>{k.current?.destroy()}}},[]),(0,y.useEffect)(()=>{k.current?.update({onPaneContextMenu:e,zoomOnScroll:t,zoomOnPinch:n,panOnScroll:r,panActivationKeyPressed:i,panOnScrollSpeed:a,panOnScrollMode:o,zoomOnDoubleClick:s,panOnDrag:c,zoomActivationKeyPressed:O,preventScrolling:m,noPanClassName:_,userSelectionActive:T,noWheelClassName:g,lib:E,onTransformChange:A,connectionInProgress:D,selectionOnDrag:S,paneClickDistance:x})},[e,t,n,r,i,a,o,s,c,O,m,_,T,g,E,A,D,S,x]),(0,K.jsx)(`div`,{className:`react-flow__renderer`,ref:w,style:dA,children:h})}var mA=e=>({userSelectionActive:e.userSelectionActive,userSelectionRect:e.userSelectionRect});function hA(){let{userSelectionActive:e,userSelectionRect:t}=sk(mA,rk);return e&&t?(0,K.jsx)(`div`,{className:`react-flow__selection react-flow__container`,style:{width:t.width,height:t.height,transform:`translate(${t.x}px, ${t.y}px)`}}):null}var gA=(e,t)=>n=>{n.target===t.current&&e?.(n)},_A=e=>({userSelectionActive:e.userSelectionActive,elementsSelectable:e.elementsSelectable,dragging:e.paneDragging,panBy:e.panBy,autoPanSpeed:e.autoPanSpeed});function vA({isSelecting:e,selectionKeyPressed:t,selectionMode:n=dE.Full,panOnDrag:r,autoPanOnSelection:i,paneClickDistance:a,selectionOnDrag:o,onSelectionStart:s,onSelectionEnd:c,onPaneClick:l,onPaneContextMenu:u,onPaneScroll:d,onPaneMouseEnter:f,onPaneMouseMove:p,onPaneMouseLeave:m,children:h}){let g=(0,y.useRef)(0),_=ck(),{userSelectionActive:v,elementsSelectable:b,dragging:x,panBy:S,autoPanSpeed:C}=sk(_A,rk),w=b&&(e||v),T=(0,y.useRef)(null),E=(0,y.useRef)(),D=(0,y.useRef)(new Set),O=(0,y.useRef)(new Set),k=(0,y.useRef)(!1),A=(0,y.useRef)(!1),j=(0,y.useRef)({x:0,y:0}),M=(0,y.useRef)(!1),N=e=>{if(A.current||k.current||_.getState().connection.inProgress){A.current=!1,k.current=!1;return}l?.(e),_.getState().resetSelectedElements(),_.setState({nodesSelectionActive:!1})},P=e=>{if(Array.isArray(r)&&r?.includes(2)){e.preventDefault();return}u?.(e)},F=d?e=>d(e):void 0,I=e=>{A.current&&=(e.stopPropagation(),!1)},L=n=>{if(n.pointerType===`touch`&&r!==!1&&!t)return;let{domNode:i,transform:a}=_.getState();if(E.current=i?.getBoundingClientRect(),!E.current)return;let s=n.target===T.current;if(!s&&n.target.closest(`.nokey`)||!e||!(o&&s||t)||n.button!==0||!n.isPrimary)return;n.target?.setPointerCapture?.(n.pointerId),A.current=!1;let{x:c,y:l}=fD(n.nativeEvent,E.current),u=GE({x:c,y:l},a);_.setState({userSelectionRect:{width:0,height:0,startX:u.x,startY:u.y,x:c,y:l}}),s||(n.stopPropagation(),n.preventDefault())};function R(e,t){let{userSelectionRect:r}=_.getState();if(!r)return;let{transform:i,nodeLookup:a,edgeLookup:o,connectionLookup:s,triggerNodeChanges:c,triggerEdgeChanges:l,defaultEdgeOptions:u}=_.getState(),d={x:r.startX,y:r.startY},{x:f,y:p}=KE(d,i),m={startX:d.x,startY:d.y,x:ee.id)),O.current=new Set;let v=u?.selectable??!0;for(let e of D.current){let t=s.get(e);if(t)for(let{edgeId:e}of t.values()){let t=o.get(e);t&&(t.selectable??v)&&O.current.add(e)}}nD(h,D.current)||c(Gk(a,D.current,!0)),nD(g,O.current)||l(Gk(o,O.current)),_.setState({userSelectionRect:m,userSelectionActive:!0,nodesSelectionActive:!1})}function z(){if(!i||!E.current)return;let[e,t]=ME(j.current,E.current,C);S({x:e,y:t}).then(e=>{if(!A.current||!e){g.current=requestAnimationFrame(z);return}let{x:t,y:n}=j.current;R(t,n),g.current=requestAnimationFrame(z)})}let B=()=>{cancelAnimationFrame(g.current),g.current=0,M.current=!1};(0,y.useEffect)(()=>()=>B(),[]);let ee=e=>{let{userSelectionRect:n,transform:r,resetSelectedElements:i}=_.getState();if(!E.current||!n)return;let{x:o,y:c}=fD(e.nativeEvent,E.current);j.current={x:o,y:c};let l=KE({x:n.startX,y:n.startY},r);if(!A.current){let n=t?0:a;if(Math.hypot(o-l.x,c-l.y)<=n)return;i(),s?.(e)}A.current=!0,M.current||=(z(),!0),R(o,c)},V=e=>{if(!w){e.target===T.current&&_.getState().connection.inProgress&&(k.current=!0);return}e.button===0&&(e.target?.releasePointerCapture?.(e.pointerId),!v&&e.target===T.current&&_.getState().userSelectionRect&&N?.(e),_.setState({userSelectionActive:!1,userSelectionRect:null}),A.current&&(c?.(e),_.setState({nodesSelectionActive:D.current.size>0})),B())},H=e=>{e.target?.releasePointerCapture?.(e.pointerId),B()},te=r===!0||Array.isArray(r)&&r.includes(0);return(0,K.jsxs)(`div`,{className:Sb([`react-flow__pane`,{draggable:te,dragging:x,selection:e}]),onClick:w?void 0:gA(N,T),onContextMenu:gA(P,T),onWheel:gA(F,T),onPointerEnter:w?void 0:f,onPointerMove:w?ee:p,onPointerUp:V,onPointerCancel:w?H:void 0,onPointerDownCapture:w?L:void 0,onClickCapture:w?I:void 0,onPointerLeave:m,ref:T,style:dA,children:[h,(0,K.jsx)(hA,{})]})}function yA({id:e,store:t,unselect:n=!1,nodeRef:r}){let{addSelectedNodes:i,unselectNodesAndEdges:a,multiSelectionActive:o,nodeLookup:s,onError:c}=t.getState(),l=s.get(e);if(!l){c?.(`012`,aE.error012(e));return}t.setState({nodesSelectionActive:!1}),l.selected?(n||l.selected&&o)&&(a({nodes:[l],edges:[]}),requestAnimationFrame(()=>r?.current?.blur())):i([e])}function bA({nodeRef:e,disabled:t=!1,noDragClassName:n,handleSelector:r,nodeId:i,isSelectable:a,nodeClickDistance:o}){let s=ck(),[c,l]=(0,y.useState)(!1),u=(0,y.useRef)();return(0,y.useEffect)(()=>{if(!t)return u.current=sO({getStoreItems:()=>s.getState(),onNodeMouseDown:t=>{yA({id:t,store:s,nodeRef:e})},onDragStart:()=>{l(!0)},onDragStop:()=>{l(!1)}}),()=>{u.current?.destroy(),u.current=void 0}},[t,s,e]),(0,y.useEffect)(()=>{!t&&e.current&&u.current&&u.current.update({noDragClassName:n,handleSelector:r,domNode:e.current,isSelectable:a,nodeId:i,nodeClickDistance:o})},[n,r,t,a,e,i,o]),c}var xA=e=>t=>t.selected&&(t.draggable||e&&t.draggable===void 0);function SA(){let e=ck();return(0,y.useCallback)(t=>{let{nodeExtent:n,snapToGrid:r,snapGrid:i,nodesDraggable:a,onError:o,updateNodePositions:s,nodeLookup:c,nodeOrigin:l}=e.getState(),u=new Map,d=xA(a),f=r?i[0]:5,p=r?i[1]:5,m=t.direction.x*f*t.factor,h=t.direction.y*p*t.factor;for(let[,e]of c){if(!d(e))continue;let t={x:e.internals.positionAbsolute.x+m,y:e.internals.positionAbsolute.y+h};r&&(t=WE(t,i));let{position:a,positionAbsolute:s}=EE({nodeId:e.id,nextPosition:t,nodeLookup:c,nodeExtent:n,nodeOrigin:l,onError:o});e.position=a,e.internals.positionAbsolute=s,u.set(e.id,e)}s(u)},[])}var CA=(0,y.createContext)(null),wA=CA.Provider;CA.Consumer;var TA=()=>(0,y.useContext)(CA),EA=e=>({connectOnClick:e.connectOnClick,noPanClassName:e.noPanClassName,rfId:e.rfId}),DA=(0,y.createContext)(null);function OA({children:e}){let t=sk(EA,rk);return(0,K.jsx)(DA.Provider,{value:t,children:e})}function kA(){let e=(0,y.useContext)(DA);if(!e)throw Error(`useHandleConfig must be used within a HandleConfigProvider`);return e}var AA={connectingFrom:!1,connectingTo:!1,clickConnecting:!1,isPossibleEndHandle:!0,connectionInProcess:!1,clickConnectionInProcess:!1,valid:!1},jA=(e,t,n)=>r=>{let{connectionClickStartHandle:i,connectionMode:a,connection:o}=r,{fromHandle:s,toHandle:c,isValid:l}=o;if(!s&&!i)return AA;let u=c?.nodeId===e&&c?.id===t&&c?.type===n;return{connectingFrom:s?.nodeId===e&&s?.id===t&&s?.type===n,connectingTo:u,clickConnecting:i?.nodeId===e&&i?.id===t&&i?.type===n,isPossibleEndHandle:a===lE.Strict?s?.type!==n:e!==s?.nodeId||t!==s?.id,connectionInProcess:!!s,clickConnectionInProcess:!!i,valid:u&&l}};function MA({type:e=`source`,position:t=$.Top,isValidConnection:n,isConnectable:r=!0,isConnectableStart:i=!0,isConnectableEnd:a=!0,id:o,onConnect:s,children:c,className:l,onMouseDown:u,onTouchStart:d,...f},p){let m=o||null,h=e===`target`,g=ck(),_=TA(),{connectOnClick:v,noPanClassName:y,rfId:b}=kA(),{connectingFrom:x,connectingTo:S,clickConnecting:C,isPossibleEndHandle:w,connectionInProcess:T,clickConnectionInProcess:E,valid:D}=sk(jA(_,m,e),rk);_||g.getState().onError?.(`010`,aE.error010());let O=e=>{let{defaultEdgeOptions:t,onConnect:n,hasDefaultEdges:r}=g.getState(),i={...t,...e};if(r){let{edges:e,setEdges:t,onError:n}=g.getState();t(Yk(i,e,{onError:n}))}n?.(i),s?.(i)},k=e=>{if(!_)return;let t=dD(e.nativeEvent);if(i&&(t&&e.button===0||!t)){let t=g.getState();_O.onPointerDown(e.nativeEvent,{handleDomNode:e.currentTarget,autoPanOnConnect:t.autoPanOnConnect,connectionMode:t.connectionMode,connectionRadius:t.connectionRadius,domNode:t.domNode,nodeLookup:t.nodeLookup,lib:t.lib,isTarget:h,handleId:m,nodeId:_,flowId:t.rfId,panBy:t.panBy,cancelConnection:t.cancelConnection,onConnectStart:t.onConnectStart,onConnectEnd:(...e)=>g.getState().onConnectEnd?.(...e),updateConnection:t.updateConnection,onConnect:O,isValidConnection:n||((...e)=>g.getState().isValidConnection?.(...e)??!0),getTransform:()=>g.getState().transform,getFromHandle:()=>g.getState().connection.fromHandle,autoPanSpeed:t.autoPanSpeed,dragThreshold:t.connectionDragThreshold})}t?u?.(e):d?.(e)};return(0,K.jsx)(`div`,{"data-handleid":m,"data-nodeid":_,"data-handlepos":t,"data-id":`${b}-${_}-${m}-${e}`,className:Sb([`react-flow__handle`,`react-flow__handle-${t}`,`nodrag`,y,l,{source:!h,target:h,connectable:r,connectablestart:i,connectableend:a,clickconnecting:C,connectingfrom:x,connectingto:S,valid:D,connectionindicator:r&&(!T||w)&&(T||E?a:i)}]),onMouseDown:k,onTouchStart:k,onClick:v?t=>{let{onClickConnectStart:r,onClickConnectEnd:a,connectionClickStartHandle:o,connectionMode:s,isValidConnection:c,lib:l,rfId:u,nodeLookup:d,connection:f}=g.getState();if(!_||!o&&!i)return;if(!o){r?.(t.nativeEvent,{nodeId:_,handleId:m,handleType:e}),g.setState({connectionClickStartHandle:{nodeId:_,type:e,id:m}});return}let p=cD(t.target),h=n||c,{connection:v,isValid:y}=_O.isValid(t.nativeEvent,{handle:{nodeId:_,id:m,type:e},connectionMode:s,fromNodeId:o.nodeId,fromHandleId:o.id||null,fromType:o.type,isValidConnection:h,flowId:u,doc:p,lib:l,nodeLookup:d});y&&v&&O(v);let b=structuredClone(f);delete b.inProgress,b.toPosition=b.toHandle?b.toHandle.position:null,a?.(t,b),g.setState({connectionClickStartHandle:null})}:void 0,ref:p,...f,children:c})}var NA=(0,y.memo)(Qk(MA));function PA({data:e,isConnectable:t,sourcePosition:n=$.Bottom}){return(0,K.jsxs)(K.Fragment,{children:[e?.label,(0,K.jsx)(NA,{type:`source`,position:n,isConnectable:t})]})}function FA({data:e,isConnectable:t,targetPosition:n=$.Top,sourcePosition:r=$.Bottom}){return(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(NA,{type:`target`,position:n,isConnectable:t}),e?.label,(0,K.jsx)(NA,{type:`source`,position:r,isConnectable:t})]})}function IA(){return null}function LA({data:e,isConnectable:t,targetPosition:n=$.Top}){return(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(NA,{type:`target`,position:n,isConnectable:t}),e?.label]})}var RA={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},zA={input:PA,default:FA,output:LA,group:IA};function BA(e){return e.internals.handleBounds===void 0?{width:e.width??e.initialWidth??e.style?.width,height:e.height??e.initialHeight??e.style?.height}:{width:e.width??e.style?.width,height:e.height??e.style?.height}}var VA=e=>{let{width:t,height:n,x:r,y:i}=xE(e.nodeLookup,{filter:e=>!!e.selected});return{width:HE(t)?t:null,height:HE(n)?n:null,userSelectionActive:e.userSelectionActive,transformString:`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]}) translate(${r}px,${i}px)`}};function HA({onSelectionContextMenu:e,noPanClassName:t,disableKeyboardA11y:n}){let r=ck(),{width:i,height:a,transformString:o,userSelectionActive:s}=sk(VA,rk),c=SA(),l=(0,y.useRef)(null);(0,y.useEffect)(()=>{n||l.current?.focus({preventScroll:!0})},[n]);let u=!s&&i!==null&&a!==null;if(bA({nodeRef:l,disabled:!u}),!u)return null;let d=e?t=>{e(t,r.getState().nodes.filter(e=>e.selected))}:void 0;return(0,K.jsx)(`div`,{className:Sb([`react-flow__nodesselection`,`react-flow__container`,t]),style:{transform:o},children:(0,K.jsx)(`div`,{ref:l,className:`react-flow__nodesselection-rect`,onContextMenu:d,tabIndex:n?void 0:-1,onKeyDown:n?void 0:e=>{Object.prototype.hasOwnProperty.call(RA,e.key)&&(e.preventDefault(),c({direction:RA[e.key],factor:e.shiftKey?4:1}))},style:{width:i,height:a}})})}var UA=typeof window<`u`?window:void 0,WA=e=>({nodesSelectionActive:e.nodesSelectionActive,userSelectionActive:e.userSelectionActive});function GA({children:e,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:r,onPaneMouseLeave:i,onPaneContextMenu:a,onPaneScroll:o,paneClickDistance:s,deleteKeyCode:c,selectionKeyCode:l,selectionOnDrag:u,selectionMode:d,onSelectionStart:f,onSelectionEnd:p,multiSelectionKeyCode:m,panActivationKeyCode:h,zoomActivationKeyCode:g,elementsSelectable:_,zoomOnScroll:v,zoomOnPinch:y,panOnScroll:b,panOnScrollSpeed:x,panOnScrollMode:S,zoomOnDoubleClick:C,panOnDrag:w,autoPanOnSelection:T,defaultViewport:E,translateExtent:D,minZoom:O,maxZoom:k,preventScrolling:A,onSelectionContextMenu:j,noWheelClassName:M,noPanClassName:N,disableKeyboardA11y:P,onViewportChange:F,isControlledViewport:I}){let{nodesSelectionActive:L,userSelectionActive:R}=sk(WA,rk),z=Ik(l,{target:UA}),B=Ik(h,{target:UA}),ee=B||w,V=B||b,H=u&&ee!==!0,te=z||R||H;return lA({deleteKeyCode:c,multiSelectionKeyCode:m}),(0,K.jsx)(pA,{onPaneContextMenu:a,elementsSelectable:_,zoomOnScroll:v,zoomOnPinch:y,panOnScroll:V,panActivationKeyPressed:B,panOnScrollSpeed:x,panOnScrollMode:S,zoomOnDoubleClick:C,panOnDrag:!z&&ee,defaultViewport:E,translateExtent:D,minZoom:O,maxZoom:k,zoomActivationKeyCode:g,preventScrolling:A,noWheelClassName:M,noPanClassName:N,onViewportChange:F,isControlledViewport:I,paneClickDistance:s,selectionOnDrag:H,children:(0,K.jsxs)(vA,{onSelectionStart:f,onSelectionEnd:p,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:r,onPaneMouseLeave:i,onPaneContextMenu:a,onPaneScroll:o,panOnDrag:ee,autoPanOnSelection:T,isSelecting:!!te,selectionMode:d,selectionKeyPressed:z,paneClickDistance:s,selectionOnDrag:H,children:[e,L&&(0,K.jsx)(HA,{onSelectionContextMenu:j,noPanClassName:N,disableKeyboardA11y:P})]})})}GA.displayName=`FlowRenderer`;var KA=(0,y.memo)(GA),qA=e=>t=>e?SE(t.nodeLookup,{x:0,y:0,width:t.width,height:t.height},t.transform,!0).map(e=>e.id):Array.from(t.nodeLookup.keys());function JA(e){return sk((0,y.useCallback)(qA(e),[e]),rk)}var YA=e=>e.updateNodeInternals;function XA(){let e=sk(YA),[t]=(0,y.useState)(()=>typeof ResizeObserver>`u`?null:new ResizeObserver(t=>{let n=new Map;t.forEach(e=>{let t=e.target.getAttribute(`data-id`);n.set(t,{id:t,nodeElement:e.target,force:!0})}),e(n)}));return(0,y.useEffect)(()=>()=>{t?.disconnect()},[t]),t}function ZA({node:e,nodeType:t,hasDimensions:n,resizeObserver:r}){let i=ck(),a=(0,y.useRef)(null),o=(0,y.useRef)(null),s=(0,y.useRef)(e.sourcePosition),c=(0,y.useRef)(e.targetPosition),l=(0,y.useRef)(t),u=n&&!!e.internals.handleBounds;return(0,y.useEffect)(()=>{a.current&&!e.hidden&&(!u||o.current!==a.current)&&(o.current&&r?.unobserve(o.current),r?.observe(a.current),o.current=a.current)},[u,e.hidden]),(0,y.useEffect)(()=>()=>{o.current&&=(r?.unobserve(o.current),null)},[]),(0,y.useEffect)(()=>{if(a.current){let n=l.current!==t,r=s.current!==e.sourcePosition,o=c.current!==e.targetPosition;(n||r||o)&&(l.current=t,s.current=e.sourcePosition,c.current=e.targetPosition,i.getState().updateNodeInternals(new Map([[e.id,{id:e.id,nodeElement:a.current,force:!0}]])))}},[e.id,t,e.sourcePosition,e.targetPosition]),a}function QA({id:e,onClick:t,onMouseEnter:n,onMouseMove:r,onMouseLeave:i,onContextMenu:a,onDoubleClick:o,nodesDraggable:s,elementsSelectable:c,nodesConnectable:l,nodesFocusable:u,resizeObserver:d,noDragClassName:f,noPanClassName:p,disableKeyboardA11y:m,rfId:h,nodeTypes:g,nodeClickDistance:_,onError:v}){let{node:y,internals:b,isParent:x}=sk(t=>{let n=t.nodeLookup.get(e),r=t.parentLookup.has(e);return{node:n,internals:n.internals,isParent:r}},rk),S=y.type||`default`,C=g?.[S]||zA[S];C===void 0&&(v?.(`003`,aE.error003(S)),S=`default`,C=g?.default||zA.default);let w=!!(y.draggable||s&&y.draggable===void 0),T=!!(y.selectable||c&&y.selectable===void 0),E=!!(y.connectable||l&&y.connectable===void 0),D=!!(y.focusable||u&&y.focusable===void 0),O=ck(),k=eD(y),A=ZA({node:y,nodeType:S,hasDimensions:k,resizeObserver:d}),j=bA({nodeRef:A,disabled:y.hidden||!w,noDragClassName:f,handleSelector:y.dragHandle,nodeId:e,isSelectable:T,nodeClickDistance:_}),M=SA();if(y.hidden)return null;let N=$E(y),P=BA(y),F=T||w||t||n||r||i,I=n?e=>n(e,{...b.userNode}):void 0,L=r?e=>r(e,{...b.userNode}):void 0,R=i?e=>i(e,{...b.userNode}):void 0,z=a?e=>a(e,{...b.userNode}):void 0,B=o?e=>o(e,{...b.userNode}):void 0,ee=n=>{let{selectNodesOnDrag:r,nodeDragThreshold:i}=O.getState();T&&(!r||!w||i>0)&&yA({id:e,store:O,nodeRef:A}),t&&t(n,{...b.userNode})},V=t=>{if(!(uD(t.nativeEvent)||m)){if(sE.includes(t.key)&&T){let n=t.key===`Escape`;yA({id:e,store:O,unselect:n,nodeRef:A})}else if(w&&y.selected&&Object.prototype.hasOwnProperty.call(RA,t.key)){t.preventDefault();let{ariaLabelConfig:e}=O.getState();O.setState({ariaLiveMessage:e[`node.a11yDescription.ariaLiveMessage`]({direction:t.key.replace(`Arrow`,``).toLowerCase(),x:~~b.positionAbsolute.x,y:~~b.positionAbsolute.y})}),M({direction:RA[t.key],factor:t.shiftKey?4:1})}}},H=()=>{if(m||!A.current?.matches(`:focus-visible`))return;let{transform:t,width:n,height:r,autoPanOnNodeFocus:i,setCenter:a}=O.getState();i&&(SE(new Map([[e,y]]),{x:0,y:0,width:n,height:r},t,!0).length>0||a(y.position.x+N.width/2,y.position.y+N.height/2,{zoom:t[2]}))};return(0,K.jsx)(`div`,{className:Sb([`react-flow__node`,`react-flow__node-${S}`,{[p]:w},y.className,{selected:y.selected,selectable:T,parent:x,draggable:w,dragging:j}]),ref:A,style:{zIndex:b.z,transform:`translate(${b.positionAbsolute.x}px,${b.positionAbsolute.y}px)`,pointerEvents:F?`all`:`none`,visibility:k?`visible`:`hidden`,...y.style,...P},"data-id":e,"data-testid":`rf__node-${e}`,onMouseEnter:I,onMouseMove:L,onMouseLeave:R,onContextMenu:z,onClick:ee,onDoubleClick:B,onKeyDown:D?V:void 0,tabIndex:D?0:void 0,onFocus:D?H:void 0,role:y.ariaRole??(D?`group`:void 0),"aria-roledescription":`node`,"aria-describedby":m?void 0:`${dk}-${h}`,"aria-label":y.ariaLabel,...y.domAttributes,children:(0,K.jsx)(wA,{value:e,children:(0,K.jsx)(C,{id:e,data:y.data,type:S,positionAbsoluteX:b.positionAbsolute.x,positionAbsoluteY:b.positionAbsolute.y,selected:y.selected??!1,selectable:T,draggable:w,deletable:y.deletable??!0,isConnectable:E,sourcePosition:y.sourcePosition,targetPosition:y.targetPosition,dragging:j,dragHandle:y.dragHandle,zIndex:b.z,parentId:y.parentId,...N})})})}var $A=(0,y.memo)(QA),ej=e=>({nodesConnectable:e.nodesConnectable,nodesFocusable:e.nodesFocusable,elementsSelectable:e.elementsSelectable,onError:e.onError});function tj(e){let{nodesConnectable:t,nodesFocusable:n,elementsSelectable:r,onError:i}=sk(ej,rk),a=JA(e.onlyRenderVisibleElements),o=XA();return(0,K.jsx)(`div`,{className:`react-flow__nodes`,style:dA,children:a.map(a=>(0,K.jsx)($A,{id:a,nodeTypes:e.nodeTypes,nodeExtent:e.nodeExtent,onClick:e.onNodeClick,onMouseEnter:e.onNodeMouseEnter,onMouseMove:e.onNodeMouseMove,onMouseLeave:e.onNodeMouseLeave,onContextMenu:e.onNodeContextMenu,onDoubleClick:e.onNodeDoubleClick,noDragClassName:e.noDragClassName,noPanClassName:e.noPanClassName,rfId:e.rfId,disableKeyboardA11y:e.disableKeyboardA11y,resizeObserver:o,nodesDraggable:e.nodesDraggable??!0,nodesConnectable:t,nodesFocusable:n,elementsSelectable:r,nodeClickDistance:e.nodeClickDistance,onError:i},a))})}tj.displayName=`NodeRenderer`;var nj=(0,y.memo)(tj);function rj(e){return sk((0,y.useCallback)(t=>{if(!e)return t.edges.map(e=>e.id);let n=[];if(t.width&&t.height)for(let e of t.edges){let r=t.nodeLookup.get(e.source),i=t.nodeLookup.get(e.target);r&&i&&bD({sourceNode:r,targetNode:i,width:t.width,height:t.height,transform:t.transform})&&n.push(e.id)}return n},[e]),rk)}var ij=({color:e=`none`,strokeWidth:t=1})=>{let n={strokeWidth:t,...e&&{stroke:e}};return(0,K.jsx)(`polyline`,{className:`arrow`,style:n,strokeLinecap:`round`,fill:`none`,strokeLinejoin:`round`,points:`-5,-4 0,0 -5,4`})},aj=({color:e=`none`,strokeWidth:t=1})=>{let n={strokeWidth:t,...e&&{stroke:e,fill:e}};return(0,K.jsx)(`polyline`,{className:`arrowclosed`,style:n,strokeLinecap:`round`,strokeLinejoin:`round`,points:`-5,-4 0,0 -5,4 -5,-4`})},oj={[mE.Arrow]:ij,[mE.ArrowClosed]:aj};function sj(e){let t=ck();return(0,y.useMemo)(()=>Object.prototype.hasOwnProperty.call(oj,e)?oj[e]:(t.getState().onError?.(`009`,aE.error009(e)),null),[e])}var cj=({id:e,type:t,color:n,width:r=12.5,height:i=12.5,markerUnits:a=`strokeWidth`,strokeWidth:o,orient:s=`auto-start-reverse`})=>{let c=sj(t);return c?(0,K.jsx)(`marker`,{className:`react-flow__arrowhead`,id:e,markerWidth:`${r}`,markerHeight:`${i}`,viewBox:`-10 -10 20 20`,markerUnits:a,orient:s,refX:`0`,refY:`0`,children:(0,K.jsx)(c,{color:n,strokeWidth:o})}):null},lj=({defaultColor:e,rfId:t})=>{let n=sk(e=>e.edges),r=sk(e=>e.defaultEdgeOptions),i=(0,y.useMemo)(()=>LD(n,{id:t,defaultColor:e,defaultMarkerStart:r?.markerStart,defaultMarkerEnd:r?.markerEnd}),[n,r,t,e]);return i.length?(0,K.jsx)(`svg`,{className:`react-flow__marker`,"aria-hidden":`true`,children:(0,K.jsx)(`defs`,{children:i.map(e=>(0,K.jsx)(cj,{id:e.id,type:e.type,color:e.color,width:e.width,height:e.height,markerUnits:e.markerUnits,strokeWidth:e.strokeWidth,orient:e.orient},e.id))})}):null};lj.displayName=`MarkerDefinitions`;var uj=(0,y.memo)(lj);function dj({x:e,y:t,label:n,labelStyle:r,labelShowBg:i=!0,labelBgStyle:a,labelBgPadding:o=[2,4],labelBgBorderRadius:s=2,children:c,className:l,...u}){let[d,f]=(0,y.useState)({x:1,y:0,width:0,height:0}),p=Sb([`react-flow__edge-textwrapper`,l]),m=(0,y.useRef)(null);return(0,y.useEffect)(()=>{if(m.current){let e=m.current.getBBox();f({x:e.x,y:e.y,width:e.width,height:e.height})}},[n]),n?(0,K.jsxs)(`g`,{transform:`translate(${e-d.width/2} ${t-d.height/2})`,className:p,visibility:d.width?`visible`:`hidden`,...u,children:[i&&(0,K.jsx)(`rect`,{width:d.width+2*o[0],x:-o[0],y:-o[1],height:d.height+2*o[1],className:`react-flow__edge-textbg`,style:a,rx:s,ry:s}),(0,K.jsx)(`text`,{className:`react-flow__edge-text`,y:d.height/2,dy:`0.3em`,ref:m,style:r,children:n}),c]}):null}dj.displayName=`EdgeText`;var fj=(0,y.memo)(dj);function pj({path:e,labelX:t,labelY:n,label:r,labelStyle:i,labelShowBg:a,labelBgStyle:o,labelBgPadding:s,labelBgBorderRadius:c,interactionWidth:l=20,...u}){return(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`path`,{...u,d:e,fill:`none`,className:Sb([`react-flow__edge-path`,u.className])}),l?(0,K.jsx)(`path`,{d:e,fill:`none`,strokeOpacity:0,strokeWidth:l,className:`react-flow__edge-interaction`}):null,r&&HE(t)&&HE(n)?(0,K.jsx)(fj,{x:t,y:n,label:r,labelStyle:i,labelShowBg:a,labelBgStyle:o,labelBgPadding:s,labelBgBorderRadius:c}):null]})}function mj({pos:e,x1:t,y1:n,x2:r,y2:i}){return e===$.Left||e===$.Right?[.5*(t+r),n]:[t,.5*(n+i)]}function hj({sourceX:e,sourceY:t,sourcePosition:n=$.Bottom,targetX:r,targetY:i,targetPosition:a=$.Top}){let[o,s]=mj({pos:n,x1:e,y1:t,x2:r,y2:i}),[c,l]=mj({pos:a,x1:r,y1:i,x2:e,y2:t}),[u,d,f,p]=mD({sourceX:e,sourceY:t,targetX:r,targetY:i,sourceControlX:o,sourceControlY:s,targetControlX:c,targetControlY:l});return[`M${e},${t} C${o},${s} ${c},${l} ${r},${i}`,u,d,f,p]}function gj(e){return(0,y.memo)(({id:t,sourceX:n,sourceY:r,targetX:i,targetY:a,sourcePosition:o,targetPosition:s,label:c,labelStyle:l,labelShowBg:u,labelBgStyle:d,labelBgPadding:f,labelBgBorderRadius:p,style:m,markerEnd:h,markerStart:g,interactionWidth:_})=>{let[v,y,b]=hj({sourceX:n,sourceY:r,sourcePosition:o,targetX:i,targetY:a,targetPosition:s}),x=e.isInternal?void 0:t;return(0,K.jsx)(pj,{id:x,path:v,labelX:y,labelY:b,label:c,labelStyle:l,labelShowBg:u,labelBgStyle:d,labelBgPadding:f,labelBgBorderRadius:p,style:m,markerEnd:h,markerStart:g,interactionWidth:_})})}var _j=gj({isInternal:!1}),vj=gj({isInternal:!0});_j.displayName=`SimpleBezierEdge`,vj.displayName=`SimpleBezierEdgeInternal`;function yj(e){return(0,y.memo)(({id:t,sourceX:n,sourceY:r,targetX:i,targetY:a,label:o,labelStyle:s,labelShowBg:c,labelBgStyle:l,labelBgPadding:u,labelBgBorderRadius:d,style:f,sourcePosition:p=$.Bottom,targetPosition:m=$.Top,markerEnd:h,markerStart:g,pathOptions:_,interactionWidth:v})=>{let[y,b,x]=AD({sourceX:n,sourceY:r,sourcePosition:p,targetX:i,targetY:a,targetPosition:m,borderRadius:_?.borderRadius,offset:_?.offset,stepPosition:_?.stepPosition}),S=e.isInternal?void 0:t;return(0,K.jsx)(pj,{id:S,path:y,labelX:b,labelY:x,label:o,labelStyle:s,labelShowBg:c,labelBgStyle:l,labelBgPadding:u,labelBgBorderRadius:d,style:f,markerEnd:h,markerStart:g,interactionWidth:v})})}var bj=yj({isInternal:!1}),xj=yj({isInternal:!0});bj.displayName=`SmoothStepEdge`,xj.displayName=`SmoothStepEdgeInternal`;function Sj(e){return(0,y.memo)(({id:t,...n})=>{let r=e.isInternal?void 0:t;return(0,K.jsx)(bj,{...n,id:r,pathOptions:(0,y.useMemo)(()=>({borderRadius:0,offset:n.pathOptions?.offset}),[n.pathOptions?.offset])})})}var Cj=Sj({isInternal:!1}),wj=Sj({isInternal:!0});Cj.displayName=`StepEdge`,wj.displayName=`StepEdgeInternal`;function Tj(e){return(0,y.memo)(({id:t,sourceX:n,sourceY:r,targetX:i,targetY:a,label:o,labelStyle:s,labelShowBg:c,labelBgStyle:l,labelBgPadding:u,labelBgBorderRadius:d,style:f,markerEnd:p,markerStart:m,interactionWidth:h})=>{let[g,_,v]=wD({sourceX:n,sourceY:r,targetX:i,targetY:a}),y=e.isInternal?void 0:t;return(0,K.jsx)(pj,{id:y,path:g,labelX:_,labelY:v,label:o,labelStyle:s,labelShowBg:c,labelBgStyle:l,labelBgPadding:u,labelBgBorderRadius:d,style:f,markerEnd:p,markerStart:m,interactionWidth:h})})}var Ej=Tj({isInternal:!1}),Dj=Tj({isInternal:!0});Ej.displayName=`StraightEdge`,Dj.displayName=`StraightEdgeInternal`;function Oj(e){return(0,y.memo)(({id:t,sourceX:n,sourceY:r,targetX:i,targetY:a,sourcePosition:o=$.Bottom,targetPosition:s=$.Top,label:c,labelStyle:l,labelShowBg:u,labelBgStyle:d,labelBgPadding:f,labelBgBorderRadius:p,style:m,markerEnd:h,markerStart:g,pathOptions:_,interactionWidth:v})=>{let[y,b,x]=_D({sourceX:n,sourceY:r,sourcePosition:o,targetX:i,targetY:a,targetPosition:s,curvature:_?.curvature}),S=e.isInternal?void 0:t;return(0,K.jsx)(pj,{id:S,path:y,labelX:b,labelY:x,label:c,labelStyle:l,labelShowBg:u,labelBgStyle:d,labelBgPadding:f,labelBgBorderRadius:p,style:m,markerEnd:h,markerStart:g,interactionWidth:v})})}var kj=Oj({isInternal:!1}),Aj=Oj({isInternal:!0});kj.displayName=`BezierEdge`,Aj.displayName=`BezierEdgeInternal`;var jj={default:Aj,straight:Dj,step:wj,smoothstep:xj,simplebezier:vj},Mj={sourceX:null,sourceY:null,targetX:null,targetY:null,sourcePosition:null,targetPosition:null,zIndex:void 0},Nj=(e,t,n)=>n===$.Left?e-t:n===$.Right?e+t:e,Pj=(e,t,n)=>n===$.Top?e-t:n===$.Bottom?e+t:e,Fj=`react-flow__edgeupdater`;function Ij({position:e,centerX:t,centerY:n,radius:r=10,onMouseDown:i,onMouseEnter:a,onMouseOut:o,type:s}){return(0,K.jsx)(`circle`,{onMouseDown:i,onMouseEnter:a,onMouseOut:o,className:Sb([Fj,`${Fj}-${s}`]),cx:Nj(t,r,e),cy:Pj(n,r,e),r,stroke:`transparent`,fill:`transparent`})}function Lj({isReconnectable:e,reconnectRadius:t,edge:n,sourceX:r,sourceY:i,targetX:a,targetY:o,sourcePosition:s,targetPosition:c,onReconnect:l,onReconnectStart:u,onReconnectEnd:d,setReconnecting:f,setUpdateHover:p}){let m=ck(),h=(e,t)=>{if(e.button!==0)return;let{autoPanOnConnect:r,domNode:i,connectionMode:a,connectionRadius:o,lib:s,onConnectStart:c,cancelConnection:p,nodeLookup:h,rfId:g,panBy:_,updateConnection:v}=m.getState(),y=t.type===`target`;_O.onPointerDown(e.nativeEvent,{autoPanOnConnect:r,connectionMode:a,connectionRadius:o,domNode:i,handleId:t.id,nodeId:t.nodeId,nodeLookup:h,isTarget:y,edgeUpdaterType:t.type,lib:s,flowId:g,cancelConnection:p,panBy:_,isValidConnection:(...e)=>m.getState().isValidConnection?.(...e)??!0,onConnect:e=>l?.(n,e),onConnectStart:(r,i)=>{f(!0),u?.(e,n,t.type),c?.(r,i)},onConnectEnd:(...e)=>m.getState().onConnectEnd?.(...e),onReconnectEnd:(e,r)=>{f(!1),d?.(e,n,t.type,r)},updateConnection:v,getTransform:()=>m.getState().transform,getFromHandle:()=>m.getState().connection.fromHandle,dragThreshold:m.getState().connectionDragThreshold,handleDomNode:e.currentTarget})},g=e=>h(e,{nodeId:n.target,id:n.targetHandle??null,type:`target`}),_=e=>h(e,{nodeId:n.source,id:n.sourceHandle??null,type:`source`}),v=()=>p(!0),y=()=>p(!1);return(0,K.jsxs)(K.Fragment,{children:[(e===!0||e===`source`)&&(0,K.jsx)(Ij,{position:s,centerX:r,centerY:i,radius:t,onMouseDown:g,onMouseEnter:v,onMouseOut:y,type:`source`}),(e===!0||e===`target`)&&(0,K.jsx)(Ij,{position:c,centerX:a,centerY:o,radius:t,onMouseDown:_,onMouseEnter:v,onMouseOut:y,type:`target`})]})}function Rj({id:e,edgesFocusable:t,edgesReconnectable:n,elementsSelectable:r,onClick:i,onDoubleClick:a,onContextMenu:o,onMouseEnter:s,onMouseMove:c,onMouseLeave:l,reconnectRadius:u,onReconnect:d,onReconnectStart:f,onReconnectEnd:p,rfId:m,edgeTypes:h,noPanClassName:g,onError:_,disableKeyboardA11y:v}){let b=sk(t=>t.edgeLookup.get(e)),x=sk(e=>e.defaultEdgeOptions);b=x?{...x,...b}:b;let S=b.type||`default`,C=h?.[S]||jj[S];C===void 0&&(_?.(`011`,aE.error011(S)),S=`default`,C=h?.default||jj.default);let w=!!(b.focusable||t&&b.focusable===void 0),T=d!==void 0&&(b.reconnectable||n&&b.reconnectable===void 0),E=!!(b.selectable||r&&b.selectable===void 0),D=(0,y.useRef)(null),[O,k]=(0,y.useState)(!1),[A,j]=(0,y.useState)(!1),M=ck(),{zIndex:N=b.zIndex,sourceX:P,sourceY:F,targetX:I,targetY:L,sourcePosition:R,targetPosition:z}=sk((0,y.useCallback)(t=>{let n=t.nodeLookup.get(b.source),r=t.nodeLookup.get(b.target);if(!n||!r)return Mj;let i=MD({id:e,sourceNode:n,targetNode:r,sourceHandle:b.sourceHandle||null,targetHandle:b.targetHandle||null,connectionMode:t.connectionMode,onError:_}),a=yD({selected:b.selected,zIndex:b.zIndex,sourceNode:n,targetNode:r,elevateOnSelect:t.elevateEdgesOnSelect,zIndexMode:t.zIndexMode});return{...i||Mj,zIndex:a}},[b.source,b.target,b.sourceHandle,b.targetHandle,b.selected,b.zIndex,_]),rk),B=(0,y.useMemo)(()=>b.markerStart?`url('#${ID(b.markerStart,m)}')`:void 0,[b.markerStart,m]),ee=(0,y.useMemo)(()=>b.markerEnd?`url('#${ID(b.markerEnd,m)}')`:void 0,[b.markerEnd,m]);if(b.hidden||P===null||F===null||I===null||L===null)return null;let V=t=>{let{addSelectedEdges:n,unselectNodesAndEdges:r,multiSelectionActive:a}=M.getState();E&&(M.setState({nodesSelectionActive:!1}),b.selected&&a?(r({nodes:[],edges:[b]}),D.current?.blur()):n([e])),i&&i(t,b)},H=a?e=>{a(e,{...b})}:void 0,te=o?e=>{o(e,{...b})}:void 0,ne=s?e=>{s(e,{...b})}:void 0,re=c?e=>{c(e,{...b})}:void 0,ie=l?e=>{l(e,{...b})}:void 0;return(0,K.jsx)(`svg`,{style:{zIndex:N},children:(0,K.jsxs)(`g`,{className:Sb([`react-flow__edge`,`react-flow__edge-${S}`,b.className,g,{selected:b.selected,animated:b.animated,inactive:!E&&!i,updating:O,selectable:E}]),onClick:V,onDoubleClick:H,onContextMenu:te,onMouseEnter:ne,onMouseMove:re,onMouseLeave:ie,onKeyDown:w?t=>{if(!v&&sE.includes(t.key)&&E){let{unselectNodesAndEdges:n,addSelectedEdges:r}=M.getState();t.key===`Escape`?(D.current?.blur(),n({edges:[b]})):r([e])}}:void 0,tabIndex:w?0:void 0,role:b.ariaRole??(w?`group`:`img`),"aria-roledescription":`edge`,"data-id":e,"data-testid":`rf__edge-${e}`,"aria-label":b.ariaLabel===null?void 0:b.ariaLabel||`Edge from ${b.source} to ${b.target}`,"aria-describedby":w?`${fk}-${m}`:void 0,ref:D,...b.domAttributes,children:[!A&&(0,K.jsx)(C,{id:e,source:b.source,target:b.target,type:b.type,selected:b.selected,animated:b.animated,selectable:E,deletable:b.deletable??!0,label:b.label,labelStyle:b.labelStyle,labelShowBg:b.labelShowBg,labelBgStyle:b.labelBgStyle,labelBgPadding:b.labelBgPadding,labelBgBorderRadius:b.labelBgBorderRadius,sourceX:P,sourceY:F,targetX:I,targetY:L,sourcePosition:R,targetPosition:z,data:b.data,style:b.style,sourceHandleId:b.sourceHandle,targetHandleId:b.targetHandle,markerStart:B,markerEnd:ee,pathOptions:`pathOptions`in b?b.pathOptions:void 0,interactionWidth:b.interactionWidth}),T&&(0,K.jsx)(Lj,{edge:b,isReconnectable:T,reconnectRadius:u,onReconnect:d,onReconnectStart:f,onReconnectEnd:p,sourceX:P,sourceY:F,targetX:I,targetY:L,sourcePosition:R,targetPosition:z,setUpdateHover:k,setReconnecting:j})]})})}var zj=(0,y.memo)(Rj),Bj=e=>({edgesFocusable:e.edgesFocusable,edgesReconnectable:e.edgesReconnectable,elementsSelectable:e.elementsSelectable,connectionMode:e.connectionMode,onError:e.onError});function Vj({defaultMarkerColor:e,onlyRenderVisibleElements:t,rfId:n,edgeTypes:r,noPanClassName:i,onReconnect:a,onEdgeContextMenu:o,onEdgeMouseEnter:s,onEdgeMouseMove:c,onEdgeMouseLeave:l,onEdgeClick:u,reconnectRadius:d,onEdgeDoubleClick:f,onReconnectStart:p,onReconnectEnd:m,disableKeyboardA11y:h}){let{edgesFocusable:g,edgesReconnectable:_,elementsSelectable:v,onError:y}=sk(Bj,rk),b=rj(t);return(0,K.jsxs)(`div`,{className:`react-flow__edges`,children:[(0,K.jsx)(uj,{defaultColor:e,rfId:n}),b.map(e=>(0,K.jsx)(zj,{id:e,edgesFocusable:g,edgesReconnectable:_,elementsSelectable:v,noPanClassName:i,onReconnect:a,onContextMenu:o,onMouseEnter:s,onMouseMove:c,onMouseLeave:l,onClick:u,reconnectRadius:d,onDoubleClick:f,onReconnectStart:p,onReconnectEnd:m,rfId:n,onError:y,edgeTypes:r,disableKeyboardA11y:h},e))]})}Vj.displayName=`EdgeRenderer`;var Hj=(0,y.memo)(Vj),Uj=e=>`translate(${e[0]}px,${e[1]}px) scale(${e[2]})`;function Wj({children:e}){let t=ck(),n=(0,y.useRef)(null),[r]=(0,y.useState)(()=>t.getState().transform);return $k(()=>{let e=null,r=()=>{let r=t.getState().transform;e&&r[0]===e[0]&&r[1]===e[1]&&r[2]===e[2]||(e=r,n.current&&(n.current.style.transform=Uj(r)))};return r(),t.subscribe(r)},[t]),(0,K.jsx)(`div`,{ref:n,className:`react-flow__viewport xyflow__viewport react-flow__container`,style:{transform:Uj(r)},children:e})}function Gj(e){let t=oA(),n=(0,y.useRef)(!1);(0,y.useEffect)(()=>{!n.current&&t.viewportInitialized&&e&&(setTimeout(()=>e(t),1),n.current=!0)},[e,t.viewportInitialized])}var Kj=e=>e.panZoom?.syncViewport;function qj(e){let t=sk(Kj),n=ck();return(0,y.useEffect)(()=>{e&&(t?.(e),n.setState({transform:[e.x,e.y,e.zoom]}))},[e,t]),null}function Jj(e){return e.connection.inProgress?{...e.connection,to:GE(e.connection.to,e.transform)}:{...e.connection}}function Yj(e){return e?t=>e(Jj(t)):Jj}function Xj(e){return sk(Yj(e),rk)}var Zj=e=>({nodesConnectable:e.nodesConnectable,isValid:e.connection.isValid,inProgress:e.connection.inProgress,width:e.width,height:e.height});function Qj({containerStyle:e,style:t,type:n,component:r}){let{nodesConnectable:i,width:a,height:o,isValid:s,inProgress:c}=sk(Zj,rk);return a&&i&&c?(0,K.jsx)(`svg`,{style:e,width:a,height:o,className:`react-flow__connectionline react-flow__container`,children:(0,K.jsx)(`g`,{className:Sb([`react-flow__connection`,aD(s)]),children:(0,K.jsx)($j,{style:t,type:n,CustomComponent:r,isValid:s})})}):null}var $j=({style:e,type:t=pE.Bezier,CustomComponent:n,isValid:r})=>{let{inProgress:i,from:a,fromNode:o,fromHandle:s,fromPosition:c,to:l,toNode:u,toHandle:d,toPosition:f,pointer:p}=Xj();if(!i)return;if(n)return(0,K.jsx)(n,{connectionLineType:t,connectionLineStyle:e,fromNode:o,fromHandle:s,fromX:a.x,fromY:a.y,toX:l.x,toY:l.y,fromPosition:c,toPosition:f,connectionStatus:aD(r),toNode:u,toHandle:d,pointer:p});let m=``,h={sourceX:a.x,sourceY:a.y,sourcePosition:c,targetX:l.x,targetY:l.y,targetPosition:f};switch(t){case pE.Bezier:[m]=_D(h);break;case pE.SimpleBezier:[m]=hj(h);break;case pE.Step:[m]=AD({...h,borderRadius:0});break;case pE.SmoothStep:[m]=AD(h);break;default:[m]=wD(h)}return(0,K.jsx)(`path`,{d:m,fill:`none`,className:`react-flow__connection-path`,style:e})};$j.displayName=`ConnectionLine`;var eM={};function tM(e=eM){(0,y.useRef)(e),ck(),(0,y.useEffect)(()=>{},[e])}function nM(){ck(),(0,y.useRef)(!1),(0,y.useEffect)(()=>{},[])}function rM({nodeTypes:e,edgeTypes:t,onInit:n,onNodeClick:r,onEdgeClick:i,onNodeDoubleClick:a,onEdgeDoubleClick:o,onNodeMouseEnter:s,onNodeMouseMove:c,onNodeMouseLeave:l,onNodeContextMenu:u,onSelectionContextMenu:d,onSelectionStart:f,onSelectionEnd:p,connectionLineType:m,connectionLineStyle:h,connectionLineComponent:g,connectionLineContainerStyle:_,selectionKeyCode:v,selectionOnDrag:y,selectionMode:b,multiSelectionKeyCode:x,panActivationKeyCode:S,zoomActivationKeyCode:C,deleteKeyCode:w,onlyRenderVisibleElements:T,elementsSelectable:E,defaultViewport:D,translateExtent:O,minZoom:k,maxZoom:A,preventScrolling:j,defaultMarkerColor:M,zoomOnScroll:N,zoomOnPinch:P,panOnScroll:F,panOnScrollSpeed:I,panOnScrollMode:L,zoomOnDoubleClick:R,panOnDrag:z,autoPanOnSelection:B,onPaneClick:ee,onPaneMouseEnter:V,onPaneMouseMove:H,onPaneMouseLeave:te,onPaneScroll:ne,onPaneContextMenu:re,paneClickDistance:ie,nodeClickDistance:ae,onEdgeContextMenu:oe,onEdgeMouseEnter:se,onEdgeMouseMove:U,onEdgeMouseLeave:ce,reconnectRadius:le,onReconnect:ue,onReconnectStart:de,onReconnectEnd:fe,noDragClassName:pe,noWheelClassName:me,noPanClassName:he,disableKeyboardA11y:ge,nodeExtent:_e,rfId:ve,viewport:ye,onViewportChange:be,nodesDraggable:xe}){return tM(e),tM(t),nM(),Gj(n),qj(ye),(0,K.jsx)(KA,{onPaneClick:ee,onPaneMouseEnter:V,onPaneMouseMove:H,onPaneMouseLeave:te,onPaneContextMenu:re,onPaneScroll:ne,paneClickDistance:ie,deleteKeyCode:w,selectionKeyCode:v,selectionOnDrag:y,selectionMode:b,onSelectionStart:f,onSelectionEnd:p,multiSelectionKeyCode:x,panActivationKeyCode:S,zoomActivationKeyCode:C,elementsSelectable:E,zoomOnScroll:N,zoomOnPinch:P,zoomOnDoubleClick:R,panOnScroll:F,panOnScrollSpeed:I,panOnScrollMode:L,panOnDrag:z,autoPanOnSelection:B,defaultViewport:D,translateExtent:O,minZoom:k,maxZoom:A,onSelectionContextMenu:d,preventScrolling:j,noDragClassName:pe,noWheelClassName:me,noPanClassName:he,disableKeyboardA11y:ge,onViewportChange:be,isControlledViewport:!!ye,children:(0,K.jsxs)(Wj,{children:[(0,K.jsx)(Hj,{edgeTypes:t,onEdgeClick:i,onEdgeDoubleClick:o,onReconnect:ue,onReconnectStart:de,onReconnectEnd:fe,onlyRenderVisibleElements:T,onEdgeContextMenu:oe,onEdgeMouseEnter:se,onEdgeMouseMove:U,onEdgeMouseLeave:ce,reconnectRadius:le,defaultMarkerColor:M,noPanClassName:he,disableKeyboardA11y:ge,rfId:ve}),(0,K.jsx)(Qj,{style:h,type:m,component:g,containerStyle:_}),(0,K.jsx)(`div`,{className:`react-flow__edgelabel-renderer`}),(0,K.jsx)(nj,{nodeTypes:e,onNodeClick:r,onNodeDoubleClick:a,onNodeMouseEnter:s,onNodeMouseMove:c,onNodeMouseLeave:l,onNodeContextMenu:u,nodeClickDistance:ae,onlyRenderVisibleElements:T,noPanClassName:he,noDragClassName:pe,disableKeyboardA11y:ge,nodeExtent:_e,rfId:ve,nodesDraggable:xe}),(0,K.jsx)(`div`,{className:`react-flow__viewport-portal`})]})})}rM.displayName=`GraphView`;var iM=(0,y.memo)(rM),aM=UE(`React Flow`,`https://reactflow.dev/`),oM=({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,width:i,height:a,fitView:o,fitViewOptions:s,minZoom:c=.5,maxZoom:l=2,nodeOrigin:u,nodeExtent:d,zIndexMode:f=`basic`}={})=>{let p=new Map,m=new Map,h=new Map,g=new Map,_=r??t??[],v=n??e??[],y=u??[0,0],b=d??oE;tO(h,g,_);let{nodesInitialized:x}=KD(v,p,m,{nodeOrigin:y,nodeExtent:b,zIndexMode:f}),S=[0,0,1];if(o&&i&&a){let{x:e,y:t,zoom:n}=XE(xE(p,{filter:e=>!(!e.width&&!e.initialWidth||!e.height&&!e.initialHeight)}),i,a,c,l,s?.padding??.1);S=[e,t,n]}return{rfId:`1`,width:i??0,height:a??0,transform:S,nodes:v,nodesInitialized:x,nodeLookup:p,parentLookup:m,edges:_,edgeLookup:g,connectionLookup:h,onNodesChange:null,onEdgesChange:null,hasDefaultNodes:n!==void 0,hasDefaultEdges:r!==void 0,panZoom:null,minZoom:c,maxZoom:l,translateExtent:oE,nodeExtent:b,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionMode:lE.Strict,domNode:null,paneDragging:!1,noPanClassName:`nopan`,nodeOrigin:y,nodeDragThreshold:1,connectionDragThreshold:1,snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,edgesReconnectable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,elevateEdgesOnSelect:!0,selectNodesOnDrag:!0,multiSelectionActive:!1,fitViewQueued:o??!1,fitViewOptions:s,fitViewResolver:null,connection:{...fE},connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:``,autoPanOnConnect:!0,autoPanOnNodeDrag:!0,autoPanOnNodeFocus:!0,autoPanSpeed:15,connectionRadius:20,onError:aM,isValidConnection:void 0,onSelectionChangeHandlers:[],lib:`react`,debug:!1,ariaLabelConfig:cE,zIndexMode:f,defaultEdgeOptions:void 0,onNodesChangeMiddlewareMap:new Map,onEdgesChangeMiddlewareMap:new Map,onNodesDelete:void 0,onEdgesDelete:void 0,onDelete:void 0,onBeforeDelete:void 0,onViewportChangeStart:void 0,onViewportChange:void 0,onViewportChangeEnd:void 0,onNodeDragStart:void 0,onNodeDrag:void 0,onNodeDragStop:void 0,onSelectionDragStart:void 0,onSelectionDrag:void 0,onSelectionDragStop:void 0,onMoveStart:void 0,onMove:void 0,onMoveEnd:void 0,onConnect:void 0,onConnectStart:void 0,onConnectEnd:void 0,onClickConnectStart:void 0,onClickConnectEnd:void 0}},sM=({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,width:i,height:a,fitView:o,fitViewOptions:s,minZoom:c,maxZoom:l,nodeOrigin:u,nodeExtent:d,zIndexMode:f})=>nk((p,m)=>{async function h(){let{nodeLookup:e,panZoom:t,fitViewOptions:n,fitViewResolver:r,width:i,height:a,minZoom:o,maxZoom:s}=m();t&&(await TE({nodes:e,width:i,height:a,panZoom:t,minZoom:o,maxZoom:s},n),r?.resolve(!0),p({fitViewResolver:null}))}return{...oM({nodes:e,edges:t,width:i,height:a,fitView:o,fitViewOptions:s,minZoom:c,maxZoom:l,nodeOrigin:u,nodeExtent:d,defaultNodes:n,defaultEdges:r,zIndexMode:f}),setNodes:e=>{let{nodeLookup:t,parentLookup:n,nodeOrigin:r,nodeExtent:i,elevateNodesOnSelect:a,fitViewQueued:o,zIndexMode:s,nodesSelectionActive:c}=m(),{nodesInitialized:l,hasSelectedNodes:u}=KD(e,t,n,{nodeOrigin:r,nodeExtent:i,elevateNodesOnSelect:a,checkEquality:!0,zIndexMode:s}),d=c&&u;o&&l?(h(),p({nodes:e,nodesInitialized:l,fitViewQueued:!1,fitViewOptions:void 0,nodesSelectionActive:d})):p({nodes:e,nodesInitialized:l,nodesSelectionActive:d})},setEdges:e=>{let{connectionLookup:t,edgeLookup:n}=m();tO(t,n,e),p({edges:e})},setDefaultNodesAndEdges:(e,t)=>{if(e){let{setNodes:t}=m();t(e),p({hasDefaultNodes:!0})}if(t){let{setEdges:e}=m();e(t),p({hasDefaultEdges:!0})}},updateNodeInternals:e=>{let{triggerNodeChanges:t,nodeLookup:n,parentLookup:r,domNode:i,nodeOrigin:a,nodeExtent:o,debug:s,fitViewQueued:c,zIndexMode:l}=m(),{changes:u,updatedInternals:d}=QD(e,n,r,i,a,o,l);d&&(UD(n,r,{nodeOrigin:a,nodeExtent:o,zIndexMode:l}),c?(h(),p({fitViewQueued:!1,fitViewOptions:void 0})):p({}),u?.length>0&&(s&&console.log(`React Flow: trigger node changes`,u),t?.(u)))},updateNodePositions:(e,t=!1)=>{let n=[],r=[],{nodeLookup:i,triggerNodeChanges:a,connection:o,updateConnection:s,onNodesChangeMiddlewareMap:c}=m();for(let[a,c]of e){let e=i.get(a),l=!!(e?.expandParent&&e?.parentId&&c?.position),u={id:a,type:`position`,position:l?{x:Math.max(0,c.position.x),y:Math.max(0,c.position.y)}:c.position,dragging:t};if(e&&o.inProgress&&o.fromNode.id===e.id){let t=PD(e,o.fromHandle,$.Left,!0);s({...o,from:t})}l&&e.parentId&&n.push({id:a,parentId:e.parentId,rect:{...c.internals.positionAbsolute,width:c.measured.width??0,height:c.measured.height??0}}),r.push(u)}if(n.length>0){let{parentLookup:e,nodeOrigin:t}=m(),a=ZD(n,i,e,t);r.push(...a)}for(let e of c.values())r=e(r);a(r)},triggerNodeChanges:e=>{let{onNodesChange:t,setNodes:n,nodes:r,hasDefaultNodes:i,debug:a}=m();e?.length&&(i&&n(Hk(e,r)),a&&console.log(`React Flow: trigger node changes`,e),t?.(e))},triggerEdgeChanges:e=>{let{onEdgesChange:t,setEdges:n,edges:r,hasDefaultEdges:i,debug:a}=m();e?.length&&(i&&n(Uk(e,r)),a&&console.log(`React Flow: trigger edge changes`,e),t?.(e))},addSelectedNodes:e=>{let{multiSelectionActive:t,edgeLookup:n,nodeLookup:r,triggerNodeChanges:i,triggerEdgeChanges:a}=m();if(t){i(e.map(e=>Wk(e,!0)));return}i(Gk(r,new Set([...e]),!0)),a(Gk(n))},addSelectedEdges:e=>{let{multiSelectionActive:t,edgeLookup:n,nodeLookup:r,triggerNodeChanges:i,triggerEdgeChanges:a}=m();if(t){a(e.map(e=>Wk(e,!0)));return}a(Gk(n,new Set([...e]))),i(Gk(r,new Set,!0))},unselectNodesAndEdges:({nodes:e,edges:t}={})=>{let{edges:n,nodes:r,nodeLookup:i,triggerNodeChanges:a,triggerEdgeChanges:o}=m(),s=e||r,c=t||n,l=[];for(let e of s){if(!e.selected)continue;let t=i.get(e.id);t&&(t.selected=!1),l.push(Wk(e.id,!1))}let u=[];for(let e of c)e.selected&&u.push(Wk(e.id,!1));a(l),o(u)},setMinZoom:e=>{let{panZoom:t,maxZoom:n}=m();t?.setScaleExtent([e,n]),p({minZoom:e})},setMaxZoom:e=>{let{panZoom:t,minZoom:n}=m();t?.setScaleExtent([n,e]),p({maxZoom:e})},setTranslateExtent:e=>{m().panZoom?.setTranslateExtent(e),p({translateExtent:e})},resetSelectedElements:()=>{let{edges:e,nodes:t,triggerNodeChanges:n,triggerEdgeChanges:r,elementsSelectable:i}=m();if(!i)return;let a=t.reduce((e,t)=>t.selected?[...e,Wk(t.id,!1)]:e,[]),o=e.reduce((e,t)=>t.selected?[...e,Wk(t.id,!1)]:e,[]);n(a),r(o)},setNodeExtent:e=>{let{nodes:t,nodeLookup:n,parentLookup:r,nodeOrigin:i,elevateNodesOnSelect:a,nodeExtent:o,zIndexMode:s}=m();(e[0][0]!==o[0][0]||e[0][1]!==o[0][1]||e[1][0]!==o[1][0]||e[1][1]!==o[1][1])&&(KD(t,n,r,{nodeOrigin:i,nodeExtent:e,elevateNodesOnSelect:a,checkEquality:!1,zIndexMode:s}),p({nodeExtent:e}))},panBy:e=>{let{transform:t,width:n,height:r,panZoom:i,translateExtent:a}=m();return $D({delta:e,panZoom:i,transform:t,translateExtent:a,width:n,height:r})},setCenter:async(e,t,n)=>{let{width:r,height:i,maxZoom:a,panZoom:o}=m();if(!o)return!1;let s=n?.zoom===void 0?a:n.zoom;return await o.setViewport({x:r/2-e*s,y:i/2-t*s,zoom:s},{duration:n?.duration,ease:n?.ease,interpolate:n?.interpolate}),!0},cancelConnection:()=>{p({connection:{...fE}})},updateConnection:e=>{p({connection:e})},reset:()=>p({...oM()})}},Object.is);function cM({initialNodes:e,initialEdges:t,defaultNodes:n,defaultEdges:r,initialWidth:i,initialHeight:a,initialMinZoom:o,initialMaxZoom:s,initialFitViewOptions:c,fitView:l,nodeOrigin:u,nodeExtent:d,zIndexMode:f,children:p}){let[m]=(0,y.useState)(()=>sM({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,width:i,height:a,fitView:l,minZoom:o,maxZoom:s,fitViewOptions:c,nodeOrigin:u,nodeExtent:d,zIndexMode:f}));return(0,K.jsx)(ak,{value:m,children:(0,K.jsx)(rA,{children:(0,K.jsx)(OA,{children:p})})})}function lM({children:e,nodes:t,edges:n,defaultNodes:r,defaultEdges:i,width:a,height:o,fitView:s,fitViewOptions:c,minZoom:l,maxZoom:u,nodeOrigin:d,nodeExtent:f,zIndexMode:p}){return(0,y.useContext)(ik)?(0,K.jsx)(K.Fragment,{children:e}):(0,K.jsx)(cM,{initialNodes:t,initialEdges:n,defaultNodes:r,defaultEdges:i,initialWidth:a,initialHeight:o,fitView:s,initialFitViewOptions:c,initialMinZoom:l,initialMaxZoom:u,nodeOrigin:d,nodeExtent:f,zIndexMode:p,children:e})}var uM={width:`100%`,height:`100%`,overflow:`hidden`,position:`relative`,zIndex:0};function dM({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,className:i,nodeTypes:a,edgeTypes:o,onNodeClick:s,onEdgeClick:c,onInit:l,onMove:u,onMoveStart:d,onMoveEnd:f,onConnect:p,onConnectStart:m,onConnectEnd:h,onClickConnectStart:g,onClickConnectEnd:_,onNodeMouseEnter:v,onNodeMouseMove:b,onNodeMouseLeave:x,onNodeContextMenu:S,onNodeDoubleClick:C,onNodeDragStart:w,onNodeDrag:T,onNodeDragStop:E,onNodesDelete:D,onEdgesDelete:O,onDelete:k,onSelectionChange:A,onSelectionDragStart:j,onSelectionDrag:M,onSelectionDragStop:N,onSelectionContextMenu:P,onSelectionStart:F,onSelectionEnd:I,onBeforeDelete:L,connectionMode:R,connectionLineType:z=pE.Bezier,connectionLineStyle:B,connectionLineComponent:ee,connectionLineContainerStyle:V,deleteKeyCode:H=`Backspace`,selectionKeyCode:te=`Shift`,selectionOnDrag:ne=!1,selectionMode:re=dE.Full,panActivationKeyCode:ie=`Space`,multiSelectionKeyCode:ae=ZE()?`Meta`:`Control`,zoomActivationKeyCode:oe=ZE()?`Meta`:`Control`,snapToGrid:se,snapGrid:U,onlyRenderVisibleElements:ce=!1,selectNodesOnDrag:le,nodesDraggable:ue,autoPanOnNodeFocus:de,nodesConnectable:fe,nodesFocusable:pe,nodeOrigin:me=Dk,edgesFocusable:he,edgesReconnectable:ge,elementsSelectable:_e=!0,defaultViewport:ve=Ok,minZoom:ye=.5,maxZoom:be=2,translateExtent:xe=oE,preventScrolling:Se=!0,nodeExtent:Ce,defaultMarkerColor:we=`#b1b1b7`,zoomOnScroll:Te=!0,zoomOnPinch:Ee=!0,panOnScroll:De=!1,panOnScrollSpeed:Oe=.5,panOnScrollMode:ke=uE.Free,zoomOnDoubleClick:Ae=!0,panOnDrag:je=!0,onPaneClick:Me,onPaneMouseEnter:Ne,onPaneMouseMove:Pe,onPaneMouseLeave:Fe,onPaneScroll:Ie,onPaneContextMenu:Le,paneClickDistance:Re=1,nodeClickDistance:ze=0,children:Be,onReconnect:Ve,onReconnectStart:He,onReconnectEnd:Ue,onEdgeContextMenu:We,onEdgeDoubleClick:Ge,onEdgeMouseEnter:Ke,onEdgeMouseMove:qe,onEdgeMouseLeave:Je,reconnectRadius:Ye=10,onNodesChange:Xe,onEdgesChange:Ze,noDragClassName:Qe=`nodrag`,noWheelClassName:$e=`nowheel`,noPanClassName:et=`nopan`,fitView:tt,fitViewOptions:nt,connectOnClick:rt,attributionPosition:it,proOptions:at,defaultEdgeOptions:W,elevateNodesOnSelect:ot=!0,elevateEdgesOnSelect:st=!1,disableKeyboardA11y:ct=!1,autoPanOnConnect:lt,autoPanOnNodeDrag:ut,autoPanOnSelection:dt=!0,autoPanSpeed:ft,connectionRadius:G,isValidConnection:pt,onError:mt,style:ht,id:gt,nodeDragThreshold:_t,connectionDragThreshold:vt,viewport:yt,onViewportChange:bt,width:xt,height:St,colorMode:Ct=`light`,debug:wt,onScroll:Tt,ariaLabelConfig:Et,zIndexMode:Dt=`basic`,...Ot},kt){let At=gt||`1`,jt=Pk(Ct),Mt=(0,y.useCallback)(e=>{e.currentTarget.scrollTo({top:0,left:0,behavior:`instant`}),Tt?.(e)},[Tt]);return(0,K.jsx)(`div`,{"data-testid":`rf__wrapper`,...Ot,onScroll:Mt,style:{...ht,...uM},ref:kt,className:Sb([`react-flow`,i,jt]),id:gt,role:`application`,children:(0,K.jsxs)(lM,{nodes:e,edges:t,width:xt,height:St,fitView:tt,fitViewOptions:nt,minZoom:ye,maxZoom:be,nodeOrigin:me,nodeExtent:Ce,zIndexMode:Dt,children:[(0,K.jsx)(Mk,{nodes:e,edges:t,defaultNodes:n,defaultEdges:r,onConnect:p,onConnectStart:m,onConnectEnd:h,onClickConnectStart:g,onClickConnectEnd:_,nodesDraggable:ue,autoPanOnNodeFocus:de,nodesConnectable:fe,nodesFocusable:pe,edgesFocusable:he,edgesReconnectable:ge,elementsSelectable:_e,elevateNodesOnSelect:ot,elevateEdgesOnSelect:st,minZoom:ye,maxZoom:be,nodeExtent:Ce,onNodesChange:Xe,onEdgesChange:Ze,snapToGrid:se,snapGrid:U,connectionMode:R,translateExtent:xe,connectOnClick:rt,defaultEdgeOptions:W,fitView:tt,fitViewOptions:nt,onNodesDelete:D,onEdgesDelete:O,onDelete:k,onNodeDragStart:w,onNodeDrag:T,onNodeDragStop:E,onSelectionDrag:M,onSelectionDragStart:j,onSelectionDragStop:N,onMove:u,onMoveStart:d,onMoveEnd:f,noPanClassName:et,nodeOrigin:me,rfId:At,autoPanOnConnect:lt,autoPanOnNodeDrag:ut,autoPanSpeed:ft,onError:mt,connectionRadius:G,isValidConnection:pt,selectNodesOnDrag:le,nodeDragThreshold:_t,connectionDragThreshold:vt,onBeforeDelete:L,debug:wt,ariaLabelConfig:Et,zIndexMode:Dt}),(0,K.jsx)(iM,{onInit:l,onNodeClick:s,onEdgeClick:c,onNodeMouseEnter:v,onNodeMouseMove:b,onNodeMouseLeave:x,onNodeContextMenu:S,onNodeDoubleClick:C,nodeTypes:a,edgeTypes:o,connectionLineType:z,connectionLineStyle:B,connectionLineComponent:ee,connectionLineContainerStyle:V,selectionKeyCode:te,selectionOnDrag:ne,selectionMode:re,deleteKeyCode:H,multiSelectionKeyCode:ae,panActivationKeyCode:ie,zoomActivationKeyCode:oe,onlyRenderVisibleElements:ce,defaultViewport:ve,translateExtent:xe,minZoom:ye,maxZoom:be,preventScrolling:Se,zoomOnScroll:Te,zoomOnPinch:Ee,zoomOnDoubleClick:Ae,panOnScroll:De,panOnScrollSpeed:Oe,panOnScrollMode:ke,panOnDrag:je,autoPanOnSelection:dt,onPaneClick:Me,onPaneMouseEnter:Ne,onPaneMouseMove:Pe,onPaneMouseLeave:Fe,onPaneScroll:Ie,onPaneContextMenu:Le,paneClickDistance:Re,nodeClickDistance:ze,onSelectionContextMenu:P,onSelectionStart:F,onSelectionEnd:I,onReconnect:Ve,onReconnectStart:He,onReconnectEnd:Ue,onEdgeContextMenu:We,onEdgeDoubleClick:Ge,onEdgeMouseEnter:Ke,onEdgeMouseMove:qe,onEdgeMouseLeave:Je,reconnectRadius:Ye,defaultMarkerColor:we,noDragClassName:Qe,noWheelClassName:$e,noPanClassName:et,rfId:At,disableKeyboardA11y:ct,nodeExtent:Ce,viewport:yt,onViewportChange:bt,nodesDraggable:ue}),(0,K.jsx)(Ek,{onSelectionChange:A}),Be,(0,K.jsx)(bk,{proOptions:at,position:it}),(0,K.jsx)(_k,{rfId:At,disableKeyboardA11y:ct})]})})}var fM=Qk(dM);function pM(e){let[t,n]=(0,y.useState)(e);return[t,n,(0,y.useCallback)(e=>n(t=>Hk(e,t)),[])]}function mM(e){let[t,n]=(0,y.useState)(e);return[t,n,(0,y.useCallback)(e=>n(t=>Uk(e,t)),[])]}aE.error014();function hM(e){return sk((0,y.useCallback)(t=>t.nodeLookup.get(e),[e]),rk)}function gM({dimensions:e,lineWidth:t,variant:n,className:r}){return(0,K.jsx)(`path`,{strokeWidth:t,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`,className:Sb([`react-flow__background-pattern`,n,r])})}function _M({radius:e,className:t}){return(0,K.jsx)(`circle`,{cx:e,cy:e,r:e,className:Sb([`react-flow__background-pattern`,`dots`,t])})}var vM;(function(e){e.Lines=`lines`,e.Dots=`dots`,e.Cross=`cross`})(vM||={});var yM={[vM.Dots]:1,[vM.Lines]:1,[vM.Cross]:6},bM=e=>({transform:e.transform,patternId:`pattern-${e.rfId}`});function xM({id:e,variant:t=vM.Dots,gap:n=20,size:r,lineWidth:i=1,offset:a=0,color:o,bgColor:s,style:c,className:l,patternClassName:u}){let d=(0,y.useRef)(null),{transform:f,patternId:p}=sk(bM,rk),m=r||yM[t],h=t===vM.Dots,g=t===vM.Cross,_=Array.isArray(n)?n:[n,n],v=[_[0]*f[2]||1,_[1]*f[2]||1],b=m*f[2],x=Array.isArray(a)?a:[a,a],S=g?[b,b]:v,C=[x[0]*f[2]+S[0]/2,x[1]*f[2]+S[1]/2],w=`${p}${e||``}`;return(0,K.jsxs)(`svg`,{className:Sb([`react-flow__background`,l]),style:{...c,...dA,"--xy-background-color-props":s,"--xy-background-pattern-color-props":o},ref:d,"data-testid":`rf__background`,children:[(0,K.jsx)(`pattern`,{id:w,x:f[0]%v[0],y:f[1]%v[1],width:v[0],height:v[1],patternUnits:`userSpaceOnUse`,patternTransform:`translate(-${C[0]},-${C[1]})`,children:h?(0,K.jsx)(_M,{radius:b/2,className:u}):(0,K.jsx)(gM,{dimensions:S,lineWidth:i,variant:t,className:u})}),(0,K.jsx)(`rect`,{x:`0`,y:`0`,width:`100%`,height:`100%`,fill:`url(#${w})`})]})}xM.displayName=`Background`;var SM=(0,y.memo)(xM);function CM(){return(0,K.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 32`,children:(0,K.jsx)(`path`,{d:`M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z`})})}function wM(){return(0,K.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 5`,children:(0,K.jsx)(`path`,{d:`M0 0h32v4.2H0z`})})}function TM(){return(0,K.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 30`,children:(0,K.jsx)(`path`,{d:`M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0027.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94c-.531 0-.939-.4-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z`})})}function EM(){return(0,K.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 25 32`,children:(0,K.jsx)(`path`,{d:`M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z`})})}function DM(){return(0,K.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 25 32`,children:(0,K.jsx)(`path`,{d:`M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047z`})})}function OM({children:e,className:t,...n}){return(0,K.jsx)(`button`,{type:`button`,className:Sb([`react-flow__controls-button`,t]),...n,children:e})}var kM=e=>({isInteractive:e.nodesDraggable||e.nodesConnectable||e.elementsSelectable,minZoomReached:e.transform[2]<=e.minZoom,maxZoomReached:e.transform[2]>=e.maxZoom,ariaLabelConfig:e.ariaLabelConfig});function AM({style:e,showZoom:t=!0,showFitView:n=!0,showInteractive:r=!0,fitViewOptions:i,onZoomIn:a,onZoomOut:o,onFitView:s,onInteractiveChange:c,className:l,children:u,position:d=`bottom-left`,orientation:f=`vertical`,"aria-label":p}){let m=ck(),{isInteractive:h,minZoomReached:g,maxZoomReached:_,ariaLabelConfig:v}=sk(kM,rk),{zoomIn:y,zoomOut:b,fitView:x}=oA();return(0,K.jsxs)(vk,{className:Sb([`react-flow__controls`,f===`horizontal`?`horizontal`:`vertical`,l]),position:d,style:e,"data-testid":`rf__controls`,"aria-label":p??v[`controls.ariaLabel`],children:[t&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(OM,{onClick:()=>{y(),a?.()},className:`react-flow__controls-zoomin`,title:v[`controls.zoomIn.ariaLabel`],"aria-label":v[`controls.zoomIn.ariaLabel`],disabled:_,children:(0,K.jsx)(CM,{})}),(0,K.jsx)(OM,{onClick:()=>{b(),o?.()},className:`react-flow__controls-zoomout`,title:v[`controls.zoomOut.ariaLabel`],"aria-label":v[`controls.zoomOut.ariaLabel`],disabled:g,children:(0,K.jsx)(wM,{})})]}),n&&(0,K.jsx)(OM,{className:`react-flow__controls-fitview`,onClick:()=>{x(i),s?.()},title:v[`controls.fitView.ariaLabel`],"aria-label":v[`controls.fitView.ariaLabel`],children:(0,K.jsx)(TM,{})}),r&&(0,K.jsx)(OM,{className:`react-flow__controls-interactive`,onClick:()=>{m.setState({nodesDraggable:!h,nodesConnectable:!h,elementsSelectable:!h}),c?.(!h)},title:v[`controls.interactive.ariaLabel`],"aria-label":v[`controls.interactive.ariaLabel`],children:h?(0,K.jsx)(DM,{}):(0,K.jsx)(EM,{})}),u]})}AM.displayName=`Controls`;var jM=(0,y.memo)(AM);function MM({id:e,x:t,y:n,width:r,height:i,style:a,color:o,strokeColor:s,strokeWidth:c,className:l,borderRadius:u,shapeRendering:d,selected:f,onClick:p}){let{background:m,backgroundColor:h}=a||{},g=o||m||h;return(0,K.jsx)(`rect`,{className:Sb([`react-flow__minimap-node`,{selected:f},l]),x:t,y:n,rx:u,ry:u,width:r,height:i,style:{fill:g,stroke:s,strokeWidth:c},shapeRendering:d,onClick:p?t=>p(t,e):void 0})}var NM=(0,y.memo)(MM),PM=e=>e.nodes.map(e=>e.id),FM=e=>e instanceof Function?e:()=>e;function IM({nodeStrokeColor:e,nodeColor:t,nodeClassName:n=``,nodeBorderRadius:r=5,nodeStrokeWidth:i,nodeComponent:a=NM,onClick:o}){let s=sk(PM,rk),c=FM(t),l=FM(e),u=FM(n),d=typeof window>`u`||window.chrome?`crispEdges`:`geometricPrecision`;return(0,K.jsx)(K.Fragment,{children:s.map(e=>(0,K.jsx)(RM,{id:e,nodeColorFunc:c,nodeStrokeColorFunc:l,nodeClassNameFunc:u,nodeBorderRadius:r,nodeStrokeWidth:i,NodeComponent:a,onClick:o,shapeRendering:d},e))})}function LM({id:e,nodeColorFunc:t,nodeStrokeColorFunc:n,nodeClassNameFunc:r,nodeBorderRadius:i,nodeStrokeWidth:a,shapeRendering:o,NodeComponent:s,onClick:c}){let{node:l,x:u,y:d,width:f,height:p}=sk(t=>{let n=t.nodeLookup.get(e);if(!n)return{node:void 0,x:0,y:0,width:0,height:0};let r=n.internals.userNode,{x:i,y:a}=n.internals.positionAbsolute,{width:o,height:s}=$E(r);return{node:r,x:i,y:a,width:o,height:s}},rk);return!l||l.hidden||!eD(l)?null:(0,K.jsx)(s,{x:u,y:d,width:f,height:p,style:l.style,selected:!!l.selected,className:r(l),color:t(l),borderRadius:i,strokeColor:n(l),strokeWidth:a,shapeRendering:o,onClick:c,id:l.id})}var RM=(0,y.memo)(LM),zM=(0,y.memo)(IM),BM=200,VM=150,HM=e=>!e.hidden,UM=e=>{let t={x:-e.transform[0]/e.transform[2],y:-e.transform[1]/e.transform[2],width:e.width/e.transform[2],height:e.height/e.transform[2]},n=!1;for(let t of e.nodeLookup.values())if(!t.hidden){n=!0;break}return{viewBB:t,boundingRect:n?RE(xE(e.nodeLookup,{filter:HM}),t):t,rfId:e.rfId,panZoom:e.panZoom,translateExtent:e.translateExtent,flowWidth:e.width,flowHeight:e.height,ariaLabelConfig:e.ariaLabelConfig}},WM=(e,t)=>e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height,GM=(e,t)=>WM(e.viewBB,t.viewBB)&&WM(e.boundingRect,t.boundingRect)&&e.rfId===t.rfId&&e.panZoom===t.panZoom&&e.translateExtent===t.translateExtent&&e.flowWidth===t.flowWidth&&e.flowHeight===t.flowHeight&&e.ariaLabelConfig===t.ariaLabelConfig,KM=`react-flow__minimap-desc`;function qM({style:e,className:t,nodeStrokeColor:n,nodeColor:r,nodeClassName:i=``,nodeBorderRadius:a=5,nodeStrokeWidth:o,nodeComponent:s,bgColor:c,maskColor:l,maskStrokeColor:u,maskStrokeWidth:d,position:f=`bottom-right`,onClick:p,onNodeClick:m,pannable:h=!1,zoomable:g=!1,ariaLabel:_,inversePan:v,zoomStep:b=1,offsetScale:x=5}){let S=ck(),C=(0,y.useRef)(null),{boundingRect:w,panZoom:T,viewBB:E,rfId:D,translateExtent:O,flowWidth:k,flowHeight:A,ariaLabelConfig:j}=sk(UM,GM),M=e?.width??BM,N=e?.height??VM,P=w.width/M,F=w.height/N,I=Math.max(P,F),L=I*M,R=I*N,z=x*I,B=w.x-(L-w.width)/2-z,ee=w.y-(R-w.height)/2-z,V=L+z*2,H=R+z*2,te=`${KM}-${D}`,ne=(0,y.useRef)(0),re=(0,y.useRef)();ne.current=I,(0,y.useEffect)(()=>{let e=S.getState().panZoom;if(C.current&&e)return re.current=vO({domNode:C.current,panZoom:e,getTransform:()=>S.getState().transform,getViewScale:()=>ne.current}),()=>{re.current?.destroy()}},[T]),(0,y.useEffect)(()=>{re.current?.update({translateExtent:O,width:k,height:A,inversePan:v,pannable:h,zoomStep:b,zoomable:g})},[h,g,v,b,O,k,A]);let ie=p?e=>{let[t,n]=re.current?.pointer(e)||[0,0];p(e,{x:t,y:n})}:void 0,ae=(0,y.useCallback)((e,t)=>{let n=S.getState().nodeLookup.get(t).internals.userNode;m?.(e,n)},[m]),oe=m?ae:void 0,se=_??j[`minimap.ariaLabel`];return(0,K.jsx)(vk,{position:f,style:{...e,"--xy-minimap-background-color-props":typeof c==`string`?c:void 0,"--xy-minimap-mask-background-color-props":typeof l==`string`?l:void 0,"--xy-minimap-mask-stroke-color-props":typeof u==`string`?u:void 0,"--xy-minimap-mask-stroke-width-props":typeof d==`number`?d*I:void 0,"--xy-minimap-node-background-color-props":typeof r==`string`?r:void 0,"--xy-minimap-node-stroke-color-props":typeof n==`string`?n:void 0,"--xy-minimap-node-stroke-width-props":typeof o==`number`?o:void 0},className:Sb([`react-flow__minimap`,t]),"data-testid":`rf__minimap`,children:(0,K.jsxs)(`svg`,{width:M,height:N,viewBox:`${B} ${ee} ${V} ${H}`,className:`react-flow__minimap-svg`,role:`img`,"aria-labelledby":te,ref:C,onClick:ie,children:[se&&(0,K.jsx)(`title`,{id:te,children:se}),(0,K.jsx)(zM,{onClick:oe,nodeColor:r,nodeStrokeColor:n,nodeBorderRadius:a,nodeClassName:i,nodeStrokeWidth:o,nodeComponent:s}),(0,K.jsx)(`path`,{className:`react-flow__minimap-mask`,d:`M${B-z},${ee-z}h${V+z*2}v${H+z*2}h${-V-z*2}z - M${E.x},${E.y}h${E.width}v${E.height}h${-E.width}z`,fillRule:`evenodd`,pointerEvents:`none`})]})})}qM.displayName=`MiniMap`;var JM=(0,y.memo)(qM),YM=e=>t=>e?`${Math.max(1/t.transform[2],1)}`:void 0,XM={[NO.Line]:`right`,[NO.Handle]:`bottom-right`};function ZM({nodeId:e,position:t,variant:n=NO.Handle,className:r,style:i=void 0,children:a,color:o,minWidth:s=10,minHeight:c=10,maxWidth:l=Number.MAX_VALUE,maxHeight:u=Number.MAX_VALUE,keepAspectRatio:d=!1,resizeDirection:f,autoScale:p=!0,shouldResize:m,onResizeStart:h,onResize:g,onResizeEnd:_}){let v=TA(),b=typeof e==`string`?e:v,x=ck(),S=(0,y.useRef)(null),C=n===NO.Handle,w=sk((0,y.useCallback)(YM(C&&p),[C,p]),rk),T=(0,y.useRef)(null),E=t??XM[n];(0,y.useEffect)(()=>{if(S.current&&b)return T.current||=WO({domNode:S.current,nodeId:b,getStoreItems:()=>{let{nodeLookup:e,transform:t,snapGrid:n,snapToGrid:r,nodeOrigin:i,domNode:a}=x.getState();return{nodeLookup:e,transform:t,snapGrid:n,snapToGrid:r,nodeOrigin:i,paneDomNode:a}},onChange:(e,t)=>{let{triggerNodeChanges:n,nodeLookup:r,parentLookup:i,nodeOrigin:a}=x.getState(),o=[],s={x:e.x,y:e.y},c=r.get(b);if(c&&c.expandParent&&c.parentId){let t=c.origin??a,n=e.width??c.measured.width??0,l=e.height??c.measured.height??0,u=ZD([{id:c.id,parentId:c.parentId,rect:{width:n,height:l,...tD({x:e.x??c.position.x,y:e.y??c.position.y},{width:n,height:l},c.parentId,r,t)}}],r,i,a);o.push(...u),s.x=e.x?Math.max(t[0]*n,e.x):void 0,s.y=e.y?Math.max(t[1]*l,e.y):void 0}if(s.x!==void 0&&s.y!==void 0){let e={id:b,type:`position`,position:{...s}};o.push(e)}if(e.width!==void 0&&e.height!==void 0){let t={id:b,type:`dimensions`,resizing:!0,setAttributes:f?f===`horizontal`?`width`:`height`:!0,dimensions:{width:e.width,height:e.height}};o.push(t)}for(let e of t){let t={...e,type:`position`};o.push(t)}n(o)},onEnd:({width:e,height:t})=>{let n={id:b,type:`dimensions`,resizing:!1,dimensions:{width:e,height:t}};x.getState().triggerNodeChanges([n])}}),T.current.update({controlPosition:E,boundaries:{minWidth:s,minHeight:c,maxWidth:l,maxHeight:u},keepAspectRatio:d,resizeDirection:f,onResizeStart:h,onResize:g,onResizeEnd:_,shouldResize:m}),()=>{T.current?.destroy()}},[E,s,c,l,u,d,h,g,_,m]);let D=E.split(`-`);return(0,K.jsx)(`div`,{className:Sb([`react-flow__resize-control`,`nodrag`,...D,n,r]),ref:S,style:{...i,scale:w,...o&&{[C?`backgroundColor`:`borderColor`]:o}},children:a})}(0,y.memo)(ZM);var QM=e=>{switch(e){case`running`:return{borderColor:`border-[#643FB2] dark:border-[#8B5CF6]`,glow:`shadow-lg shadow-[#643FB2]/20`,badgeColor:`bg-[#643FB2] dark:bg-[#8B5CF6]`};case`completed`:return{borderColor:`border-green-500 dark:border-green-400`,glow:`shadow-lg shadow-green-500/20`,badgeColor:`bg-green-500 dark:bg-green-400`};case`failed`:return{borderColor:`border-red-500 dark:border-red-400`,glow:`shadow-lg shadow-red-500/20`,badgeColor:`bg-red-500 dark:bg-red-400`};case`cancelled`:return{borderColor:`border-orange-500 dark:border-orange-400`,glow:`shadow-lg shadow-orange-500/20`,badgeColor:`bg-orange-500 dark:bg-orange-400`};default:return{borderColor:`border-gray-300 dark:border-gray-600`,glow:``,badgeColor:`bg-gray-400 dark:bg-gray-500`}}},$M=(0,y.memo)(({data:e,selected:t})=>{let n=e,r=QM(n.state),[i,a]=(0,y.useState)(!1),o=n.outputData||n.error,s=n.state===`running`,c=s&&(n.isStreaming??!0),l=n.layoutDirection===`TB`,u=l?$.Top:$.Left,d=l?$.Bottom:$.Right;return(0,K.jsxs)(`div`,{className:jt(`group relative w-64 bg-card dark:bg-card rounded border-2 transition-all duration-200`,r.borderColor,t?`ring-2 ring-blue-500 ring-offset-2`:``,s?r.glow:`shadow-sm`),children:[(0,K.jsx)(NA,{type:`target`,position:u,id:`target`,className:`!w-2 !h-2 !rounded-full !border !border-gray-600 dark:!border-gray-500 transition-colors !min-w-0 !min-h-0`,style:{backgroundColor:n.state===`running`?`#643FB2`:n.state===`completed`?`#10b981`:n.state===`failed`?`#ef4444`:n.state===`cancelled`?`#f97316`:`#4b5563`}}),(0,K.jsx)(NA,{type:`source`,position:d,id:`source`,className:`!w-2 !h-2 !rounded-full !border !border-gray-600 dark:!border-gray-500 transition-colors !min-w-0 !min-h-0`,style:{backgroundColor:n.state===`running`?`#643FB2`:n.state===`completed`?`#10b981`:n.state===`failed`?`#ef4444`:n.state===`cancelled`?`#f97316`:`#4b5563`}}),(0,K.jsxs)(`div`,{className:`p-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,K.jsx)(`div`,{className:`flex-shrink-0 relative`,children:(0,K.jsx)(`div`,{className:`w-10 h-10 rounded-lg bg-gray-900/90 dark:bg-gray-800/90 flex items-center justify-center`,children:n.isStartNode?(0,K.jsx)(Zu,{className:`w-5 h-5 text-[#643FB2] dark:text-[#8B5CF6]`}):(0,K.jsx)(uf,{className:`w-5 h-5 text-gray-300 dark:text-gray-400`})})}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,K.jsx)(`h3`,{className:`font-medium text-sm text-gray-900 dark:text-gray-100 truncate`,children:n.name||n.executorId}),s&&(0,K.jsx)(ld,{className:`w-4 h-4 text-[#643FB2] dark:text-[#8B5CF6] ${c?`animate-spin`:``} flex-shrink-0`})]}),n.executorType&&(0,K.jsx)(`p`,{className:`text-xs text-gray-500 dark:text-gray-400 truncate mt-0.5`,children:n.executorType})]})]}),o&&(0,K.jsxs)(`div`,{className:`mt-2 border-t border-border/50 pt-2`,children:[(0,K.jsxs)(`button`,{onClick:e=>{e.stopPropagation(),a(!i)},className:`flex items-center gap-1 text-xs text-muted-foreground hover:text-foreground transition-colors w-full`,children:[i?(0,K.jsx)(su,{className:`w-3 h-3`}):(0,K.jsx)(du,{className:`w-3 h-3`}),(0,K.jsx)(`span`,{children:n.error?`Show error`:`Show output`})]}),i&&(0,K.jsx)(`div`,{className:`mt-2`,children:(()=>{if(n.error&&typeof n.error==`string`){let e=ub(n.error,200);return(0,K.jsx)(`div`,{className:`text-xs text-red-600 dark:text-red-400 bg-red-50 dark:bg-red-950/20 p-2 rounded border border-red-200 dark:border-red-800 break-words max-h-32 overflow-auto`,children:e})}if(n.outputData)try{let e=typeof n.outputData==`string`?n.outputData:JSON.stringify(n.outputData,null,2);return(0,K.jsx)(`div`,{className:`text-xs text-gray-700 dark:text-gray-300 bg-muted/50 p-2 rounded border max-h-32 overflow-auto`,children:(0,K.jsx)(`pre`,{className:`whitespace-pre-wrap font-mono`,children:e})})}catch{return(0,K.jsx)(`div`,{className:`text-xs text-gray-600 dark:text-gray-400 bg-muted/50 p-2 rounded border`,children:`[Unable to display output]`})}return null})()})]}),s&&(0,K.jsx)(`div`,{className:`absolute inset-0 rounded border-2 border-[#643FB2]/30 dark:border-[#8B5CF6]/30 animate-pulse pointer-events-none`})]})]})});$M.displayName=`ExecutorNode`;var eN=(0,y.memo)(function({id:e,source:t,markerEnd:n,style:r}){let i=hM(t);if(!i)return null;let{width:a,height:o}=i.measured,{x:s,y:c}=i.internals.positionAbsolute;if(!a||!o)return null;let l=i.data?.layoutDirection===`TB`,u;if(l){let e=s+a/2,t=c+o,n=s+a/2,r=c,i=s+a+100;u=`M ${e} ${t} C ${e} ${t+40}, ${i} ${t+40}, ${i} ${c+o/2} C ${i} ${r-40}, ${n} ${r-40}, ${n} ${r}`}else{let e=s+a,t=c+o/2,n=s,r=c+o/2,i=c+o+100;u=`M ${e} ${t} C ${e+40} ${t}, ${e+40} ${i}, ${s+a/2} ${i} C ${n-40} ${i}, ${n-40} ${r}, ${n} ${r}`}return(0,K.jsx)(pj,{id:e,path:u,markerEnd:n,style:r})}),tN={executor:$M},nN={selfLoop:eN};function rN({workflowDump:e,onNodeSelect:t,viewOptions:n,onToggleViewOption:r,layoutDirection:i,onLayoutDirectionChange:a}){let{fitView:o,setViewport:s,setNodes:c}=oA();return(0,K.jsx)(`div`,{className:`absolute top-4 right-4 z-10`,children:(0,K.jsxs)(_f,{children:[(0,K.jsx)(vf,{asChild:!0,children:(0,K.jsxs)(q,{variant:`outline`,size:`sm`,className:`h-8 w-8 p-0 bg-white/90 backdrop-blur-sm border-gray-200 shadow-sm hover:bg-white dark:bg-gray-800/90 dark:border-gray-600 dark:hover:bg-gray-800`,children:[(0,K.jsx)(zu,{className:`h-4 w-4`}),(0,K.jsx)(`span`,{className:`sr-only`,children:`View options`})]})}),(0,K.jsxs)(yf,{align:`end`,className:`w-56`,children:[(0,K.jsxs)(bf,{className:`flex items-center justify-between`,onClick:()=>r?.(`showMinimap`),children:[(0,K.jsxs)(`div`,{className:`flex items-center`,children:[(0,K.jsx)(pd,{className:`mr-2 h-4 w-4`}),`Show Minimap`]}),(0,K.jsx)(nh,{checked:n.showMinimap,onChange:()=>{}})]}),(0,K.jsxs)(bf,{className:`flex items-center justify-between`,onClick:()=>r?.(`showGrid`),children:[(0,K.jsxs)(`div`,{className:`flex items-center`,children:[(0,K.jsx)(Yu,{className:`mr-2 h-4 w-4`}),`Show Grid`]}),(0,K.jsx)(nh,{checked:n.showGrid,onChange:()=>{}})]}),(0,K.jsxs)(bf,{className:`flex items-center justify-between`,onClick:()=>r?.(`animateRun`),children:[(0,K.jsxs)(`div`,{className:`flex items-center`,children:[(0,K.jsx)(gf,{className:`mr-2 h-4 w-4`}),`Animate Run`]}),(0,K.jsx)(nh,{checked:n.animateRun,onChange:()=>{}})]}),(0,K.jsxs)(bf,{className:`flex items-center justify-between`,onClick:()=>r?.(`consolidateBidirectionalEdges`),children:[(0,K.jsxs)(`div`,{className:`flex items-center`,children:[(0,K.jsx)(ql,{className:`mr-2 h-4 w-4`}),`Merge Bidirectional Edges`]}),(0,K.jsx)(nh,{checked:n.consolidateBidirectionalEdges,onChange:()=>{}})]}),(0,K.jsx)(Sf,{}),(0,K.jsxs)(bf,{className:`flex items-center justify-between`,onClick:()=>{let n=i===`LR`?`TB`:`LR`;if(a?.(n),e){let r=hb(db(e,t,n),fb(e),n);c(r)}},children:[(0,K.jsxs)(`div`,{className:`flex items-center`,children:[(0,K.jsx)(Gl,{className:`mr-2 h-4 w-4`}),`Vertical Layout`]}),(0,K.jsx)(nh,{checked:i===`TB`,onChange:()=>{}})]}),(0,K.jsx)(Sf,{}),(0,K.jsxs)(bf,{onClick:()=>{s({x:0,y:0,zoom:1})},children:[(0,K.jsx)(Ld,{className:`mr-2 h-4 w-4`}),`Reset Zoom`]}),(0,K.jsxs)(bf,{onClick:()=>{o({padding:.2})},children:[(0,K.jsx)(hd,{className:`mr-2 h-4 w-4`}),`Fit to Screen`]}),(0,K.jsxs)(bf,{onClick:()=>{if(!e)return;let n=hb(db(e,t,i),fb(e),i);c(n)},children:[(0,K.jsx)(Yd,{className:`mr-2 h-4 w-4`}),`Auto-arrange`]})]})]})})}function iN({nodes:e,nodeUpdates:t,isStreaming:n,animateRun:r}){let{fitView:i}=oA();return(0,y.useEffect)(()=>{if(r){if(n){let t=e.filter(e=>e.data.state===`running`);if(t.length>0){let e=t[0];i({nodes:[e],duration:800,padding:.3,minZoom:.8,maxZoom:1.5})}}else e.length>0&&i({duration:1e3,padding:.2})}},[t,n,r,e]),null}var aN=(0,y.memo)(({timelineVisible:e})=>{let{fitView:t}=oA();return(0,y.useEffect)(()=>{let e=setTimeout(()=>{t({padding:.2,duration:300})},350);return()=>clearTimeout(e)},[e]),null}),oN=(0,y.memo)(function({workflowDump:e,events:t,isStreaming:n,onNodeSelect:r,className:i=``,viewOptions:a={showMinimap:!1,showGrid:!0,animateRun:!0,consolidateBidirectionalEdges:!0},onToggleViewOption:o,layoutDirection:s=`TB`,onLayoutDirectionChange:c,timelineVisible:l=!1}){let{initialNodes:u,initialEdges:d}=(0,y.useMemo)(()=>{if(!e)return{initialNodes:[],initialEdges:[]};let t=db(e,r,s),n=fb(e),i=a.consolidateBidirectionalEdges?bb(n):n;return{initialNodes:t.length>0?hb(t,i,s):t,initialEdges:i}},[e,r,s,a.consolidateBidirectionalEdges]),[f,p,m]=pM(u),[h,g,_]=mM(d),v=(0,y.useMemo)(()=>gb(t,e?.start_executor_id),[t,e?.start_executor_id]);(0,y.useMemo)(()=>{Object.keys(v).length>0?p(e=>_b(e,v,n)):t.length===0&&p(e=>e.map(e=>({...e,data:{...e.data,state:`pending`,outputData:void 0,error:void 0,isStreaming:!1}})))},[v,p,t.length,n]),(0,y.useMemo)(()=>{t.length>0?g(e=>{let n=yb(e,t);return a.consolidateBidirectionalEdges?bb(n):n}):g(e=>{let t=e.map(e=>({...e,animated:!1,style:{stroke:`#6b7280`,strokeWidth:2}}));return a.consolidateBidirectionalEdges?bb(t):t})},[t,g,a.consolidateBidirectionalEdges]),(0,y.useEffect)(()=>{u.length>0&&(p(u),g(d))},[e,a.consolidateBidirectionalEdges]);let b=(0,y.useCallback)((e,t)=>{e.stopPropagation(),r?.(t.data.executorId,t.data)},[r]);return e?u.length===0?(0,K.jsx)(`div`,{className:`flex items-center justify-center h-full bg-gray-50 dark:bg-gray-900 rounded border border-gray-200 dark:border-gray-700 ${i}`,children:(0,K.jsxs)(`div`,{className:`text-center text-gray-500 dark:text-gray-400`,children:[(0,K.jsx)(`div`,{className:`text-lg font-medium mb-2`,children:`No Executors Found`}),(0,K.jsx)(`div`,{className:`text-sm`,children:`Could not extract executors from workflow dump.`}),(0,K.jsxs)(`details`,{className:`mt-2 text-xs`,children:[(0,K.jsx)(`summary`,{className:`cursor-pointer`,children:`Debug Info`}),(0,K.jsx)(`pre`,{className:`mt-1 p-2 bg-gray-100 dark:bg-gray-800 rounded text-left overflow-auto`,children:JSON.stringify(e,null,2)})]})]})}):(0,K.jsxs)(`div`,{className:`h-full w-full ${i}`,children:[(0,K.jsxs)(fM,{nodes:f,edges:h,onNodesChange:m,onEdgesChange:_,onNodeClick:b,nodeTypes:tN,edgeTypes:nN,fitView:!0,fitViewOptions:{padding:.2},minZoom:.1,maxZoom:1.5,defaultEdgeOptions:{type:`default`,animated:!1,style:{stroke:`#6b7280`,strokeWidth:2}},nodesDraggable:!n,nodesConnectable:!1,elementsSelectable:!0,proOptions:{hideAttribution:!0},children:[a.showGrid&&(0,K.jsx)(SM,{variant:vM.Dots,gap:20,size:1,color:`#e5e7eb`,className:`dark:opacity-30`}),(0,K.jsx)(jM,{position:`bottom-left`,showInteractive:!1,style:{backgroundColor:`rgba(255, 255, 255, 0.9)`,border:`1px solid #e5e7eb`,borderRadius:`3px`},className:`dark:!bg-gray-800/90 dark:!border-gray-600`}),a.showMinimap&&(0,K.jsx)(JM,{nodeColor:e=>{switch(e.data?.state){case`running`:return`#643FB2`;case`completed`:return`#10b981`;case`failed`:return`#ef4444`;case`cancelled`:return`#f97316`;default:return`#6b7280`}},maskColor:`rgba(0, 0, 0, 0.1)`,position:`bottom-right`,style:{backgroundColor:`rgba(255, 255, 255, 0.9)`,border:`1px solid #e5e7eb`,borderRadius:`8px`},className:`dark:!bg-gray-800/90 dark:!border-gray-600`}),(0,K.jsx)(iN,{nodes:f,nodeUpdates:v,isStreaming:n,animateRun:a.animateRun}),(0,K.jsx)(aN,{timelineVisible:l}),(0,K.jsx)(rN,{workflowDump:e,onNodeSelect:r,viewOptions:a,onToggleViewOption:o,layoutDirection:s,onLayoutDirectionChange:c})]}),(0,K.jsx)(`style`,{children:` +`));return[t,t.reduce((e,t)=>e.concat(...t),[])]}return[[],[]]},[e]);return(0,y.useEffect)(()=>{let n=t?.target??sA,c=t?.actInsideInputWithModifier??!0;if(e!==null){let e=e=>{if(i.current=e.ctrlKey||e.metaKey||e.shiftKey||e.altKey,(!i.current||i.current&&!c)&&ID(e))return!1;let n=uA(e.code,s);if(a.current.add(e[n]),lA(o,a.current,!1)){let n=e.composedPath?.()?.[0]||e.target,a=n?.nodeName===`BUTTON`||n?.nodeName===`A`;t.preventDefault!==!1&&(i.current||!a)&&e.preventDefault(),r(!0)}},l=e=>{let t=uA(e.code,s);lA(o,a.current,!0)?(r(!1),a.current.clear()):a.current.delete(e[t]),e.key===`Meta`&&a.current.clear(),i.current=!1},u=()=>{a.current.clear(),r(!1)};return n?.addEventListener(`keydown`,e),n?.addEventListener(`keyup`,l),window.addEventListener(`blur`,u),window.addEventListener(`contextmenu`,u),()=>{n?.removeEventListener(`keydown`,e),n?.removeEventListener(`keyup`,l),window.removeEventListener(`blur`,u),window.removeEventListener(`contextmenu`,u)}}},[e,r]),n}function lA(e,t,n){return e.filter(e=>n||e.length===t.size).some(e=>e.every(e=>t.has(e)))}function uA(e,t){return t.includes(e)?`code`:`key`}var dA=()=>{let e=Pk();return(0,y.useMemo)(()=>({zoomIn:async t=>{let{panZoom:n}=e.getState();return n?n.scaleBy(1.2,t):!1},zoomOut:async t=>{let{panZoom:n}=e.getState();return n?n.scaleBy(1/1.2,t):!1},zoomTo:async(t,n)=>{let{panZoom:r}=e.getState();return r?r.scaleTo(t,n):!1},getZoom:()=>e.getState().transform[2],setViewport:async(t,n)=>{let{transform:[r,i,a],panZoom:o}=e.getState();return o?(await o.setViewport({x:t.x??r,y:t.y??i,zoom:t.zoom??a},n),!0):!1},getViewport:()=>{let[t,n,r]=e.getState().transform;return{x:t,y:n,zoom:r}},setCenter:async(t,n,r)=>e.getState().setCenter(t,n,r),fitBounds:async(t,n)=>{let{width:r,height:i,minZoom:a,maxZoom:o,panZoom:s}=e.getState(),c=SD(t,r,i,a,o,n?.padding??.1);return s?(await s.setViewport(c,{duration:n?.duration,ease:n?.ease,interpolate:n?.interpolate}),!0):!1},screenToFlowPosition:(t,n={})=>{let{transform:r,snapGrid:i,snapToGrid:a,domNode:o}=e.getState();if(!o)return t;let{x:s,y:c}=o.getBoundingClientRect(),l={x:t.x-s,y:t.y-c},u=n.snapGrid??i;return _D(l,r,n.snapToGrid??a,u)},flowToScreenPosition:t=>{let{transform:n,domNode:r}=e.getState();if(!r)return t;let{x:i,y:a}=r.getBoundingClientRect(),o=vD(t,n);return{x:o.x+i,y:o.y+a}}}),[])};function fA(e,t){let n=[],r=new Map,i=[];for(let t of e)if(t.type===`add`){i.push(t);continue}else if(t.type===`remove`||t.type===`replace`)r.set(t.id,[t]);else{let e=r.get(t.id);e?e.push(t):r.set(t.id,[t])}for(let e of t){let t=r.get(e.id);if(!t){n.push(e);continue}if(t[0].type===`remove`)continue;if(t[0].type===`replace`){n.push({...t[0].item});continue}let i={...e};for(let e of t)pA(e,i);n.push(i)}return i.length&&i.forEach(e=>{e.index===void 0?n.push({...e.item}):n.splice(e.index,0,{...e.item})}),n}function pA(e,t){switch(e.type){case`select`:t.selected=e.selected;break;case`position`:e.position!==void 0&&(t.position=e.position),e.dragging!==void 0&&(t.dragging=e.dragging);break;case`dimensions`:e.dimensions!==void 0&&(t.measured={...e.dimensions},e.setAttributes&&((e.setAttributes===!0||e.setAttributes===`width`)&&(t.width=e.dimensions.width),(e.setAttributes===!0||e.setAttributes===`height`)&&(t.height=e.dimensions.height))),typeof e.resizing==`boolean`&&(t.resizing=e.resizing)}}function mA(e,t){return fA(e,t)}function hA(e,t){return fA(e,t)}function gA(e,t){return{id:e,type:`select`,selected:t}}function _A(e,t=new Set,n=!1){let r=[];for(let[i,a]of e){let e=t.has(i);(a.selected!==void 0||e)&&a.selected!==e&&(n&&(a.selected=e),r.push(gA(a.id,e)))}return r}function vA({items:e=[],lookup:t}){let n=[],r=new Map(e.map(e=>[e.id,e]));for(let[r,i]of e.entries()){let e=t.get(i.id),a=e?.internals?.userNode??e;a!==void 0&&a!==i&&n.push({id:i.id,item:i,type:`replace`}),a===void 0&&n.push({item:i,type:`add`,index:r})}for(let[e]of t)r.get(e)===void 0&&n.push({id:e,type:`remove`});return n}function yA(e){return{id:e.id,type:`remove`}}var bA=hD(`React Flow`,`https://reactflow.dev/`);function xA(e,t,n={}){return YD(e,t,{...n,onError:n.onError??bA})}var SA=e=>UE(e),CA=e=>HE(e);function wA(e){return(0,y.forwardRef)(e)}var TA=typeof window<`u`?y.useLayoutEffect:y.useEffect;function EA(e){let[t,n]=(0,y.useState)(BigInt(0)),[r]=(0,y.useState)(()=>DA(()=>n(e=>e+BigInt(1))));return TA(()=>{let t=r.get();t.length&&(e(t),r.reset())},[t]),r}function DA(e){let t=[];return{get:()=>t,reset:()=>{t=[]},push:n=>{t.push(n),e()}}}var OA=(0,y.createContext)(null);function kA({children:e}){let t=Pk(),n=EA((0,y.useCallback)(e=>{let{nodes:n=[],setNodes:r,hasDefaultNodes:i,onNodesChange:a,nodeLookup:o,fitViewQueued:s,onNodesChangeMiddlewareMap:c}=t.getState(),l=n;for(let t of e)l=typeof t==`function`?t(l):t;let u=vA({items:l,lookup:o});for(let e of c.values())u=e(u);i&&r(l),u.length>0?a?.(u):s&&window.requestAnimationFrame(()=>{let{fitViewQueued:e,nodes:n,setNodes:r}=t.getState();e&&r(n)})},[])),r=EA((0,y.useCallback)(e=>{let{edges:n=[],setEdges:r,hasDefaultEdges:i,onEdgesChange:a,edgeLookup:o}=t.getState(),s=n;for(let t of e)s=typeof t==`function`?t(s):t;i?r(s):a&&a(vA({items:s,lookup:o}))},[])),i=(0,y.useMemo)(()=>({nodeQueue:n,edgeQueue:r}),[]);return(0,K.jsx)(OA.Provider,{value:i,children:e})}function AA(){let e=(0,y.useContext)(OA);if(!e)throw Error(`useBatchContext must be used within a BatchProvider`);return e}var jA=e=>!!e.panZoom;function MA(){let e=dA(),t=Pk(),n=AA(),r=Nk(jA),i=(0,y.useMemo)(()=>{let e=e=>t.getState().nodeLookup.get(e),r=e=>{n.nodeQueue.push(e)},i=e=>{n.edgeQueue.push(e)},a=e=>{let{nodeLookup:n,nodeOrigin:r}=t.getState(),i=SA(e)?e:n.get(e.id),a=i.parentId?DD(i.position,i.measured,i.parentId,n,r):i.position;return cD({...i,position:a,width:i.measured?.width??i.width,height:i.measured?.height??i.height})},o=(e,t,n={replace:!1})=>{r(r=>r.map(r=>{if(r.id===e){let e=typeof t==`function`?t(r):t;return n.replace&&SA(e)?e:{...r,...e}}return r}))},s=(e,t,n={replace:!1})=>{i(r=>r.map(r=>{if(r.id===e){let e=typeof t==`function`?t(r):t;return n.replace&&CA(e)?e:{...r,...e}}return r}))};return{getNodes:()=>t.getState().nodes.map(e=>({...e})),getNode:t=>e(t)?.internals.userNode,getInternalNode:e,getEdges:()=>{let{edges:e=[]}=t.getState();return e.map(e=>({...e}))},getEdge:e=>t.getState().edgeLookup.get(e),setNodes:r,setEdges:i,addNodes:e=>{let t=Array.isArray(e)?e:[e];n.nodeQueue.push(e=>[...e,...t])},addEdges:e=>{let t=Array.isArray(e)?e:[e];n.edgeQueue.push(e=>[...e,...t])},toObject:()=>{let{nodes:e=[],edges:n=[],transform:r}=t.getState(),[i,a,o]=r;return{nodes:e.map(e=>({...e})),edges:n.map(e=>({...e})),viewport:{x:i,y:a,zoom:o}}},deleteElements:async({nodes:e=[],edges:n=[]})=>{let{nodes:r,edges:i,onNodesDelete:a,onEdgesDelete:o,triggerNodeChanges:s,triggerEdgeChanges:c,onDelete:l,onBeforeDelete:u}=t.getState(),{nodes:d,edges:f}=await $E({nodesToRemove:e,edgesToRemove:n,nodes:r,edges:i,onBeforeDelete:u}),p=f.length>0,m=d.length>0;if(p){let e=f.map(yA);o?.(f),c(e)}if(m){let e=d.map(yA);a?.(d),s(e)}return(m||p)&&l?.({nodes:d,edges:f}),{deletedNodes:d,deletedEdges:f}},getIntersectingNodes:(e,n=!0,r)=>{let i=pD(e),o=i?e:a(e),s=r!==void 0;return o?(r||t.getState().nodes).filter(r=>{let a=t.getState().nodeLookup.get(r.id);if(a&&!i&&(r.id===e.id||!a.internals.positionAbsolute))return!1;let c=cD(s?r:a),l=fD(c,o);return n&&l>0||l>=c.width*c.height||l>=o.width*o.height}):[]},isNodeIntersecting:(e,t,n=!0)=>{let r=pD(e)?e:a(e);if(!r)return!1;let i=fD(r,t);return n&&i>0||i>=t.width*t.height||i>=r.width*r.height},updateNode:o,updateNodeData:(e,t,n={replace:!1})=>{o(e,e=>{let r=typeof t==`function`?t(e):t;return n.replace?{...e,data:r}:{...e,data:{...e.data,...r}}},n)},updateEdge:s,updateEdgeData:(e,t,n={replace:!1})=>{s(e,e=>{let r=typeof t==`function`?t(e):t;return n.replace?{...e,data:r}:{...e,data:{...e.data,...r}}},n)},getNodesBounds:e=>{let{nodeLookup:n,nodeOrigin:r}=t.getState();return KE(e,{nodeLookup:n,nodeOrigin:r})},getHandleConnections:({type:e,id:n,nodeId:r})=>Array.from(t.getState().connectionLookup.get(`${r}-${e}${n?`-${n}`:``}`)?.values()??[]),getNodeConnections:({type:e,handleId:n,nodeId:r})=>Array.from(t.getState().connectionLookup.get(`${r}${e?n?`-${e}-${n}`:`-${e}`:``}`)?.values()??[]),fitView:async e=>{let r=t.getState().fitViewResolver??kD();return t.setState({fitViewQueued:!0,fitViewOptions:e,fitViewResolver:r}),n.nodeQueue.push(e=>[...e]),r.promise}}},[]);return(0,y.useMemo)(()=>({...i,...e,viewportInitialized:r}),[r])}var NA=e=>e.selected,PA=typeof window<`u`?window:void 0;function FA({deleteKeyCode:e,multiSelectionKeyCode:t}){let n=Pk(),{deleteElements:r}=MA(),i=cA(e,{actInsideInputWithModifier:!1}),a=cA(t,{target:PA});(0,y.useEffect)(()=>{if(i){let{edges:e,nodes:t}=n.getState();r({nodes:t.filter(NA),edges:e.filter(NA)}),n.setState({nodesSelectionActive:!1})}},[i]),(0,y.useEffect)(()=>{n.setState({multiSelectionActive:a})},[a])}function IA(e){let t=Pk();(0,y.useEffect)(()=>{let n=()=>{if(!e.current||!(e.current.checkVisibility?.()??!0))return!1;let n=ND(e.current);(n.height===0||n.width===0)&&t.getState().onError?.(`004`,jE.error004()),t.setState({width:n.width||500,height:n.height||500})};if(e.current){n(),window.addEventListener(`resize`,n);let t=new ResizeObserver(()=>n());return t.observe(e.current),()=>{window.removeEventListener(`resize`,n),t&&e.current&&t.unobserve(e.current)}}},[])}var LA={position:`absolute`,width:`100%`,height:`100%`,top:0,left:0},RA=e=>({userSelectionActive:e.userSelectionActive,lib:e.lib,connectionInProgress:e.connection.inProgress});function zA({onPaneContextMenu:e,zoomOnScroll:t=!0,zoomOnPinch:n=!0,panOnScroll:r=!1,panActivationKeyPressed:i,panOnScrollSpeed:a=.5,panOnScrollMode:o=IE.Free,zoomOnDoubleClick:s=!0,panOnDrag:c=!0,defaultViewport:l,translateExtent:u,minZoom:d,maxZoom:f,zoomActivationKeyCode:p,preventScrolling:m=!0,children:h,noWheelClassName:g,noPanClassName:_,onViewportChange:v,isControlledViewport:b,paneClickDistance:x,selectionOnDrag:S}){let C=Pk(),w=(0,y.useRef)(null),{userSelectionActive:T,lib:E,connectionInProgress:D}=Nk(RA,kk),O=cA(p),k=(0,y.useRef)();IA(w);let A=(0,y.useCallback)(e=>{v?.({x:e[0],y:e[1],zoom:e[2]}),b||C.setState({transform:e})},[v,b]);return(0,y.useEffect)(()=>{if(w.current){k.current=ik({domNode:w.current,minZoom:d,maxZoom:f,translateExtent:u,viewport:l,onDraggingChange:e=>C.setState(t=>t.paneDragging===e?t:{paneDragging:e}),onPanZoomStart:(e,t)=>{let{onViewportChangeStart:n,onMoveStart:r}=C.getState();r?.(e,t),n?.(t)},onPanZoom:(e,t)=>{let{onViewportChange:n,onMove:r}=C.getState();r?.(e,t),n?.(t)},onPanZoomEnd:(e,t)=>{let{onViewportChangeEnd:n,onMoveEnd:r}=C.getState();r?.(e,t),n?.(t)}});let{x:e,y:t,zoom:n}=k.current.getViewport();return C.setState({panZoom:k.current,transform:[e,t,n],domNode:w.current.closest(`.react-flow`)}),()=>{k.current?.destroy()}}},[]),(0,y.useEffect)(()=>{k.current?.update({onPaneContextMenu:e,zoomOnScroll:t,zoomOnPinch:n,panOnScroll:r,panActivationKeyPressed:i,panOnScrollSpeed:a,panOnScrollMode:o,zoomOnDoubleClick:s,panOnDrag:c,zoomActivationKeyPressed:O,preventScrolling:m,noPanClassName:_,userSelectionActive:T,noWheelClassName:g,lib:E,onTransformChange:A,connectionInProgress:D,selectionOnDrag:S,paneClickDistance:x})},[e,t,n,r,i,a,o,s,c,O,m,_,T,g,E,A,D,S,x]),(0,K.jsx)(`div`,{className:`react-flow__renderer`,ref:w,style:LA,children:h})}var BA=e=>({userSelectionActive:e.userSelectionActive,userSelectionRect:e.userSelectionRect});function VA(){let{userSelectionActive:e,userSelectionRect:t}=Nk(BA,kk);return e&&t?(0,K.jsx)(`div`,{className:`react-flow__selection react-flow__container`,style:{width:t.width,height:t.height,transform:`translate(${t.x}px, ${t.y}px)`}}):null}var HA=(e,t)=>n=>{n.target===t.current&&e?.(n)},UA=e=>({userSelectionActive:e.userSelectionActive,elementsSelectable:e.elementsSelectable,dragging:e.paneDragging,panBy:e.panBy,autoPanSpeed:e.autoPanSpeed});function WA({isSelecting:e,selectionKeyPressed:t,selectionMode:n=LE.Full,panOnDrag:r,autoPanOnSelection:i,paneClickDistance:a,selectionOnDrag:o,onSelectionStart:s,onSelectionEnd:c,onPaneClick:l,onPaneContextMenu:u,onPaneScroll:d,onPaneMouseEnter:f,onPaneMouseMove:p,onPaneMouseLeave:m,children:h}){let g=(0,y.useRef)(0),_=Pk(),{userSelectionActive:v,elementsSelectable:b,dragging:x,panBy:S,autoPanSpeed:C}=Nk(UA,kk),w=b&&(e||v),T=(0,y.useRef)(null),E=(0,y.useRef)(),D=(0,y.useRef)(new Set),O=(0,y.useRef)(new Set),k=(0,y.useRef)(!1),A=(0,y.useRef)(!1),j=(0,y.useRef)({x:0,y:0}),M=(0,y.useRef)(!1),N=e=>{if(A.current||k.current||_.getState().connection.inProgress){A.current=!1,k.current=!1;return}l?.(e),_.getState().resetSelectedElements(),_.setState({nodesSelectionActive:!1})},P=e=>{if(Array.isArray(r)&&r?.includes(2)){e.preventDefault();return}u?.(e)},F=d?e=>d(e):void 0,I=e=>{A.current&&=(e.stopPropagation(),!1)},L=n=>{if(n.pointerType===`touch`&&r!==!1&&!t)return;let{domNode:i,transform:a}=_.getState();if(E.current=i?.getBoundingClientRect(),!E.current)return;let s=n.target===T.current;if(!s&&n.target.closest(`.nokey`)||!e||!(o&&s||t)||n.button!==0||!n.isPrimary)return;n.target?.setPointerCapture?.(n.pointerId),A.current=!1;let{x:c,y:l}=RD(n.nativeEvent,E.current),u=_D({x:c,y:l},a);_.setState({userSelectionRect:{width:0,height:0,startX:u.x,startY:u.y,x:c,y:l}}),s||(n.stopPropagation(),n.preventDefault())};function R(e,t){let{userSelectionRect:r}=_.getState();if(!r)return;let{transform:i,nodeLookup:a,edgeLookup:o,connectionLookup:s,triggerNodeChanges:c,triggerEdgeChanges:l,defaultEdgeOptions:u}=_.getState(),d={x:r.startX,y:r.startY},{x:f,y:p}=vD(d,i),m={startX:d.x,startY:d.y,x:ee.id)),O.current=new Set;let v=u?.selectable??!0;for(let e of D.current){let t=s.get(e);if(t)for(let{edgeId:e}of t.values()){let t=o.get(e);t&&(t.selectable??v)&&O.current.add(e)}}OD(h,D.current)||c(_A(a,D.current,!0)),OD(g,O.current)||l(_A(o,O.current)),_.setState({userSelectionRect:m,userSelectionActive:!0,nodesSelectionActive:!1})}function z(){if(!i||!E.current)return;let[e,t]=iD(j.current,E.current,C);S({x:e,y:t}).then(e=>{if(!A.current||!e){g.current=requestAnimationFrame(z);return}let{x:t,y:n}=j.current;R(t,n),g.current=requestAnimationFrame(z)})}let B=()=>{cancelAnimationFrame(g.current),g.current=0,M.current=!1};(0,y.useEffect)(()=>()=>B(),[]);let ee=e=>{let{userSelectionRect:n,transform:r,resetSelectedElements:i}=_.getState();if(!E.current||!n)return;let{x:o,y:c}=RD(e.nativeEvent,E.current);j.current={x:o,y:c};let l=vD({x:n.startX,y:n.startY},r);if(!A.current){let n=t?0:a;if(Math.hypot(o-l.x,c-l.y)<=n)return;i(),s?.(e)}A.current=!0,M.current||=(z(),!0),R(o,c)},V=e=>{if(!w){e.target===T.current&&_.getState().connection.inProgress&&(k.current=!0);return}e.button===0&&(e.target?.releasePointerCapture?.(e.pointerId),!v&&e.target===T.current&&_.getState().userSelectionRect&&N?.(e),_.setState({userSelectionActive:!1,userSelectionRect:null}),A.current&&(c?.(e),_.setState({nodesSelectionActive:D.current.size>0})),B())},H=e=>{e.target?.releasePointerCapture?.(e.pointerId),B()},te=r===!0||Array.isArray(r)&&r.includes(0);return(0,K.jsxs)(`div`,{className:Jb([`react-flow__pane`,{draggable:te,dragging:x,selection:e}]),onClick:w?void 0:HA(N,T),onContextMenu:HA(P,T),onWheel:HA(F,T),onPointerEnter:w?void 0:f,onPointerMove:w?ee:p,onPointerUp:V,onPointerCancel:w?H:void 0,onPointerDownCapture:w?L:void 0,onClickCapture:w?I:void 0,onPointerLeave:m,ref:T,style:LA,children:[h,(0,K.jsx)(VA,{})]})}function GA({id:e,store:t,unselect:n=!1,nodeRef:r}){let{addSelectedNodes:i,unselectNodesAndEdges:a,multiSelectionActive:o,nodeLookup:s,onError:c}=t.getState(),l=s.get(e);if(!l){c?.(`012`,jE.error012(e));return}t.setState({nodesSelectionActive:!1}),l.selected?(n||l.selected&&o)&&(a({nodes:[l],edges:[]}),requestAnimationFrame(()=>r?.current?.blur())):i([e])}function KA({nodeRef:e,disabled:t=!1,noDragClassName:n,handleSelector:r,nodeId:i,isSelectable:a,nodeClickDistance:o}){let s=Pk(),[c,l]=(0,y.useState)(!1),u=(0,y.useRef)();return(0,y.useEffect)(()=>{if(!t)return u.current=NO({getStoreItems:()=>s.getState(),onNodeMouseDown:t=>{GA({id:t,store:s,nodeRef:e})},onDragStart:()=>{l(!0)},onDragStop:()=>{l(!1)}}),()=>{u.current?.destroy(),u.current=void 0}},[t,s,e]),(0,y.useEffect)(()=>{!t&&e.current&&u.current&&u.current.update({noDragClassName:n,handleSelector:r,domNode:e.current,isSelectable:a,nodeId:i,nodeClickDistance:o})},[n,r,t,a,e,i,o]),c}var qA=e=>t=>t.selected&&(t.draggable||e&&t.draggable===void 0);function JA(){let e=Pk();return(0,y.useCallback)(t=>{let{nodeExtent:n,snapToGrid:r,snapGrid:i,nodesDraggable:a,onError:o,updateNodePositions:s,nodeLookup:c,nodeOrigin:l}=e.getState(),u=new Map,d=qA(a),f=r?i[0]:5,p=r?i[1]:5,m=t.direction.x*f*t.factor,h=t.direction.y*p*t.factor;for(let[,e]of c){if(!d(e))continue;let t={x:e.internals.positionAbsolute.x+m,y:e.internals.positionAbsolute.y+h};r&&(t=gD(t,i));let{position:a,positionAbsolute:s}=QE({nodeId:e.id,nextPosition:t,nodeLookup:c,nodeExtent:n,nodeOrigin:l,onError:o});e.position=a,e.internals.positionAbsolute=s,u.set(e.id,e)}s(u)},[])}var YA=(0,y.createContext)(null),XA=YA.Provider;YA.Consumer;var ZA=()=>(0,y.useContext)(YA),QA=e=>({connectOnClick:e.connectOnClick,noPanClassName:e.noPanClassName,rfId:e.rfId}),$A=(0,y.createContext)(null);function ej({children:e}){let t=Nk(QA,kk);return(0,K.jsx)($A.Provider,{value:t,children:e})}function tj(){let e=(0,y.useContext)($A);if(!e)throw Error(`useHandleConfig must be used within a HandleConfigProvider`);return e}var nj={connectingFrom:!1,connectingTo:!1,clickConnecting:!1,isPossibleEndHandle:!0,connectionInProcess:!1,clickConnectionInProcess:!1,valid:!1},rj=(e,t,n)=>r=>{let{connectionClickStartHandle:i,connectionMode:a,connection:o}=r,{fromHandle:s,toHandle:c,isValid:l}=o;if(!s&&!i)return nj;let u=c?.nodeId===e&&c?.id===t&&c?.type===n;return{connectingFrom:s?.nodeId===e&&s?.id===t&&s?.type===n,connectingTo:u,clickConnecting:i?.nodeId===e&&i?.id===t&&i?.type===n,isPossibleEndHandle:a===FE.Strict?s?.type!==n:e!==s?.nodeId||t!==s?.id,connectionInProcess:!!s,clickConnectionInProcess:!!i,valid:u&&l}};function ij({type:e=`source`,position:t=$.Top,isValidConnection:n,isConnectable:r=!0,isConnectableStart:i=!0,isConnectableEnd:a=!0,id:o,onConnect:s,children:c,className:l,onMouseDown:u,onTouchStart:d,...f},p){let m=o||null,h=e===`target`,g=Pk(),_=ZA(),{connectOnClick:v,noPanClassName:y,rfId:b}=tj(),{connectingFrom:x,connectingTo:S,clickConnecting:C,isPossibleEndHandle:w,connectionInProcess:T,clickConnectionInProcess:E,valid:D}=Nk(rj(_,m,e),kk);_||g.getState().onError?.(`010`,jE.error010());let O=e=>{let{defaultEdgeOptions:t,onConnect:n,hasDefaultEdges:r}=g.getState(),i={...t,...e};if(r){let{edges:e,setEdges:t,onError:n}=g.getState();t(xA(i,e,{onError:n}))}n?.(i),s?.(i)},k=e=>{if(!_)return;let t=LD(e.nativeEvent);if(i&&(t&&e.button===0||!t)){let t=g.getState();UO.onPointerDown(e.nativeEvent,{handleDomNode:e.currentTarget,autoPanOnConnect:t.autoPanOnConnect,connectionMode:t.connectionMode,connectionRadius:t.connectionRadius,domNode:t.domNode,nodeLookup:t.nodeLookup,lib:t.lib,isTarget:h,handleId:m,nodeId:_,flowId:t.rfId,panBy:t.panBy,cancelConnection:t.cancelConnection,onConnectStart:t.onConnectStart,onConnectEnd:(...e)=>g.getState().onConnectEnd?.(...e),updateConnection:t.updateConnection,onConnect:O,isValidConnection:n||((...e)=>g.getState().isValidConnection?.(...e)??!0),getTransform:()=>g.getState().transform,getFromHandle:()=>g.getState().connection.fromHandle,autoPanSpeed:t.autoPanSpeed,dragThreshold:t.connectionDragThreshold})}t?u?.(e):d?.(e)};return(0,K.jsx)(`div`,{"data-handleid":m,"data-nodeid":_,"data-handlepos":t,"data-id":`${b}-${_}-${m}-${e}`,className:Jb([`react-flow__handle`,`react-flow__handle-${t}`,`nodrag`,y,l,{source:!h,target:h,connectable:r,connectablestart:i,connectableend:a,clickconnecting:C,connectingfrom:x,connectingto:S,valid:D,connectionindicator:r&&(!T||w)&&(T||E?a:i)}]),onMouseDown:k,onTouchStart:k,onClick:v?t=>{let{onClickConnectStart:r,onClickConnectEnd:a,connectionClickStartHandle:o,connectionMode:s,isValidConnection:c,lib:l,rfId:u,nodeLookup:d,connection:f}=g.getState();if(!_||!o&&!i)return;if(!o){r?.(t.nativeEvent,{nodeId:_,handleId:m,handleType:e}),g.setState({connectionClickStartHandle:{nodeId:_,type:e,id:m}});return}let p=PD(t.target),h=n||c,{connection:v,isValid:y}=UO.isValid(t.nativeEvent,{handle:{nodeId:_,id:m,type:e},connectionMode:s,fromNodeId:o.nodeId,fromHandleId:o.id||null,fromType:o.type,isValidConnection:h,flowId:u,doc:p,lib:l,nodeLookup:d});y&&v&&O(v);let b=structuredClone(f);delete b.inProgress,b.toPosition=b.toHandle?b.toHandle.position:null,a?.(t,b),g.setState({connectionClickStartHandle:null})}:void 0,ref:p,...f,children:c})}var aj=(0,y.memo)(wA(ij));function oj({data:e,isConnectable:t,sourcePosition:n=$.Bottom}){return(0,K.jsxs)(K.Fragment,{children:[e?.label,(0,K.jsx)(aj,{type:`source`,position:n,isConnectable:t})]})}function sj({data:e,isConnectable:t,targetPosition:n=$.Top,sourcePosition:r=$.Bottom}){return(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(aj,{type:`target`,position:n,isConnectable:t}),e?.label,(0,K.jsx)(aj,{type:`source`,position:r,isConnectable:t})]})}function cj(){return null}function lj({data:e,isConnectable:t,targetPosition:n=$.Top}){return(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(aj,{type:`target`,position:n,isConnectable:t}),e?.label]})}var uj={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},dj={input:oj,default:sj,output:lj,group:cj};function fj(e){return e.internals.handleBounds===void 0?{width:e.width??e.initialWidth??e.style?.width,height:e.height??e.initialHeight??e.style?.height}:{width:e.width??e.style?.width,height:e.height??e.style?.height}}var pj=e=>{let{width:t,height:n,x:r,y:i}=qE(e.nodeLookup,{filter:e=>!!e.selected});return{width:mD(t)?t:null,height:mD(n)?n:null,userSelectionActive:e.userSelectionActive,transformString:`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]}) translate(${r}px,${i}px)`}};function mj({onSelectionContextMenu:e,noPanClassName:t,disableKeyboardA11y:n}){let r=Pk(),{width:i,height:a,transformString:o,userSelectionActive:s}=Nk(pj,kk),c=JA(),l=(0,y.useRef)(null);(0,y.useEffect)(()=>{n||l.current?.focus({preventScroll:!0})},[n]);let u=!s&&i!==null&&a!==null;if(KA({nodeRef:l,disabled:!u}),!u)return null;let d=e?t=>{e(t,r.getState().nodes.filter(e=>e.selected))}:void 0;return(0,K.jsx)(`div`,{className:Jb([`react-flow__nodesselection`,`react-flow__container`,t]),style:{transform:o},children:(0,K.jsx)(`div`,{ref:l,className:`react-flow__nodesselection-rect`,onContextMenu:d,tabIndex:n?void 0:-1,onKeyDown:n?void 0:e=>{Object.prototype.hasOwnProperty.call(uj,e.key)&&(e.preventDefault(),c({direction:uj[e.key],factor:e.shiftKey?4:1}))},style:{width:i,height:a}})})}var hj=typeof window<`u`?window:void 0,gj=e=>({nodesSelectionActive:e.nodesSelectionActive,userSelectionActive:e.userSelectionActive});function _j({children:e,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:r,onPaneMouseLeave:i,onPaneContextMenu:a,onPaneScroll:o,paneClickDistance:s,deleteKeyCode:c,selectionKeyCode:l,selectionOnDrag:u,selectionMode:d,onSelectionStart:f,onSelectionEnd:p,multiSelectionKeyCode:m,panActivationKeyCode:h,zoomActivationKeyCode:g,elementsSelectable:_,zoomOnScroll:v,zoomOnPinch:y,panOnScroll:b,panOnScrollSpeed:x,panOnScrollMode:S,zoomOnDoubleClick:C,panOnDrag:w,autoPanOnSelection:T,defaultViewport:E,translateExtent:D,minZoom:O,maxZoom:k,preventScrolling:A,onSelectionContextMenu:j,noWheelClassName:M,noPanClassName:N,disableKeyboardA11y:P,onViewportChange:F,isControlledViewport:I}){let{nodesSelectionActive:L,userSelectionActive:R}=Nk(gj,kk),z=cA(l,{target:hj}),B=cA(h,{target:hj}),ee=B||w,V=B||b,H=u&&ee!==!0,te=z||R||H;return FA({deleteKeyCode:c,multiSelectionKeyCode:m}),(0,K.jsx)(zA,{onPaneContextMenu:a,elementsSelectable:_,zoomOnScroll:v,zoomOnPinch:y,panOnScroll:V,panActivationKeyPressed:B,panOnScrollSpeed:x,panOnScrollMode:S,zoomOnDoubleClick:C,panOnDrag:!z&&ee,defaultViewport:E,translateExtent:D,minZoom:O,maxZoom:k,zoomActivationKeyCode:g,preventScrolling:A,noWheelClassName:M,noPanClassName:N,onViewportChange:F,isControlledViewport:I,paneClickDistance:s,selectionOnDrag:H,children:(0,K.jsxs)(WA,{onSelectionStart:f,onSelectionEnd:p,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:r,onPaneMouseLeave:i,onPaneContextMenu:a,onPaneScroll:o,panOnDrag:ee,autoPanOnSelection:T,isSelecting:!!te,selectionMode:d,selectionKeyPressed:z,paneClickDistance:s,selectionOnDrag:H,children:[e,L&&(0,K.jsx)(mj,{onSelectionContextMenu:j,noPanClassName:N,disableKeyboardA11y:P})]})})}_j.displayName=`FlowRenderer`;var vj=(0,y.memo)(_j),yj=e=>t=>e?JE(t.nodeLookup,{x:0,y:0,width:t.width,height:t.height},t.transform,!0).map(e=>e.id):Array.from(t.nodeLookup.keys());function bj(e){return Nk((0,y.useCallback)(yj(e),[e]),kk)}var xj=e=>e.updateNodeInternals;function Sj(){let e=Nk(xj),[t]=(0,y.useState)(()=>typeof ResizeObserver>`u`?null:new ResizeObserver(t=>{let n=new Map;t.forEach(e=>{let t=e.target.getAttribute(`data-id`);n.set(t,{id:t,nodeElement:e.target,force:!0})}),e(n)}));return(0,y.useEffect)(()=>()=>{t?.disconnect()},[t]),t}function Cj({node:e,nodeType:t,hasDimensions:n,resizeObserver:r}){let i=Pk(),a=(0,y.useRef)(null),o=(0,y.useRef)(null),s=(0,y.useRef)(e.sourcePosition),c=(0,y.useRef)(e.targetPosition),l=(0,y.useRef)(t),u=n&&!!e.internals.handleBounds;return(0,y.useEffect)(()=>{a.current&&!e.hidden&&(!u||o.current!==a.current)&&(o.current&&r?.unobserve(o.current),r?.observe(a.current),o.current=a.current)},[u,e.hidden]),(0,y.useEffect)(()=>()=>{o.current&&=(r?.unobserve(o.current),null)},[]),(0,y.useEffect)(()=>{if(a.current){let n=l.current!==t,r=s.current!==e.sourcePosition,o=c.current!==e.targetPosition;(n||r||o)&&(l.current=t,s.current=e.sourcePosition,c.current=e.targetPosition,i.getState().updateNodeInternals(new Map([[e.id,{id:e.id,nodeElement:a.current,force:!0}]])))}},[e.id,t,e.sourcePosition,e.targetPosition]),a}function wj({id:e,onClick:t,onMouseEnter:n,onMouseMove:r,onMouseLeave:i,onContextMenu:a,onDoubleClick:o,nodesDraggable:s,elementsSelectable:c,nodesConnectable:l,nodesFocusable:u,resizeObserver:d,noDragClassName:f,noPanClassName:p,disableKeyboardA11y:m,rfId:h,nodeTypes:g,nodeClickDistance:_,onError:v}){let{node:y,internals:b,isParent:x}=Nk(t=>{let n=t.nodeLookup.get(e),r=t.parentLookup.has(e);return{node:n,internals:n.internals,isParent:r}},kk),S=y.type||`default`,C=g?.[S]||dj[S];C===void 0&&(v?.(`003`,jE.error003(S)),S=`default`,C=g?.default||dj.default);let w=!!(y.draggable||s&&y.draggable===void 0),T=!!(y.selectable||c&&y.selectable===void 0),E=!!(y.connectable||l&&y.connectable===void 0),D=!!(y.focusable||u&&y.focusable===void 0),O=Pk(),k=ED(y),A=Cj({node:y,nodeType:S,hasDimensions:k,resizeObserver:d}),j=KA({nodeRef:A,disabled:y.hidden||!w,noDragClassName:f,handleSelector:y.dragHandle,nodeId:e,isSelectable:T,nodeClickDistance:_}),M=JA();if(y.hidden)return null;let N=TD(y),P=fj(y),F=T||w||t||n||r||i,I=n?e=>n(e,{...b.userNode}):void 0,L=r?e=>r(e,{...b.userNode}):void 0,R=i?e=>i(e,{...b.userNode}):void 0,z=a?e=>a(e,{...b.userNode}):void 0,B=o?e=>o(e,{...b.userNode}):void 0,ee=n=>{let{selectNodesOnDrag:r,nodeDragThreshold:i}=O.getState();T&&(!r||!w||i>0)&&GA({id:e,store:O,nodeRef:A}),t&&t(n,{...b.userNode})},V=t=>{if(!(ID(t.nativeEvent)||m)){if(NE.includes(t.key)&&T){let n=t.key===`Escape`;GA({id:e,store:O,unselect:n,nodeRef:A})}else if(w&&y.selected&&Object.prototype.hasOwnProperty.call(uj,t.key)){t.preventDefault();let{ariaLabelConfig:e}=O.getState();O.setState({ariaLiveMessage:e[`node.a11yDescription.ariaLiveMessage`]({direction:t.key.replace(`Arrow`,``).toLowerCase(),x:~~b.positionAbsolute.x,y:~~b.positionAbsolute.y})}),M({direction:uj[t.key],factor:t.shiftKey?4:1})}}},H=()=>{if(m||!A.current?.matches(`:focus-visible`))return;let{transform:t,width:n,height:r,autoPanOnNodeFocus:i,setCenter:a}=O.getState();i&&(JE(new Map([[e,y]]),{x:0,y:0,width:n,height:r},t,!0).length>0||a(y.position.x+N.width/2,y.position.y+N.height/2,{zoom:t[2]}))};return(0,K.jsx)(`div`,{className:Jb([`react-flow__node`,`react-flow__node-${S}`,{[p]:w},y.className,{selected:y.selected,selectable:T,parent:x,draggable:w,dragging:j}]),ref:A,style:{zIndex:b.z,transform:`translate(${b.positionAbsolute.x}px,${b.positionAbsolute.y}px)`,pointerEvents:F?`all`:`none`,visibility:k?`visible`:`hidden`,...y.style,...P},"data-id":e,"data-testid":`rf__node-${e}`,onMouseEnter:I,onMouseMove:L,onMouseLeave:R,onContextMenu:z,onClick:ee,onDoubleClick:B,onKeyDown:D?V:void 0,tabIndex:D?0:void 0,onFocus:D?H:void 0,role:y.ariaRole??(D?`group`:void 0),"aria-roledescription":`node`,"aria-describedby":m?void 0:`${Lk}-${h}`,"aria-label":y.ariaLabel,...y.domAttributes,children:(0,K.jsx)(XA,{value:e,children:(0,K.jsx)(C,{id:e,data:y.data,type:S,positionAbsoluteX:b.positionAbsolute.x,positionAbsoluteY:b.positionAbsolute.y,selected:y.selected??!1,selectable:T,draggable:w,deletable:y.deletable??!0,isConnectable:E,sourcePosition:y.sourcePosition,targetPosition:y.targetPosition,dragging:j,dragHandle:y.dragHandle,zIndex:b.z,parentId:y.parentId,...N})})})}var Tj=(0,y.memo)(wj),Ej=e=>({nodesConnectable:e.nodesConnectable,nodesFocusable:e.nodesFocusable,elementsSelectable:e.elementsSelectable,onError:e.onError});function Dj(e){let{nodesConnectable:t,nodesFocusable:n,elementsSelectable:r,onError:i}=Nk(Ej,kk),a=bj(e.onlyRenderVisibleElements),o=Sj();return(0,K.jsx)(`div`,{className:`react-flow__nodes`,style:LA,children:a.map(a=>(0,K.jsx)(Tj,{id:a,nodeTypes:e.nodeTypes,nodeExtent:e.nodeExtent,onClick:e.onNodeClick,onMouseEnter:e.onNodeMouseEnter,onMouseMove:e.onNodeMouseMove,onMouseLeave:e.onNodeMouseLeave,onContextMenu:e.onNodeContextMenu,onDoubleClick:e.onNodeDoubleClick,noDragClassName:e.noDragClassName,noPanClassName:e.noPanClassName,rfId:e.rfId,disableKeyboardA11y:e.disableKeyboardA11y,resizeObserver:o,nodesDraggable:e.nodesDraggable??!0,nodesConnectable:t,nodesFocusable:n,elementsSelectable:r,nodeClickDistance:e.nodeClickDistance,onError:i},a))})}Dj.displayName=`NodeRenderer`;var Oj=(0,y.memo)(Dj);function kj(e){return Nk((0,y.useCallback)(t=>{if(!e)return t.edges.map(e=>e.id);let n=[];if(t.width&&t.height)for(let e of t.edges){let r=t.nodeLookup.get(e.source),i=t.nodeLookup.get(e.target);r&&i&&KD({sourceNode:r,targetNode:i,width:t.width,height:t.height,transform:t.transform})&&n.push(e.id)}return n},[e]),kk)}var Aj=({color:e=`none`,strokeWidth:t=1})=>{let n={strokeWidth:t,...e&&{stroke:e}};return(0,K.jsx)(`polyline`,{className:`arrow`,style:n,strokeLinecap:`round`,fill:`none`,strokeLinejoin:`round`,points:`-5,-4 0,0 -5,4`})},jj=({color:e=`none`,strokeWidth:t=1})=>{let n={strokeWidth:t,...e&&{stroke:e,fill:e}};return(0,K.jsx)(`polyline`,{className:`arrowclosed`,style:n,strokeLinecap:`round`,strokeLinejoin:`round`,points:`-5,-4 0,0 -5,4 -5,-4`})},Mj={[BE.Arrow]:Aj,[BE.ArrowClosed]:jj};function Nj(e){let t=Pk();return(0,y.useMemo)(()=>Object.prototype.hasOwnProperty.call(Mj,e)?Mj[e]:(t.getState().onError?.(`009`,jE.error009(e)),null),[e])}var Pj=({id:e,type:t,color:n,width:r=12.5,height:i=12.5,markerUnits:a=`strokeWidth`,strokeWidth:o,orient:s=`auto-start-reverse`})=>{let c=Nj(t);return c?(0,K.jsx)(`marker`,{className:`react-flow__arrowhead`,id:e,markerWidth:`${r}`,markerHeight:`${i}`,viewBox:`-10 -10 20 20`,markerUnits:a,orient:s,refX:`0`,refY:`0`,children:(0,K.jsx)(c,{color:n,strokeWidth:o})}):null},Fj=({defaultColor:e,rfId:t})=>{let n=Nk(e=>e.edges),r=Nk(e=>e.defaultEdgeOptions),i=(0,y.useMemo)(()=>lO(n,{id:t,defaultColor:e,defaultMarkerStart:r?.markerStart,defaultMarkerEnd:r?.markerEnd}),[n,r,t,e]);return i.length?(0,K.jsx)(`svg`,{className:`react-flow__marker`,"aria-hidden":`true`,children:(0,K.jsx)(`defs`,{children:i.map(e=>(0,K.jsx)(Pj,{id:e.id,type:e.type,color:e.color,width:e.width,height:e.height,markerUnits:e.markerUnits,strokeWidth:e.strokeWidth,orient:e.orient},e.id))})}):null};Fj.displayName=`MarkerDefinitions`;var Ij=(0,y.memo)(Fj);function Lj({x:e,y:t,label:n,labelStyle:r,labelShowBg:i=!0,labelBgStyle:a,labelBgPadding:o=[2,4],labelBgBorderRadius:s=2,children:c,className:l,...u}){let[d,f]=(0,y.useState)({x:1,y:0,width:0,height:0}),p=Jb([`react-flow__edge-textwrapper`,l]),m=(0,y.useRef)(null);return(0,y.useEffect)(()=>{if(m.current){let e=m.current.getBBox();f({x:e.x,y:e.y,width:e.width,height:e.height})}},[n]),n?(0,K.jsxs)(`g`,{transform:`translate(${e-d.width/2} ${t-d.height/2})`,className:p,visibility:d.width?`visible`:`hidden`,...u,children:[i&&(0,K.jsx)(`rect`,{width:d.width+2*o[0],x:-o[0],y:-o[1],height:d.height+2*o[1],className:`react-flow__edge-textbg`,style:a,rx:s,ry:s}),(0,K.jsx)(`text`,{className:`react-flow__edge-text`,y:d.height/2,dy:`0.3em`,ref:m,style:r,children:n}),c]}):null}Lj.displayName=`EdgeText`;var Rj=(0,y.memo)(Lj);function zj({path:e,labelX:t,labelY:n,label:r,labelStyle:i,labelShowBg:a,labelBgStyle:o,labelBgPadding:s,labelBgBorderRadius:c,interactionWidth:l=20,...u}){return(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`path`,{...u,d:e,fill:`none`,className:Jb([`react-flow__edge-path`,u.className])}),l?(0,K.jsx)(`path`,{d:e,fill:`none`,strokeOpacity:0,strokeWidth:l,className:`react-flow__edge-interaction`}):null,r&&mD(t)&&mD(n)?(0,K.jsx)(Rj,{x:t,y:n,label:r,labelStyle:i,labelShowBg:a,labelBgStyle:o,labelBgPadding:s,labelBgBorderRadius:c}):null]})}function Bj({pos:e,x1:t,y1:n,x2:r,y2:i}){return e===$.Left||e===$.Right?[.5*(t+r),n]:[t,.5*(n+i)]}function Vj({sourceX:e,sourceY:t,sourcePosition:n=$.Bottom,targetX:r,targetY:i,targetPosition:a=$.Top}){let[o,s]=Bj({pos:n,x1:e,y1:t,x2:r,y2:i}),[c,l]=Bj({pos:a,x1:r,y1:i,x2:e,y2:t}),[u,d,f,p]=BD({sourceX:e,sourceY:t,targetX:r,targetY:i,sourceControlX:o,sourceControlY:s,targetControlX:c,targetControlY:l});return[`M${e},${t} C${o},${s} ${c},${l} ${r},${i}`,u,d,f,p]}function Hj(e){return(0,y.memo)(({id:t,sourceX:n,sourceY:r,targetX:i,targetY:a,sourcePosition:o,targetPosition:s,label:c,labelStyle:l,labelShowBg:u,labelBgStyle:d,labelBgPadding:f,labelBgBorderRadius:p,style:m,markerEnd:h,markerStart:g,interactionWidth:_})=>{let[v,y,b]=Vj({sourceX:n,sourceY:r,sourcePosition:o,targetX:i,targetY:a,targetPosition:s}),x=e.isInternal?void 0:t;return(0,K.jsx)(zj,{id:x,path:v,labelX:y,labelY:b,label:c,labelStyle:l,labelShowBg:u,labelBgStyle:d,labelBgPadding:f,labelBgBorderRadius:p,style:m,markerEnd:h,markerStart:g,interactionWidth:_})})}var Uj=Hj({isInternal:!1}),Wj=Hj({isInternal:!0});Uj.displayName=`SimpleBezierEdge`,Wj.displayName=`SimpleBezierEdgeInternal`;function Gj(e){return(0,y.memo)(({id:t,sourceX:n,sourceY:r,targetX:i,targetY:a,label:o,labelStyle:s,labelShowBg:c,labelBgStyle:l,labelBgPadding:u,labelBgBorderRadius:d,style:f,sourcePosition:p=$.Bottom,targetPosition:m=$.Top,markerEnd:h,markerStart:g,pathOptions:_,interactionWidth:v})=>{let[y,b,x]=nO({sourceX:n,sourceY:r,sourcePosition:p,targetX:i,targetY:a,targetPosition:m,borderRadius:_?.borderRadius,offset:_?.offset,stepPosition:_?.stepPosition}),S=e.isInternal?void 0:t;return(0,K.jsx)(zj,{id:S,path:y,labelX:b,labelY:x,label:o,labelStyle:s,labelShowBg:c,labelBgStyle:l,labelBgPadding:u,labelBgBorderRadius:d,style:f,markerEnd:h,markerStart:g,interactionWidth:v})})}var Kj=Gj({isInternal:!1}),qj=Gj({isInternal:!0});Kj.displayName=`SmoothStepEdge`,qj.displayName=`SmoothStepEdgeInternal`;function Jj(e){return(0,y.memo)(({id:t,...n})=>{let r=e.isInternal?void 0:t;return(0,K.jsx)(Kj,{...n,id:r,pathOptions:(0,y.useMemo)(()=>({borderRadius:0,offset:n.pathOptions?.offset}),[n.pathOptions?.offset])})})}var Yj=Jj({isInternal:!1}),Xj=Jj({isInternal:!0});Yj.displayName=`StepEdge`,Xj.displayName=`StepEdgeInternal`;function Zj(e){return(0,y.memo)(({id:t,sourceX:n,sourceY:r,targetX:i,targetY:a,label:o,labelStyle:s,labelShowBg:c,labelBgStyle:l,labelBgPadding:u,labelBgBorderRadius:d,style:f,markerEnd:p,markerStart:m,interactionWidth:h})=>{let[g,_,v]=XD({sourceX:n,sourceY:r,targetX:i,targetY:a}),y=e.isInternal?void 0:t;return(0,K.jsx)(zj,{id:y,path:g,labelX:_,labelY:v,label:o,labelStyle:s,labelShowBg:c,labelBgStyle:l,labelBgPadding:u,labelBgBorderRadius:d,style:f,markerEnd:p,markerStart:m,interactionWidth:h})})}var Qj=Zj({isInternal:!1}),$j=Zj({isInternal:!0});Qj.displayName=`StraightEdge`,$j.displayName=`StraightEdgeInternal`;function eM(e){return(0,y.memo)(({id:t,sourceX:n,sourceY:r,targetX:i,targetY:a,sourcePosition:o=$.Bottom,targetPosition:s=$.Top,label:c,labelStyle:l,labelShowBg:u,labelBgStyle:d,labelBgPadding:f,labelBgBorderRadius:p,style:m,markerEnd:h,markerStart:g,pathOptions:_,interactionWidth:v})=>{let[y,b,x]=UD({sourceX:n,sourceY:r,sourcePosition:o,targetX:i,targetY:a,targetPosition:s,curvature:_?.curvature}),S=e.isInternal?void 0:t;return(0,K.jsx)(zj,{id:S,path:y,labelX:b,labelY:x,label:c,labelStyle:l,labelShowBg:u,labelBgStyle:d,labelBgPadding:f,labelBgBorderRadius:p,style:m,markerEnd:h,markerStart:g,interactionWidth:v})})}var tM=eM({isInternal:!1}),nM=eM({isInternal:!0});tM.displayName=`BezierEdge`,nM.displayName=`BezierEdgeInternal`;var rM={default:nM,straight:$j,step:Xj,smoothstep:qj,simplebezier:Wj},iM={sourceX:null,sourceY:null,targetX:null,targetY:null,sourcePosition:null,targetPosition:null,zIndex:void 0},aM=(e,t,n)=>n===$.Left?e-t:n===$.Right?e+t:e,oM=(e,t,n)=>n===$.Top?e-t:n===$.Bottom?e+t:e,sM=`react-flow__edgeupdater`;function cM({position:e,centerX:t,centerY:n,radius:r=10,onMouseDown:i,onMouseEnter:a,onMouseOut:o,type:s}){return(0,K.jsx)(`circle`,{onMouseDown:i,onMouseEnter:a,onMouseOut:o,className:Jb([sM,`${sM}-${s}`]),cx:aM(t,r,e),cy:oM(n,r,e),r,stroke:`transparent`,fill:`transparent`})}function lM({isReconnectable:e,reconnectRadius:t,edge:n,sourceX:r,sourceY:i,targetX:a,targetY:o,sourcePosition:s,targetPosition:c,onReconnect:l,onReconnectStart:u,onReconnectEnd:d,setReconnecting:f,setUpdateHover:p}){let m=Pk(),h=(e,t)=>{if(e.button!==0)return;let{autoPanOnConnect:r,domNode:i,connectionMode:a,connectionRadius:o,lib:s,onConnectStart:c,cancelConnection:p,nodeLookup:h,rfId:g,panBy:_,updateConnection:v}=m.getState(),y=t.type===`target`;UO.onPointerDown(e.nativeEvent,{autoPanOnConnect:r,connectionMode:a,connectionRadius:o,domNode:i,handleId:t.id,nodeId:t.nodeId,nodeLookup:h,isTarget:y,edgeUpdaterType:t.type,lib:s,flowId:g,cancelConnection:p,panBy:_,isValidConnection:(...e)=>m.getState().isValidConnection?.(...e)??!0,onConnect:e=>l?.(n,e),onConnectStart:(r,i)=>{f(!0),u?.(e,n,t.type),c?.(r,i)},onConnectEnd:(...e)=>m.getState().onConnectEnd?.(...e),onReconnectEnd:(e,r)=>{f(!1),d?.(e,n,t.type,r)},updateConnection:v,getTransform:()=>m.getState().transform,getFromHandle:()=>m.getState().connection.fromHandle,dragThreshold:m.getState().connectionDragThreshold,handleDomNode:e.currentTarget})},g=e=>h(e,{nodeId:n.target,id:n.targetHandle??null,type:`target`}),_=e=>h(e,{nodeId:n.source,id:n.sourceHandle??null,type:`source`}),v=()=>p(!0),y=()=>p(!1);return(0,K.jsxs)(K.Fragment,{children:[(e===!0||e===`source`)&&(0,K.jsx)(cM,{position:s,centerX:r,centerY:i,radius:t,onMouseDown:g,onMouseEnter:v,onMouseOut:y,type:`source`}),(e===!0||e===`target`)&&(0,K.jsx)(cM,{position:c,centerX:a,centerY:o,radius:t,onMouseDown:_,onMouseEnter:v,onMouseOut:y,type:`target`})]})}function uM({id:e,edgesFocusable:t,edgesReconnectable:n,elementsSelectable:r,onClick:i,onDoubleClick:a,onContextMenu:o,onMouseEnter:s,onMouseMove:c,onMouseLeave:l,reconnectRadius:u,onReconnect:d,onReconnectStart:f,onReconnectEnd:p,rfId:m,edgeTypes:h,noPanClassName:g,onError:_,disableKeyboardA11y:v}){let b=Nk(t=>t.edgeLookup.get(e)),x=Nk(e=>e.defaultEdgeOptions);b=x?{...x,...b}:b;let S=b.type||`default`,C=h?.[S]||rM[S];C===void 0&&(_?.(`011`,jE.error011(S)),S=`default`,C=h?.default||rM.default);let w=!!(b.focusable||t&&b.focusable===void 0),T=d!==void 0&&(b.reconnectable||n&&b.reconnectable===void 0),E=!!(b.selectable||r&&b.selectable===void 0),D=(0,y.useRef)(null),[O,k]=(0,y.useState)(!1),[A,j]=(0,y.useState)(!1),M=Pk(),{zIndex:N=b.zIndex,sourceX:P,sourceY:F,targetX:I,targetY:L,sourcePosition:R,targetPosition:z}=Nk((0,y.useCallback)(t=>{let n=t.nodeLookup.get(b.source),r=t.nodeLookup.get(b.target);if(!n||!r)return iM;let i=iO({id:e,sourceNode:n,targetNode:r,sourceHandle:b.sourceHandle||null,targetHandle:b.targetHandle||null,connectionMode:t.connectionMode,onError:_}),a=GD({selected:b.selected,zIndex:b.zIndex,sourceNode:n,targetNode:r,elevateOnSelect:t.elevateEdgesOnSelect,zIndexMode:t.zIndexMode});return{...i||iM,zIndex:a}},[b.source,b.target,b.sourceHandle,b.targetHandle,b.selected,b.zIndex,_]),kk),B=(0,y.useMemo)(()=>b.markerStart?`url('#${cO(b.markerStart,m)}')`:void 0,[b.markerStart,m]),ee=(0,y.useMemo)(()=>b.markerEnd?`url('#${cO(b.markerEnd,m)}')`:void 0,[b.markerEnd,m]);if(b.hidden||P===null||F===null||I===null||L===null)return null;let V=t=>{let{addSelectedEdges:n,unselectNodesAndEdges:r,multiSelectionActive:a}=M.getState();E&&(M.setState({nodesSelectionActive:!1}),b.selected&&a?(r({nodes:[],edges:[b]}),D.current?.blur()):n([e])),i&&i(t,b)},H=a?e=>{a(e,{...b})}:void 0,te=o?e=>{o(e,{...b})}:void 0,ne=s?e=>{s(e,{...b})}:void 0,re=c?e=>{c(e,{...b})}:void 0,ie=l?e=>{l(e,{...b})}:void 0;return(0,K.jsx)(`svg`,{style:{zIndex:N},children:(0,K.jsxs)(`g`,{className:Jb([`react-flow__edge`,`react-flow__edge-${S}`,b.className,g,{selected:b.selected,animated:b.animated,inactive:!E&&!i,updating:O,selectable:E}]),onClick:V,onDoubleClick:H,onContextMenu:te,onMouseEnter:ne,onMouseMove:re,onMouseLeave:ie,onKeyDown:w?t=>{if(!v&&NE.includes(t.key)&&E){let{unselectNodesAndEdges:n,addSelectedEdges:r}=M.getState();t.key===`Escape`?(D.current?.blur(),n({edges:[b]})):r([e])}}:void 0,tabIndex:w?0:void 0,role:b.ariaRole??(w?`group`:`img`),"aria-roledescription":`edge`,"data-id":e,"data-testid":`rf__edge-${e}`,"aria-label":b.ariaLabel===null?void 0:b.ariaLabel||`Edge from ${b.source} to ${b.target}`,"aria-describedby":w?`${Rk}-${m}`:void 0,ref:D,...b.domAttributes,children:[!A&&(0,K.jsx)(C,{id:e,source:b.source,target:b.target,type:b.type,selected:b.selected,animated:b.animated,selectable:E,deletable:b.deletable??!0,label:b.label,labelStyle:b.labelStyle,labelShowBg:b.labelShowBg,labelBgStyle:b.labelBgStyle,labelBgPadding:b.labelBgPadding,labelBgBorderRadius:b.labelBgBorderRadius,sourceX:P,sourceY:F,targetX:I,targetY:L,sourcePosition:R,targetPosition:z,data:b.data,style:b.style,sourceHandleId:b.sourceHandle,targetHandleId:b.targetHandle,markerStart:B,markerEnd:ee,pathOptions:`pathOptions`in b?b.pathOptions:void 0,interactionWidth:b.interactionWidth}),T&&(0,K.jsx)(lM,{edge:b,isReconnectable:T,reconnectRadius:u,onReconnect:d,onReconnectStart:f,onReconnectEnd:p,sourceX:P,sourceY:F,targetX:I,targetY:L,sourcePosition:R,targetPosition:z,setUpdateHover:k,setReconnecting:j})]})})}var dM=(0,y.memo)(uM),fM=e=>({edgesFocusable:e.edgesFocusable,edgesReconnectable:e.edgesReconnectable,elementsSelectable:e.elementsSelectable,connectionMode:e.connectionMode,onError:e.onError});function pM({defaultMarkerColor:e,onlyRenderVisibleElements:t,rfId:n,edgeTypes:r,noPanClassName:i,onReconnect:a,onEdgeContextMenu:o,onEdgeMouseEnter:s,onEdgeMouseMove:c,onEdgeMouseLeave:l,onEdgeClick:u,reconnectRadius:d,onEdgeDoubleClick:f,onReconnectStart:p,onReconnectEnd:m,disableKeyboardA11y:h}){let{edgesFocusable:g,edgesReconnectable:_,elementsSelectable:v,onError:y}=Nk(fM,kk),b=kj(t);return(0,K.jsxs)(`div`,{className:`react-flow__edges`,children:[(0,K.jsx)(Ij,{defaultColor:e,rfId:n}),b.map(e=>(0,K.jsx)(dM,{id:e,edgesFocusable:g,edgesReconnectable:_,elementsSelectable:v,noPanClassName:i,onReconnect:a,onContextMenu:o,onMouseEnter:s,onMouseMove:c,onMouseLeave:l,onClick:u,reconnectRadius:d,onDoubleClick:f,onReconnectStart:p,onReconnectEnd:m,rfId:n,onError:y,edgeTypes:r,disableKeyboardA11y:h},e))]})}pM.displayName=`EdgeRenderer`;var mM=(0,y.memo)(pM),hM=e=>`translate(${e[0]}px,${e[1]}px) scale(${e[2]})`;function gM({children:e}){let t=Pk(),n=(0,y.useRef)(null),[r]=(0,y.useState)(()=>t.getState().transform);return TA(()=>{let e=null,r=()=>{let r=t.getState().transform;e&&r[0]===e[0]&&r[1]===e[1]&&r[2]===e[2]||(e=r,n.current&&(n.current.style.transform=hM(r)))};return r(),t.subscribe(r)},[t]),(0,K.jsx)(`div`,{ref:n,className:`react-flow__viewport xyflow__viewport react-flow__container`,style:{transform:hM(r)},children:e})}function _M(e){let t=MA(),n=(0,y.useRef)(!1);(0,y.useEffect)(()=>{!n.current&&t.viewportInitialized&&e&&(setTimeout(()=>e(t),1),n.current=!0)},[e,t.viewportInitialized])}var vM=e=>e.panZoom?.syncViewport;function yM(e){let t=Nk(vM),n=Pk();return(0,y.useEffect)(()=>{e&&(t?.(e),n.setState({transform:[e.x,e.y,e.zoom]}))},[e,t]),null}function bM(e){return e.connection.inProgress?{...e.connection,to:_D(e.connection.to,e.transform)}:{...e.connection}}function xM(e){return e?t=>e(bM(t)):bM}function SM(e){return Nk(xM(e),kk)}var CM=e=>({nodesConnectable:e.nodesConnectable,isValid:e.connection.isValid,inProgress:e.connection.inProgress,width:e.width,height:e.height});function wM({containerStyle:e,style:t,type:n,component:r}){let{nodesConnectable:i,width:a,height:o,isValid:s,inProgress:c}=Nk(CM,kk);return a&&i&&c?(0,K.jsx)(`svg`,{style:e,width:a,height:o,className:`react-flow__connectionline react-flow__container`,children:(0,K.jsx)(`g`,{className:Jb([`react-flow__connection`,jD(s)]),children:(0,K.jsx)(TM,{style:t,type:n,CustomComponent:r,isValid:s})})}):null}var TM=({style:e,type:t=zE.Bezier,CustomComponent:n,isValid:r})=>{let{inProgress:i,from:a,fromNode:o,fromHandle:s,fromPosition:c,to:l,toNode:u,toHandle:d,toPosition:f,pointer:p}=SM();if(!i)return;if(n)return(0,K.jsx)(n,{connectionLineType:t,connectionLineStyle:e,fromNode:o,fromHandle:s,fromX:a.x,fromY:a.y,toX:l.x,toY:l.y,fromPosition:c,toPosition:f,connectionStatus:jD(r),toNode:u,toHandle:d,pointer:p});let m=``,h={sourceX:a.x,sourceY:a.y,sourcePosition:c,targetX:l.x,targetY:l.y,targetPosition:f};switch(t){case zE.Bezier:[m]=UD(h);break;case zE.SimpleBezier:[m]=Vj(h);break;case zE.Step:[m]=nO({...h,borderRadius:0});break;case zE.SmoothStep:[m]=nO(h);break;default:[m]=XD(h)}return(0,K.jsx)(`path`,{d:m,fill:`none`,className:`react-flow__connection-path`,style:e})};TM.displayName=`ConnectionLine`;var EM={};function DM(e=EM){(0,y.useRef)(e),Pk(),(0,y.useEffect)(()=>{},[e])}function OM(){Pk(),(0,y.useRef)(!1),(0,y.useEffect)(()=>{},[])}function kM({nodeTypes:e,edgeTypes:t,onInit:n,onNodeClick:r,onEdgeClick:i,onNodeDoubleClick:a,onEdgeDoubleClick:o,onNodeMouseEnter:s,onNodeMouseMove:c,onNodeMouseLeave:l,onNodeContextMenu:u,onSelectionContextMenu:d,onSelectionStart:f,onSelectionEnd:p,connectionLineType:m,connectionLineStyle:h,connectionLineComponent:g,connectionLineContainerStyle:_,selectionKeyCode:v,selectionOnDrag:y,selectionMode:b,multiSelectionKeyCode:x,panActivationKeyCode:S,zoomActivationKeyCode:C,deleteKeyCode:w,onlyRenderVisibleElements:T,elementsSelectable:E,defaultViewport:D,translateExtent:O,minZoom:k,maxZoom:A,preventScrolling:j,defaultMarkerColor:M,zoomOnScroll:N,zoomOnPinch:P,panOnScroll:F,panOnScrollSpeed:I,panOnScrollMode:L,zoomOnDoubleClick:R,panOnDrag:z,autoPanOnSelection:B,onPaneClick:ee,onPaneMouseEnter:V,onPaneMouseMove:H,onPaneMouseLeave:te,onPaneScroll:ne,onPaneContextMenu:re,paneClickDistance:ie,nodeClickDistance:ae,onEdgeContextMenu:oe,onEdgeMouseEnter:se,onEdgeMouseMove:U,onEdgeMouseLeave:ce,reconnectRadius:le,onReconnect:ue,onReconnectStart:de,onReconnectEnd:fe,noDragClassName:pe,noWheelClassName:me,noPanClassName:he,disableKeyboardA11y:ge,nodeExtent:_e,rfId:ve,viewport:ye,onViewportChange:be,nodesDraggable:xe}){return DM(e),DM(t),OM(),_M(n),yM(ye),(0,K.jsx)(vj,{onPaneClick:ee,onPaneMouseEnter:V,onPaneMouseMove:H,onPaneMouseLeave:te,onPaneContextMenu:re,onPaneScroll:ne,paneClickDistance:ie,deleteKeyCode:w,selectionKeyCode:v,selectionOnDrag:y,selectionMode:b,onSelectionStart:f,onSelectionEnd:p,multiSelectionKeyCode:x,panActivationKeyCode:S,zoomActivationKeyCode:C,elementsSelectable:E,zoomOnScroll:N,zoomOnPinch:P,zoomOnDoubleClick:R,panOnScroll:F,panOnScrollSpeed:I,panOnScrollMode:L,panOnDrag:z,autoPanOnSelection:B,defaultViewport:D,translateExtent:O,minZoom:k,maxZoom:A,onSelectionContextMenu:d,preventScrolling:j,noDragClassName:pe,noWheelClassName:me,noPanClassName:he,disableKeyboardA11y:ge,onViewportChange:be,isControlledViewport:!!ye,children:(0,K.jsxs)(gM,{children:[(0,K.jsx)(mM,{edgeTypes:t,onEdgeClick:i,onEdgeDoubleClick:o,onReconnect:ue,onReconnectStart:de,onReconnectEnd:fe,onlyRenderVisibleElements:T,onEdgeContextMenu:oe,onEdgeMouseEnter:se,onEdgeMouseMove:U,onEdgeMouseLeave:ce,reconnectRadius:le,defaultMarkerColor:M,noPanClassName:he,disableKeyboardA11y:ge,rfId:ve}),(0,K.jsx)(wM,{style:h,type:m,component:g,containerStyle:_}),(0,K.jsx)(`div`,{className:`react-flow__edgelabel-renderer`}),(0,K.jsx)(Oj,{nodeTypes:e,onNodeClick:r,onNodeDoubleClick:a,onNodeMouseEnter:s,onNodeMouseMove:c,onNodeMouseLeave:l,onNodeContextMenu:u,nodeClickDistance:ae,onlyRenderVisibleElements:T,noPanClassName:he,noDragClassName:pe,disableKeyboardA11y:ge,nodeExtent:_e,rfId:ve,nodesDraggable:xe}),(0,K.jsx)(`div`,{className:`react-flow__viewport-portal`})]})})}kM.displayName=`GraphView`;var AM=(0,y.memo)(kM),jM=hD(`React Flow`,`https://reactflow.dev/`),MM=({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,width:i,height:a,fitView:o,fitViewOptions:s,minZoom:c=.5,maxZoom:l=2,nodeOrigin:u,nodeExtent:d,zIndexMode:f=`basic`}={})=>{let p=new Map,m=new Map,h=new Map,g=new Map,_=r??t??[],v=n??e??[],y=u??[0,0],b=d??ME;DO(h,g,_);let{nodesInitialized:x}=vO(v,p,m,{nodeOrigin:y,nodeExtent:b,zIndexMode:f}),S=[0,0,1];if(o&&i&&a){let{x:e,y:t,zoom:n}=SD(qE(p,{filter:e=>!(!e.width&&!e.initialWidth||!e.height&&!e.initialHeight)}),i,a,c,l,s?.padding??.1);S=[e,t,n]}return{rfId:`1`,width:i??0,height:a??0,transform:S,nodes:v,nodesInitialized:x,nodeLookup:p,parentLookup:m,edges:_,edgeLookup:g,connectionLookup:h,onNodesChange:null,onEdgesChange:null,hasDefaultNodes:n!==void 0,hasDefaultEdges:r!==void 0,panZoom:null,minZoom:c,maxZoom:l,translateExtent:ME,nodeExtent:b,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionMode:FE.Strict,domNode:null,paneDragging:!1,noPanClassName:`nopan`,nodeOrigin:y,nodeDragThreshold:1,connectionDragThreshold:1,snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,edgesReconnectable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,elevateEdgesOnSelect:!0,selectNodesOnDrag:!0,multiSelectionActive:!1,fitViewQueued:o??!1,fitViewOptions:s,fitViewResolver:null,connection:{...RE},connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:``,autoPanOnConnect:!0,autoPanOnNodeDrag:!0,autoPanOnNodeFocus:!0,autoPanSpeed:15,connectionRadius:20,onError:jM,isValidConnection:void 0,onSelectionChangeHandlers:[],lib:`react`,debug:!1,ariaLabelConfig:PE,zIndexMode:f,defaultEdgeOptions:void 0,onNodesChangeMiddlewareMap:new Map,onEdgesChangeMiddlewareMap:new Map,onNodesDelete:void 0,onEdgesDelete:void 0,onDelete:void 0,onBeforeDelete:void 0,onViewportChangeStart:void 0,onViewportChange:void 0,onViewportChangeEnd:void 0,onNodeDragStart:void 0,onNodeDrag:void 0,onNodeDragStop:void 0,onSelectionDragStart:void 0,onSelectionDrag:void 0,onSelectionDragStop:void 0,onMoveStart:void 0,onMove:void 0,onMoveEnd:void 0,onConnect:void 0,onConnectStart:void 0,onConnectEnd:void 0,onClickConnectStart:void 0,onClickConnectEnd:void 0}},NM=({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,width:i,height:a,fitView:o,fitViewOptions:s,minZoom:c,maxZoom:l,nodeOrigin:u,nodeExtent:d,zIndexMode:f})=>Ok((p,m)=>{async function h(){let{nodeLookup:e,panZoom:t,fitViewOptions:n,fitViewResolver:r,width:i,height:a,minZoom:o,maxZoom:s}=m();t&&(await ZE({nodes:e,width:i,height:a,panZoom:t,minZoom:o,maxZoom:s},n),r?.resolve(!0),p({fitViewResolver:null}))}return{...MM({nodes:e,edges:t,width:i,height:a,fitView:o,fitViewOptions:s,minZoom:c,maxZoom:l,nodeOrigin:u,nodeExtent:d,defaultNodes:n,defaultEdges:r,zIndexMode:f}),setNodes:e=>{let{nodeLookup:t,parentLookup:n,nodeOrigin:r,nodeExtent:i,elevateNodesOnSelect:a,fitViewQueued:o,zIndexMode:s,nodesSelectionActive:c}=m(),{nodesInitialized:l,hasSelectedNodes:u}=vO(e,t,n,{nodeOrigin:r,nodeExtent:i,elevateNodesOnSelect:a,checkEquality:!0,zIndexMode:s}),d=c&&u;o&&l?(h(),p({nodes:e,nodesInitialized:l,fitViewQueued:!1,fitViewOptions:void 0,nodesSelectionActive:d})):p({nodes:e,nodesInitialized:l,nodesSelectionActive:d})},setEdges:e=>{let{connectionLookup:t,edgeLookup:n}=m();DO(t,n,e),p({edges:e})},setDefaultNodesAndEdges:(e,t)=>{if(e){let{setNodes:t}=m();t(e),p({hasDefaultNodes:!0})}if(t){let{setEdges:e}=m();e(t),p({hasDefaultEdges:!0})}},updateNodeInternals:e=>{let{triggerNodeChanges:t,nodeLookup:n,parentLookup:r,domNode:i,nodeOrigin:a,nodeExtent:o,debug:s,fitViewQueued:c,zIndexMode:l}=m(),{changes:u,updatedInternals:d}=wO(e,n,r,i,a,o,l);d&&(hO(n,r,{nodeOrigin:a,nodeExtent:o,zIndexMode:l}),c?(h(),p({fitViewQueued:!1,fitViewOptions:void 0})):p({}),u?.length>0&&(s&&console.log(`React Flow: trigger node changes`,u),t?.(u)))},updateNodePositions:(e,t=!1)=>{let n=[],r=[],{nodeLookup:i,triggerNodeChanges:a,connection:o,updateConnection:s,onNodesChangeMiddlewareMap:c}=m();for(let[a,c]of e){let e=i.get(a),l=!!(e?.expandParent&&e?.parentId&&c?.position),u={id:a,type:`position`,position:l?{x:Math.max(0,c.position.x),y:Math.max(0,c.position.y)}:c.position,dragging:t};if(e&&o.inProgress&&o.fromNode.id===e.id){let t=oO(e,o.fromHandle,$.Left,!0);s({...o,from:t})}l&&e.parentId&&n.push({id:a,parentId:e.parentId,rect:{...c.internals.positionAbsolute,width:c.measured.width??0,height:c.measured.height??0}}),r.push(u)}if(n.length>0){let{parentLookup:e,nodeOrigin:t}=m(),a=CO(n,i,e,t);r.push(...a)}for(let e of c.values())r=e(r);a(r)},triggerNodeChanges:e=>{let{onNodesChange:t,setNodes:n,nodes:r,hasDefaultNodes:i,debug:a}=m();e?.length&&(i&&n(mA(e,r)),a&&console.log(`React Flow: trigger node changes`,e),t?.(e))},triggerEdgeChanges:e=>{let{onEdgesChange:t,setEdges:n,edges:r,hasDefaultEdges:i,debug:a}=m();e?.length&&(i&&n(hA(e,r)),a&&console.log(`React Flow: trigger edge changes`,e),t?.(e))},addSelectedNodes:e=>{let{multiSelectionActive:t,edgeLookup:n,nodeLookup:r,triggerNodeChanges:i,triggerEdgeChanges:a}=m();if(t){i(e.map(e=>gA(e,!0)));return}i(_A(r,new Set([...e]),!0)),a(_A(n))},addSelectedEdges:e=>{let{multiSelectionActive:t,edgeLookup:n,nodeLookup:r,triggerNodeChanges:i,triggerEdgeChanges:a}=m();if(t){a(e.map(e=>gA(e,!0)));return}a(_A(n,new Set([...e]))),i(_A(r,new Set,!0))},unselectNodesAndEdges:({nodes:e,edges:t}={})=>{let{edges:n,nodes:r,nodeLookup:i,triggerNodeChanges:a,triggerEdgeChanges:o}=m(),s=e||r,c=t||n,l=[];for(let e of s){if(!e.selected)continue;let t=i.get(e.id);t&&(t.selected=!1),l.push(gA(e.id,!1))}let u=[];for(let e of c)e.selected&&u.push(gA(e.id,!1));a(l),o(u)},setMinZoom:e=>{let{panZoom:t,maxZoom:n}=m();t?.setScaleExtent([e,n]),p({minZoom:e})},setMaxZoom:e=>{let{panZoom:t,minZoom:n}=m();t?.setScaleExtent([n,e]),p({maxZoom:e})},setTranslateExtent:e=>{m().panZoom?.setTranslateExtent(e),p({translateExtent:e})},resetSelectedElements:()=>{let{edges:e,nodes:t,triggerNodeChanges:n,triggerEdgeChanges:r,elementsSelectable:i}=m();if(!i)return;let a=t.reduce((e,t)=>t.selected?[...e,gA(t.id,!1)]:e,[]),o=e.reduce((e,t)=>t.selected?[...e,gA(t.id,!1)]:e,[]);n(a),r(o)},setNodeExtent:e=>{let{nodes:t,nodeLookup:n,parentLookup:r,nodeOrigin:i,elevateNodesOnSelect:a,nodeExtent:o,zIndexMode:s}=m();(e[0][0]!==o[0][0]||e[0][1]!==o[0][1]||e[1][0]!==o[1][0]||e[1][1]!==o[1][1])&&(vO(t,n,r,{nodeOrigin:i,nodeExtent:e,elevateNodesOnSelect:a,checkEquality:!1,zIndexMode:s}),p({nodeExtent:e}))},panBy:e=>{let{transform:t,width:n,height:r,panZoom:i,translateExtent:a}=m();return TO({delta:e,panZoom:i,transform:t,translateExtent:a,width:n,height:r})},setCenter:async(e,t,n)=>{let{width:r,height:i,maxZoom:a,panZoom:o}=m();if(!o)return!1;let s=n?.zoom===void 0?a:n.zoom;return await o.setViewport({x:r/2-e*s,y:i/2-t*s,zoom:s},{duration:n?.duration,ease:n?.ease,interpolate:n?.interpolate}),!0},cancelConnection:()=>{p({connection:{...RE}})},updateConnection:e=>{p({connection:e})},reset:()=>p({...MM()})}},Object.is);function PM({initialNodes:e,initialEdges:t,defaultNodes:n,defaultEdges:r,initialWidth:i,initialHeight:a,initialMinZoom:o,initialMaxZoom:s,initialFitViewOptions:c,fitView:l,nodeOrigin:u,nodeExtent:d,zIndexMode:f,children:p}){let[m]=(0,y.useState)(()=>NM({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,width:i,height:a,fitView:l,minZoom:o,maxZoom:s,fitViewOptions:c,nodeOrigin:u,nodeExtent:d,zIndexMode:f}));return(0,K.jsx)(jk,{value:m,children:(0,K.jsx)(kA,{children:(0,K.jsx)(ej,{children:p})})})}function FM({children:e,nodes:t,edges:n,defaultNodes:r,defaultEdges:i,width:a,height:o,fitView:s,fitViewOptions:c,minZoom:l,maxZoom:u,nodeOrigin:d,nodeExtent:f,zIndexMode:p}){return(0,y.useContext)(Ak)?(0,K.jsx)(K.Fragment,{children:e}):(0,K.jsx)(PM,{initialNodes:t,initialEdges:n,defaultNodes:r,defaultEdges:i,initialWidth:a,initialHeight:o,fitView:s,initialFitViewOptions:c,initialMinZoom:l,initialMaxZoom:u,nodeOrigin:d,nodeExtent:f,zIndexMode:p,children:e})}var IM={width:`100%`,height:`100%`,overflow:`hidden`,position:`relative`,zIndex:0};function LM({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,className:i,nodeTypes:a,edgeTypes:o,onNodeClick:s,onEdgeClick:c,onInit:l,onMove:u,onMoveStart:d,onMoveEnd:f,onConnect:p,onConnectStart:m,onConnectEnd:h,onClickConnectStart:g,onClickConnectEnd:_,onNodeMouseEnter:v,onNodeMouseMove:b,onNodeMouseLeave:x,onNodeContextMenu:S,onNodeDoubleClick:C,onNodeDragStart:w,onNodeDrag:T,onNodeDragStop:E,onNodesDelete:D,onEdgesDelete:O,onDelete:k,onSelectionChange:A,onSelectionDragStart:j,onSelectionDrag:M,onSelectionDragStop:N,onSelectionContextMenu:P,onSelectionStart:F,onSelectionEnd:I,onBeforeDelete:L,connectionMode:R,connectionLineType:z=zE.Bezier,connectionLineStyle:B,connectionLineComponent:ee,connectionLineContainerStyle:V,deleteKeyCode:H=`Backspace`,selectionKeyCode:te=`Shift`,selectionOnDrag:ne=!1,selectionMode:re=LE.Full,panActivationKeyCode:ie=`Space`,multiSelectionKeyCode:ae=CD()?`Meta`:`Control`,zoomActivationKeyCode:oe=CD()?`Meta`:`Control`,snapToGrid:se,snapGrid:U,onlyRenderVisibleElements:ce=!1,selectNodesOnDrag:le,nodesDraggable:ue,autoPanOnNodeFocus:de,nodesConnectable:fe,nodesFocusable:pe,nodeOrigin:me=$k,edgesFocusable:he,edgesReconnectable:ge,elementsSelectable:_e=!0,defaultViewport:ve=eA,minZoom:ye=.5,maxZoom:be=2,translateExtent:xe=ME,preventScrolling:Se=!0,nodeExtent:Ce,defaultMarkerColor:we=`#b1b1b7`,zoomOnScroll:Te=!0,zoomOnPinch:Ee=!0,panOnScroll:De=!1,panOnScrollSpeed:Oe=.5,panOnScrollMode:ke=IE.Free,zoomOnDoubleClick:Ae=!0,panOnDrag:je=!0,onPaneClick:Me,onPaneMouseEnter:Ne,onPaneMouseMove:Pe,onPaneMouseLeave:Fe,onPaneScroll:Ie,onPaneContextMenu:Le,paneClickDistance:Re=1,nodeClickDistance:ze=0,children:Be,onReconnect:Ve,onReconnectStart:He,onReconnectEnd:Ue,onEdgeContextMenu:We,onEdgeDoubleClick:Ge,onEdgeMouseEnter:Ke,onEdgeMouseMove:qe,onEdgeMouseLeave:Je,reconnectRadius:Ye=10,onNodesChange:Xe,onEdgesChange:Ze,noDragClassName:Qe=`nodrag`,noWheelClassName:$e=`nowheel`,noPanClassName:et=`nopan`,fitView:tt,fitViewOptions:nt,connectOnClick:rt,attributionPosition:it,proOptions:at,defaultEdgeOptions:W,elevateNodesOnSelect:ot=!0,elevateEdgesOnSelect:st=!1,disableKeyboardA11y:ct=!1,autoPanOnConnect:lt,autoPanOnNodeDrag:ut,autoPanOnSelection:dt=!0,autoPanSpeed:ft,connectionRadius:G,isValidConnection:pt,onError:mt,style:ht,id:gt,nodeDragThreshold:_t,connectionDragThreshold:vt,viewport:yt,onViewportChange:bt,width:xt,height:St,colorMode:Ct=`light`,debug:wt,onScroll:Tt,ariaLabelConfig:Et,zIndexMode:Dt=`basic`,...Ot},kt){let At=gt||`1`,jt=oA(Ct),Mt=(0,y.useCallback)(e=>{e.currentTarget.scrollTo({top:0,left:0,behavior:`instant`}),Tt?.(e)},[Tt]);return(0,K.jsx)(`div`,{"data-testid":`rf__wrapper`,...Ot,onScroll:Mt,style:{...ht,...IM},ref:kt,className:Jb([`react-flow`,i,jt]),id:gt,role:`application`,children:(0,K.jsxs)(FM,{nodes:e,edges:t,width:xt,height:St,fitView:tt,fitViewOptions:nt,minZoom:ye,maxZoom:be,nodeOrigin:me,nodeExtent:Ce,zIndexMode:Dt,children:[(0,K.jsx)(iA,{nodes:e,edges:t,defaultNodes:n,defaultEdges:r,onConnect:p,onConnectStart:m,onConnectEnd:h,onClickConnectStart:g,onClickConnectEnd:_,nodesDraggable:ue,autoPanOnNodeFocus:de,nodesConnectable:fe,nodesFocusable:pe,edgesFocusable:he,edgesReconnectable:ge,elementsSelectable:_e,elevateNodesOnSelect:ot,elevateEdgesOnSelect:st,minZoom:ye,maxZoom:be,nodeExtent:Ce,onNodesChange:Xe,onEdgesChange:Ze,snapToGrid:se,snapGrid:U,connectionMode:R,translateExtent:xe,connectOnClick:rt,defaultEdgeOptions:W,fitView:tt,fitViewOptions:nt,onNodesDelete:D,onEdgesDelete:O,onDelete:k,onNodeDragStart:w,onNodeDrag:T,onNodeDragStop:E,onSelectionDrag:M,onSelectionDragStart:j,onSelectionDragStop:N,onMove:u,onMoveStart:d,onMoveEnd:f,noPanClassName:et,nodeOrigin:me,rfId:At,autoPanOnConnect:lt,autoPanOnNodeDrag:ut,autoPanSpeed:ft,onError:mt,connectionRadius:G,isValidConnection:pt,selectNodesOnDrag:le,nodeDragThreshold:_t,connectionDragThreshold:vt,onBeforeDelete:L,debug:wt,ariaLabelConfig:Et,zIndexMode:Dt}),(0,K.jsx)(AM,{onInit:l,onNodeClick:s,onEdgeClick:c,onNodeMouseEnter:v,onNodeMouseMove:b,onNodeMouseLeave:x,onNodeContextMenu:S,onNodeDoubleClick:C,nodeTypes:a,edgeTypes:o,connectionLineType:z,connectionLineStyle:B,connectionLineComponent:ee,connectionLineContainerStyle:V,selectionKeyCode:te,selectionOnDrag:ne,selectionMode:re,deleteKeyCode:H,multiSelectionKeyCode:ae,panActivationKeyCode:ie,zoomActivationKeyCode:oe,onlyRenderVisibleElements:ce,defaultViewport:ve,translateExtent:xe,minZoom:ye,maxZoom:be,preventScrolling:Se,zoomOnScroll:Te,zoomOnPinch:Ee,zoomOnDoubleClick:Ae,panOnScroll:De,panOnScrollSpeed:Oe,panOnScrollMode:ke,panOnDrag:je,autoPanOnSelection:dt,onPaneClick:Me,onPaneMouseEnter:Ne,onPaneMouseMove:Pe,onPaneMouseLeave:Fe,onPaneScroll:Ie,onPaneContextMenu:Le,paneClickDistance:Re,nodeClickDistance:ze,onSelectionContextMenu:P,onSelectionStart:F,onSelectionEnd:I,onReconnect:Ve,onReconnectStart:He,onReconnectEnd:Ue,onEdgeContextMenu:We,onEdgeDoubleClick:Ge,onEdgeMouseEnter:Ke,onEdgeMouseMove:qe,onEdgeMouseLeave:Je,reconnectRadius:Ye,defaultMarkerColor:we,noDragClassName:Qe,noWheelClassName:$e,noPanClassName:et,rfId:At,disableKeyboardA11y:ct,nodeExtent:Ce,viewport:yt,onViewportChange:bt,nodesDraggable:ue}),(0,K.jsx)(Qk,{onSelectionChange:A}),Be,(0,K.jsx)(Kk,{proOptions:at,position:it}),(0,K.jsx)(Uk,{rfId:At,disableKeyboardA11y:ct})]})})}var RM=wA(LM);function zM(e){let[t,n]=(0,y.useState)(e);return[t,n,(0,y.useCallback)(e=>n(t=>mA(e,t)),[])]}function BM(e){let[t,n]=(0,y.useState)(e);return[t,n,(0,y.useCallback)(e=>n(t=>hA(e,t)),[])]}jE.error014();function VM(e){return Nk((0,y.useCallback)(t=>t.nodeLookup.get(e),[e]),kk)}function HM({dimensions:e,lineWidth:t,variant:n,className:r}){return(0,K.jsx)(`path`,{strokeWidth:t,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`,className:Jb([`react-flow__background-pattern`,n,r])})}function UM({radius:e,className:t}){return(0,K.jsx)(`circle`,{cx:e,cy:e,r:e,className:Jb([`react-flow__background-pattern`,`dots`,t])})}var WM;(function(e){e.Lines=`lines`,e.Dots=`dots`,e.Cross=`cross`})(WM||={});var GM={[WM.Dots]:1,[WM.Lines]:1,[WM.Cross]:6},KM=e=>({transform:e.transform,patternId:`pattern-${e.rfId}`});function qM({id:e,variant:t=WM.Dots,gap:n=20,size:r,lineWidth:i=1,offset:a=0,color:o,bgColor:s,style:c,className:l,patternClassName:u}){let d=(0,y.useRef)(null),{transform:f,patternId:p}=Nk(KM,kk),m=r||GM[t],h=t===WM.Dots,g=t===WM.Cross,_=Array.isArray(n)?n:[n,n],v=[_[0]*f[2]||1,_[1]*f[2]||1],b=m*f[2],x=Array.isArray(a)?a:[a,a],S=g?[b,b]:v,C=[x[0]*f[2]+S[0]/2,x[1]*f[2]+S[1]/2],w=`${p}${e||``}`;return(0,K.jsxs)(`svg`,{className:Jb([`react-flow__background`,l]),style:{...c,...LA,"--xy-background-color-props":s,"--xy-background-pattern-color-props":o},ref:d,"data-testid":`rf__background`,children:[(0,K.jsx)(`pattern`,{id:w,x:f[0]%v[0],y:f[1]%v[1],width:v[0],height:v[1],patternUnits:`userSpaceOnUse`,patternTransform:`translate(-${C[0]},-${C[1]})`,children:h?(0,K.jsx)(UM,{radius:b/2,className:u}):(0,K.jsx)(HM,{dimensions:S,lineWidth:i,variant:t,className:u})}),(0,K.jsx)(`rect`,{x:`0`,y:`0`,width:`100%`,height:`100%`,fill:`url(#${w})`})]})}qM.displayName=`Background`;var JM=(0,y.memo)(qM);function YM(){return(0,K.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 32`,children:(0,K.jsx)(`path`,{d:`M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z`})})}function XM(){return(0,K.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 5`,children:(0,K.jsx)(`path`,{d:`M0 0h32v4.2H0z`})})}function ZM(){return(0,K.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 30`,children:(0,K.jsx)(`path`,{d:`M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0027.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94c-.531 0-.939-.4-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z`})})}function QM(){return(0,K.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 25 32`,children:(0,K.jsx)(`path`,{d:`M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z`})})}function $M(){return(0,K.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 25 32`,children:(0,K.jsx)(`path`,{d:`M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047z`})})}function eN({children:e,className:t,...n}){return(0,K.jsx)(`button`,{type:`button`,className:Jb([`react-flow__controls-button`,t]),...n,children:e})}var tN=e=>({isInteractive:e.nodesDraggable||e.nodesConnectable||e.elementsSelectable,minZoomReached:e.transform[2]<=e.minZoom,maxZoomReached:e.transform[2]>=e.maxZoom,ariaLabelConfig:e.ariaLabelConfig});function nN({style:e,showZoom:t=!0,showFitView:n=!0,showInteractive:r=!0,fitViewOptions:i,onZoomIn:a,onZoomOut:o,onFitView:s,onInteractiveChange:c,className:l,children:u,position:d=`bottom-left`,orientation:f=`vertical`,"aria-label":p}){let m=Pk(),{isInteractive:h,minZoomReached:g,maxZoomReached:_,ariaLabelConfig:v}=Nk(tN,kk),{zoomIn:y,zoomOut:b,fitView:x}=MA();return(0,K.jsxs)(Wk,{className:Jb([`react-flow__controls`,f===`horizontal`?`horizontal`:`vertical`,l]),position:d,style:e,"data-testid":`rf__controls`,"aria-label":p??v[`controls.ariaLabel`],children:[t&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(eN,{onClick:()=>{y(),a?.()},className:`react-flow__controls-zoomin`,title:v[`controls.zoomIn.ariaLabel`],"aria-label":v[`controls.zoomIn.ariaLabel`],disabled:_,children:(0,K.jsx)(YM,{})}),(0,K.jsx)(eN,{onClick:()=>{b(),o?.()},className:`react-flow__controls-zoomout`,title:v[`controls.zoomOut.ariaLabel`],"aria-label":v[`controls.zoomOut.ariaLabel`],disabled:g,children:(0,K.jsx)(XM,{})})]}),n&&(0,K.jsx)(eN,{className:`react-flow__controls-fitview`,onClick:()=>{x(i),s?.()},title:v[`controls.fitView.ariaLabel`],"aria-label":v[`controls.fitView.ariaLabel`],children:(0,K.jsx)(ZM,{})}),r&&(0,K.jsx)(eN,{className:`react-flow__controls-interactive`,onClick:()=>{m.setState({nodesDraggable:!h,nodesConnectable:!h,elementsSelectable:!h}),c?.(!h)},title:v[`controls.interactive.ariaLabel`],"aria-label":v[`controls.interactive.ariaLabel`],children:h?(0,K.jsx)($M,{}):(0,K.jsx)(QM,{})}),u]})}nN.displayName=`Controls`;var rN=(0,y.memo)(nN);function iN({id:e,x:t,y:n,width:r,height:i,style:a,color:o,strokeColor:s,strokeWidth:c,className:l,borderRadius:u,shapeRendering:d,selected:f,onClick:p}){let{background:m,backgroundColor:h}=a||{},g=o||m||h;return(0,K.jsx)(`rect`,{className:Jb([`react-flow__minimap-node`,{selected:f},l]),x:t,y:n,rx:u,ry:u,width:r,height:i,style:{fill:g,stroke:s,strokeWidth:c},shapeRendering:d,onClick:p?t=>p(t,e):void 0})}var aN=(0,y.memo)(iN),oN=e=>e.nodes.map(e=>e.id),sN=e=>e instanceof Function?e:()=>e;function cN({nodeStrokeColor:e,nodeColor:t,nodeClassName:n=``,nodeBorderRadius:r=5,nodeStrokeWidth:i,nodeComponent:a=aN,onClick:o}){let s=Nk(oN,kk),c=sN(t),l=sN(e),u=sN(n),d=typeof window>`u`||window.chrome?`crispEdges`:`geometricPrecision`;return(0,K.jsx)(K.Fragment,{children:s.map(e=>(0,K.jsx)(uN,{id:e,nodeColorFunc:c,nodeStrokeColorFunc:l,nodeClassNameFunc:u,nodeBorderRadius:r,nodeStrokeWidth:i,NodeComponent:a,onClick:o,shapeRendering:d},e))})}function lN({id:e,nodeColorFunc:t,nodeStrokeColorFunc:n,nodeClassNameFunc:r,nodeBorderRadius:i,nodeStrokeWidth:a,shapeRendering:o,NodeComponent:s,onClick:c}){let{node:l,x:u,y:d,width:f,height:p}=Nk(t=>{let n=t.nodeLookup.get(e);if(!n)return{node:void 0,x:0,y:0,width:0,height:0};let r=n.internals.userNode,{x:i,y:a}=n.internals.positionAbsolute,{width:o,height:s}=TD(r);return{node:r,x:i,y:a,width:o,height:s}},kk);return!l||l.hidden||!ED(l)?null:(0,K.jsx)(s,{x:u,y:d,width:f,height:p,style:l.style,selected:!!l.selected,className:r(l),color:t(l),borderRadius:i,strokeColor:n(l),strokeWidth:a,shapeRendering:o,onClick:c,id:l.id})}var uN=(0,y.memo)(lN),dN=(0,y.memo)(cN),fN=200,pN=150,mN=e=>!e.hidden,hN=e=>{let t={x:-e.transform[0]/e.transform[2],y:-e.transform[1]/e.transform[2],width:e.width/e.transform[2],height:e.height/e.transform[2]},n=!1;for(let t of e.nodeLookup.values())if(!t.hidden){n=!0;break}return{viewBB:t,boundingRect:n?uD(qE(e.nodeLookup,{filter:mN}),t):t,rfId:e.rfId,panZoom:e.panZoom,translateExtent:e.translateExtent,flowWidth:e.width,flowHeight:e.height,ariaLabelConfig:e.ariaLabelConfig}},gN=(e,t)=>e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height,_N=(e,t)=>gN(e.viewBB,t.viewBB)&&gN(e.boundingRect,t.boundingRect)&&e.rfId===t.rfId&&e.panZoom===t.panZoom&&e.translateExtent===t.translateExtent&&e.flowWidth===t.flowWidth&&e.flowHeight===t.flowHeight&&e.ariaLabelConfig===t.ariaLabelConfig,vN=`react-flow__minimap-desc`;function yN({style:e,className:t,nodeStrokeColor:n,nodeColor:r,nodeClassName:i=``,nodeBorderRadius:a=5,nodeStrokeWidth:o,nodeComponent:s,bgColor:c,maskColor:l,maskStrokeColor:u,maskStrokeWidth:d,position:f=`bottom-right`,onClick:p,onNodeClick:m,pannable:h=!1,zoomable:g=!1,ariaLabel:_,inversePan:v,zoomStep:b=1,offsetScale:x=5}){let S=Pk(),C=(0,y.useRef)(null),{boundingRect:w,panZoom:T,viewBB:E,rfId:D,translateExtent:O,flowWidth:k,flowHeight:A,ariaLabelConfig:j}=Nk(hN,_N),M=e?.width??fN,N=e?.height??pN,P=w.width/M,F=w.height/N,I=Math.max(P,F),L=I*M,R=I*N,z=x*I,B=w.x-(L-w.width)/2-z,ee=w.y-(R-w.height)/2-z,V=L+z*2,H=R+z*2,te=`${vN}-${D}`,ne=(0,y.useRef)(0),re=(0,y.useRef)();ne.current=I,(0,y.useEffect)(()=>{let e=S.getState().panZoom;if(C.current&&e)return re.current=WO({domNode:C.current,panZoom:e,getTransform:()=>S.getState().transform,getViewScale:()=>ne.current}),()=>{re.current?.destroy()}},[T]),(0,y.useEffect)(()=>{re.current?.update({translateExtent:O,width:k,height:A,inversePan:v,pannable:h,zoomStep:b,zoomable:g})},[h,g,v,b,O,k,A]);let ie=p?e=>{let[t,n]=re.current?.pointer(e)||[0,0];p(e,{x:t,y:n})}:void 0,ae=(0,y.useCallback)((e,t)=>{let n=S.getState().nodeLookup.get(t).internals.userNode;m?.(e,n)},[m]),oe=m?ae:void 0,se=_??j[`minimap.ariaLabel`];return(0,K.jsx)(Wk,{position:f,style:{...e,"--xy-minimap-background-color-props":typeof c==`string`?c:void 0,"--xy-minimap-mask-background-color-props":typeof l==`string`?l:void 0,"--xy-minimap-mask-stroke-color-props":typeof u==`string`?u:void 0,"--xy-minimap-mask-stroke-width-props":typeof d==`number`?d*I:void 0,"--xy-minimap-node-background-color-props":typeof r==`string`?r:void 0,"--xy-minimap-node-stroke-color-props":typeof n==`string`?n:void 0,"--xy-minimap-node-stroke-width-props":typeof o==`number`?o:void 0},className:Jb([`react-flow__minimap`,t]),"data-testid":`rf__minimap`,children:(0,K.jsxs)(`svg`,{width:M,height:N,viewBox:`${B} ${ee} ${V} ${H}`,className:`react-flow__minimap-svg`,role:`img`,"aria-labelledby":te,ref:C,onClick:ie,children:[se&&(0,K.jsx)(`title`,{id:te,children:se}),(0,K.jsx)(dN,{onClick:oe,nodeColor:r,nodeStrokeColor:n,nodeBorderRadius:a,nodeClassName:i,nodeStrokeWidth:o,nodeComponent:s}),(0,K.jsx)(`path`,{className:`react-flow__minimap-mask`,d:`M${B-z},${ee-z}h${V+z*2}v${H+z*2}h${-V-z*2}z + M${E.x},${E.y}h${E.width}v${E.height}h${-E.width}z`,fillRule:`evenodd`,pointerEvents:`none`})]})})}yN.displayName=`MiniMap`;var bN=(0,y.memo)(yN),xN=e=>t=>e?`${Math.max(1/t.transform[2],1)}`:void 0,SN={[ak.Line]:`right`,[ak.Handle]:`bottom-right`};function CN({nodeId:e,position:t,variant:n=ak.Handle,className:r,style:i=void 0,children:a,color:o,minWidth:s=10,minHeight:c=10,maxWidth:l=Number.MAX_VALUE,maxHeight:u=Number.MAX_VALUE,keepAspectRatio:d=!1,resizeDirection:f,autoScale:p=!0,shouldResize:m,onResizeStart:h,onResize:g,onResizeEnd:_}){let v=ZA(),b=typeof e==`string`?e:v,x=Pk(),S=(0,y.useRef)(null),C=n===ak.Handle,w=Nk((0,y.useCallback)(xN(C&&p),[C,p]),kk),T=(0,y.useRef)(null),E=t??SN[n];(0,y.useEffect)(()=>{if(S.current&&b)return T.current||=gk({domNode:S.current,nodeId:b,getStoreItems:()=>{let{nodeLookup:e,transform:t,snapGrid:n,snapToGrid:r,nodeOrigin:i,domNode:a}=x.getState();return{nodeLookup:e,transform:t,snapGrid:n,snapToGrid:r,nodeOrigin:i,paneDomNode:a}},onChange:(e,t)=>{let{triggerNodeChanges:n,nodeLookup:r,parentLookup:i,nodeOrigin:a}=x.getState(),o=[],s={x:e.x,y:e.y},c=r.get(b);if(c&&c.expandParent&&c.parentId){let t=c.origin??a,n=e.width??c.measured.width??0,l=e.height??c.measured.height??0,u=CO([{id:c.id,parentId:c.parentId,rect:{width:n,height:l,...DD({x:e.x??c.position.x,y:e.y??c.position.y},{width:n,height:l},c.parentId,r,t)}}],r,i,a);o.push(...u),s.x=e.x?Math.max(t[0]*n,e.x):void 0,s.y=e.y?Math.max(t[1]*l,e.y):void 0}if(s.x!==void 0&&s.y!==void 0){let e={id:b,type:`position`,position:{...s}};o.push(e)}if(e.width!==void 0&&e.height!==void 0){let t={id:b,type:`dimensions`,resizing:!0,setAttributes:f?f===`horizontal`?`width`:`height`:!0,dimensions:{width:e.width,height:e.height}};o.push(t)}for(let e of t){let t={...e,type:`position`};o.push(t)}n(o)},onEnd:({width:e,height:t})=>{let n={id:b,type:`dimensions`,resizing:!1,dimensions:{width:e,height:t}};x.getState().triggerNodeChanges([n])}}),T.current.update({controlPosition:E,boundaries:{minWidth:s,minHeight:c,maxWidth:l,maxHeight:u},keepAspectRatio:d,resizeDirection:f,onResizeStart:h,onResize:g,onResizeEnd:_,shouldResize:m}),()=>{T.current?.destroy()}},[E,s,c,l,u,d,h,g,_,m]);let D=E.split(`-`);return(0,K.jsx)(`div`,{className:Jb([`react-flow__resize-control`,`nodrag`,...D,n,r]),ref:S,style:{...i,scale:w,...o&&{[C?`backgroundColor`:`borderColor`]:o}},children:a})}(0,y.memo)(CN);var wN=e=>{switch(e){case`running`:return{borderColor:`border-[#643FB2] dark:border-[#8B5CF6]`,glow:`shadow-lg shadow-[#643FB2]/20`,badgeColor:`bg-[#643FB2] dark:bg-[#8B5CF6]`};case`completed`:return{borderColor:`border-green-500 dark:border-green-400`,glow:`shadow-lg shadow-green-500/20`,badgeColor:`bg-green-500 dark:bg-green-400`};case`failed`:return{borderColor:`border-red-500 dark:border-red-400`,glow:`shadow-lg shadow-red-500/20`,badgeColor:`bg-red-500 dark:bg-red-400`};case`cancelled`:return{borderColor:`border-orange-500 dark:border-orange-400`,glow:`shadow-lg shadow-orange-500/20`,badgeColor:`bg-orange-500 dark:bg-orange-400`};default:return{borderColor:`border-gray-300 dark:border-gray-600`,glow:``,badgeColor:`bg-gray-400 dark:bg-gray-500`}}},TN=(0,y.memo)(({data:e,selected:t})=>{let n=e,r=wN(n.state),[i,a]=(0,y.useState)(!1),o=n.outputData||n.error,s=n.state===`running`,c=s&&(n.isStreaming??!0),l=n.layoutDirection===`TB`,u=l?$.Top:$.Left,d=l?$.Bottom:$.Right;return(0,K.jsxs)(`div`,{className:jt(`group relative w-64 bg-card dark:bg-card rounded border-2 transition-all duration-200`,r.borderColor,t?`ring-2 ring-blue-500 ring-offset-2`:``,s?r.glow:`shadow-sm`),children:[(0,K.jsx)(aj,{type:`target`,position:u,id:`target`,className:`!w-2 !h-2 !rounded-full !border !border-gray-600 dark:!border-gray-500 transition-colors !min-w-0 !min-h-0`,style:{backgroundColor:n.state===`running`?`#643FB2`:n.state===`completed`?`#10b981`:n.state===`failed`?`#ef4444`:n.state===`cancelled`?`#f97316`:`#4b5563`}}),(0,K.jsx)(aj,{type:`source`,position:d,id:`source`,className:`!w-2 !h-2 !rounded-full !border !border-gray-600 dark:!border-gray-500 transition-colors !min-w-0 !min-h-0`,style:{backgroundColor:n.state===`running`?`#643FB2`:n.state===`completed`?`#10b981`:n.state===`failed`?`#ef4444`:n.state===`cancelled`?`#f97316`:`#4b5563`}}),(0,K.jsxs)(`div`,{className:`p-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,K.jsx)(`div`,{className:`flex-shrink-0 relative`,children:(0,K.jsx)(`div`,{className:`w-10 h-10 rounded-lg bg-gray-900/90 dark:bg-gray-800/90 flex items-center justify-center`,children:n.isStartNode?(0,K.jsx)(Zu,{className:`w-5 h-5 text-[#643FB2] dark:text-[#8B5CF6]`}):(0,K.jsx)(mf,{className:`w-5 h-5 text-gray-300 dark:text-gray-400`})})}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,K.jsx)(`h3`,{className:`font-medium text-sm text-gray-900 dark:text-gray-100 truncate`,children:n.name||n.executorId}),s&&(0,K.jsx)(ld,{className:`w-4 h-4 text-[#643FB2] dark:text-[#8B5CF6] ${c?`animate-spin`:``} flex-shrink-0`})]}),n.executorType&&(0,K.jsx)(`p`,{className:`text-xs text-gray-500 dark:text-gray-400 truncate mt-0.5`,children:n.executorType})]})]}),o&&(0,K.jsxs)(`div`,{className:`mt-2 border-t border-border/50 pt-2`,children:[(0,K.jsxs)(`button`,{onClick:e=>{e.stopPropagation(),a(!i)},className:`flex items-center gap-1 text-xs text-muted-foreground hover:text-foreground transition-colors w-full`,children:[i?(0,K.jsx)(su,{className:`w-3 h-3`}):(0,K.jsx)(du,{className:`w-3 h-3`}),(0,K.jsx)(`span`,{children:n.error?`Show error`:`Show output`})]}),i&&(0,K.jsx)(`div`,{className:`mt-2`,children:(()=>{if(n.error&&typeof n.error==`string`){let e=Ib(n.error,200);return(0,K.jsx)(`div`,{className:`text-xs text-red-600 dark:text-red-400 bg-red-50 dark:bg-red-950/20 p-2 rounded border border-red-200 dark:border-red-800 break-words max-h-32 overflow-auto`,children:e})}if(n.outputData)try{let e=typeof n.outputData==`string`?n.outputData:JSON.stringify(n.outputData,null,2);return(0,K.jsx)(`div`,{className:`text-xs text-gray-700 dark:text-gray-300 bg-muted/50 p-2 rounded border max-h-32 overflow-auto`,children:(0,K.jsx)(`pre`,{className:`whitespace-pre-wrap font-mono`,children:e})})}catch{return(0,K.jsx)(`div`,{className:`text-xs text-gray-600 dark:text-gray-400 bg-muted/50 p-2 rounded border`,children:`[Unable to display output]`})}return null})()})]}),s&&(0,K.jsx)(`div`,{className:`absolute inset-0 rounded border-2 border-[#643FB2]/30 dark:border-[#8B5CF6]/30 animate-pulse pointer-events-none`})]})]})});TN.displayName=`ExecutorNode`;var EN=(0,y.memo)(function({id:e,source:t,markerEnd:n,style:r}){let i=VM(t);if(!i)return null;let{width:a,height:o}=i.measured,{x:s,y:c}=i.internals.positionAbsolute;if(!a||!o)return null;let l=i.data?.layoutDirection===`TB`,u;if(l){let e=s+a/2,t=c+o,n=s+a/2,r=c,i=s+a+100;u=`M ${e} ${t} C ${e} ${t+40}, ${i} ${t+40}, ${i} ${c+o/2} C ${i} ${r-40}, ${n} ${r-40}, ${n} ${r}`}else{let e=s+a,t=c+o/2,n=s,r=c+o/2,i=c+o+100;u=`M ${e} ${t} C ${e+40} ${t}, ${e+40} ${i}, ${s+a/2} ${i} C ${n-40} ${i}, ${n-40} ${r}, ${n} ${r}`}return(0,K.jsx)(zj,{id:e,path:u,markerEnd:n,style:r})}),DN={executor:TN},ON={selfLoop:EN};function kN({workflowDump:e,onNodeSelect:t,viewOptions:n,onToggleViewOption:r,layoutDirection:i,onLayoutDirectionChange:a}){let{fitView:o,setViewport:s,setNodes:c}=MA();return(0,K.jsx)(`div`,{className:`absolute top-4 right-4 z-10`,children:(0,K.jsxs)(xf,{children:[(0,K.jsx)(Sf,{asChild:!0,children:(0,K.jsxs)(q,{variant:`outline`,size:`sm`,className:`h-8 w-8 p-0 bg-white/90 backdrop-blur-sm border-gray-200 shadow-sm hover:bg-white dark:bg-gray-800/90 dark:border-gray-600 dark:hover:bg-gray-800`,children:[(0,K.jsx)(zu,{className:`h-4 w-4`}),(0,K.jsx)(`span`,{className:`sr-only`,children:`View options`})]})}),(0,K.jsxs)(Cf,{align:`end`,className:`w-56`,children:[(0,K.jsxs)(wf,{className:`flex items-center justify-between`,onClick:()=>r?.(`showMinimap`),children:[(0,K.jsxs)(`div`,{className:`flex items-center`,children:[(0,K.jsx)(pd,{className:`mr-2 h-4 w-4`}),`Show Minimap`]}),(0,K.jsx)(sh,{checked:n.showMinimap,onChange:()=>{}})]}),(0,K.jsxs)(wf,{className:`flex items-center justify-between`,onClick:()=>r?.(`showGrid`),children:[(0,K.jsxs)(`div`,{className:`flex items-center`,children:[(0,K.jsx)(Yu,{className:`mr-2 h-4 w-4`}),`Show Grid`]}),(0,K.jsx)(sh,{checked:n.showGrid,onChange:()=>{}})]}),(0,K.jsxs)(wf,{className:`flex items-center justify-between`,onClick:()=>r?.(`animateRun`),children:[(0,K.jsxs)(`div`,{className:`flex items-center`,children:[(0,K.jsx)(bf,{className:`mr-2 h-4 w-4`}),`Animate Run`]}),(0,K.jsx)(sh,{checked:n.animateRun,onChange:()=>{}})]}),(0,K.jsxs)(wf,{className:`flex items-center justify-between`,onClick:()=>r?.(`consolidateBidirectionalEdges`),children:[(0,K.jsxs)(`div`,{className:`flex items-center`,children:[(0,K.jsx)(ql,{className:`mr-2 h-4 w-4`}),`Merge Bidirectional Edges`]}),(0,K.jsx)(sh,{checked:n.consolidateBidirectionalEdges,onChange:()=>{}})]}),(0,K.jsx)(Ef,{}),(0,K.jsxs)(wf,{className:`flex items-center justify-between`,onClick:()=>{let n=i===`LR`?`TB`:`LR`;if(a?.(n),e){let r=Vb(Lb(e,t,n),Rb(e),n);c(r)}},children:[(0,K.jsxs)(`div`,{className:`flex items-center`,children:[(0,K.jsx)(Gl,{className:`mr-2 h-4 w-4`}),`Vertical Layout`]}),(0,K.jsx)(sh,{checked:i===`TB`,onChange:()=>{}})]}),(0,K.jsx)(Ef,{}),(0,K.jsxs)(wf,{onClick:()=>{s({x:0,y:0,zoom:1})},children:[(0,K.jsx)(Vd,{className:`mr-2 h-4 w-4`}),`Reset Zoom`]}),(0,K.jsxs)(wf,{onClick:()=>{o({padding:.2})},children:[(0,K.jsx)(hd,{className:`mr-2 h-4 w-4`}),`Fit to Screen`]}),(0,K.jsxs)(wf,{onClick:()=>{if(!e)return;let n=Vb(Lb(e,t,i),Rb(e),i);c(n)},children:[(0,K.jsx)($d,{className:`mr-2 h-4 w-4`}),`Auto-arrange`]})]})]})})}function AN({nodes:e,nodeUpdates:t,isStreaming:n,animateRun:r}){let{fitView:i}=MA();return(0,y.useEffect)(()=>{if(r){if(n){let t=e.filter(e=>e.data.state===`running`);if(t.length>0){let e=t[0];i({nodes:[e],duration:800,padding:.3,minZoom:.8,maxZoom:1.5})}}else e.length>0&&i({duration:1e3,padding:.2})}},[t,n,r,e]),null}var jN=(0,y.memo)(({timelineVisible:e})=>{let{fitView:t}=MA();return(0,y.useEffect)(()=>{let e=setTimeout(()=>{t({padding:.2,duration:300})},350);return()=>clearTimeout(e)},[e]),null}),MN=(0,y.memo)(function({workflowDump:e,events:t,isStreaming:n,onNodeSelect:r,className:i=``,viewOptions:a={showMinimap:!1,showGrid:!0,animateRun:!0,consolidateBidirectionalEdges:!0},onToggleViewOption:o,layoutDirection:s=`TB`,onLayoutDirectionChange:c,timelineVisible:l=!1}){let{initialNodes:u,initialEdges:d}=(0,y.useMemo)(()=>{if(!e)return{initialNodes:[],initialEdges:[]};let t=Lb(e,r,s),n=Rb(e),i=a.consolidateBidirectionalEdges?Kb(n):n;return{initialNodes:t.length>0?Vb(t,i,s):t,initialEdges:i}},[e,r,s,a.consolidateBidirectionalEdges]),[f,p,m]=zM(u),[h,g,_]=BM(d),v=(0,y.useMemo)(()=>Hb(t,e?.start_executor_id),[t,e?.start_executor_id]);(0,y.useMemo)(()=>{Object.keys(v).length>0?p(e=>Ub(e,v,n)):t.length===0&&p(e=>e.map(e=>({...e,data:{...e.data,state:`pending`,outputData:void 0,error:void 0,isStreaming:!1}})))},[v,p,t.length,n]),(0,y.useMemo)(()=>{t.length>0?g(e=>{let n=Gb(e,t);return a.consolidateBidirectionalEdges?Kb(n):n}):g(e=>{let t=e.map(e=>({...e,animated:!1,style:{stroke:`#6b7280`,strokeWidth:2}}));return a.consolidateBidirectionalEdges?Kb(t):t})},[t,g,a.consolidateBidirectionalEdges]),(0,y.useEffect)(()=>{u.length>0&&(p(u),g(d))},[e,a.consolidateBidirectionalEdges]);let b=(0,y.useCallback)((e,t)=>{e.stopPropagation(),r?.(t.data.executorId,t.data)},[r]);return e?u.length===0?(0,K.jsx)(`div`,{className:`flex items-center justify-center h-full bg-gray-50 dark:bg-gray-900 rounded border border-gray-200 dark:border-gray-700 ${i}`,children:(0,K.jsxs)(`div`,{className:`text-center text-gray-500 dark:text-gray-400`,children:[(0,K.jsx)(`div`,{className:`text-lg font-medium mb-2`,children:`No Executors Found`}),(0,K.jsx)(`div`,{className:`text-sm`,children:`Could not extract executors from workflow dump.`}),(0,K.jsxs)(`details`,{className:`mt-2 text-xs`,children:[(0,K.jsx)(`summary`,{className:`cursor-pointer`,children:`Debug Info`}),(0,K.jsx)(`pre`,{className:`mt-1 p-2 bg-gray-100 dark:bg-gray-800 rounded text-left overflow-auto`,children:JSON.stringify(e,null,2)})]})]})}):(0,K.jsxs)(`div`,{className:`h-full w-full ${i}`,children:[(0,K.jsxs)(RM,{nodes:f,edges:h,onNodesChange:m,onEdgesChange:_,onNodeClick:b,nodeTypes:DN,edgeTypes:ON,fitView:!0,fitViewOptions:{padding:.2},minZoom:.1,maxZoom:1.5,defaultEdgeOptions:{type:`default`,animated:!1,style:{stroke:`#6b7280`,strokeWidth:2}},nodesDraggable:!n,nodesConnectable:!1,elementsSelectable:!0,proOptions:{hideAttribution:!0},children:[a.showGrid&&(0,K.jsx)(JM,{variant:WM.Dots,gap:20,size:1,color:`#e5e7eb`,className:`dark:opacity-30`}),(0,K.jsx)(rN,{position:`bottom-left`,showInteractive:!1,style:{backgroundColor:`rgba(255, 255, 255, 0.9)`,border:`1px solid #e5e7eb`,borderRadius:`3px`},className:`dark:!bg-gray-800/90 dark:!border-gray-600`}),a.showMinimap&&(0,K.jsx)(bN,{nodeColor:e=>{switch(e.data?.state){case`running`:return`#643FB2`;case`completed`:return`#10b981`;case`failed`:return`#ef4444`;case`cancelled`:return`#f97316`;default:return`#6b7280`}},maskColor:`rgba(0, 0, 0, 0.1)`,position:`bottom-right`,style:{backgroundColor:`rgba(255, 255, 255, 0.9)`,border:`1px solid #e5e7eb`,borderRadius:`8px`},className:`dark:!bg-gray-800/90 dark:!border-gray-600`}),(0,K.jsx)(AN,{nodes:f,nodeUpdates:v,isStreaming:n,animateRun:a.animateRun}),(0,K.jsx)(jN,{timelineVisible:l}),(0,K.jsx)(kN,{workflowDump:e,onNodeSelect:r,viewOptions:a,onToggleViewOption:o,layoutDirection:s,onLayoutDirectionChange:c})]}),(0,K.jsx)(`style`,{children:` .react-flow__edge-path { transition: stroke 0.3s ease, stroke-width 0.3s ease; } @@ -182,12 +182,12 @@ asyncio.run(main())`})]})]}),(0,K.jsxs)(`div`,{className:`flex gap-2 pt-4 border .dark .react-flow__controls-button:hover svg { fill: rgb(255, 255, 255) !important; } - `})]}):(0,K.jsx)(`div`,{className:`flex items-center justify-center h-full bg-gray-50 dark:bg-gray-900 rounded border border-gray-200 dark:border-gray-700 ${i}`,children:(0,K.jsxs)(`div`,{className:`text-center text-gray-500 dark:text-gray-400`,children:[(0,K.jsx)(`div`,{className:`text-lg font-medium mb-2`,children:`No Workflow Data`}),(0,K.jsx)(`div`,{className:`text-sm`,children:`Workflow dump is not available.`})]})})});function sN({title:e,icon:t,children:n,className:r=``}){return(0,K.jsxs)(`div`,{className:`border rounded-lg p-4 bg-card ${r}`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 mb-3`,children:[t,(0,K.jsx)(`h3`,{className:`text-sm font-semibold text-foreground`,children:e})]}),(0,K.jsx)(`div`,{className:`text-sm text-muted-foreground`,children:n})]})}function cN({workflow:e,open:t,onOpenChange:n}){let r=e.source===`directory`?(0,K.jsx)(Gu,{className:`h-4 w-4 text-muted-foreground`}):e.source===`in_memory`?(0,K.jsx)(Fu,{className:`h-4 w-4 text-muted-foreground`}):(0,K.jsx)(qu,{className:`h-4 w-4 text-muted-foreground`}),i=e.source===`directory`?`Local`:e.source===`in_memory`?`In-Memory`:`Gallery`;return(0,K.jsx)(Og,{open:t,onOpenChange:n,children:(0,K.jsxs)(kg,{className:`max-w-4xl max-h-[90vh] flex flex-col`,children:[(0,K.jsxs)(Ag,{className:`px-6 pt-6 flex-shrink-0`,children:[(0,K.jsx)(jg,{children:`Workflow Details`}),(0,K.jsx)(Ng,{onClose:()=>n(!1)})]}),(0,K.jsxs)(`div`,{className:`px-6 pb-6 overflow-y-auto flex-1`,children:[(0,K.jsxs)(`div`,{className:`mb-6`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-3 mb-2`,children:[(0,K.jsx)(uf,{className:`h-6 w-6 text-primary`}),(0,K.jsx)(`h2`,{className:`text-xl font-semibold text-foreground`,children:e.name||e.id})]}),e.description&&(0,K.jsx)(`p`,{className:`text-muted-foreground`,children:e.description})]}),(0,K.jsx)(`div`,{className:`h-px bg-border mb-6`}),(0,K.jsxs)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 gap-4 mb-4`,children:[(0,K.jsx)(sN,{title:`Start Executor`,icon:(0,K.jsx)(xu,{className:`h-4 w-4 text-muted-foreground`}),children:(0,K.jsx)(`div`,{className:`font-mono text-foreground`,children:e.start_executor_id})}),(0,K.jsx)(sN,{title:`Source`,icon:r,children:(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(`div`,{className:`text-foreground`,children:i}),e.module_path&&(0,K.jsx)(`div`,{className:`font-mono text-xs break-all`,children:e.module_path})]})}),(0,K.jsx)(sN,{title:`Environment`,icon:e.has_env?(0,K.jsx)(Cu,{className:`h-4 w-4 text-orange-500`}):(0,K.jsx)(_u,{className:`h-4 w-4 text-green-500`}),className:`md:col-span-2`,children:(0,K.jsx)(`div`,{className:e.has_env?`text-orange-600 dark:text-orange-400`:`text-green-600 dark:text-green-400`,children:e.has_env?`Requires environment variables`:`No environment variables required`})})]}),(0,K.jsx)(sN,{title:`Executors (${e.executors.length})`,icon:(0,K.jsx)(Cd,{className:`h-4 w-4 text-muted-foreground`}),children:e.executors.length>0?(0,K.jsx)(`div`,{className:`grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-2`,children:e.executors.map((e,t)=>(0,K.jsx)(`div`,{className:`font-mono text-xs text-foreground bg-muted px-2 py-1 rounded truncate`,title:e,children:e},t))}):(0,K.jsx)(`div`,{className:`text-muted-foreground`,children:`No executors configured`})})]})]})})}function lN({session:e,checkpoints:t,open:n,onOpenChange:r}){let[i,a]=(0,y.useState)(null),[o,s]=(0,y.useState)(null),[c,l]=(0,y.useState)(!1),[u,d]=(0,y.useState)(!0);if((0,y.useEffect)(()=>{n&&t.length>0&&(t.some(e=>e.checkpoint_id===i)||a(t[0].checkpoint_id))},[n,t]),(0,y.useEffect)(()=>{i&&e&&(async()=>{l(!0);try{let t=await R_.getConversationItem(e.conversation_id,`checkpoint_${i}`);s(t.metadata?.full_checkpoint??null)}catch(e){console.error(`Failed to load checkpoint:`,e),s(null)}finally{l(!1)}})()},[i,e]),!e)return null;let f=t.find(e=>e.checkpoint_id===i),p=o?.state?._executor_state?Object.keys(o.state._executor_state):[],m=o?.messages?Object.keys(o.messages):[],h=e=>{if(!e)return``;let t=e/1024;return t<1?`${e} B`:t<1024?`${t.toFixed(1)} KB`:`${(t/1024).toFixed(1)} MB`};return(0,K.jsx)(Og,{open:n,onOpenChange:r,children:(0,K.jsxs)(kg,{className:`w-[90vw] max-w-6xl min-w-[800px] h-[85vh] flex flex-col p-0`,children:[(0,K.jsx)(Ag,{className:`px-6 pt-6 pb-4 border-b flex-shrink-0`,children:(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`div`,{className:`flex-1`,children:[(0,K.jsx)(jg,{children:e.metadata.name}),(0,K.jsxs)(`div`,{className:`text-sm text-muted-foreground mt-1`,children:[t.length,` checkpoint`,t.length===1?``:`s`]}),(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground mt-2 max-w-2xl`,children:`This is a read only view of the current checkpoint ids in the checkpoint storage for this workflow run.`})]}),(0,K.jsx)(Ng,{onClose:()=>r(!1)})]})}),(0,K.jsxs)(`div`,{className:`flex-1 flex overflow-hidden min-h-0`,children:[(0,K.jsx)(`div`,{className:`w-80 border-r flex flex-col`,children:(0,K.jsx)(mm,{className:`flex-1`,children:(0,K.jsx)(`div`,{className:`p-4 space-y-2`,children:t.length===0?(0,K.jsx)(`div`,{className:`text-center text-sm text-muted-foreground py-8`,children:`No checkpoints yet`}):t.map((e,n)=>{let r=e.checkpoint_id===i,o=e.metadata.has_pending_hil;return(0,K.jsxs)(`div`,{className:`relative`,children:[(0,K.jsx)(`button`,{onClick:()=>a(e.checkpoint_id),className:jt(`relative w-full text-left p-3 rounded-lg border transition-colors`,r?`bg-primary/10 border-primary`:`hover:bg-muted/50 border-transparent`),children:(0,K.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,K.jsx)(`div`,{className:`flex flex-col items-center pt-1`,children:(0,K.jsx)(`div`,{className:jt(`w-2 h-2 rounded-full z-10`,o?`bg-blue-500 ring-2 ring-blue-500/20`:`bg-muted-foreground/30`)})}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`text-sm font-medium`,children:e.metadata.iteration_count===0?`Initial State`:`Step ${e.metadata.iteration_count}`}),(0,K.jsx)(`span`,{className:`text-[10px] font-mono text-muted-foreground/70`,title:e.checkpoint_id,children:e.checkpoint_id.slice(0,8)}),n===0&&(0,K.jsx)(Ft,{variant:`secondary`,className:`text-[10px] h-4 px-1`,children:`Latest`}),o&&(0,K.jsxs)(Ft,{variant:`secondary`,className:`text-[10px] h-4 px-1.5`,children:[e.metadata.pending_hil_count,` HIL`]})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-3 text-xs text-muted-foreground mt-1`,children:[(0,K.jsx)(`span`,{children:new Date(e.timestamp).toLocaleTimeString()}),e.metadata.size_bytes&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`span`,{children:`•`}),(0,K.jsx)(`span`,{children:h(e.metadata.size_bytes)})]})]})]})]})}),n0&&(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`div`,{className:`text-sm font-medium mb-3 flex items-center gap-2`,children:[(0,K.jsx)(Cd,{className:`h-4 w-4`}),`Active Executors (`,p.length,`)`]}),(0,K.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:p.map(e=>(0,K.jsx)(Ft,{variant:`outline`,className:`font-mono text-xs`,children:e},e))})]}),m.length>0&&o&&(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`div`,{className:`text-sm font-medium mb-3 flex items-center gap-2`,children:[(0,K.jsx)(_d,{className:`h-4 w-4`}),`Messages`]}),(0,K.jsx)(`div`,{className:`grid grid-cols-2 gap-3`,children:m.map(e=>{let t=o.messages[e]?.length;return(0,K.jsxs)(`div`,{className:`bg-muted/50 p-3 rounded-lg`,children:[(0,K.jsx)(`div`,{className:`text-xs font-mono text-muted-foreground mb-1`,children:e}),(0,K.jsxs)(`div`,{className:`font-medium`,children:[t,` message`,t===1?``:`s`]})]},e)})})]}),o?.pending_request_info_events&&Object.keys(o.pending_request_info_events).length>0&&(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`div`,{className:`text-sm font-medium mb-3 flex items-center gap-2`,children:[(0,K.jsx)(hu,{className:`h-4 w-4`}),`Pending HIL Requests (`,Object.keys(o.pending_request_info_events).length,`)`]}),(0,K.jsx)(`div`,{className:`space-y-2`,children:Object.entries(o.pending_request_info_events).map(([e,t])=>(0,K.jsxs)(`div`,{className:`bg-muted/50 border border-border p-3 rounded-lg`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between mb-2`,children:[(0,K.jsxs)(`code`,{className:`text-xs bg-background px-2 py-1 rounded`,children:[e.slice(0,24),`...`]}),(0,K.jsx)(Ft,{variant:`outline`,className:`text-xs`,children:t.source_executor_id})]}),(0,K.jsxs)(`div`,{className:`text-xs space-y-1`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Request:`}),` `,(0,K.jsx)(`code`,{className:`bg-background px-1 py-0.5 rounded`,children:t.request_type?.split(`.`).pop()||t.request_type})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Response:`}),` `,(0,K.jsx)(`code`,{className:`bg-background px-1 py-0.5 rounded`,children:t.response_type?.split(`.`).pop()||t.response_type})]})]})]},e))})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`div`,{className:`text-sm font-medium mb-3`,children:`Workflow State`}),o?.state&&Object.keys(o.state).filter(e=>e!==`_executor_state`).length>0?(0,K.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:Object.keys(o.state).filter(e=>e!==`_executor_state`).map(e=>(0,K.jsx)(Ft,{variant:`secondary`,className:`font-mono text-xs`,children:e},e))}):(0,K.jsx)(`div`,{className:`text-sm text-muted-foreground`,children:`No custom state`})]}),(0,K.jsxs)(`div`,{className:`border-t pt-6`,children:[(0,K.jsxs)(`button`,{onClick:()=>d(!u),className:`flex items-center gap-2 text-sm font-medium hover:text-primary transition-colors w-full`,children:[u?(0,K.jsx)(su,{className:`h-4 w-4`}):(0,K.jsx)(du,{className:`h-4 w-4`}),`Raw JSON`]}),u&&(0,K.jsx)(`pre`,{className:`mt-3 text-[10px] font-mono bg-muted p-4 rounded overflow-x-auto`,children:JSON.stringify(o,null,2)})]})]})})})]})]})})}function uN({request:e,response:t,onResponseChange:n,onSubmit:r,isSubmitting:i}){let[a,o]=(0,y.useState)(!0),s=e=>{n(e)},c=rb(e.request_schema,t);return(0,K.jsx)(`div`,{className:`relative group`,children:(0,K.jsx)(`div`,{children:(0,K.jsx)(`div`,{className:`flex-1`,children:(0,K.jsxs)(`div`,{className:`border border-orange-200 dark:border-orange-800 bg-orange-50/50 dark:bg-orange-950/20 overflow-hidden rounded-lg`,children:[(0,K.jsxs)(`div`,{className:`px-4 py-3 bg-orange-100/50 dark:bg-orange-950/30 border-b border-orange-200 dark:border-orange-800 flex items-center justify-between cursor-pointer hover:bg-orange-100 dark:hover:bg-orange-950/40 transition-colors`,onClick:()=>o(!a),children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`font-medium text-sm text-orange-900 dark:text-orange-100`,children:`Workflow needs your input`}),(0,K.jsx)(Ft,{variant:`outline`,className:`text-xs font-mono border-orange-300 dark:border-orange-700 text-orange-700 dark:text-orange-300`,children:e.request_id.slice(0,8)}),!a&&(0,K.jsx)(`span`,{className:`text-xs text-orange-600 dark:text-orange-400 animate-pulse`,children:`Click to respond`})]}),i&&(0,K.jsx)(Ft,{variant:`secondary`,className:`animate-pulse`,children:`Submitting...`})]}),a&&(0,K.jsxs)(`div`,{className:`p-4 space-y-4`,children:[Object.keys(e.request_data).length>0&&(0,K.jsxs)(`div`,{className:`bg-white/60 dark:bg-gray-900/30 rounded-md p-3 space-y-2`,children:[(0,K.jsx)(`p`,{className:`text-xs font-medium text-muted-foreground uppercase tracking-wider`,children:`Context`}),(0,K.jsx)(`div`,{className:`max-h-48 overflow-y-auto space-y-1 pr-2`,children:Object.entries(e.request_data).filter(([e])=>![`request_id`,`source_executor_id`].includes(e)).map(([e,t])=>(0,K.jsxs)(`div`,{className:`text-sm`,children:[(0,K.jsxs)(`span`,{className:`font-medium text-muted-foreground`,children:[e,`:`]}),` `,(0,K.jsx)(`span`,{className:`text-foreground break-all`,children:typeof t==`object`?JSON.stringify(t,null,2):String(t)})]},e))})]}),e.request_schema?.description&&(0,K.jsxs)(`div`,{className:`text-sm text-muted-foreground bg-blue-50 dark:bg-blue-950/20 p-3 rounded-md border border-blue-200 dark:border-blue-800`,children:[(0,K.jsx)(`p`,{className:`font-medium text-blue-900 dark:text-blue-100 mb-1`,children:`What's needed:`}),(0,K.jsx)(`p`,{className:`text-blue-800 dark:text-blue-200`,children:e.request_schema.description})]}),(0,K.jsx)(`div`,{className:`space-y-3`,children:(0,K.jsx)(nb,{schema:e.request_schema,values:t,onChange:s})}),(0,K.jsxs)(`div`,{className:`space-y-2 pt-2`,children:[(0,K.jsxs)(q,{size:`default`,onClick:r,disabled:!c||i,className:`w-full gap-2`,children:[(0,K.jsx)(Ud,{className:`w-4 h-4`}),`Submit Response`]}),!c&&(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground text-center`,children:`Please fill in all required fields`})]})]})]})})})})}function dN(e,t=!0){switch(e){case`running`:return(0,K.jsx)(ld,{className:`w-4 h-4 text-[#643FB2] dark:text-[#8B5CF6] ${t?`animate-spin`:``}`});case`completed`:return(0,K.jsx)(_u,{className:`w-4 h-4 text-green-500 dark:text-green-400`});case`failed`:return(0,K.jsx)(Cu,{className:`w-4 h-4 text-red-500 dark:text-red-400`});case`cancelled`:return(0,K.jsx)(hu,{className:`w-4 h-4 text-orange-500 dark:text-orange-400`});default:return(0,K.jsx)(`div`,{className:`w-4 h-4 rounded-full border-2 border-gray-400 dark:border-gray-500`})}}function fN(e){switch(e){case`running`:return`bg-[#643FB2]/10 text-[#643FB2] dark:bg-[#8B5CF6]/10 dark:text-[#8B5CF6] border-[#643FB2]/20 dark:border-[#8B5CF6]/20`;case`completed`:return`bg-green-500/10 text-green-600 dark:text-green-400 border-green-500/20`;case`failed`:return`bg-red-500/10 text-red-600 dark:text-red-400 border-red-500/20`;case`cancelled`:return`bg-orange-500/10 text-orange-600 dark:text-orange-400 border-orange-500/20`;default:return`bg-gray-500/10 text-gray-600 dark:text-gray-400 border-gray-500/20`}}function pN(e){return e.content?.map(e=>e.type===`output_text`?e.text:e.type===`refusal`?e.refusal:void 0).filter(e=>!!e).join(` -`)??``}function mN({run:e,isExpanded:t,onToggle:n,onClick:r,isSelected:i,isStreaming:a}){let o=new Date(e.timestamp).toLocaleTimeString(),s=e.output.trim().length>0||e.error,c=(0,y.useRef)(null);return(0,y.useEffect)(()=>{t&&e.state===`running`&&c.current&&(c.current.scrollTop=c.current.scrollHeight)},[e.output,t,e.state]),(0,K.jsxs)(`div`,{className:`border rounded-lg transition-all ${i?`border-blue-500 dark:border-blue-400 bg-blue-500/5 dark:bg-blue-500/10`:`border-border hover:border-muted-foreground/30`}`,children:[(0,K.jsxs)(`div`,{className:`p-3 cursor-pointer`,onClick:()=>{r(),s&&n()},children:[(0,K.jsxs)(`div`,{className:`grid grid-cols-[auto_auto_1fr_auto] items-center gap-2 mb-1`,children:[(0,K.jsx)(`div`,{className:`w-3 text-muted-foreground`,children:s&&(0,K.jsx)(K.Fragment,{children:t?(0,K.jsx)(su,{className:`w-3 h-3`}):(0,K.jsx)(du,{className:`w-3 h-3`})})}),(0,K.jsx)(`div`,{children:dN(e.state,a)}),(0,K.jsx)(`span`,{className:`font-medium text-sm truncate overflow-hidden`,children:e.executorName}),e.runNumber>1?(0,K.jsxs)(Ft,{variant:`outline`,className:`text-xs whitespace-nowrap`,children:[`Run #`,e.runNumber]}):(0,K.jsx)(`div`,{})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-muted-foreground ml-5`,children:[(0,K.jsx)(`span`,{className:`font-mono`,children:o}),(0,K.jsx)(Ft,{variant:`outline`,className:`text-xs border ${fN(e.state)}`,children:e.state})]})]}),t&&s&&(0,K.jsx)(`div`,{className:`border-t px-3 py-2 bg-muted/30`,children:e.error?(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(`div`,{className:`text-xs font-medium text-red-600 dark:text-red-400`,children:`Error:`}),(0,K.jsx)(`pre`,{className:`text-xs bg-red-50 dark:bg-red-950/20 border border-red-200 dark:border-red-800 rounded p-2 overflow-y-auto overflow-x-hidden max-h-40 whitespace-pre-wrap break-all`,children:e.error})]}):(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(`div`,{className:`text-xs font-medium text-muted-foreground`,children:`Output:`}),(0,K.jsx)(`pre`,{ref:c,className:`text-xs bg-background border rounded p-2 overflow-y-auto overflow-x-hidden max-h-60 whitespace-pre-wrap break-all`,children:e.output})]})})]})}function hN({events:e,itemOutputs:t,currentExecutorId:n,isStreaming:r,onExecutorClick:i,selectedExecutorId:a,workflowResult:o,pendingHilRequests:s=[],hilResponses:c={},onHilResponseChange:l,onHilSubmit:u,isSubmittingHil:d=!1,inputSchema:f,onRun:p,onCancel:m,isCancelling:h=!1,workflowState:g=`ready`,wasCancelled:_=!1,checkpoints:v=[]}){let[b,x]=(0,y.useState)(new Set),[S,C]=(0,y.useState)(0),[w,T]=(0,y.useState)(!1),E=(0,y.useRef)(null),D=(0,y.useRef)(null),O=(0,y.useRef)(null);(0,y.useEffect)(()=>{if(r){let e=setInterval(()=>{C(e=>e+1)},100);return()=>clearInterval(e)}},[r]);let{executorRuns:k,executorRunCount:A}=(0,y.useMemo)(()=>{let n=[],r=new Map;return e.forEach(e=>{let i=`_uiTimestamp`in e&&typeof e._uiTimestamp==`number`?e._uiTimestamp*1e3:Date.now();if(e.type===`response.output_item.added`){let a=e.item;if(a&&a.type===`executor_action`&&`executor_id`in a&&a.id){let e=String(a.executor_id),o=a.id,s=(r.get(e)||0)+1;r.set(e,s),n.push({executorId:e,executorName:ub(e,35),itemId:o,state:`running`,output:t[o]||``,timestamp:i,runNumber:s})}else if(a&&a.type===`message`&&`metadata`in a&&a.id){let e=a.metadata;if(e?.agent_id&&e?.source===`magentic`){let o=e.agent_id,s=a.id,c=(r.get(o)||0)+1;r.set(o,c),n.push({executorId:o,executorName:ub(o,35),itemId:s,state:`running`,output:t[s]||``,timestamp:i,runNumber:c})}else if(e?.executor_id&&e.workflow_output_kind===`intermediate`){let o=e.executor_id,s=a.id,c=(r.get(o)||0)+1;r.set(o,c),n.push({executorId:o,executorName:ub(o,35),itemId:s,state:a.status===`completed`?`completed`:`running`,output:t[s]||pN(a),timestamp:i,runNumber:c})}}}if(e.type===`response.output_item.done`){let r=e.item;if(r&&r.type===`executor_action`&&`executor_id`in r&&r.id){let e=r.id,i=n.find(t=>t.itemId===e);i&&(i.state=r.status===`completed`?`completed`:r.status===`failed`?`failed`:`completed`,i.output=t[e]||``,r.status===`failed`&&`error`in r&&r.error&&(i.error=String(r.error)))}else if(r&&r.type===`message`&&`metadata`in r&&r.id){let e=r.metadata;if(e?.agent_id&&e?.source===`magentic`){let e=r.id,i=n.find(t=>t.itemId===e);i&&(i.state=r.status===`completed`?`completed`:`failed`,i.output=t[e]||``)}else if(e?.executor_id&&e.workflow_output_kind===`intermediate`){let e=r.id,i=n.find(t=>t.itemId===e);i&&(i.state=r.status===`completed`?`completed`:`failed`,i.output=t[e]||pN(r))}}}if(e.type===`response.workflow_event.completed`&&`data`in e&&e.data){let a=e.data,o=a.executor_id;if(!o)return;let s=a.event_type;if(s===`ExecutorInvokedEvent`){let e=(r.get(o)||0)+1;r.set(o,e);let a=`fallback_${o}_run${e}`;n.push({executorId:o,executorName:ub(o,35),itemId:a,state:`running`,output:t[a]||``,timestamp:i,runNumber:e})}else if(s===`ExecutorCompletedEvent`){let e;for(let t=n.length-1;t>=0;t--)if(n[t].executorId===o&&n[t].state===`running`){e=n[t];break}e&&(e.state=`completed`,e.output=t[e.itemId]||``)}else if(s?.includes(`Error`)||s?.includes(`Failed`)){let e;for(let t=n.length-1;t>=0;t--)if(n[t].executorId===o&&n[t].state===`running`){e=n[t];break}e&&(e.state=`failed`,e.error=typeof a.data==`string`?a.data:`Execution failed`)}}}),n.forEach(e=>{e.state===`running`&&t[e.itemId]&&(e.output=t[e.itemId])}),{executorRuns:n,executorRunCount:r}},[e,t,S]);return(0,y.useEffect)(()=>{n&&x(e=>{let t=new Set(e);return t.add(`${n}-${A.get(n)||1}`),t})},[n,A]),(0,y.useEffect)(()=>{if(k.length>0&&r){let e=k[k.length-1],t=`${e.executorId}-${e.runNumber}`;t!==E.current&&(E.current=t,D.current&&D.current.scrollIntoView({behavior:`smooth`,block:`end`}))}},[k,r]),(0,y.useEffect)(()=>{o&&!r&&D.current&&setTimeout(()=>{D.current?.scrollIntoView({behavior:`smooth`,block:`end`})},100)},[o,r]),(0,y.useEffect)(()=>{!r&&k.length>0&&s.length===0&&setTimeout(()=>{D.current?.scrollIntoView({behavior:`smooth`,block:`end`})},100)},[r,s.length,k.length]),(0,y.useEffect)(()=>{s.length>0&&O.current&&setTimeout(()=>{O.current?.scrollIntoView({behavior:`smooth`,block:`end`}),O.current?.classList.add(`highlight-attention`),setTimeout(()=>{O.current?.classList.remove(`highlight-attention`)},1e3)},100)},[s.length]),(0,K.jsxs)(`div`,{className:`h-full flex flex-col border-l bg-muted/30`,children:[(0,K.jsxs)(`div`,{className:`p-3 border-b bg-background flex items-center justify-between flex-shrink-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`font-medium text-sm`,children:`Execution Timeline`}),(0,K.jsx)(Ft,{variant:`outline`,className:`text-xs`,children:k.length}),r&&(0,K.jsxs)(`div`,{className:`flex items-center gap-1 text-xs text-muted-foreground`,children:[(0,K.jsx)(`div`,{className:`h-2 w-2 animate-pulse rounded-full bg-[#643FB2] dark:bg-[#8B5CF6]`}),(0,K.jsx)(`span`,{children:`Running`})]})]}),k.length>0&&(0,K.jsx)(q,{variant:`ghost`,size:`sm`,onClick:()=>{let e=k.map(e=>`${`[${new Date(e.timestamp).toLocaleTimeString()}] ${e.executorName} (${e.state})`}\n${e.error||e.output||`(no output)`}\n`).join(` -`);navigator.clipboard.writeText(e),T(!0),setTimeout(()=>T(!1),2e3)},className:`h-7 px-2 text-xs ${w?`text-green-600 dark:text-green-400`:``}`,children:w?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(ru,{className:`w-3 h-3 mr-1`}),`Copied!`]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(Nu,{className:`w-3 h-3 mr-1`}),`Copy All`]})})]}),(0,K.jsx)(mm,{className:`flex-1`,children:(0,K.jsxs)(`div`,{className:`p-3 space-y-2`,children:[k.length===0?(0,K.jsx)(`div`,{className:`text-center text-muted-foreground text-sm py-8`,children:r?`Workflow is running...`:`Ready to run workflow`}):(0,K.jsxs)(K.Fragment,{children:[k.map((e,t)=>{let n=`${e.executorId}-${e.runNumber}`;return(0,K.jsx)(mN,{run:e,isExpanded:b.has(n),onToggle:()=>{x(e=>{let t=new Set(e);return t.has(n)?t.delete(n):t.add(n),t})},onClick:()=>i?.(e.executorId),isSelected:a===e.executorId,isStreaming:r},`${n}-${t}`)}),s.length>0&&(0,K.jsx)(`div`,{ref:O,"data-hil-form":!0,className:`transition-all duration-300`,children:s.map(e=>(0,K.jsx)(uN,{request:e,response:c[e.request_id]||{},onResponseChange:t=>l?.(e.request_id,t),onSubmit:()=>u?.(),isSubmitting:d},e.request_id))})]}),o&&o.trim().length>0&&!r&&!_&&(0,K.jsxs)(`div`,{className:`border rounded-lg border-green-500/40 bg-green-500/5 dark:bg-green-500/10`,children:[(0,K.jsx)(`div`,{className:`p-3 bg-green-500/10 border-b border-green-500/20`,children:(0,K.jsxs)(`div`,{className:`flex items-center gap-2 mb-1`,children:[(0,K.jsx)(_u,{className:`w-4 h-4 text-green-500 dark:text-green-400`}),(0,K.jsx)(`span`,{className:`font-medium text-sm`,children:`Workflow Complete`})]})}),(0,K.jsx)(`div`,{className:`border-t px-3 py-2 bg-muted/30`,children:(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(`div`,{className:`text-xs font-medium text-muted-foreground`,children:`Final Output:`}),(0,K.jsx)(`pre`,{className:`text-xs bg-background border rounded p-2 overflow-y-auto overflow-x-hidden max-h-60 whitespace-pre-wrap break-all`,children:o})]})})]}),_&&!r&&(0,K.jsx)(`div`,{className:`border rounded-lg border-orange-500/40 bg-orange-500/5 dark:bg-orange-500/10`,children:(0,K.jsxs)(`div`,{className:`px-4 py-3 flex items-center gap-2`,children:[(0,K.jsx)(Zd,{className:`w-4 h-4 text-orange-500 dark:text-orange-400 fill-current`}),(0,K.jsx)(`span`,{className:`font-medium text-sm text-orange-700 dark:text-orange-300`,children:`Execution stopped by user`})]})}),(0,K.jsx)(`div`,{ref:D})]})}),(p||m)&&s.length===0&&(0,K.jsx)(`div`,{className:`border-t p-3 bg-background flex-shrink-0`,children:f&&lb(f)?(0,K.jsx)(lv,{onSubmit:async e=>{p?.([{type:`message`,role:`user`,content:e}])},isSubmitting:g===`running`,isStreaming:g===`running`,onCancel:m,isCancelling:h,placeholder:`Message workflow...`,showFileUpload:!0,entityName:`workflow`}):(0,K.jsx)(xb,{inputSchema:f,onRun:p||(()=>{}),onCancel:m,isSubmitting:g===`running`,isCancelling:h,workflowState:g,checkpoints:v,showCheckpoints:!1})})]})}gp();function gN(e){if(`created_at`in e&&typeof e.created_at==`number`&&e.created_at)return e.created_at;let t=`response`in e?e.response:void 0;if(t&&typeof t==`object`&&`created_at`in t){let e=t.created_at;if(typeof e==`number`)return e}let n=`data`in e?e.data:void 0;if(n&&typeof n==`object`&&`timestamp`in n&&typeof n.timestamp==`string`){let e=new Date(n.timestamp).getTime();return Number.isFinite(e)?e/1e3:void 0}}function _N({selectedWorkflow:e,onDebugEvent:t}){let[n,r]=(0,y.useState)(null),[i,a]=(0,y.useState)(!1),[o,s]=(0,y.useState)(null),[c,l]=(0,y.useState)([]),[u,d]=(0,y.useState)(!1),[f,p]=(0,y.useState)(!1),[m,h]=(0,y.useState)(null),[g,_]=(0,y.useState)(!1),[v,b]=(0,y.useState)(!1),[x,S]=(0,y.useState)(!1),[C,w]=(0,y.useState)(!1),[T,E]=(0,y.useState)(``),[D,O]=(0,y.useState)([]),{isCancelling:k,createAbortSignal:A,handleCancel:j,resetCancelling:M}=y_(),[N,P]=(0,y.useState)([]),[F,I]=(0,y.useState)({}),L=(0,y.useRef)({}),R=(0,y.useRef)(null),z=(0,y.useRef)(null),B=Q(e=>e.currentSession),ee=Q(e=>e.availableSessions),V=Q(e=>e.loadingSessions),H=Q(e=>e.setCurrentSession),te=Q(e=>e.setAvailableSessions),ne=Q(e=>e.setLoadingSessions),re=Q(e=>e.addSession),ie=Q(e=>e.removeSession),ae=Q(e=>e.addToast),oe=Q(e=>e.runtime),se=Q(e=>e.streamingEnabled),[U,ce]=(0,y.useState)(()=>{let e=localStorage.getItem(`workflowViewOptions`),t={showMinimap:!1,showGrid:!0,animateRun:!1,consolidateBidirectionalEdges:!0};if(e){let n=JSON.parse(e);return{...t,...n}}return t}),[le,ue]=(0,y.useState)(()=>localStorage.getItem(`workflowLayoutDirection`)||`TB`);(0,y.useEffect)(()=>{localStorage.setItem(`workflowViewOptions`,JSON.stringify(U))},[U]),(0,y.useEffect)(()=>{localStorage.setItem(`workflowLayoutDirection`,le)},[le]);let de=e=>{ce(t=>({...t,[e]:!t[e]}))},fe=async()=>{if(x||!e)return;S(!0);let{addToast:t,updateWorkflow:n}=await D_(()=>Promise.resolve().then(()=>(vp(),_p)).then(e=>({addToast:e.useDevUIStore.getState().addToast,updateWorkflow:e.useDevUIStore.getState().updateWorkflow})),void 0,import.meta.url);try{await R_.reloadEntity(e.id);let i=await R_.getWorkflowInfo(e.id);n(i),r(i),t({message:`${e.name} has been reloaded successfully`,type:`success`})}catch(e){t({message:`Failed to reload: ${e instanceof Error?e.message:`Failed to reload entity`}`,type:`error`,duration:6e3})}finally{S(!1)}};(0,y.useEffect)(()=>{l([]),d(!1),h(null),E(``),s(null),L.current={},R.current=null,z.current=null,(async()=>{if(e.type===`workflow`){a(!0),s(null);try{let t=await R_.getWorkflowInfo(e.id);r(t),s(null)}catch(e){r(null);let t=e instanceof Error?e.message:String(e);s(t),console.error(`Error loading workflow info:`,e)}finally{a(!1)}}})()},[e.id,e.type]);let pe=(0,y.useCallback)(async()=>{if(n){ne(!0);try{let e=await R_.listWorkflowSessions(n.id);if(e.data.length===0){let e=await R_.createWorkflowSession(n.id,{name:`Checkpoint Storage ${new Date().toLocaleString()}`});te([e]),H(e)}else{let t=[...e.data].sort((e,t)=>t.created_at-e.created_at);if(te(t),!B){let e=t[0];H(e),await he(e)}}}catch(e){console.error(`Failed to load sessions:`,e),oe!==`dotnet`&&ae({message:`Failed to load sessions`,type:`error`})}finally{ne(!1)}}},[n,B,oe,ae,te,H]);(0,y.useEffect)(()=>{pe()},[n?.id,oe]);let me=(0,y.useCallback)(async()=>{if(!B){O([]);return}try{let e=(await R_.listConversationItems(B.conversation_id,{limit:100})).data.filter(e=>typeof e==`object`&&!!e&&`type`in e&&e.type===`checkpoint`);O(e)}catch(e){console.error(`Failed to load checkpoints for session ${B.conversation_id}:`,e),O([])}},[B]);(0,y.useEffect)(()=>{v&&B&&me()},[v,B,me]);let he=(0,y.useCallback)(async e=>{e&&n&&(l([]),d(!1),p(!1),h(null),w(!1),E(``),P([]),I({}),L.current={},R.current=null,z.current=null)},[n]),ge=(0,y.useCallback)(async e=>{let t=ee.find(t=>t.conversation_id===e);t&&(H(t),await he(t))},[ee,H,he]),_e=(0,y.useCallback)(async()=>{if(n)try{let e=await R_.createWorkflowSession(n.id,{name:`Checkpoint Storage ${new Date().toLocaleString()}`});console.log(`[WorkflowView] Created new session:`,e.conversation_id),console.log(`[WorkflowView] Previous session:`,B?.conversation_id),re(e),H(e),await he(e),await new Promise(e=>setTimeout(e,100)),ae({message:`New checkpoint storage created`,type:`success`})}catch(e){console.error(`Failed to create checkpoint storage:`,e),ae({message:`Failed to create checkpoint storage`,type:`error`})}},[n,B,re,H,he,ae]),ve=(0,y.useCallback)(async()=>{if(B&&n&&confirm(`Delete this session? All checkpoints will be lost.`))try{await R_.deleteWorkflowSession(n.id,B.conversation_id),ie(B.conversation_id),ae({message:`Session deleted`,type:`success`})}catch(e){console.error(`Failed to delete session:`,e),ae({message:`Failed to delete session`,type:`error`})}},[B,n,ie,ae]),ye=e=>{h(e)},be=(0,y.useMemo)(()=>c.filter(e=>e.type===`response.output_item.added`||e.type===`response.output_item.done`||e.type===`response.created`||e.type===`response.in_progress`||e.type===`response.completed`||e.type===`response.failed`||e.type===`response.workflow_event.completed`||e.type===`response.workflow_event.complete`),[c]),xe=(0,y.useMemo)(()=>{let e=[];return be.forEach(t=>{if(t.type===`response.output_item.added`||t.type===`response.output_item.done`){let n=t.item;n&&n.type===`executor_action`&&`executor_id`in n&&n.executor_id&&e.push({executorId:String(n.executor_id),message:t.type===`response.output_item.added`?`Executor started`:n.status===`completed`?`Executor completed`:n.status===`failed`?`Executor failed`:`Executor processing`,timestamp:new Date().toISOString(),status:n.status===`completed`?`completed`:n.status===`failed`?`error`:`running`})}else if(t.type===`response.workflow_event.complete`&&`data`in t&&t.data&&typeof t.data==`object`){let n=t.data;n.executor_id!=null&&e.push({executorId:String(n.executor_id),message:String(n.event_type||`Processing`),timestamp:String(n.timestamp||new Date().toISOString()),status:String(n.event_type||``).includes(`Completed`)?`completed`:String(n.event_type||``).includes(`Error`)?`error`:`running`})}}),e},[be]),Se=(0,y.useMemo)(()=>u?xe.filter(e=>e.status===`running`).slice(-2).map(e=>e.executorId):[],[xe,u]),Ce=(0,y.useCallback)(async(n,r)=>{if(!e||e.type!==`workflow`)return;d(!0),p(!1),l([]),E(``),L.current={},R.current=null,z.current=null,P([]),I({}),t(`clear`);let i=A();try{console.log(`[WorkflowView] Running workflow with:`),console.log(` - Current session ID:`,B?.conversation_id),console.log(` - Input data:`,n);let a={input_data:n,conversation_id:B?.conversation_id||void 0,checkpoint_id:r};B?.conversation_id?R_.clearStreamingState(B.conversation_id):R_.clearStreamingState(e.id);let o=R_.streamWorkflowExecutionOpenAI(e.id,a,i);for await(let e of o){if((e.type===`response.output_item.added`||e.type===`response.output_item.done`||e.type===`response.created`||e.type===`response.in_progress`||e.type===`response.completed`||e.type===`response.failed`||e.type===`response.workflow_event.completed`||e.type===`response.workflow_event.complete`)&&l(t=>{let n=gN(e),r=Math.floor(Date.now()/1e3),i=t.length>0&&t[t.length-1]._uiTimestamp||0,a=n===void 0?Math.max(r,i+1):Math.max(n,i);return[...t,{...e,_uiTimestamp:a}]}),t(e),e.type===`response.output_item.added`){let t=e.item;if(t&&t.type===`executor_action`&&t.executor_id&&t.id&&(R.current=t.id,L.current[t.id]||(L.current[t.id]=``)),t&&t.type===`message`&&`metadata`in t&&t.metadata?.source===`magentic`&&t.id&&(R.current=t.id,L.current[t.id]||(L.current[t.id]=``)),t&&t.type===`message`&&(!(`metadata`in t)||!t.metadata?.source)&&t.metadata?.workflow_output_kind!==`intermediate`&&`content`in t&&Array.isArray(t.content))for(let e of t.content){let t=e.type===`output_text`?e.text:e.type===`refusal`?e.refusal:void 0;if(t){E(e=>e&&e.length>0?e+` + `})]}):(0,K.jsx)(`div`,{className:`flex items-center justify-center h-full bg-gray-50 dark:bg-gray-900 rounded border border-gray-200 dark:border-gray-700 ${i}`,children:(0,K.jsxs)(`div`,{className:`text-center text-gray-500 dark:text-gray-400`,children:[(0,K.jsx)(`div`,{className:`text-lg font-medium mb-2`,children:`No Workflow Data`}),(0,K.jsx)(`div`,{className:`text-sm`,children:`Workflow dump is not available.`})]})})});function NN({title:e,icon:t,children:n,className:r=``}){return(0,K.jsxs)(`div`,{className:`border rounded-lg p-4 bg-card ${r}`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 mb-3`,children:[t,(0,K.jsx)(`h3`,{className:`text-sm font-semibold text-foreground`,children:e})]}),(0,K.jsx)(`div`,{className:`text-sm text-muted-foreground`,children:n})]})}function PN({workflow:e,open:t,onOpenChange:n}){let r=e.source===`directory`?(0,K.jsx)(Gu,{className:`h-4 w-4 text-muted-foreground`}):e.source===`in_memory`?(0,K.jsx)(Fu,{className:`h-4 w-4 text-muted-foreground`}):(0,K.jsx)(qu,{className:`h-4 w-4 text-muted-foreground`}),i=e.source===`directory`?`Local`:e.source===`in_memory`?`In-Memory`:`Gallery`;return(0,K.jsx)(Ng,{open:t,onOpenChange:n,children:(0,K.jsxs)(Pg,{className:`max-w-4xl max-h-[90vh] flex flex-col`,children:[(0,K.jsxs)(Fg,{className:`px-6 pt-6 flex-shrink-0`,children:[(0,K.jsx)(Ig,{children:`Workflow Details`}),(0,K.jsx)(Rg,{onClose:()=>n(!1)})]}),(0,K.jsxs)(`div`,{className:`px-6 pb-6 overflow-y-auto flex-1`,children:[(0,K.jsxs)(`div`,{className:`mb-6`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-3 mb-2`,children:[(0,K.jsx)(mf,{className:`h-6 w-6 text-primary`}),(0,K.jsx)(`h2`,{className:`text-xl font-semibold text-foreground`,children:e.name||e.id})]}),e.description&&(0,K.jsx)(`p`,{className:`text-muted-foreground`,children:e.description})]}),(0,K.jsx)(`div`,{className:`h-px bg-border mb-6`}),(0,K.jsxs)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 gap-4 mb-4`,children:[(0,K.jsx)(NN,{title:`Start Executor`,icon:(0,K.jsx)(xu,{className:`h-4 w-4 text-muted-foreground`}),children:(0,K.jsx)(`div`,{className:`font-mono text-foreground`,children:e.start_executor_id})}),(0,K.jsx)(NN,{title:`Source`,icon:r,children:(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(`div`,{className:`text-foreground`,children:i}),e.module_path&&(0,K.jsx)(`div`,{className:`font-mono text-xs break-all`,children:e.module_path})]})}),(0,K.jsx)(NN,{title:`Environment`,icon:e.has_env?(0,K.jsx)(Cu,{className:`h-4 w-4 text-orange-500`}):(0,K.jsx)(_u,{className:`h-4 w-4 text-green-500`}),className:`md:col-span-2`,children:(0,K.jsx)(`div`,{className:e.has_env?`text-orange-600 dark:text-orange-400`:`text-green-600 dark:text-green-400`,children:e.has_env?`Requires environment variables`:`No environment variables required`})})]}),(0,K.jsx)(NN,{title:`Executors (${e.executors.length})`,icon:(0,K.jsx)(Td,{className:`h-4 w-4 text-muted-foreground`}),children:e.executors.length>0?(0,K.jsx)(`div`,{className:`grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-2`,children:e.executors.map((e,t)=>(0,K.jsx)(`div`,{className:`font-mono text-xs text-foreground bg-muted px-2 py-1 rounded truncate`,title:e,children:e},t))}):(0,K.jsx)(`div`,{className:`text-muted-foreground`,children:`No executors configured`})})]})]})})}function FN({session:e,checkpoints:t,open:n,onOpenChange:r}){let[i,a]=(0,y.useState)(null),[o,s]=(0,y.useState)(null),[c,l]=(0,y.useState)(!1),[u,d]=(0,y.useState)(!0);if((0,y.useEffect)(()=>{n&&t.length>0&&(t.some(e=>e.checkpoint_id===i)||a(t[0].checkpoint_id))},[n,t]),(0,y.useEffect)(()=>{i&&e&&(async()=>{l(!0);try{let t=await Z_.getConversationItem(e.conversation_id,`checkpoint_${i}`);s(t.metadata?.full_checkpoint??null)}catch(e){console.error(`Failed to load checkpoint:`,e),s(null)}finally{l(!1)}})()},[i,e]),!e)return null;let f=t.find(e=>e.checkpoint_id===i),p=o?.state?._executor_state?Object.keys(o.state._executor_state):[],m=o?.messages?Object.keys(o.messages):[],h=e=>{if(!e)return``;let t=e/1024;return t<1?`${e} B`:t<1024?`${t.toFixed(1)} KB`:`${(t/1024).toFixed(1)} MB`};return(0,K.jsx)(Ng,{open:n,onOpenChange:r,children:(0,K.jsxs)(Pg,{className:`w-[90vw] max-w-6xl min-w-[800px] h-[85vh] flex flex-col p-0`,children:[(0,K.jsx)(Fg,{className:`px-6 pt-6 pb-4 border-b flex-shrink-0`,children:(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`div`,{className:`flex-1`,children:[(0,K.jsx)(Ig,{children:e.metadata.name}),(0,K.jsxs)(`div`,{className:`text-sm text-muted-foreground mt-1`,children:[t.length,` checkpoint`,t.length===1?``:`s`]}),(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground mt-2 max-w-2xl`,children:`This is a read only view of the current checkpoint ids in the checkpoint storage for this workflow run.`})]}),(0,K.jsx)(Rg,{onClose:()=>r(!1)})]})}),(0,K.jsxs)(`div`,{className:`flex-1 flex overflow-hidden min-h-0`,children:[(0,K.jsx)(`div`,{className:`w-80 border-r flex flex-col`,children:(0,K.jsx)(ym,{className:`flex-1`,children:(0,K.jsx)(`div`,{className:`p-4 space-y-2`,children:t.length===0?(0,K.jsx)(`div`,{className:`text-center text-sm text-muted-foreground py-8`,children:`No checkpoints yet`}):t.map((e,n)=>{let r=e.checkpoint_id===i,o=e.metadata.has_pending_hil;return(0,K.jsxs)(`div`,{className:`relative`,children:[(0,K.jsx)(`button`,{onClick:()=>a(e.checkpoint_id),className:jt(`relative w-full text-left p-3 rounded-lg border transition-colors`,r?`bg-primary/10 border-primary`:`hover:bg-muted/50 border-transparent`),children:(0,K.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,K.jsx)(`div`,{className:`flex flex-col items-center pt-1`,children:(0,K.jsx)(`div`,{className:jt(`w-2 h-2 rounded-full z-10`,o?`bg-blue-500 ring-2 ring-blue-500/20`:`bg-muted-foreground/30`)})}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`text-sm font-medium`,children:e.metadata.iteration_count===0?`Initial State`:`Step ${e.metadata.iteration_count}`}),(0,K.jsx)(`span`,{className:`text-[10px] font-mono text-muted-foreground/70`,title:e.checkpoint_id,children:e.checkpoint_id.slice(0,8)}),n===0&&(0,K.jsx)(Ft,{variant:`secondary`,className:`text-[10px] h-4 px-1`,children:`Latest`}),o&&(0,K.jsxs)(Ft,{variant:`secondary`,className:`text-[10px] h-4 px-1.5`,children:[e.metadata.pending_hil_count,` HIL`]})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-3 text-xs text-muted-foreground mt-1`,children:[(0,K.jsx)(`span`,{children:new Date(e.timestamp).toLocaleTimeString()}),e.metadata.size_bytes&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`span`,{children:`•`}),(0,K.jsx)(`span`,{children:h(e.metadata.size_bytes)})]})]})]})]})}),n0&&(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`div`,{className:`text-sm font-medium mb-3 flex items-center gap-2`,children:[(0,K.jsx)(Td,{className:`h-4 w-4`}),`Active Executors (`,p.length,`)`]}),(0,K.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:p.map(e=>(0,K.jsx)(Ft,{variant:`outline`,className:`font-mono text-xs`,children:e},e))})]}),m.length>0&&o&&(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`div`,{className:`text-sm font-medium mb-3 flex items-center gap-2`,children:[(0,K.jsx)(_d,{className:`h-4 w-4`}),`Messages`]}),(0,K.jsx)(`div`,{className:`grid grid-cols-2 gap-3`,children:m.map(e=>{let t=o.messages[e]?.length;return(0,K.jsxs)(`div`,{className:`bg-muted/50 p-3 rounded-lg`,children:[(0,K.jsx)(`div`,{className:`text-xs font-mono text-muted-foreground mb-1`,children:e}),(0,K.jsxs)(`div`,{className:`font-medium`,children:[t,` message`,t===1?``:`s`]})]},e)})})]}),o?.pending_request_info_events&&Object.keys(o.pending_request_info_events).length>0&&(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`div`,{className:`text-sm font-medium mb-3 flex items-center gap-2`,children:[(0,K.jsx)(hu,{className:`h-4 w-4`}),`Pending HIL Requests (`,Object.keys(o.pending_request_info_events).length,`)`]}),(0,K.jsx)(`div`,{className:`space-y-2`,children:Object.entries(o.pending_request_info_events).map(([e,t])=>(0,K.jsxs)(`div`,{className:`bg-muted/50 border border-border p-3 rounded-lg`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between mb-2`,children:[(0,K.jsxs)(`code`,{className:`text-xs bg-background px-2 py-1 rounded`,children:[e.slice(0,24),`...`]}),(0,K.jsx)(Ft,{variant:`outline`,className:`text-xs`,children:t.source_executor_id})]}),(0,K.jsxs)(`div`,{className:`text-xs space-y-1`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Request:`}),` `,(0,K.jsx)(`code`,{className:`bg-background px-1 py-0.5 rounded`,children:t.request_type?.split(`.`).pop()||t.request_type})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`text-muted-foreground`,children:`Response:`}),` `,(0,K.jsx)(`code`,{className:`bg-background px-1 py-0.5 rounded`,children:t.response_type?.split(`.`).pop()||t.response_type})]})]})]},e))})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`div`,{className:`text-sm font-medium mb-3`,children:`Workflow State`}),o?.state&&Object.keys(o.state).filter(e=>e!==`_executor_state`).length>0?(0,K.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:Object.keys(o.state).filter(e=>e!==`_executor_state`).map(e=>(0,K.jsx)(Ft,{variant:`secondary`,className:`font-mono text-xs`,children:e},e))}):(0,K.jsx)(`div`,{className:`text-sm text-muted-foreground`,children:`No custom state`})]}),(0,K.jsxs)(`div`,{className:`border-t pt-6`,children:[(0,K.jsxs)(`button`,{onClick:()=>d(!u),className:`flex items-center gap-2 text-sm font-medium hover:text-primary transition-colors w-full`,children:[u?(0,K.jsx)(su,{className:`h-4 w-4`}):(0,K.jsx)(du,{className:`h-4 w-4`}),`Raw JSON`]}),u&&(0,K.jsx)(`pre`,{className:`mt-3 text-[10px] font-mono bg-muted p-4 rounded overflow-x-auto`,children:JSON.stringify(o,null,2)})]})]})})})]})]})})}function IN({request:e,response:t,onResponseChange:n,onSubmit:r,isSubmitting:i}){let[a,o]=(0,y.useState)(!0),s=e=>{n(e)},c=kb(e.request_schema,t);return(0,K.jsx)(`div`,{className:`relative group`,children:(0,K.jsx)(`div`,{children:(0,K.jsx)(`div`,{className:`flex-1`,children:(0,K.jsxs)(`div`,{className:`border border-orange-200 dark:border-orange-800 bg-orange-50/50 dark:bg-orange-950/20 overflow-hidden rounded-lg`,children:[(0,K.jsxs)(`div`,{className:`px-4 py-3 bg-orange-100/50 dark:bg-orange-950/30 border-b border-orange-200 dark:border-orange-800 flex items-center justify-between cursor-pointer hover:bg-orange-100 dark:hover:bg-orange-950/40 transition-colors`,onClick:()=>o(!a),children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`font-medium text-sm text-orange-900 dark:text-orange-100`,children:`Workflow needs your input`}),(0,K.jsx)(Ft,{variant:`outline`,className:`text-xs font-mono border-orange-300 dark:border-orange-700 text-orange-700 dark:text-orange-300`,children:e.request_id.slice(0,8)}),!a&&(0,K.jsx)(`span`,{className:`text-xs text-orange-600 dark:text-orange-400 animate-pulse`,children:`Click to respond`})]}),i&&(0,K.jsx)(Ft,{variant:`secondary`,className:`animate-pulse`,children:`Submitting...`})]}),a&&(0,K.jsxs)(`div`,{className:`p-4 space-y-4`,children:[Object.keys(e.request_data).length>0&&(0,K.jsxs)(`div`,{className:`bg-white/60 dark:bg-gray-900/30 rounded-md p-3 space-y-2`,children:[(0,K.jsx)(`p`,{className:`text-xs font-medium text-muted-foreground uppercase tracking-wider`,children:`Context`}),(0,K.jsx)(`div`,{className:`max-h-48 overflow-y-auto space-y-1 pr-2`,children:Object.entries(e.request_data).filter(([e])=>![`request_id`,`source_executor_id`].includes(e)).map(([e,t])=>(0,K.jsxs)(`div`,{className:`text-sm`,children:[(0,K.jsxs)(`span`,{className:`font-medium text-muted-foreground`,children:[e,`:`]}),` `,(0,K.jsx)(`span`,{className:`text-foreground break-all`,children:typeof t==`object`?JSON.stringify(t,null,2):String(t)})]},e))})]}),e.request_schema?.description&&(0,K.jsxs)(`div`,{className:`text-sm text-muted-foreground bg-blue-50 dark:bg-blue-950/20 p-3 rounded-md border border-blue-200 dark:border-blue-800`,children:[(0,K.jsx)(`p`,{className:`font-medium text-blue-900 dark:text-blue-100 mb-1`,children:`What's needed:`}),(0,K.jsx)(`p`,{className:`text-blue-800 dark:text-blue-200`,children:e.request_schema.description})]}),(0,K.jsx)(`div`,{className:`space-y-3`,children:(0,K.jsx)(Ob,{schema:e.request_schema,values:t,onChange:s})}),(0,K.jsxs)(`div`,{className:`space-y-2 pt-2`,children:[(0,K.jsxs)(q,{size:`default`,onClick:r,disabled:!c||i,className:`w-full gap-2`,children:[(0,K.jsx)(qd,{className:`w-4 h-4`}),`Submit Response`]}),!c&&(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground text-center`,children:`Please fill in all required fields`})]})]})]})})})})}function LN(e,t=!0){switch(e){case`running`:return(0,K.jsx)(ld,{className:`w-4 h-4 text-[#643FB2] dark:text-[#8B5CF6] ${t?`animate-spin`:``}`});case`completed`:return(0,K.jsx)(_u,{className:`w-4 h-4 text-green-500 dark:text-green-400`});case`failed`:return(0,K.jsx)(Cu,{className:`w-4 h-4 text-red-500 dark:text-red-400`});case`cancelled`:return(0,K.jsx)(hu,{className:`w-4 h-4 text-orange-500 dark:text-orange-400`});default:return(0,K.jsx)(`div`,{className:`w-4 h-4 rounded-full border-2 border-gray-400 dark:border-gray-500`})}}function RN(e){switch(e){case`running`:return`bg-[#643FB2]/10 text-[#643FB2] dark:bg-[#8B5CF6]/10 dark:text-[#8B5CF6] border-[#643FB2]/20 dark:border-[#8B5CF6]/20`;case`completed`:return`bg-green-500/10 text-green-600 dark:text-green-400 border-green-500/20`;case`failed`:return`bg-red-500/10 text-red-600 dark:text-red-400 border-red-500/20`;case`cancelled`:return`bg-orange-500/10 text-orange-600 dark:text-orange-400 border-orange-500/20`;default:return`bg-gray-500/10 text-gray-600 dark:text-gray-400 border-gray-500/20`}}function zN(e){return e.content?.map(e=>e.type===`output_text`?e.text:e.type===`refusal`?e.refusal:void 0).filter(e=>!!e).join(` +`)??``}function BN({run:e,isExpanded:t,onToggle:n,onClick:r,isSelected:i,isStreaming:a}){let o=new Date(e.timestamp).toLocaleTimeString(),s=e.output.trim().length>0||e.error,c=(0,y.useRef)(null);return(0,y.useEffect)(()=>{t&&e.state===`running`&&c.current&&(c.current.scrollTop=c.current.scrollHeight)},[e.output,t,e.state]),(0,K.jsxs)(`div`,{className:`border rounded-lg transition-all ${i?`border-blue-500 dark:border-blue-400 bg-blue-500/5 dark:bg-blue-500/10`:`border-border hover:border-muted-foreground/30`}`,children:[(0,K.jsxs)(`div`,{className:`p-3 cursor-pointer`,onClick:()=>{r(),s&&n()},children:[(0,K.jsxs)(`div`,{className:`grid grid-cols-[auto_auto_1fr_auto] items-center gap-2 mb-1`,children:[(0,K.jsx)(`div`,{className:`w-3 text-muted-foreground`,children:s&&(0,K.jsx)(K.Fragment,{children:t?(0,K.jsx)(su,{className:`w-3 h-3`}):(0,K.jsx)(du,{className:`w-3 h-3`})})}),(0,K.jsx)(`div`,{children:LN(e.state,a)}),(0,K.jsx)(`span`,{className:`font-medium text-sm truncate overflow-hidden`,children:e.executorName}),e.runNumber>1?(0,K.jsxs)(Ft,{variant:`outline`,className:`text-xs whitespace-nowrap`,children:[`Run #`,e.runNumber]}):(0,K.jsx)(`div`,{})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-muted-foreground ml-5`,children:[(0,K.jsx)(`span`,{className:`font-mono`,children:o}),(0,K.jsx)(Ft,{variant:`outline`,className:`text-xs border ${RN(e.state)}`,children:e.state})]})]}),t&&s&&(0,K.jsx)(`div`,{className:`border-t px-3 py-2 bg-muted/30`,children:e.error?(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(`div`,{className:`text-xs font-medium text-red-600 dark:text-red-400`,children:`Error:`}),(0,K.jsx)(`pre`,{className:`text-xs bg-red-50 dark:bg-red-950/20 border border-red-200 dark:border-red-800 rounded p-2 overflow-y-auto overflow-x-hidden max-h-40 whitespace-pre-wrap break-all`,children:e.error})]}):(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(`div`,{className:`text-xs font-medium text-muted-foreground`,children:`Output:`}),(0,K.jsx)(`pre`,{ref:c,className:`text-xs bg-background border rounded p-2 overflow-y-auto overflow-x-hidden max-h-60 whitespace-pre-wrap break-all`,children:e.output})]})})]})}function VN({events:e,itemOutputs:t,currentExecutorId:n,isStreaming:r,onExecutorClick:i,selectedExecutorId:a,workflowResult:o,pendingHilRequests:s=[],hilResponses:c={},onHilResponseChange:l,onHilSubmit:u,isSubmittingHil:d=!1,inputSchema:f,onRun:p,onCancel:m,isCancelling:h=!1,workflowState:g=`ready`,wasCancelled:_=!1,checkpoints:v=[]}){let[b,x]=(0,y.useState)(new Set),[S,C]=(0,y.useState)(0),[w,T]=(0,y.useState)(!1),E=(0,y.useRef)(null),D=(0,y.useRef)(null),O=(0,y.useRef)(null);(0,y.useEffect)(()=>{if(r){let e=setInterval(()=>{C(e=>e+1)},100);return()=>clearInterval(e)}},[r]);let{executorRuns:k,executorRunCount:A}=(0,y.useMemo)(()=>{let n=[],r=new Map;return e.forEach(e=>{let i=`_uiTimestamp`in e&&typeof e._uiTimestamp==`number`?e._uiTimestamp*1e3:Date.now();if(e.type===`response.output_item.added`){let a=e.item;if(a&&a.type===`executor_action`&&`executor_id`in a&&a.id){let e=String(a.executor_id),o=a.id,s=(r.get(e)||0)+1;r.set(e,s),n.push({executorId:e,executorName:Ib(e,35),itemId:o,state:`running`,output:t[o]||``,timestamp:i,runNumber:s})}else if(a&&a.type===`message`&&`metadata`in a&&a.id){let e=a.metadata;if(e?.agent_id&&e?.source===`magentic`){let o=e.agent_id,s=a.id,c=(r.get(o)||0)+1;r.set(o,c),n.push({executorId:o,executorName:Ib(o,35),itemId:s,state:`running`,output:t[s]||``,timestamp:i,runNumber:c})}else if(e?.executor_id&&e.workflow_output_kind===`intermediate`){let o=e.executor_id,s=a.id,c=(r.get(o)||0)+1;r.set(o,c),n.push({executorId:o,executorName:Ib(o,35),itemId:s,state:a.status===`completed`?`completed`:`running`,output:t[s]||zN(a),timestamp:i,runNumber:c})}}}if(e.type===`response.output_item.done`){let r=e.item;if(r&&r.type===`executor_action`&&`executor_id`in r&&r.id){let e=r.id,i=n.find(t=>t.itemId===e);i&&(i.state=r.status===`completed`?`completed`:r.status===`failed`?`failed`:`completed`,i.output=t[e]||``,r.status===`failed`&&`error`in r&&r.error&&(i.error=String(r.error)))}else if(r&&r.type===`message`&&`metadata`in r&&r.id){let e=r.metadata;if(e?.agent_id&&e?.source===`magentic`){let e=r.id,i=n.find(t=>t.itemId===e);i&&(i.state=r.status===`completed`?`completed`:`failed`,i.output=t[e]||``)}else if(e?.executor_id&&e.workflow_output_kind===`intermediate`){let e=r.id,i=n.find(t=>t.itemId===e);i&&(i.state=r.status===`completed`?`completed`:`failed`,i.output=t[e]||zN(r))}}}if(e.type===`response.workflow_event.completed`&&`data`in e&&e.data){let a=e.data,o=a.executor_id;if(!o)return;let s=a.event_type;if(s===`ExecutorInvokedEvent`){let e=(r.get(o)||0)+1;r.set(o,e);let a=`fallback_${o}_run${e}`;n.push({executorId:o,executorName:Ib(o,35),itemId:a,state:`running`,output:t[a]||``,timestamp:i,runNumber:e})}else if(s===`ExecutorCompletedEvent`){let e;for(let t=n.length-1;t>=0;t--)if(n[t].executorId===o&&n[t].state===`running`){e=n[t];break}e&&(e.state=`completed`,e.output=t[e.itemId]||``)}else if(s?.includes(`Error`)||s?.includes(`Failed`)){let e;for(let t=n.length-1;t>=0;t--)if(n[t].executorId===o&&n[t].state===`running`){e=n[t];break}e&&(e.state=`failed`,e.error=typeof a.data==`string`?a.data:`Execution failed`)}}}),n.forEach(e=>{e.state===`running`&&t[e.itemId]&&(e.output=t[e.itemId])}),{executorRuns:n,executorRunCount:r}},[e,t,S]);return(0,y.useEffect)(()=>{n&&x(e=>{let t=new Set(e);return t.add(`${n}-${A.get(n)||1}`),t})},[n,A]),(0,y.useEffect)(()=>{if(k.length>0&&r){let e=k[k.length-1],t=`${e.executorId}-${e.runNumber}`;t!==E.current&&(E.current=t,D.current&&D.current.scrollIntoView({behavior:`smooth`,block:`end`}))}},[k,r]),(0,y.useEffect)(()=>{o&&!r&&D.current&&setTimeout(()=>{D.current?.scrollIntoView({behavior:`smooth`,block:`end`})},100)},[o,r]),(0,y.useEffect)(()=>{!r&&k.length>0&&s.length===0&&setTimeout(()=>{D.current?.scrollIntoView({behavior:`smooth`,block:`end`})},100)},[r,s.length,k.length]),(0,y.useEffect)(()=>{s.length>0&&O.current&&setTimeout(()=>{O.current?.scrollIntoView({behavior:`smooth`,block:`end`}),O.current?.classList.add(`highlight-attention`),setTimeout(()=>{O.current?.classList.remove(`highlight-attention`)},1e3)},100)},[s.length]),(0,K.jsxs)(`div`,{className:`h-full flex flex-col border-l bg-muted/30`,children:[(0,K.jsxs)(`div`,{className:`p-3 border-b bg-background flex items-center justify-between flex-shrink-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`font-medium text-sm`,children:`Execution Timeline`}),(0,K.jsx)(Ft,{variant:`outline`,className:`text-xs`,children:k.length}),r&&(0,K.jsxs)(`div`,{className:`flex items-center gap-1 text-xs text-muted-foreground`,children:[(0,K.jsx)(`div`,{className:`h-2 w-2 animate-pulse rounded-full bg-[#643FB2] dark:bg-[#8B5CF6]`}),(0,K.jsx)(`span`,{children:`Running`})]})]}),k.length>0&&(0,K.jsx)(q,{variant:`ghost`,size:`sm`,onClick:()=>{let e=k.map(e=>`${`[${new Date(e.timestamp).toLocaleTimeString()}] ${e.executorName} (${e.state})`}\n${e.error||e.output||`(no output)`}\n`).join(` +`);navigator.clipboard.writeText(e),T(!0),setTimeout(()=>T(!1),2e3)},className:`h-7 px-2 text-xs ${w?`text-green-600 dark:text-green-400`:``}`,children:w?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(ru,{className:`w-3 h-3 mr-1`}),`Copied!`]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(Nu,{className:`w-3 h-3 mr-1`}),`Copy All`]})})]}),(0,K.jsx)(ym,{className:`flex-1`,children:(0,K.jsxs)(`div`,{className:`p-3 space-y-2`,children:[k.length===0?(0,K.jsx)(`div`,{className:`text-center text-muted-foreground text-sm py-8`,children:r?`Workflow is running...`:`Ready to run workflow`}):(0,K.jsxs)(K.Fragment,{children:[k.map((e,t)=>{let n=`${e.executorId}-${e.runNumber}`;return(0,K.jsx)(BN,{run:e,isExpanded:b.has(n),onToggle:()=>{x(e=>{let t=new Set(e);return t.has(n)?t.delete(n):t.add(n),t})},onClick:()=>i?.(e.executorId),isSelected:a===e.executorId,isStreaming:r},`${n}-${t}`)}),s.length>0&&(0,K.jsx)(`div`,{ref:O,"data-hil-form":!0,className:`transition-all duration-300`,children:s.map(e=>(0,K.jsx)(IN,{request:e,response:c[e.request_id]||{},onResponseChange:t=>l?.(e.request_id,t),onSubmit:()=>u?.(),isSubmitting:d},e.request_id))})]}),o&&o.trim().length>0&&!r&&!_&&(0,K.jsxs)(`div`,{className:`border rounded-lg border-green-500/40 bg-green-500/5 dark:bg-green-500/10`,children:[(0,K.jsx)(`div`,{className:`p-3 bg-green-500/10 border-b border-green-500/20`,children:(0,K.jsxs)(`div`,{className:`flex items-center gap-2 mb-1`,children:[(0,K.jsx)(_u,{className:`w-4 h-4 text-green-500 dark:text-green-400`}),(0,K.jsx)(`span`,{className:`font-medium text-sm`,children:`Workflow Complete`})]})}),(0,K.jsx)(`div`,{className:`border-t px-3 py-2 bg-muted/30`,children:(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(`div`,{className:`text-xs font-medium text-muted-foreground`,children:`Final Output:`}),(0,K.jsx)(`pre`,{className:`text-xs bg-background border rounded p-2 overflow-y-auto overflow-x-hidden max-h-60 whitespace-pre-wrap break-all`,children:o})]})})]}),_&&!r&&(0,K.jsx)(`div`,{className:`border rounded-lg border-orange-500/40 bg-orange-500/5 dark:bg-orange-500/10`,children:(0,K.jsxs)(`div`,{className:`px-4 py-3 flex items-center gap-2`,children:[(0,K.jsx)(tf,{className:`w-4 h-4 text-orange-500 dark:text-orange-400 fill-current`}),(0,K.jsx)(`span`,{className:`font-medium text-sm text-orange-700 dark:text-orange-300`,children:`Execution stopped by user`})]})}),(0,K.jsx)(`div`,{ref:D})]})}),(p||m)&&s.length===0&&(0,K.jsx)(`div`,{className:`border-t p-3 bg-background flex-shrink-0`,children:f&&Fb(f)?(0,K.jsx)(Ev,{onSubmit:async e=>{p?.([{type:`message`,role:`user`,content:e}])},isSubmitting:g===`running`,isStreaming:g===`running`,onCancel:m,isCancelling:h,placeholder:`Message workflow...`,showFileUpload:!0,entityName:`workflow`}):(0,K.jsx)(qb,{inputSchema:f,onRun:p||(()=>{}),onCancel:m,isSubmitting:g===`running`,isCancelling:h,workflowState:g,checkpoints:v,showCheckpoints:!1})})]})}xp();function HN(e){if(`created_at`in e&&typeof e.created_at==`number`&&e.created_at)return e.created_at;let t=`response`in e?e.response:void 0;if(t&&typeof t==`object`&&`created_at`in t){let e=t.created_at;if(typeof e==`number`)return e}let n=`data`in e?e.data:void 0;if(n&&typeof n==`object`&&`timestamp`in n&&typeof n.timestamp==`string`){let e=new Date(n.timestamp).getTime();return Number.isFinite(e)?e/1e3:void 0}}function UN({selectedWorkflow:e,onDebugEvent:t}){let[n,r]=(0,y.useState)(null),[i,a]=(0,y.useState)(!1),[o,s]=(0,y.useState)(null),[c,l]=(0,y.useState)([]),[u,d]=(0,y.useState)(!1),[f,p]=(0,y.useState)(!1),[m,h]=(0,y.useState)(null),[g,_]=(0,y.useState)(!1),[v,b]=(0,y.useState)(!1),[x,S]=(0,y.useState)(!1),[C,w]=(0,y.useState)(!1),[T,E]=(0,y.useState)(``),[D,O]=(0,y.useState)([]),{isCancelling:k,createAbortSignal:A,handleCancel:j,resetCancelling:M}=w_(),[N,P]=(0,y.useState)([]),[F,I]=(0,y.useState)({}),L=(0,y.useRef)({}),R=(0,y.useRef)(null),z=(0,y.useRef)(null),B=Q(e=>e.currentSession),ee=Q(e=>e.availableSessions),V=Q(e=>e.loadingSessions),H=Q(e=>e.setCurrentSession),te=Q(e=>e.setAvailableSessions),ne=Q(e=>e.setLoadingSessions),re=Q(e=>e.addSession),ie=Q(e=>e.removeSession),ae=Q(e=>e.addToast),oe=Q(e=>e.runtime),se=Q(e=>e.streamingEnabled),[U,ce]=(0,y.useState)(()=>{let e=localStorage.getItem(`workflowViewOptions`),t={showMinimap:!1,showGrid:!0,animateRun:!1,consolidateBidirectionalEdges:!0};if(e){let n=JSON.parse(e);return{...t,...n}}return t}),[le,ue]=(0,y.useState)(()=>localStorage.getItem(`workflowLayoutDirection`)||`TB`);(0,y.useEffect)(()=>{localStorage.setItem(`workflowViewOptions`,JSON.stringify(U))},[U]),(0,y.useEffect)(()=>{localStorage.setItem(`workflowLayoutDirection`,le)},[le]);let de=e=>{ce(t=>({...t,[e]:!t[e]}))},fe=async()=>{if(x||!e)return;S(!0);let{addToast:t,updateWorkflow:n}=await B_(()=>Promise.resolve().then(()=>(Cp(),Sp)).then(e=>({addToast:e.useDevUIStore.getState().addToast,updateWorkflow:e.useDevUIStore.getState().updateWorkflow})),void 0,import.meta.url);try{await Z_.reloadEntity(e.id);let i=await Z_.getWorkflowInfo(e.id);n(i),r(i),t({message:`${e.name} has been reloaded successfully`,type:`success`})}catch(e){t({message:`Failed to reload: ${e instanceof Error?e.message:`Failed to reload entity`}`,type:`error`,duration:6e3})}finally{S(!1)}};(0,y.useEffect)(()=>{l([]),d(!1),h(null),E(``),s(null),L.current={},R.current=null,z.current=null,(async()=>{if(e.type===`workflow`){a(!0),s(null);try{let t=await Z_.getWorkflowInfo(e.id);r(t),s(null)}catch(e){r(null);let t=e instanceof Error?e.message:String(e);s(t),console.error(`Error loading workflow info:`,e)}finally{a(!1)}}})()},[e.id,e.type]);let pe=(0,y.useCallback)(async()=>{if(n){ne(!0);try{let e=await Z_.listWorkflowSessions(n.id);if(e.data.length===0){let e=await Z_.createWorkflowSession(n.id,{name:`Checkpoint Storage ${new Date().toLocaleString()}`});te([e]),H(e)}else{let t=[...e.data].sort((e,t)=>t.created_at-e.created_at);if(te(t),!B){let e=t[0];H(e),await he(e)}}}catch(e){console.error(`Failed to load sessions:`,e),oe!==`dotnet`&&ae({message:`Failed to load sessions`,type:`error`})}finally{ne(!1)}}},[n,B,oe,ae,te,H]);(0,y.useEffect)(()=>{pe()},[n?.id,oe]);let me=(0,y.useCallback)(async()=>{if(!B){O([]);return}try{let e=(await Z_.listConversationItems(B.conversation_id,{limit:100})).data.filter(e=>typeof e==`object`&&!!e&&`type`in e&&e.type===`checkpoint`);O(e)}catch(e){console.error(`Failed to load checkpoints for session ${B.conversation_id}:`,e),O([])}},[B]);(0,y.useEffect)(()=>{v&&B&&me()},[v,B,me]);let he=(0,y.useCallback)(async e=>{e&&n&&(l([]),d(!1),p(!1),h(null),w(!1),E(``),P([]),I({}),L.current={},R.current=null,z.current=null)},[n]),ge=(0,y.useCallback)(async e=>{let t=ee.find(t=>t.conversation_id===e);t&&(H(t),await he(t))},[ee,H,he]),_e=(0,y.useCallback)(async()=>{if(n)try{let e=await Z_.createWorkflowSession(n.id,{name:`Checkpoint Storage ${new Date().toLocaleString()}`});console.log(`[WorkflowView] Created new session:`,e.conversation_id),console.log(`[WorkflowView] Previous session:`,B?.conversation_id),re(e),H(e),await he(e),await new Promise(e=>setTimeout(e,100)),ae({message:`New checkpoint storage created`,type:`success`})}catch(e){console.error(`Failed to create checkpoint storage:`,e),ae({message:`Failed to create checkpoint storage`,type:`error`})}},[n,B,re,H,he,ae]),ve=(0,y.useCallback)(async()=>{if(B&&n&&confirm(`Delete this session? All checkpoints will be lost.`))try{await Z_.deleteWorkflowSession(n.id,B.conversation_id),ie(B.conversation_id),ae({message:`Session deleted`,type:`success`})}catch(e){console.error(`Failed to delete session:`,e),ae({message:`Failed to delete session`,type:`error`})}},[B,n,ie,ae]),ye=e=>{h(e)},be=(0,y.useMemo)(()=>c.filter(e=>e.type===`response.output_item.added`||e.type===`response.output_item.done`||e.type===`response.created`||e.type===`response.in_progress`||e.type===`response.completed`||e.type===`response.failed`||e.type===`response.workflow_event.completed`||e.type===`response.workflow_event.complete`),[c]),xe=(0,y.useMemo)(()=>{let e=[];return be.forEach(t=>{if(t.type===`response.output_item.added`||t.type===`response.output_item.done`){let n=t.item;n&&n.type===`executor_action`&&`executor_id`in n&&n.executor_id&&e.push({executorId:String(n.executor_id),message:t.type===`response.output_item.added`?`Executor started`:n.status===`completed`?`Executor completed`:n.status===`failed`?`Executor failed`:`Executor processing`,timestamp:new Date().toISOString(),status:n.status===`completed`?`completed`:n.status===`failed`?`error`:`running`})}else if(t.type===`response.workflow_event.complete`&&`data`in t&&t.data&&typeof t.data==`object`){let n=t.data;n.executor_id!=null&&e.push({executorId:String(n.executor_id),message:String(n.event_type||`Processing`),timestamp:String(n.timestamp||new Date().toISOString()),status:String(n.event_type||``).includes(`Completed`)?`completed`:String(n.event_type||``).includes(`Error`)?`error`:`running`})}}),e},[be]),Se=(0,y.useMemo)(()=>u?xe.filter(e=>e.status===`running`).slice(-2).map(e=>e.executorId):[],[xe,u]),Ce=(0,y.useCallback)(async(n,r)=>{if(!e||e.type!==`workflow`)return;d(!0),p(!1),l([]),E(``),L.current={},R.current=null,z.current=null,P([]),I({}),t(`clear`);let i=A();try{console.log(`[WorkflowView] Running workflow with:`),console.log(` - Current session ID:`,B?.conversation_id),console.log(` - Input data:`,n);let a={input_data:n,conversation_id:B?.conversation_id||void 0,checkpoint_id:r};B?.conversation_id?Z_.clearStreamingState(B.conversation_id):Z_.clearStreamingState(e.id);let o=Z_.streamWorkflowExecutionOpenAI(e.id,a,i);for await(let e of o){if((e.type===`response.output_item.added`||e.type===`response.output_item.done`||e.type===`response.created`||e.type===`response.in_progress`||e.type===`response.completed`||e.type===`response.failed`||e.type===`response.workflow_event.completed`||e.type===`response.workflow_event.complete`)&&l(t=>{let n=HN(e),r=Math.floor(Date.now()/1e3),i=t.length>0&&t[t.length-1]._uiTimestamp||0,a=n===void 0?Math.max(r,i+1):Math.max(n,i);return[...t,{...e,_uiTimestamp:a}]}),t(e),e.type===`response.output_item.added`){let t=e.item;if(t&&t.type===`executor_action`&&t.executor_id&&t.id&&(R.current=t.id,L.current[t.id]||(L.current[t.id]=``)),t&&t.type===`message`&&`metadata`in t&&t.metadata?.source===`magentic`&&t.id&&(R.current=t.id,L.current[t.id]||(L.current[t.id]=``)),t&&t.type===`message`&&(!(`metadata`in t)||!t.metadata?.source)&&t.metadata?.workflow_output_kind!==`intermediate`&&`content`in t&&Array.isArray(t.content))for(let e of t.content){let t=e.type===`output_text`?e.text:e.type===`refusal`?e.refusal:void 0;if(t){E(e=>e&&e.length>0?e+` -`+t:t);try{let n=e.type===`output_text`?JSON.parse(t):void 0;typeof n==`object`&&n&&(z.current=n)}catch{}}}}if(e.type,e.type,e.type===`response.workflow_event.completed`&&`data`in e&&e.data){let t=e.data;if(t.event_type===`ExecutorInvokedEvent`&&t.executor_id){let e=`fallback_${t.executor_id}_${Date.now()}`;R.current=e,L.current[e]||(L.current[e]=``)}(t.event_type===`WorkflowCompletedEvent`||t.event_type===`WorkflowOutputEvent`)&&t.data&&(typeof t.data==`object`&&(z.current=t.data),R.current=null)}if((e.type===`response.output_text.delta`||e.type===`response.refusal.delta`)&&`delta`in e&&e.delta){let t=e.item_id||R.current;t&&(L.current[t]||(L.current[t]=``),L.current[t]+=e.delta)}if(e.type===`response.request_info.requested`){let t=e;P(e=>[...e,{request_id:t.request_id,request_data:t.request_data,request_schema:t.request_schema}]);let n=t.request_schema,r={};n.properties&&Object.entries(n.properties).forEach(([e,t])=>{let n=t;n.enum&&n.enum.length>0?r[e]=n.enum[0]:n.default!==void 0&&(r[e]=n.default)}),I(e=>({...e,[t.request_id]:r}))}if(e.type===`error`)break}d(!1)}catch(e){b_(e)?(console.log(`Workflow execution cancelled by user`),p(!0),P([]),I({})):console.error(`Workflow execution error:`,e),d(!1),M()}},[e,t,B,A,M]),we=(0,y.useCallback)(async(n,r)=>{if(e&&e.type===`workflow`){d(!1),p(!1),l([]),E(``),L.current={},R.current=null,z.current=null,P([]),I({}),t(`clear`);try{let i=await R_.runWorkflowSync(e.id,{input_data:n,conversation_id:B?.conversation_id||void 0,checkpoint_id:r});if(i.output){for(let e of i.output)if(e.type===`message`&&`content`in e&&Array.isArray(e.content))for(let t of e.content){let e=t.type===`output_text`?t.text:t.type===`refusal`?t.refusal:void 0;if(e){E(t=>t&&t.length>0?t+` +`+t:t);try{let n=e.type===`output_text`?JSON.parse(t):void 0;typeof n==`object`&&n&&(z.current=n)}catch{}}}}if(e.type,e.type,e.type===`response.workflow_event.completed`&&`data`in e&&e.data){let t=e.data;if(t.event_type===`ExecutorInvokedEvent`&&t.executor_id){let e=`fallback_${t.executor_id}_${Date.now()}`;R.current=e,L.current[e]||(L.current[e]=``)}(t.event_type===`WorkflowCompletedEvent`||t.event_type===`WorkflowOutputEvent`)&&t.data&&(typeof t.data==`object`&&(z.current=t.data),R.current=null)}if((e.type===`response.output_text.delta`||e.type===`response.refusal.delta`)&&`delta`in e&&e.delta){let t=e.item_id||R.current;t&&(L.current[t]||(L.current[t]=``),L.current[t]+=e.delta)}if(e.type===`response.request_info.requested`){let t=e;P(e=>[...e,{request_id:t.request_id,request_data:t.request_data,request_schema:t.request_schema}]);let n=t.request_schema,r={};n.properties&&Object.entries(n.properties).forEach(([e,t])=>{let n=t;n.enum&&n.enum.length>0?r[e]=n.enum[0]:n.default!==void 0&&(r[e]=n.default)}),I(e=>({...e,[t.request_id]:r}))}if(e.type===`error`)break}d(!1)}catch(e){T_(e)?(console.log(`Workflow execution cancelled by user`),p(!0),P([]),I({})):console.error(`Workflow execution error:`,e),d(!1),M()}},[e,t,B,A,M]),we=(0,y.useCallback)(async(n,r)=>{if(e&&e.type===`workflow`){d(!1),p(!1),l([]),E(``),L.current={},R.current=null,z.current=null,P([]),I({}),t(`clear`);try{let i=await Z_.runWorkflowSync(e.id,{input_data:n,conversation_id:B?.conversation_id||void 0,checkpoint_id:r});if(i.output){for(let e of i.output)if(e.type===`message`&&`content`in e&&Array.isArray(e.content))for(let t of e.content){let e=t.type===`output_text`?t.text:t.type===`refusal`?t.refusal:void 0;if(e){E(t=>t&&t.length>0?t+` -`+e:e);try{let n=t.type===`output_text`?JSON.parse(e):void 0;typeof n==`object`&&n&&(z.current=n)}catch{}}}}let a={type:`response.completed`,response:i,sequence_number:0};l([a]),t(a),await me()}catch(e){console.error(`Workflow execution error:`,e);let n={type:`response.failed`,response:{error:{message:e instanceof Error?e.message:`Workflow execution failed`}},sequence_number:0};l([n]),t(n)}}},[e,B,t,me]),Te=(0,y.useCallback)(async(e,t)=>{se?await Ce(e,t):await we(e,t)},[se,Ce,we]),Ee=(0,y.useCallback)(()=>{for(let e of N){let t=F[e.request_id]||{};if(!rb(e.request_schema,t))return!1}return!0},[N,F]),De=(0,y.useCallback)(async()=>{if(!e||e.type!==`workflow`)return;if(!Ee()){console.warn(`Cannot submit: Not all HIL forms are valid`);return}d(!0),P([]),I({});let n=A();try{let r={input_data:[{type:`message`,content:[{type:`workflow_hil_response`,responses:F}]}],conversation_id:B?.conversation_id||void 0},i=R_.streamWorkflowExecutionOpenAI(e.id,r,n),a=!1,o=[];for await(let e of i){if((e.type===`response.output_item.added`||e.type===`response.output_item.done`||e.type===`response.created`||e.type===`response.in_progress`||e.type===`response.completed`||e.type===`response.failed`||e.type===`response.workflow_event.completed`)&&l(t=>{let n=gN(e),r=Math.floor(Date.now()/1e3),i=t.length>0&&t[t.length-1]._uiTimestamp||0,a=n===void 0?Math.max(r,i+1):Math.max(n,i);return[...t,{...e,_uiTimestamp:a}]}),t(e),e.type===`response.request_info.requested`){let t=e;a=!0;let n={request_id:t.request_id,request_data:t.request_data,request_schema:t.request_schema};o.push(n);let r=t.request_schema,i={};r.properties&&Object.entries(r.properties).forEach(([e,t])=>{let n=t;n.enum&&n.enum.length>0?i[e]=n.enum[0]:n.default!==void 0&&(i[e]=n.default)}),I(e=>({...e,[t.request_id]:i}))}if(e.type===`response.output_item.added`){let t=e.item;if(t&&t.type===`executor_action`&&t.executor_id&&t.id&&(R.current=t.id,L.current[t.id]||(L.current[t.id]=``)),t&&t.type===`message`&&`content`in t&&Array.isArray(t.content)&&t.metadata?.workflow_output_kind!==`intermediate`)for(let e of t.content){let t=e.type===`output_text`?e.text:e.type===`refusal`?e.refusal:void 0;if(t){E(e=>e&&e.length>0?e+` +`+e:e);try{let n=t.type===`output_text`?JSON.parse(e):void 0;typeof n==`object`&&n&&(z.current=n)}catch{}}}}let a={type:`response.completed`,response:i,sequence_number:0};l([a]),t(a),await me()}catch(e){console.error(`Workflow execution error:`,e);let n={type:`response.failed`,response:{error:{message:e instanceof Error?e.message:`Workflow execution failed`}},sequence_number:0};l([n]),t(n)}}},[e,B,t,me]),Te=(0,y.useCallback)(async(e,t)=>{se?await Ce(e,t):await we(e,t)},[se,Ce,we]),Ee=(0,y.useCallback)(()=>{for(let e of N){let t=F[e.request_id]||{};if(!kb(e.request_schema,t))return!1}return!0},[N,F]),De=(0,y.useCallback)(async()=>{if(!e||e.type!==`workflow`)return;if(!Ee()){console.warn(`Cannot submit: Not all HIL forms are valid`);return}d(!0),P([]),I({});let n=A();try{let r={input_data:[{type:`message`,content:[{type:`workflow_hil_response`,responses:F}]}],conversation_id:B?.conversation_id||void 0},i=Z_.streamWorkflowExecutionOpenAI(e.id,r,n),a=!1,o=[];for await(let e of i){if((e.type===`response.output_item.added`||e.type===`response.output_item.done`||e.type===`response.created`||e.type===`response.in_progress`||e.type===`response.completed`||e.type===`response.failed`||e.type===`response.workflow_event.completed`)&&l(t=>{let n=HN(e),r=Math.floor(Date.now()/1e3),i=t.length>0&&t[t.length-1]._uiTimestamp||0,a=n===void 0?Math.max(r,i+1):Math.max(n,i);return[...t,{...e,_uiTimestamp:a}]}),t(e),e.type===`response.request_info.requested`){let t=e;a=!0;let n={request_id:t.request_id,request_data:t.request_data,request_schema:t.request_schema};o.push(n);let r=t.request_schema,i={};r.properties&&Object.entries(r.properties).forEach(([e,t])=>{let n=t;n.enum&&n.enum.length>0?i[e]=n.enum[0]:n.default!==void 0&&(i[e]=n.default)}),I(e=>({...e,[t.request_id]:i}))}if(e.type===`response.output_item.added`){let t=e.item;if(t&&t.type===`executor_action`&&t.executor_id&&t.id&&(R.current=t.id,L.current[t.id]||(L.current[t.id]=``)),t&&t.type===`message`&&`content`in t&&Array.isArray(t.content)&&t.metadata?.workflow_output_kind!==`intermediate`)for(let e of t.content){let t=e.type===`output_text`?e.text:e.type===`refusal`?e.refusal:void 0;if(t){E(e=>e&&e.length>0?e+` -`+t:t);try{let n=e.type===`output_text`?JSON.parse(t):void 0;typeof n==`object`&&n&&(z.current=n)}catch{}}}}if((e.type===`response.output_text.delta`||e.type===`response.refusal.delta`)&&`delta`in e&&e.delta){let t=R.current;t&&(L.current[t]||(L.current[t]=``),L.current[t]+=e.delta)}e.type===`response.completed`&&await me(),e.type===`response.failed`&&await me()}a&&P(o),d(!1),await me()}catch(e){b_(e)?(console.log(`HIL submission cancelled by user`),p(!0)):console.error(`HIL submission error:`,e),d(!1),M(),await me()}},[e,F,t,B,Ee,A,M,me]);return i?(0,K.jsx)(Yy,{message:`Loading workflow...`,description:`Fetching workflow structure and configuration`}):o?(0,K.jsx)(`div`,{className:`flex items-center justify-center h-full`,children:(0,K.jsxs)(`div`,{className:`text-center max-w-md p-6`,children:[(0,K.jsx)(`div`,{className:`text-red-500 mb-4`,children:(0,K.jsx)(`svg`,{className:`w-16 h-16 mx-auto`,fill:`none`,stroke:`currentColor`,viewBox:`0 0 24 24`,children:(0,K.jsx)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,d:`M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z`})})}),(0,K.jsx)(`h3`,{className:`text-lg font-semibold mb-2`,children:`Failed to Load Workflow`}),(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground mb-4`,children:o}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`This may not be a valid workflow entity. Check the file contains a workflow export.`})]})}):!n?.workflow_dump&&!xe.length?(0,K.jsx)(Yy,{message:`Initializing workflow...`,description:`Setting up workflow execution environment`}):(0,K.jsxs)(`div`,{className:`workflow-view flex flex-col h-full`,children:[(0,K.jsxs)(`div`,{className:`border-b pb-2 p-4 flex-shrink-0`,children:[(0,K.jsxs)(`div`,{className:`flex flex-col lg:flex-row lg:items-center lg:justify-between gap-3 mb-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0`,children:[(0,K.jsx)(`h2`,{className:`font-semibold text-sm truncate`,children:(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(uf,{className:`h-4 w-4 flex-shrink-0`}),(0,K.jsx)(`span`,{className:`truncate`,children:e.name||e.id})]})}),(0,K.jsx)(q,{variant:`ghost`,size:`sm`,onClick:()=>_(!0),className:`h-6 w-6 p-0 flex-shrink-0`,title:`View workflow details`,children:(0,K.jsx)(td,{className:`h-4 w-4`})}),e.source!==`in_memory`&&(0,K.jsx)(q,{variant:`ghost`,size:`sm`,onClick:fe,disabled:x,className:`h-6 w-6 p-0 flex-shrink-0`,title:x?`Reloading...`:`Reload entity code (hot reload)`,children:(0,K.jsx)(Nd,{className:`h-4 w-4 ${x?`animate-spin`:``}`})})]}),n&&(0,K.jsxs)(`div`,{className:`flex flex-col sm:flex-row items-stretch sm:items-center gap-2 flex-shrink-0`,children:[(0,K.jsxs)(Ny,{value:B?.conversation_id||``,onValueChange:ge,disabled:V,children:[(0,K.jsx)(Fy,{className:`w-full sm:w-64`,children:(0,K.jsx)(Py,{placeholder:V?`Loading...`:ee.length===0?`No checkpoint storages`:`Select checkpoint storage`,children:B&&(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-xs`,children:[(0,K.jsx)(`span`,{className:`truncate`,children:B.metadata.name||`Checkpoint Storage ${B.conversation_id.slice(-8)}`}),B.metadata.checkpoint_summary&&B.metadata.checkpoint_summary.count>0&&(0,K.jsxs)(`div`,{className:`flex items-center gap-1 flex-shrink-0`,children:[(0,K.jsx)(Ft,{variant:`secondary`,className:`h-4 px-1.5 text-[10px]`,children:B.metadata.checkpoint_summary.count}),B.metadata.checkpoint_summary.has_pending_hil&&(0,K.jsx)(Ft,{variant:`secondary`,className:`h-4 px-1.5 text-[10px]`,children:`HIL`})]})]})})}),(0,K.jsx)(Iy,{children:ee.map(e=>(0,K.jsx)(Ly,{value:e.conversation_id,children:(0,K.jsxs)(`div`,{className:`flex items-center justify-between w-full gap-2`,children:[(0,K.jsx)(`span`,{className:`truncate`,children:e.metadata.name||`Checkpoint Storage ${e.conversation_id.slice(-8)}`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-1 flex-shrink-0`,children:[e.created_at&&(0,K.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:new Date(e.created_at*1e3).toLocaleTimeString()}),e.metadata.checkpoint_summary&&e.metadata.checkpoint_summary.count>0&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(Ft,{variant:`secondary`,className:`h-4 px-1.5 text-[10px]`,children:e.metadata.checkpoint_summary.count}),e.metadata.checkpoint_summary.has_pending_hil&&(0,K.jsx)(Ft,{variant:`secondary`,className:`h-4 px-1.5 text-[10px]`,children:`HIL`})]})]})]})},e.conversation_id))})]}),(0,K.jsx)(q,{variant:`ghost`,size:`sm`,onClick:()=>b(!0),disabled:!B,className:`h-9 w-9 p-0 flex-shrink-0`,title:`View checkpoint details`,children:(0,K.jsx)(td,{className:`h-4 w-4`})}),(0,K.jsx)(q,{variant:`ghost`,size:`sm`,onClick:ve,disabled:!B||V,className:`h-9 w-9 p-0`,title:`Delete current session`,children:(0,K.jsx)(tf,{className:`h-4 w-4 `})}),(0,K.jsx)(q,{variant:`ghost`,size:`sm`,onClick:_e,disabled:V,className:`h-9 px-3`,title:`New session`,children:(0,K.jsx)(jd,{className:`h-4 w-4`})}),C&&(0,K.jsx)(xb,{inputSchema:n.input_schema,onRun:Te,onCancel:j,isSubmitting:u,isCancelling:k,workflowState:u?`running`:xe.length>0?`completed`:`ready`,checkpoints:D,showCheckpoints:!1})]})]}),e.description&&(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:e.description})]}),N.length>0&&(0,K.jsx)(`div`,{className:`bg-orange-100 dark:bg-orange-950/30 border-b border-orange-300 dark:border-orange-800 px-4 py-2`,children:(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(hu,{className:`w-4 h-4 text-orange-600 dark:text-orange-400`}),(0,K.jsxs)(`span`,{className:`text-sm font-medium text-orange-900 dark:text-orange-100`,children:[`Workflow is waiting for your input (`,N.length,` `,`request`,N.length>1?`s`:``,`)`]})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[N.length>1&&(0,K.jsxs)(q,{size:`sm`,onClick:De,disabled:!Ee()||u,className:`gap-1`,children:[(0,K.jsx)(Ud,{className:`w-3.5 h-3.5`}),`Submit All`]}),(0,K.jsx)(q,{size:`sm`,variant:`ghost`,onClick:()=>{document.querySelector(`[data-hil-form]`)?.scrollIntoView({behavior:`smooth`,block:`center`})},className:`text-orange-700 hover:text-orange-900 dark:text-orange-400 dark:hover:text-orange-200`,children:`Jump to input →`})]})]})}),(0,K.jsxs)(`div`,{className:`flex-1 min-h-0 flex gap-0`,children:[(0,K.jsx)(`div`,{className:`flex-1 min-w-0 transition-all duration-300`,children:n?.workflow_dump&&(0,K.jsx)(oN,{workflowDump:n.workflow_dump,events:be,isStreaming:u,onNodeSelect:ye,className:`h-full`,viewOptions:U,onToggleViewOption:de,layoutDirection:le,onLayoutDirectionChange:ue,timelineVisible:!0})}),(0,K.jsx)(`div`,{className:`flex-shrink-0 overflow-hidden transition-all duration-300 ease-out border-l`,style:{width:C?`2.5rem`:`28rem`},children:C?(0,K.jsxs)(`div`,{className:`h-full w-10 bg-background flex flex-col items-center py-2 cursor-pointer hover:bg-accent/50 transition-colors`,onClick:()=>w(!1),title:`Expand timeline`,children:[(0,K.jsx)(`div`,{className:`h-8 w-8 flex items-center justify-center`,children:(0,K.jsx)(lu,{className:`h-4 w-4 text-muted-foreground`})}),(0,K.jsxs)(`div`,{className:`flex-1 flex flex-col items-center justify-center gap-2 pointer-events-none`,children:[(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground select-none`,style:{writingMode:`vertical-rl`,transform:`rotate(180deg)`},children:`Execution Timeline`}),be.length>0&&(0,K.jsx)(`div`,{className:`bg-primary text-primary-foreground rounded-full w-5 h-5 flex items-center justify-center ${u?`animate-pulse`:``}`,style:{fontSize:`10px`},children:be.length})]})]}):(0,K.jsxs)(`div`,{className:`w-[28rem] h-full flex flex-col`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between p-2 border-b`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`h3`,{className:`text-sm font-medium`,children:`Execution Timeline`}),be.length>0&&(0,K.jsx)(`div`,{className:`bg-primary text-primary-foreground rounded-full px-2 h-5 flex items-center justify-center ${u?`animate-pulse`:``}`,style:{fontSize:`11px`,minWidth:`20px`},children:be.length})]}),(0,K.jsx)(q,{variant:`ghost`,size:`sm`,onClick:()=>w(!0),className:`h-8 w-8 p-0`,title:`Minimize timeline`,children:(0,K.jsx)(du,{className:`h-4 w-4`})})]}),(0,K.jsx)(`div`,{className:`flex-1 min-h-0 overflow-hidden`,children:(0,K.jsx)(hN,{events:be,itemOutputs:L.current,currentExecutorId:Se[Se.length-1]||null,isStreaming:u,onExecutorClick:ye,selectedExecutorId:m,workflowResult:T,pendingHilRequests:N,hilResponses:F,onHilResponseChange:(e,t)=>{I(n=>({...n,[e]:t}))},onHilSubmit:De,isSubmittingHil:u,inputSchema:n?.input_schema,onRun:(e,t)=>{Te(e,t)},onCancel:j,isCancelling:k,workflowState:u?`running`:f?`cancelled`:xe.length>0?`completed`:`ready`,wasCancelled:f,checkpoints:D})})]})})]}),(0,K.jsx)(cN,{workflow:e,open:g,onOpenChange:_}),(0,K.jsx)(lN,{session:B||null,checkpoints:D,open:v,onOpenChange:b})]})}function vN({message:e,type:t=`info`,duration:n=4e3,onClose:r}){let[i,a]=(0,y.useState)(!0);(0,y.useEffect)(()=>{let e=setTimeout(()=>{a(!1),setTimeout(r,300)},n);return()=>clearTimeout(e)},[n,r]);let o={info:`bg-primary/10 border-primary/20`,success:`bg-green-50 dark:bg-green-950 border-green-200 dark:border-green-800`,warning:`bg-orange-50 dark:bg-orange-950 border-orange-200 dark:border-orange-800`,error:`bg-red-50 dark:bg-red-950 border-red-200 dark:border-red-800`}[t],s={info:`text-primary`,success:`text-green-800 dark:text-green-200`,warning:`text-orange-800 dark:text-orange-200`,error:`text-red-800 dark:text-red-200`}[t];return(0,K.jsxs)(`div`,{className:`fixed top-4 right-4 z-50 flex items-start gap-3 p-4 rounded-lg border shadow-lg max-w-md transition-all duration-300 ${i?`opacity-100 translate-x-0`:`opacity-0 translate-x-4`} ${o}`,children:[(0,K.jsx)(`p`,{className:`text-sm flex-1 ${s}`,children:e}),(0,K.jsx)(`button`,{onClick:()=>{a(!1),setTimeout(r,300)},className:`flex-shrink-0 hover:opacity-70 transition-opacity ${s}`,children:(0,K.jsx)(mf,{className:`h-4 w-4`})})]})}function yN({toasts:e,onRemove:t}){return(0,K.jsx)(`div`,{className:`fixed top-4 right-4 z-50 flex flex-col gap-2`,children:e.map(e=>(0,K.jsx)(vN,{message:e.message,type:e.type,duration:e.duration,onClose:()=>t(e.id)},e.id))})}vp();var bN=50;function xN(){let[e,t]=(0,y.useState)(!1),[n,r]=(0,y.useState)(``),[i,a]=(0,y.useState)(!1),[o,s]=(0,y.useState)(``),c=(0,y.useRef)(null),l=(0,y.useRef)(0),u=Q(e=>e.agents),d=Q(e=>e.workflows),f=Q(e=>e.entities),p=Q(e=>e.selectedAgent),m=Q(e=>e.azureDeploymentEnabled),h=Q(e=>e.isLoadingEntities),g=Q(e=>e.entityError),_=Q(e=>e.oaiMode),v=Q(e=>e.uiMode),b=Q(e=>e.setAgents),x=Q(e=>e.setWorkflows),S=Q(e=>e.setEntities),C=Q(e=>e.selectEntity),w=Q(e=>e.updateAgent),T=Q(e=>e.updateWorkflow),E=Q(e=>e.setIsLoadingEntities),D=Q(e=>e.setEntityError),O=Q(e=>e.showDebugPanel),k=Q(e=>e.debugPanelMinimized),A=Q(e=>e.debugPanelWidth),j=Q(e=>e.debugEvents),M=Q(e=>e.isResizing),N=Q(e=>e.setShowDebugPanel),P=Q(e=>e.setDebugPanelMinimized),F=Q(e=>e.setDebugPanelWidth),I=Q(e=>e.addDebugEvent),L=Q(e=>e.clearDebugEvents),R=Q(e=>e.setIsResizing),z=Q(e=>e.showAboutModal),B=Q(e=>e.showGallery),ee=Q(e=>e.showDeployModal),V=Q(e=>e.showEntityNotFoundToast),H=Q(e=>e.setShowAboutModal),te=Q(e=>e.setShowGallery),ne=Q(e=>e.setShowDeployModal),re=Q(e=>e.setShowEntityNotFoundToast),ie=Q(e=>e.toasts),ae=Q(e=>e.addToast),oe=Q(e=>e.removeToast);(0,y.useEffect)(()=>{(async()=>{try{let e=await R_.getMeta();if(e.auth_required&&(t(!0),!R_.getAuthToken())){D(`UNAUTHORIZED`),E(!1);return}let n={instrumentation:e.capabilities.instrumentation??e.capabilities.tracing??!1,trace_retrieval:e.capabilities.trace_retrieval??!1,openai_proxy:e.capabilities.openai_proxy,deployment:e.capabilities.deployment};Q.getState().setServerMeta({uiMode:e.ui_mode,runtime:e.runtime,capabilities:n,authRequired:e.auth_required,version:e.version});let{entities:r,agents:i,workflows:a}=await R_.getEntities();S(r),b(i),x(a);let o=new URLSearchParams(window.location.search).get(`entity_id`),s;if(o&&(s=r.find(e=>e.id===o),s||re(!0)),!s){if(s=r.length>0?r[0]:void 0,s){let e=new URL(window.location.href);e.searchParams.set(`entity_id`,s.id),window.history.replaceState({},``,e)}else{let e=new URL(window.location.href);e.searchParams.delete(`entity_id`),window.history.replaceState({},``,e)}}if(s&&(C(s),s.metadata?.lazy_loaded===!1))try{if(s.type===`agent`){let e=await R_.getAgentInfo(s.id);w(e)}else{let e=await R_.getWorkflowInfo(s.id);T(e)}}catch(e){console.error(`Failed to load full info for first entity ${s.id}:`,e);let t=e instanceof Error?e.message:String(e);ae({type:`error`,message:`Failed to load "${s.id}": ${t}`})}E(!1)}catch(e){console.error(`Failed to load agents/workflows:`,e);let n=e instanceof Error?e.message:`Failed to load data`;n===`UNAUTHORIZED`&&t(!0),D(n),E(!1)}})()},[b,x,C,w,T,E,D,re,ae,S]);let se=(0,y.useCallback)(async()=>{if(n.trim()){a(!0),s(``);try{R_.setAuthToken(n.trim()),await R_.getEntities(),window.location.reload()}catch(e){R_.clearAuthToken(),a(!1);let t=e instanceof Error?e.message:`Unknown error`;s(t===`UNAUTHORIZED`?`Invalid token. Please check and try again.`:`Failed to connect: ${t}`)}}},[n]);(0,y.useEffect)(()=>{if(_.enabled&&p?.type===`workflow`){let e=u[0];e&&C(e)}},[_.enabled,p,u,C]);let U=(0,y.useCallback)(e=>{e.preventDefault(),R(!0);let t=e.clientX,n=A,r=e=>{let r=t-e.clientX,i=Math.max(200,Math.min(window.innerWidth*.5,n+r));F(i)},i=()=>{R(!1),document.removeEventListener(`mousemove`,r),document.removeEventListener(`mouseup`,i)};document.addEventListener(`mousemove`,r),document.addEventListener(`mouseup`,i)},[A]),ce=(0,y.useCallback)(async e=>{if(C(e),e.metadata?.lazy_loaded===!1)try{if(e.type===`agent`){let t=await R_.getAgentInfo(e.id);w(t)}else{let t=await R_.getWorkflowInfo(e.id);T(t)}}catch(t){console.error(`Failed to load full info for ${e.id}:`,t);let n=t instanceof Error?t.message:String(t);ae({type:`error`,message:`Failed to load "${e.id}": ${n}`})}},[C,w,T,ae]),le=(0,y.useCallback)(()=>{let e=c.current;e&&(c.current=null,l.current=performance.now(),I(e))},[I]),ue=(0,y.useCallback)(e=>{if(e===`clear`){c.current=null,L();return}if(e.type===`response.output_text.delta`&&`delta`in e&&typeof e.delta==`string`&&e.delta.length>0){let t=c.current;t!==null&&t.item_id===e.item_id&&t.output_index===e.output_index&&t.content_index===e.content_index&&t?c.current={...t,delta:t.delta+e.delta,sequence_number:e.sequence_number??t.sequence_number}:(le(),c.current={...e}),performance.now()-l.current>=bN&&le();return}le(),I(e)},[I,L,le]);if(h)return(0,K.jsxs)(`div`,{className:`h-screen flex flex-col bg-background`,children:[(0,K.jsxs)(`header`,{className:`flex h-14 items-center gap-4 border-b px-4`,children:[(0,K.jsx)(`div`,{className:`w-64 h-9 bg-muted animate-pulse rounded-md`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2 ml-auto`,children:[(0,K.jsx)(`div`,{className:`w-8 h-8 bg-muted animate-pulse rounded-md`}),(0,K.jsx)(`div`,{className:`w-8 h-8 bg-muted animate-pulse rounded-md`})]})]}),(0,K.jsx)(`div`,{className:`flex-1 flex items-center justify-center`,children:(0,K.jsxs)(`div`,{className:`text-center`,children:[(0,K.jsx)(`div`,{className:`text-lg font-medium`,children:`Initializing DevUI...`}),(0,K.jsx)(`div`,{className:`text-sm text-muted-foreground mt-2`,children:`Loading agents and workflows from your configuration`})]})})]});if(g){let t=R_.getBaseUrl(),a=g===`UNAUTHORIZED`||e,s=`8080`;try{if(t){let e=new URL(t);s=e.port||(e.protocol===`https:`?`443`:`80`)}}catch{}return(0,K.jsxs)(`div`,{className:`h-screen flex flex-col bg-background`,children:[(0,K.jsx)(yp,{agents:[],workflows:[],entities:[],selectedItem:void 0,onSelect:()=>{},isLoading:!1,onSettingsClick:()=>H(!0)}),(0,K.jsx)(`div`,{className:`flex-1 flex items-center justify-center p-8`,children:(0,K.jsxs)(`div`,{className:`text-center space-y-6 max-w-2xl`,children:[(0,K.jsx)(`div`,{className:`flex justify-center`,children:(0,K.jsx)(`div`,{className:`rounded-full bg-muted p-4 animate-pulse`,children:a?(0,K.jsx)(dd,{className:`h-12 w-12 text-muted-foreground`}):(0,K.jsx)(Gd,{className:`h-12 w-12 text-muted-foreground`})})}),(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsx)(`h2`,{className:`text-2xl font-semibold text-foreground`,children:a?`Authentication Required`:`Can't Connect to Backend`}),(0,K.jsx)(`p`,{className:`text-muted-foreground text-base`,children:a?`This backend requires a bearer token to access.`:`No worries! Just start the DevUI backend server and you'll be good to go.`})]}),a?(0,K.jsxs)(`div`,{className:`space-y-4`,children:[(0,K.jsxs)(`div`,{className:`text-left bg-muted/50 rounded-lg p-4 space-y-3`,children:[(0,K.jsx)(`p`,{className:`text-sm font-medium text-foreground`,children:`Enter Authentication Token`}),(0,K.jsx)(Fg,{type:`password`,placeholder:`Paste token from server logs`,value:n,onChange:e=>r(e.target.value),onKeyDown:e=>{e.key===`Enter`&&!i&&se()},disabled:i,className:`font-mono text-sm`}),(0,K.jsx)(q,{onClick:se,disabled:!n.trim()||i,className:`w-full`,children:i?`Verifying...`:`Connect`}),o&&(0,K.jsx)(`p`,{className:`text-sm text-red-600 dark:text-red-400 text-center`,children:o})]}),(0,K.jsxs)(`details`,{className:`text-left group`,children:[(0,K.jsxs)(`summary`,{className:`text-sm text-muted-foreground cursor-pointer hover:text-foreground flex items-center gap-2 justify-center`,children:[(0,K.jsx)(su,{className:`h-4 w-4 transition-transform group-open:rotate-180`}),`Where do I find the token?`]}),(0,K.jsxs)(`div`,{className:`mt-3 text-left bg-muted/30 rounded-lg p-3 space-y-2`,children:[(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Look for this in your DevUI server startup logs:`}),(0,K.jsxs)(`code`,{className:`block bg-background px-2 py-1 rounded text-xs font-mono text-foreground`,children:[`🔑 DEV TOKEN (localhost only, shown once):`,(0,K.jsx)(`br`,{}),`\xA0\xA0 abc123xyz...`]})]})]})]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(`div`,{className:`space-y-3`,children:[(0,K.jsxs)(`div`,{className:`text-left bg-muted/50 rounded-lg p-4 space-y-3`,children:[(0,K.jsx)(`p`,{className:`text-sm font-medium text-foreground`,children:`Start the backend:`}),(0,K.jsxs)(`code`,{className:`block bg-background px-3 py-2 rounded border text-sm font-mono text-foreground`,children:[`devui ./agents --port `,s]}),(0,K.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`Or launch programmatically with`,` `,(0,K.jsx)(`code`,{className:`text-xs`,children:`serve(entities=[agent])`})]})]}),(0,K.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`Default:`,` `,(0,K.jsx)(`span`,{className:`font-mono`,children:t})]})]}),g&&(0,K.jsxs)(`details`,{className:`text-left group`,children:[(0,K.jsxs)(`summary`,{className:`text-sm text-muted-foreground cursor-pointer hover:text-foreground flex items-center gap-2`,children:[(0,K.jsx)(su,{className:`h-4 w-4 transition-transform group-open:rotate-180`}),`Error details`]}),(0,K.jsx)(`p`,{className:`mt-2 text-xs text-muted-foreground font-mono bg-muted/30 p-3 rounded border`,children:g})]}),(0,K.jsx)(q,{onClick:()=>window.location.reload(),variant:`default`,className:`mt-2`,children:`Retry Connection`})]})]})}),(0,K.jsx)(i_,{open:z,onOpenChange:H})]})}return(0,K.jsxs)(`div`,{className:`h-screen flex flex-col bg-background max-h-screen`,children:[(0,K.jsx)(yp,{agents:u,workflows:d,entities:f,selectedItem:p,onSelect:ce,onBrowseGallery:()=>te(!0),isLoading:h,onSettingsClick:()=>H(!0)}),(0,K.jsx)(`div`,{className:`flex flex-1 overflow-hidden`,children:B?(0,K.jsx)(`div`,{className:`flex-1 w-full`,children:(0,K.jsx)(nv,{variant:`route`,onClose:()=>te(!1),hasExistingEntities:u.length>0||d.length>0})}):u.length===0&&d.length===0?(0,K.jsx)(nv,{variant:`inline`}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`div`,{className:`flex-1 min-w-0`,children:p?p.type===`agent`?(0,K.jsx)(Jy,{selectedAgent:p,onDebugEvent:ue}):(0,K.jsx)(_N,{selectedWorkflow:p,onDebugEvent:ue}):(0,K.jsx)(`div`,{className:`flex-1 flex items-center justify-center text-muted-foreground`,children:`Select an agent or workflow to get started.`})}),v===`developer`&&O?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`div`,{className:`w-1 cursor-col-resize flex-shrink-0 relative group transition-colors duration-200 ease-in-out ${M?`bg-primary/40`:`bg-border hover:bg-primary/20`}`,onMouseDown:U,children:(0,K.jsx)(`div`,{className:`absolute inset-y-0 -left-2 -right-2 flex items-center justify-center`,children:(0,K.jsx)(`div`,{className:`h-12 w-1 rounded-full transition-all duration-200 ease-in-out ${M?`bg-primary shadow-lg shadow-primary/25`:`bg-primary/30 group-hover:bg-primary group-hover:shadow-md group-hover:shadow-primary/20`}`})})}),(0,K.jsx)(`div`,{className:`flex-shrink-0 flex flex-col h-[calc(100vh-3.7rem)]`,style:{width:k?`2.5rem`:`${A}px`},children:k?(0,K.jsxs)(`div`,{className:`h-full w-10 bg-background border-l flex flex-col items-center py-2 cursor-pointer hover:bg-accent/50 transition-colors`,onClick:()=>P(!1),title:`Expand debug panel`,children:[(0,K.jsx)(`div`,{className:`h-8 w-8 flex items-center justify-center`,children:(0,K.jsx)(lu,{className:`h-4 w-4 text-muted-foreground`})}),(0,K.jsxs)(`div`,{className:`flex-1 flex flex-col items-center justify-center gap-2 pointer-events-none`,children:[(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground select-none`,style:{writingMode:`vertical-rl`,transform:`rotate(180deg)`},children:`Debug Panel`}),j.length>0&&(0,K.jsx)(`div`,{className:`bg-primary text-primary-foreground rounded-full w-5 h-5 flex items-center justify-center`,style:{fontSize:`10px`},children:j.length})]})]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(Dg,{events:j,isStreaming:!1,onMinimize:()=>P(!0)}),(0,K.jsx)(`div`,{className:`border-t bg-muted/30 px-3 py-2.5 flex-shrink-0`,children:(0,K.jsxs)(q,{onClick:()=>ne(!0),className:`w-full`,variant:`outline`,size:`sm`,children:[(0,K.jsx)(Fd,{className:`h-3 w-3 mr-2 flex-shrink-0`}),(0,K.jsx)(`span`,{className:`truncate text-xs`,children:m&&p?.deployment_supported?`Deploy to Azure`:`Deployment Guide`})]})})]})})]}):v===`developer`?(0,K.jsx)(`div`,{className:`flex-shrink-0`,children:(0,K.jsx)(q,{variant:`ghost`,size:`sm`,onClick:()=>N(!0),className:`h-full w-10 rounded-none border-l`,title:`Show debug panel`,children:(0,K.jsx)(Td,{className:`h-4 w-4`})})}):null]})}),(0,K.jsx)(i_,{open:z,onOpenChange:H}),(0,K.jsx)(z_,{open:ee,onClose:()=>ne(!1),agentName:p?.name,entity:p}),V&&(0,K.jsx)(vN,{message:`Entity not found. Showing first available entity instead.`,type:`info`,onClose:()=>re(!1)}),(0,K.jsx)(yN,{toasts:ie,onRemove:oe})]})}function SN({children:e,attribute:t=`class`,defaultTheme:n=`dark`,enableSystem:r=!0,disableTransitionOnChange:i=!0,...a}){return(0,K.jsx)(Nf,{attribute:t,defaultTheme:n,enableSystem:r,disableTransitionOnChange:i,...a,children:e})}v_(),(0,b.createRoot)(document.getElementById(`root`)).render((0,K.jsx)(y.StrictMode,{children:(0,K.jsx)(SN,{attribute:`class`,defaultTheme:`dark`,enableSystem:!0,disableTransitionOnChange:!0,children:(0,K.jsx)(xN,{})})})); +`+t:t);try{let n=e.type===`output_text`?JSON.parse(t):void 0;typeof n==`object`&&n&&(z.current=n)}catch{}}}}if((e.type===`response.output_text.delta`||e.type===`response.refusal.delta`)&&`delta`in e&&e.delta){let t=R.current;t&&(L.current[t]||(L.current[t]=``),L.current[t]+=e.delta)}e.type===`response.completed`&&await me(),e.type===`response.failed`&&await me()}a&&P(o),d(!1),await me()}catch(e){T_(e)?(console.log(`HIL submission cancelled by user`),p(!0)):console.error(`HIL submission error:`,e),d(!1),M(),await me()}},[e,F,t,B,Ee,A,M,me]);return i?(0,K.jsx)(xb,{message:`Loading workflow...`,description:`Fetching workflow structure and configuration`}):o?(0,K.jsx)(`div`,{className:`flex items-center justify-center h-full`,children:(0,K.jsxs)(`div`,{className:`text-center max-w-md p-6`,children:[(0,K.jsx)(`div`,{className:`text-red-500 mb-4`,children:(0,K.jsx)(`svg`,{className:`w-16 h-16 mx-auto`,fill:`none`,stroke:`currentColor`,viewBox:`0 0 24 24`,children:(0,K.jsx)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,d:`M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z`})})}),(0,K.jsx)(`h3`,{className:`text-lg font-semibold mb-2`,children:`Failed to Load Workflow`}),(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground mb-4`,children:o}),(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`This may not be a valid workflow entity. Check the file contains a workflow export.`})]})}):!n?.workflow_dump&&!xe.length?(0,K.jsx)(xb,{message:`Initializing workflow...`,description:`Setting up workflow execution environment`}):(0,K.jsxs)(`div`,{className:`workflow-view flex flex-col h-full`,children:[(0,K.jsxs)(`div`,{className:`border-b pb-2 p-4 flex-shrink-0`,children:[(0,K.jsxs)(`div`,{className:`flex flex-col lg:flex-row lg:items-center lg:justify-between gap-3 mb-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0`,children:[(0,K.jsx)(`h2`,{className:`font-semibold text-sm truncate`,children:(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(mf,{className:`h-4 w-4 flex-shrink-0`}),(0,K.jsx)(`span`,{className:`truncate`,children:e.name||e.id})]})}),(0,K.jsx)(q,{variant:`ghost`,size:`sm`,onClick:()=>_(!0),className:`h-6 w-6 p-0 flex-shrink-0`,title:`View workflow details`,children:(0,K.jsx)(td,{className:`h-4 w-4`})}),e.source!==`in_memory`&&(0,K.jsx)(q,{variant:`ghost`,size:`sm`,onClick:fe,disabled:x,className:`h-6 w-6 p-0 flex-shrink-0`,title:x?`Reloading...`:`Reload entity code (hot reload)`,children:(0,K.jsx)(Ld,{className:`h-4 w-4 ${x?`animate-spin`:``}`})})]}),n&&(0,K.jsxs)(`div`,{className:`flex flex-col sm:flex-row items-stretch sm:items-center gap-2 flex-shrink-0`,children:[(0,K.jsxs)(tb,{value:B?.conversation_id||``,onValueChange:ge,disabled:V,children:[(0,K.jsx)(rb,{className:`w-full sm:w-64`,children:(0,K.jsx)(nb,{placeholder:V?`Loading...`:ee.length===0?`No checkpoint storages`:`Select checkpoint storage`,children:B&&(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-xs`,children:[(0,K.jsx)(`span`,{className:`truncate`,children:B.metadata.name||`Checkpoint Storage ${B.conversation_id.slice(-8)}`}),B.metadata.checkpoint_summary&&B.metadata.checkpoint_summary.count>0&&(0,K.jsxs)(`div`,{className:`flex items-center gap-1 flex-shrink-0`,children:[(0,K.jsx)(Ft,{variant:`secondary`,className:`h-4 px-1.5 text-[10px]`,children:B.metadata.checkpoint_summary.count}),B.metadata.checkpoint_summary.has_pending_hil&&(0,K.jsx)(Ft,{variant:`secondary`,className:`h-4 px-1.5 text-[10px]`,children:`HIL`})]})]})})}),(0,K.jsx)(ib,{children:ee.map(e=>(0,K.jsx)(ab,{value:e.conversation_id,children:(0,K.jsxs)(`div`,{className:`flex items-center justify-between w-full gap-2`,children:[(0,K.jsx)(`span`,{className:`truncate`,children:e.metadata.name||`Checkpoint Storage ${e.conversation_id.slice(-8)}`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-1 flex-shrink-0`,children:[e.created_at&&(0,K.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:new Date(e.created_at*1e3).toLocaleTimeString()}),e.metadata.checkpoint_summary&&e.metadata.checkpoint_summary.count>0&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(Ft,{variant:`secondary`,className:`h-4 px-1.5 text-[10px]`,children:e.metadata.checkpoint_summary.count}),e.metadata.checkpoint_summary.has_pending_hil&&(0,K.jsx)(Ft,{variant:`secondary`,className:`h-4 px-1.5 text-[10px]`,children:`HIL`})]})]})]})},e.conversation_id))})]}),(0,K.jsx)(q,{variant:`ghost`,size:`sm`,onClick:()=>b(!0),disabled:!B,className:`h-9 w-9 p-0 flex-shrink-0`,title:`View checkpoint details`,children:(0,K.jsx)(td,{className:`h-4 w-4`})}),(0,K.jsx)(q,{variant:`ghost`,size:`sm`,onClick:ve,disabled:!B||V,className:`h-9 w-9 p-0`,title:`Delete current session`,children:(0,K.jsx)(of,{className:`h-4 w-4 `})}),(0,K.jsx)(q,{variant:`ghost`,size:`sm`,onClick:_e,disabled:V,className:`h-9 px-3`,title:`New session`,children:(0,K.jsx)(Fd,{className:`h-4 w-4`})}),C&&(0,K.jsx)(qb,{inputSchema:n.input_schema,onRun:Te,onCancel:j,isSubmitting:u,isCancelling:k,workflowState:u?`running`:xe.length>0?`completed`:`ready`,checkpoints:D,showCheckpoints:!1})]})]}),e.description&&(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:e.description})]}),N.length>0&&(0,K.jsx)(`div`,{className:`bg-orange-100 dark:bg-orange-950/30 border-b border-orange-300 dark:border-orange-800 px-4 py-2`,children:(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(hu,{className:`w-4 h-4 text-orange-600 dark:text-orange-400`}),(0,K.jsxs)(`span`,{className:`text-sm font-medium text-orange-900 dark:text-orange-100`,children:[`Workflow is waiting for your input (`,N.length,` `,`request`,N.length>1?`s`:``,`)`]})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[N.length>1&&(0,K.jsxs)(q,{size:`sm`,onClick:De,disabled:!Ee()||u,className:`gap-1`,children:[(0,K.jsx)(qd,{className:`w-3.5 h-3.5`}),`Submit All`]}),(0,K.jsx)(q,{size:`sm`,variant:`ghost`,onClick:()=>{document.querySelector(`[data-hil-form]`)?.scrollIntoView({behavior:`smooth`,block:`center`})},className:`text-orange-700 hover:text-orange-900 dark:text-orange-400 dark:hover:text-orange-200`,children:`Jump to input →`})]})]})}),(0,K.jsxs)(`div`,{className:`flex-1 min-h-0 flex gap-0`,children:[(0,K.jsx)(`div`,{className:`flex-1 min-w-0 transition-all duration-300`,children:n?.workflow_dump&&(0,K.jsx)(MN,{workflowDump:n.workflow_dump,events:be,isStreaming:u,onNodeSelect:ye,className:`h-full`,viewOptions:U,onToggleViewOption:de,layoutDirection:le,onLayoutDirectionChange:ue,timelineVisible:!0})}),(0,K.jsx)(`div`,{className:`flex-shrink-0 overflow-hidden transition-all duration-300 ease-out border-l`,style:{width:C?`2.5rem`:`28rem`},children:C?(0,K.jsxs)(`div`,{className:`h-full w-10 bg-background flex flex-col items-center py-2 cursor-pointer hover:bg-accent/50 transition-colors`,onClick:()=>w(!1),title:`Expand timeline`,children:[(0,K.jsx)(`div`,{className:`h-8 w-8 flex items-center justify-center`,children:(0,K.jsx)(lu,{className:`h-4 w-4 text-muted-foreground`})}),(0,K.jsxs)(`div`,{className:`flex-1 flex flex-col items-center justify-center gap-2 pointer-events-none`,children:[(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground select-none`,style:{writingMode:`vertical-rl`,transform:`rotate(180deg)`},children:`Execution Timeline`}),be.length>0&&(0,K.jsx)(`div`,{className:`bg-primary text-primary-foreground rounded-full w-5 h-5 flex items-center justify-center ${u?`animate-pulse`:``}`,style:{fontSize:`10px`},children:be.length})]})]}):(0,K.jsxs)(`div`,{className:`w-[28rem] h-full flex flex-col`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between p-2 border-b`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`h3`,{className:`text-sm font-medium`,children:`Execution Timeline`}),be.length>0&&(0,K.jsx)(`div`,{className:`bg-primary text-primary-foreground rounded-full px-2 h-5 flex items-center justify-center ${u?`animate-pulse`:``}`,style:{fontSize:`11px`,minWidth:`20px`},children:be.length})]}),(0,K.jsx)(q,{variant:`ghost`,size:`sm`,onClick:()=>w(!0),className:`h-8 w-8 p-0`,title:`Minimize timeline`,children:(0,K.jsx)(du,{className:`h-4 w-4`})})]}),(0,K.jsx)(`div`,{className:`flex-1 min-h-0 overflow-hidden`,children:(0,K.jsx)(VN,{events:be,itemOutputs:L.current,currentExecutorId:Se[Se.length-1]||null,isStreaming:u,onExecutorClick:ye,selectedExecutorId:m,workflowResult:T,pendingHilRequests:N,hilResponses:F,onHilResponseChange:(e,t)=>{I(n=>({...n,[e]:t}))},onHilSubmit:De,isSubmittingHil:u,inputSchema:n?.input_schema,onRun:(e,t)=>{Te(e,t)},onCancel:j,isCancelling:k,workflowState:u?`running`:f?`cancelled`:xe.length>0?`completed`:`ready`,wasCancelled:f,checkpoints:D})})]})})]}),(0,K.jsx)(PN,{workflow:e,open:g,onOpenChange:_}),(0,K.jsx)(FN,{session:B||null,checkpoints:D,open:v,onOpenChange:b})]})}function WN({message:e,type:t=`info`,duration:n=4e3,onClose:r}){let[i,a]=(0,y.useState)(!0);(0,y.useEffect)(()=>{let e=setTimeout(()=>{a(!1),setTimeout(r,300)},n);return()=>clearTimeout(e)},[n,r]);let o={info:`bg-primary/10 border-primary/20`,success:`bg-green-50 dark:bg-green-950 border-green-200 dark:border-green-800`,warning:`bg-orange-50 dark:bg-orange-950 border-orange-200 dark:border-orange-800`,error:`bg-red-50 dark:bg-red-950 border-red-200 dark:border-red-800`}[t],s={info:`text-primary`,success:`text-green-800 dark:text-green-200`,warning:`text-orange-800 dark:text-orange-200`,error:`text-red-800 dark:text-red-200`}[t];return(0,K.jsxs)(`div`,{className:`fixed top-4 right-4 z-50 flex items-start gap-3 p-4 rounded-lg border shadow-lg max-w-md transition-all duration-300 ${i?`opacity-100 translate-x-0`:`opacity-0 translate-x-4`} ${o}`,children:[(0,K.jsx)(`p`,{className:`text-sm flex-1 ${s}`,children:e}),(0,K.jsx)(`button`,{onClick:()=>{a(!1),setTimeout(r,300)},className:`flex-shrink-0 hover:opacity-70 transition-opacity ${s}`,children:(0,K.jsx)(vf,{className:`h-4 w-4`})})]})}function GN({toasts:e,onRemove:t}){return(0,K.jsx)(`div`,{className:`fixed top-4 right-4 z-50 flex flex-col gap-2`,children:e.map(e=>(0,K.jsx)(WN,{message:e.message,type:e.type,duration:e.duration,onClose:()=>t(e.id)},e.id))})}Cp();var KN=50;function qN(){let[e,t]=(0,y.useState)(!1),[n,r]=(0,y.useState)(``),[i,a]=(0,y.useState)(!1),[o,s]=(0,y.useState)(``),c=(0,y.useRef)(null),l=(0,y.useRef)(0),u=Q(e=>e.agents),d=Q(e=>e.workflows),f=Q(e=>e.entities),p=Q(e=>e.selectedAgent),m=Q(e=>e.azureDeploymentEnabled),h=Q(e=>e.isLoadingEntities),g=Q(e=>e.entityError),_=Q(e=>e.oaiMode),v=Q(e=>e.uiMode),b=Q(e=>e.setAgents),x=Q(e=>e.setWorkflows),S=Q(e=>e.setEntities),C=Q(e=>e.selectEntity),w=Q(e=>e.updateAgent),T=Q(e=>e.updateWorkflow),E=Q(e=>e.setIsLoadingEntities),D=Q(e=>e.setEntityError),O=Q(e=>e.showDebugPanel),k=Q(e=>e.debugPanelMinimized),A=Q(e=>e.debugPanelWidth),j=Q(e=>e.debugEvents),M=Q(e=>e.isResizing),N=Q(e=>e.setShowDebugPanel),P=Q(e=>e.setDebugPanelMinimized),F=Q(e=>e.setDebugPanelWidth),I=Q(e=>e.addDebugEvent),L=Q(e=>e.clearDebugEvents),R=Q(e=>e.setIsResizing),z=Q(e=>e.showAboutModal),B=Q(e=>e.showGallery),ee=Q(e=>e.showDeployModal),V=Q(e=>e.showEntityNotFoundToast),H=Q(e=>e.setShowAboutModal),te=Q(e=>e.setShowGallery),ne=Q(e=>e.setShowDeployModal),re=Q(e=>e.setShowEntityNotFoundToast),ie=Q(e=>e.toasts),ae=Q(e=>e.addToast),oe=Q(e=>e.removeToast);(0,y.useEffect)(()=>{(async()=>{try{let e=await Z_.getMeta();if(e.auth_required&&(t(!0),!Z_.getAuthToken())){D(`UNAUTHORIZED`),E(!1);return}let n={instrumentation:e.capabilities.instrumentation??e.capabilities.tracing??!1,trace_retrieval:e.capabilities.trace_retrieval??!1,openai_proxy:e.capabilities.openai_proxy,deployment:e.capabilities.deployment};Q.getState().setServerMeta({uiMode:e.ui_mode,runtime:e.runtime,capabilities:n,authRequired:e.auth_required,version:e.version});let{entities:r,agents:i,workflows:a}=await Z_.getEntities();S(r),b(i),x(a);let o=new URLSearchParams(window.location.search).get(`entity_id`),s;if(o&&(s=r.find(e=>e.id===o),s||re(!0)),!s){if(s=r.length>0?r[0]:void 0,s){let e=new URL(window.location.href);e.searchParams.set(`entity_id`,s.id),window.history.replaceState({},``,e)}else{let e=new URL(window.location.href);e.searchParams.delete(`entity_id`),window.history.replaceState({},``,e)}}if(s&&(C(s),s.metadata?.lazy_loaded===!1))try{if(s.type===`agent`){let e=await Z_.getAgentInfo(s.id);w(e)}else{let e=await Z_.getWorkflowInfo(s.id);T(e)}}catch(e){console.error(`Failed to load full info for first entity ${s.id}:`,e);let t=e instanceof Error?e.message:String(e);ae({type:`error`,message:`Failed to load "${s.id}": ${t}`})}E(!1)}catch(e){console.error(`Failed to load agents/workflows:`,e);let n=e instanceof Error?e.message:`Failed to load data`;n===`UNAUTHORIZED`&&t(!0),D(n),E(!1)}})()},[b,x,C,w,T,E,D,re,ae,S]);let se=(0,y.useCallback)(async()=>{if(n.trim()){a(!0),s(``);try{Z_.setAuthToken(n.trim()),await Z_.getEntities(),window.location.reload()}catch(e){Z_.clearAuthToken(),a(!1);let t=e instanceof Error?e.message:`Unknown error`;s(t===`UNAUTHORIZED`?`Invalid token. Please check and try again.`:`Failed to connect: ${t}`)}}},[n]);(0,y.useEffect)(()=>{if(_.enabled&&p?.type===`workflow`){let e=u[0];e&&C(e)}},[_.enabled,p,u,C]);let U=(0,y.useCallback)(e=>{e.preventDefault(),R(!0);let t=e.clientX,n=A,r=e=>{let r=t-e.clientX,i=Math.max(200,Math.min(window.innerWidth*.5,n+r));F(i)},i=()=>{R(!1),document.removeEventListener(`mousemove`,r),document.removeEventListener(`mouseup`,i)};document.addEventListener(`mousemove`,r),document.addEventListener(`mouseup`,i)},[A]),ce=(0,y.useCallback)(async e=>{if(C(e),e.metadata?.lazy_loaded===!1)try{if(e.type===`agent`){let t=await Z_.getAgentInfo(e.id);w(t)}else{let t=await Z_.getWorkflowInfo(e.id);T(t)}}catch(t){console.error(`Failed to load full info for ${e.id}:`,t);let n=t instanceof Error?t.message:String(t);ae({type:`error`,message:`Failed to load "${e.id}": ${n}`})}},[C,w,T,ae]),le=(0,y.useCallback)(()=>{let e=c.current;e&&(c.current=null,l.current=performance.now(),I(e))},[I]),ue=(0,y.useCallback)(e=>{if(e===`clear`){c.current=null,L();return}if(e.type===`response.output_text.delta`&&`delta`in e&&typeof e.delta==`string`&&e.delta.length>0){let t=c.current;t!==null&&t.item_id===e.item_id&&t.output_index===e.output_index&&t.content_index===e.content_index&&t?c.current={...t,delta:t.delta+e.delta,sequence_number:e.sequence_number??t.sequence_number}:(le(),c.current={...e}),performance.now()-l.current>=KN&&le();return}le(),I(e)},[I,L,le]);if(h)return(0,K.jsxs)(`div`,{className:`h-screen flex flex-col bg-background`,children:[(0,K.jsxs)(`header`,{className:`flex h-14 items-center gap-4 border-b px-4`,children:[(0,K.jsx)(`div`,{className:`w-64 h-9 bg-muted animate-pulse rounded-md`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2 ml-auto`,children:[(0,K.jsx)(`div`,{className:`w-8 h-8 bg-muted animate-pulse rounded-md`}),(0,K.jsx)(`div`,{className:`w-8 h-8 bg-muted animate-pulse rounded-md`})]})]}),(0,K.jsx)(`div`,{className:`flex-1 flex items-center justify-center`,children:(0,K.jsxs)(`div`,{className:`text-center`,children:[(0,K.jsx)(`div`,{className:`text-lg font-medium`,children:`Initializing DevUI...`}),(0,K.jsx)(`div`,{className:`text-sm text-muted-foreground mt-2`,children:`Loading agents and workflows from your configuration`})]})})]});if(g){let t=Z_.getBaseUrl(),a=g===`UNAUTHORIZED`||e,s=`8080`;try{if(t){let e=new URL(t);s=e.port||(e.protocol===`https:`?`443`:`80`)}}catch{}return(0,K.jsxs)(`div`,{className:`h-screen flex flex-col bg-background`,children:[(0,K.jsx)(wp,{agents:[],workflows:[],entities:[],selectedItem:void 0,onSelect:()=>{},isLoading:!1,onSettingsClick:()=>H(!0)}),(0,K.jsx)(`div`,{className:`flex-1 flex items-center justify-center p-8`,children:(0,K.jsxs)(`div`,{className:`text-center space-y-6 max-w-2xl`,children:[(0,K.jsx)(`div`,{className:`flex justify-center`,children:(0,K.jsx)(`div`,{className:`rounded-full bg-muted p-4 animate-pulse`,children:a?(0,K.jsx)(dd,{className:`h-12 w-12 text-muted-foreground`}):(0,K.jsx)(Yd,{className:`h-12 w-12 text-muted-foreground`})})}),(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsx)(`h2`,{className:`text-2xl font-semibold text-foreground`,children:a?`Authentication Required`:`Can't Connect to Backend`}),(0,K.jsx)(`p`,{className:`text-muted-foreground text-base`,children:a?`This backend requires a bearer token to access.`:`No worries! Just start the DevUI backend server and you'll be good to go.`})]}),a?(0,K.jsxs)(`div`,{className:`space-y-4`,children:[(0,K.jsxs)(`div`,{className:`text-left bg-muted/50 rounded-lg p-4 space-y-3`,children:[(0,K.jsx)(`p`,{className:`text-sm font-medium text-foreground`,children:`Enter Authentication Token`}),(0,K.jsx)(Bg,{type:`password`,placeholder:`Paste token from server logs`,value:n,onChange:e=>r(e.target.value),onKeyDown:e=>{e.key===`Enter`&&!i&&se()},disabled:i,className:`font-mono text-sm`}),(0,K.jsx)(q,{onClick:se,disabled:!n.trim()||i,className:`w-full`,children:i?`Verifying...`:`Connect`}),o&&(0,K.jsx)(`p`,{className:`text-sm text-red-600 dark:text-red-400 text-center`,children:o})]}),(0,K.jsxs)(`details`,{className:`text-left group`,children:[(0,K.jsxs)(`summary`,{className:`text-sm text-muted-foreground cursor-pointer hover:text-foreground flex items-center gap-2 justify-center`,children:[(0,K.jsx)(su,{className:`h-4 w-4 transition-transform group-open:rotate-180`}),`Where do I find the token?`]}),(0,K.jsxs)(`div`,{className:`mt-3 text-left bg-muted/30 rounded-lg p-3 space-y-2`,children:[(0,K.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Look for this in your DevUI server startup logs:`}),(0,K.jsxs)(`code`,{className:`block bg-background px-2 py-1 rounded text-xs font-mono text-foreground`,children:[`🔑 DEV TOKEN (localhost only, shown once):`,(0,K.jsx)(`br`,{}),`\xA0\xA0 abc123xyz...`]})]})]})]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(`div`,{className:`space-y-3`,children:[(0,K.jsxs)(`div`,{className:`text-left bg-muted/50 rounded-lg p-4 space-y-3`,children:[(0,K.jsx)(`p`,{className:`text-sm font-medium text-foreground`,children:`Start the backend:`}),(0,K.jsxs)(`code`,{className:`block bg-background px-3 py-2 rounded border text-sm font-mono text-foreground`,children:[`devui ./agents --port `,s]}),(0,K.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`Or launch programmatically with`,` `,(0,K.jsx)(`code`,{className:`text-xs`,children:`serve(entities=[agent])`})]})]}),(0,K.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`Default:`,` `,(0,K.jsx)(`span`,{className:`font-mono`,children:t})]})]}),g&&(0,K.jsxs)(`details`,{className:`text-left group`,children:[(0,K.jsxs)(`summary`,{className:`text-sm text-muted-foreground cursor-pointer hover:text-foreground flex items-center gap-2`,children:[(0,K.jsx)(su,{className:`h-4 w-4 transition-transform group-open:rotate-180`}),`Error details`]}),(0,K.jsx)(`p`,{className:`mt-2 text-xs text-muted-foreground font-mono bg-muted/30 p-3 rounded border`,children:g})]}),(0,K.jsx)(q,{onClick:()=>window.location.reload(),variant:`default`,className:`mt-2`,children:`Retry Connection`})]})]})}),(0,K.jsx)(l_,{open:z,onOpenChange:H})]})}return(0,K.jsxs)(`div`,{className:`h-screen flex flex-col bg-background max-h-screen`,children:[(0,K.jsx)(wp,{agents:u,workflows:d,entities:f,selectedItem:p,onSelect:ce,onBrowseGallery:()=>te(!0),isLoading:h,onSettingsClick:()=>H(!0)}),(0,K.jsx)(`div`,{className:`flex flex-1 overflow-hidden`,children:B?(0,K.jsx)(`div`,{className:`flex-1 w-full`,children:(0,K.jsx)(hv,{variant:`route`,onClose:()=>te(!1),hasExistingEntities:u.length>0||d.length>0})}):u.length===0&&d.length===0?(0,K.jsx)(hv,{variant:`inline`}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`div`,{className:`flex-1 min-w-0`,children:p?p.type===`agent`?(0,K.jsx)(bb,{selectedAgent:p,onDebugEvent:ue}):(0,K.jsx)(UN,{selectedWorkflow:p,onDebugEvent:ue}):(0,K.jsx)(`div`,{className:`flex-1 flex items-center justify-center text-muted-foreground`,children:`Select an agent or workflow to get started.`})}),v===`developer`&&O?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`div`,{className:`w-1 cursor-col-resize flex-shrink-0 relative group transition-colors duration-200 ease-in-out ${M?`bg-primary/40`:`bg-border hover:bg-primary/20`}`,onMouseDown:U,children:(0,K.jsx)(`div`,{className:`absolute inset-y-0 -left-2 -right-2 flex items-center justify-center`,children:(0,K.jsx)(`div`,{className:`h-12 w-1 rounded-full transition-all duration-200 ease-in-out ${M?`bg-primary shadow-lg shadow-primary/25`:`bg-primary/30 group-hover:bg-primary group-hover:shadow-md group-hover:shadow-primary/20`}`})})}),(0,K.jsx)(`div`,{className:`flex-shrink-0 flex flex-col h-[calc(100vh-3.7rem)]`,style:{width:k?`2.5rem`:`${A}px`},children:k?(0,K.jsxs)(`div`,{className:`h-full w-10 bg-background border-l flex flex-col items-center py-2 cursor-pointer hover:bg-accent/50 transition-colors`,onClick:()=>P(!1),title:`Expand debug panel`,children:[(0,K.jsx)(`div`,{className:`h-8 w-8 flex items-center justify-center`,children:(0,K.jsx)(lu,{className:`h-4 w-4 text-muted-foreground`})}),(0,K.jsxs)(`div`,{className:`flex-1 flex flex-col items-center justify-center gap-2 pointer-events-none`,children:[(0,K.jsx)(`div`,{className:`text-xs text-muted-foreground select-none`,style:{writingMode:`vertical-rl`,transform:`rotate(180deg)`},children:`Debug Panel`}),j.length>0&&(0,K.jsx)(`div`,{className:`bg-primary text-primary-foreground rounded-full w-5 h-5 flex items-center justify-center`,style:{fontSize:`10px`},children:j.length})]})]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(Mg,{events:j,isStreaming:!1,onMinimize:()=>P(!0)}),(0,K.jsx)(`div`,{className:`border-t bg-muted/30 px-3 py-2.5 flex-shrink-0`,children:(0,K.jsxs)(q,{onClick:()=>ne(!0),className:`w-full`,variant:`outline`,size:`sm`,children:[(0,K.jsx)(zd,{className:`h-3 w-3 mr-2 flex-shrink-0`}),(0,K.jsx)(`span`,{className:`truncate text-xs`,children:m&&p?.deployment_supported?`Deploy to Azure`:`Deployment Guide`})]})})]})})]}):v===`developer`?(0,K.jsx)(`div`,{className:`flex-shrink-0`,children:(0,K.jsx)(q,{variant:`ghost`,size:`sm`,onClick:()=>N(!0),className:`h-full w-10 rounded-none border-l`,title:`Show debug panel`,children:(0,K.jsx)(Dd,{className:`h-4 w-4`})})}):null]})}),(0,K.jsx)(l_,{open:z,onOpenChange:H}),(0,K.jsx)(Q_,{open:ee,onClose:()=>ne(!1),agentName:p?.name,entity:p}),V&&(0,K.jsx)(WN,{message:`Entity not found. Showing first available entity instead.`,type:`info`,onClose:()=>re(!1)}),(0,K.jsx)(GN,{toasts:ie,onRemove:oe})]})}function JN({children:e,attribute:t=`class`,defaultTheme:n=`dark`,enableSystem:r=!0,disableTransitionOnChange:i=!0,...a}){return(0,K.jsx)(Lf,{attribute:t,defaultTheme:n,enableSystem:r,disableTransitionOnChange:i,...a,children:e})}C_(),(0,b.createRoot)(document.getElementById(`root`)).render((0,K.jsx)(y.StrictMode,{children:(0,K.jsx)(JN,{attribute:`class`,defaultTheme:`dark`,enableSystem:!0,disableTransitionOnChange:!0,children:(0,K.jsx)(qN,{})})})); diff --git a/python/packages/devui/frontend/package.json b/python/packages/devui/frontend/package.json index c2a6f73cdc7..89007c2db9f 100644 --- a/python/packages/devui/frontend/package.json +++ b/python/packages/devui/frontend/package.json @@ -8,6 +8,7 @@ "build": "tsc -b && vite build", "lint": "eslint .", "test:tracing": "node --test test/trace-polling.test.mjs", + "test:audio": "node --test test/response-media.test.mjs", "preview": "vite preview" }, "dependencies": { diff --git a/python/packages/devui/frontend/src/components/features/agent/agent-view.tsx b/python/packages/devui/frontend/src/components/features/agent/agent-view.tsx index 002289b2932..9616c8698eb 100644 --- a/python/packages/devui/frontend/src/components/features/agent/agent-view.tsx +++ b/python/packages/devui/frontend/src/components/features/agent/agent-view.tsx @@ -33,6 +33,7 @@ import { Square, } from "lucide-react"; import { apiClient } from "@/services/api"; +import { appendResponseMedia } from "@/services/response-media"; import type { AgentInfo, RunAgentRequest, @@ -456,6 +457,19 @@ export function AgentView({ selectedAgent, onDebugEvent }: AgentViewProps) { [setChatItems] ); + const renderAssistantMedia = useCallback(( + assistantMessageId: string, + output: import("@/types/openai").ResponseOutputItem[], + allowAutoPlay = false, + ) => { + const currentItems = useDevUIStore.getState().chatItems; + setChatItems(currentItems.map((item) => + item.id === assistantMessageId && item.type === "message" + ? { ...item, content: appendResponseMedia(item.content, output, allowAutoPlay) } + : item + )); + }, [setChatItems]); + // Auto-scroll to bottom when new items arrive useEffect(() => { if (!messagesEndRef.current) return; @@ -534,9 +548,16 @@ export function AgentView({ selectedAgent, onDebugEvent }: AgentViewProps) { // Pass all events to debug panel onDebugEvent(openAIEvent); + if (openAIEvent.type === "response.output_item.added") { + const event = openAIEvent as import("@/types/openai").ResponseOutputItemAddedEvent; + renderAssistantMedia(assistantMessage.id, [event.item]); + continue; + } + // Handle response.completed event if (openAIEvent.type === "response.completed") { const completedEvent = openAIEvent as import("@/types/openai").ResponseCompletedEvent; + renderAssistantMedia(assistantMessage.id, completedEvent.response.output ?? []); const usage = completedEvent.response?.usage; if (usage) { @@ -552,6 +573,7 @@ export function AgentView({ selectedAgent, onDebugEvent }: AgentViewProps) { // Handle response.failed event if (openAIEvent.type === "response.failed") { const failedEvent = openAIEvent as import("@/types/openai").ResponseFailedEvent; + renderAssistantMedia(assistantMessage.id, failedEvent.response.output ?? []); const error = failedEvent.response?.error; const errorMessage = error ? typeof error === "object" && "message" in error @@ -571,6 +593,7 @@ export function AgentView({ selectedAgent, onDebugEvent }: AgentViewProps) { ? { ...item, content: [ + ...item.content.filter((part) => part.type !== "text" && part.type !== "output_text" && part.type !== "refusal"), { type: "text", text: accumulatedTextRef.current || errorMessage, @@ -624,6 +647,7 @@ export function AgentView({ selectedAgent, onDebugEvent }: AgentViewProps) { ? { ...item, content: [ + ...item.content.filter((part) => part.type !== "text" && part.type !== "output_text" && part.type !== "refusal"), { type: "text", text: accumulatedTextRef.current || errorMessage, @@ -681,6 +705,7 @@ export function AgentView({ selectedAgent, onDebugEvent }: AgentViewProps) { ? { ...item, content: [ + ...item.content.filter((part) => part.type !== "text" && part.type !== "output_text" && part.type !== "refusal"), { type: "text", text: `Error resuming stream: ${ @@ -879,7 +904,7 @@ export function AgentView({ selectedAgent, onDebugEvent }: AgentViewProps) { loadConversations(); // currentConversation is intentionally excluded - this effect should only run when agent changes - }, [selectedAgent, onDebugEvent, clearDebugEvents, renderAssistantStreamingText, setChatItems, setIsStreaming, setLoadingConversations, setAvailableConversations, setCurrentConversation, setPendingApprovals, updateConversationUsage]); + }, [selectedAgent, onDebugEvent, clearDebugEvents, renderAssistantStreamingText, renderAssistantMedia, setChatItems, setIsStreaming, setLoadingConversations, setAvailableConversations, setCurrentConversation, setPendingApprovals, updateConversationUsage]); // Removed old input handling functions - now handled by ChatMessageInput component @@ -1205,6 +1230,11 @@ export function AgentView({ selectedAgent, onDebugEvent }: AgentViewProps) { file_data: fileItem.file_data, filename: fileItem.filename, }); + } else if (contentItem.type === "input_audio") { + messageContent.push({ + type: "input_audio", + input_audio: contentItem.input_audio, + }); } } } @@ -1309,6 +1339,7 @@ export function AgentView({ selectedAgent, onDebugEvent }: AgentViewProps) { // Handle response.completed event (OpenAI standard) if (openAIEvent.type === "response.completed") { const completedEvent = openAIEvent as import("@/types/openai").ResponseCompletedEvent; + renderAssistantMedia(assistantMessage.id, completedEvent.response.output ?? [], true); const usage = completedEvent.response?.usage; if (usage) { @@ -1324,6 +1355,7 @@ export function AgentView({ selectedAgent, onDebugEvent }: AgentViewProps) { // Handle response.failed event (OpenAI standard) if (openAIEvent.type === "response.failed") { const failedEvent = openAIEvent as import("@/types/openai").ResponseFailedEvent; + renderAssistantMedia(assistantMessage.id, failedEvent.response.output ?? [], true); const error = failedEvent.response?.error; // Format error message with details @@ -1352,6 +1384,7 @@ export function AgentView({ selectedAgent, onDebugEvent }: AgentViewProps) { ? { ...item, content: [ + ...item.content.filter((part) => part.type !== "text" && part.type !== "output_text" && part.type !== "refusal"), { type: "text", text: accumulatedTextRef.current || errorMessage, @@ -1459,6 +1492,7 @@ export function AgentView({ selectedAgent, onDebugEvent }: AgentViewProps) { ? { ...item, content: [ + ...item.content.filter((part) => part.type !== "text" && part.type !== "output_text" && part.type !== "refusal"), { type: "text", text: errorMessage, @@ -1498,48 +1532,7 @@ export function AgentView({ selectedAgent, onDebugEvent }: AgentViewProps) { } // Add output items to assistant message content - const currentItems = useDevUIStore.getState().chatItems; - setChatItems(currentItems.map((chatItem) => { - if (chatItem.id === assistantMessage.id && chatItem.type === "message") { - const existingContent = chatItem.content; - let newContent: import("@/types/openai").MessageContent | null = null; - - // Map output items to message content - if (item.type === "output_image") { - newContent = { - type: "output_image", - image_url: item.image_url, - alt_text: item.alt_text, - mime_type: item.mime_type, - } as import("@/types/openai").MessageOutputImage; - } else if (item.type === "output_file") { - newContent = { - type: "output_file", - filename: item.filename, - file_url: item.file_url, - file_data: item.file_data, - mime_type: item.mime_type, - } as import("@/types/openai").MessageOutputFile; - } else if (item.type === "output_data") { - newContent = { - type: "output_data", - data: item.data, - mime_type: item.mime_type, - description: item.description, - } as import("@/types/openai").MessageOutputData; - } - - // If we created new content, append it - if (newContent) { - return { - ...chatItem, - content: [...existingContent, newContent], - status: "in_progress" as const, - }; - } - } - return chatItem; - })); + renderAssistantMedia(assistantMessage.id, [item], true); continue; // Continue to next event } @@ -1607,6 +1600,7 @@ export function AgentView({ selectedAgent, onDebugEvent }: AgentViewProps) { ? { ...item, content: [ + ...item.content.filter((part) => part.type !== "text" && part.type !== "output_text" && part.type !== "refusal"), { type: "text", text: `Error: ${ @@ -1630,7 +1624,7 @@ export function AgentView({ selectedAgent, onDebugEvent }: AgentViewProps) { } } }, - [selectedAgent, currentConversation, onDebugEvent, renderAssistantStreamingText, setChatItems, setIsStreaming, setIsSubmitting, setCurrentConversation, setAvailableConversations, setPendingApprovals, updateConversationUsage, createAbortSignal, resetCancelling, startTracePolling] + [selectedAgent, currentConversation, onDebugEvent, renderAssistantStreamingText, renderAssistantMedia, setChatItems, setIsStreaming, setIsSubmitting, setCurrentConversation, setAvailableConversations, setPendingApprovals, updateConversationUsage, createAbortSignal, resetCancelling, startTracePolling] ); // Handle non-streaming message sending @@ -1671,6 +1665,11 @@ export function AgentView({ selectedAgent, onDebugEvent }: AgentViewProps) { file_data: fileItem.file_data, filename: fileItem.filename, }); + } else if (contentItem.type === "input_audio") { + messageContent.push({ + type: "input_audio", + input_audio: contentItem.input_audio, + }); } } } @@ -1725,10 +1724,9 @@ export function AgentView({ selectedAgent, onDebugEvent }: AgentViewProps) { }); // Extract content from response output - const assistantContent: import("@/types/openai").MessageContent[] = []; + const assistantContent = appendResponseMedia([], response.output ?? [], true); const toolCalls: import("@/types/openai").ConversationFunctionCall[] = []; const toolResults: import("@/types/openai").ConversationFunctionCallOutput[] = []; - if (response.output) { for (const outputItem of response.output) { if (outputItem.type === "message") { @@ -1746,12 +1744,6 @@ export function AgentView({ selectedAgent, onDebugEvent }: AgentViewProps) { type: "refusal", refusal: content.refusal, }); - } else if (content.type === "output_image") { - assistantContent.push(content as unknown as import("@/types/openai").MessageOutputImage); - } else if (content.type === "output_file") { - assistantContent.push(content as unknown as import("@/types/openai").MessageOutputFile); - } else if (content.type === "output_data") { - assistantContent.push(content as unknown as import("@/types/openai").MessageOutputData); } } } diff --git a/python/packages/devui/frontend/src/components/features/agent/message-renderers/OpenAIContentRenderer.tsx b/python/packages/devui/frontend/src/components/features/agent/message-renderers/OpenAIContentRenderer.tsx index 1892aa5c429..e364b0425e3 100644 --- a/python/packages/devui/frontend/src/components/features/agent/message-renderers/OpenAIContentRenderer.tsx +++ b/python/packages/devui/frontend/src/components/features/agent/message-renderers/OpenAIContentRenderer.tsx @@ -10,18 +10,20 @@ import { Code, ChevronDown, ChevronRight, - Music, Check, X, Clock, } from "lucide-react"; import type { MessageContent } from "@/types/openai"; import { MarkdownRenderer } from "@/components/ui/markdown-renderer"; +import { AudioMessagePreview } from "@/components/ui/audio-message-preview"; +import { useDevUIStore } from "@/stores/devuiStore"; interface ContentRendererProps { content: MessageContent; className?: string; isStreaming?: boolean; + autoPlayAudio?: boolean; } // Text content renderer @@ -134,18 +136,70 @@ function useBase64ToBlobUrl(data: string | undefined, mimeType: string): string return blobUrl; } +function audioMimeTypeFromFilename(filename?: string): string | undefined { + const lowerFilename = filename?.toLowerCase() || ""; + if (lowerFilename.endsWith(".wav")) return "audio/wav"; + if (lowerFilename.endsWith(".mp3")) return "audio/mpeg"; + if (lowerFilename.endsWith(".m4a")) return "audio/mp4"; + if (lowerFilename.endsWith(".ogg")) return "audio/ogg"; + if (lowerFilename.endsWith(".flac")) return "audio/flac"; + if (lowerFilename.endsWith(".aac")) return "audio/aac"; + return undefined; +} + +function fileDataSourceUrl(fileData: string | undefined, mimeType: string | undefined): string | undefined { + if (!fileData) { + return undefined; + } + return fileData.startsWith("data:") ? fileData : `data:${mimeType || "application/octet-stream"};base64,${fileData}`; +} + +function isAudioFilename(filename?: string): boolean { + return Boolean(filename?.toLowerCase().match(/\.(mp3|wav|m4a|ogg|flac|aac)$/)); +} + +function AudioFileRenderer({ + sourceUrl, + filename, + className, + autoPlay, +}: { + sourceUrl: string; + filename?: string; + className?: string; + autoPlay?: boolean; +}) { + return ( + + ); +} + // File content renderer (handles both input and output files) -function FileContentRenderer({ content, className }: ContentRendererProps) { +function FileContentRenderer({ content, className, autoPlayAudio }: ContentRendererProps) { const [isExpanded, setIsExpanded] = useState(true); + const autoPlayAgentAudio = useDevUIStore((state) => state.audioInput.autoPlayAgentAudio); // Determine file properties (must be before hooks for conditional logic) const isFileContent = content.type === "input_file" || content.type === "output_file"; const fileUrl = isFileContent ? (content.file_url || content.file_data) : undefined; const filename = isFileContent ? (content.filename || "file") : undefined; + const mimeType = content.type === "output_file" ? content.mime_type : audioMimeTypeFromFilename(filename); // Determine file type from filename or data URI const isPdf = filename?.toLowerCase().endsWith(".pdf") || fileUrl?.includes("application/pdf"); - const isAudio = filename?.toLowerCase().match(/\.(mp3|wav|m4a|ogg|flac|aac)$/); + const isAudioFile = Boolean( + isAudioFilename(filename) || + mimeType?.startsWith("audio/") || + fileUrl?.startsWith("data:audio/") + ); // Convert base64 to blob URL for PDFs (better browser compatibility) // Use file_data (raw base64) if available, otherwise try file_url @@ -223,18 +277,15 @@ function FileContentRenderer({ content, className }: ContentRendererProps) { } // For audio files - if (isAudio && fileUrl) { + if (isAudioFile && fileUrl) { + const sourceUrl = fileDataSourceUrl(content.file_data, mimeType) || fileUrl; return ( -
-
- - {filename} -
- -
+ ); } @@ -261,6 +312,18 @@ function FileContentRenderer({ content, className }: ContentRendererProps) { ); } +function AudioContentRenderer({ content, className }: ContentRendererProps) { + if (content.type !== "input_audio") return null; + const { data, format } = content.input_audio; + const mimeType = format === "mp3" ? "audio/mpeg" : "audio/wav"; + const audioUrl = data.startsWith("data:") ? data : `data:${mimeType};base64,${data}`; + const label = `Voice message (${format.toUpperCase()})`; + + return ( + + ); +} + // Data content renderer (for generic structured data outputs) function DataContentRenderer({ content, className }: ContentRendererProps) { const [isExpanded, setIsExpanded] = useState(false); @@ -373,7 +436,7 @@ function FunctionApprovalRequestRenderer({ content, className }: ContentRenderer } // Main content renderer that delegates to specific renderers -export function OpenAIContentRenderer({ content, className, isStreaming }: ContentRendererProps) { +export function OpenAIContentRenderer({ content, className, isStreaming, autoPlayAudio }: ContentRendererProps) { switch (content.type) { case "text": case "input_text": @@ -385,7 +448,9 @@ export function OpenAIContentRenderer({ content, className, isStreaming }: Conte return ; case "input_file": case "output_file": - return ; + return ; + case "input_audio": + return ; case "output_data": return ; case "function_approval_request": diff --git a/python/packages/devui/frontend/src/components/features/agent/message-renderers/OpenAIMessageRenderer.tsx b/python/packages/devui/frontend/src/components/features/agent/message-renderers/OpenAIMessageRenderer.tsx index f3f150f44fd..ffea8da7820 100644 --- a/python/packages/devui/frontend/src/components/features/agent/message-renderers/OpenAIMessageRenderer.tsx +++ b/python/packages/devui/frontend/src/components/features/agent/message-renderers/OpenAIMessageRenderer.tsx @@ -33,6 +33,7 @@ export function OpenAIMessageRenderer({ content={content} className={index > 0 ? "mt-2" : ""} isStreaming={isStreaming} + autoPlayAudio={content.type === "output_file" && content.auto_play} /> ))} diff --git a/python/packages/devui/frontend/src/components/layout/settings-modal.tsx b/python/packages/devui/frontend/src/components/layout/settings-modal.tsx index d5f796f4d2a..cbd2542a96b 100644 --- a/python/packages/devui/frontend/src/components/layout/settings-modal.tsx +++ b/python/packages/devui/frontend/src/components/layout/settings-modal.tsx @@ -43,6 +43,8 @@ export function SettingsModal({ // OpenAI proxy mode, Azure deployment, auth status, server capabilities, streaming, and version from store const { oaiMode, setOAIMode, azureDeploymentEnabled, setAzureDeploymentEnabled, authRequired, serverCapabilities, serverVersion, runtime, uiMode, streamingEnabled, setStreamingEnabled } = useDevUIStore(); + const audioInput = useDevUIStore((state) => state.audioInput); + const setAudioInput = useDevUIStore((state) => state.setAudioInput); // Get current backend URL from localStorage or default const defaultUrl = import.meta.env.VITE_API_BASE_URL !== undefined ? import.meta.env.VITE_API_BASE_URL : ""; @@ -384,6 +386,250 @@ export function SettingsModal({ )} + + {/* Audio Input Settings */} +
+
+
+ +

+ Record microphone audio and send it directly to audio-capable agents +

+
+ setAudioInput({ enabled: checked })} + /> +
+ + {audioInput.enabled && ( + <> +
+ + + Audio options + +
+
+ + + Input + +
+
+ + + setAudioInput({ + maxDurationSeconds: Math.max(1, parseInt(e.target.value || "60")), + }) + } + className="text-sm" + /> +
+
+ + + setAudioInput({ + maxPayloadBytes: Math.max(1, parseInt(e.target.value || "10")) * 1024 * 1024, + }) + } + className="text-sm" + /> +
+
+ + + setAudioInput({ + sampleRate: Math.max(8000, parseInt(e.target.value || "16000")), + }) + } + className="text-sm" + /> +

+ Resamples microphone recordings before sending. +

+
+
+
+ + setAudioInput({ previewBeforeSend: checked })} + /> +
+
+ + setAudioInput({ echoCancellation: checked })} + /> +
+
+ + setAudioInput({ noiseSuppression: checked })} + /> +
+
+ + setAudioInput({ autoGainControl: checked })} + /> +
+

Browser support may vary.

+
+
+
+ +
+ + + Auto-stop on silence + +
+
+

+ Automatically attaches click-to-record audio after a quiet pause. +

+ setAudioInput({ autoStopOnSilence: checked })} + /> +
+ {audioInput.autoStopOnSilence && ( +
+
+ + + setAudioInput({ + silenceThreshold: Math.max(0, Math.min(1, Number(e.target.value || "0.03"))), + }) + } + className="text-sm" + /> +
+
+ + + setAudioInput({ + silenceDurationMs: Math.max(250, parseInt(e.target.value || "1500")), + }) + } + className="text-sm" + /> +
+
+ + + setAudioInput({ + minimumRecordingMs: Math.max(0, parseInt(e.target.value || "1000")), + }) + } + className="text-sm" + /> +
+
+ )} +
+
+ +
+ + + Output + +
+ + setAudioInput({ autoPlayAgentAudio: checked })} + /> +
+
+
+
+ +
+ + + Learn more about audio input + +
+

+ Audio input requires browser microphone support on localhost or HTTPS. + File uploads remain available when recording is unavailable. +

+
+

Supported input paths:

+
    +
  • Audio is sent without transcription
  • +
  • Microphone recordings become mono WAV
  • +
  • Uploaded files keep their original format
  • +
  • Supported audio formats depend on the selected agent
  • +
  • Auto-stop on silence is optional and uses local microphone level only
  • +
+
+
+

Browser controls:

+

+ Echo cancellation, noise suppression, and auto gain control are best-effort browser hints. +

+
+
+
+ + )} +
)} diff --git a/python/packages/devui/frontend/src/components/ui/audio-message-preview.tsx b/python/packages/devui/frontend/src/components/ui/audio-message-preview.tsx new file mode 100644 index 00000000000..b75cc0c1d2d --- /dev/null +++ b/python/packages/devui/frontend/src/components/ui/audio-message-preview.tsx @@ -0,0 +1,301 @@ +import { useEffect, useRef, useState } from "react"; +import { Download, Pause, Play, Square, X } from "lucide-react"; +import { Button } from "@/components/ui/button"; +import { getAudioContextConstructor, getWaveformPeaks } from "@/hooks/use-audio-recorder"; + +interface AudioPreviewData { + blobUrl: string; + durationSeconds?: number; + waveformPeaks?: number[]; +} + +function formatDuration(seconds: number) { + const whole = Math.floor(seconds); + return `${Math.floor(whole / 60)}:${(whole % 60).toString().padStart(2, "0")}`; +} + +function WaveformBars({ peaks, progress }: { peaks: number[]; progress: number }) { + const waveform = peaks.length ? peaks : [0.12, 0.28, 0.16, 0.35, 0.2, 0.5, 0.18, 0.3]; + return ( + + ); +} + +export function RecordingBar({ + recordingSeconds, + inputLevel, + statusLabel, + onStop, + onCancel, +}: { + recordingSeconds: number; + inputLevel: number; + statusLabel?: string; + onStop: () => void; + onCancel: () => void; +}) { + const bars = [8, 12, 16, 22, 28, 32, 30, 24, 18, 14, 12, 16, 20, 24, 18, 14, 12, 16]; + return ( +
+
+ + + {formatDuration(recordingSeconds)} + +
+ + {statusLabel && {statusLabel}} +
+ Recording voice message +
+ +
+ ); +} + +export function AudioMessagePreview({ + audio, + label = "Voice recording preview", + disabled, + previewBeforeSend = true, + onRemove, + autoPlay = false, + downloadFilename, + maxWidth = 760, + minWidth = 420, + align = "center", + className = "", +}: { + audio: AudioPreviewData; + label?: string; + disabled?: boolean; + previewBeforeSend?: boolean; + onRemove?: () => void; + autoPlay?: boolean; + downloadFilename?: string; + maxWidth?: number; + minWidth?: number; + align?: "start" | "center"; + className?: string; +}) { + const audioRef = useRef(null); + const [isPlaying, setIsPlaying] = useState(false); + const [currentTime, setCurrentTime] = useState(0); + const [duration, setDuration] = useState(audio.durationSeconds || 0); + const [peaks, setPeaks] = useState(audio.waveformPeaks || []); + const [error, setError] = useState(null); + const progress = duration > 0 ? Math.min(1, currentTime / duration) : 0; + const previewWidth = Math.round(Math.min(maxWidth, Math.max(minWidth, 300 + duration * 18))); + + useEffect(() => { + setCurrentTime(0); + setIsPlaying(false); + setDuration(audio.durationSeconds || 0); + setPeaks(audio.waveformPeaks || []); + setError(null); + const Context = getAudioContextConstructor(); + // Remote sources remain playable without downloading and decoding the whole file. + if (audio.waveformPeaks || !audio.blobUrl.startsWith("data:") || !Context) return; + const controller = new AbortController(); + let cancelled = false; + const analyze = async () => { + const context = new Context(); + try { + const response = await fetch(audio.blobUrl, { signal: controller.signal }); + if (!response.ok) throw new Error(`Audio waveform request failed (${response.status}).`); + const decoded = await context.decodeAudioData(await response.arrayBuffer()); + if (!cancelled) { + setPeaks(getWaveformPeaks(decoded)); + setDuration(decoded.duration); + } + } finally { + await context.close(); + } + }; + void analyze().catch((cause) => { + if (!cancelled) console.warn("Could not generate audio waveform; playback is still available:", cause); + }); + return () => { + cancelled = true; + controller.abort(); + }; + }, [audio.blobUrl, audio.durationSeconds, audio.waveformPeaks]); + + const togglePlayback = async () => { + const element = audioRef.current; + if (!element) return; + if (!element.paused) { + element.pause(); + return; + } + setError(null); + try { + await element.play(); + } catch (cause) { + setError(cause instanceof Error ? cause.message : "Audio playback failed."); + } + }; + + const seekTo = (time: number) => { + const nextTime = Math.min(duration, Math.max(0, time)); + if (audioRef.current) audioRef.current.currentTime = nextTime; + setCurrentTime(nextTime); + }; + + return ( +
+
+