@makinbakin/sdk 0.0.1-rc.27 → 0.0.1-rc.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
1
  // @bun
2
- var __create=Object.create;var{getPrototypeOf:__getProtoOf,defineProperty:__defProp,getOwnPropertyNames:__getOwnPropNames}=Object;var __hasOwnProp=Object.prototype.hasOwnProperty;function __accessProp(key){return this[key]}var __toESMCache_node,__toESMCache_esm,__toESM=(mod,isNodeMode,target)=>{var canCache=mod!=null&&typeof mod==="object";if(canCache){var cache=isNodeMode?__toESMCache_node??=new WeakMap:__toESMCache_esm??=new WeakMap,cached=cache.get(mod);if(cached)return cached}target=mod!=null?__create(__getProtoOf(mod)):{};let to=isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target;for(let key of __getOwnPropNames(mod))if(!__hasOwnProp.call(to,key))__defProp(to,key,{get:__accessProp.bind(mod,key),enumerable:!0});if(canCache)cache.set(mod,to);return to};var __commonJS=(cb,mod)=>()=>(mod||cb((mod={exports:{}}).exports,mod),mod.exports);var __returnValue=(v)=>v;function __exportSetter(name,newValue){this[name]=__returnValue.bind(null,newValue)}var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0,configurable:!0,set:__exportSetter.bind(all,name)})};import*as React36 from"react";var require_use_sync_external_store_shim_production=__commonJS((exports)=>{function is(x,y){return x===y&&(x!==0||1/x===1/y)||x!==x&&y!==y}var objectIs=typeof Object.is==="function"?Object.is:is,useState16=React36.useState,useEffect14=React36.useEffect,useLayoutEffect5=React36.useLayoutEffect,useDebugValue=React36.useDebugValue;function useSyncExternalStore$2(subscribe,getSnapshot){var value=getSnapshot(),_useState=useState16({inst:{value,getSnapshot}}),inst=_useState[0].inst,forceUpdate=_useState[1];return useLayoutEffect5(function(){inst.value=value,inst.getSnapshot=getSnapshot,checkIfSnapshotChanged(inst)&&forceUpdate({inst})},[subscribe,value,getSnapshot]),useEffect14(function(){return checkIfSnapshotChanged(inst)&&forceUpdate({inst}),subscribe(function(){checkIfSnapshotChanged(inst)&&forceUpdate({inst})})},[subscribe]),useDebugValue(value),value}function checkIfSnapshotChanged(inst){var latestGetSnapshot=inst.getSnapshot;inst=inst.value;try{var nextValue=latestGetSnapshot();return!objectIs(inst,nextValue)}catch(error){return!0}}function useSyncExternalStore$1(subscribe,getSnapshot){return getSnapshot()}var shim=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?useSyncExternalStore$1:useSyncExternalStore$2;exports.useSyncExternalStore=React36.useSyncExternalStore!==void 0?React36.useSyncExternalStore:shim});function newBuilder(){return{items:[],status:"complete",byCallId:new Map,keyCounter:0}}function lastActivity(builder){let last=builder.items[builder.items.length-1];return last&&last.type==="activity"?last:null}function settledStatus(status){return status==="failed"?"failed":"completed"}function addToolActivity(builder,data){if(!data.toolName)return;let status=data.phase==="result"?settledStatus(data.status):"running",existing;if(data.callId)existing=builder.byCallId.get(data.callId);else if(data.phase==="result")for(let i=builder.items.length-1;i>=0&&!existing;i--){let item=builder.items[i];if(item.type!=="activity")continue;for(let j=item.calls.length-1;j>=0;j--){let call2=item.calls[j];if(call2.toolName===data.toolName&&call2.status==="running"){existing=call2;break}}}if(existing){if(existing.status=status,data.summary)existing.summary=data.summary;if(data.inputPreview)existing.inputPreview=data.inputPreview;if(data.outputPreview)existing.outputPreview=data.outputPreview;if(data.durationMs!==void 0)existing.durationMs=data.durationMs;if(data.metadata)existing.metadata={...existing.metadata,...data.metadata};return}let call={key:data.callId??`call-${builder.keyCounter++}`,...data.callId?{callId:data.callId}:{},toolName:data.toolName,status,...data.summary?{summary:data.summary}:{},...data.inputPreview?{inputPreview:data.inputPreview}:{},...data.outputPreview?{outputPreview:data.outputPreview}:{},...data.durationMs!==void 0?{durationMs:data.durationMs}:{},...data.metadata?{metadata:data.metadata}:{}};if(data.callId)builder.byCallId.set(data.callId,call);let group=lastActivity(builder);if(group)group.calls.push(call);else builder.items.push({type:"activity",calls:[call]})}function addText(builder,content,format){if(!content)return;let last=builder.items[builder.items.length-1];if(last&&last.type==="text"&&last.format===format)last.content+=content;else builder.items.push({type:"text",format,content})}function foldLiveChunks(chunks){let builder=newBuilder();builder.status="streaming";for(let chunk of chunks)switch(chunk.type){case"text":addText(builder,chunk.content,chunk.format??"markdown");break;case"tool":addToolActivity(builder,chunk.data);break;case"status":if(chunk.content)builder.statusLabel=chunk.content;break;case"error":builder.items.push({type:"error",message:chunk.content||"turn failed",...typeof chunk.data?.kind==="string"?{errorKind:chunk.data.kind}:{}}),builder.status="error";break;case"done":if(builder.status==="streaming")builder.status="complete";break}return builder}function finishAgentTurn(builder,key,turnId){return{kind:"agent",key,...builder.ts?{ts:builder.ts}:{},...builder.agentId?{agentId:builder.agentId}:{},...turnId!==void 0?{turnId}:{},items:builder.items,status:builder.status,...builder.statusLabel?{statusLabel:builder.statusLabel}:{}}}function foldConversation(messages,opts){let turns=[],current=null,currentTurnId,agentTurnIndex=0,flush=()=>{if(!current)return;turns.push(finishAgentTurn(current,`agent-${agentTurnIndex++}`,currentTurnId)),current=null,currentTurnId=void 0};for(let row of messages){if(row.kind==="user"){flush(),turns.push({kind:"user",key:`user-${turns.length}`,ts:row.ts,content:row.content,...row.attachments?.length?{attachments:row.attachments}:{}});continue}if(row.kind==="done")continue;let rowTurnId=row.turnId;if(current&&rowTurnId!==void 0&&currentTurnId!==void 0&&rowTurnId!==currentTurnId)flush();if(!current)current=newBuilder(),current.ts=row.ts,currentTurnId=rowTurnId;if(currentTurnId===void 0&&rowTurnId!==void 0)currentTurnId=rowTurnId;if(!current.agentId&&"agentId"in row&&row.agentId)current.agentId=row.agentId;switch(row.kind){case"assistant":addText(current,row.content,"markdown");break;case"tool":addToolActivity(current,{phase:"result",toolName:row.toolName,...row.callId?{callId:row.callId}:{},status:row.status,...row.summary?{summary:row.summary}:{},...row.inputPreview?{inputPreview:row.inputPreview}:{},...row.outputPreview?{outputPreview:row.outputPreview}:{},...row.durationMs!==void 0?{durationMs:row.durationMs}:{},...row.metadata?{metadata:row.metadata}:{}});break;case"error":current.items.push({type:"error",message:row.message,...row.errorKind?{errorKind:row.errorKind}:{}}),current.status="error";break;case"aborted":current.status="aborted";break}}if(flush(),opts?.liveChunks){let live=foldLiveChunks(opts.liveChunks);if(opts.liveAgentId)live.agentId=opts.liveAgentId;turns.push(finishAgentTurn(live,`live-${agentTurnIndex}`))}return turns}function formatRelativeTime(iso,now=Date.now()){let then=Date.parse(iso);if(Number.isNaN(then))return"";let seconds=Math.max(0,Math.floor((now-then)/1000));if(seconds<60)return"now";let minutes=Math.floor(seconds/60);if(minutes<60)return`${minutes}m`;let hours=Math.floor(minutes/60);if(hours<24)return`${hours}h`;let days=Math.floor(hours/24);if(days<7)return`${days}d`;return new Date(then).toLocaleDateString(void 0,{month:"short",day:"numeric"})}function formatAbsoluteTime(iso){let then=Date.parse(iso);if(Number.isNaN(then))return"";return new Date(then).toLocaleString()}function formatDayLabel(iso){let then=Date.parse(iso);if(Number.isNaN(then))return"";return new Date(then).toLocaleDateString(void 0,{month:"short",day:"numeric",year:"numeric"})}function dayKey(iso){if(!iso)return"";let then=new Date(iso);if(Number.isNaN(then.getTime()))return"";return`${then.getFullYear()}-${then.getMonth()}-${then.getDate()}`}import{useId,useState as useState6}from"react";function mergeObjects(a,b){if(a&&!b)return a;if(!a&&b)return b;if(a||b)return{...a,...b};return}var EMPTY_PROPS={};function mergeProps(a,b,c,d,e){if(!c&&!d&&!e&&!a)return createInitialMergedProps(b);let merged=createInitialMergedProps(a);if(b)merged=mergeInto(merged,b);if(c)merged=mergeInto(merged,c);if(d)merged=mergeInto(merged,d);if(e)merged=mergeInto(merged,e);return merged}function mergePropsN(props){if(props.length===0)return EMPTY_PROPS;if(props.length===1)return createInitialMergedProps(props[0]);let merged=createInitialMergedProps(props[0]);for(let i=1;i<props.length;i+=1)merged=mergeInto(merged,props[i]);return merged}function createInitialMergedProps(inputProps){if(isPropsGetter(inputProps))return{...resolvePropsGetter(inputProps,EMPTY_PROPS)};return copyInitialProps(inputProps)}function mergeInto(merged,inputProps){if(isPropsGetter(inputProps))return resolvePropsGetter(inputProps,merged);return mutablyMergeInto(merged,inputProps)}function copyInitialProps(inputProps){let copiedProps={...inputProps};for(let propName in copiedProps){let propValue=copiedProps[propName];if(isEventHandler(propName,propValue))copiedProps[propName]=wrapEventHandler(propValue)}return copiedProps}function mutablyMergeInto(mergedProps,externalProps){if(!externalProps)return mergedProps;for(let propName in externalProps){let externalPropValue=externalProps[propName];switch(propName){case"style":{mergedProps[propName]=mergeObjects(mergedProps.style,externalPropValue);break}case"className":{mergedProps[propName]=mergeClassNames(mergedProps.className,externalPropValue);break}default:if(isEventHandler(propName,externalPropValue))mergedProps[propName]=mergeEventHandlers(mergedProps[propName],externalPropValue);else mergedProps[propName]=externalPropValue}}return mergedProps}function isEventHandler(key,value){let code0=key.charCodeAt(0),code1=key.charCodeAt(1),code2=key.charCodeAt(2);return code0===111&&code1===110&&code2>=65&&code2<=90&&(typeof value==="function"||typeof value>"u")}function isPropsGetter(inputProps){return typeof inputProps==="function"}function resolvePropsGetter(inputProps,previousProps){if(isPropsGetter(inputProps))return inputProps(previousProps);return inputProps??EMPTY_PROPS}function mergeEventHandlers(ourHandler,theirHandler){if(!theirHandler)return ourHandler;if(!ourHandler)return wrapEventHandler(theirHandler);return(...args)=>{let event=args[0];if(isSyntheticEvent(event)){let baseUIEvent=event;makeEventPreventable(baseUIEvent);let result2=theirHandler(...args);if(!baseUIEvent.baseUIHandlerPrevented)ourHandler?.(...args);return result2}let result=theirHandler(...args);return ourHandler?.(...args),result}}function wrapEventHandler(handler){if(!handler)return handler;return(...args)=>{let event=args[0];if(isSyntheticEvent(event))makeEventPreventable(event);return handler(...args)}}function makeEventPreventable(event){return event.preventBaseUIHandler=()=>{event.baseUIHandlerPrevented=!0},event}function mergeClassNames(ourClassName,theirClassName){if(theirClassName){if(ourClassName)return theirClassName+" "+ourClassName;return theirClassName}return ourClassName}function isSyntheticEvent(event){return event!=null&&typeof event==="object"&&"nativeEvent"in event}function createFormatErrorMessage(baseUrl,prefix){return function(code,...args){let url=new URL(baseUrl);return url.searchParams.set("code",code.toString()),args.forEach((arg)=>url.searchParams.append("args[]",arg)),`${prefix} error #${code}; visit ${url} for the full message.`}}var formatErrorMessage=createFormatErrorMessage("https://base-ui.com/production-error","Base UI"),formatErrorMessage_default=formatErrorMessage;import*as React4 from"react";import*as React from"react";var UNINITIALIZED={};function useRefWithInit(init,initArg){let ref=React.useRef(UNINITIALIZED);if(ref.current===UNINITIALIZED)ref.current=init(initArg);return ref}function useMergedRefs(a,b,c,d){let forkRef=useRefWithInit(createForkRef).current;if(didChange(forkRef,a,b,c,d))update(forkRef,[a,b,c,d]);return forkRef.callback}function useMergedRefsN(refs){let forkRef=useRefWithInit(createForkRef).current;if(didChangeN(forkRef,refs))update(forkRef,refs);return forkRef.callback}function createForkRef(){return{callback:null,cleanup:null,refs:[]}}function didChange(forkRef,a,b,c,d){return forkRef.refs[0]!==a||forkRef.refs[1]!==b||forkRef.refs[2]!==c||forkRef.refs[3]!==d}function didChangeN(forkRef,newRefs){return forkRef.refs.length!==newRefs.length||forkRef.refs.some((ref,index)=>ref!==newRefs[index])}function update(forkRef,refs){if(forkRef.refs=refs,refs.every((ref)=>ref==null)){forkRef.callback=null;return}forkRef.callback=(instance)=>{if(forkRef.cleanup)forkRef.cleanup(),forkRef.cleanup=null;if(instance!=null){let cleanupCallbacks=Array(refs.length).fill(null);for(let i=0;i<refs.length;i+=1){let ref=refs[i];if(ref==null)continue;switch(typeof ref){case"function":{let refCleanup=ref(instance);if(typeof refCleanup==="function")cleanupCallbacks[i]=refCleanup;break}case"object":{ref.current=instance;break}default:}}forkRef.cleanup=()=>{for(let i=0;i<refs.length;i+=1){let ref=refs[i];if(ref==null)continue;switch(typeof ref){case"function":{let cleanupCallback=cleanupCallbacks[i];if(typeof cleanupCallback==="function")cleanupCallback();else ref(null);break}case"object":{ref.current=null;break}default:}}}}}}import*as React3 from"react";import*as React2 from"react";var majorVersion=parseInt(React2.version,10);function isReactVersionAtLeast(reactVersionToCheck){return majorVersion>=reactVersionToCheck}function getReactElementRef(element){if(!React3.isValidElement(element))return null;let reactElement=element,propsWithRef=reactElement.props;return(isReactVersionAtLeast(19)?propsWithRef?.ref:reactElement.ref)??null}function NOOP(){}var EMPTY_ARRAY=Object.freeze([]),EMPTY_OBJECT=Object.freeze({});function getStateAttributesProps(state,customMapping){let props={};for(let key in state){let value=state[key];if(customMapping?.hasOwnProperty(key)){let customProps=customMapping[key](value);if(customProps!=null)Object.assign(props,customProps);continue}if(value===!0)props[`data-${key.toLowerCase()}`]="";else if(value)props[`data-${key.toLowerCase()}`]=value.toString()}return props}function resolveClassName(className,state){return typeof className==="function"?className(state):className}function resolveStyle(style,state){return typeof style==="function"?style(state):style}import{createElement as _createElement}from"react";function useRenderElement(element,componentProps,params={}){let renderProp=componentProps.render,outProps=useRenderElementProps(componentProps,params);if(params.enabled===!1)return null;let state=params.state??EMPTY_OBJECT;return evaluateRenderProp(element,renderProp,outProps,state)}function useRenderElementProps(componentProps,params={}){let{className:classNameProp,style:styleProp,render:renderProp}=componentProps,{state=EMPTY_OBJECT,ref,props,stateAttributesMapping,enabled=!0}=params,className=enabled?resolveClassName(classNameProp,state):void 0,style=enabled?resolveStyle(styleProp,state):void 0,stateProps=enabled?getStateAttributesProps(state,stateAttributesMapping):EMPTY_OBJECT,resolvedProps=enabled&&props?resolveRenderFunctionProps(props):void 0,outProps=enabled?mergeObjects(stateProps,resolvedProps)??{}:EMPTY_OBJECT;if(typeof document<"u")if(!enabled)useMergedRefs(null,null);else if(Array.isArray(ref))outProps.ref=useMergedRefsN([outProps.ref,getReactElementRef(renderProp),...ref]);else outProps.ref=useMergedRefs(outProps.ref,getReactElementRef(renderProp),ref);if(!enabled)return EMPTY_OBJECT;if(className!==void 0)outProps.className=mergeClassNames(outProps.className,className);if(style!==void 0)outProps.style=mergeObjects(outProps.style,style);return outProps}function resolveRenderFunctionProps(props){if(Array.isArray(props))return mergePropsN(props);return mergeProps(void 0,props)}var REACT_LAZY_TYPE=Symbol.for("react.lazy");function evaluateRenderProp(element,render,props,state){if(render){if(typeof render==="function")return render(props,state);let mergedProps=mergeProps(props,render.props);mergedProps.ref=props.ref;let newElement=render;if(newElement?.$$typeof===REACT_LAZY_TYPE)newElement=React4.Children.toArray(render)[0];return React4.cloneElement(newElement,mergedProps)}if(element){if(typeof element==="string")return renderTag(element,props)}throw Error(formatErrorMessage_default(8))}function renderTag(Tag,props){if(Tag==="button")return _createElement("button",{type:"button",...props,key:props.key});if(Tag==="img")return _createElement("img",{alt:"",...props,key:props.key});return React4.createElement(Tag,props)}function useRender(params){return useRenderElement(params.defaultTagName??"div",params,params)}function r(e){var t,f,n="";if(typeof e=="string"||typeof e=="number")n+=e;else if(typeof e=="object")if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(f=r(e[t]))&&(n&&(n+=" "),n+=f)}else for(f in e)e[f]&&(n&&(n+=" "),n+=f);return n}function clsx(){for(var e,t,f=0,n="",o=arguments.length;f<o;f++)(e=arguments[f])&&(t=r(e))&&(n&&(n+=" "),n+=t);return n}var falsyToString=(value)=>typeof value==="boolean"?`${value}`:value===0?"0":value,cx=clsx,cva=(base,config)=>(props)=>{var _config_compoundVariants;if((config===null||config===void 0?void 0:config.variants)==null)return cx(base,props===null||props===void 0?void 0:props.class,props===null||props===void 0?void 0:props.className);let{variants,defaultVariants}=config,getVariantClassNames=Object.keys(variants).map((variant)=>{let variantProp=props===null||props===void 0?void 0:props[variant],defaultVariantProp=defaultVariants===null||defaultVariants===void 0?void 0:defaultVariants[variant];if(variantProp===null)return null;let variantKey=falsyToString(variantProp)||falsyToString(defaultVariantProp);return variants[variant][variantKey]}),propsWithoutUndefined=props&&Object.entries(props).reduce((acc,param)=>{let[key,value]=param;if(value===void 0)return acc;return acc[key]=value,acc},{}),getCompoundVariantClassNames=config===null||config===void 0?void 0:(_config_compoundVariants=config.compoundVariants)===null||_config_compoundVariants===void 0?void 0:_config_compoundVariants.reduce((acc,param)=>{let{class:cvClass,className:cvClassName,...compoundVariantOptions}=param;return Object.entries(compoundVariantOptions).every((param2)=>{let[key,value]=param2;return Array.isArray(value)?value.includes({...defaultVariants,...propsWithoutUndefined}[key]):{...defaultVariants,...propsWithoutUndefined}[key]===value})?[...acc,cvClass,cvClassName]:acc},[]);return cx(base,getVariantClassNames,getCompoundVariantClassNames,props===null||props===void 0?void 0:props.class,props===null||props===void 0?void 0:props.className)};var concatArrays=(array1,array2)=>{let combinedArray=Array(array1.length+array2.length);for(let i=0;i<array1.length;i++)combinedArray[i]=array1[i];for(let i=0;i<array2.length;i++)combinedArray[array1.length+i]=array2[i];return combinedArray},createClassValidatorObject=(classGroupId,validator)=>({classGroupId,validator}),createClassPartObject=(nextPart=new Map,validators=null,classGroupId)=>({nextPart,validators,classGroupId});var EMPTY_CONFLICTS=[];var createClassGroupUtils=(config)=>{let classMap=createClassMap(config),{conflictingClassGroups,conflictingClassGroupModifiers}=config;return{getClassGroupId:(className)=>{if(className.startsWith("[")&&className.endsWith("]"))return getGroupIdForArbitraryProperty(className);let classParts=className.split("-"),startIndex=classParts[0]===""&&classParts.length>1?1:0;return getGroupRecursive(classParts,startIndex,classMap)},getConflictingClassGroupIds:(classGroupId,hasPostfixModifier)=>{if(hasPostfixModifier){let modifierConflicts=conflictingClassGroupModifiers[classGroupId],baseConflicts=conflictingClassGroups[classGroupId];if(modifierConflicts){if(baseConflicts)return concatArrays(baseConflicts,modifierConflicts);return modifierConflicts}return baseConflicts||EMPTY_CONFLICTS}return conflictingClassGroups[classGroupId]||EMPTY_CONFLICTS}}},getGroupRecursive=(classParts,startIndex,classPartObject)=>{if(classParts.length-startIndex===0)return classPartObject.classGroupId;let currentClassPart=classParts[startIndex],nextClassPartObject=classPartObject.nextPart.get(currentClassPart);if(nextClassPartObject){let result=getGroupRecursive(classParts,startIndex+1,nextClassPartObject);if(result)return result}let validators=classPartObject.validators;if(validators===null)return;let classRest=startIndex===0?classParts.join("-"):classParts.slice(startIndex).join("-"),validatorsLength=validators.length;for(let i=0;i<validatorsLength;i++){let validatorObj=validators[i];if(validatorObj.validator(classRest))return validatorObj.classGroupId}return},getGroupIdForArbitraryProperty=(className)=>className.slice(1,-1).indexOf(":")===-1?void 0:(()=>{let content=className.slice(1,-1),colonIndex=content.indexOf(":"),property=content.slice(0,colonIndex);return property?"arbitrary.."+property:void 0})(),createClassMap=(config)=>{let{theme,classGroups}=config;return processClassGroups(classGroups,theme)},processClassGroups=(classGroups,theme)=>{let classMap=createClassPartObject();for(let classGroupId in classGroups){let group=classGroups[classGroupId];processClassesRecursively(group,classMap,classGroupId,theme)}return classMap},processClassesRecursively=(classGroup,classPartObject,classGroupId,theme)=>{let len=classGroup.length;for(let i=0;i<len;i++){let classDefinition=classGroup[i];processClassDefinition(classDefinition,classPartObject,classGroupId,theme)}},processClassDefinition=(classDefinition,classPartObject,classGroupId,theme)=>{if(typeof classDefinition==="string"){processStringDefinition(classDefinition,classPartObject,classGroupId);return}if(typeof classDefinition==="function"){processFunctionDefinition(classDefinition,classPartObject,classGroupId,theme);return}processObjectDefinition(classDefinition,classPartObject,classGroupId,theme)},processStringDefinition=(classDefinition,classPartObject,classGroupId)=>{let classPartObjectToEdit=classDefinition===""?classPartObject:getPart(classPartObject,classDefinition);classPartObjectToEdit.classGroupId=classGroupId},processFunctionDefinition=(classDefinition,classPartObject,classGroupId,theme)=>{if(isThemeGetter(classDefinition)){processClassesRecursively(classDefinition(theme),classPartObject,classGroupId,theme);return}if(classPartObject.validators===null)classPartObject.validators=[];classPartObject.validators.push(createClassValidatorObject(classGroupId,classDefinition))},processObjectDefinition=(classDefinition,classPartObject,classGroupId,theme)=>{let entries=Object.entries(classDefinition),len=entries.length;for(let i=0;i<len;i++){let[key,value]=entries[i];processClassesRecursively(value,getPart(classPartObject,key),classGroupId,theme)}},getPart=(classPartObject,path)=>{let current=classPartObject,parts=path.split("-"),len=parts.length;for(let i=0;i<len;i++){let part=parts[i],next=current.nextPart.get(part);if(!next)next=createClassPartObject(),current.nextPart.set(part,next);current=next}return current},isThemeGetter=(func)=>("isThemeGetter"in func)&&func.isThemeGetter===!0,createLruCache=(maxCacheSize)=>{if(maxCacheSize<1)return{get:()=>{return},set:()=>{}};let cacheSize=0,cache=Object.create(null),previousCache=Object.create(null),update2=(key,value)=>{if(cache[key]=value,cacheSize++,cacheSize>maxCacheSize)cacheSize=0,previousCache=cache,cache=Object.create(null)};return{get(key){let value=cache[key];if(value!==void 0)return value;if((value=previousCache[key])!==void 0)return update2(key,value),value},set(key,value){if(key in cache)cache[key]=value;else update2(key,value)}}};var EMPTY_MODIFIERS=[],createResultObject=(modifiers,hasImportantModifier,baseClassName,maybePostfixModifierPosition,isExternal)=>({modifiers,hasImportantModifier,baseClassName,maybePostfixModifierPosition,isExternal}),createParseClassName=(config)=>{let{prefix,experimentalParseClassName}=config,parseClassName=(className)=>{let modifiers=[],bracketDepth=0,parenDepth=0,modifierStart=0,postfixModifierPosition,len=className.length;for(let index=0;index<len;index++){let currentCharacter=className[index];if(bracketDepth===0&&parenDepth===0){if(currentCharacter===":"){modifiers.push(className.slice(modifierStart,index)),modifierStart=index+1;continue}if(currentCharacter==="/"){postfixModifierPosition=index;continue}}if(currentCharacter==="[")bracketDepth++;else if(currentCharacter==="]")bracketDepth--;else if(currentCharacter==="(")parenDepth++;else if(currentCharacter===")")parenDepth--}let baseClassNameWithImportantModifier=modifiers.length===0?className:className.slice(modifierStart),baseClassName=baseClassNameWithImportantModifier,hasImportantModifier=!1;if(baseClassNameWithImportantModifier.endsWith("!"))baseClassName=baseClassNameWithImportantModifier.slice(0,-1),hasImportantModifier=!0;else if(baseClassNameWithImportantModifier.startsWith("!"))baseClassName=baseClassNameWithImportantModifier.slice(1),hasImportantModifier=!0;let maybePostfixModifierPosition=postfixModifierPosition&&postfixModifierPosition>modifierStart?postfixModifierPosition-modifierStart:void 0;return createResultObject(modifiers,hasImportantModifier,baseClassName,maybePostfixModifierPosition)};if(prefix){let fullPrefix=prefix+":",parseClassNameOriginal=parseClassName;parseClassName=(className)=>className.startsWith(fullPrefix)?parseClassNameOriginal(className.slice(fullPrefix.length)):createResultObject(EMPTY_MODIFIERS,!1,className,void 0,!0)}if(experimentalParseClassName){let parseClassNameOriginal=parseClassName;parseClassName=(className)=>experimentalParseClassName({className,parseClassName:parseClassNameOriginal})}return parseClassName},createSortModifiers=(config)=>{let modifierWeights=new Map;return config.orderSensitiveModifiers.forEach((mod,index)=>{modifierWeights.set(mod,1e6+index)}),(modifiers)=>{let result=[],currentSegment=[];for(let i=0;i<modifiers.length;i++){let modifier=modifiers[i],isArbitrary=modifier[0]==="[",isOrderSensitive=modifierWeights.has(modifier);if(isArbitrary||isOrderSensitive){if(currentSegment.length>0)currentSegment.sort(),result.push(...currentSegment),currentSegment=[];result.push(modifier)}else currentSegment.push(modifier)}if(currentSegment.length>0)currentSegment.sort(),result.push(...currentSegment);return result}},createConfigUtils=(config)=>({cache:createLruCache(config.cacheSize),parseClassName:createParseClassName(config),sortModifiers:createSortModifiers(config),...createClassGroupUtils(config)}),SPLIT_CLASSES_REGEX=/\s+/,mergeClassList=(classList,configUtils)=>{let{parseClassName,getClassGroupId,getConflictingClassGroupIds,sortModifiers}=configUtils,classGroupsInConflict=[],classNames=classList.trim().split(SPLIT_CLASSES_REGEX),result="";for(let index=classNames.length-1;index>=0;index-=1){let originalClassName=classNames[index],{isExternal,modifiers,hasImportantModifier,baseClassName,maybePostfixModifierPosition}=parseClassName(originalClassName);if(isExternal){result=originalClassName+(result.length>0?" "+result:result);continue}let hasPostfixModifier=!!maybePostfixModifierPosition,classGroupId=getClassGroupId(hasPostfixModifier?baseClassName.substring(0,maybePostfixModifierPosition):baseClassName);if(!classGroupId){if(!hasPostfixModifier){result=originalClassName+(result.length>0?" "+result:result);continue}if(classGroupId=getClassGroupId(baseClassName),!classGroupId){result=originalClassName+(result.length>0?" "+result:result);continue}hasPostfixModifier=!1}let variantModifier=modifiers.length===0?"":modifiers.length===1?modifiers[0]:sortModifiers(modifiers).join(":"),modifierId=hasImportantModifier?variantModifier+"!":variantModifier,classId=modifierId+classGroupId;if(classGroupsInConflict.indexOf(classId)>-1)continue;classGroupsInConflict.push(classId);let conflictGroups=getConflictingClassGroupIds(classGroupId,hasPostfixModifier);for(let i=0;i<conflictGroups.length;++i){let group=conflictGroups[i];classGroupsInConflict.push(modifierId+group)}result=originalClassName+(result.length>0?" "+result:result)}return result},twJoin=(...classLists)=>{let index=0,argument,resolvedValue,string="";while(index<classLists.length)if(argument=classLists[index++]){if(resolvedValue=toValue(argument))string&&(string+=" "),string+=resolvedValue}return string},toValue=(mix)=>{if(typeof mix==="string")return mix;let resolvedValue,string="";for(let k=0;k<mix.length;k++)if(mix[k]){if(resolvedValue=toValue(mix[k]))string&&(string+=" "),string+=resolvedValue}return string},createTailwindMerge=(createConfigFirst,...createConfigRest)=>{let configUtils,cacheGet,cacheSet,functionToCall,initTailwindMerge=(classList)=>{let config=createConfigRest.reduce((previousConfig,createConfigCurrent)=>createConfigCurrent(previousConfig),createConfigFirst());return configUtils=createConfigUtils(config),cacheGet=configUtils.cache.get,cacheSet=configUtils.cache.set,functionToCall=tailwindMerge,tailwindMerge(classList)},tailwindMerge=(classList)=>{let cachedResult=cacheGet(classList);if(cachedResult)return cachedResult;let result=mergeClassList(classList,configUtils);return cacheSet(classList,result),result};return functionToCall=initTailwindMerge,(...args)=>functionToCall(twJoin(...args))},fallbackThemeArr=[],fromTheme=(key)=>{let themeGetter=(theme)=>theme[key]||fallbackThemeArr;return themeGetter.isThemeGetter=!0,themeGetter},arbitraryValueRegex=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,arbitraryVariableRegex=/^\((?:(\w[\w-]*):)?(.+)\)$/i,fractionRegex=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,tshirtUnitRegex=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,lengthUnitRegex=/\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$/,colorFunctionRegex=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,shadowRegex=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,imageRegex=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,isFraction=(value)=>fractionRegex.test(value),isNumber=(value)=>!!value&&!Number.isNaN(Number(value)),isInteger=(value)=>!!value&&Number.isInteger(Number(value)),isPercent=(value)=>value.endsWith("%")&&isNumber(value.slice(0,-1)),isTshirtSize=(value)=>tshirtUnitRegex.test(value),isAny=()=>!0,isLengthOnly=(value)=>lengthUnitRegex.test(value)&&!colorFunctionRegex.test(value),isNever=()=>!1,isShadow=(value)=>shadowRegex.test(value),isImage=(value)=>imageRegex.test(value),isAnyNonArbitrary=(value)=>!isArbitraryValue(value)&&!isArbitraryVariable(value),isArbitrarySize=(value)=>getIsArbitraryValue(value,isLabelSize,isNever),isArbitraryValue=(value)=>arbitraryValueRegex.test(value),isArbitraryLength=(value)=>getIsArbitraryValue(value,isLabelLength,isLengthOnly),isArbitraryNumber=(value)=>getIsArbitraryValue(value,isLabelNumber,isNumber),isArbitraryWeight=(value)=>getIsArbitraryValue(value,isLabelWeight,isAny),isArbitraryFamilyName=(value)=>getIsArbitraryValue(value,isLabelFamilyName,isNever),isArbitraryPosition=(value)=>getIsArbitraryValue(value,isLabelPosition,isNever),isArbitraryImage=(value)=>getIsArbitraryValue(value,isLabelImage,isImage),isArbitraryShadow=(value)=>getIsArbitraryValue(value,isLabelShadow,isShadow),isArbitraryVariable=(value)=>arbitraryVariableRegex.test(value),isArbitraryVariableLength=(value)=>getIsArbitraryVariable(value,isLabelLength),isArbitraryVariableFamilyName=(value)=>getIsArbitraryVariable(value,isLabelFamilyName),isArbitraryVariablePosition=(value)=>getIsArbitraryVariable(value,isLabelPosition),isArbitraryVariableSize=(value)=>getIsArbitraryVariable(value,isLabelSize),isArbitraryVariableImage=(value)=>getIsArbitraryVariable(value,isLabelImage),isArbitraryVariableShadow=(value)=>getIsArbitraryVariable(value,isLabelShadow,!0),isArbitraryVariableWeight=(value)=>getIsArbitraryVariable(value,isLabelWeight,!0),getIsArbitraryValue=(value,testLabel,testValue)=>{let result=arbitraryValueRegex.exec(value);if(result){if(result[1])return testLabel(result[1]);return testValue(result[2])}return!1},getIsArbitraryVariable=(value,testLabel,shouldMatchNoLabel=!1)=>{let result=arbitraryVariableRegex.exec(value);if(result){if(result[1])return testLabel(result[1]);return shouldMatchNoLabel}return!1},isLabelPosition=(label)=>label==="position"||label==="percentage",isLabelImage=(label)=>label==="image"||label==="url",isLabelSize=(label)=>label==="length"||label==="size"||label==="bg-size",isLabelLength=(label)=>label==="length",isLabelNumber=(label)=>label==="number",isLabelFamilyName=(label)=>label==="family-name",isLabelWeight=(label)=>label==="number"||label==="weight",isLabelShadow=(label)=>label==="shadow";var getDefaultConfig=()=>{let themeColor=fromTheme("color"),themeFont=fromTheme("font"),themeText=fromTheme("text"),themeFontWeight=fromTheme("font-weight"),themeTracking=fromTheme("tracking"),themeLeading=fromTheme("leading"),themeBreakpoint=fromTheme("breakpoint"),themeContainer=fromTheme("container"),themeSpacing=fromTheme("spacing"),themeRadius=fromTheme("radius"),themeShadow=fromTheme("shadow"),themeInsetShadow=fromTheme("inset-shadow"),themeTextShadow=fromTheme("text-shadow"),themeDropShadow=fromTheme("drop-shadow"),themeBlur=fromTheme("blur"),themePerspective=fromTheme("perspective"),themeAspect=fromTheme("aspect"),themeEase=fromTheme("ease"),themeAnimate=fromTheme("animate"),scaleBreak=()=>["auto","avoid","all","avoid-page","page","left","right","column"],scalePosition=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],scalePositionWithArbitrary=()=>[...scalePosition(),isArbitraryVariable,isArbitraryValue],scaleOverflow=()=>["auto","hidden","clip","visible","scroll"],scaleOverscroll=()=>["auto","contain","none"],scaleUnambiguousSpacing=()=>[isArbitraryVariable,isArbitraryValue,themeSpacing],scaleInset=()=>[isFraction,"full","auto",...scaleUnambiguousSpacing()],scaleGridTemplateColsRows=()=>[isInteger,"none","subgrid",isArbitraryVariable,isArbitraryValue],scaleGridColRowStartAndEnd=()=>["auto",{span:["full",isInteger,isArbitraryVariable,isArbitraryValue]},isInteger,isArbitraryVariable,isArbitraryValue],scaleGridColRowStartOrEnd=()=>[isInteger,"auto",isArbitraryVariable,isArbitraryValue],scaleGridAutoColsRows=()=>["auto","min","max","fr",isArbitraryVariable,isArbitraryValue],scaleAlignPrimaryAxis=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],scaleAlignSecondaryAxis=()=>["start","end","center","stretch","center-safe","end-safe"],scaleMargin=()=>["auto",...scaleUnambiguousSpacing()],scaleSizing=()=>[isFraction,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...scaleUnambiguousSpacing()],scaleSizingInline=()=>[isFraction,"screen","full","dvw","lvw","svw","min","max","fit",...scaleUnambiguousSpacing()],scaleSizingBlock=()=>[isFraction,"screen","full","lh","dvh","lvh","svh","min","max","fit",...scaleUnambiguousSpacing()],scaleColor=()=>[themeColor,isArbitraryVariable,isArbitraryValue],scaleBgPosition=()=>[...scalePosition(),isArbitraryVariablePosition,isArbitraryPosition,{position:[isArbitraryVariable,isArbitraryValue]}],scaleBgRepeat=()=>["no-repeat",{repeat:["","x","y","space","round"]}],scaleBgSize=()=>["auto","cover","contain",isArbitraryVariableSize,isArbitrarySize,{size:[isArbitraryVariable,isArbitraryValue]}],scaleGradientStopPosition=()=>[isPercent,isArbitraryVariableLength,isArbitraryLength],scaleRadius=()=>["","none","full",themeRadius,isArbitraryVariable,isArbitraryValue],scaleBorderWidth=()=>["",isNumber,isArbitraryVariableLength,isArbitraryLength],scaleLineStyle=()=>["solid","dashed","dotted","double"],scaleBlendMode=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],scaleMaskImagePosition=()=>[isNumber,isPercent,isArbitraryVariablePosition,isArbitraryPosition],scaleBlur=()=>["","none",themeBlur,isArbitraryVariable,isArbitraryValue],scaleRotate=()=>["none",isNumber,isArbitraryVariable,isArbitraryValue],scaleScale=()=>["none",isNumber,isArbitraryVariable,isArbitraryValue],scaleSkew=()=>[isNumber,isArbitraryVariable,isArbitraryValue],scaleTranslate=()=>[isFraction,"full",...scaleUnambiguousSpacing()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[isTshirtSize],breakpoint:[isTshirtSize],color:[isAny],container:[isTshirtSize],"drop-shadow":[isTshirtSize],ease:["in","out","in-out"],font:[isAnyNonArbitrary],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[isTshirtSize],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[isTshirtSize],shadow:[isTshirtSize],spacing:["px",isNumber],text:[isTshirtSize],"text-shadow":[isTshirtSize],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",isFraction,isArbitraryValue,isArbitraryVariable,themeAspect]}],container:["container"],columns:[{columns:[isNumber,isArbitraryValue,isArbitraryVariable,themeContainer]}],"break-after":[{"break-after":scaleBreak()}],"break-before":[{"break-before":scaleBreak()}],"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:scalePositionWithArbitrary()}],overflow:[{overflow:scaleOverflow()}],"overflow-x":[{"overflow-x":scaleOverflow()}],"overflow-y":[{"overflow-y":scaleOverflow()}],overscroll:[{overscroll:scaleOverscroll()}],"overscroll-x":[{"overscroll-x":scaleOverscroll()}],"overscroll-y":[{"overscroll-y":scaleOverscroll()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:scaleInset()}],"inset-x":[{"inset-x":scaleInset()}],"inset-y":[{"inset-y":scaleInset()}],start:[{"inset-s":scaleInset(),start:scaleInset()}],end:[{"inset-e":scaleInset(),end:scaleInset()}],"inset-bs":[{"inset-bs":scaleInset()}],"inset-be":[{"inset-be":scaleInset()}],top:[{top:scaleInset()}],right:[{right:scaleInset()}],bottom:[{bottom:scaleInset()}],left:[{left:scaleInset()}],visibility:["visible","invisible","collapse"],z:[{z:[isInteger,"auto",isArbitraryVariable,isArbitraryValue]}],basis:[{basis:[isFraction,"full","auto",themeContainer,...scaleUnambiguousSpacing()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[isNumber,isFraction,"auto","initial","none",isArbitraryValue]}],grow:[{grow:["",isNumber,isArbitraryVariable,isArbitraryValue]}],shrink:[{shrink:["",isNumber,isArbitraryVariable,isArbitraryValue]}],order:[{order:[isInteger,"first","last","none",isArbitraryVariable,isArbitraryValue]}],"grid-cols":[{"grid-cols":scaleGridTemplateColsRows()}],"col-start-end":[{col:scaleGridColRowStartAndEnd()}],"col-start":[{"col-start":scaleGridColRowStartOrEnd()}],"col-end":[{"col-end":scaleGridColRowStartOrEnd()}],"grid-rows":[{"grid-rows":scaleGridTemplateColsRows()}],"row-start-end":[{row:scaleGridColRowStartAndEnd()}],"row-start":[{"row-start":scaleGridColRowStartOrEnd()}],"row-end":[{"row-end":scaleGridColRowStartOrEnd()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":scaleGridAutoColsRows()}],"auto-rows":[{"auto-rows":scaleGridAutoColsRows()}],gap:[{gap:scaleUnambiguousSpacing()}],"gap-x":[{"gap-x":scaleUnambiguousSpacing()}],"gap-y":[{"gap-y":scaleUnambiguousSpacing()}],"justify-content":[{justify:[...scaleAlignPrimaryAxis(),"normal"]}],"justify-items":[{"justify-items":[...scaleAlignSecondaryAxis(),"normal"]}],"justify-self":[{"justify-self":["auto",...scaleAlignSecondaryAxis()]}],"align-content":[{content:["normal",...scaleAlignPrimaryAxis()]}],"align-items":[{items:[...scaleAlignSecondaryAxis(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...scaleAlignSecondaryAxis(),{baseline:["","last"]}]}],"place-content":[{"place-content":scaleAlignPrimaryAxis()}],"place-items":[{"place-items":[...scaleAlignSecondaryAxis(),"baseline"]}],"place-self":[{"place-self":["auto",...scaleAlignSecondaryAxis()]}],p:[{p:scaleUnambiguousSpacing()}],px:[{px:scaleUnambiguousSpacing()}],py:[{py:scaleUnambiguousSpacing()}],ps:[{ps:scaleUnambiguousSpacing()}],pe:[{pe:scaleUnambiguousSpacing()}],pbs:[{pbs:scaleUnambiguousSpacing()}],pbe:[{pbe:scaleUnambiguousSpacing()}],pt:[{pt:scaleUnambiguousSpacing()}],pr:[{pr:scaleUnambiguousSpacing()}],pb:[{pb:scaleUnambiguousSpacing()}],pl:[{pl:scaleUnambiguousSpacing()}],m:[{m:scaleMargin()}],mx:[{mx:scaleMargin()}],my:[{my:scaleMargin()}],ms:[{ms:scaleMargin()}],me:[{me:scaleMargin()}],mbs:[{mbs:scaleMargin()}],mbe:[{mbe:scaleMargin()}],mt:[{mt:scaleMargin()}],mr:[{mr:scaleMargin()}],mb:[{mb:scaleMargin()}],ml:[{ml:scaleMargin()}],"space-x":[{"space-x":scaleUnambiguousSpacing()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":scaleUnambiguousSpacing()}],"space-y-reverse":["space-y-reverse"],size:[{size:scaleSizing()}],"inline-size":[{inline:["auto",...scaleSizingInline()]}],"min-inline-size":[{"min-inline":["auto",...scaleSizingInline()]}],"max-inline-size":[{"max-inline":["none",...scaleSizingInline()]}],"block-size":[{block:["auto",...scaleSizingBlock()]}],"min-block-size":[{"min-block":["auto",...scaleSizingBlock()]}],"max-block-size":[{"max-block":["none",...scaleSizingBlock()]}],w:[{w:[themeContainer,"screen",...scaleSizing()]}],"min-w":[{"min-w":[themeContainer,"screen","none",...scaleSizing()]}],"max-w":[{"max-w":[themeContainer,"screen","none","prose",{screen:[themeBreakpoint]},...scaleSizing()]}],h:[{h:["screen","lh",...scaleSizing()]}],"min-h":[{"min-h":["screen","lh","none",...scaleSizing()]}],"max-h":[{"max-h":["screen","lh",...scaleSizing()]}],"font-size":[{text:["base",themeText,isArbitraryVariableLength,isArbitraryLength]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[themeFontWeight,isArbitraryVariableWeight,isArbitraryWeight]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",isPercent,isArbitraryValue]}],"font-family":[{font:[isArbitraryVariableFamilyName,isArbitraryFamilyName,themeFont]}],"font-features":[{"font-features":[isArbitraryValue]}],"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:[themeTracking,isArbitraryVariable,isArbitraryValue]}],"line-clamp":[{"line-clamp":[isNumber,"none",isArbitraryVariable,isArbitraryNumber]}],leading:[{leading:[themeLeading,...scaleUnambiguousSpacing()]}],"list-image":[{"list-image":["none",isArbitraryVariable,isArbitraryValue]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",isArbitraryVariable,isArbitraryValue]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:scaleColor()}],"text-color":[{text:scaleColor()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...scaleLineStyle(),"wavy"]}],"text-decoration-thickness":[{decoration:[isNumber,"from-font","auto",isArbitraryVariable,isArbitraryLength]}],"text-decoration-color":[{decoration:scaleColor()}],"underline-offset":[{"underline-offset":[isNumber,"auto",isArbitraryVariable,isArbitraryValue]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:scaleUnambiguousSpacing()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",isArbitraryVariable,isArbitraryValue]}],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",isArbitraryVariable,isArbitraryValue]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:scaleBgPosition()}],"bg-repeat":[{bg:scaleBgRepeat()}],"bg-size":[{bg:scaleBgSize()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},isInteger,isArbitraryVariable,isArbitraryValue],radial:["",isArbitraryVariable,isArbitraryValue],conic:[isInteger,isArbitraryVariable,isArbitraryValue]},isArbitraryVariableImage,isArbitraryImage]}],"bg-color":[{bg:scaleColor()}],"gradient-from-pos":[{from:scaleGradientStopPosition()}],"gradient-via-pos":[{via:scaleGradientStopPosition()}],"gradient-to-pos":[{to:scaleGradientStopPosition()}],"gradient-from":[{from:scaleColor()}],"gradient-via":[{via:scaleColor()}],"gradient-to":[{to:scaleColor()}],rounded:[{rounded:scaleRadius()}],"rounded-s":[{"rounded-s":scaleRadius()}],"rounded-e":[{"rounded-e":scaleRadius()}],"rounded-t":[{"rounded-t":scaleRadius()}],"rounded-r":[{"rounded-r":scaleRadius()}],"rounded-b":[{"rounded-b":scaleRadius()}],"rounded-l":[{"rounded-l":scaleRadius()}],"rounded-ss":[{"rounded-ss":scaleRadius()}],"rounded-se":[{"rounded-se":scaleRadius()}],"rounded-ee":[{"rounded-ee":scaleRadius()}],"rounded-es":[{"rounded-es":scaleRadius()}],"rounded-tl":[{"rounded-tl":scaleRadius()}],"rounded-tr":[{"rounded-tr":scaleRadius()}],"rounded-br":[{"rounded-br":scaleRadius()}],"rounded-bl":[{"rounded-bl":scaleRadius()}],"border-w":[{border:scaleBorderWidth()}],"border-w-x":[{"border-x":scaleBorderWidth()}],"border-w-y":[{"border-y":scaleBorderWidth()}],"border-w-s":[{"border-s":scaleBorderWidth()}],"border-w-e":[{"border-e":scaleBorderWidth()}],"border-w-bs":[{"border-bs":scaleBorderWidth()}],"border-w-be":[{"border-be":scaleBorderWidth()}],"border-w-t":[{"border-t":scaleBorderWidth()}],"border-w-r":[{"border-r":scaleBorderWidth()}],"border-w-b":[{"border-b":scaleBorderWidth()}],"border-w-l":[{"border-l":scaleBorderWidth()}],"divide-x":[{"divide-x":scaleBorderWidth()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":scaleBorderWidth()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...scaleLineStyle(),"hidden","none"]}],"divide-style":[{divide:[...scaleLineStyle(),"hidden","none"]}],"border-color":[{border:scaleColor()}],"border-color-x":[{"border-x":scaleColor()}],"border-color-y":[{"border-y":scaleColor()}],"border-color-s":[{"border-s":scaleColor()}],"border-color-e":[{"border-e":scaleColor()}],"border-color-bs":[{"border-bs":scaleColor()}],"border-color-be":[{"border-be":scaleColor()}],"border-color-t":[{"border-t":scaleColor()}],"border-color-r":[{"border-r":scaleColor()}],"border-color-b":[{"border-b":scaleColor()}],"border-color-l":[{"border-l":scaleColor()}],"divide-color":[{divide:scaleColor()}],"outline-style":[{outline:[...scaleLineStyle(),"none","hidden"]}],"outline-offset":[{"outline-offset":[isNumber,isArbitraryVariable,isArbitraryValue]}],"outline-w":[{outline:["",isNumber,isArbitraryVariableLength,isArbitraryLength]}],"outline-color":[{outline:scaleColor()}],shadow:[{shadow:["","none",themeShadow,isArbitraryVariableShadow,isArbitraryShadow]}],"shadow-color":[{shadow:scaleColor()}],"inset-shadow":[{"inset-shadow":["none",themeInsetShadow,isArbitraryVariableShadow,isArbitraryShadow]}],"inset-shadow-color":[{"inset-shadow":scaleColor()}],"ring-w":[{ring:scaleBorderWidth()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:scaleColor()}],"ring-offset-w":[{"ring-offset":[isNumber,isArbitraryLength]}],"ring-offset-color":[{"ring-offset":scaleColor()}],"inset-ring-w":[{"inset-ring":scaleBorderWidth()}],"inset-ring-color":[{"inset-ring":scaleColor()}],"text-shadow":[{"text-shadow":["none",themeTextShadow,isArbitraryVariableShadow,isArbitraryShadow]}],"text-shadow-color":[{"text-shadow":scaleColor()}],opacity:[{opacity:[isNumber,isArbitraryVariable,isArbitraryValue]}],"mix-blend":[{"mix-blend":[...scaleBlendMode(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":scaleBlendMode()}],"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":[isNumber]}],"mask-image-linear-from-pos":[{"mask-linear-from":scaleMaskImagePosition()}],"mask-image-linear-to-pos":[{"mask-linear-to":scaleMaskImagePosition()}],"mask-image-linear-from-color":[{"mask-linear-from":scaleColor()}],"mask-image-linear-to-color":[{"mask-linear-to":scaleColor()}],"mask-image-t-from-pos":[{"mask-t-from":scaleMaskImagePosition()}],"mask-image-t-to-pos":[{"mask-t-to":scaleMaskImagePosition()}],"mask-image-t-from-color":[{"mask-t-from":scaleColor()}],"mask-image-t-to-color":[{"mask-t-to":scaleColor()}],"mask-image-r-from-pos":[{"mask-r-from":scaleMaskImagePosition()}],"mask-image-r-to-pos":[{"mask-r-to":scaleMaskImagePosition()}],"mask-image-r-from-color":[{"mask-r-from":scaleColor()}],"mask-image-r-to-color":[{"mask-r-to":scaleColor()}],"mask-image-b-from-pos":[{"mask-b-from":scaleMaskImagePosition()}],"mask-image-b-to-pos":[{"mask-b-to":scaleMaskImagePosition()}],"mask-image-b-from-color":[{"mask-b-from":scaleColor()}],"mask-image-b-to-color":[{"mask-b-to":scaleColor()}],"mask-image-l-from-pos":[{"mask-l-from":scaleMaskImagePosition()}],"mask-image-l-to-pos":[{"mask-l-to":scaleMaskImagePosition()}],"mask-image-l-from-color":[{"mask-l-from":scaleColor()}],"mask-image-l-to-color":[{"mask-l-to":scaleColor()}],"mask-image-x-from-pos":[{"mask-x-from":scaleMaskImagePosition()}],"mask-image-x-to-pos":[{"mask-x-to":scaleMaskImagePosition()}],"mask-image-x-from-color":[{"mask-x-from":scaleColor()}],"mask-image-x-to-color":[{"mask-x-to":scaleColor()}],"mask-image-y-from-pos":[{"mask-y-from":scaleMaskImagePosition()}],"mask-image-y-to-pos":[{"mask-y-to":scaleMaskImagePosition()}],"mask-image-y-from-color":[{"mask-y-from":scaleColor()}],"mask-image-y-to-color":[{"mask-y-to":scaleColor()}],"mask-image-radial":[{"mask-radial":[isArbitraryVariable,isArbitraryValue]}],"mask-image-radial-from-pos":[{"mask-radial-from":scaleMaskImagePosition()}],"mask-image-radial-to-pos":[{"mask-radial-to":scaleMaskImagePosition()}],"mask-image-radial-from-color":[{"mask-radial-from":scaleColor()}],"mask-image-radial-to-color":[{"mask-radial-to":scaleColor()}],"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":scalePosition()}],"mask-image-conic-pos":[{"mask-conic":[isNumber]}],"mask-image-conic-from-pos":[{"mask-conic-from":scaleMaskImagePosition()}],"mask-image-conic-to-pos":[{"mask-conic-to":scaleMaskImagePosition()}],"mask-image-conic-from-color":[{"mask-conic-from":scaleColor()}],"mask-image-conic-to-color":[{"mask-conic-to":scaleColor()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:scaleBgPosition()}],"mask-repeat":[{mask:scaleBgRepeat()}],"mask-size":[{mask:scaleBgSize()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",isArbitraryVariable,isArbitraryValue]}],filter:[{filter:["","none",isArbitraryVariable,isArbitraryValue]}],blur:[{blur:scaleBlur()}],brightness:[{brightness:[isNumber,isArbitraryVariable,isArbitraryValue]}],contrast:[{contrast:[isNumber,isArbitraryVariable,isArbitraryValue]}],"drop-shadow":[{"drop-shadow":["","none",themeDropShadow,isArbitraryVariableShadow,isArbitraryShadow]}],"drop-shadow-color":[{"drop-shadow":scaleColor()}],grayscale:[{grayscale:["",isNumber,isArbitraryVariable,isArbitraryValue]}],"hue-rotate":[{"hue-rotate":[isNumber,isArbitraryVariable,isArbitraryValue]}],invert:[{invert:["",isNumber,isArbitraryVariable,isArbitraryValue]}],saturate:[{saturate:[isNumber,isArbitraryVariable,isArbitraryValue]}],sepia:[{sepia:["",isNumber,isArbitraryVariable,isArbitraryValue]}],"backdrop-filter":[{"backdrop-filter":["","none",isArbitraryVariable,isArbitraryValue]}],"backdrop-blur":[{"backdrop-blur":scaleBlur()}],"backdrop-brightness":[{"backdrop-brightness":[isNumber,isArbitraryVariable,isArbitraryValue]}],"backdrop-contrast":[{"backdrop-contrast":[isNumber,isArbitraryVariable,isArbitraryValue]}],"backdrop-grayscale":[{"backdrop-grayscale":["",isNumber,isArbitraryVariable,isArbitraryValue]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[isNumber,isArbitraryVariable,isArbitraryValue]}],"backdrop-invert":[{"backdrop-invert":["",isNumber,isArbitraryVariable,isArbitraryValue]}],"backdrop-opacity":[{"backdrop-opacity":[isNumber,isArbitraryVariable,isArbitraryValue]}],"backdrop-saturate":[{"backdrop-saturate":[isNumber,isArbitraryVariable,isArbitraryValue]}],"backdrop-sepia":[{"backdrop-sepia":["",isNumber,isArbitraryVariable,isArbitraryValue]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":scaleUnambiguousSpacing()}],"border-spacing-x":[{"border-spacing-x":scaleUnambiguousSpacing()}],"border-spacing-y":[{"border-spacing-y":scaleUnambiguousSpacing()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",isArbitraryVariable,isArbitraryValue]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[isNumber,"initial",isArbitraryVariable,isArbitraryValue]}],ease:[{ease:["linear","initial",themeEase,isArbitraryVariable,isArbitraryValue]}],delay:[{delay:[isNumber,isArbitraryVariable,isArbitraryValue]}],animate:[{animate:["none",themeAnimate,isArbitraryVariable,isArbitraryValue]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[themePerspective,isArbitraryVariable,isArbitraryValue]}],"perspective-origin":[{"perspective-origin":scalePositionWithArbitrary()}],rotate:[{rotate:scaleRotate()}],"rotate-x":[{"rotate-x":scaleRotate()}],"rotate-y":[{"rotate-y":scaleRotate()}],"rotate-z":[{"rotate-z":scaleRotate()}],scale:[{scale:scaleScale()}],"scale-x":[{"scale-x":scaleScale()}],"scale-y":[{"scale-y":scaleScale()}],"scale-z":[{"scale-z":scaleScale()}],"scale-3d":["scale-3d"],skew:[{skew:scaleSkew()}],"skew-x":[{"skew-x":scaleSkew()}],"skew-y":[{"skew-y":scaleSkew()}],transform:[{transform:[isArbitraryVariable,isArbitraryValue,"","none","gpu","cpu"]}],"transform-origin":[{origin:scalePositionWithArbitrary()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:scaleTranslate()}],"translate-x":[{"translate-x":scaleTranslate()}],"translate-y":[{"translate-y":scaleTranslate()}],"translate-z":[{"translate-z":scaleTranslate()}],"translate-none":["translate-none"],accent:[{accent:scaleColor()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:scaleColor()}],"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",isArbitraryVariable,isArbitraryValue]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":scaleUnambiguousSpacing()}],"scroll-mx":[{"scroll-mx":scaleUnambiguousSpacing()}],"scroll-my":[{"scroll-my":scaleUnambiguousSpacing()}],"scroll-ms":[{"scroll-ms":scaleUnambiguousSpacing()}],"scroll-me":[{"scroll-me":scaleUnambiguousSpacing()}],"scroll-mbs":[{"scroll-mbs":scaleUnambiguousSpacing()}],"scroll-mbe":[{"scroll-mbe":scaleUnambiguousSpacing()}],"scroll-mt":[{"scroll-mt":scaleUnambiguousSpacing()}],"scroll-mr":[{"scroll-mr":scaleUnambiguousSpacing()}],"scroll-mb":[{"scroll-mb":scaleUnambiguousSpacing()}],"scroll-ml":[{"scroll-ml":scaleUnambiguousSpacing()}],"scroll-p":[{"scroll-p":scaleUnambiguousSpacing()}],"scroll-px":[{"scroll-px":scaleUnambiguousSpacing()}],"scroll-py":[{"scroll-py":scaleUnambiguousSpacing()}],"scroll-ps":[{"scroll-ps":scaleUnambiguousSpacing()}],"scroll-pe":[{"scroll-pe":scaleUnambiguousSpacing()}],"scroll-pbs":[{"scroll-pbs":scaleUnambiguousSpacing()}],"scroll-pbe":[{"scroll-pbe":scaleUnambiguousSpacing()}],"scroll-pt":[{"scroll-pt":scaleUnambiguousSpacing()}],"scroll-pr":[{"scroll-pr":scaleUnambiguousSpacing()}],"scroll-pb":[{"scroll-pb":scaleUnambiguousSpacing()}],"scroll-pl":[{"scroll-pl":scaleUnambiguousSpacing()}],"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",isArbitraryVariable,isArbitraryValue]}],fill:[{fill:["none",...scaleColor()]}],"stroke-w":[{stroke:[isNumber,isArbitraryVariableLength,isArbitraryLength,isArbitraryNumber]}],stroke:[{stroke:["none",...scaleColor()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{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":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pbs","pbe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mbs","mbe","mt","mr","mb","ml"],mx:["mr","ml"],my:["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-r","border-w-l"],"border-w-y":["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-r","border-color-l"],"border-color-y":["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-mr","scroll-ml"],"scroll-my":["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-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}};var twMerge=createTailwindMerge(getDefaultConfig);function cn(...inputs){return twMerge(clsx(inputs))}function mergeClassName(base,className){if(typeof className==="function")return(state)=>cn(base,className(state));return cn(base,className)}var focusRing="outline-none focus-visible:outline-2 focus-visible:outline-solid focus-visible:outline-offset-2 focus-visible:outline-bakin-focus-ring";var badgeStyles=cva(["group/badge inline-flex w-fit shrink-0 items-center justify-center whitespace-nowrap","overflow-hidden rounded-bakin-pill border font-bakin-typography-family-ui font-bakin-typography-weight-semibold","transition-[background-color,border-color,color] duration-[var(--bakin-motion-duration-feedback)] ease-bakin-standard",focusRing,"aria-invalid:border-bakin-signal-danger [&>svg]:pointer-events-none [&>svg]:shrink-0"],{variants:{tone:{neutral:"",primary:"",success:"",attention:"",danger:"",info:"",accent:""},variant:{soft:"",solid:"",outline:"bg-transparent",ghost:"border-transparent bg-transparent",link:"border-transparent bg-transparent underline-offset-4 hover:underline"},size:{xs:"h-bakin-4 min-w-bakin-4 gap-0 px-bakin-1 text-[.625rem] leading-none [&>svg]:size-bakin-2",sm:"h-bakin-6 gap-bakin-1 px-bakin-2 text-[length:var(--bakin-typography-size-meta)] [&>svg]:size-bakin-3",md:"h-bakin-8 gap-bakin-2 px-bakin-3 text-[length:var(--bakin-typography-size-body)] [&>svg]:size-bakin-4"}},compoundVariants:[{tone:"neutral",variant:"soft",className:"border-bakin-border-subtle/20 bg-bakin-surface-default text-bakin-text-muted"},{tone:"neutral",variant:"solid",className:"border-bakin-text-muted bg-bakin-text-muted text-bakin-canvas-default"},{tone:"neutral",variant:"outline",className:"border-bakin-border-subtle text-bakin-text-muted"},{tone:"neutral",variant:["ghost","link"],className:"text-bakin-text-muted"},{tone:"primary",variant:"soft",className:"border-bakin-action-primary-background/25 bg-bakin-action-primary-background/15 text-bakin-text-primary"},{tone:"primary",variant:"solid",className:"border-bakin-action-primary-background bg-bakin-action-primary-background text-bakin-action-primary-foreground"},{tone:"primary",variant:"outline",className:"border-bakin-action-primary-background text-bakin-action-primary-background"},{tone:"primary",variant:["ghost","link"],className:"text-bakin-action-primary-background"},{tone:"success",variant:"soft",className:"border-bakin-action-primary-background/25 bg-bakin-action-primary-background/15 text-bakin-text-primary"},{tone:"success",variant:"solid",className:"border-bakin-action-primary-background bg-bakin-action-primary-background text-bakin-action-primary-foreground"},{tone:"success",variant:"outline",className:"border-bakin-action-primary-background text-bakin-action-primary-background"},{tone:"success",variant:["ghost","link"],className:"text-bakin-action-primary-background"},{tone:"attention",variant:"soft",className:"border-bakin-signal-highlight/25 bg-bakin-signal-highlight/15 text-bakin-text-primary"},{tone:"attention",variant:"solid",className:"border-bakin-signal-highlight bg-bakin-signal-highlight text-bakin-canvas-default"},{tone:"attention",variant:"outline",className:"border-bakin-signal-highlight text-bakin-text-primary"},{tone:"attention",variant:["ghost","link"],className:"text-bakin-text-primary"},{tone:"danger",variant:"soft",className:"border-bakin-signal-danger/25 bg-bakin-signal-danger/15 text-bakin-text-primary"},{tone:"info",variant:"soft",className:"border-bakin-signal-info/25 bg-bakin-signal-info/15 text-bakin-text-primary"},{tone:"info",variant:"solid",className:"border-bakin-signal-info bg-bakin-signal-info text-bakin-canvas-default"},{tone:"info",variant:"outline",className:"border-bakin-signal-info text-bakin-text-primary"},{tone:"info",variant:["ghost","link"],className:"text-bakin-text-primary"},{tone:"danger",variant:"solid",className:"border-bakin-signal-danger bg-bakin-signal-danger text-bakin-canvas-default"},{tone:"danger",variant:"outline",className:"border-bakin-signal-danger text-bakin-text-primary"},{tone:"danger",variant:["ghost","link"],className:"text-bakin-text-primary"},{tone:"accent",variant:"soft",className:"border-bakin-signal-accent/25 bg-bakin-signal-accent/15 text-bakin-text-primary"},{tone:"accent",variant:"solid",className:"border-bakin-signal-accent bg-bakin-signal-accent text-bakin-canvas-default"},{tone:"accent",variant:"outline",className:"border-bakin-signal-accent text-bakin-text-primary"},{tone:"accent",variant:["ghost","link"],className:"text-bakin-text-primary"}],defaultVariants:{tone:"neutral",variant:"soft",size:"sm"}});function canonicalBadgeOptions(options){if(options.variant==="default")return{tone:options.tone??"primary",variant:"solid",size:options.size??"sm"};if(options.variant==="secondary")return{tone:options.tone??"neutral",variant:"soft",size:options.size??"sm"};if(options.variant==="destructive")return{tone:options.tone??"danger",variant:"soft",size:options.size??"sm"};return{tone:options.tone??"neutral",variant:options.variant??"soft",size:options.size??"sm"}}function badgeVariants(options={}){let resolved=canonicalBadgeOptions(options);return cn(badgeStyles(resolved),options.className)}function Badge({className,tone,variant,size,render,...props}){let resolved=canonicalBadgeOptions({tone,variant,size}),state={slot:"badge",...resolved};return useRender({defaultTagName:"span",props:mergeProps({className:badgeVariants({...resolved,className})},props),render,state})}import{jsx,jsxs}from"react/jsx-runtime";function StatusBadge({tone="neutral",variant="solid",size="sm",icon:Icon,className,children,...props}){return jsxs(Badge,{tone,variant,size,"data-status-badge":tone,"data-tone":tone,"data-variant":variant,...props,className:cn("max-w-full",className),children:[Icon?jsx("span",{"aria-hidden":"true",className:"inline-flex shrink-0",children:jsx(Icon,{className:"size-bakin-3"})}):null,jsx("span",{className:"truncate",children})]})}var exports_index_parts={};__export(exports_index_parts,{Root:()=>AvatarRoot,Image:()=>AvatarImage,Fallback:()=>AvatarFallback});import*as React6 from"react";import*as React5 from"react";var AvatarRootContext=React5.createContext(void 0);function useAvatarRootContext(){let context=React5.useContext(AvatarRootContext);if(context===void 0)throw Error(formatErrorMessage_default(13));return context}var avatarStateAttributesMapping={imageLoadingStatus:()=>null};import{jsx as _jsx}from"react/jsx-runtime";var AvatarRoot=React6.forwardRef(function(componentProps,forwardedRef){let{className,render,style,...elementProps}=componentProps,[imageLoadingStatus,setImageLoadingStatus]=React6.useState("idle"),state={imageLoadingStatus},contextValue=React6.useMemo(()=>({imageLoadingStatus,setImageLoadingStatus}),[imageLoadingStatus,setImageLoadingStatus]),element=useRenderElement("span",componentProps,{state,ref:forwardedRef,props:elementProps,stateAttributesMapping:avatarStateAttributesMapping});return _jsx(AvatarRootContext.Provider,{value:contextValue,children:element})});import*as React13 from"react";import*as React7 from"react";var useInsertionEffect=React7[`useInsertionEffect${Math.random().toFixed(1)}`.slice(0,-3)],useSafeInsertionEffect=useInsertionEffect&&useInsertionEffect!==React7.useLayoutEffect?useInsertionEffect:(fn)=>fn();function useStableCallback(callback){let stable=useRefWithInit(createStableCallback).current;return stable.next=callback,useSafeInsertionEffect(stable.effect),stable.trampoline}function createStableCallback(){let stable={next:void 0,callback:assertNotCalled,trampoline:(...args)=>stable.callback?.(...args),effect:()=>{stable.callback=stable.next}};return stable}function assertNotCalled(){}import*as React8 from"react";var noop=()=>{},useIsoLayoutEffect=typeof document<"u"?React8.useLayoutEffect:noop;import*as React10 from"react";import*as ReactDOM from"react-dom";import*as React9 from"react";var EMPTY=[];function useOnMount(fn){React9.useEffect(fn,EMPTY)}var EMPTY2=null,LAST_RAF=globalThis.requestAnimationFrame;class Scheduler{callbacks=[];callbacksCount=0;nextId=1;startId=1;isScheduled=!1;tick=(timestamp)=>{this.isScheduled=!1;let currentCallbacks=this.callbacks,currentCallbacksCount=this.callbacksCount;if(this.callbacks=[],this.callbacksCount=0,this.startId=this.nextId,currentCallbacksCount>0)for(let i=0;i<currentCallbacks.length;i+=1)currentCallbacks[i]?.(timestamp)};request(fn){let id=this.nextId;this.nextId+=1,this.callbacks.push(fn),this.callbacksCount+=1;let didRAFChange=!1;if(!this.isScheduled||didRAFChange)requestAnimationFrame(this.tick),this.isScheduled=!0;return id}cancel(id){let index=id-this.startId;if(index<0||index>=this.callbacks.length)return;this.callbacks[index]=null,this.callbacksCount-=1}}var scheduler=new Scheduler;class AnimationFrame{static create(){return new AnimationFrame}static request(fn){return scheduler.request(fn)}static cancel(id){return scheduler.cancel(id)}currentId=EMPTY2;request(fn){this.cancel(),this.currentId=scheduler.request(()=>{this.currentId=EMPTY2,fn()})}cancel=()=>{if(this.currentId!==EMPTY2)scheduler.cancel(this.currentId),this.currentId=EMPTY2};disposeEffect=()=>{return this.cancel}}function useAnimationFrame(){let timeout=useRefWithInit(AnimationFrame.create).current;return useOnMount(timeout.disposeEffect),timeout}function resolveRef(maybeRef){if(maybeRef==null)return maybeRef;return"current"in maybeRef?maybeRef.current:maybeRef}var TransitionStatusDataAttributes=function(TransitionStatusDataAttributes2){return TransitionStatusDataAttributes2.startingStyle="data-starting-style",TransitionStatusDataAttributes2.endingStyle="data-ending-style",TransitionStatusDataAttributes2}({}),STARTING_HOOK={[TransitionStatusDataAttributes.startingStyle]:""},ENDING_HOOK={[TransitionStatusDataAttributes.endingStyle]:""},transitionStatusMapping={transitionStatus(value){if(value==="starting")return STARTING_HOOK;if(value==="ending")return ENDING_HOOK;return null}};function useAnimationsFinished(elementOrRef,waitForStartingStyleRemoved=!1,treatAbortedAsFinished=!0){let frame=useAnimationFrame();return useStableCallback((fnToExecute,signal=null)=>{frame.cancel();let element=resolveRef(elementOrRef);if(element==null)return;let resolvedElement=element,done=()=>{ReactDOM.flushSync(fnToExecute)};if(typeof resolvedElement.getAnimations!=="function"||globalThis.BASE_UI_ANIMATIONS_DISABLED){fnToExecute();return}function exec(){Promise.all(resolvedElement.getAnimations().map((animation)=>animation.finished)).then(()=>{if(!signal?.aborted)done()}).catch(()=>{if(treatAbortedAsFinished){if(!signal?.aborted)done();return}let currentAnimations=resolvedElement.getAnimations();if(!signal?.aborted&&currentAnimations.length>0&&currentAnimations.some((animation)=>animation.pending||animation.playState!=="finished"))exec()})}if(waitForStartingStyleRemoved){let startingStyleAttribute=TransitionStatusDataAttributes.startingStyle;if(!resolvedElement.hasAttribute(startingStyleAttribute)){frame.request(exec);return}let attributeObserver=new MutationObserver(()=>{if(!resolvedElement.hasAttribute(startingStyleAttribute))attributeObserver.disconnect(),exec()});attributeObserver.observe(resolvedElement,{attributes:!0,attributeFilter:[startingStyleAttribute]}),signal?.addEventListener("abort",()=>attributeObserver.disconnect(),{once:!0});return}frame.request(exec)})}function useOpenChangeComplete(parameters){let{enabled=!0,open,ref,onComplete:onCompleteParam}=parameters,onComplete=useStableCallback(onCompleteParam),runOnceAnimationsFinish=useAnimationsFinished(ref,open,!1);React10.useEffect(()=>{if(!enabled)return;let abortController=new AbortController;return runOnceAnimationsFinish(onComplete,abortController.signal),()=>{abortController.abort()}},[enabled,open,onComplete,runOnceAnimationsFinish])}import*as React11 from"react";function useTransitionStatus(open,enableIdleState=!1,deferEndingState=!1){let[transitionStatus,setTransitionStatus]=React11.useState(open&&enableIdleState?"idle":void 0),[mounted,setMounted]=React11.useState(open);if(open&&!mounted)setMounted(!0),setTransitionStatus("starting");if(!open&&mounted&&transitionStatus!=="ending"&&!deferEndingState)setTransitionStatus("ending");if(!open&&!mounted&&transitionStatus==="ending")setTransitionStatus(void 0);return useIsoLayoutEffect(()=>{if(!open&&mounted&&transitionStatus!=="ending"&&deferEndingState){let frame=AnimationFrame.request(()=>{setTransitionStatus("ending")});return()=>{AnimationFrame.cancel(frame)}}return},[open,mounted,transitionStatus,deferEndingState]),useIsoLayoutEffect(()=>{if(!open||enableIdleState)return;let frame=AnimationFrame.request(()=>{setTransitionStatus(void 0)});return()=>{AnimationFrame.cancel(frame)}},[enableIdleState,open]),useIsoLayoutEffect(()=>{if(!open||!enableIdleState)return;if(open&&mounted&&transitionStatus!=="idle")setTransitionStatus("starting");let frame=AnimationFrame.request(()=>{setTransitionStatus("idle")});return()=>{AnimationFrame.cancel(frame)}},[enableIdleState,open,mounted,transitionStatus]),{mounted,setMounted,transitionStatus}}import*as React12 from"react";function useImageLoadingStatus(src,{referrerPolicy,crossOrigin}){let[loadingStatus,setLoadingStatus]=React12.useState("idle");return useIsoLayoutEffect(()=>{if(!src)return setLoadingStatus("error"),NOOP;let isMounted=!0,image=new window.Image,updateStatus=(status)=>()=>{if(!isMounted)return;setLoadingStatus(status)};if(setLoadingStatus("loading"),image.onload=updateStatus("loaded"),image.onerror=updateStatus("error"),referrerPolicy)image.referrerPolicy=referrerPolicy;if(image.crossOrigin=crossOrigin??null,image.src=src,image.complete)setLoadingStatus(image.naturalWidth>0?"loaded":"error");return()=>{isMounted=!1}},[src,crossOrigin,referrerPolicy]),loadingStatus}var stateAttributesMapping={...avatarStateAttributesMapping,...transitionStatusMapping},AvatarImage=React13.forwardRef(function(componentProps,forwardedRef){let{className,render,onLoadingStatusChange:onLoadingStatusChangeProp,referrerPolicy,crossOrigin,style,...elementProps}=componentProps,context=useAvatarRootContext(),imageLoadingStatus=useImageLoadingStatus(componentProps.src,{referrerPolicy,crossOrigin}),isVisible=imageLoadingStatus==="loaded",{mounted,transitionStatus,setMounted}=useTransitionStatus(isVisible),imageRef=React13.useRef(null),handleLoadingStatusChange=useStableCallback((status)=>{onLoadingStatusChangeProp?.(status),context.setImageLoadingStatus(status)});useIsoLayoutEffect(()=>{if(imageLoadingStatus!=="idle")handleLoadingStatusChange(imageLoadingStatus)},[imageLoadingStatus,handleLoadingStatusChange]);let state={imageLoadingStatus,transitionStatus};useOpenChangeComplete({open:isVisible,ref:imageRef,onComplete(){if(!isVisible)setMounted(!1)}});let element=useRenderElement("img",componentProps,{state,ref:[forwardedRef,imageRef],props:elementProps,stateAttributesMapping,enabled:mounted});if(!mounted)return null;return element});import*as React14 from"react";var EMPTY3=0;class Timeout{static create(){return new Timeout}currentId=EMPTY3;start(delay,fn){this.clear(),this.currentId=setTimeout(()=>{this.currentId=EMPTY3,fn()},delay)}isStarted(){return this.currentId!==EMPTY3}clear=()=>{if(this.currentId!==EMPTY3)clearTimeout(this.currentId),this.currentId=EMPTY3};disposeEffect=()=>{return this.clear}}function useTimeout(){let timeout=useRefWithInit(Timeout.create).current;return useOnMount(timeout.disposeEffect),timeout}var AvatarFallback=React14.forwardRef(function(componentProps,forwardedRef){let{className,render,delay,style,...elementProps}=componentProps,{imageLoadingStatus}=useAvatarRootContext(),[delayPassed,setDelayPassed]=React14.useState(delay===void 0),timeout=useTimeout();return React14.useEffect(()=>{if(delay!==void 0)timeout.start(delay,()=>setDelayPassed(!0));return timeout.clear},[timeout,delay]),useRenderElement("span",componentProps,{state:{imageLoadingStatus},ref:forwardedRef,props:elementProps,stateAttributesMapping:avatarStateAttributesMapping,enabled:imageLoadingStatus!=="loaded"&&delayPassed})});import{jsx as jsx2}from"react/jsx-runtime";function canonicalSize(size){return size==="default"||size==null?"md":size}var avatarClasses=["group/avatar relative inline-flex shrink-0 select-none overflow-visible rounded-bakin-pill","bg-bakin-surface-elevated font-bakin-typography-family-ui text-bakin-text-muted","ring-1 ring-inset ring-bakin-border-subtle","data-[size=xs]:size-bakin-4 data-[size=sm]:size-bakin-6 data-[size=md]:size-bakin-8","data-[size=lg]:size-[calc(var(--bakin-layout-space-8)+var(--bakin-layout-space-2))]","data-[size=xl]:size-[calc(var(--bakin-layout-space-8)+var(--bakin-layout-space-4))]"].join(" ");function Avatar({className,size="md",...props}){let resolvedSize=canonicalSize(size);return jsx2(exports_index_parts.Root,{"data-slot":"avatar","data-size":resolvedSize,className:mergeClassName(avatarClasses,className),...props})}function AvatarImage3({className,alt="",...props}){return jsx2(exports_index_parts.Image,{"data-slot":"avatar-image",alt,className:mergeClassName("aspect-square size-full rounded-bakin-pill object-cover",className),...props})}function AvatarFallback3({className,...props}){return jsx2(exports_index_parts.Fallback,{"data-slot":"avatar-fallback",className:mergeClassName(["flex size-full items-center justify-center rounded-bakin-pill bg-bakin-surface-elevated","font-bakin-typography-weight-semibold leading-none text-bakin-text-muted [text-transform:uppercase]","text-[length:var(--bakin-typography-size-meta)] group-data-[size=xs]/avatar:text-[.625rem]","group-data-[size=xl]/avatar:text-[length:var(--bakin-typography-size-body)]"].join(" "),className),...props})}function AvatarBadge({className,...props}){return jsx2("span",{"data-slot":"avatar-badge",className:cn(["absolute bottom-0 right-0 z-10 inline-flex size-bakin-2 items-center justify-center rounded-bakin-pill","bg-bakin-action-primary-background text-bakin-action-primary-foreground ring-2 ring-bakin-canvas-default","group-data-[size=xs]/avatar:size-bakin-1 group-data-[size=lg]/avatar:size-bakin-3 group-data-[size=xl]/avatar:size-bakin-3","[&_svg]:size-bakin-2 group-data-[size=xs]/avatar:[&_svg]:hidden"].join(" "),className),...props})}import{jsx as jsx3}from"react/jsx-runtime";var sizeClasses={sm:"size-bakin-3",md:"size-bakin-4"};function Spinner({className,label,size="md",...props}){return jsx3("svg",{...props,"data-slot":"spinner",role:label?"status":void 0,"aria-label":label,"aria-hidden":label?void 0:!0,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",className:cn("shrink-0 animate-spin motion-reduce:animate-none",sizeClasses[size],className),children:jsx3("path",{d:"M21 12a9 9 0 1 1-6.219-8.56"})})}import*as React20 from"react";import{useCallback as useCallback2,useEffect as useEffect5,useRef as useRef4,useState as useState5}from"react";async function copyToClipboard(text){if(navigator.clipboard?.writeText)try{return await navigator.clipboard.writeText(text),!0}catch{}try{let ta=document.createElement("textarea");ta.value=text,ta.setAttribute("readonly",""),ta.style.position="fixed",ta.style.top="0",ta.style.opacity="0",document.body.appendChild(ta);let selection=document.getSelection(),previousRange=selection&&selection.rangeCount>0?selection.getRangeAt(0):null;ta.focus(),ta.select();let ok=document.execCommand("copy");if(ta.remove(),previousRange&&selection)selection.removeAllRanges(),selection.addRange(previousRange);return ok}catch{return!1}}import*as React19 from"react";import*as React18 from"react";function hasWindow(){return typeof window<"u"}function getNodeName(node){if(isNode(node))return(node.nodeName||"").toLowerCase();return"#document"}function getWindow(node){var _node$ownerDocument;return(node==null||(_node$ownerDocument=node.ownerDocument)==null?void 0:_node$ownerDocument.defaultView)||window}function getDocumentElement(node){var _ref;return(_ref=(isNode(node)?node.ownerDocument:node.document)||window.document)==null?void 0:_ref.documentElement}function isNode(value){if(!hasWindow())return!1;return value instanceof Node||value instanceof getWindow(value).Node}function isElement(value){if(!hasWindow())return!1;return value instanceof Element||value instanceof getWindow(value).Element}function isHTMLElement(value){if(!hasWindow())return!1;return value instanceof HTMLElement||value instanceof getWindow(value).HTMLElement}function isShadowRoot(value){if(!hasWindow()||typeof ShadowRoot>"u")return!1;return value instanceof ShadowRoot||value instanceof getWindow(value).ShadowRoot}function isOverflowElement(element){let{overflow,overflowX,overflowY,display}=getComputedStyle2(element);return/auto|scroll|overlay|hidden|clip/.test(overflow+overflowY+overflowX)&&display!=="inline"&&display!=="contents"}function isTableElement(element){return/^(table|td|th)$/.test(getNodeName(element))}function isTopLayer(element){try{if(element.matches(":popover-open"))return!0}catch(_e){}try{return element.matches(":modal")}catch(_e){return!1}}var willChangeRe=/transform|translate|scale|rotate|perspective|filter/,containRe=/paint|layout|strict|content/,isNotNone=(value)=>!!value&&value!=="none",isWebKitValue;function isContainingBlock(elementOrCss){let css=isElement(elementOrCss)?getComputedStyle2(elementOrCss):elementOrCss;return isNotNone(css.transform)||isNotNone(css.translate)||isNotNone(css.scale)||isNotNone(css.rotate)||isNotNone(css.perspective)||!isWebKit()&&(isNotNone(css.backdropFilter)||isNotNone(css.filter))||willChangeRe.test(css.willChange||"")||containRe.test(css.contain||"")}function getContainingBlock(element){let currentNode=getParentNode(element);while(isHTMLElement(currentNode)&&!isLastTraversableNode(currentNode)){if(isContainingBlock(currentNode))return currentNode;else if(isTopLayer(currentNode))return null;currentNode=getParentNode(currentNode)}return null}function isWebKit(){if(isWebKitValue==null)isWebKitValue=typeof CSS<"u"&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none");return isWebKitValue}function isLastTraversableNode(node){return/^(html|body|#document)$/.test(getNodeName(node))}function getComputedStyle2(element){return getWindow(element).getComputedStyle(element)}function getNodeScroll(element){if(isElement(element))return{scrollLeft:element.scrollLeft,scrollTop:element.scrollTop};return{scrollLeft:element.scrollX,scrollTop:element.scrollY}}function getParentNode(node){if(getNodeName(node)==="html")return node;let result=node.assignedSlot||node.parentNode||isShadowRoot(node)&&node.host||getDocumentElement(node);return isShadowRoot(result)?result.host:result}function getNearestOverflowAncestor(node){let parentNode=getParentNode(node);if(isLastTraversableNode(parentNode))return node.ownerDocument?node.ownerDocument.body:node.body;if(isHTMLElement(parentNode)&&isOverflowElement(parentNode))return parentNode;return getNearestOverflowAncestor(parentNode)}function getOverflowAncestors(node,list,traverseIframes){var _node$ownerDocument2;if(list===void 0)list=[];if(traverseIframes===void 0)traverseIframes=!0;let scrollableAncestor=getNearestOverflowAncestor(node),isBody=scrollableAncestor===((_node$ownerDocument2=node.ownerDocument)==null?void 0:_node$ownerDocument2.body),win=getWindow(scrollableAncestor);if(isBody){let frameElement=getFrameElement(win);return list.concat(win,win.visualViewport||[],isOverflowElement(scrollableAncestor)?scrollableAncestor:[],frameElement&&traverseIframes?getOverflowAncestors(frameElement):[])}else return list.concat(scrollableAncestor,getOverflowAncestors(scrollableAncestor,[],traverseIframes))}function getFrameElement(win){return win.parent&&Object.getPrototypeOf(win.parent)?win.frameElement:null}import*as React15 from"react";var SafeReact={...React15};import*as React16 from"react";var CompositeRootContext=React16.createContext(void 0);function useCompositeRootContext(optional=!1){let context=React16.useContext(CompositeRootContext);if(context===void 0&&!optional)throw Error(formatErrorMessage_default(16));return context}import*as React17 from"react";function useFocusableWhenDisabled(parameters){let{focusableWhenDisabled,disabled,composite=!1,tabIndex:tabIndexProp=0,isNativeButton}=parameters,isFocusableComposite=composite&&focusableWhenDisabled!==!1,isNonFocusableComposite=composite&&focusableWhenDisabled===!1;return{props:React17.useMemo(()=>{let additionalProps={onKeyDown(event){if(disabled&&focusableWhenDisabled&&event.key!=="Tab")event.preventDefault()}};if(!composite){if(additionalProps.tabIndex=tabIndexProp,!isNativeButton&&disabled)additionalProps.tabIndex=focusableWhenDisabled?tabIndexProp:-1}if(isNativeButton&&(focusableWhenDisabled||isFocusableComposite)||!isNativeButton&&disabled)additionalProps["aria-disabled"]=disabled;if(isNativeButton&&(!focusableWhenDisabled||isNonFocusableComposite))additionalProps.disabled=disabled;return additionalProps},[composite,disabled,focusableWhenDisabled,isFocusableComposite,isNonFocusableComposite,isNativeButton,tabIndexProp])}}function useButton(parameters={}){let{disabled=!1,focusableWhenDisabled,tabIndex=0,native:isNativeButton=!0,composite:compositeProp}=parameters,elementRef=React18.useRef(null),compositeRootContext=useCompositeRootContext(!0),isCompositeItem=compositeProp??compositeRootContext!==void 0,{props:focusableWhenDisabledProps}=useFocusableWhenDisabled({focusableWhenDisabled,disabled,composite:isCompositeItem,tabIndex,isNativeButton}),updateDisabled=React18.useCallback(()=>{let element=elementRef.current;if(!isButtonElement(element))return;if(isCompositeItem&&disabled&&focusableWhenDisabledProps.disabled===void 0&&element.disabled)element.disabled=!1},[disabled,focusableWhenDisabledProps.disabled,isCompositeItem]);useIsoLayoutEffect(updateDisabled,[updateDisabled]);let getButtonProps=React18.useCallback((externalProps={})=>{let{onClick:externalOnClick,onMouseDown:externalOnMouseDown,onKeyUp:externalOnKeyUp,onKeyDown:externalOnKeyDown,onPointerDown:externalOnPointerDown,...otherExternalProps}=externalProps;return mergeProps({type:isNativeButton?"button":void 0,onClick(event){if(disabled){event.preventDefault();return}externalOnClick?.(event)},onMouseDown(event){if(!disabled)externalOnMouseDown?.(event)},onKeyDown(event){if(disabled)return;if(makeEventPreventable(event),externalOnKeyDown?.(event),event.baseUIHandlerPrevented)return;let isCurrentTarget=event.target===event.currentTarget,currentTarget=event.currentTarget,isButton=isButtonElement(currentTarget),isLink=!isNativeButton&&isValidLinkElement(currentTarget),shouldClick=isCurrentTarget&&(isNativeButton?isButton:!isLink),isEnterKey=event.key==="Enter",isSpaceKey=event.key===" ",role=currentTarget.getAttribute("role"),isTextNavigationRole=role?.startsWith("menuitem")||role==="option"||role==="gridcell";if(isCurrentTarget&&isCompositeItem&&isSpaceKey){if(event.defaultPrevented&&isTextNavigationRole)return;if(event.preventDefault(),isLink||isNativeButton&&isButton)currentTarget.click(),event.preventBaseUIHandler();else if(shouldClick)externalOnClick?.(event),event.preventBaseUIHandler();return}if(shouldClick){if(!isNativeButton&&(isSpaceKey||isEnterKey))event.preventDefault();if(!isNativeButton&&isEnterKey)externalOnClick?.(event)}},onKeyUp(event){if(disabled)return;if(makeEventPreventable(event),externalOnKeyUp?.(event),event.target===event.currentTarget&&isNativeButton&&isCompositeItem&&isButtonElement(event.currentTarget)&&event.key===" "){event.preventDefault();return}if(event.baseUIHandlerPrevented)return;if(event.target===event.currentTarget&&!isNativeButton&&!isCompositeItem&&event.key===" ")externalOnClick?.(event)},onPointerDown(event){if(disabled){event.preventDefault();return}externalOnPointerDown?.(event)}},!isNativeButton?{role:"button"}:void 0,focusableWhenDisabledProps,otherExternalProps)},[disabled,focusableWhenDisabledProps,isCompositeItem,isNativeButton]),buttonRef=useStableCallback((element)=>{elementRef.current=element,updateDisabled()});return{getButtonProps,buttonRef}}function isButtonElement(elem){return isHTMLElement(elem)&&elem.tagName==="BUTTON"}function isValidLinkElement(elem){return Boolean(elem?.tagName==="A"&&elem?.href)}var Button=React19.forwardRef(function(componentProps,forwardedRef){let{render,className,disabled=!1,focusableWhenDisabled=!1,nativeButton=!0,style,...elementProps}=componentProps,{getButtonProps,buttonRef}=useButton({disabled,focusableWhenDisabled,native:nativeButton});return useRenderElement("button",componentProps,{state:{disabled},ref:[forwardedRef,buttonRef],props:[elementProps,getButtonProps]})});import{jsx as jsx4}from"react/jsx-runtime";var buttonStyles=cva(["group/button inline-flex shrink-0 select-none items-center justify-center whitespace-nowrap","rounded-bakin-control border font-bakin-typography-family-ui font-bakin-typography-weight-semibold","text-[length:var(--bakin-typography-size-body)] leading-none","transition-[background-color,border-color,color,filter,transform] duration-[var(--bakin-motion-duration-feedback)] ease-bakin-standard",focusRing,"active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-[var(--bakin-state-opacity-disabled)]","aria-invalid:border-bakin-signal-danger",'[&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*="size-"])]:size-bakin-4',"data-[busy]:cursor-progress data-[busy]:[&>svg:first-child]:animate-spin motion-reduce:data-[busy]:[&>svg:first-child]:animate-none"],{variants:{variant:{primary:"border-bakin-action-primary-background bg-bakin-action-primary-background text-bakin-action-primary-foreground hover:brightness-110",secondary:"border-bakin-border-subtle/60 bg-bakin-surface-default text-bakin-text-primary hover:border-bakin-border-subtle hover:bg-bakin-border-subtle/20",outline:"border-bakin-border-subtle bg-transparent text-bakin-text-primary hover:bg-bakin-surface-default",ghost:"border-transparent bg-transparent text-bakin-text-primary hover:bg-bakin-surface-default",danger:"border-bakin-signal-danger bg-bakin-signal-danger/15 text-bakin-text-primary hover:bg-bakin-signal-danger/25",warning:"border-bakin-signal-highlight bg-bakin-signal-highlight/15 text-bakin-text-primary hover:bg-bakin-signal-highlight/25",info:"border-bakin-border-subtle bg-bakin-surface-default text-bakin-text-muted hover:text-bakin-text-primary",accent:"border-bakin-signal-accent bg-bakin-signal-accent/15 text-bakin-text-primary hover:bg-bakin-signal-accent/25",link:"border-transparent bg-transparent px-bakin-1 text-bakin-signal-accent underline-offset-4 hover:underline"},size:{xs:'h-bakin-6 gap-bakin-1 px-bakin-2 text-[length:var(--bakin-typography-size-meta)] [&_svg:not([class*="size-"])]:size-bakin-3',sm:"h-bakin-8 gap-bakin-2 px-bakin-3",md:"h-[var(--bakin-layout-size-control)] gap-bakin-2 px-bakin-4",lg:"h-[calc(var(--bakin-layout-size-control)+var(--bakin-layout-space-1))] gap-bakin-2 px-bakin-4",inline:'h-auto justify-start gap-bakin-1 whitespace-normal p-0 text-left text-[length:inherit] leading-[inherit] [&_svg:not([class*="size-"])]:size-[1em]',"icon-xs":'size-bakin-6 min-h-bakin-6 min-w-bakin-6 [&_svg:not([class*="size-"])]:size-bakin-3',"icon-sm":"size-bakin-8 min-h-bakin-8 min-w-bakin-8","icon-md":"size-[var(--bakin-layout-size-control)] min-h-[var(--bakin-layout-size-control)] min-w-[var(--bakin-layout-size-control)]","icon-lg":"size-[calc(var(--bakin-layout-size-control)+var(--bakin-layout-space-1))] min-h-[calc(var(--bakin-layout-size-control)+var(--bakin-layout-space-1))] min-w-[calc(var(--bakin-layout-size-control)+var(--bakin-layout-space-1))]"}},defaultVariants:{variant:"primary",size:"md"}});function canonicalVariant(variant){if(variant==="default"||variant==null)return"primary";if(variant==="destructive")return"danger";return variant}function canonicalSize2(size){if(size==="default"||size==null)return"md";if(size==="icon")return"icon-md";return size}function buttonVariants(options={}){return cn(buttonStyles({variant:canonicalVariant(options.variant),size:canonicalSize2(options.size)}),options.className)}function Button3({className,variant="primary",size="md",busy=!1,disabled,focusableWhenDisabled,...props}){let resolvedVariant=canonicalVariant(variant),resolvedSize=canonicalSize2(size),resolvedClassName=typeof className==="function"?(state)=>buttonVariants({variant:resolvedVariant,size:resolvedSize,className:className(state)}):buttonVariants({variant:resolvedVariant,size:resolvedSize,className});return jsx4(Button,{"data-slot":"button","data-variant":resolvedVariant,"data-size":resolvedSize,"data-busy":busy?"":void 0,"aria-busy":busy||void 0,disabled:disabled||busy,focusableWhenDisabled:focusableWhenDisabled??(busy||void 0),className:resolvedClassName,...props})}import{jsx as jsx5,jsxs as jsxs2}from"react/jsx-runtime";function CopyIcon(){return jsxs2("svg",{"aria-hidden":"true",viewBox:"0 0 16 16",className:"size-bakin-3 fill-none stroke-current stroke-[1.5]",children:[jsx5("rect",{x:"5.5",y:"5.5",width:"7",height:"7",rx:"1.25"}),jsx5("path",{d:"M3.5 10.5h-.25A1.75 1.75 0 0 1 1.5 8.75v-5.5A1.75 1.75 0 0 1 3.25 1.5h5.5a1.75 1.75 0 0 1 1.75 1.75v.25"})]})}function CheckIcon(){return jsx5("svg",{"aria-hidden":"true",viewBox:"0 0 16 16",className:"size-bakin-3 fill-none stroke-current stroke-2",children:jsx5("path",{d:"m3.5 8 3 3 6-6",strokeLinecap:"round",strokeLinejoin:"round"})})}function CopyButton({text,label="Copy",className}){let[copied,setCopied]=useState5(!1),resetTimer=useRef4(null),mounted=useRef4(!0);useEffect5(()=>()=>{if(mounted.current=!1,resetTimer.current)clearTimeout(resetTimer.current)},[]);let copy=useCallback2(async()=>{if(!await copyToClipboard(text))return;if(!mounted.current)return;if(setCopied(!0),resetTimer.current)clearTimeout(resetTimer.current);resetTimer.current=setTimeout(()=>setCopied(!1),1500)},[text]);return jsx5(Button3,{type:"button","data-slot":"copy-button","data-copied":copied||void 0,variant:"ghost",size:"icon-xs",onClick:copy,"aria-label":copied?`${label} complete`:label,className:cn("text-bakin-text-muted motion-reduce:transition-none",className),children:copied?jsx5(CheckIcon,{}):jsx5(CopyIcon,{})})}import{jsx as jsx6,jsxs as jsxs3}from"react/jsx-runtime";var TOKEN_CLASSES={key:"text-bakin-syntax-key",string:"text-bakin-syntax-string",number:"text-bakin-syntax-number",literal:"text-bakin-syntax-literal",plain:"text-bakin-text-muted"},JSON_TOKEN=/("(?:\\.|[^"\\])*")(\s*:)?|(-?\d+(?:\.\d+)?(?:[eE][+-]?\d+)?)|\b(true|false|null)\b/g;function tokenizeJson(source){try{JSON.parse(source)}catch{return[{kind:"plain",text:source}]}let tokens=[],last=0;for(let match of source.matchAll(JSON_TOKEN)){let index=match.index??0;if(index>last)tokens.push({kind:"plain",text:source.slice(last,index)});let[,str,colon,num,literal]=match;if(str!==void 0){if(tokens.push({kind:colon?"key":"string",text:str}),colon)tokens.push({kind:"plain",text:colon})}else if(num!==void 0)tokens.push({kind:"number",text:num});else if(literal!==void 0)tokens.push({kind:"literal",text:literal});last=index+match[0].length}if(last<source.length)tokens.push({kind:"plain",text:source.slice(last)});return tokens}function CodeBlock({className,code,copyable=!1,label,language="text",wrap=!1,...props}){let tokens=React20.useMemo(()=>language==="json"?tokenizeJson(code):null,[code,language]);return jsxs3("div",{...props,"data-slot":"code-block","data-language":language,className:cn("relative min-w-0 rounded-bakin-control bg-bakin-canvas-default p-bakin-3",className),children:[copyable?jsx6(CopyButton,{text:code,label:label?`Copy ${label}`:"Copy code",className:"absolute end-bakin-2 top-bakin-2"}):null,jsx6("pre",{role:wrap?void 0:"group",tabIndex:wrap?void 0:0,"aria-label":wrap?void 0:label??"Code",className:cn("m-0 min-w-0 font-bakin-typography-family-mono text-[length:var(--bakin-typography-size-meta)] leading-relaxed text-bakin-text-primary",wrap?"whitespace-pre-wrap break-words":"overflow-x-auto focus-visible:outline-2 focus-visible:outline-solid focus-visible:outline-offset-2 focus-visible:outline-bakin-focus-ring",copyable&&"pe-bakin-8"),children:tokens?tokens.map((token,index)=>jsx6("span",{className:TOKEN_CLASSES[token.kind],children:token.text},index)):code})]})}import{jsx as jsx7,jsxs as jsxs4}from"react/jsx-runtime";function initials(name){let words=name.trim().split(/\s+/).filter(Boolean);if(words.length===0)return"?";return words.slice(0,2).map((word)=>word[0]).join("").toUpperCase()}function DefaultAvatar({agent,size}){return jsxs4(Avatar,{size,children:[agent.avatarUrl?jsx7(AvatarImage3,{src:agent.avatarUrl,alt:""}):null,jsx7(AvatarFallback3,{children:initials(agent.name)})]})}function SpinnerIcon({size="sm"}){return jsx7(Spinner,{size,className:"shrink-0"})}function AlertIcon(){return jsxs4("svg",{"aria-hidden":"true",viewBox:"0 0 16 16",className:"size-bakin-4 shrink-0 fill-none stroke-current stroke-[1.5]",children:[jsx7("path",{d:"M8 2 14 13H2L8 2Z",strokeLinejoin:"round"}),jsx7("path",{d:"M8 6v3.5M8 11.75v.25",strokeLinecap:"round"})]})}function RemoveIcon(){return jsx7("svg",{"aria-hidden":"true",viewBox:"0 0 16 16",className:"size-bakin-3 fill-none stroke-current stroke-[1.5]",children:jsx7("path",{d:"m4 4 8 8M12 4l-8 8",strokeLinecap:"round"})})}function DefaultText({content,format}){if(format==="code")return jsx7(CodeBlock,{code:content,label:"Code output",className:"max-w-full"});if(format==="plain")return jsx7(CodeBlock,{code:content,wrap:!0});return jsx7("div",{className:"whitespace-pre-wrap break-words leading-relaxed text-bakin-text-primary",children:content})}import{jsx as jsx8,jsxs as jsxs5,Fragment}from"react/jsx-runtime";function formatDuration(ms){if(ms===void 0)return"";if(ms<1000)return`${ms}ms`;let seconds=ms/1000;if(seconds<60)return`${seconds<10?seconds.toFixed(1):Math.round(seconds)}s`;return`${Math.floor(seconds/60)}m ${Math.round(seconds%60)}s`}var TOOL_VERBS={web_search:"Searched the web",web_fetch:"Fetched a page",bash:"Ran commands",shell:"Ran commands",read:"Read files",read_file:"Read files",write:"Wrote files",write_file:"Wrote files",edit:"Edited files",grep:"Searched the codebase",glob:"Listed files"};function humanizeActivity(calls){let names=[...new Set(calls.map((call)=>call.toolName))];if(names.length===0)return"No tool activity";if(names.length>1)return`Used ${names.length} tools`;let name=names[0];return TOOL_VERBS[name]??`Used ${name}`}function ChevronIcon({expanded}){return jsx8("svg",{"aria-hidden":"true",viewBox:"0 0 16 16",className:cn("size-bakin-3 shrink-0 fill-none stroke-current stroke-[1.75] transition-transform","duration-[var(--bakin-motion-duration-feedback)] motion-reduce:transition-none",expanded&&"rotate-90"),children:jsx8("path",{d:"m6 3.5 4.5 4.5L6 12.5",strokeLinecap:"round",strokeLinejoin:"round"})})}function ToolIcon(){return jsx8("svg",{"aria-hidden":"true",viewBox:"0 0 16 16",className:"size-bakin-3 shrink-0 fill-none stroke-current stroke-[1.5]",children:jsx8("path",{d:"M9.5 3.1a3.2 3.2 0 0 0-3.9 4.2l-3 3a1.4 1.4 0 0 0 2 2l3-3a3.2 3.2 0 0 0 4.2-3.9L10 7.2 8.8 6l.7-2.9Z",strokeLinecap:"round",strokeLinejoin:"round"})})}function FailedGlyph(){return jsx8("svg",{"aria-hidden":"true",viewBox:"0 0 16 16",className:"size-bakin-3 shrink-0 fill-none stroke-current stroke-2",children:jsx8("path",{d:"m5 5 6 6m0-6-6 6",strokeLinecap:"round"})})}function CompletedGlyph(){return jsx8("svg",{"aria-hidden":"true",viewBox:"0 0 16 16",className:"size-bakin-3 shrink-0 fill-none stroke-current stroke-2",children:jsx8("path",{d:"m3.5 8 3 3 6-6",strokeLinecap:"round",strokeLinejoin:"round"})})}function statusLabel(status){if(status==="running")return"running";if(status==="failed")return"failed";return"completed"}function CallStatus({status}){return jsx8(StatusBadge,{tone:status==="failed"?"danger":status==="running"?"attention":"neutral",variant:"soft",icon:status==="running"?SpinnerIcon:status==="failed"?FailedGlyph:CompletedGlyph,"data-call-status":status,children:statusLabel(status)})}function ToolCallRow({call,onOpen,formatSummary}){let clean=call.summary?formatSummary?.(call.summary)??call.summary.trim().replace(/\s+/g," "):"",content=jsxs5(Fragment,{children:[jsxs5("span",{className:"flex min-w-0 flex-1 flex-wrap items-center gap-x-bakin-2 gap-y-bakin-1",children:[jsx8("span",{className:"shrink-0 font-bakin-typography-family-mono text-[length:var(--bakin-typography-size-meta)] text-bakin-text-primary",children:call.toolName}),clean?jsx8("span",{className:"min-w-24 flex-1 truncate text-[length:var(--bakin-typography-size-meta)] text-bakin-text-muted",title:clean,children:clean}):null]}),call.durationMs!==void 0?jsx8("span",{className:"shrink-0 font-bakin-typography-family-mono text-[length:var(--bakin-typography-size-meta)] tabular-nums text-bakin-text-muted",children:formatDuration(call.durationMs)}):null,jsx8(CallStatus,{status:call.status})]}),classes=["flex min-h-bakin-8 w-full min-w-0 items-center gap-bakin-2 px-bakin-3 py-bakin-2 text-left","font-bakin-typography-family-ui outline-none"].join(" ");if(onOpen)return jsx8("button",{type:"button","data-conv-call":call.key,onClick:()=>onOpen(call),className:cn(classes,"transition-colors duration-[var(--bakin-motion-duration-feedback)] hover:bg-bakin-surface-default","focus-visible:outline-2 focus-visible:outline-solid focus-visible:-outline-offset-2 focus-visible:outline-bakin-focus-ring motion-reduce:transition-none"),children:content});return jsx8("div",{"data-conv-call":call.key,className:classes,children:content})}function ActivityGroup({calls,onOpenCall,defaultExpanded=!1,formatSummary,className}){let[expanded,setExpanded]=useState6(defaultExpanded),contentId=useId();if(calls.length===0)return jsx8("div",{"data-conv-activity":"","data-empty":"true",className:cn("rounded-bakin-surface border border-dashed border-bakin-border-subtle px-bakin-3 py-bakin-2","font-bakin-typography-family-ui text-[length:var(--bakin-typography-size-meta)] text-bakin-text-muted",className),children:"No tool activity"});let running=calls.some((call)=>call.status==="running"),failed=calls.filter((call)=>call.status==="failed").length,totalMs=calls.reduce((total,call)=>call.durationMs===void 0?total:(total??0)+call.durationMs,void 0);return jsxs5("div",{"data-conv-activity":"",className:cn("min-w-0 overflow-hidden rounded-bakin-surface border border-bakin-border-subtle bg-bakin-canvas-default","font-bakin-typography-family-ui text-bakin-text-primary",className),children:[jsxs5("button",{type:"button","data-conv-activity-header":"","aria-controls":contentId,"aria-expanded":expanded,onClick:()=>setExpanded((value)=>!value),className:cn("flex min-h-[var(--bakin-layout-size-control)] w-full min-w-0 items-center gap-bakin-2 px-bakin-3 py-bakin-2 text-left","text-[length:var(--bakin-typography-size-meta)] text-bakin-text-muted outline-none","transition-colors duration-[var(--bakin-motion-duration-feedback)] hover:bg-bakin-surface-default","focus-visible:outline-2 focus-visible:outline-solid focus-visible:-outline-offset-2 focus-visible:outline-bakin-focus-ring motion-reduce:transition-none"),children:[jsx8(ChevronIcon,{expanded}),running?jsx8(SpinnerIcon,{}):jsx8(ToolIcon,{}),jsx8("span",{className:"min-w-0 truncate font-bakin-typography-weight-medium text-bakin-text-primary",children:humanizeActivity(calls)}),calls.length>1?jsxs5("span",{className:"shrink-0",children:["\xB7 ",calls.length," calls"]}):null,running?jsx8("span",{className:"shrink-0 text-bakin-text-primary",children:"\xB7 Running"}):null,failed?jsxs5("span",{className:"shrink-0 text-bakin-signal-danger",children:["\xB7 ",failed," failed"]}):null,!running&&totalMs!==void 0?jsx8("span",{className:"ml-auto shrink-0 font-bakin-typography-family-mono tabular-nums",children:formatDuration(totalMs)}):null]}),expanded?jsx8("div",{id:contentId,"data-conv-activity-calls":"",className:"divide-y divide-bakin-border-subtle border-t border-bakin-border-subtle",children:calls.map((call)=>jsx8(ToolCallRow,{call,onOpen:onOpenCall,formatSummary},call.key))}):null]})}import{jsx as jsx9}from"react/jsx-runtime";var alertStyles=cva(["group/alert relative grid w-full gap-x-bakin-1 gap-y-bakin-0 rounded-bakin-surface border px-bakin-4 py-bakin-3","font-bakin-typography-family-ui text-left text-[length:var(--bakin-typography-size-body)] text-bakin-text-primary","has-data-[slot=alert-action]:relative has-data-[slot=alert-action]:pr-[calc(var(--bakin-layout-space-8)*3)]","has-[>svg]:grid-cols-[auto_1fr] has-[>svg]:gap-x-bakin-3",'*:[svg]:row-span-2 *:[svg]:translate-y-0.5 *:[svg]:text-current *:[svg:not([class*="size-"])]:size-bakin-4'],{variants:{tone:{neutral:"border-bakin-border-subtle bg-bakin-surface-default",success:"border-bakin-action-primary-background bg-bakin-action-primary-background/10",attention:"border-bakin-signal-highlight bg-bakin-signal-highlight/10",danger:"border-bakin-signal-danger bg-bakin-signal-danger/10",accent:"border-bakin-signal-accent bg-bakin-signal-accent/10"}},defaultVariants:{tone:"neutral"}});function canonicalTone(options){if(options.tone)return options.tone;if(options.variant==="destructive")return"danger";if(options.variant==="warning")return"attention";if(options.variant==="info")return"neutral";return"neutral"}function alertVariants(options={}){return cn(alertStyles({tone:canonicalTone(options)}),options.className)}function Alert({className,tone,variant,role,...props}){let resolvedTone=canonicalTone({tone,variant});return jsx9("div",{"data-slot":"alert","data-tone":resolvedTone,role:role??(resolvedTone==="danger"?"alert":"status"),className:alertVariants({tone:resolvedTone,className}),...props})}function AlertDescription({className,...props}){return jsx9("div",{"data-slot":"alert-description",className:cn("text-balance text-[length:var(--bakin-typography-size-body)] leading-relaxed text-bakin-text-muted md:text-pretty","[&_a]:underline [&_a]:underline-offset-4 [&_a]:hover:text-bakin-text-primary [&_p:not(:last-child)]:mb-bakin-4",className),...props})}import{jsx as jsx10}from"react/jsx-runtime";function TurnTimestamp({ts,className}){if(!ts)return null;let relative=formatRelativeTime(ts);if(!relative)return null;return jsx10("time",{dateTime:ts,title:formatAbsoluteTime(ts),className:cn("shrink-0 font-bakin-typography-family-ui text-[length:var(--bakin-typography-size-meta)] tabular-nums text-bakin-text-muted",className),children:relative})}function formatTokenCount(tokens){if(tokens>=1e6)return`${trimZero((tokens/1e6).toFixed(1))}m`;if(tokens>=1000)return`${trimZero((tokens/1000).toFixed(1))}k`;return String(tokens)}function formatUsageCost(costUsd){if(costUsd>0&&costUsd<0.005)return"<$0.01";return`$${costUsd.toFixed(2)}`}function modelTail(model){let separator=model.lastIndexOf("/");return separator>=0?model.slice(separator+1):model}function legacyUsageParts(usage){let parts=[],tokens=[];if(usage.inputTokens!==void 0)tokens.push(`${formatTokenCount(usage.inputTokens)} in`);if(usage.outputTokens!==void 0)tokens.push(`${formatTokenCount(usage.outputTokens)} out`);if(tokens.length)parts.push(tokens.join(" / "));else if(usage.totalTokens!==void 0)parts.push(`${formatTokenCount(usage.totalTokens)} tok`);if(usage.costUsd!==void 0)parts.push(formatUsageCost(usage.costUsd));if(usage.model)parts.push(modelTail(usage.model));return parts}function usageFooterLines(usage,toolCallCount){let billed=usage.totalTokens??(usage.inputTokens!==void 0&&usage.outputTokens!==void 0?usage.inputTokens+usage.outputTokens:void 0);if(billed===void 0){let legacy=legacyUsageParts(usage);return legacy.length?[legacy.join(" \xB7 ")]:[]}let parts=[`${formatTokenCount(billed)} billed`];if(usage.cacheReadTokens!==void 0&&billed>0&&usage.cacheReadTokens<=billed)parts.push(`${Math.floor(usage.cacheReadTokens/billed*100)}% cached`);if(toolCallCount>0)parts.push(`~${toolCallCount+1} requests`);if(usage.costUsd!==void 0)parts.push(formatUsageCost(usage.costUsd));if(usage.model)parts.push(modelTail(usage.model));let lines=[parts.join(" \xB7 ")];if(toolCallCount>0){let inOut=[];if(usage.inputTokens!==void 0)inOut.push(`${formatTokenCount(usage.inputTokens)} in`);if(usage.outputTokens!==void 0)inOut.push(`${formatTokenCount(usage.outputTokens)} out`);if(inOut.length)lines.push(inOut.join(" / "))}return lines}function trimZero(value){return value.endsWith(".0")?value.slice(0,-2):value}import{jsx as jsx11,jsxs as jsxs6}from"react/jsx-runtime";function StopCircleIcon(){return jsxs6("svg",{"aria-hidden":"true",viewBox:"0 0 16 16",className:"size-bakin-3 shrink-0 fill-none stroke-current stroke-[1.5]",children:[jsx11("circle",{cx:"8",cy:"8",r:"5.5"}),jsx11("path",{d:"m4.25 11.75 7.5-7.5"})]})}function RetryIcon(){return jsxs6("svg",{"aria-hidden":"true",viewBox:"0 0 16 16",className:"size-bakin-3 fill-none stroke-current stroke-[1.5]",children:[jsx11("path",{d:"M12.25 5.25V2.5m0 2.75H9.5",strokeLinecap:"round",strokeLinejoin:"round"}),jsx11("path",{d:"M12 5a5 5 0 1 0 .2 5.75",strokeLinecap:"round"})]})}function ThinkingStatus({label}){return jsxs6("div",{"aria-live":"polite",className:"flex min-h-bakin-6 items-center gap-bakin-2 text-[length:var(--bakin-typography-size-meta)] text-bakin-text-muted",children:[jsx11(SpinnerIcon,{}),jsxs6("span",{className:"min-w-0 break-words",children:[label,"\u2026"]})]})}function turnText(items){return items.filter((item)=>item.type==="text").map((item)=>item.content).join(`
2
+ var __create=Object.create;var{getPrototypeOf:__getProtoOf,defineProperty:__defProp,getOwnPropertyNames:__getOwnPropNames}=Object;var __hasOwnProp=Object.prototype.hasOwnProperty;function __accessProp(key){return this[key]}var __toESMCache_node,__toESMCache_esm,__toESM=(mod,isNodeMode,target)=>{var canCache=mod!=null&&typeof mod==="object";if(canCache){var cache=isNodeMode?__toESMCache_node??=new WeakMap:__toESMCache_esm??=new WeakMap,cached=cache.get(mod);if(cached)return cached}target=mod!=null?__create(__getProtoOf(mod)):{};let to=isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target;for(let key of __getOwnPropNames(mod))if(!__hasOwnProp.call(to,key))__defProp(to,key,{get:__accessProp.bind(mod,key),enumerable:!0});if(canCache)cache.set(mod,to);return to};var __commonJS=(cb,mod)=>()=>(mod||cb((mod={exports:{}}).exports,mod),mod.exports);var __returnValue=(v)=>v;function __exportSetter(name,newValue){this[name]=__returnValue.bind(null,newValue)}var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0,configurable:!0,set:__exportSetter.bind(all,name)})};import*as React36 from"react";var require_use_sync_external_store_shim_production=__commonJS((exports)=>{function is(x,y){return x===y&&(x!==0||1/x===1/y)||x!==x&&y!==y}var objectIs=typeof Object.is==="function"?Object.is:is,useState16=React36.useState,useEffect14=React36.useEffect,useLayoutEffect5=React36.useLayoutEffect,useDebugValue=React36.useDebugValue;function useSyncExternalStore$2(subscribe,getSnapshot){var value=getSnapshot(),_useState=useState16({inst:{value,getSnapshot}}),inst=_useState[0].inst,forceUpdate=_useState[1];return useLayoutEffect5(function(){inst.value=value,inst.getSnapshot=getSnapshot,checkIfSnapshotChanged(inst)&&forceUpdate({inst})},[subscribe,value,getSnapshot]),useEffect14(function(){return checkIfSnapshotChanged(inst)&&forceUpdate({inst}),subscribe(function(){checkIfSnapshotChanged(inst)&&forceUpdate({inst})})},[subscribe]),useDebugValue(value),value}function checkIfSnapshotChanged(inst){var latestGetSnapshot=inst.getSnapshot;inst=inst.value;try{var nextValue=latestGetSnapshot();return!objectIs(inst,nextValue)}catch(error){return!0}}function useSyncExternalStore$1(subscribe,getSnapshot){return getSnapshot()}var shim=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?useSyncExternalStore$1:useSyncExternalStore$2;exports.useSyncExternalStore=React36.useSyncExternalStore!==void 0?React36.useSyncExternalStore:shim});function newBuilder(){return{items:[],status:"complete",byCallId:new Map,keyCounter:0}}function lastActivity(builder){let last=builder.items[builder.items.length-1];return last&&last.type==="activity"?last:null}function settledStatus(status){return status==="failed"?"failed":"completed"}function addToolActivity(builder,data){if(!data.toolName)return;let status=data.phase==="result"?settledStatus(data.status):"running",existing;if(data.callId)existing=builder.byCallId.get(data.callId);else if(data.phase==="result")for(let i=builder.items.length-1;i>=0&&!existing;i--){let item=builder.items[i];if(item.type!=="activity")continue;for(let j=item.calls.length-1;j>=0;j--){let call2=item.calls[j];if(call2.toolName===data.toolName&&call2.status==="running"){existing=call2;break}}}if(existing){if(existing.status=status,data.summary)existing.summary=data.summary;if(data.inputPreview)existing.inputPreview=data.inputPreview;if(data.outputPreview)existing.outputPreview=data.outputPreview;if(data.durationMs!==void 0)existing.durationMs=data.durationMs;if(data.metadata)existing.metadata={...existing.metadata,...data.metadata};return}let call={key:data.callId??`call-${builder.keyCounter++}`,...data.callId?{callId:data.callId}:{},toolName:data.toolName,status,...data.summary?{summary:data.summary}:{},...data.inputPreview?{inputPreview:data.inputPreview}:{},...data.outputPreview?{outputPreview:data.outputPreview}:{},...data.durationMs!==void 0?{durationMs:data.durationMs}:{},...data.metadata?{metadata:data.metadata}:{}};if(data.callId)builder.byCallId.set(data.callId,call);let group=lastActivity(builder);if(group)group.calls.push(call);else builder.items.push({type:"activity",calls:[call]})}function addText(builder,content,format){if(!content)return;let last=builder.items[builder.items.length-1];if(last&&last.type==="text"&&last.format===format)last.content+=content;else builder.items.push({type:"text",format,content})}function foldLiveChunks(chunks){let builder=newBuilder();builder.status="streaming";for(let chunk of chunks)switch(chunk.type){case"text":addText(builder,chunk.content,chunk.format??"markdown");break;case"tool":addToolActivity(builder,chunk.data);break;case"status":if(chunk.content)builder.statusLabel=chunk.content;break;case"error":builder.items.push({type:"error",message:chunk.content||"turn failed",...typeof chunk.data?.kind==="string"?{errorKind:chunk.data.kind}:{}}),builder.status="error";break;case"done":if(builder.status==="streaming")builder.status="complete";break}return builder}function finishAgentTurn(builder,key,turnId){return{kind:"agent",key,...builder.ts?{ts:builder.ts}:{},...builder.agentId?{agentId:builder.agentId}:{},...turnId!==void 0?{turnId}:{},items:builder.items,status:builder.status,...builder.statusLabel?{statusLabel:builder.statusLabel}:{}}}function foldConversation(messages,opts){let turns=[],current=null,currentTurnId,agentTurnIndex=0,flush=()=>{if(!current)return;turns.push(finishAgentTurn(current,`agent-${agentTurnIndex++}`,currentTurnId)),current=null,currentTurnId=void 0};for(let row of messages){if(row.kind==="user"){flush(),turns.push({kind:"user",key:`user-${turns.length}`,ts:row.ts,content:row.content,...row.attachments?.length?{attachments:row.attachments}:{}});continue}if(row.kind==="done")continue;let rowTurnId=row.turnId;if(current&&rowTurnId!==void 0&&currentTurnId!==void 0&&rowTurnId!==currentTurnId)flush();if(!current)current=newBuilder(),current.ts=row.ts,currentTurnId=rowTurnId;if(currentTurnId===void 0&&rowTurnId!==void 0)currentTurnId=rowTurnId;if(!current.agentId&&"agentId"in row&&row.agentId)current.agentId=row.agentId;switch(row.kind){case"assistant":addText(current,row.content,"markdown");break;case"tool":addToolActivity(current,{phase:"result",toolName:row.toolName,...row.callId?{callId:row.callId}:{},status:row.status,...row.summary?{summary:row.summary}:{},...row.inputPreview?{inputPreview:row.inputPreview}:{},...row.outputPreview?{outputPreview:row.outputPreview}:{},...row.durationMs!==void 0?{durationMs:row.durationMs}:{},...row.metadata?{metadata:row.metadata}:{}});break;case"error":current.items.push({type:"error",message:row.message,...row.errorKind?{errorKind:row.errorKind}:{}}),current.status="error";break;case"aborted":current.status="aborted";break}}if(flush(),opts?.liveChunks){let live=foldLiveChunks(opts.liveChunks);if(opts.liveAgentId)live.agentId=opts.liveAgentId;turns.push(finishAgentTurn(live,`live-${agentTurnIndex}`))}return turns}function formatRelativeTime(iso,now=Date.now()){let then=Date.parse(iso);if(Number.isNaN(then))return"";let seconds=Math.max(0,Math.floor((now-then)/1000));if(seconds<60)return"now";let minutes=Math.floor(seconds/60);if(minutes<60)return`${minutes}m`;let hours=Math.floor(minutes/60);if(hours<24)return`${hours}h`;let days=Math.floor(hours/24);if(days<7)return`${days}d`;return new Date(then).toLocaleDateString(void 0,{month:"short",day:"numeric"})}function formatAbsoluteTime(iso){let then=Date.parse(iso);if(Number.isNaN(then))return"";return new Date(then).toLocaleString()}function formatDayLabel(iso){let then=Date.parse(iso);if(Number.isNaN(then))return"";return new Date(then).toLocaleDateString(void 0,{month:"short",day:"numeric",year:"numeric"})}function dayKey(iso){if(!iso)return"";let then=new Date(iso);if(Number.isNaN(then.getTime()))return"";return`${then.getFullYear()}-${then.getMonth()}-${then.getDate()}`}import{useId,useState as useState6}from"react";function mergeObjects(a,b){if(a&&!b)return a;if(!a&&b)return b;if(a||b)return{...a,...b};return}var EMPTY_PROPS={};function mergeProps(a,b,c,d,e){if(!c&&!d&&!e&&!a)return createInitialMergedProps(b);let merged=createInitialMergedProps(a);if(b)merged=mergeInto(merged,b);if(c)merged=mergeInto(merged,c);if(d)merged=mergeInto(merged,d);if(e)merged=mergeInto(merged,e);return merged}function mergePropsN(props){if(props.length===0)return EMPTY_PROPS;if(props.length===1)return createInitialMergedProps(props[0]);let merged=createInitialMergedProps(props[0]);for(let i=1;i<props.length;i+=1)merged=mergeInto(merged,props[i]);return merged}function createInitialMergedProps(inputProps){if(isPropsGetter(inputProps))return{...resolvePropsGetter(inputProps,EMPTY_PROPS)};return copyInitialProps(inputProps)}function mergeInto(merged,inputProps){if(isPropsGetter(inputProps))return resolvePropsGetter(inputProps,merged);return mutablyMergeInto(merged,inputProps)}function copyInitialProps(inputProps){let copiedProps={...inputProps};for(let propName in copiedProps){let propValue=copiedProps[propName];if(isEventHandler(propName,propValue))copiedProps[propName]=wrapEventHandler(propValue)}return copiedProps}function mutablyMergeInto(mergedProps,externalProps){if(!externalProps)return mergedProps;for(let propName in externalProps){let externalPropValue=externalProps[propName];switch(propName){case"style":{mergedProps[propName]=mergeObjects(mergedProps.style,externalPropValue);break}case"className":{mergedProps[propName]=mergeClassNames(mergedProps.className,externalPropValue);break}default:if(isEventHandler(propName,externalPropValue))mergedProps[propName]=mergeEventHandlers(mergedProps[propName],externalPropValue);else mergedProps[propName]=externalPropValue}}return mergedProps}function isEventHandler(key,value){let code0=key.charCodeAt(0),code1=key.charCodeAt(1),code2=key.charCodeAt(2);return code0===111&&code1===110&&code2>=65&&code2<=90&&(typeof value==="function"||typeof value>"u")}function isPropsGetter(inputProps){return typeof inputProps==="function"}function resolvePropsGetter(inputProps,previousProps){if(isPropsGetter(inputProps))return inputProps(previousProps);return inputProps??EMPTY_PROPS}function mergeEventHandlers(ourHandler,theirHandler){if(!theirHandler)return ourHandler;if(!ourHandler)return wrapEventHandler(theirHandler);return(...args)=>{let event=args[0];if(isSyntheticEvent(event)){let baseUIEvent=event;makeEventPreventable(baseUIEvent);let result2=theirHandler(...args);if(!baseUIEvent.baseUIHandlerPrevented)ourHandler?.(...args);return result2}let result=theirHandler(...args);return ourHandler?.(...args),result}}function wrapEventHandler(handler){if(!handler)return handler;return(...args)=>{let event=args[0];if(isSyntheticEvent(event))makeEventPreventable(event);return handler(...args)}}function makeEventPreventable(event){return event.preventBaseUIHandler=()=>{event.baseUIHandlerPrevented=!0},event}function mergeClassNames(ourClassName,theirClassName){if(theirClassName){if(ourClassName)return theirClassName+" "+ourClassName;return theirClassName}return ourClassName}function isSyntheticEvent(event){return event!=null&&typeof event==="object"&&"nativeEvent"in event}function createFormatErrorMessage(baseUrl,prefix){return function(code,...args){let url=new URL(baseUrl);return url.searchParams.set("code",code.toString()),args.forEach((arg)=>url.searchParams.append("args[]",arg)),`${prefix} error #${code}; visit ${url} for the full message.`}}var formatErrorMessage=createFormatErrorMessage("https://base-ui.com/production-error","Base UI"),formatErrorMessage_default=formatErrorMessage;import*as React4 from"react";import*as React from"react";var UNINITIALIZED={};function useRefWithInit(init,initArg){let ref=React.useRef(UNINITIALIZED);if(ref.current===UNINITIALIZED)ref.current=init(initArg);return ref}function useMergedRefs(a,b,c,d){let forkRef=useRefWithInit(createForkRef).current;if(didChange(forkRef,a,b,c,d))update(forkRef,[a,b,c,d]);return forkRef.callback}function useMergedRefsN(refs){let forkRef=useRefWithInit(createForkRef).current;if(didChangeN(forkRef,refs))update(forkRef,refs);return forkRef.callback}function createForkRef(){return{callback:null,cleanup:null,refs:[]}}function didChange(forkRef,a,b,c,d){return forkRef.refs[0]!==a||forkRef.refs[1]!==b||forkRef.refs[2]!==c||forkRef.refs[3]!==d}function didChangeN(forkRef,newRefs){return forkRef.refs.length!==newRefs.length||forkRef.refs.some((ref,index)=>ref!==newRefs[index])}function update(forkRef,refs){if(forkRef.refs=refs,refs.every((ref)=>ref==null)){forkRef.callback=null;return}forkRef.callback=(instance)=>{if(forkRef.cleanup)forkRef.cleanup(),forkRef.cleanup=null;if(instance!=null){let cleanupCallbacks=Array(refs.length).fill(null);for(let i=0;i<refs.length;i+=1){let ref=refs[i];if(ref==null)continue;switch(typeof ref){case"function":{let refCleanup=ref(instance);if(typeof refCleanup==="function")cleanupCallbacks[i]=refCleanup;break}case"object":{ref.current=instance;break}default:}}forkRef.cleanup=()=>{for(let i=0;i<refs.length;i+=1){let ref=refs[i];if(ref==null)continue;switch(typeof ref){case"function":{let cleanupCallback=cleanupCallbacks[i];if(typeof cleanupCallback==="function")cleanupCallback();else ref(null);break}case"object":{ref.current=null;break}default:}}}}}}import*as React3 from"react";import*as React2 from"react";var majorVersion=parseInt(React2.version,10);function isReactVersionAtLeast(reactVersionToCheck){return majorVersion>=reactVersionToCheck}function getReactElementRef(element){if(!React3.isValidElement(element))return null;let reactElement=element,propsWithRef=reactElement.props;return(isReactVersionAtLeast(19)?propsWithRef?.ref:reactElement.ref)??null}function NOOP(){}var EMPTY_ARRAY=Object.freeze([]),EMPTY_OBJECT=Object.freeze({});function getStateAttributesProps(state,customMapping){let props={};for(let key in state){let value=state[key];if(customMapping?.hasOwnProperty(key)){let customProps=customMapping[key](value);if(customProps!=null)Object.assign(props,customProps);continue}if(value===!0)props[`data-${key.toLowerCase()}`]="";else if(value)props[`data-${key.toLowerCase()}`]=value.toString()}return props}function resolveClassName(className,state){return typeof className==="function"?className(state):className}function resolveStyle(style,state){return typeof style==="function"?style(state):style}import{createElement as _createElement}from"react";function useRenderElement(element,componentProps,params={}){let renderProp=componentProps.render,outProps=useRenderElementProps(componentProps,params);if(params.enabled===!1)return null;let state=params.state??EMPTY_OBJECT;return evaluateRenderProp(element,renderProp,outProps,state)}function useRenderElementProps(componentProps,params={}){let{className:classNameProp,style:styleProp,render:renderProp}=componentProps,{state=EMPTY_OBJECT,ref,props,stateAttributesMapping,enabled=!0}=params,className=enabled?resolveClassName(classNameProp,state):void 0,style=enabled?resolveStyle(styleProp,state):void 0,stateProps=enabled?getStateAttributesProps(state,stateAttributesMapping):EMPTY_OBJECT,resolvedProps=enabled&&props?resolveRenderFunctionProps(props):void 0,outProps=enabled?mergeObjects(stateProps,resolvedProps)??{}:EMPTY_OBJECT;if(typeof document<"u")if(!enabled)useMergedRefs(null,null);else if(Array.isArray(ref))outProps.ref=useMergedRefsN([outProps.ref,getReactElementRef(renderProp),...ref]);else outProps.ref=useMergedRefs(outProps.ref,getReactElementRef(renderProp),ref);if(!enabled)return EMPTY_OBJECT;if(className!==void 0)outProps.className=mergeClassNames(outProps.className,className);if(style!==void 0)outProps.style=mergeObjects(outProps.style,style);return outProps}function resolveRenderFunctionProps(props){if(Array.isArray(props))return mergePropsN(props);return mergeProps(void 0,props)}var REACT_LAZY_TYPE=Symbol.for("react.lazy");function evaluateRenderProp(element,render,props,state){if(render){if(typeof render==="function")return render(props,state);let mergedProps=mergeProps(props,render.props);mergedProps.ref=props.ref;let newElement=render;if(newElement?.$$typeof===REACT_LAZY_TYPE)newElement=React4.Children.toArray(render)[0];return React4.cloneElement(newElement,mergedProps)}if(element){if(typeof element==="string")return renderTag(element,props)}throw Error(formatErrorMessage_default(8))}function renderTag(Tag,props){if(Tag==="button")return _createElement("button",{type:"button",...props,key:props.key});if(Tag==="img")return _createElement("img",{alt:"",...props,key:props.key});return React4.createElement(Tag,props)}function useRender(params){return useRenderElement(params.defaultTagName??"div",params,params)}function r(e){var t,f,n="";if(typeof e=="string"||typeof e=="number")n+=e;else if(typeof e=="object")if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(f=r(e[t]))&&(n&&(n+=" "),n+=f)}else for(f in e)e[f]&&(n&&(n+=" "),n+=f);return n}function clsx(){for(var e,t,f=0,n="",o=arguments.length;f<o;f++)(e=arguments[f])&&(t=r(e))&&(n&&(n+=" "),n+=t);return n}var falsyToString=(value)=>typeof value==="boolean"?`${value}`:value===0?"0":value,cx=clsx,cva=(base,config)=>(props)=>{var _config_compoundVariants;if((config===null||config===void 0?void 0:config.variants)==null)return cx(base,props===null||props===void 0?void 0:props.class,props===null||props===void 0?void 0:props.className);let{variants,defaultVariants}=config,getVariantClassNames=Object.keys(variants).map((variant)=>{let variantProp=props===null||props===void 0?void 0:props[variant],defaultVariantProp=defaultVariants===null||defaultVariants===void 0?void 0:defaultVariants[variant];if(variantProp===null)return null;let variantKey=falsyToString(variantProp)||falsyToString(defaultVariantProp);return variants[variant][variantKey]}),propsWithoutUndefined=props&&Object.entries(props).reduce((acc,param)=>{let[key,value]=param;if(value===void 0)return acc;return acc[key]=value,acc},{}),getCompoundVariantClassNames=config===null||config===void 0?void 0:(_config_compoundVariants=config.compoundVariants)===null||_config_compoundVariants===void 0?void 0:_config_compoundVariants.reduce((acc,param)=>{let{class:cvClass,className:cvClassName,...compoundVariantOptions}=param;return Object.entries(compoundVariantOptions).every((param2)=>{let[key,value]=param2;return Array.isArray(value)?value.includes({...defaultVariants,...propsWithoutUndefined}[key]):{...defaultVariants,...propsWithoutUndefined}[key]===value})?[...acc,cvClass,cvClassName]:acc},[]);return cx(base,getVariantClassNames,getCompoundVariantClassNames,props===null||props===void 0?void 0:props.class,props===null||props===void 0?void 0:props.className)};var concatArrays=(array1,array2)=>{let combinedArray=Array(array1.length+array2.length);for(let i=0;i<array1.length;i++)combinedArray[i]=array1[i];for(let i=0;i<array2.length;i++)combinedArray[array1.length+i]=array2[i];return combinedArray},createClassValidatorObject=(classGroupId,validator)=>({classGroupId,validator}),createClassPartObject=(nextPart=new Map,validators=null,classGroupId)=>({nextPart,validators,classGroupId});var EMPTY_CONFLICTS=[];var createClassGroupUtils=(config)=>{let classMap=createClassMap(config),{conflictingClassGroups,conflictingClassGroupModifiers}=config;return{getClassGroupId:(className)=>{if(className.startsWith("[")&&className.endsWith("]"))return getGroupIdForArbitraryProperty(className);let classParts=className.split("-"),startIndex=classParts[0]===""&&classParts.length>1?1:0;return getGroupRecursive(classParts,startIndex,classMap)},getConflictingClassGroupIds:(classGroupId,hasPostfixModifier)=>{if(hasPostfixModifier){let modifierConflicts=conflictingClassGroupModifiers[classGroupId],baseConflicts=conflictingClassGroups[classGroupId];if(modifierConflicts){if(baseConflicts)return concatArrays(baseConflicts,modifierConflicts);return modifierConflicts}return baseConflicts||EMPTY_CONFLICTS}return conflictingClassGroups[classGroupId]||EMPTY_CONFLICTS}}},getGroupRecursive=(classParts,startIndex,classPartObject)=>{if(classParts.length-startIndex===0)return classPartObject.classGroupId;let currentClassPart=classParts[startIndex],nextClassPartObject=classPartObject.nextPart.get(currentClassPart);if(nextClassPartObject){let result=getGroupRecursive(classParts,startIndex+1,nextClassPartObject);if(result)return result}let validators=classPartObject.validators;if(validators===null)return;let classRest=startIndex===0?classParts.join("-"):classParts.slice(startIndex).join("-"),validatorsLength=validators.length;for(let i=0;i<validatorsLength;i++){let validatorObj=validators[i];if(validatorObj.validator(classRest))return validatorObj.classGroupId}return},getGroupIdForArbitraryProperty=(className)=>className.slice(1,-1).indexOf(":")===-1?void 0:(()=>{let content=className.slice(1,-1),colonIndex=content.indexOf(":"),property=content.slice(0,colonIndex);return property?"arbitrary.."+property:void 0})(),createClassMap=(config)=>{let{theme,classGroups}=config;return processClassGroups(classGroups,theme)},processClassGroups=(classGroups,theme)=>{let classMap=createClassPartObject();for(let classGroupId in classGroups){let group=classGroups[classGroupId];processClassesRecursively(group,classMap,classGroupId,theme)}return classMap},processClassesRecursively=(classGroup,classPartObject,classGroupId,theme)=>{let len=classGroup.length;for(let i=0;i<len;i++){let classDefinition=classGroup[i];processClassDefinition(classDefinition,classPartObject,classGroupId,theme)}},processClassDefinition=(classDefinition,classPartObject,classGroupId,theme)=>{if(typeof classDefinition==="string"){processStringDefinition(classDefinition,classPartObject,classGroupId);return}if(typeof classDefinition==="function"){processFunctionDefinition(classDefinition,classPartObject,classGroupId,theme);return}processObjectDefinition(classDefinition,classPartObject,classGroupId,theme)},processStringDefinition=(classDefinition,classPartObject,classGroupId)=>{let classPartObjectToEdit=classDefinition===""?classPartObject:getPart(classPartObject,classDefinition);classPartObjectToEdit.classGroupId=classGroupId},processFunctionDefinition=(classDefinition,classPartObject,classGroupId,theme)=>{if(isThemeGetter(classDefinition)){processClassesRecursively(classDefinition(theme),classPartObject,classGroupId,theme);return}if(classPartObject.validators===null)classPartObject.validators=[];classPartObject.validators.push(createClassValidatorObject(classGroupId,classDefinition))},processObjectDefinition=(classDefinition,classPartObject,classGroupId,theme)=>{let entries=Object.entries(classDefinition),len=entries.length;for(let i=0;i<len;i++){let[key,value]=entries[i];processClassesRecursively(value,getPart(classPartObject,key),classGroupId,theme)}},getPart=(classPartObject,path)=>{let current=classPartObject,parts=path.split("-"),len=parts.length;for(let i=0;i<len;i++){let part=parts[i],next=current.nextPart.get(part);if(!next)next=createClassPartObject(),current.nextPart.set(part,next);current=next}return current},isThemeGetter=(func)=>("isThemeGetter"in func)&&func.isThemeGetter===!0,createLruCache=(maxCacheSize)=>{if(maxCacheSize<1)return{get:()=>{return},set:()=>{}};let cacheSize=0,cache=Object.create(null),previousCache=Object.create(null),update2=(key,value)=>{if(cache[key]=value,cacheSize++,cacheSize>maxCacheSize)cacheSize=0,previousCache=cache,cache=Object.create(null)};return{get(key){let value=cache[key];if(value!==void 0)return value;if((value=previousCache[key])!==void 0)return update2(key,value),value},set(key,value){if(key in cache)cache[key]=value;else update2(key,value)}}};var EMPTY_MODIFIERS=[],createResultObject=(modifiers,hasImportantModifier,baseClassName,maybePostfixModifierPosition,isExternal)=>({modifiers,hasImportantModifier,baseClassName,maybePostfixModifierPosition,isExternal}),createParseClassName=(config)=>{let{prefix,experimentalParseClassName}=config,parseClassName=(className)=>{let modifiers=[],bracketDepth=0,parenDepth=0,modifierStart=0,postfixModifierPosition,len=className.length;for(let index=0;index<len;index++){let currentCharacter=className[index];if(bracketDepth===0&&parenDepth===0){if(currentCharacter===":"){modifiers.push(className.slice(modifierStart,index)),modifierStart=index+1;continue}if(currentCharacter==="/"){postfixModifierPosition=index;continue}}if(currentCharacter==="[")bracketDepth++;else if(currentCharacter==="]")bracketDepth--;else if(currentCharacter==="(")parenDepth++;else if(currentCharacter===")")parenDepth--}let baseClassNameWithImportantModifier=modifiers.length===0?className:className.slice(modifierStart),baseClassName=baseClassNameWithImportantModifier,hasImportantModifier=!1;if(baseClassNameWithImportantModifier.endsWith("!"))baseClassName=baseClassNameWithImportantModifier.slice(0,-1),hasImportantModifier=!0;else if(baseClassNameWithImportantModifier.startsWith("!"))baseClassName=baseClassNameWithImportantModifier.slice(1),hasImportantModifier=!0;let maybePostfixModifierPosition=postfixModifierPosition&&postfixModifierPosition>modifierStart?postfixModifierPosition-modifierStart:void 0;return createResultObject(modifiers,hasImportantModifier,baseClassName,maybePostfixModifierPosition)};if(prefix){let fullPrefix=prefix+":",parseClassNameOriginal=parseClassName;parseClassName=(className)=>className.startsWith(fullPrefix)?parseClassNameOriginal(className.slice(fullPrefix.length)):createResultObject(EMPTY_MODIFIERS,!1,className,void 0,!0)}if(experimentalParseClassName){let parseClassNameOriginal=parseClassName;parseClassName=(className)=>experimentalParseClassName({className,parseClassName:parseClassNameOriginal})}return parseClassName},createSortModifiers=(config)=>{let modifierWeights=new Map;return config.orderSensitiveModifiers.forEach((mod,index)=>{modifierWeights.set(mod,1e6+index)}),(modifiers)=>{let result=[],currentSegment=[];for(let i=0;i<modifiers.length;i++){let modifier=modifiers[i],isArbitrary=modifier[0]==="[",isOrderSensitive=modifierWeights.has(modifier);if(isArbitrary||isOrderSensitive){if(currentSegment.length>0)currentSegment.sort(),result.push(...currentSegment),currentSegment=[];result.push(modifier)}else currentSegment.push(modifier)}if(currentSegment.length>0)currentSegment.sort(),result.push(...currentSegment);return result}},createConfigUtils=(config)=>({cache:createLruCache(config.cacheSize),parseClassName:createParseClassName(config),sortModifiers:createSortModifiers(config),...createClassGroupUtils(config)}),SPLIT_CLASSES_REGEX=/\s+/,mergeClassList=(classList,configUtils)=>{let{parseClassName,getClassGroupId,getConflictingClassGroupIds,sortModifiers}=configUtils,classGroupsInConflict=[],classNames=classList.trim().split(SPLIT_CLASSES_REGEX),result="";for(let index=classNames.length-1;index>=0;index-=1){let originalClassName=classNames[index],{isExternal,modifiers,hasImportantModifier,baseClassName,maybePostfixModifierPosition}=parseClassName(originalClassName);if(isExternal){result=originalClassName+(result.length>0?" "+result:result);continue}let hasPostfixModifier=!!maybePostfixModifierPosition,classGroupId=getClassGroupId(hasPostfixModifier?baseClassName.substring(0,maybePostfixModifierPosition):baseClassName);if(!classGroupId){if(!hasPostfixModifier){result=originalClassName+(result.length>0?" "+result:result);continue}if(classGroupId=getClassGroupId(baseClassName),!classGroupId){result=originalClassName+(result.length>0?" "+result:result);continue}hasPostfixModifier=!1}let variantModifier=modifiers.length===0?"":modifiers.length===1?modifiers[0]:sortModifiers(modifiers).join(":"),modifierId=hasImportantModifier?variantModifier+"!":variantModifier,classId=modifierId+classGroupId;if(classGroupsInConflict.indexOf(classId)>-1)continue;classGroupsInConflict.push(classId);let conflictGroups=getConflictingClassGroupIds(classGroupId,hasPostfixModifier);for(let i=0;i<conflictGroups.length;++i){let group=conflictGroups[i];classGroupsInConflict.push(modifierId+group)}result=originalClassName+(result.length>0?" "+result:result)}return result},twJoin=(...classLists)=>{let index=0,argument,resolvedValue,string="";while(index<classLists.length)if(argument=classLists[index++]){if(resolvedValue=toValue(argument))string&&(string+=" "),string+=resolvedValue}return string},toValue=(mix)=>{if(typeof mix==="string")return mix;let resolvedValue,string="";for(let k=0;k<mix.length;k++)if(mix[k]){if(resolvedValue=toValue(mix[k]))string&&(string+=" "),string+=resolvedValue}return string},createTailwindMerge=(createConfigFirst,...createConfigRest)=>{let configUtils,cacheGet,cacheSet,functionToCall,initTailwindMerge=(classList)=>{let config=createConfigRest.reduce((previousConfig,createConfigCurrent)=>createConfigCurrent(previousConfig),createConfigFirst());return configUtils=createConfigUtils(config),cacheGet=configUtils.cache.get,cacheSet=configUtils.cache.set,functionToCall=tailwindMerge,tailwindMerge(classList)},tailwindMerge=(classList)=>{let cachedResult=cacheGet(classList);if(cachedResult)return cachedResult;let result=mergeClassList(classList,configUtils);return cacheSet(classList,result),result};return functionToCall=initTailwindMerge,(...args)=>functionToCall(twJoin(...args))},fallbackThemeArr=[],fromTheme=(key)=>{let themeGetter=(theme)=>theme[key]||fallbackThemeArr;return themeGetter.isThemeGetter=!0,themeGetter},arbitraryValueRegex=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,arbitraryVariableRegex=/^\((?:(\w[\w-]*):)?(.+)\)$/i,fractionRegex=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,tshirtUnitRegex=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,lengthUnitRegex=/\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$/,colorFunctionRegex=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,shadowRegex=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,imageRegex=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,isFraction=(value)=>fractionRegex.test(value),isNumber=(value)=>!!value&&!Number.isNaN(Number(value)),isInteger=(value)=>!!value&&Number.isInteger(Number(value)),isPercent=(value)=>value.endsWith("%")&&isNumber(value.slice(0,-1)),isTshirtSize=(value)=>tshirtUnitRegex.test(value),isAny=()=>!0,isLengthOnly=(value)=>lengthUnitRegex.test(value)&&!colorFunctionRegex.test(value),isNever=()=>!1,isShadow=(value)=>shadowRegex.test(value),isImage=(value)=>imageRegex.test(value),isAnyNonArbitrary=(value)=>!isArbitraryValue(value)&&!isArbitraryVariable(value),isArbitrarySize=(value)=>getIsArbitraryValue(value,isLabelSize,isNever),isArbitraryValue=(value)=>arbitraryValueRegex.test(value),isArbitraryLength=(value)=>getIsArbitraryValue(value,isLabelLength,isLengthOnly),isArbitraryNumber=(value)=>getIsArbitraryValue(value,isLabelNumber,isNumber),isArbitraryWeight=(value)=>getIsArbitraryValue(value,isLabelWeight,isAny),isArbitraryFamilyName=(value)=>getIsArbitraryValue(value,isLabelFamilyName,isNever),isArbitraryPosition=(value)=>getIsArbitraryValue(value,isLabelPosition,isNever),isArbitraryImage=(value)=>getIsArbitraryValue(value,isLabelImage,isImage),isArbitraryShadow=(value)=>getIsArbitraryValue(value,isLabelShadow,isShadow),isArbitraryVariable=(value)=>arbitraryVariableRegex.test(value),isArbitraryVariableLength=(value)=>getIsArbitraryVariable(value,isLabelLength),isArbitraryVariableFamilyName=(value)=>getIsArbitraryVariable(value,isLabelFamilyName),isArbitraryVariablePosition=(value)=>getIsArbitraryVariable(value,isLabelPosition),isArbitraryVariableSize=(value)=>getIsArbitraryVariable(value,isLabelSize),isArbitraryVariableImage=(value)=>getIsArbitraryVariable(value,isLabelImage),isArbitraryVariableShadow=(value)=>getIsArbitraryVariable(value,isLabelShadow,!0),isArbitraryVariableWeight=(value)=>getIsArbitraryVariable(value,isLabelWeight,!0),getIsArbitraryValue=(value,testLabel,testValue)=>{let result=arbitraryValueRegex.exec(value);if(result){if(result[1])return testLabel(result[1]);return testValue(result[2])}return!1},getIsArbitraryVariable=(value,testLabel,shouldMatchNoLabel=!1)=>{let result=arbitraryVariableRegex.exec(value);if(result){if(result[1])return testLabel(result[1]);return shouldMatchNoLabel}return!1},isLabelPosition=(label)=>label==="position"||label==="percentage",isLabelImage=(label)=>label==="image"||label==="url",isLabelSize=(label)=>label==="length"||label==="size"||label==="bg-size",isLabelLength=(label)=>label==="length",isLabelNumber=(label)=>label==="number",isLabelFamilyName=(label)=>label==="family-name",isLabelWeight=(label)=>label==="number"||label==="weight",isLabelShadow=(label)=>label==="shadow";var getDefaultConfig=()=>{let themeColor=fromTheme("color"),themeFont=fromTheme("font"),themeText=fromTheme("text"),themeFontWeight=fromTheme("font-weight"),themeTracking=fromTheme("tracking"),themeLeading=fromTheme("leading"),themeBreakpoint=fromTheme("breakpoint"),themeContainer=fromTheme("container"),themeSpacing=fromTheme("spacing"),themeRadius=fromTheme("radius"),themeShadow=fromTheme("shadow"),themeInsetShadow=fromTheme("inset-shadow"),themeTextShadow=fromTheme("text-shadow"),themeDropShadow=fromTheme("drop-shadow"),themeBlur=fromTheme("blur"),themePerspective=fromTheme("perspective"),themeAspect=fromTheme("aspect"),themeEase=fromTheme("ease"),themeAnimate=fromTheme("animate"),scaleBreak=()=>["auto","avoid","all","avoid-page","page","left","right","column"],scalePosition=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],scalePositionWithArbitrary=()=>[...scalePosition(),isArbitraryVariable,isArbitraryValue],scaleOverflow=()=>["auto","hidden","clip","visible","scroll"],scaleOverscroll=()=>["auto","contain","none"],scaleUnambiguousSpacing=()=>[isArbitraryVariable,isArbitraryValue,themeSpacing],scaleInset=()=>[isFraction,"full","auto",...scaleUnambiguousSpacing()],scaleGridTemplateColsRows=()=>[isInteger,"none","subgrid",isArbitraryVariable,isArbitraryValue],scaleGridColRowStartAndEnd=()=>["auto",{span:["full",isInteger,isArbitraryVariable,isArbitraryValue]},isInteger,isArbitraryVariable,isArbitraryValue],scaleGridColRowStartOrEnd=()=>[isInteger,"auto",isArbitraryVariable,isArbitraryValue],scaleGridAutoColsRows=()=>["auto","min","max","fr",isArbitraryVariable,isArbitraryValue],scaleAlignPrimaryAxis=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],scaleAlignSecondaryAxis=()=>["start","end","center","stretch","center-safe","end-safe"],scaleMargin=()=>["auto",...scaleUnambiguousSpacing()],scaleSizing=()=>[isFraction,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...scaleUnambiguousSpacing()],scaleSizingInline=()=>[isFraction,"screen","full","dvw","lvw","svw","min","max","fit",...scaleUnambiguousSpacing()],scaleSizingBlock=()=>[isFraction,"screen","full","lh","dvh","lvh","svh","min","max","fit",...scaleUnambiguousSpacing()],scaleColor=()=>[themeColor,isArbitraryVariable,isArbitraryValue],scaleBgPosition=()=>[...scalePosition(),isArbitraryVariablePosition,isArbitraryPosition,{position:[isArbitraryVariable,isArbitraryValue]}],scaleBgRepeat=()=>["no-repeat",{repeat:["","x","y","space","round"]}],scaleBgSize=()=>["auto","cover","contain",isArbitraryVariableSize,isArbitrarySize,{size:[isArbitraryVariable,isArbitraryValue]}],scaleGradientStopPosition=()=>[isPercent,isArbitraryVariableLength,isArbitraryLength],scaleRadius=()=>["","none","full",themeRadius,isArbitraryVariable,isArbitraryValue],scaleBorderWidth=()=>["",isNumber,isArbitraryVariableLength,isArbitraryLength],scaleLineStyle=()=>["solid","dashed","dotted","double"],scaleBlendMode=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],scaleMaskImagePosition=()=>[isNumber,isPercent,isArbitraryVariablePosition,isArbitraryPosition],scaleBlur=()=>["","none",themeBlur,isArbitraryVariable,isArbitraryValue],scaleRotate=()=>["none",isNumber,isArbitraryVariable,isArbitraryValue],scaleScale=()=>["none",isNumber,isArbitraryVariable,isArbitraryValue],scaleSkew=()=>[isNumber,isArbitraryVariable,isArbitraryValue],scaleTranslate=()=>[isFraction,"full",...scaleUnambiguousSpacing()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[isTshirtSize],breakpoint:[isTshirtSize],color:[isAny],container:[isTshirtSize],"drop-shadow":[isTshirtSize],ease:["in","out","in-out"],font:[isAnyNonArbitrary],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[isTshirtSize],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[isTshirtSize],shadow:[isTshirtSize],spacing:["px",isNumber],text:[isTshirtSize],"text-shadow":[isTshirtSize],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",isFraction,isArbitraryValue,isArbitraryVariable,themeAspect]}],container:["container"],columns:[{columns:[isNumber,isArbitraryValue,isArbitraryVariable,themeContainer]}],"break-after":[{"break-after":scaleBreak()}],"break-before":[{"break-before":scaleBreak()}],"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:scalePositionWithArbitrary()}],overflow:[{overflow:scaleOverflow()}],"overflow-x":[{"overflow-x":scaleOverflow()}],"overflow-y":[{"overflow-y":scaleOverflow()}],overscroll:[{overscroll:scaleOverscroll()}],"overscroll-x":[{"overscroll-x":scaleOverscroll()}],"overscroll-y":[{"overscroll-y":scaleOverscroll()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:scaleInset()}],"inset-x":[{"inset-x":scaleInset()}],"inset-y":[{"inset-y":scaleInset()}],start:[{"inset-s":scaleInset(),start:scaleInset()}],end:[{"inset-e":scaleInset(),end:scaleInset()}],"inset-bs":[{"inset-bs":scaleInset()}],"inset-be":[{"inset-be":scaleInset()}],top:[{top:scaleInset()}],right:[{right:scaleInset()}],bottom:[{bottom:scaleInset()}],left:[{left:scaleInset()}],visibility:["visible","invisible","collapse"],z:[{z:[isInteger,"auto",isArbitraryVariable,isArbitraryValue]}],basis:[{basis:[isFraction,"full","auto",themeContainer,...scaleUnambiguousSpacing()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[isNumber,isFraction,"auto","initial","none",isArbitraryValue]}],grow:[{grow:["",isNumber,isArbitraryVariable,isArbitraryValue]}],shrink:[{shrink:["",isNumber,isArbitraryVariable,isArbitraryValue]}],order:[{order:[isInteger,"first","last","none",isArbitraryVariable,isArbitraryValue]}],"grid-cols":[{"grid-cols":scaleGridTemplateColsRows()}],"col-start-end":[{col:scaleGridColRowStartAndEnd()}],"col-start":[{"col-start":scaleGridColRowStartOrEnd()}],"col-end":[{"col-end":scaleGridColRowStartOrEnd()}],"grid-rows":[{"grid-rows":scaleGridTemplateColsRows()}],"row-start-end":[{row:scaleGridColRowStartAndEnd()}],"row-start":[{"row-start":scaleGridColRowStartOrEnd()}],"row-end":[{"row-end":scaleGridColRowStartOrEnd()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":scaleGridAutoColsRows()}],"auto-rows":[{"auto-rows":scaleGridAutoColsRows()}],gap:[{gap:scaleUnambiguousSpacing()}],"gap-x":[{"gap-x":scaleUnambiguousSpacing()}],"gap-y":[{"gap-y":scaleUnambiguousSpacing()}],"justify-content":[{justify:[...scaleAlignPrimaryAxis(),"normal"]}],"justify-items":[{"justify-items":[...scaleAlignSecondaryAxis(),"normal"]}],"justify-self":[{"justify-self":["auto",...scaleAlignSecondaryAxis()]}],"align-content":[{content:["normal",...scaleAlignPrimaryAxis()]}],"align-items":[{items:[...scaleAlignSecondaryAxis(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...scaleAlignSecondaryAxis(),{baseline:["","last"]}]}],"place-content":[{"place-content":scaleAlignPrimaryAxis()}],"place-items":[{"place-items":[...scaleAlignSecondaryAxis(),"baseline"]}],"place-self":[{"place-self":["auto",...scaleAlignSecondaryAxis()]}],p:[{p:scaleUnambiguousSpacing()}],px:[{px:scaleUnambiguousSpacing()}],py:[{py:scaleUnambiguousSpacing()}],ps:[{ps:scaleUnambiguousSpacing()}],pe:[{pe:scaleUnambiguousSpacing()}],pbs:[{pbs:scaleUnambiguousSpacing()}],pbe:[{pbe:scaleUnambiguousSpacing()}],pt:[{pt:scaleUnambiguousSpacing()}],pr:[{pr:scaleUnambiguousSpacing()}],pb:[{pb:scaleUnambiguousSpacing()}],pl:[{pl:scaleUnambiguousSpacing()}],m:[{m:scaleMargin()}],mx:[{mx:scaleMargin()}],my:[{my:scaleMargin()}],ms:[{ms:scaleMargin()}],me:[{me:scaleMargin()}],mbs:[{mbs:scaleMargin()}],mbe:[{mbe:scaleMargin()}],mt:[{mt:scaleMargin()}],mr:[{mr:scaleMargin()}],mb:[{mb:scaleMargin()}],ml:[{ml:scaleMargin()}],"space-x":[{"space-x":scaleUnambiguousSpacing()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":scaleUnambiguousSpacing()}],"space-y-reverse":["space-y-reverse"],size:[{size:scaleSizing()}],"inline-size":[{inline:["auto",...scaleSizingInline()]}],"min-inline-size":[{"min-inline":["auto",...scaleSizingInline()]}],"max-inline-size":[{"max-inline":["none",...scaleSizingInline()]}],"block-size":[{block:["auto",...scaleSizingBlock()]}],"min-block-size":[{"min-block":["auto",...scaleSizingBlock()]}],"max-block-size":[{"max-block":["none",...scaleSizingBlock()]}],w:[{w:[themeContainer,"screen",...scaleSizing()]}],"min-w":[{"min-w":[themeContainer,"screen","none",...scaleSizing()]}],"max-w":[{"max-w":[themeContainer,"screen","none","prose",{screen:[themeBreakpoint]},...scaleSizing()]}],h:[{h:["screen","lh",...scaleSizing()]}],"min-h":[{"min-h":["screen","lh","none",...scaleSizing()]}],"max-h":[{"max-h":["screen","lh",...scaleSizing()]}],"font-size":[{text:["base",themeText,isArbitraryVariableLength,isArbitraryLength]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[themeFontWeight,isArbitraryVariableWeight,isArbitraryWeight]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",isPercent,isArbitraryValue]}],"font-family":[{font:[isArbitraryVariableFamilyName,isArbitraryFamilyName,themeFont]}],"font-features":[{"font-features":[isArbitraryValue]}],"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:[themeTracking,isArbitraryVariable,isArbitraryValue]}],"line-clamp":[{"line-clamp":[isNumber,"none",isArbitraryVariable,isArbitraryNumber]}],leading:[{leading:[themeLeading,...scaleUnambiguousSpacing()]}],"list-image":[{"list-image":["none",isArbitraryVariable,isArbitraryValue]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",isArbitraryVariable,isArbitraryValue]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:scaleColor()}],"text-color":[{text:scaleColor()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...scaleLineStyle(),"wavy"]}],"text-decoration-thickness":[{decoration:[isNumber,"from-font","auto",isArbitraryVariable,isArbitraryLength]}],"text-decoration-color":[{decoration:scaleColor()}],"underline-offset":[{"underline-offset":[isNumber,"auto",isArbitraryVariable,isArbitraryValue]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:scaleUnambiguousSpacing()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",isArbitraryVariable,isArbitraryValue]}],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",isArbitraryVariable,isArbitraryValue]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:scaleBgPosition()}],"bg-repeat":[{bg:scaleBgRepeat()}],"bg-size":[{bg:scaleBgSize()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},isInteger,isArbitraryVariable,isArbitraryValue],radial:["",isArbitraryVariable,isArbitraryValue],conic:[isInteger,isArbitraryVariable,isArbitraryValue]},isArbitraryVariableImage,isArbitraryImage]}],"bg-color":[{bg:scaleColor()}],"gradient-from-pos":[{from:scaleGradientStopPosition()}],"gradient-via-pos":[{via:scaleGradientStopPosition()}],"gradient-to-pos":[{to:scaleGradientStopPosition()}],"gradient-from":[{from:scaleColor()}],"gradient-via":[{via:scaleColor()}],"gradient-to":[{to:scaleColor()}],rounded:[{rounded:scaleRadius()}],"rounded-s":[{"rounded-s":scaleRadius()}],"rounded-e":[{"rounded-e":scaleRadius()}],"rounded-t":[{"rounded-t":scaleRadius()}],"rounded-r":[{"rounded-r":scaleRadius()}],"rounded-b":[{"rounded-b":scaleRadius()}],"rounded-l":[{"rounded-l":scaleRadius()}],"rounded-ss":[{"rounded-ss":scaleRadius()}],"rounded-se":[{"rounded-se":scaleRadius()}],"rounded-ee":[{"rounded-ee":scaleRadius()}],"rounded-es":[{"rounded-es":scaleRadius()}],"rounded-tl":[{"rounded-tl":scaleRadius()}],"rounded-tr":[{"rounded-tr":scaleRadius()}],"rounded-br":[{"rounded-br":scaleRadius()}],"rounded-bl":[{"rounded-bl":scaleRadius()}],"border-w":[{border:scaleBorderWidth()}],"border-w-x":[{"border-x":scaleBorderWidth()}],"border-w-y":[{"border-y":scaleBorderWidth()}],"border-w-s":[{"border-s":scaleBorderWidth()}],"border-w-e":[{"border-e":scaleBorderWidth()}],"border-w-bs":[{"border-bs":scaleBorderWidth()}],"border-w-be":[{"border-be":scaleBorderWidth()}],"border-w-t":[{"border-t":scaleBorderWidth()}],"border-w-r":[{"border-r":scaleBorderWidth()}],"border-w-b":[{"border-b":scaleBorderWidth()}],"border-w-l":[{"border-l":scaleBorderWidth()}],"divide-x":[{"divide-x":scaleBorderWidth()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":scaleBorderWidth()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...scaleLineStyle(),"hidden","none"]}],"divide-style":[{divide:[...scaleLineStyle(),"hidden","none"]}],"border-color":[{border:scaleColor()}],"border-color-x":[{"border-x":scaleColor()}],"border-color-y":[{"border-y":scaleColor()}],"border-color-s":[{"border-s":scaleColor()}],"border-color-e":[{"border-e":scaleColor()}],"border-color-bs":[{"border-bs":scaleColor()}],"border-color-be":[{"border-be":scaleColor()}],"border-color-t":[{"border-t":scaleColor()}],"border-color-r":[{"border-r":scaleColor()}],"border-color-b":[{"border-b":scaleColor()}],"border-color-l":[{"border-l":scaleColor()}],"divide-color":[{divide:scaleColor()}],"outline-style":[{outline:[...scaleLineStyle(),"none","hidden"]}],"outline-offset":[{"outline-offset":[isNumber,isArbitraryVariable,isArbitraryValue]}],"outline-w":[{outline:["",isNumber,isArbitraryVariableLength,isArbitraryLength]}],"outline-color":[{outline:scaleColor()}],shadow:[{shadow:["","none",themeShadow,isArbitraryVariableShadow,isArbitraryShadow]}],"shadow-color":[{shadow:scaleColor()}],"inset-shadow":[{"inset-shadow":["none",themeInsetShadow,isArbitraryVariableShadow,isArbitraryShadow]}],"inset-shadow-color":[{"inset-shadow":scaleColor()}],"ring-w":[{ring:scaleBorderWidth()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:scaleColor()}],"ring-offset-w":[{"ring-offset":[isNumber,isArbitraryLength]}],"ring-offset-color":[{"ring-offset":scaleColor()}],"inset-ring-w":[{"inset-ring":scaleBorderWidth()}],"inset-ring-color":[{"inset-ring":scaleColor()}],"text-shadow":[{"text-shadow":["none",themeTextShadow,isArbitraryVariableShadow,isArbitraryShadow]}],"text-shadow-color":[{"text-shadow":scaleColor()}],opacity:[{opacity:[isNumber,isArbitraryVariable,isArbitraryValue]}],"mix-blend":[{"mix-blend":[...scaleBlendMode(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":scaleBlendMode()}],"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":[isNumber]}],"mask-image-linear-from-pos":[{"mask-linear-from":scaleMaskImagePosition()}],"mask-image-linear-to-pos":[{"mask-linear-to":scaleMaskImagePosition()}],"mask-image-linear-from-color":[{"mask-linear-from":scaleColor()}],"mask-image-linear-to-color":[{"mask-linear-to":scaleColor()}],"mask-image-t-from-pos":[{"mask-t-from":scaleMaskImagePosition()}],"mask-image-t-to-pos":[{"mask-t-to":scaleMaskImagePosition()}],"mask-image-t-from-color":[{"mask-t-from":scaleColor()}],"mask-image-t-to-color":[{"mask-t-to":scaleColor()}],"mask-image-r-from-pos":[{"mask-r-from":scaleMaskImagePosition()}],"mask-image-r-to-pos":[{"mask-r-to":scaleMaskImagePosition()}],"mask-image-r-from-color":[{"mask-r-from":scaleColor()}],"mask-image-r-to-color":[{"mask-r-to":scaleColor()}],"mask-image-b-from-pos":[{"mask-b-from":scaleMaskImagePosition()}],"mask-image-b-to-pos":[{"mask-b-to":scaleMaskImagePosition()}],"mask-image-b-from-color":[{"mask-b-from":scaleColor()}],"mask-image-b-to-color":[{"mask-b-to":scaleColor()}],"mask-image-l-from-pos":[{"mask-l-from":scaleMaskImagePosition()}],"mask-image-l-to-pos":[{"mask-l-to":scaleMaskImagePosition()}],"mask-image-l-from-color":[{"mask-l-from":scaleColor()}],"mask-image-l-to-color":[{"mask-l-to":scaleColor()}],"mask-image-x-from-pos":[{"mask-x-from":scaleMaskImagePosition()}],"mask-image-x-to-pos":[{"mask-x-to":scaleMaskImagePosition()}],"mask-image-x-from-color":[{"mask-x-from":scaleColor()}],"mask-image-x-to-color":[{"mask-x-to":scaleColor()}],"mask-image-y-from-pos":[{"mask-y-from":scaleMaskImagePosition()}],"mask-image-y-to-pos":[{"mask-y-to":scaleMaskImagePosition()}],"mask-image-y-from-color":[{"mask-y-from":scaleColor()}],"mask-image-y-to-color":[{"mask-y-to":scaleColor()}],"mask-image-radial":[{"mask-radial":[isArbitraryVariable,isArbitraryValue]}],"mask-image-radial-from-pos":[{"mask-radial-from":scaleMaskImagePosition()}],"mask-image-radial-to-pos":[{"mask-radial-to":scaleMaskImagePosition()}],"mask-image-radial-from-color":[{"mask-radial-from":scaleColor()}],"mask-image-radial-to-color":[{"mask-radial-to":scaleColor()}],"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":scalePosition()}],"mask-image-conic-pos":[{"mask-conic":[isNumber]}],"mask-image-conic-from-pos":[{"mask-conic-from":scaleMaskImagePosition()}],"mask-image-conic-to-pos":[{"mask-conic-to":scaleMaskImagePosition()}],"mask-image-conic-from-color":[{"mask-conic-from":scaleColor()}],"mask-image-conic-to-color":[{"mask-conic-to":scaleColor()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:scaleBgPosition()}],"mask-repeat":[{mask:scaleBgRepeat()}],"mask-size":[{mask:scaleBgSize()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",isArbitraryVariable,isArbitraryValue]}],filter:[{filter:["","none",isArbitraryVariable,isArbitraryValue]}],blur:[{blur:scaleBlur()}],brightness:[{brightness:[isNumber,isArbitraryVariable,isArbitraryValue]}],contrast:[{contrast:[isNumber,isArbitraryVariable,isArbitraryValue]}],"drop-shadow":[{"drop-shadow":["","none",themeDropShadow,isArbitraryVariableShadow,isArbitraryShadow]}],"drop-shadow-color":[{"drop-shadow":scaleColor()}],grayscale:[{grayscale:["",isNumber,isArbitraryVariable,isArbitraryValue]}],"hue-rotate":[{"hue-rotate":[isNumber,isArbitraryVariable,isArbitraryValue]}],invert:[{invert:["",isNumber,isArbitraryVariable,isArbitraryValue]}],saturate:[{saturate:[isNumber,isArbitraryVariable,isArbitraryValue]}],sepia:[{sepia:["",isNumber,isArbitraryVariable,isArbitraryValue]}],"backdrop-filter":[{"backdrop-filter":["","none",isArbitraryVariable,isArbitraryValue]}],"backdrop-blur":[{"backdrop-blur":scaleBlur()}],"backdrop-brightness":[{"backdrop-brightness":[isNumber,isArbitraryVariable,isArbitraryValue]}],"backdrop-contrast":[{"backdrop-contrast":[isNumber,isArbitraryVariable,isArbitraryValue]}],"backdrop-grayscale":[{"backdrop-grayscale":["",isNumber,isArbitraryVariable,isArbitraryValue]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[isNumber,isArbitraryVariable,isArbitraryValue]}],"backdrop-invert":[{"backdrop-invert":["",isNumber,isArbitraryVariable,isArbitraryValue]}],"backdrop-opacity":[{"backdrop-opacity":[isNumber,isArbitraryVariable,isArbitraryValue]}],"backdrop-saturate":[{"backdrop-saturate":[isNumber,isArbitraryVariable,isArbitraryValue]}],"backdrop-sepia":[{"backdrop-sepia":["",isNumber,isArbitraryVariable,isArbitraryValue]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":scaleUnambiguousSpacing()}],"border-spacing-x":[{"border-spacing-x":scaleUnambiguousSpacing()}],"border-spacing-y":[{"border-spacing-y":scaleUnambiguousSpacing()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",isArbitraryVariable,isArbitraryValue]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[isNumber,"initial",isArbitraryVariable,isArbitraryValue]}],ease:[{ease:["linear","initial",themeEase,isArbitraryVariable,isArbitraryValue]}],delay:[{delay:[isNumber,isArbitraryVariable,isArbitraryValue]}],animate:[{animate:["none",themeAnimate,isArbitraryVariable,isArbitraryValue]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[themePerspective,isArbitraryVariable,isArbitraryValue]}],"perspective-origin":[{"perspective-origin":scalePositionWithArbitrary()}],rotate:[{rotate:scaleRotate()}],"rotate-x":[{"rotate-x":scaleRotate()}],"rotate-y":[{"rotate-y":scaleRotate()}],"rotate-z":[{"rotate-z":scaleRotate()}],scale:[{scale:scaleScale()}],"scale-x":[{"scale-x":scaleScale()}],"scale-y":[{"scale-y":scaleScale()}],"scale-z":[{"scale-z":scaleScale()}],"scale-3d":["scale-3d"],skew:[{skew:scaleSkew()}],"skew-x":[{"skew-x":scaleSkew()}],"skew-y":[{"skew-y":scaleSkew()}],transform:[{transform:[isArbitraryVariable,isArbitraryValue,"","none","gpu","cpu"]}],"transform-origin":[{origin:scalePositionWithArbitrary()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:scaleTranslate()}],"translate-x":[{"translate-x":scaleTranslate()}],"translate-y":[{"translate-y":scaleTranslate()}],"translate-z":[{"translate-z":scaleTranslate()}],"translate-none":["translate-none"],accent:[{accent:scaleColor()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:scaleColor()}],"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",isArbitraryVariable,isArbitraryValue]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":scaleUnambiguousSpacing()}],"scroll-mx":[{"scroll-mx":scaleUnambiguousSpacing()}],"scroll-my":[{"scroll-my":scaleUnambiguousSpacing()}],"scroll-ms":[{"scroll-ms":scaleUnambiguousSpacing()}],"scroll-me":[{"scroll-me":scaleUnambiguousSpacing()}],"scroll-mbs":[{"scroll-mbs":scaleUnambiguousSpacing()}],"scroll-mbe":[{"scroll-mbe":scaleUnambiguousSpacing()}],"scroll-mt":[{"scroll-mt":scaleUnambiguousSpacing()}],"scroll-mr":[{"scroll-mr":scaleUnambiguousSpacing()}],"scroll-mb":[{"scroll-mb":scaleUnambiguousSpacing()}],"scroll-ml":[{"scroll-ml":scaleUnambiguousSpacing()}],"scroll-p":[{"scroll-p":scaleUnambiguousSpacing()}],"scroll-px":[{"scroll-px":scaleUnambiguousSpacing()}],"scroll-py":[{"scroll-py":scaleUnambiguousSpacing()}],"scroll-ps":[{"scroll-ps":scaleUnambiguousSpacing()}],"scroll-pe":[{"scroll-pe":scaleUnambiguousSpacing()}],"scroll-pbs":[{"scroll-pbs":scaleUnambiguousSpacing()}],"scroll-pbe":[{"scroll-pbe":scaleUnambiguousSpacing()}],"scroll-pt":[{"scroll-pt":scaleUnambiguousSpacing()}],"scroll-pr":[{"scroll-pr":scaleUnambiguousSpacing()}],"scroll-pb":[{"scroll-pb":scaleUnambiguousSpacing()}],"scroll-pl":[{"scroll-pl":scaleUnambiguousSpacing()}],"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",isArbitraryVariable,isArbitraryValue]}],fill:[{fill:["none",...scaleColor()]}],"stroke-w":[{stroke:[isNumber,isArbitraryVariableLength,isArbitraryLength,isArbitraryNumber]}],stroke:[{stroke:["none",...scaleColor()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{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":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pbs","pbe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mbs","mbe","mt","mr","mb","ml"],mx:["mr","ml"],my:["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-r","border-w-l"],"border-w-y":["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-r","border-color-l"],"border-color-y":["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-mr","scroll-ml"],"scroll-my":["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-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}};var twMerge=createTailwindMerge(getDefaultConfig);function cn(...inputs){return twMerge(clsx(inputs))}function mergeClassName(base,className){if(typeof className==="function")return(state)=>cn(base,className(state));return cn(base,className)}var focusRing="outline-none focus-visible:outline-2 focus-visible:outline-solid focus-visible:outline-offset-2 focus-visible:outline-bakin-focus-ring";var badgeStyles=cva(["group/badge inline-flex w-fit shrink-0 items-center justify-center whitespace-nowrap","overflow-hidden rounded-bakin-pill border font-bakin-typography-family-ui font-bakin-typography-weight-semibold","transition-[background-color,border-color,color] duration-[var(--bakin-motion-duration-feedback)] ease-bakin-standard",focusRing,"aria-invalid:border-bakin-signal-danger [&>svg]:pointer-events-none [&>svg]:shrink-0"],{variants:{tone:{neutral:"",primary:"",success:"",attention:"",danger:"",info:"",accent:""},variant:{soft:"",solid:"",outline:"bg-transparent",ghost:"border-transparent bg-transparent",link:"border-transparent bg-transparent underline decoration-1 decoration-current/50 underline-offset-2 hover:decoration-current focus-visible:decoration-current"},size:{xs:"h-bakin-4 min-w-bakin-4 gap-0 px-bakin-1 text-[.625rem] leading-none [&>svg]:size-bakin-2",sm:"h-bakin-6 gap-bakin-1 px-bakin-2 text-[length:var(--bakin-typography-size-meta)] [&>svg]:size-bakin-3",md:"h-bakin-8 gap-bakin-2 px-bakin-3 text-[length:var(--bakin-typography-size-body)] [&>svg]:size-bakin-4"}},compoundVariants:[{tone:"neutral",variant:"soft",className:"border-bakin-border-subtle/20 bg-bakin-surface-default text-bakin-text-muted"},{tone:"neutral",variant:"solid",className:"border-bakin-text-muted bg-bakin-text-muted text-bakin-canvas-default"},{tone:"neutral",variant:"outline",className:"border-bakin-border-subtle text-bakin-text-muted"},{tone:"neutral",variant:["ghost","link"],className:"text-bakin-text-muted"},{tone:"primary",variant:"soft",className:"border-bakin-action-primary-background/25 bg-bakin-action-primary-background/15 text-bakin-text-primary"},{tone:"primary",variant:"solid",className:"border-bakin-action-primary-background bg-bakin-action-primary-background text-bakin-action-primary-foreground"},{tone:"primary",variant:"outline",className:"border-bakin-action-primary-background text-bakin-action-primary-background"},{tone:"primary",variant:["ghost","link"],className:"text-bakin-action-primary-background"},{tone:"success",variant:"soft",className:"border-bakin-action-primary-background/25 bg-bakin-action-primary-background/15 text-bakin-text-primary"},{tone:"success",variant:"solid",className:"border-bakin-action-primary-background bg-bakin-action-primary-background text-bakin-action-primary-foreground"},{tone:"success",variant:"outline",className:"border-bakin-action-primary-background text-bakin-action-primary-background"},{tone:"success",variant:["ghost","link"],className:"text-bakin-action-primary-background"},{tone:"attention",variant:"soft",className:"border-bakin-signal-highlight/25 bg-bakin-signal-highlight/15 text-bakin-text-primary"},{tone:"attention",variant:"solid",className:"border-bakin-signal-highlight bg-bakin-signal-highlight text-bakin-canvas-default"},{tone:"attention",variant:"outline",className:"border-bakin-signal-highlight text-bakin-text-primary"},{tone:"attention",variant:["ghost","link"],className:"text-bakin-text-primary"},{tone:"danger",variant:"soft",className:"border-bakin-signal-danger/25 bg-bakin-signal-danger/15 text-bakin-text-primary"},{tone:"info",variant:"soft",className:"border-bakin-signal-info/25 bg-bakin-signal-info/15 text-bakin-text-primary"},{tone:"info",variant:"solid",className:"border-bakin-signal-info bg-bakin-signal-info text-bakin-canvas-default"},{tone:"info",variant:"outline",className:"border-bakin-signal-info text-bakin-text-primary"},{tone:"info",variant:["ghost","link"],className:"text-bakin-text-primary"},{tone:"danger",variant:"solid",className:"border-bakin-signal-danger bg-bakin-signal-danger text-bakin-canvas-default"},{tone:"danger",variant:"outline",className:"border-bakin-signal-danger text-bakin-text-primary"},{tone:"danger",variant:["ghost","link"],className:"text-bakin-text-primary"},{tone:"accent",variant:"soft",className:"border-bakin-signal-accent/25 bg-bakin-signal-accent/15 text-bakin-text-primary"},{tone:"accent",variant:"solid",className:"border-bakin-signal-accent bg-bakin-signal-accent text-bakin-canvas-default"},{tone:"accent",variant:"outline",className:"border-bakin-signal-accent text-bakin-text-primary"},{tone:"accent",variant:["ghost","link"],className:"text-bakin-text-primary"}],defaultVariants:{tone:"neutral",variant:"soft",size:"sm"}});function canonicalBadgeOptions(options){if(options.variant==="default")return{tone:options.tone??"primary",variant:"solid",size:options.size??"sm"};if(options.variant==="secondary")return{tone:options.tone??"neutral",variant:"soft",size:options.size??"sm"};if(options.variant==="destructive")return{tone:options.tone??"danger",variant:"soft",size:options.size??"sm"};return{tone:options.tone??"neutral",variant:options.variant??"soft",size:options.size??"sm"}}function badgeVariants(options={}){let resolved=canonicalBadgeOptions(options);return cn(badgeStyles(resolved),options.className)}function Badge({className,tone,variant,size,render,...props}){let resolved=canonicalBadgeOptions({tone,variant,size}),state={slot:"badge",...resolved};return useRender({defaultTagName:"span",props:mergeProps({className:badgeVariants({...resolved,className})},props),render,state})}import{jsx,jsxs}from"react/jsx-runtime";function StatusBadge({tone="neutral",variant="solid",size="sm",icon:Icon,className,children,...props}){return jsxs(Badge,{tone,variant,size,"data-status-badge":tone,"data-tone":tone,"data-variant":variant,...props,className:cn("max-w-full",className),children:[Icon?jsx("span",{"aria-hidden":"true",className:"inline-flex shrink-0",children:jsx(Icon,{className:"size-bakin-3"})}):null,jsx("span",{className:"truncate",children})]})}var exports_index_parts={};__export(exports_index_parts,{Root:()=>AvatarRoot,Image:()=>AvatarImage,Fallback:()=>AvatarFallback});import*as React6 from"react";import*as React5 from"react";var AvatarRootContext=React5.createContext(void 0);function useAvatarRootContext(){let context=React5.useContext(AvatarRootContext);if(context===void 0)throw Error(formatErrorMessage_default(13));return context}var avatarStateAttributesMapping={imageLoadingStatus:()=>null};import{jsx as _jsx}from"react/jsx-runtime";var AvatarRoot=React6.forwardRef(function(componentProps,forwardedRef){let{className,render,style,...elementProps}=componentProps,[imageLoadingStatus,setImageLoadingStatus]=React6.useState("idle"),state={imageLoadingStatus},contextValue=React6.useMemo(()=>({imageLoadingStatus,setImageLoadingStatus}),[imageLoadingStatus,setImageLoadingStatus]),element=useRenderElement("span",componentProps,{state,ref:forwardedRef,props:elementProps,stateAttributesMapping:avatarStateAttributesMapping});return _jsx(AvatarRootContext.Provider,{value:contextValue,children:element})});import*as React13 from"react";import*as React7 from"react";var useInsertionEffect=React7[`useInsertionEffect${Math.random().toFixed(1)}`.slice(0,-3)],useSafeInsertionEffect=useInsertionEffect&&useInsertionEffect!==React7.useLayoutEffect?useInsertionEffect:(fn)=>fn();function useStableCallback(callback){let stable=useRefWithInit(createStableCallback).current;return stable.next=callback,useSafeInsertionEffect(stable.effect),stable.trampoline}function createStableCallback(){let stable={next:void 0,callback:assertNotCalled,trampoline:(...args)=>stable.callback?.(...args),effect:()=>{stable.callback=stable.next}};return stable}function assertNotCalled(){}import*as React8 from"react";var noop=()=>{},useIsoLayoutEffect=typeof document<"u"?React8.useLayoutEffect:noop;import*as React10 from"react";import*as ReactDOM from"react-dom";import*as React9 from"react";var EMPTY=[];function useOnMount(fn){React9.useEffect(fn,EMPTY)}var EMPTY2=null,LAST_RAF=globalThis.requestAnimationFrame;class Scheduler{callbacks=[];callbacksCount=0;nextId=1;startId=1;isScheduled=!1;tick=(timestamp)=>{this.isScheduled=!1;let currentCallbacks=this.callbacks,currentCallbacksCount=this.callbacksCount;if(this.callbacks=[],this.callbacksCount=0,this.startId=this.nextId,currentCallbacksCount>0)for(let i=0;i<currentCallbacks.length;i+=1)currentCallbacks[i]?.(timestamp)};request(fn){let id=this.nextId;this.nextId+=1,this.callbacks.push(fn),this.callbacksCount+=1;let didRAFChange=!1;if(!this.isScheduled||didRAFChange)requestAnimationFrame(this.tick),this.isScheduled=!0;return id}cancel(id){let index=id-this.startId;if(index<0||index>=this.callbacks.length)return;this.callbacks[index]=null,this.callbacksCount-=1}}var scheduler=new Scheduler;class AnimationFrame{static create(){return new AnimationFrame}static request(fn){return scheduler.request(fn)}static cancel(id){return scheduler.cancel(id)}currentId=EMPTY2;request(fn){this.cancel(),this.currentId=scheduler.request(()=>{this.currentId=EMPTY2,fn()})}cancel=()=>{if(this.currentId!==EMPTY2)scheduler.cancel(this.currentId),this.currentId=EMPTY2};disposeEffect=()=>{return this.cancel}}function useAnimationFrame(){let timeout=useRefWithInit(AnimationFrame.create).current;return useOnMount(timeout.disposeEffect),timeout}function resolveRef(maybeRef){if(maybeRef==null)return maybeRef;return"current"in maybeRef?maybeRef.current:maybeRef}var TransitionStatusDataAttributes=function(TransitionStatusDataAttributes2){return TransitionStatusDataAttributes2.startingStyle="data-starting-style",TransitionStatusDataAttributes2.endingStyle="data-ending-style",TransitionStatusDataAttributes2}({}),STARTING_HOOK={[TransitionStatusDataAttributes.startingStyle]:""},ENDING_HOOK={[TransitionStatusDataAttributes.endingStyle]:""},transitionStatusMapping={transitionStatus(value){if(value==="starting")return STARTING_HOOK;if(value==="ending")return ENDING_HOOK;return null}};function useAnimationsFinished(elementOrRef,waitForStartingStyleRemoved=!1,treatAbortedAsFinished=!0){let frame=useAnimationFrame();return useStableCallback((fnToExecute,signal=null)=>{frame.cancel();let element=resolveRef(elementOrRef);if(element==null)return;let resolvedElement=element,done=()=>{ReactDOM.flushSync(fnToExecute)};if(typeof resolvedElement.getAnimations!=="function"||globalThis.BASE_UI_ANIMATIONS_DISABLED){fnToExecute();return}function exec(){Promise.all(resolvedElement.getAnimations().map((animation)=>animation.finished)).then(()=>{if(!signal?.aborted)done()}).catch(()=>{if(treatAbortedAsFinished){if(!signal?.aborted)done();return}let currentAnimations=resolvedElement.getAnimations();if(!signal?.aborted&&currentAnimations.length>0&&currentAnimations.some((animation)=>animation.pending||animation.playState!=="finished"))exec()})}if(waitForStartingStyleRemoved){let startingStyleAttribute=TransitionStatusDataAttributes.startingStyle;if(!resolvedElement.hasAttribute(startingStyleAttribute)){frame.request(exec);return}let attributeObserver=new MutationObserver(()=>{if(!resolvedElement.hasAttribute(startingStyleAttribute))attributeObserver.disconnect(),exec()});attributeObserver.observe(resolvedElement,{attributes:!0,attributeFilter:[startingStyleAttribute]}),signal?.addEventListener("abort",()=>attributeObserver.disconnect(),{once:!0});return}frame.request(exec)})}function useOpenChangeComplete(parameters){let{enabled=!0,open,ref,onComplete:onCompleteParam}=parameters,onComplete=useStableCallback(onCompleteParam),runOnceAnimationsFinish=useAnimationsFinished(ref,open,!1);React10.useEffect(()=>{if(!enabled)return;let abortController=new AbortController;return runOnceAnimationsFinish(onComplete,abortController.signal),()=>{abortController.abort()}},[enabled,open,onComplete,runOnceAnimationsFinish])}import*as React11 from"react";function useTransitionStatus(open,enableIdleState=!1,deferEndingState=!1){let[transitionStatus,setTransitionStatus]=React11.useState(open&&enableIdleState?"idle":void 0),[mounted,setMounted]=React11.useState(open);if(open&&!mounted)setMounted(!0),setTransitionStatus("starting");if(!open&&mounted&&transitionStatus!=="ending"&&!deferEndingState)setTransitionStatus("ending");if(!open&&!mounted&&transitionStatus==="ending")setTransitionStatus(void 0);return useIsoLayoutEffect(()=>{if(!open&&mounted&&transitionStatus!=="ending"&&deferEndingState){let frame=AnimationFrame.request(()=>{setTransitionStatus("ending")});return()=>{AnimationFrame.cancel(frame)}}return},[open,mounted,transitionStatus,deferEndingState]),useIsoLayoutEffect(()=>{if(!open||enableIdleState)return;let frame=AnimationFrame.request(()=>{setTransitionStatus(void 0)});return()=>{AnimationFrame.cancel(frame)}},[enableIdleState,open]),useIsoLayoutEffect(()=>{if(!open||!enableIdleState)return;if(open&&mounted&&transitionStatus!=="idle")setTransitionStatus("starting");let frame=AnimationFrame.request(()=>{setTransitionStatus("idle")});return()=>{AnimationFrame.cancel(frame)}},[enableIdleState,open,mounted,transitionStatus]),{mounted,setMounted,transitionStatus}}import*as React12 from"react";function useImageLoadingStatus(src,{referrerPolicy,crossOrigin}){let[loadingStatus,setLoadingStatus]=React12.useState("idle");return useIsoLayoutEffect(()=>{if(!src)return setLoadingStatus("error"),NOOP;let isMounted=!0,image=new window.Image,updateStatus=(status)=>()=>{if(!isMounted)return;setLoadingStatus(status)};if(setLoadingStatus("loading"),image.onload=updateStatus("loaded"),image.onerror=updateStatus("error"),referrerPolicy)image.referrerPolicy=referrerPolicy;if(image.crossOrigin=crossOrigin??null,image.src=src,image.complete)setLoadingStatus(image.naturalWidth>0?"loaded":"error");return()=>{isMounted=!1}},[src,crossOrigin,referrerPolicy]),loadingStatus}var stateAttributesMapping={...avatarStateAttributesMapping,...transitionStatusMapping},AvatarImage=React13.forwardRef(function(componentProps,forwardedRef){let{className,render,onLoadingStatusChange:onLoadingStatusChangeProp,referrerPolicy,crossOrigin,style,...elementProps}=componentProps,context=useAvatarRootContext(),imageLoadingStatus=useImageLoadingStatus(componentProps.src,{referrerPolicy,crossOrigin}),isVisible=imageLoadingStatus==="loaded",{mounted,transitionStatus,setMounted}=useTransitionStatus(isVisible),imageRef=React13.useRef(null),handleLoadingStatusChange=useStableCallback((status)=>{onLoadingStatusChangeProp?.(status),context.setImageLoadingStatus(status)});useIsoLayoutEffect(()=>{if(imageLoadingStatus!=="idle")handleLoadingStatusChange(imageLoadingStatus)},[imageLoadingStatus,handleLoadingStatusChange]);let state={imageLoadingStatus,transitionStatus};useOpenChangeComplete({open:isVisible,ref:imageRef,onComplete(){if(!isVisible)setMounted(!1)}});let element=useRenderElement("img",componentProps,{state,ref:[forwardedRef,imageRef],props:elementProps,stateAttributesMapping,enabled:mounted});if(!mounted)return null;return element});import*as React14 from"react";var EMPTY3=0;class Timeout{static create(){return new Timeout}currentId=EMPTY3;start(delay,fn){this.clear(),this.currentId=setTimeout(()=>{this.currentId=EMPTY3,fn()},delay)}isStarted(){return this.currentId!==EMPTY3}clear=()=>{if(this.currentId!==EMPTY3)clearTimeout(this.currentId),this.currentId=EMPTY3};disposeEffect=()=>{return this.clear}}function useTimeout(){let timeout=useRefWithInit(Timeout.create).current;return useOnMount(timeout.disposeEffect),timeout}var AvatarFallback=React14.forwardRef(function(componentProps,forwardedRef){let{className,render,delay,style,...elementProps}=componentProps,{imageLoadingStatus}=useAvatarRootContext(),[delayPassed,setDelayPassed]=React14.useState(delay===void 0),timeout=useTimeout();return React14.useEffect(()=>{if(delay!==void 0)timeout.start(delay,()=>setDelayPassed(!0));return timeout.clear},[timeout,delay]),useRenderElement("span",componentProps,{state:{imageLoadingStatus},ref:forwardedRef,props:elementProps,stateAttributesMapping:avatarStateAttributesMapping,enabled:imageLoadingStatus!=="loaded"&&delayPassed})});import{jsx as jsx2}from"react/jsx-runtime";function canonicalSize(size){return size==="default"||size==null?"md":size}var avatarClasses=["group/avatar relative inline-flex shrink-0 select-none overflow-visible rounded-bakin-pill","bg-bakin-surface-elevated font-bakin-typography-family-ui text-bakin-text-muted","ring-1 ring-inset ring-bakin-border-subtle","data-[size=xs]:size-bakin-4 data-[size=sm]:size-bakin-6 data-[size=md]:size-bakin-8","data-[size=lg]:size-[calc(var(--bakin-layout-space-8)+var(--bakin-layout-space-2))]","data-[size=xl]:size-[calc(var(--bakin-layout-space-8)+var(--bakin-layout-space-4))]"].join(" ");function Avatar({className,size="md",...props}){let resolvedSize=canonicalSize(size);return jsx2(exports_index_parts.Root,{"data-slot":"avatar","data-size":resolvedSize,className:mergeClassName(avatarClasses,className),...props})}function AvatarImage3({className,alt="",...props}){return jsx2(exports_index_parts.Image,{"data-slot":"avatar-image",alt,className:mergeClassName("aspect-square size-full rounded-bakin-pill object-cover",className),...props})}function AvatarFallback3({className,...props}){return jsx2(exports_index_parts.Fallback,{"data-slot":"avatar-fallback",className:mergeClassName(["flex size-full items-center justify-center rounded-bakin-pill bg-bakin-surface-elevated","font-bakin-typography-weight-semibold leading-none text-bakin-text-muted [text-transform:uppercase]","text-[length:var(--bakin-typography-size-meta)] group-data-[size=xs]/avatar:text-[.625rem]","group-data-[size=xl]/avatar:text-[length:var(--bakin-typography-size-body)]"].join(" "),className),...props})}function AvatarBadge({className,...props}){return jsx2("span",{"data-slot":"avatar-badge",className:cn(["absolute bottom-0 right-0 z-10 inline-flex size-bakin-2 items-center justify-center rounded-bakin-pill","bg-bakin-action-primary-background text-bakin-action-primary-foreground ring-2 ring-bakin-canvas-default","group-data-[size=xs]/avatar:size-bakin-1 group-data-[size=lg]/avatar:size-bakin-3 group-data-[size=xl]/avatar:size-bakin-3","[&_svg]:size-bakin-2 group-data-[size=xs]/avatar:[&_svg]:hidden"].join(" "),className),...props})}import{jsx as jsx3}from"react/jsx-runtime";var sizeClasses={sm:"size-bakin-3",md:"size-bakin-4"};function Spinner({className,label,size="md",...props}){return jsx3("svg",{...props,"data-slot":"spinner",role:label?"status":void 0,"aria-label":label,"aria-hidden":label?void 0:!0,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",className:cn("shrink-0 animate-spin motion-reduce:animate-none",sizeClasses[size],className),children:jsx3("path",{d:"M21 12a9 9 0 1 1-6.219-8.56"})})}import*as React20 from"react";import{useCallback as useCallback2,useEffect as useEffect5,useRef as useRef4,useState as useState5}from"react";async function copyToClipboard(text){if(navigator.clipboard?.writeText)try{return await navigator.clipboard.writeText(text),!0}catch{}try{let ta=document.createElement("textarea");ta.value=text,ta.setAttribute("readonly",""),ta.style.position="fixed",ta.style.top="0",ta.style.opacity="0",document.body.appendChild(ta);let selection=document.getSelection(),previousRange=selection&&selection.rangeCount>0?selection.getRangeAt(0):null;ta.focus(),ta.select();let ok=document.execCommand("copy");if(ta.remove(),previousRange&&selection)selection.removeAllRanges(),selection.addRange(previousRange);return ok}catch{return!1}}import*as React19 from"react";import*as React18 from"react";function hasWindow(){return typeof window<"u"}function getNodeName(node){if(isNode(node))return(node.nodeName||"").toLowerCase();return"#document"}function getWindow(node){var _node$ownerDocument;return(node==null||(_node$ownerDocument=node.ownerDocument)==null?void 0:_node$ownerDocument.defaultView)||window}function getDocumentElement(node){var _ref;return(_ref=(isNode(node)?node.ownerDocument:node.document)||window.document)==null?void 0:_ref.documentElement}function isNode(value){if(!hasWindow())return!1;return value instanceof Node||value instanceof getWindow(value).Node}function isElement(value){if(!hasWindow())return!1;return value instanceof Element||value instanceof getWindow(value).Element}function isHTMLElement(value){if(!hasWindow())return!1;return value instanceof HTMLElement||value instanceof getWindow(value).HTMLElement}function isShadowRoot(value){if(!hasWindow()||typeof ShadowRoot>"u")return!1;return value instanceof ShadowRoot||value instanceof getWindow(value).ShadowRoot}function isOverflowElement(element){let{overflow,overflowX,overflowY,display}=getComputedStyle2(element);return/auto|scroll|overlay|hidden|clip/.test(overflow+overflowY+overflowX)&&display!=="inline"&&display!=="contents"}function isTableElement(element){return/^(table|td|th)$/.test(getNodeName(element))}function isTopLayer(element){try{if(element.matches(":popover-open"))return!0}catch(_e){}try{return element.matches(":modal")}catch(_e){return!1}}var willChangeRe=/transform|translate|scale|rotate|perspective|filter/,containRe=/paint|layout|strict|content/,isNotNone=(value)=>!!value&&value!=="none",isWebKitValue;function isContainingBlock(elementOrCss){let css=isElement(elementOrCss)?getComputedStyle2(elementOrCss):elementOrCss;return isNotNone(css.transform)||isNotNone(css.translate)||isNotNone(css.scale)||isNotNone(css.rotate)||isNotNone(css.perspective)||!isWebKit()&&(isNotNone(css.backdropFilter)||isNotNone(css.filter))||willChangeRe.test(css.willChange||"")||containRe.test(css.contain||"")}function getContainingBlock(element){let currentNode=getParentNode(element);while(isHTMLElement(currentNode)&&!isLastTraversableNode(currentNode)){if(isContainingBlock(currentNode))return currentNode;else if(isTopLayer(currentNode))return null;currentNode=getParentNode(currentNode)}return null}function isWebKit(){if(isWebKitValue==null)isWebKitValue=typeof CSS<"u"&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none");return isWebKitValue}function isLastTraversableNode(node){return/^(html|body|#document)$/.test(getNodeName(node))}function getComputedStyle2(element){return getWindow(element).getComputedStyle(element)}function getNodeScroll(element){if(isElement(element))return{scrollLeft:element.scrollLeft,scrollTop:element.scrollTop};return{scrollLeft:element.scrollX,scrollTop:element.scrollY}}function getParentNode(node){if(getNodeName(node)==="html")return node;let result=node.assignedSlot||node.parentNode||isShadowRoot(node)&&node.host||getDocumentElement(node);return isShadowRoot(result)?result.host:result}function getNearestOverflowAncestor(node){let parentNode=getParentNode(node);if(isLastTraversableNode(parentNode))return node.ownerDocument?node.ownerDocument.body:node.body;if(isHTMLElement(parentNode)&&isOverflowElement(parentNode))return parentNode;return getNearestOverflowAncestor(parentNode)}function getOverflowAncestors(node,list,traverseIframes){var _node$ownerDocument2;if(list===void 0)list=[];if(traverseIframes===void 0)traverseIframes=!0;let scrollableAncestor=getNearestOverflowAncestor(node),isBody=scrollableAncestor===((_node$ownerDocument2=node.ownerDocument)==null?void 0:_node$ownerDocument2.body),win=getWindow(scrollableAncestor);if(isBody){let frameElement=getFrameElement(win);return list.concat(win,win.visualViewport||[],isOverflowElement(scrollableAncestor)?scrollableAncestor:[],frameElement&&traverseIframes?getOverflowAncestors(frameElement):[])}else return list.concat(scrollableAncestor,getOverflowAncestors(scrollableAncestor,[],traverseIframes))}function getFrameElement(win){return win.parent&&Object.getPrototypeOf(win.parent)?win.frameElement:null}import*as React15 from"react";var SafeReact={...React15};import*as React16 from"react";var CompositeRootContext=React16.createContext(void 0);function useCompositeRootContext(optional=!1){let context=React16.useContext(CompositeRootContext);if(context===void 0&&!optional)throw Error(formatErrorMessage_default(16));return context}import*as React17 from"react";function useFocusableWhenDisabled(parameters){let{focusableWhenDisabled,disabled,composite=!1,tabIndex:tabIndexProp=0,isNativeButton}=parameters,isFocusableComposite=composite&&focusableWhenDisabled!==!1,isNonFocusableComposite=composite&&focusableWhenDisabled===!1;return{props:React17.useMemo(()=>{let additionalProps={onKeyDown(event){if(disabled&&focusableWhenDisabled&&event.key!=="Tab")event.preventDefault()}};if(!composite){if(additionalProps.tabIndex=tabIndexProp,!isNativeButton&&disabled)additionalProps.tabIndex=focusableWhenDisabled?tabIndexProp:-1}if(isNativeButton&&(focusableWhenDisabled||isFocusableComposite)||!isNativeButton&&disabled)additionalProps["aria-disabled"]=disabled;if(isNativeButton&&(!focusableWhenDisabled||isNonFocusableComposite))additionalProps.disabled=disabled;return additionalProps},[composite,disabled,focusableWhenDisabled,isFocusableComposite,isNonFocusableComposite,isNativeButton,tabIndexProp])}}function useButton(parameters={}){let{disabled=!1,focusableWhenDisabled,tabIndex=0,native:isNativeButton=!0,composite:compositeProp}=parameters,elementRef=React18.useRef(null),compositeRootContext=useCompositeRootContext(!0),isCompositeItem=compositeProp??compositeRootContext!==void 0,{props:focusableWhenDisabledProps}=useFocusableWhenDisabled({focusableWhenDisabled,disabled,composite:isCompositeItem,tabIndex,isNativeButton}),updateDisabled=React18.useCallback(()=>{let element=elementRef.current;if(!isButtonElement(element))return;if(isCompositeItem&&disabled&&focusableWhenDisabledProps.disabled===void 0&&element.disabled)element.disabled=!1},[disabled,focusableWhenDisabledProps.disabled,isCompositeItem]);useIsoLayoutEffect(updateDisabled,[updateDisabled]);let getButtonProps=React18.useCallback((externalProps={})=>{let{onClick:externalOnClick,onMouseDown:externalOnMouseDown,onKeyUp:externalOnKeyUp,onKeyDown:externalOnKeyDown,onPointerDown:externalOnPointerDown,...otherExternalProps}=externalProps;return mergeProps({type:isNativeButton?"button":void 0,onClick(event){if(disabled){event.preventDefault();return}externalOnClick?.(event)},onMouseDown(event){if(!disabled)externalOnMouseDown?.(event)},onKeyDown(event){if(disabled)return;if(makeEventPreventable(event),externalOnKeyDown?.(event),event.baseUIHandlerPrevented)return;let isCurrentTarget=event.target===event.currentTarget,currentTarget=event.currentTarget,isButton=isButtonElement(currentTarget),isLink=!isNativeButton&&isValidLinkElement(currentTarget),shouldClick=isCurrentTarget&&(isNativeButton?isButton:!isLink),isEnterKey=event.key==="Enter",isSpaceKey=event.key===" ",role=currentTarget.getAttribute("role"),isTextNavigationRole=role?.startsWith("menuitem")||role==="option"||role==="gridcell";if(isCurrentTarget&&isCompositeItem&&isSpaceKey){if(event.defaultPrevented&&isTextNavigationRole)return;if(event.preventDefault(),isLink||isNativeButton&&isButton)currentTarget.click(),event.preventBaseUIHandler();else if(shouldClick)externalOnClick?.(event),event.preventBaseUIHandler();return}if(shouldClick){if(!isNativeButton&&(isSpaceKey||isEnterKey))event.preventDefault();if(!isNativeButton&&isEnterKey)externalOnClick?.(event)}},onKeyUp(event){if(disabled)return;if(makeEventPreventable(event),externalOnKeyUp?.(event),event.target===event.currentTarget&&isNativeButton&&isCompositeItem&&isButtonElement(event.currentTarget)&&event.key===" "){event.preventDefault();return}if(event.baseUIHandlerPrevented)return;if(event.target===event.currentTarget&&!isNativeButton&&!isCompositeItem&&event.key===" ")externalOnClick?.(event)},onPointerDown(event){if(disabled){event.preventDefault();return}externalOnPointerDown?.(event)}},!isNativeButton?{role:"button"}:void 0,focusableWhenDisabledProps,otherExternalProps)},[disabled,focusableWhenDisabledProps,isCompositeItem,isNativeButton]),buttonRef=useStableCallback((element)=>{elementRef.current=element,updateDisabled()});return{getButtonProps,buttonRef}}function isButtonElement(elem){return isHTMLElement(elem)&&elem.tagName==="BUTTON"}function isValidLinkElement(elem){return Boolean(elem?.tagName==="A"&&elem?.href)}var Button=React19.forwardRef(function(componentProps,forwardedRef){let{render,className,disabled=!1,focusableWhenDisabled=!1,nativeButton=!0,style,...elementProps}=componentProps,{getButtonProps,buttonRef}=useButton({disabled,focusableWhenDisabled,native:nativeButton});return useRenderElement("button",componentProps,{state:{disabled},ref:[forwardedRef,buttonRef],props:[elementProps,getButtonProps]})});import{jsx as jsx4}from"react/jsx-runtime";var buttonStyles=cva(["group/button inline-flex shrink-0 select-none items-center justify-center whitespace-nowrap","rounded-bakin-control border font-bakin-typography-family-ui font-bakin-typography-weight-semibold","text-[length:var(--bakin-typography-size-body)] leading-none","transition-[background-color,border-color,color,filter,transform] duration-[var(--bakin-motion-duration-feedback)] ease-bakin-standard",focusRing,"active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-[var(--bakin-state-opacity-disabled)]","aria-invalid:border-bakin-signal-danger",'[&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*="size-"])]:size-bakin-4',"data-[busy]:cursor-progress data-[busy]:[&>svg:first-child]:animate-spin motion-reduce:data-[busy]:[&>svg:first-child]:animate-none"],{variants:{variant:{primary:"border-bakin-action-primary-background bg-bakin-action-primary-background text-bakin-action-primary-foreground hover:brightness-110",secondary:"border-bakin-border-subtle/60 bg-bakin-surface-default text-bakin-text-primary hover:border-bakin-border-subtle hover:bg-bakin-border-subtle/20",outline:"border-bakin-border-subtle bg-transparent text-bakin-text-primary hover:bg-bakin-surface-default",ghost:"border-transparent bg-transparent text-bakin-text-primary hover:bg-bakin-surface-default",danger:"border-bakin-signal-danger bg-bakin-signal-danger/15 text-bakin-text-primary hover:bg-bakin-signal-danger/25",warning:"border-bakin-signal-highlight bg-bakin-signal-highlight/15 text-bakin-text-primary hover:bg-bakin-signal-highlight/25",info:"border-bakin-border-subtle bg-bakin-surface-default text-bakin-text-muted hover:text-bakin-text-primary",accent:"border-bakin-signal-accent bg-bakin-signal-accent/15 text-bakin-text-primary hover:bg-bakin-signal-accent/25",link:"border-transparent bg-transparent px-bakin-1 text-bakin-signal-accent underline-offset-4 hover:underline"},size:{xs:'h-bakin-6 gap-bakin-1 px-bakin-2 text-[length:var(--bakin-typography-size-meta)] [&_svg:not([class*="size-"])]:size-bakin-3',sm:"h-bakin-8 gap-bakin-2 px-bakin-3",md:"h-[var(--bakin-layout-size-control)] gap-bakin-2 px-bakin-4",lg:"h-[calc(var(--bakin-layout-size-control)+var(--bakin-layout-space-1))] gap-bakin-2 px-bakin-4",inline:'h-auto justify-start gap-bakin-1 whitespace-normal p-0 text-left text-[length:inherit] leading-[inherit] [&_svg:not([class*="size-"])]:size-[1em]',"icon-xs":'size-bakin-6 min-h-bakin-6 min-w-bakin-6 [&_svg:not([class*="size-"])]:size-bakin-3',"icon-sm":"size-bakin-8 min-h-bakin-8 min-w-bakin-8","icon-md":"size-[var(--bakin-layout-size-control)] min-h-[var(--bakin-layout-size-control)] min-w-[var(--bakin-layout-size-control)]","icon-lg":"size-[calc(var(--bakin-layout-size-control)+var(--bakin-layout-space-1))] min-h-[calc(var(--bakin-layout-size-control)+var(--bakin-layout-space-1))] min-w-[calc(var(--bakin-layout-size-control)+var(--bakin-layout-space-1))]"}},defaultVariants:{variant:"primary",size:"md"}});function canonicalVariant(variant){if(variant==="default"||variant==null)return"primary";if(variant==="destructive")return"danger";return variant}function canonicalSize2(size){if(size==="default"||size==null)return"md";if(size==="icon")return"icon-md";return size}function buttonVariants(options={}){return cn(buttonStyles({variant:canonicalVariant(options.variant),size:canonicalSize2(options.size)}),options.className)}function Button3({className,variant="primary",size="md",busy=!1,disabled,focusableWhenDisabled,...props}){let resolvedVariant=canonicalVariant(variant),resolvedSize=canonicalSize2(size),resolvedClassName=typeof className==="function"?(state)=>buttonVariants({variant:resolvedVariant,size:resolvedSize,className:className(state)}):buttonVariants({variant:resolvedVariant,size:resolvedSize,className});return jsx4(Button,{"data-slot":"button","data-variant":resolvedVariant,"data-size":resolvedSize,"data-busy":busy?"":void 0,"aria-busy":busy||void 0,disabled:disabled||busy,focusableWhenDisabled:focusableWhenDisabled??(busy||void 0),className:resolvedClassName,...props})}import{jsx as jsx5,jsxs as jsxs2}from"react/jsx-runtime";function CopyIcon(){return jsxs2("svg",{"aria-hidden":"true",viewBox:"0 0 16 16",className:"size-bakin-3 fill-none stroke-current stroke-[1.5]",children:[jsx5("rect",{x:"5.5",y:"5.5",width:"7",height:"7",rx:"1.25"}),jsx5("path",{d:"M3.5 10.5h-.25A1.75 1.75 0 0 1 1.5 8.75v-5.5A1.75 1.75 0 0 1 3.25 1.5h5.5a1.75 1.75 0 0 1 1.75 1.75v.25"})]})}function CheckIcon(){return jsx5("svg",{"aria-hidden":"true",viewBox:"0 0 16 16",className:"size-bakin-3 fill-none stroke-current stroke-2",children:jsx5("path",{d:"m3.5 8 3 3 6-6",strokeLinecap:"round",strokeLinejoin:"round"})})}function CopyButton({text,label="Copy",className}){let[copied,setCopied]=useState5(!1),resetTimer=useRef4(null),mounted=useRef4(!0);useEffect5(()=>()=>{if(mounted.current=!1,resetTimer.current)clearTimeout(resetTimer.current)},[]);let copy=useCallback2(async()=>{if(!await copyToClipboard(text))return;if(!mounted.current)return;if(setCopied(!0),resetTimer.current)clearTimeout(resetTimer.current);resetTimer.current=setTimeout(()=>setCopied(!1),1500)},[text]);return jsx5(Button3,{type:"button","data-slot":"copy-button","data-copied":copied||void 0,variant:"ghost",size:"icon-xs",onClick:copy,"aria-label":copied?`${label} complete`:label,className:cn("text-bakin-text-muted motion-reduce:transition-none",className),children:copied?jsx5(CheckIcon,{}):jsx5(CopyIcon,{})})}import{jsx as jsx6,jsxs as jsxs3}from"react/jsx-runtime";var TOKEN_CLASSES={key:"text-bakin-syntax-key",string:"text-bakin-syntax-string",number:"text-bakin-syntax-number",literal:"text-bakin-syntax-literal",plain:"text-bakin-text-muted"},JSON_TOKEN=/("(?:\\.|[^"\\])*")(\s*:)?|(-?\d+(?:\.\d+)?(?:[eE][+-]?\d+)?)|\b(true|false|null)\b/g;function tokenizeJson(source){try{JSON.parse(source)}catch{return[{kind:"plain",text:source}]}let tokens=[],last=0;for(let match of source.matchAll(JSON_TOKEN)){let index=match.index??0;if(index>last)tokens.push({kind:"plain",text:source.slice(last,index)});let[,str,colon,num,literal]=match;if(str!==void 0){if(tokens.push({kind:colon?"key":"string",text:str}),colon)tokens.push({kind:"plain",text:colon})}else if(num!==void 0)tokens.push({kind:"number",text:num});else if(literal!==void 0)tokens.push({kind:"literal",text:literal});last=index+match[0].length}if(last<source.length)tokens.push({kind:"plain",text:source.slice(last)});return tokens}function CodeBlock({className,code,copyable=!1,label,language="text",wrap=!1,...props}){let tokens=React20.useMemo(()=>language==="json"?tokenizeJson(code):null,[code,language]);return jsxs3("div",{...props,"data-slot":"code-block","data-language":language,className:cn("relative min-w-0 rounded-bakin-control bg-bakin-canvas-default p-bakin-3",className),children:[copyable?jsx6(CopyButton,{text:code,label:label?`Copy ${label}`:"Copy code",className:"absolute end-bakin-2 top-bakin-2"}):null,jsx6("pre",{role:wrap?void 0:"group",tabIndex:wrap?void 0:0,"aria-label":wrap?void 0:label??"Code",className:cn("m-0 min-w-0 font-bakin-typography-family-mono text-[length:var(--bakin-typography-size-meta)] leading-relaxed text-bakin-text-primary",wrap?"whitespace-pre-wrap break-words":"overflow-x-auto focus-visible:outline-2 focus-visible:outline-solid focus-visible:outline-offset-2 focus-visible:outline-bakin-focus-ring",copyable&&"pe-bakin-8"),children:tokens?tokens.map((token,index)=>jsx6("span",{className:TOKEN_CLASSES[token.kind],children:token.text},index)):code})]})}import{jsx as jsx7,jsxs as jsxs4}from"react/jsx-runtime";function initials(name){let words=name.trim().split(/\s+/).filter(Boolean);if(words.length===0)return"?";return words.slice(0,2).map((word)=>word[0]).join("").toUpperCase()}function DefaultAvatar({agent,size}){return jsxs4(Avatar,{size,children:[agent.avatarUrl?jsx7(AvatarImage3,{src:agent.avatarUrl,alt:""}):null,jsx7(AvatarFallback3,{children:initials(agent.name)})]})}function SpinnerIcon({size="sm"}){return jsx7(Spinner,{size,className:"shrink-0"})}function AlertIcon(){return jsxs4("svg",{"aria-hidden":"true",viewBox:"0 0 16 16",className:"size-bakin-4 shrink-0 fill-none stroke-current stroke-[1.5]",children:[jsx7("path",{d:"M8 2 14 13H2L8 2Z",strokeLinejoin:"round"}),jsx7("path",{d:"M8 6v3.5M8 11.75v.25",strokeLinecap:"round"})]})}function RemoveIcon(){return jsx7("svg",{"aria-hidden":"true",viewBox:"0 0 16 16",className:"size-bakin-3 fill-none stroke-current stroke-[1.5]",children:jsx7("path",{d:"m4 4 8 8M12 4l-8 8",strokeLinecap:"round"})})}function DefaultText({content,format}){if(format==="code")return jsx7(CodeBlock,{code:content,label:"Code output",className:"max-w-full"});if(format==="plain")return jsx7(CodeBlock,{code:content,wrap:!0});return jsx7("div",{className:"whitespace-pre-wrap break-words leading-relaxed text-bakin-text-primary",children:content})}import{jsx as jsx8,jsxs as jsxs5,Fragment}from"react/jsx-runtime";function formatDuration(ms){if(ms===void 0)return"";if(ms<1000)return`${ms}ms`;let seconds=ms/1000;if(seconds<60)return`${seconds<10?seconds.toFixed(1):Math.round(seconds)}s`;return`${Math.floor(seconds/60)}m ${Math.round(seconds%60)}s`}var TOOL_VERBS={web_search:"Searched the web",web_fetch:"Fetched a page",bash:"Ran commands",shell:"Ran commands",read:"Read files",read_file:"Read files",write:"Wrote files",write_file:"Wrote files",edit:"Edited files",grep:"Searched the codebase",glob:"Listed files"};function humanizeActivity(calls){let names=[...new Set(calls.map((call)=>call.toolName))];if(names.length===0)return"No tool activity";if(names.length>1)return`Used ${names.length} tools`;let name=names[0];return TOOL_VERBS[name]??`Used ${name}`}function ChevronIcon({expanded}){return jsx8("svg",{"aria-hidden":"true",viewBox:"0 0 16 16",className:cn("size-bakin-3 shrink-0 fill-none stroke-current stroke-[1.75] transition-transform","duration-[var(--bakin-motion-duration-feedback)] motion-reduce:transition-none",expanded&&"rotate-90"),children:jsx8("path",{d:"m6 3.5 4.5 4.5L6 12.5",strokeLinecap:"round",strokeLinejoin:"round"})})}function ToolIcon(){return jsx8("svg",{"aria-hidden":"true",viewBox:"0 0 16 16",className:"size-bakin-3 shrink-0 fill-none stroke-current stroke-[1.5]",children:jsx8("path",{d:"M9.5 3.1a3.2 3.2 0 0 0-3.9 4.2l-3 3a1.4 1.4 0 0 0 2 2l3-3a3.2 3.2 0 0 0 4.2-3.9L10 7.2 8.8 6l.7-2.9Z",strokeLinecap:"round",strokeLinejoin:"round"})})}function FailedGlyph(){return jsx8("svg",{"aria-hidden":"true",viewBox:"0 0 16 16",className:"size-bakin-3 shrink-0 fill-none stroke-current stroke-2",children:jsx8("path",{d:"m5 5 6 6m0-6-6 6",strokeLinecap:"round"})})}function CompletedGlyph(){return jsx8("svg",{"aria-hidden":"true",viewBox:"0 0 16 16",className:"size-bakin-3 shrink-0 fill-none stroke-current stroke-2",children:jsx8("path",{d:"m3.5 8 3 3 6-6",strokeLinecap:"round",strokeLinejoin:"round"})})}function statusLabel(status){if(status==="running")return"running";if(status==="failed")return"failed";return"completed"}function CallStatus({status}){return jsx8(StatusBadge,{tone:status==="failed"?"danger":status==="running"?"attention":"neutral",variant:"soft",icon:status==="running"?SpinnerIcon:status==="failed"?FailedGlyph:CompletedGlyph,"data-call-status":status,children:statusLabel(status)})}function ToolCallRow({call,onOpen,formatSummary}){let clean=call.summary?formatSummary?.(call.summary)??call.summary.trim().replace(/\s+/g," "):"",content=jsxs5(Fragment,{children:[jsxs5("span",{className:"flex min-w-0 flex-1 flex-wrap items-center gap-x-bakin-2 gap-y-bakin-1",children:[jsx8("span",{className:"shrink-0 font-bakin-typography-family-mono text-[length:var(--bakin-typography-size-meta)] text-bakin-text-primary",children:call.toolName}),clean?jsx8("span",{className:"min-w-24 flex-1 truncate text-[length:var(--bakin-typography-size-meta)] text-bakin-text-muted",title:clean,children:clean}):null]}),call.durationMs!==void 0?jsx8("span",{className:"shrink-0 font-bakin-typography-family-mono text-[length:var(--bakin-typography-size-meta)] tabular-nums text-bakin-text-muted",children:formatDuration(call.durationMs)}):null,jsx8(CallStatus,{status:call.status})]}),classes=["flex min-h-bakin-8 w-full min-w-0 items-center gap-bakin-2 px-bakin-3 py-bakin-2 text-left","font-bakin-typography-family-ui outline-none"].join(" ");if(onOpen)return jsx8("button",{type:"button","data-conv-call":call.key,onClick:()=>onOpen(call),className:cn(classes,"transition-colors duration-[var(--bakin-motion-duration-feedback)] hover:bg-bakin-surface-default","focus-visible:outline-2 focus-visible:outline-solid focus-visible:-outline-offset-2 focus-visible:outline-bakin-focus-ring motion-reduce:transition-none"),children:content});return jsx8("div",{"data-conv-call":call.key,className:classes,children:content})}function ActivityGroup({calls,onOpenCall,defaultExpanded=!1,formatSummary,className}){let[expanded,setExpanded]=useState6(defaultExpanded),contentId=useId();if(calls.length===0)return jsx8("div",{"data-conv-activity":"","data-empty":"true",className:cn("rounded-bakin-surface border border-dashed border-bakin-border-subtle px-bakin-3 py-bakin-2","font-bakin-typography-family-ui text-[length:var(--bakin-typography-size-meta)] text-bakin-text-muted",className),children:"No tool activity"});let running=calls.some((call)=>call.status==="running"),failed=calls.filter((call)=>call.status==="failed").length,totalMs=calls.reduce((total,call)=>call.durationMs===void 0?total:(total??0)+call.durationMs,void 0);return jsxs5("div",{"data-conv-activity":"",className:cn("min-w-0 overflow-hidden rounded-bakin-surface border border-bakin-border-subtle bg-bakin-canvas-default","font-bakin-typography-family-ui text-bakin-text-primary",className),children:[jsxs5("button",{type:"button","data-conv-activity-header":"","aria-controls":contentId,"aria-expanded":expanded,onClick:()=>setExpanded((value)=>!value),className:cn("flex min-h-[var(--bakin-layout-size-control)] w-full min-w-0 items-center gap-bakin-2 px-bakin-3 py-bakin-2 text-left","text-[length:var(--bakin-typography-size-meta)] text-bakin-text-muted outline-none","transition-colors duration-[var(--bakin-motion-duration-feedback)] hover:bg-bakin-surface-default","focus-visible:outline-2 focus-visible:outline-solid focus-visible:-outline-offset-2 focus-visible:outline-bakin-focus-ring motion-reduce:transition-none"),children:[jsx8(ChevronIcon,{expanded}),running?jsx8(SpinnerIcon,{}):jsx8(ToolIcon,{}),jsx8("span",{className:"min-w-0 truncate font-bakin-typography-weight-medium text-bakin-text-primary",children:humanizeActivity(calls)}),calls.length>1?jsxs5("span",{className:"shrink-0",children:["\xB7 ",calls.length," calls"]}):null,running?jsx8("span",{className:"shrink-0 text-bakin-text-primary",children:"\xB7 Running"}):null,failed?jsxs5("span",{className:"shrink-0 text-bakin-signal-danger",children:["\xB7 ",failed," failed"]}):null,!running&&totalMs!==void 0?jsx8("span",{className:"ml-auto shrink-0 font-bakin-typography-family-mono tabular-nums",children:formatDuration(totalMs)}):null]}),expanded?jsx8("div",{id:contentId,"data-conv-activity-calls":"",className:"divide-y divide-bakin-border-subtle border-t border-bakin-border-subtle",children:calls.map((call)=>jsx8(ToolCallRow,{call,onOpen:onOpenCall,formatSummary},call.key))}):null]})}import{jsx as jsx9}from"react/jsx-runtime";var alertStyles=cva(["group/alert relative grid w-full gap-x-bakin-1 gap-y-bakin-0 rounded-bakin-surface border px-bakin-4 py-bakin-3","font-bakin-typography-family-ui text-left text-[length:var(--bakin-typography-size-body)] text-bakin-text-primary","has-data-[slot=alert-action]:relative has-data-[slot=alert-action]:pr-[calc(var(--bakin-layout-space-8)*3)]","has-[>svg]:grid-cols-[auto_1fr] has-[>svg]:gap-x-bakin-3",'*:[svg]:row-span-2 *:[svg]:translate-y-0.5 *:[svg]:text-current *:[svg:not([class*="size-"])]:size-bakin-4'],{variants:{tone:{neutral:"border-bakin-border-subtle bg-bakin-surface-default",success:"border-bakin-action-primary-background bg-bakin-action-primary-background/10",attention:"border-bakin-signal-highlight bg-bakin-signal-highlight/10",danger:"border-bakin-signal-danger bg-bakin-signal-danger/10",accent:"border-bakin-signal-accent bg-bakin-signal-accent/10"}},defaultVariants:{tone:"neutral"}});function canonicalTone(options){if(options.tone)return options.tone;if(options.variant==="destructive")return"danger";if(options.variant==="warning")return"attention";if(options.variant==="info")return"neutral";return"neutral"}function alertVariants(options={}){return cn(alertStyles({tone:canonicalTone(options)}),options.className)}function Alert({className,tone,variant,role,...props}){let resolvedTone=canonicalTone({tone,variant});return jsx9("div",{"data-slot":"alert","data-tone":resolvedTone,role:role??(resolvedTone==="danger"?"alert":"status"),className:alertVariants({tone:resolvedTone,className}),...props})}function AlertDescription({className,...props}){return jsx9("div",{"data-slot":"alert-description",className:cn("text-balance text-[length:var(--bakin-typography-size-body)] leading-relaxed text-bakin-text-muted md:text-pretty","[&_a]:underline [&_a]:underline-offset-4 [&_a]:hover:text-bakin-text-primary [&_p:not(:last-child)]:mb-bakin-4",className),...props})}import{jsx as jsx10}from"react/jsx-runtime";function TurnTimestamp({ts,className}){if(!ts)return null;let relative=formatRelativeTime(ts);if(!relative)return null;return jsx10("time",{dateTime:ts,title:formatAbsoluteTime(ts),className:cn("shrink-0 font-bakin-typography-family-ui text-[length:var(--bakin-typography-size-meta)] tabular-nums text-bakin-text-muted",className),children:relative})}function formatTokenCount(tokens){if(tokens>=1e6)return`${trimZero((tokens/1e6).toFixed(1))}m`;if(tokens>=1000)return`${trimZero((tokens/1000).toFixed(1))}k`;return String(tokens)}function formatUsageCost(costUsd){if(costUsd>0&&costUsd<0.005)return"<$0.01";return`$${costUsd.toFixed(2)}`}function modelTail(model){let separator=model.lastIndexOf("/");return separator>=0?model.slice(separator+1):model}function legacyUsageParts(usage){let parts=[],tokens=[];if(usage.inputTokens!==void 0)tokens.push(`${formatTokenCount(usage.inputTokens)} in`);if(usage.outputTokens!==void 0)tokens.push(`${formatTokenCount(usage.outputTokens)} out`);if(tokens.length)parts.push(tokens.join(" / "));else if(usage.totalTokens!==void 0)parts.push(`${formatTokenCount(usage.totalTokens)} tok`);if(usage.costUsd!==void 0)parts.push(formatUsageCost(usage.costUsd));if(usage.model)parts.push(modelTail(usage.model));return parts}function usageFooterLines(usage,toolCallCount){let billed=usage.totalTokens??(usage.inputTokens!==void 0&&usage.outputTokens!==void 0?usage.inputTokens+usage.outputTokens:void 0);if(billed===void 0){let legacy=legacyUsageParts(usage);return legacy.length?[legacy.join(" \xB7 ")]:[]}let parts=[`${formatTokenCount(billed)} billed`];if(usage.cacheReadTokens!==void 0&&billed>0&&usage.cacheReadTokens<=billed)parts.push(`${Math.floor(usage.cacheReadTokens/billed*100)}% cached`);if(toolCallCount>0)parts.push(`~${toolCallCount+1} requests`);if(usage.costUsd!==void 0)parts.push(formatUsageCost(usage.costUsd));if(usage.model)parts.push(modelTail(usage.model));let lines=[parts.join(" \xB7 ")];if(toolCallCount>0){let inOut=[];if(usage.inputTokens!==void 0)inOut.push(`${formatTokenCount(usage.inputTokens)} in`);if(usage.outputTokens!==void 0)inOut.push(`${formatTokenCount(usage.outputTokens)} out`);if(inOut.length)lines.push(inOut.join(" / "))}return lines}function trimZero(value){return value.endsWith(".0")?value.slice(0,-2):value}import{jsx as jsx11,jsxs as jsxs6}from"react/jsx-runtime";function StopCircleIcon(){return jsxs6("svg",{"aria-hidden":"true",viewBox:"0 0 16 16",className:"size-bakin-3 shrink-0 fill-none stroke-current stroke-[1.5]",children:[jsx11("circle",{cx:"8",cy:"8",r:"5.5"}),jsx11("path",{d:"m4.25 11.75 7.5-7.5"})]})}function RetryIcon(){return jsxs6("svg",{"aria-hidden":"true",viewBox:"0 0 16 16",className:"size-bakin-3 fill-none stroke-current stroke-[1.5]",children:[jsx11("path",{d:"M12.25 5.25V2.5m0 2.75H9.5",strokeLinecap:"round",strokeLinejoin:"round"}),jsx11("path",{d:"M12 5a5 5 0 1 0 .2 5.75",strokeLinecap:"round"})]})}function ThinkingStatus({label}){return jsxs6("div",{"aria-live":"polite",className:"flex min-h-bakin-6 items-center gap-bakin-2 text-[length:var(--bakin-typography-size-meta)] text-bakin-text-muted",children:[jsx11(SpinnerIcon,{}),jsxs6("span",{className:"min-w-0 break-words",children:[label,"\u2026"]})]})}function turnText(items){return items.filter((item)=>item.type==="text").map((item)=>item.content).join(`
3
3
 
4
4
  `)}function ThinkingIndicator({agent,label="thinking",renderAvatar,className}){return jsxs6("div",{className:cn("flex min-w-0 items-center gap-bakin-3",className),children:[jsx11("span",{"data-conv-avatar":"",className:"shrink-0","aria-hidden":"true",children:renderAvatar?renderAvatar(agent):jsx11(DefaultAvatar,{agent,size:"sm"})}),jsxs6("span",{className:"min-w-0",children:[jsx11("span",{className:"block truncate text-[length:var(--bakin-typography-size-meta)] font-bakin-typography-weight-semibold text-bakin-text-primary",children:agent.name}),jsx11(ThinkingStatus,{label})]})]})}function AgentTurn({turn,agent,onRetry,onOpenCall,renderAvatar,renderText,transformText,formatToolSummary,usage,liveOutEstimate,className}){let copyText=turnText(turn.items),streaming=turn.status==="streaming",toolCallCount=turn.items.reduce((count,item)=>count+(item.type==="activity"?item.calls.length:0),0),usageLines=usage&&!streaming?usageFooterLines(usage,toolCallCount):[],resolvedAgent={...agent,...turn.agentId?{id:turn.agentId}:{}};return jsxs6("article",{"data-conv-turn":"","aria-label":`${resolvedAgent.name} reply`,className:cn("grid min-w-0 grid-cols-[auto_minmax(0,1fr)] items-start gap-x-bakin-3 gap-y-bakin-2","font-bakin-typography-family-ui text-[length:var(--bakin-typography-size-body)]",className),children:[jsx11("span",{"data-conv-avatar":"",className:"row-span-2 shrink-0","aria-hidden":"true",children:renderAvatar?renderAvatar(resolvedAgent):jsx11(DefaultAvatar,{agent:resolvedAgent,size:"sm"})}),jsxs6("header",{className:"flex min-w-0 flex-wrap items-center gap-x-bakin-2 gap-y-bakin-1",children:[jsx11("span",{className:"min-w-0 truncate font-bakin-typography-weight-semibold text-bakin-text-primary",children:resolvedAgent.name}),jsx11(TurnTimestamp,{ts:turn.ts}),copyText?jsx11(CopyButton,{text:copyText,label:"Copy reply",className:"ml-auto"}):null]}),jsxs6("div",{className:"grid min-w-0 gap-bakin-3",children:[turn.items.map((item,index)=>{if(item.type==="text"){let transformed=transformText?transformText(item.content):{text:item.content};return jsxs6("div",{className:"min-w-0",children:[renderText?renderText(transformed.text,item.format):jsx11(DefaultText,{content:transformed.text,format:item.format}),transformed.extras??null]},index)}if(item.type==="activity")return jsx11(ActivityGroup,{calls:item.calls,onOpenCall,formatSummary:formatToolSummary},index);return jsxs6(Alert,{tone:"danger",role:"status","data-conv-error":"",children:[jsx11(AlertIcon,{}),jsxs6(AlertDescription,{className:"flex min-w-0 flex-wrap items-center gap-bakin-2",children:[jsx11("span",{className:"min-w-0 break-words",children:item.message}),item.errorKind?jsx11("span",{className:"min-w-0 max-w-full break-all rounded-bakin-control bg-bakin-signal-danger/10 px-bakin-1 font-bakin-typography-family-mono text-[length:var(--bakin-typography-size-meta)]",children:item.errorKind}):null]})]},index)}),streaming?jsxs6("div",{className:"flex min-w-0 items-center justify-between gap-bakin-3",children:[jsx11(ThinkingStatus,{label:turn.statusLabel??"thinking"}),(liveOutEstimate??0)>0?jsxs6("span",{"data-conv-usage-live":"",title:"Estimated from text streamed so far; recorded counts arrive when the reply finishes",className:"shrink-0 text-[length:var(--bakin-typography-size-meta)] text-bakin-text-muted",children:["~",formatTokenCount(liveOutEstimate)," out\u2026"]}):null]}):null,turn.status==="aborted"?jsxs6("div",{className:"flex items-center gap-bakin-2 text-[length:var(--bakin-typography-size-meta)] text-bakin-text-muted",children:[jsx11(StopCircleIcon,{})," Stopped"]}):null,turn.status==="error"&&onRetry?jsxs6(Button3,{type:"button",variant:"outline",size:"xs",onClick:onRetry,className:"justify-self-start",children:[jsx11(RetryIcon,{})," Try again"]}):null,usageLines.length?jsx11("div",{"data-conv-usage":"",className:"text-[length:var(--bakin-typography-size-meta)] leading-relaxed text-bakin-text-muted",children:usageLines.map((line)=>jsx11("div",{children:line},line))}):null]})]})}import{jsx as jsx12,jsxs as jsxs7}from"react/jsx-runtime";function FileIcon(){return jsxs7("svg",{"aria-hidden":"true",viewBox:"0 0 16 16",className:"size-bakin-4 shrink-0 fill-none stroke-current stroke-[1.5]",children:[jsx12("path",{d:"M3.5 1.5h5L12.5 5v9.5h-9v-13Z",strokeLinejoin:"round"}),jsx12("path",{d:"M8.5 1.5V5h4",strokeLinejoin:"round"})]})}function DefaultAttachment({attachment}){if(attachment.mimeType.startsWith("image/"))return jsx12("img",{src:attachment.url,alt:attachment.name,loading:"lazy",className:"max-h-32 max-w-full rounded-bakin-surface border border-bakin-border-subtle object-cover"});return jsxs7("a",{href:attachment.url,download:attachment.name,"data-conv-file-chip":"",className:cn("inline-flex min-h-bakin-8 max-w-full items-center gap-bakin-2 rounded-bakin-control border border-bakin-border-subtle","bg-bakin-surface-default px-bakin-3 py-bakin-2 text-bakin-text-primary underline-offset-4 hover:underline",focusRing),children:[jsx12(FileIcon,{}),jsx12("span",{className:"min-w-0 truncate",children:attachment.name})]})}function UserMessage({turn,renderAttachment,className}){return jsx12("article",{"data-conv-user":"","aria-label":"Your message",className:cn("flex min-w-0 justify-end font-bakin-typography-family-ui text-[length:var(--bakin-typography-size-body)]",className),children:jsxs7("div",{className:"flex min-w-0 max-w-[85%] flex-col items-end gap-bakin-2",children:[turn.attachments?.length?jsx12("div",{className:"flex max-w-full flex-wrap justify-end gap-bakin-2",children:turn.attachments.map((attachment)=>jsx12("div",{className:"min-w-0 max-w-full",children:renderAttachment?renderAttachment(attachment):jsx12(DefaultAttachment,{attachment})},`${attachment.url}:${attachment.name}`))}):null,jsx12("div",{className:"max-w-full whitespace-pre-wrap break-words rounded-bakin-surface border border-bakin-signal-accent/30 bg-bakin-signal-accent/10 px-bakin-3 py-bakin-2 text-bakin-text-primary",children:turn.content}),jsxs7("footer",{className:"flex items-center justify-end gap-bakin-1",children:[jsx12(TurnTimestamp,{ts:turn.ts}),turn.content?jsx12(CopyButton,{text:turn.content,label:"Copy message"}):null]})]})})}import{useCallback as useCallback3,useEffect as useEffect6,useRef as useRef5,useState as useState7}from"react";import{jsx as jsx13,jsxs as jsxs8}from"react/jsx-runtime";var PIN_THRESHOLD_PX=48;function fallbackAgent(agentId,agent,resolveAgent){let resolved=resolveAgent?.(agentId);if(resolved)return resolved;if(agent&&(!agentId||!agent.id||agent.id===agentId))return agent;return{...agentId?{id:agentId}:{},name:agentId??agent?.name??"Agent"}}function ArrowDownIcon(){return jsx13("svg",{"aria-hidden":"true",viewBox:"0 0 16 16",className:"size-bakin-3 fill-none stroke-current stroke-[1.5]",children:jsx13("path",{d:"M8 2.5v10M4 8.5l4 4 4-4",strokeLinecap:"round",strokeLinejoin:"round"})})}function Conversation({turns,mode="document",agent,resolveAgent,emptyState,onRetry,onOpenCall,renderAvatar,renderText,renderAttachment,transformText,formatToolSummary,turnUsage,liveOutEstimate,className}){let scrollRef=useRef5(null),pinnedRef=useRef5(!0),[showJump,setShowJump]=useState7(!1),contained=mode==="contained",scrollToBottom=useCallback3((behavior="auto")=>{if(!contained)return;let element=scrollRef.current;if(!element)return;let resolvedBehavior=typeof window<"u"&&window.matchMedia?.("(prefers-reduced-motion: reduce)").matches?"auto":behavior;if(typeof element.scrollTo==="function")element.scrollTo({top:element.scrollHeight,behavior:resolvedBehavior});else element.scrollTop=element.scrollHeight;pinnedRef.current=!0,setShowJump(!1)},[contained]),handleScroll=useCallback3(()=>{if(!contained)return;let element=scrollRef.current;if(!element)return;let pinned=element.scrollHeight-element.scrollTop-element.clientHeight<PIN_THRESHOLD_PX;pinnedRef.current=pinned,setShowJump(!pinned)},[contained]);useEffect6(()=>{if(contained&&pinnedRef.current)scrollToBottom()},[contained,scrollToBottom,turns]);let previousDay="";return jsxs8("div",{"data-conv-timeline":"","data-mode":mode,className:cn("relative min-h-0 min-w-0",contained&&"h-full",className),children:[jsx13("div",{ref:scrollRef,"data-conv-scroller":"",onScroll:contained?handleScroll:void 0,className:cn(contained&&"h-full overflow-y-auto overscroll-contain"),children:turns.length===0&&emptyState?jsx13("div",{className:cn("flex items-center justify-center p-bakin-6",contained&&"min-h-full"),children:emptyState}):jsx13("div",{className:"grid min-w-0 gap-5 px-bakin-4 py-bakin-4",children:turns.map((turn,index)=>{let day=dayKey(turn.ts),followsAgent=turn.kind==="user"&&turns[index-1]?.kind==="agent",separator=day&&day!==previousDay?jsxs8("div",{"data-conv-day":"",className:"flex min-w-0 items-center gap-bakin-3 py-bakin-2",children:[jsx13("span",{"aria-hidden":"true",className:"h-px flex-1 bg-bakin-border-subtle/60"}),jsx13("time",{dateTime:turn.ts,title:formatAbsoluteTime(turn.ts),className:"shrink-0 text-[length:var(--bakin-typography-size-meta)] text-bakin-text-muted",children:formatDayLabel(turn.ts)}),jsx13("span",{"aria-hidden":"true",className:"h-px flex-1 bg-bakin-border-subtle/60"})]},`day-${day}`):null;if(day)previousDay=day;return jsxs8("div",{"data-conv-turn-group":"","data-kind":turn.kind,className:cn("grid min-w-0 gap-5",followsAgent&&"pt-bakin-4"),children:[separator,turn.kind==="user"?jsx13(UserMessage,{turn,renderAttachment}):jsx13(AgentTurn,{turn,agent:fallbackAgent(turn.agentId,agent,resolveAgent),onRetry:turn.status==="error"&&index===turns.length-1?onRetry:void 0,onOpenCall,renderAvatar,renderText,transformText,formatToolSummary,usage:turn.turnId?turnUsage?.[turn.turnId]:void 0,liveOutEstimate:turn.status==="streaming"?liveOutEstimate:void 0})]},turn.key)})})}),contained&&showJump?jsxs8(Button3,{type:"button","data-conv-jump":"",variant:"secondary",size:"sm",onClick:()=>scrollToBottom("smooth"),"aria-label":"Jump to latest",className:"absolute bottom-bakin-4 left-1/2 -translate-x-1/2 rounded-bakin-pill shadow-lg",children:[jsx13(ArrowDownIcon,{})," New messages"]}):null]})}import{jsx as jsx14,jsxs as jsxs9}from"react/jsx-runtime";function MessageIcon(){return jsxs9("svg",{"aria-hidden":"true",viewBox:"0 0 24 24",className:"size-5 fill-none stroke-current stroke-[1.5]",children:[jsx14("path",{d:"M5 5.5h14v9H9l-4 4v-13Z",strokeLinejoin:"round"}),jsx14("path",{d:"M8 9h8M8 12h5",strokeLinecap:"round"})]})}function ConversationEmptyState({icon,title,description,suggestions,onSuggestion,className}){let actionableSuggestions=onSuggestion?suggestions:void 0;return jsxs9("section",{"data-conv-empty":"","aria-label":title,className:cn("mx-auto flex max-w-md flex-col items-center gap-bakin-3 text-center","font-bakin-typography-family-ui text-[length:var(--bakin-typography-size-body)]",className),children:[jsx14("div",{className:"flex size-[3rem] items-center justify-center rounded-bakin-surface border border-bakin-border-subtle bg-bakin-surface-default text-bakin-text-muted",children:icon??jsx14(MessageIcon,{})}),jsxs9("div",{className:"grid gap-bakin-1",children:[jsx14("h3",{className:"text-[length:var(--bakin-typography-size-title)] font-bakin-typography-weight-semibold text-bakin-text-primary",children:title}),description?jsx14("p",{className:"leading-relaxed text-bakin-text-muted",children:description}):null]}),actionableSuggestions?.length?jsx14("div",{className:"flex flex-wrap justify-center gap-bakin-2 pt-bakin-1",children:actionableSuggestions.map((suggestion)=>jsx14(Button3,{type:"button",variant:"outline",size:"sm",onClick:()=>onSuggestion?.(suggestion),className:"h-auto min-h-bakin-8 max-w-full whitespace-normal rounded-bakin-pill py-bakin-2 text-left leading-snug",children:suggestion},suggestion))}):null]})}import{useCallback as useCallback5,useEffect as useEffect8,useId as useId2,useImperativeHandle,useLayoutEffect as useLayoutEffect3,useRef as useRef7,useState as useState9}from"react";import{useCallback as useCallback4,useEffect as useEffect7,useRef as useRef6,useState as useState8}from"react";var RESIZE_STEP=16,RESIZE_STEP_LARGE=64;function clamp(value,min,max){return Math.min(max,Math.max(min,value))}function readSize(storageKey,fallback,min,max){if(!storageKey||typeof window>"u")return clamp(fallback,min,max);try{let raw=window.localStorage.getItem(storageKey),parsed=raw?Number.parseInt(raw,10):fallback;return clamp(Number.isFinite(parsed)?parsed:fallback,min,max)}catch{return clamp(fallback,min,max)}}function persistSize(storageKey,value){if(!storageKey||typeof window>"u")return;try{window.localStorage.setItem(storageKey,String(value))}catch{}}function usePersistedLeadingEdgeResize({axis,defaultSize,minSize,maxSize,storageKey,disabled=!1}){let[size,setSizeState]=useState8(()=>readSize(storageKey,defaultSize,minSize,maxSize)),sizeRef=useRef6(size),pointerRef=useRef6(null),startRef=useRef6({position:0,size}),bodyStyleRef=useRef6({cursor:"",userSelect:""}),setSize=useCallback4((next,persist=!0)=>{let resolved=clamp(next,minSize,maxSize);if(sizeRef.current=resolved,setSizeState(resolved),persist)persistSize(storageKey,resolved)},[maxSize,minSize,storageKey]);useEffect7(()=>{let next=readSize(storageKey,defaultSize,minSize,maxSize);sizeRef.current=next,setSizeState(next)},[defaultSize,maxSize,minSize,storageKey]),useEffect7(()=>()=>{if(pointerRef.current===null)return;document.body.style.cursor=bodyStyleRef.current.cursor,document.body.style.userSelect=bodyStyleRef.current.userSelect},[]);let position=(event)=>axis==="x"?event.clientX:event.clientY,begin=(event)=>{if(disabled)return;event.preventDefault(),event.currentTarget.setPointerCapture?.(event.pointerId),pointerRef.current=event.pointerId,startRef.current={position:position(event),size:sizeRef.current},bodyStyleRef.current={cursor:document.body.style.cursor,userSelect:document.body.style.userSelect},document.body.style.cursor=axis==="x"?"col-resize":"row-resize",document.body.style.userSelect="none"},move=(event)=>{if(pointerRef.current!==event.pointerId)return;let delta=startRef.current.position-position(event);setSize(startRef.current.size+delta,!1)},end=(event)=>{if(pointerRef.current!==event.pointerId)return;if(pointerRef.current=null,event.currentTarget.hasPointerCapture?.(event.pointerId))event.currentTarget.releasePointerCapture(event.pointerId);persistSize(storageKey,sizeRef.current),document.body.style.cursor=bodyStyleRef.current.cursor,document.body.style.userSelect=bodyStyleRef.current.userSelect};return{size,handleProps:{role:"separator",tabIndex:disabled?-1:0,"aria-orientation":axis==="x"?"vertical":"horizontal","aria-valuemin":minSize,"aria-valuemax":maxSize,"aria-valuenow":size,onPointerDown:begin,onPointerMove:move,onPointerUp:end,onPointerCancel:end,onKeyDown:(event)=>{let growKey=axis==="x"?"ArrowLeft":"ArrowUp",shrinkKey=axis==="x"?"ArrowRight":"ArrowDown",next;if(event.key===growKey)next=sizeRef.current+(event.shiftKey?RESIZE_STEP_LARGE:RESIZE_STEP);if(event.key===shrinkKey)next=sizeRef.current-(event.shiftKey?RESIZE_STEP_LARGE:RESIZE_STEP);if(event.key==="Home")next=minSize;if(event.key==="End")next=maxSize;if(next===void 0||disabled)return;event.preventDefault(),setSize(next)}}}}import{jsx as jsx15}from"react/jsx-runtime";function ResizeHandle({orientation,handleProps,label,className}){return jsx15("div",{...handleProps,"aria-label":label,className:cn("group/handle touch-none items-center justify-center outline-none","focus-visible:outline-2 focus-visible:outline-solid focus-visible:outline-offset-[-2px] focus-visible:outline-bakin-focus-ring",className),children:jsx15("span",{className:cn(orientation==="horizontal"?"h-px w-bakin-8":"h-bakin-8 w-px","rounded-bakin-pill bg-bakin-border-subtle opacity-0 transition-opacity group-hover/handle:opacity-100 group-focus-visible/handle:opacity-100")})})}import{jsx as jsx16,jsxs as jsxs10,Fragment as Fragment2}from"react/jsx-runtime";var HISTORY_LIMIT=50,DEFAULT_MIN_HEIGHT=88,DEFAULT_MAX_HEIGHT=480,DEFAULT_ACCEPTED_TYPES=["image/*"];function draftKey(storageKey){return`bakin-composer-draft:${storageKey}`}function historyKey(storageKey){return`bakin-composer-history:${storageKey}`}function resizeKey(storageKey){return`bakin-vresize:composer:${storageKey}`}function readStorage(key){if(typeof window>"u")return null;try{return window.localStorage.getItem(key)}catch{return null}}function writeStorage(key,value){if(typeof window>"u")return;try{if(value===null||value==="")window.localStorage.removeItem(key);else window.localStorage.setItem(key,value)}catch{}}function readDraft(storageKey){return readStorage(draftKey(storageKey))??""}function writeComposerDraft(storageKey,value){writeStorage(draftKey(storageKey),value)}function readHistory(storageKey){try{let raw=readStorage(historyKey(storageKey)),parsed=raw?JSON.parse(raw):[];return Array.isArray(parsed)?parsed.filter((entry)=>typeof entry==="string"):[]}catch{return[]}}function appendHistory(storageKey,entry){let history=readHistory(storageKey);if(history.at(-1)!==entry)history.push(entry);writeStorage(historyKey(storageKey),JSON.stringify(history.slice(-HISTORY_LIMIT)))}function matchesAcceptedType(file,acceptedTypes){return acceptedTypes.some((accepted)=>{let normalized=accepted.trim().toLowerCase();if(!normalized)return!1;if(normalized.startsWith("."))return file.name.toLowerCase().endsWith(normalized);if(normalized.endsWith("/*"))return file.type.toLowerCase().startsWith(normalized.slice(0,-1));return file.type.toLowerCase()===normalized})}function acceptedFiles(files,acceptedTypes){return Array.from(files).filter((file)=>matchesAcceptedType(file,acceptedTypes))}function attachmentLabel(acceptedTypes){return acceptedTypes.every((type)=>type.toLowerCase().startsWith("image/"))?"Add images":"Add files"}function AddIcon(){return jsx16("svg",{"aria-hidden":"true",viewBox:"0 0 16 16",className:"size-bakin-4 fill-none stroke-current stroke-[1.5]",children:jsx16("path",{d:"M8 3v10M3 8h10",strokeLinecap:"round"})})}function SendIcon(){return jsx16("svg",{"aria-hidden":"true",viewBox:"0 0 16 16",className:"size-bakin-4 fill-none stroke-current stroke-[1.5]",children:jsx16("path",{d:"M8 13V3M4 7l4-4 4 4",strokeLinecap:"round",strokeLinejoin:"round"})})}function StopSquareIcon(){return jsx16("svg",{"aria-hidden":"true",viewBox:"0 0 16 16",className:"size-bakin-3 fill-current",children:jsx16("rect",{x:"3.5",y:"3.5",width:"9",height:"9",rx:"1.5"})})}function Composer({storageKey,onSend,busy=!1,onAbort,queueMode=!1,queuedCount=0,handleRef,disabled=!1,placeholder="Send a message\u2026",inputLabel,maxLength,attachments,leadingSlot,autoFocus=!0,minHeight=DEFAULT_MIN_HEIGHT,maxHeight=DEFAULT_MAX_HEIGHT,className}){let[value,setValue]=useState9(()=>readDraft(storageKey)),[dropActive,setDropActive]=useState9(!1),textareaRef=useRef7(null),composingRef=useRef7(!1),fileRef=useRef7(null),historyPositionRef=useRef7(null),pendingDraftRef=useRef7(""),descriptionId=useId2(),attachmentReasonId=useId2(),acceptedTypes=attachments?.acceptedTypes?.length?attachments.acceptedTypes:DEFAULT_ACCEPTED_TYPES,addLabel=attachmentLabel(acceptedTypes),{size:dragMinimum,handleProps:resizeHandleProps}=usePersistedLeadingEdgeResize({axis:"y",defaultSize:minHeight,minSize:minHeight,maxSize:maxHeight,storageKey:resizeKey(storageKey),disabled});useEffect8(()=>{if(setValue(readDraft(storageKey)),historyPositionRef.current=null,autoFocus)textareaRef.current?.focus()},[storageKey,autoFocus]),useLayoutEffect3(()=>{let element=textareaRef.current;if(!element)return;element.style.height="auto";let desired=Math.max(element.scrollHeight,dragMinimum),capped=Math.min(desired,maxHeight);element.style.height=`${capped}px`,element.style.overflowY=desired>maxHeight?"auto":"hidden"},[value,dragMinimum,maxHeight]);let setDraft=useCallback5((next)=>{setValue(next),writeStorage(draftKey(storageKey),next)},[storageKey]),valueRef=useRef7(value);valueRef.current=value,useImperativeHandle(handleRef,()=>({isEmpty:()=>valueRef.current.trim().length===0,setText:(text)=>{setDraft(text),textareaRef.current?.focus()},focus:()=>textareaRef.current?.focus()}),[setDraft]);let readyAttachments=attachments?.items.filter((item)=>!item.status||item.status==="ready")??[],uploadsPending=attachments?.items.some((item)=>item.status==="uploading")??!1,canSend=!disabled&&(!busy||queueMode)&&!uploadsPending&&(value.trim().length>0||readyAttachments.length>0),wantsQueue=busy&&queueMode&&!disabled&&(value.trim().length>0||(attachments?.items.length??0)>0),send=useCallback5(()=>{if(!canSend)return;let content=value.trim();if(content)appendHistory(storageKey,content);historyPositionRef.current=null,setDraft(""),onSend(content)},[canSend,onSend,setDraft,storageKey,value]),stepHistory=useCallback5((direction)=>{let history=readHistory(storageKey);if(!history.length)return!1;let position=historyPositionRef.current;if(position===null){if(direction===1)return!1;pendingDraftRef.current=value,position=history.length-1}else position+=direction;if(position>=history.length)return historyPositionRef.current=null,setDraft(pendingDraftRef.current),!0;if(position<0)return!0;return historyPositionRef.current=position,setDraft(history[position]),!0},[setDraft,storageKey,value]),handleKeyDown=(event)=>{if(disabled)return;if(event.key==="Escape"&&busy&&onAbort){event.preventDefault(),onAbort();return}let element=event.currentTarget,caretAtStart=element.selectionStart===0&&element.selectionEnd===0;if(event.key==="ArrowUp"&&(value===""||caretAtStart||historyPositionRef.current!==null)){if(stepHistory(-1))event.preventDefault();return}if(event.key==="ArrowDown"&&historyPositionRef.current!==null){if(stepHistory(1))event.preventDefault();return}if(event.key==="Enter"&&!event.shiftKey&&!composingRef.current)event.preventDefault(),send()},addAcceptedFiles=(files)=>{if(!attachments?.enabled)return!1;let accepted=acceptedFiles(files,acceptedTypes);if(!accepted.length)return!1;return attachments.onAdd(attachments.multiple===!1?accepted.slice(0,1):accepted),!0},handlePaste=(event)=>{if(addAcceptedFiles(event.clipboardData?.files??[]))event.preventDefault()},showCounter=maxLength!==void 0&&value.length>=maxLength*0.8;return jsxs10("div",{"data-composer-root":"","data-drop-active":dropActive?"":void 0,onDrop:(event)=>{if(addAcceptedFiles(event.dataTransfer?.files??[]))event.preventDefault();setDropActive(!1)},onDragEnter:(event)=>{if(!attachments?.enabled)return;event.preventDefault(),setDropActive(!0)},onDragOver:(event)=>{if(attachments?.enabled)event.preventDefault()},onDragLeave:(event)=>{if(!event.currentTarget.contains(event.relatedTarget))setDropActive(!1)},className:cn("min-w-0 shrink-0 bg-bakin-canvas-default font-bakin-typography-family-ui",className),children:[jsx16(ResizeHandle,{orientation:"horizontal",handleProps:resizeHandleProps,label:"Resize message input",className:cn("flex h-bakin-2 w-full",disabled?"cursor-not-allowed":"cursor-row-resize")}),jsxs10("div",{className:"px-bakin-4 pb-bakin-3",children:[jsxs10("div",{className:cn("min-w-0 rounded-bakin-overlay border border-bakin-border-subtle bg-bakin-surface-default/40","transition-[background-color,border-color] duration-[var(--bakin-motion-duration-feedback)] ease-bakin-standard","focus-within:border-bakin-focus-ring",dropActive&&"border-bakin-signal-accent bg-bakin-signal-accent/10"),children:[attachments?.items.length?jsx16("div",{className:"flex min-w-0 flex-wrap gap-bakin-2 px-bakin-3 pt-bakin-3","data-composer-attachments":"",children:attachments.items.map((item)=>{let status=item.status??"ready";return jsxs10("div",{className:"relative min-w-0",children:[status==="uploading"?jsxs10("div",{role:"status","aria-label":`Uploading ${item.name}`,className:"flex size-20 items-center justify-center rounded-bakin-surface border border-bakin-border-subtle bg-bakin-surface-default text-bakin-text-muted",children:[jsx16(SpinnerIcon,{size:"md"}),jsxs10("span",{className:"sr-only",children:["Uploading ",item.name]})]}):status==="error"?jsxs10("div",{role:"alert",className:"flex size-20 flex-col items-center justify-center gap-bakin-1 rounded-bakin-surface border border-bakin-signal-danger bg-bakin-signal-danger/10 p-bakin-2 text-center text-[length:var(--bakin-typography-size-meta)] text-bakin-text-primary",children:[jsx16("span",{className:"line-clamp-2 font-bakin-typography-weight-semibold",children:item.name}),jsx16("span",{className:"line-clamp-2 text-bakin-signal-danger",children:item.errorMessage??"Upload failed"})]}):item.previewUrl?jsx16("img",{src:item.previewUrl,alt:item.name,className:"size-20 rounded-bakin-surface border border-bakin-border-subtle object-cover"}):jsx16("div",{className:"flex size-20 items-center justify-center rounded-bakin-surface border border-bakin-border-subtle bg-bakin-surface-default p-bakin-2 text-center text-[length:var(--bakin-typography-size-meta)] text-bakin-text-muted",children:jsx16("span",{className:"line-clamp-3 break-all",children:item.name})}),jsx16(Button3,{type:"button","data-composer-attach-remove":"",variant:"secondary",size:"icon-xs",disabled,"aria-label":`Remove ${item.name}`,onClick:()=>attachments.onRemove(item.id),className:"absolute -right-bakin-1 -top-bakin-1 rounded-bakin-pill shadow-md",children:jsx16(RemoveIcon,{})})]},item.id)})}):null,jsx16("textarea",{ref:textareaRef,value,onChange:(event)=>{historyPositionRef.current=null,setDraft(event.currentTarget.value)},onKeyDown:handleKeyDown,onPaste:handlePaste,onCompositionStart:()=>{composingRef.current=!0},onCompositionEnd:()=>{composingRef.current=!1},placeholder,"aria-label":inputLabel??placeholder,"aria-describedby":busy||showCounter?descriptionId:void 0,disabled,maxLength,className:cn("block w-full min-w-0 resize-none border-0 bg-transparent px-bakin-3 pt-bakin-3","font-bakin-typography-family-ui text-base leading-relaxed text-bakin-text-primary md:text-[length:var(--bakin-typography-size-body)]","outline-none placeholder:text-bakin-text-muted disabled:cursor-not-allowed disabled:opacity-[var(--bakin-state-opacity-disabled)]")}),jsxs10("div",{className:"flex min-w-0 items-center justify-between gap-bakin-2 px-bakin-2 pb-bakin-2 pt-bakin-1",children:[jsxs10("div",{className:"flex min-w-0 items-center gap-bakin-1",children:[attachments?jsxs10(Fragment2,{children:[jsx16(Button3,{type:"button","data-composer-attach":"",variant:"ghost",size:"icon-sm",disabled:!attachments.enabled||disabled,title:attachments.enabled?attachments.disabledReason?`${addLabel} \u2014 ${attachments.disabledReason}`:addLabel:attachments.disabledReason??"Attachments unavailable","aria-label":addLabel,"aria-describedby":!attachments.enabled?attachmentReasonId:void 0,onClick:()=>fileRef.current?.click(),className:"rounded-bakin-pill text-bakin-text-muted",children:jsx16(AddIcon,{})}),!attachments.enabled?jsx16("span",{id:attachmentReasonId,className:"sr-only",children:attachments.disabledReason??"Attachments unavailable"}):null,jsx16("input",{ref:fileRef,type:"file","aria-label":`${addLabel} file picker`,accept:acceptedTypes.join(","),multiple:attachments.multiple!==!1,disabled:!attachments.enabled||disabled,className:"sr-only",tabIndex:-1,onChange:(event)=>{addAcceptedFiles(event.currentTarget.files??[]),event.currentTarget.value=""}})]}):null,leadingSlot]}),wantsQueue?jsx16(Button3,{type:"button","data-composer-queue":"",variant:"primary",size:"icon-sm",onClick:send,disabled:!canSend,"aria-label":"Queue message",title:uploadsPending?"Queue after attachments finish uploading":"Queue message (Enter)",className:"rounded-bakin-pill",children:jsx16(SendIcon,{})}):busy&&onAbort?jsx16(Button3,{type:"button","data-composer-stop":"",variant:"secondary",size:"icon-sm",onClick:onAbort,"aria-label":"Stop the reply",title:"Stop the reply (Esc)",className:"rounded-bakin-pill",children:jsx16(StopSquareIcon,{})}):busy?jsxs10(Button3,{type:"button","data-composer-sending":"",variant:"secondary",size:"icon-sm",disabled:!0,"aria-label":"Reply in progress",title:"Sending\u2026",className:"rounded-bakin-pill",children:[jsx16(SpinnerIcon,{size:"md"}),jsx16("span",{className:"sr-only",children:"Reply in progress"})]}):jsx16(Button3,{type:"button","data-composer-send":"",variant:"primary",size:"icon-sm",onClick:send,disabled:!canSend,"aria-label":"Send",title:"Send (Enter)",className:"rounded-bakin-pill",children:jsx16(SendIcon,{})})]})]}),jsxs10("div",{id:descriptionId,className:"flex min-h-bakin-4 items-start justify-between gap-bakin-3 pt-bakin-1 text-[length:var(--bakin-typography-size-meta)] text-bakin-text-muted",children:[jsx16("span",{"aria-live":"polite",children:!busy?"":!onAbort?"Sending\u2026":queueMode?wantsQueue?canSend?"Replying \u2014 Enter queues your message; Esc stops the reply.":"Replying \u2014 attachment uploading; queueing waits for it. Esc stops the reply.":queuedCount>0?`Replying \u2014 ${queuedCount} queued message${queuedCount===1?"":"s"} send when it finishes; Esc stops the reply.`:"Replying \u2014 type to queue a follow-up; Esc stops the reply.":"Replying \u2014 wait for the reply to finish, or stop it."}),showCounter?jsxs10("span",{"data-composer-count":"","aria-live":"polite",className:cn("shrink-0 font-bakin-typography-family-mono",value.length>=(maxLength??0)&&"text-bakin-signal-danger"),children:[value.length," / ",maxLength]}):null]})]})]})}import{jsx as jsx17,jsxs as jsxs11}from"react/jsx-runtime";function QueuedMessageList({items,onRemove}){if(!items.length)return null;return jsx17("div",{"data-queued-list":"",className:"grid shrink-0 gap-bakin-2 px-bakin-4 pb-bakin-2",children:items.map((item)=>jsx17("div",{"data-queued-item":item.id,className:"flex min-w-0 justify-end",children:jsxs11("div",{className:"relative grid max-w-[75%] min-w-0 gap-bakin-1 rounded-bakin-overlay border border-dashed border-bakin-border-subtle bg-bakin-surface-default/55 px-bakin-3 py-bakin-2",children:[item.attachments?.length?jsx17("div",{className:"flex min-w-0 flex-wrap gap-bakin-2",children:item.attachments.map((attachment)=>attachment.url&&attachment.mimeType.startsWith("image/")?jsx17("img",{src:attachment.url,alt:attachment.name,className:"size-12 rounded-bakin-surface border border-bakin-border-subtle object-cover"},attachment.name):jsx17("span",{className:"max-w-full truncate rounded-bakin-control border border-bakin-border-subtle bg-bakin-canvas-default px-bakin-2 py-bakin-1 text-[length:var(--bakin-typography-size-meta)] text-bakin-text-muted",children:attachment.name},attachment.name))}):null,jsx17("p",{className:"m-0 whitespace-pre-wrap break-words text-[length:var(--bakin-typography-size-body)] text-bakin-text-muted",children:item.content}),jsx17("span",{className:"font-bakin-typography-weight-semibold text-[length:var(--bakin-typography-size-meta)] uppercase tracking-wide text-bakin-text-muted",children:"Queued"}),onRemove?jsx17(Button3,{type:"button","data-queued-remove":"",variant:"secondary",size:"icon-xs","aria-label":"Remove queued message",title:"Remove \u2014 an empty composer gets the text back for editing",onClick:()=>onRemove(item),className:"absolute -right-bakin-1 -top-bakin-1 rounded-bakin-pill shadow-sm",children:jsx17(RemoveIcon,{})}):null]})},item.id))})}import*as React21 from"react";import{jsx as jsx18,jsxs as jsxs12}from"react/jsx-runtime";var VALUE_BASE="m-0 min-w-0 text-bakin-text-primary";function KeyValue({items,layout="rows",className,...props}){let list=jsx18("dl",{...props,"data-slot":"key-value","data-layout":layout,className:cn("m-0 min-w-0 text-[length:var(--bakin-typography-size-meta)]",layout==="inline"&&"flex flex-wrap items-baseline gap-x-bakin-4 gap-y-bakin-1",layout==="rows"&&"grid gap-y-bakin-1",layout==="rows"&&"divide-y divide-bakin-border-subtle",layout==="columns"&&"grid gap-x-bakin-4 gap-y-bakin-1 @sm/key-value:grid-cols-[max-content_minmax(0,1fr)]",className),children:items.map((item,index)=>{let value=item.value===null||item.value===void 0?"\u2014":item.value,valueClass=cn(VALUE_BASE,item.mono&&"font-bakin-typography-family-mono",item.numeric&&"tabular-nums",item.breakValue&&"break-all");if(layout==="columns")return jsxs12(React21.Fragment,{children:[jsx18("dt",{className:"text-bakin-text-muted",children:item.label}),jsx18("dd",{className:valueClass,children:value})]},index);return jsxs12("div",{"data-slot":"key-value-pair",className:cn("flex min-w-0 gap-bakin-2",layout==="inline"&&"items-baseline",layout==="rows"&&"items-baseline justify-between",layout==="rows"&&"pt-bakin-1 first:pt-0"),children:[jsx18("dt",{className:"shrink-0 text-bakin-text-muted",children:item.label}),jsx18("dd",{className:cn(valueClass,layout==="rows"&&"text-right"),children:value})]},index)})});return layout==="columns"?jsx18("div",{"data-slot":"key-value-container",className:"@container/key-value min-w-0",children:list}):list}var exports_index_parts2={};__export(exports_index_parts2,{createHandle:()=>createDialogHandle,Viewport:()=>DialogViewport,Trigger:()=>DialogTrigger,Title:()=>DialogTitle,Root:()=>DialogRoot,Portal:()=>DialogPortal,Popup:()=>DialogPopup,Handle:()=>DialogHandle,Description:()=>DialogDescription,Close:()=>DialogClose,Backdrop:()=>DialogBackdrop});import*as React23 from"react";import*as React22 from"react";var DialogRootContext=React22.createContext(void 0);function useDialogRootContext(optional){let dialogRootContext=React22.useContext(DialogRootContext);if(optional===!1&&dialogRootContext===void 0)throw Error(formatErrorMessage_default(27));return dialogRootContext}var CommonPopupDataAttributes=function(CommonPopupDataAttributes2){return CommonPopupDataAttributes2.open="data-open",CommonPopupDataAttributes2.closed="data-closed",CommonPopupDataAttributes2[CommonPopupDataAttributes2.startingStyle=TransitionStatusDataAttributes.startingStyle]="startingStyle",CommonPopupDataAttributes2[CommonPopupDataAttributes2.endingStyle=TransitionStatusDataAttributes.endingStyle]="endingStyle",CommonPopupDataAttributes2.anchorHidden="data-anchor-hidden",CommonPopupDataAttributes2.side="data-side",CommonPopupDataAttributes2.align="data-align",CommonPopupDataAttributes2}({}),CommonTriggerDataAttributes=function(CommonTriggerDataAttributes2){return CommonTriggerDataAttributes2.popupOpen="data-popup-open",CommonTriggerDataAttributes2.pressed="data-pressed",CommonTriggerDataAttributes2}({}),TRIGGER_HOOK={[CommonTriggerDataAttributes.popupOpen]:""},PRESSABLE_TRIGGER_HOOK={[CommonTriggerDataAttributes.popupOpen]:"",[CommonTriggerDataAttributes.pressed]:""},POPUP_OPEN_HOOK={[CommonPopupDataAttributes.open]:""},POPUP_CLOSED_HOOK={[CommonPopupDataAttributes.closed]:""},ANCHOR_HIDDEN_HOOK={[CommonPopupDataAttributes.anchorHidden]:""},triggerOpenStateMapping={open(value){if(value)return TRIGGER_HOOK;return null}};var popupStateMapping={open(value){if(value)return POPUP_OPEN_HOOK;return POPUP_CLOSED_HOOK},anchorHidden(value){if(value)return ANCHOR_HIDDEN_HOOK;return null}};var stateAttributesMapping2={...popupStateMapping,...transitionStatusMapping},DialogBackdrop=React23.forwardRef(function(componentProps,forwardedRef){let{render,className,style,forceRender=!1,...elementProps}=componentProps,{store}=useDialogRootContext(),open=store.useState("open"),nested=store.useState("nested"),mounted=store.useState("mounted"),transitionStatus=store.useState("transitionStatus");return useRenderElement("div",componentProps,{state:{open,transitionStatus},ref:[store.context.backdropRef,forwardedRef],stateAttributesMapping:stateAttributesMapping2,props:[{role:"presentation",hidden:!mounted,style:{userSelect:"none",WebkitUserSelect:"none"}},elementProps],enabled:forceRender||!nested})});import*as React24 from"react";var exports_reason_parts={};__export(exports_reason_parts,{windowResize:()=>windowResize,wheel:()=>wheel,triggerPress:()=>triggerPress,triggerHover:()=>triggerHover,triggerFocus:()=>triggerFocus,trackPress:()=>trackPress,swipe:()=>swipe,siblingOpen:()=>siblingOpen,scrub:()=>scrub,pointer:()=>pointer,outsidePress:()=>outsidePress,none:()=>none,listNavigation:()=>listNavigation,linkPress:()=>linkPress,keyboard:()=>keyboard,itemPress:()=>itemPress,inputPress:()=>inputPress,inputPaste:()=>inputPaste,inputClear:()=>inputClear,inputChange:()=>inputChange,inputBlur:()=>inputBlur,incrementPress:()=>incrementPress,imperativeAction:()=>imperativeAction,focusOut:()=>focusOut,escapeKey:()=>escapeKey,drag:()=>drag,disabled:()=>disabled,decrementPress:()=>decrementPress,closeWatcher:()=>closeWatcher,closePress:()=>closePress,clearPress:()=>clearPress,chipRemovePress:()=>chipRemovePress,cancelOpen:()=>cancelOpen});var none="none",triggerPress="trigger-press",triggerHover="trigger-hover",triggerFocus="trigger-focus",outsidePress="outside-press",itemPress="item-press",closePress="close-press",linkPress="link-press",clearPress="clear-press",chipRemovePress="chip-remove-press",trackPress="track-press",incrementPress="increment-press",decrementPress="decrement-press",inputChange="input-change",inputClear="input-clear",inputBlur="input-blur",inputPaste="input-paste",inputPress="input-press",focusOut="focus-out",escapeKey="escape-key",closeWatcher="close-watcher",listNavigation="list-navigation",keyboard="keyboard",pointer="pointer",drag="drag",wheel="wheel",scrub="scrub",cancelOpen="cancel-open",siblingOpen="sibling-open",disabled="disabled",imperativeAction="imperative-action",swipe="swipe",windowResize="window-resize";function createChangeEventDetails(reason,event,trigger,customProperties){let canceled=!1,allowPropagation=!1,custom=customProperties??EMPTY_OBJECT;return{reason,event:event??new Event("base-ui"),cancel(){canceled=!0},allowPropagation(){allowPropagation=!0},get isCanceled(){return canceled},get isPropagationAllowed(){return allowPropagation},trigger,...custom}}var DialogClose=React24.forwardRef(function(componentProps,forwardedRef){let{render,className,disabled:disabled2=!1,nativeButton=!0,style,...elementProps}=componentProps,{store}=useDialogRootContext(),open=store.useState("open");function handleClick(event){if(open)store.setOpen(!1,createChangeEventDetails(exports_reason_parts.closePress,event.nativeEvent))}let{getButtonProps,buttonRef}=useButton({disabled:disabled2,native:nativeButton});return useRenderElement("button",componentProps,{state:{disabled:disabled2},ref:[forwardedRef,buttonRef],props:[{onClick:handleClick},elementProps,getButtonProps]})});import*as React26 from"react";import*as React25 from"react";var globalId=0;function useGlobalId(idOverride,prefix="mui"){let[defaultId,setDefaultId]=React25.useState(idOverride),id=idOverride||defaultId;return React25.useEffect(()=>{if(defaultId==null)globalId+=1,setDefaultId(`${prefix}-${globalId}`)},[defaultId,prefix]),id}var maybeReactUseId=SafeReact.useId;function useId3(idOverride,prefix){if(maybeReactUseId!==void 0){let reactId=maybeReactUseId();return idOverride??(prefix?`${prefix}-${reactId}`:reactId)}return useGlobalId(idOverride,prefix)}function useBaseUiId(idOverride){return useId3(idOverride,"base-ui")}var DialogDescription=React26.forwardRef(function(componentProps,forwardedRef){let{render,className,style,id:idProp,...elementProps}=componentProps,{store}=useDialogRootContext(),id=useBaseUiId(idProp);return store.useSyncedValueWithCleanup("descriptionElementId",id),useRenderElement("p",componentProps,{ref:forwardedRef,props:[{id},elementProps]})});import*as React49 from"react";import*as React27 from"react";var hasNavigator=typeof navigator<"u",nav=getNavigatorData(),platform=getPlatform(),userAgent=getUserAgent(),isWebKit2=typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter:none"),isIOS=nav.platform==="MacIntel"&&nav.maxTouchPoints>1?!0:/iP(hone|ad|od)|iOS/.test(nav.platform),isFirefox=hasNavigator&&/firefox/i.test(userAgent),isSafari=hasNavigator&&/apple/i.test(navigator.vendor),isEdge=hasNavigator&&/Edg/i.test(userAgent),isAndroid=hasNavigator&&/android/i.test(platform)||/android/i.test(userAgent),isMac=hasNavigator&&platform.toLowerCase().startsWith("mac")&&!navigator.maxTouchPoints,isJSDOM=userAgent.includes("jsdom/");function getNavigatorData(){if(!hasNavigator)return{platform:"",maxTouchPoints:-1};let uaData=navigator.userAgentData;if(uaData?.platform)return{platform:uaData.platform,maxTouchPoints:navigator.maxTouchPoints};return{platform:navigator.platform??"",maxTouchPoints:navigator.maxTouchPoints??-1}}function getUserAgent(){if(!hasNavigator)return"";let uaData=navigator.userAgentData;if(uaData&&Array.isArray(uaData.brands))return uaData.brands.map(({brand,version:version2})=>`${brand}/${version2}`).join(" ");return navigator.userAgent}function getPlatform(){if(!hasNavigator)return"";let uaData=navigator.userAgentData;if(uaData?.platform)return uaData.platform;return navigator.platform??""}function stopEvent(event){event.preventDefault(),event.stopPropagation()}function isReactEvent(event){return"nativeEvent"in event}function isVirtualClick(event){if(event.pointerType===""&&event.isTrusted)return!0;if(isAndroid&&event.pointerType)return event.type==="click"&&event.buttons===1;return event.detail===0&&!event.pointerType}function isVirtualPointerEvent(event){if(isJSDOM)return!1;return!isAndroid&&event.width===0&&event.height===0||isAndroid&&event.width===1&&event.height===1&&event.pressure===0&&event.detail===0&&event.pointerType==="mouse"||event.width<1&&event.height<1&&event.pressure===0&&event.detail===0&&event.pointerType==="touch"}function isMouseLikePointerType(pointerType,strict){let values=["mouse","pen"];if(!strict)values.push("",void 0);return values.includes(pointerType)}function isClickLikeEvent(event){let type=event.type;return type==="click"||type==="mousedown"||type==="keydown"||type==="keyup"}function resolveValue(value,pointerType){if(pointerType!=null&&!isMouseLikePointerType(pointerType))return 0;if(typeof value==="function")return value();return value}function getDelay(value,prop,pointerType){let result=resolveValue(value,pointerType);if(typeof result==="number")return result;return result?.[prop]}function getRestMs(value){if(typeof value==="function")return value();return value}function isClickLikeOpenEvent(openEventType,interactedInside){return interactedInside||openEventType==="click"||openEventType==="mousedown"}import{jsx as _jsx2}from"react/jsx-runtime";var FloatingDelayGroupContext=React27.createContext({hasProvider:!1,timeoutMs:0,delayRef:{current:0},initialDelayRef:{current:0},timeout:new Timeout,currentIdRef:{current:null},currentContextRef:{current:null}});function FloatingDelayGroup(props){let{children,delay,timeoutMs=0}=props,delayRef=React27.useRef(delay),initialDelayRef=React27.useRef(delay),currentIdRef=React27.useRef(null),currentContextRef=React27.useRef(null),timeout=useTimeout();return _jsx2(FloatingDelayGroupContext.Provider,{value:React27.useMemo(()=>({hasProvider:!0,delayRef,initialDelayRef,currentIdRef,timeoutMs,currentContextRef,timeout}),[timeoutMs,timeout]),children})}function useDelayGroup(context,options={open:!1}){let store="rootStore"in context?context.rootStore:context,floatingId=store.useState("floatingId"),{open}=options,groupContext=React27.useContext(FloatingDelayGroupContext),{currentIdRef,delayRef,timeoutMs,initialDelayRef,currentContextRef,hasProvider,timeout}=groupContext,[isInstantPhase,setIsInstantPhase]=React27.useState(!1);return useIsoLayoutEffect(()=>{function unset(){setIsInstantPhase(!1),currentContextRef.current?.setIsInstantPhase(!1),currentIdRef.current=null,currentContextRef.current=null,delayRef.current=initialDelayRef.current}if(!currentIdRef.current)return;if(!open&&currentIdRef.current===floatingId){if(setIsInstantPhase(!1),timeoutMs){let closingId=floatingId;return timeout.start(timeoutMs,()=>{if(store.select("open")||currentIdRef.current&&currentIdRef.current!==closingId)return;unset()}),()=>{timeout.clear()}}unset()}return},[open,floatingId,currentIdRef,delayRef,timeoutMs,initialDelayRef,currentContextRef,timeout,store]),useIsoLayoutEffect(()=>{if(!open)return;let prevContext=currentContextRef.current,prevId=currentIdRef.current;if(timeout.clear(),currentContextRef.current={onOpenChange:store.setOpen,setIsInstantPhase},currentIdRef.current=floatingId,delayRef.current={open:0,close:getDelay(initialDelayRef.current,"close")},prevId!==null&&prevId!==floatingId)setIsInstantPhase(!0),prevContext?.setIsInstantPhase(!0),prevContext?.onOpenChange(!1,createChangeEventDetails(exports_reason_parts.none));else setIsInstantPhase(!1),prevContext?.setIsInstantPhase(!1)},[open,floatingId,store,currentIdRef,delayRef,timeoutMs,initialDelayRef,currentContextRef,timeout]),useIsoLayoutEffect(()=>{return()=>{currentContextRef.current=null}},[currentContextRef]),React27.useMemo(()=>({hasProvider,delayRef,isInstantPhase}),[hasProvider,delayRef,isInstantPhase])}import*as React31 from"react";function addEventListener(target,type,listener,options){return target.addEventListener(type,listener,options),()=>{target.removeEventListener(type,listener,options)}}function mergeCleanups(...cleanups){return()=>{for(let i=0;i<cleanups.length;i+=1){let cleanup=cleanups[i];if(cleanup)cleanup()}}}function useValueAsRef(value){let latest=useRefWithInit(createLatestRef,value).current;return latest.next=value,useIsoLayoutEffect(latest.effect),latest}function createLatestRef(value){let latest={current:value,next:value,effect:()=>{latest.current=latest.next}};return latest}function ownerDocument(node){return node?.ownerDocument||document}import*as React28 from"react";var visuallyHiddenBase={clipPath:"inset(50%)",overflow:"hidden",whiteSpace:"nowrap",border:0,padding:0,width:1,height:1,margin:-1},visuallyHidden={...visuallyHiddenBase,position:"fixed",top:0,left:0},visuallyHiddenInput={...visuallyHiddenBase,position:"absolute"};import{jsx as _jsx3}from"react/jsx-runtime";var FocusGuard=React28.forwardRef(function(props,ref){let[role,setRole]=React28.useState();return useIsoLayoutEffect(()=>{if(isSafari)setRole("button")},[]),_jsx3("span",{...props,ref,style:visuallyHidden,"aria-hidden":role?void 0:!0,...{tabIndex:0,role},"data-base-ui-focus-guard":""})});var FOCUSABLE_ATTRIBUTE="data-base-ui-focusable",ACTIVE_KEY="active",SELECTED_KEY="selected",TYPEABLE_SELECTOR="input:not([type='hidden']):not([disabled]),[contenteditable]:not([contenteditable='false']),textarea:not([disabled])";function activeElement(doc){let element=doc.activeElement;while(element?.shadowRoot?.activeElement!=null)element=element.shadowRoot.activeElement;return element}function contains(parent,child){if(!parent||!child)return!1;let rootNode=child.getRootNode?.();if(parent.contains(child))return!0;if(rootNode&&isShadowRoot(rootNode)){let next=child;while(next){if(parent===next)return!0;next=next.parentNode||next.host}}return!1}function getTarget(event){if("composedPath"in event)return event.composedPath()[0];return event.target}function isTargetInsideEnabledTrigger(target,triggerElements){if(!isElement(target))return!1;let targetElement=target;if(triggerElements.hasElement(targetElement))return!targetElement.hasAttribute("data-trigger-disabled");for(let[,trigger]of triggerElements.entries())if(contains(trigger,targetElement))return!trigger.hasAttribute("data-trigger-disabled");return!1}function isEventTargetWithin(event,node){if(node==null)return!1;if("composedPath"in event)return event.composedPath().includes(node);let eventAgain=event;return eventAgain.target!=null&&node.contains(eventAgain.target)}function isRootElement(element){return element.matches("html,body")}function isTypeableElement(element){return isHTMLElement(element)&&element.matches(TYPEABLE_SELECTOR)}function isInteractiveElement(element){return element?.closest(`button,a[href],[role="button"],select,[tabindex]:not([tabindex="-1"]),${TYPEABLE_SELECTOR}`)!=null}function isTypeableCombobox(element){if(!element)return!1;return element.getAttribute("role")==="combobox"&&isTypeableElement(element)}function matchesFocusVisible(element){if(!element||isJSDOM)return!0;try{return element.matches(":focus-visible")}catch(_e){return!0}}function getFloatingFocusElement(floatingElement){if(!floatingElement)return null;return floatingElement.hasAttribute(FOCUSABLE_ATTRIBUTE)?floatingElement:floatingElement.querySelector(`[${FOCUSABLE_ATTRIBUTE}]`)||floatingElement}var sides=["top","right","bottom","left"];var{min,max,round,floor}=Math,createCoords=(v)=>({x:v,y:v}),oppositeSideMap={left:"right",right:"left",bottom:"top",top:"bottom"};function clamp2(start,value,end){return max(start,min(value,end))}function evaluate(value,param){return typeof value==="function"?value(param):value}function getSide(placement){return placement.split("-")[0]}function getAlignment(placement){return placement.split("-")[1]}function getOppositeAxis(axis){return axis==="x"?"y":"x"}function getAxisLength(axis){return axis==="y"?"height":"width"}function getSideAxis(placement){let firstChar=placement[0];return firstChar==="t"||firstChar==="b"?"y":"x"}function getAlignmentAxis(placement){return getOppositeAxis(getSideAxis(placement))}function getAlignmentSides(placement,rects,rtl){if(rtl===void 0)rtl=!1;let alignment=getAlignment(placement),alignmentAxis=getAlignmentAxis(placement),length=getAxisLength(alignmentAxis),mainAlignmentSide=alignmentAxis==="x"?alignment===(rtl?"end":"start")?"right":"left":alignment==="start"?"bottom":"top";if(rects.reference[length]>rects.floating[length])mainAlignmentSide=getOppositePlacement(mainAlignmentSide);return[mainAlignmentSide,getOppositePlacement(mainAlignmentSide)]}function getExpandedPlacements(placement){let oppositePlacement=getOppositePlacement(placement);return[getOppositeAlignmentPlacement(placement),oppositePlacement,getOppositeAlignmentPlacement(oppositePlacement)]}function getOppositeAlignmentPlacement(placement){return placement.includes("start")?placement.replace("start","end"):placement.replace("end","start")}var lrPlacement=["left","right"],rlPlacement=["right","left"],tbPlacement=["top","bottom"],btPlacement=["bottom","top"];function getSideList(side,isStart,rtl){switch(side){case"top":case"bottom":if(rtl)return isStart?rlPlacement:lrPlacement;return isStart?lrPlacement:rlPlacement;case"left":case"right":return isStart?tbPlacement:btPlacement;default:return[]}}function getOppositeAxisPlacements(placement,flipAlignment,direction,rtl){let alignment=getAlignment(placement),list=getSideList(getSide(placement),direction==="start",rtl);if(alignment){if(list=list.map((side)=>side+"-"+alignment),flipAlignment)list=list.concat(list.map(getOppositeAlignmentPlacement))}return list}function getOppositePlacement(placement){let side=getSide(placement);return oppositeSideMap[side]+placement.slice(side.length)}function expandPaddingObject(padding){return{top:0,right:0,bottom:0,left:0,...padding}}function getPaddingObject(padding){return typeof padding!=="number"?expandPaddingObject(padding):{top:padding,right:padding,bottom:padding,left:padding}}function rectToClientRect(rect){let{x,y,width,height}=rect;return{width,height,top:y,left:x,right:x+width,bottom:y+height,x,y}}function isHiddenByStyles(styles){return styles.visibility==="hidden"||styles.visibility==="collapse"}function isElementVisible(element,styles=element?getComputedStyle2(element):null){if(!element||!element.isConnected||!styles||isHiddenByStyles(styles))return!1;if(typeof element.checkVisibility==="function")return element.checkVisibility();return styles.display!=="none"&&styles.display!=="contents"}var CANDIDATE_SELECTOR='a[href],button,input,select,textarea,summary,details,iframe,object,embed,[tabindex],[contenteditable]:not([contenteditable="false"]),audio[controls],video[controls]';function getParentElement(element){let assignedSlot=element.assignedSlot;if(assignedSlot)return assignedSlot;if(element.parentElement)return element.parentElement;let rootNode=element.getRootNode();return isShadowRoot(rootNode)?rootNode.host:null}function getDetailsSummary(details){for(let child of Array.from(details.children))if(getNodeName(child)==="summary")return child;return null}function isWithinOpenDetailsSummary(element,details){let summary=getDetailsSummary(details);return!!summary&&(element===summary||contains(summary,element))}function isFocusableCandidate(element){let nodeName=element?getNodeName(element):"";return element!=null&&element.matches(CANDIDATE_SELECTOR)&&(nodeName!=="summary"||element.parentElement!=null&&getNodeName(element.parentElement)==="details"&&getDetailsSummary(element.parentElement)===element)&&(nodeName!=="details"||getDetailsSummary(element)==null)&&(nodeName!=="input"||element.type!=="hidden")}function isFocusableElement(element){if(!isFocusableCandidate(element)||!element.isConnected||element.matches(":disabled"))return!1;for(let current=element;current;current=getParentElement(current)){let isAncestor=current!==element,isSlot=getNodeName(current)==="slot";if(current.hasAttribute("inert"))return!1;if(isAncestor&&getNodeName(current)==="details"&&!current.open&&!isWithinOpenDetailsSummary(element,current)||current.hasAttribute("hidden")||!isSlot&&!isVisibleInTabbableTree(current,isAncestor))return!1}return!0}function isVisibleInTabbableTree(element,isAncestor){let styles=getComputedStyle2(element);if(!isAncestor)return isElementVisible(element,styles);return styles.display!=="none"}function getTabIndex(element){let tabIndex=element.tabIndex;if(tabIndex<0){let nodeName=getNodeName(element);if(nodeName==="details"||nodeName==="audio"||nodeName==="video"||isHTMLElement(element)&&element.isContentEditable)return 0}return tabIndex}function getNamedRadioInput(element){if(getNodeName(element)!=="input")return null;let input=element;return input.type==="radio"&&input.name!==""?input:null}function isTabbableRadio(element,candidates){let input=getNamedRadioInput(element);if(!input)return!0;let checkedRadio=candidates.find((candidate)=>{let radio=getNamedRadioInput(candidate);return radio?.name===input.name&&radio.form===input.form&&radio.checked});if(checkedRadio)return checkedRadio===input;return candidates.find((candidate)=>{let radio=getNamedRadioInput(candidate);return radio?.name===input.name&&radio.form===input.form})===input}function getComposedChildren(container){if(isHTMLElement(container)&&getNodeName(container)==="slot"){let assignedElements=container.assignedElements({flatten:!0});if(assignedElements.length>0)return assignedElements}if(isHTMLElement(container)&&container.shadowRoot)return Array.from(container.shadowRoot.children);return Array.from(container.children)}function appendCandidates(container,list){getComposedChildren(container).forEach((child)=>{if(isFocusableCandidate(child))list.push(child);appendCandidates(child,list)})}function appendMatchingElements(container,selector,list){getComposedChildren(container).forEach((child)=>{if(isHTMLElement(child)&&child.matches(selector))list.push(child);appendMatchingElements(child,selector,list)})}function isTabbable(element){return isFocusableElement(element)&&getTabIndex(element)>=0}function focusable(container){let candidates=[];return appendCandidates(container,candidates),candidates.filter(isFocusableElement)}function tabbable(container){let candidates=focusable(container);return candidates.filter((element)=>getTabIndex(element)>=0&&isTabbableRadio(element,candidates))}function getTabbableIn(container,dir){let list=tabbable(container),len=list.length;if(len===0)return;let active=activeElement(ownerDocument(container)),index=list.indexOf(active),nextIndex=index===-1?dir===1?0:len-1:index+dir;return list[nextIndex]}function getNextTabbable(referenceElement){return getTabbableIn(ownerDocument(referenceElement).body,1)||referenceElement}function getPreviousTabbable(referenceElement){return getTabbableIn(ownerDocument(referenceElement).body,-1)||referenceElement}function isOutsideEvent(event,container){let containerElement=container||event.currentTarget,relatedTarget=event.relatedTarget;return!relatedTarget||!contains(containerElement,relatedTarget)}function disableFocusInside(container){tabbable(container).forEach((element)=>{element.dataset.tabindex=element.getAttribute("tabindex")||"",element.setAttribute("tabindex","-1")})}function enableFocusInside(container){let elements=[];appendMatchingElements(container,"[data-tabindex]",elements),elements.forEach((element)=>{let tabindex=element.dataset.tabindex;if(delete element.dataset.tabindex,tabindex)element.setAttribute("tabindex",tabindex);else element.removeAttribute("tabindex")})}function getNodeChildren(nodes,id,onlyOpenChildren=!0){return nodes.filter((node)=>node.parentId===id).flatMap((child)=>[...!onlyOpenChildren||child.context?.open?[child]:[],...getNodeChildren(nodes,child.id,onlyOpenChildren)])}function getNodeAncestors(nodes,id){let allAncestors=[],currentParentId=nodes.find((node)=>node.id===id)?.parentId;while(currentParentId){let currentNode=nodes.find((node)=>node.id===currentParentId);if(currentParentId=currentNode?.parentId,currentNode)allAncestors=allAncestors.concat(currentNode)}return allAncestors}function createAttribute(name){return`data-base-ui-${name}`}var rafId=0;function enqueueFocus(el,options={}){let{preventScroll=!1,cancelPrevious=!0,sync=!1}=options;if(cancelPrevious)cancelAnimationFrame(rafId);let exec=()=>el?.focus({preventScroll});if(sync)return exec(),NOOP;let currentRafId=requestAnimationFrame(exec);return rafId=currentRafId,()=>{if(rafId===currentRafId)cancelAnimationFrame(currentRafId),rafId=0}}var counters={inert:new WeakMap,"aria-hidden":new WeakMap},markerName="data-base-ui-inert",uncontrolledElementsSets={inert:new WeakSet,"aria-hidden":new WeakSet},markerCounterMap=new WeakMap,lockCount=0;function getUncontrolledElementsSet(controlAttribute){return uncontrolledElementsSets[controlAttribute]}function unwrapHost(node){if(!node)return null;return isShadowRoot(node)?node.host:unwrapHost(node.parentNode)}var correctElements=(parent,targets)=>targets.map((target)=>{if(parent.contains(target))return target;let correctedTarget=unwrapHost(target);if(parent.contains(correctedTarget))return correctedTarget;return null}).filter((x)=>x!=null),buildKeepSet=(targets)=>{let keep=new Set;return targets.forEach((target)=>{let node=target;while(node&&!keep.has(node))keep.add(node),node=node.parentNode}),keep},collectOutsideElements=(root,keepElements,stopElements)=>{let outside=[],walk=(parent)=>{if(!parent||stopElements.has(parent))return;Array.from(parent.children).forEach((node)=>{if(getNodeName(node)==="script")return;if(keepElements.has(node))walk(node);else outside.push(node)})};return walk(root),outside};function applyAttributeToOthers(uncorrectedAvoidElements,body,ariaHidden,inert,{mark=!0,markerIgnoreElements=[]}){let controlAttribute=inert?"inert":ariaHidden?"aria-hidden":null,counterMap=null,uncontrolledElementsSet=null,avoidElements=correctElements(body,uncorrectedAvoidElements),markerIgnoreTargets=mark?correctElements(body,markerIgnoreElements):[],markerIgnoreSet=new Set(markerIgnoreTargets),markerTargets=mark?collectOutsideElements(body,buildKeepSet(avoidElements),new Set(avoidElements)).filter((target)=>!markerIgnoreSet.has(target)):[],hiddenElements=[],markedElements=[];if(controlAttribute){let map=counters[controlAttribute],currentUncontrolledElementsSet=getUncontrolledElementsSet(controlAttribute);uncontrolledElementsSet=currentUncontrolledElementsSet,counterMap=map;let ariaLiveElements=correctElements(body,Array.from(body.querySelectorAll("[aria-live]"))),controlElements=avoidElements.concat(ariaLiveElements);collectOutsideElements(body,buildKeepSet(controlElements),new Set(controlElements)).forEach((node)=>{let attr=node.getAttribute(controlAttribute),alreadyHidden=attr!==null&&attr!=="false",counterValue=(map.get(node)||0)+1;if(map.set(node,counterValue),hiddenElements.push(node),counterValue===1&&alreadyHidden)currentUncontrolledElementsSet.add(node);if(!alreadyHidden)node.setAttribute(controlAttribute,controlAttribute==="inert"?"":"true")})}if(mark)markerTargets.forEach((node)=>{let markerValue=(markerCounterMap.get(node)||0)+1;if(markerCounterMap.set(node,markerValue),markedElements.push(node),markerValue===1)node.setAttribute(markerName,"")});return lockCount+=1,()=>{if(counterMap)hiddenElements.forEach((element)=>{let counterValue=(counterMap.get(element)||0)-1;if(counterMap.set(element,counterValue),!counterValue){if(!uncontrolledElementsSet?.has(element)&&controlAttribute)element.removeAttribute(controlAttribute);uncontrolledElementsSet?.delete(element)}});if(mark)markedElements.forEach((element)=>{let markerValue=(markerCounterMap.get(element)||0)-1;if(markerCounterMap.set(element,markerValue),!markerValue)element.removeAttribute(markerName)});if(lockCount-=1,!lockCount)counters.inert=new WeakMap,counters["aria-hidden"]=new WeakMap,uncontrolledElementsSets.inert=new WeakSet,uncontrolledElementsSets["aria-hidden"]=new WeakSet,markerCounterMap=new WeakMap}}function markOthers(avoidElements,options={}){let{ariaHidden=!1,inert=!1,mark=!0,markerIgnoreElements=[]}=options,body=ownerDocument(avoidElements[0]).body;return applyAttributeToOthers(avoidElements,body,ariaHidden,inert,{mark,markerIgnoreElements})}import*as React29 from"react";import*as ReactDOM2 from"react-dom";var DISABLED_TRANSITIONS_STYLE={style:{transition:"none"}},CLICK_TRIGGER_IDENTIFIER="data-base-ui-click-trigger";var POPUP_COLLISION_AVOIDANCE={fallbackAxisSide:"end"},ownerVisuallyHidden={clipPath:"inset(50%)",position:"fixed",top:0,left:0};import{jsx as _jsx4,jsxs as _jsxs}from"react/jsx-runtime";var PortalContext=React29.createContext(null),usePortalContext=()=>React29.useContext(PortalContext),attr=createAttribute("portal");function useFloatingPortalNode(props={}){let{ref,container:containerProp,componentProps=EMPTY_OBJECT,elementProps}=props,uniqueId=useId3(),parentPortalNode=usePortalContext()?.portalNode,[containerElement,setContainerElement]=React29.useState(null),[portalNode,setPortalNode]=React29.useState(null),setPortalNodeRef=useStableCallback((node)=>{if(node!==null)setPortalNode(node)}),containerRef=React29.useRef(null);useIsoLayoutEffect(()=>{if(containerProp===null){if(containerRef.current)containerRef.current=null,setPortalNode(null),setContainerElement(null);return}if(uniqueId==null)return;let resolvedContainer=(containerProp&&(isNode(containerProp)?containerProp:containerProp.current))??parentPortalNode??document.body;if(resolvedContainer==null){if(containerRef.current)containerRef.current=null,setPortalNode(null),setContainerElement(null);return}if(containerRef.current!==resolvedContainer)containerRef.current=resolvedContainer,setPortalNode(null),setContainerElement(resolvedContainer)},[containerProp,parentPortalNode,uniqueId]);let portalElement=useRenderElement("div",componentProps,{ref:[ref,setPortalNodeRef],props:[{id:uniqueId,[attr]:""},elementProps]});return{portalNode,portalSubtree:containerElement&&portalElement?ReactDOM2.createPortal(portalElement,containerElement):null}}var FloatingPortal=React29.forwardRef(function(componentProps,forwardedRef){let{children,container,className,render,renderGuards,style,...elementProps}=componentProps,{portalNode,portalSubtree}=useFloatingPortalNode({container,ref:forwardedRef,componentProps,elementProps}),beforeOutsideRef=React29.useRef(null),afterOutsideRef=React29.useRef(null),beforeInsideRef=React29.useRef(null),afterInsideRef=React29.useRef(null),[focusManagerState,setFocusManagerState]=React29.useState(null),focusInsideDisabledRef=React29.useRef(!1),modal=focusManagerState?.modal,open=focusManagerState?.open,shouldRenderGuards=typeof renderGuards==="boolean"?renderGuards:!!focusManagerState&&!focusManagerState.modal&&focusManagerState.open&&!!portalNode;React29.useEffect(()=>{if(!portalNode||modal)return;function onFocus(event){if(portalNode&&event.relatedTarget&&isOutsideEvent(event))if(event.type==="focusin"){if(focusInsideDisabledRef.current)enableFocusInside(portalNode),focusInsideDisabledRef.current=!1}else disableFocusInside(portalNode),focusInsideDisabledRef.current=!0}return mergeCleanups(addEventListener(portalNode,"focusin",onFocus,!0),addEventListener(portalNode,"focusout",onFocus,!0))},[portalNode,modal]),React29.useEffect(()=>{if(!portalNode||open!==!1)return;enableFocusInside(portalNode),focusInsideDisabledRef.current=!1},[open,portalNode]);let portalContextValue=React29.useMemo(()=>({beforeOutsideRef,afterOutsideRef,beforeInsideRef,afterInsideRef,portalNode,setFocusManagerState}),[portalNode]);return _jsxs(React29.Fragment,{children:[portalSubtree,_jsxs(PortalContext.Provider,{value:portalContextValue,children:[shouldRenderGuards&&portalNode&&_jsx4(FocusGuard,{"data-type":"outside",ref:beforeOutsideRef,onFocus:(event)=>{if(isOutsideEvent(event,portalNode))beforeInsideRef.current?.focus();else{let domReference=focusManagerState?focusManagerState.domReference:null;getPreviousTabbable(domReference)?.focus()}}}),shouldRenderGuards&&portalNode&&_jsx4("span",{"aria-owns":portalNode.id,style:ownerVisuallyHidden}),portalNode&&ReactDOM2.createPortal(children,portalNode),shouldRenderGuards&&portalNode&&_jsx4(FocusGuard,{"data-type":"outside",ref:afterOutsideRef,onFocus:(event)=>{if(isOutsideEvent(event,portalNode))afterInsideRef.current?.focus();else{let domReference=focusManagerState?focusManagerState.domReference:null;if(getNextTabbable(domReference)?.focus(),focusManagerState?.closeOnFocusOut)focusManagerState?.onOpenChange(!1,createChangeEventDetails(exports_reason_parts.focusOut,event.nativeEvent))}}})]})]})});import*as React30 from"react";function createEventEmitter(){let map=new Map;return{emit(event,data){map.get(event)?.forEach((listener)=>listener(data))},on(event,listener){if(!map.has(event))map.set(event,new Set);map.get(event).add(listener)},off(event,listener){map.get(event)?.delete(listener)}}}import{jsx as _jsx5}from"react/jsx-runtime";var FloatingNodeContext=React30.createContext(null),FloatingTreeContext=React30.createContext(null),useFloatingParentNodeId=()=>React30.useContext(FloatingNodeContext)?.id||null,useFloatingTree=(externalTree)=>{let contextTree=React30.useContext(FloatingTreeContext);return externalTree??contextTree};import{jsx as _jsx6,jsxs as _jsxs2}from"react/jsx-runtime";function getEventType(event,lastInteractionType){let win=getWindow(getTarget(event));if(event instanceof win.KeyboardEvent)return"keyboard";if(event instanceof win.FocusEvent)return lastInteractionType||"keyboard";if("pointerType"in event)return event.pointerType||"keyboard";if("touches"in event)return"touch";if(event instanceof win.MouseEvent)return lastInteractionType||(event.detail===0?"keyboard":"mouse");return""}var LIST_LIMIT=20,previouslyFocusedElements=[];function clearDisconnectedPreviouslyFocusedElements(){previouslyFocusedElements=previouslyFocusedElements.filter((entry)=>{return entry.deref()?.isConnected})}function addPreviouslyFocusedElement(element){if(clearDisconnectedPreviouslyFocusedElements(),element&&getNodeName(element)!=="body"){if(previouslyFocusedElements.push(new WeakRef(element)),previouslyFocusedElements.length>LIST_LIMIT)previouslyFocusedElements=previouslyFocusedElements.slice(-LIST_LIMIT)}}function getPreviouslyFocusedElement(){return clearDisconnectedPreviouslyFocusedElements(),previouslyFocusedElements[previouslyFocusedElements.length-1]?.deref()}function getFirstTabbableElement(container){if(!container)return null;if(isTabbable(container))return container;return tabbable(container)[0]||container}function handleTabIndex(floatingFocusElement,orderRef){if(floatingFocusElement.hasAttribute("tabindex")&&!floatingFocusElement.hasAttribute("data-tabindex"))return;if(!orderRef.current.includes("floating")&&!floatingFocusElement.getAttribute("role")?.includes("dialog"))return;let tabbableContent=focusable(floatingFocusElement).filter((element)=>{let dataTabIndex=element.getAttribute("data-tabindex")||"";return isTabbable(element)||element.hasAttribute("data-tabindex")&&!dataTabIndex.startsWith("-")}),tabIndex=floatingFocusElement.getAttribute("tabindex");if(orderRef.current.includes("floating")||tabbableContent.length===0){if(tabIndex!=="0")floatingFocusElement.setAttribute("tabindex","0")}else if(tabIndex!=="-1"||floatingFocusElement.hasAttribute("data-tabindex")&&floatingFocusElement.getAttribute("data-tabindex")!=="-1")floatingFocusElement.setAttribute("tabindex","-1"),floatingFocusElement.setAttribute("data-tabindex","-1")}function FloatingFocusManager(props){let{context,children,disabled:disabled2=!1,initialFocus=!0,returnFocus=!0,restoreFocus=!1,modal=!0,closeOnFocusOut=!0,openInteractionType="",nextFocusableElement,previousFocusableElement,beforeContentFocusGuardRef,externalTree,getInsideElements}=props,store="rootStore"in context?context.rootStore:context,open=store.useState("open"),domReference=store.useState("domReferenceElement"),floating=store.useState("floatingElement"),{events,dataRef}=store.context,getNodeId=useStableCallback(()=>dataRef.current.floatingContext?.nodeId),ignoreInitialFocus=initialFocus===!1,isUntrappedTypeableCombobox=isTypeableCombobox(domReference)&&ignoreInitialFocus,orderRef=React31.useRef(["content"]),initialFocusRef=useValueAsRef(initialFocus),returnFocusRef=useValueAsRef(returnFocus),openInteractionTypeRef=useValueAsRef(openInteractionType),tree=useFloatingTree(externalTree),portalContext=usePortalContext(),preventReturnFocusRef=React31.useRef(!1),isPointerDownRef=React31.useRef(!1),pointerDownOutsideRef=React31.useRef(!1),lastFocusedTabbableRef=React31.useRef(null),closeTypeRef=React31.useRef(""),lastInteractionTypeRef=React31.useRef(""),beforeGuardRef=React31.useRef(null),afterGuardRef=React31.useRef(null),mergedBeforeGuardRef=useMergedRefs(beforeGuardRef,beforeContentFocusGuardRef,portalContext?.beforeInsideRef),mergedAfterGuardRef=useMergedRefs(afterGuardRef,portalContext?.afterInsideRef),blurTimeout=useTimeout(),pointerDownTimeout=useTimeout(),restoreFocusFrame=useAnimationFrame(),isInsidePortal=portalContext!=null,floatingFocusElement=getFloatingFocusElement(floating),getTabbableContent=useStableCallback((container=floatingFocusElement)=>{return container?tabbable(container):[]}),getResolvedInsideElements=useStableCallback(()=>getInsideElements?.().filter((element)=>element!=null)??[]);React31.useEffect(()=>{if(disabled2||!modal)return;function onKeyDown(event){if(event.key==="Tab"){if(contains(floatingFocusElement,activeElement(ownerDocument(floatingFocusElement)))&&getTabbableContent().length===0&&!isUntrappedTypeableCombobox)stopEvent(event)}}let doc=ownerDocument(floatingFocusElement);return addEventListener(doc,"keydown",onKeyDown)},[disabled2,domReference,floatingFocusElement,modal,orderRef,isUntrappedTypeableCombobox,getTabbableContent]),React31.useEffect(()=>{if(disabled2||!open)return;let doc=ownerDocument(floatingFocusElement);function clearPointerDownOutside(){pointerDownOutsideRef.current=!1}function onPointerDown(event){let target=getTarget(event),insideElements=getResolvedInsideElements(),pointerTargetInside=contains(floating,target)||contains(domReference,target)||contains(portalContext?.portalNode,target)||insideElements.some((element)=>element===target||contains(element,target));if(pointerDownOutsideRef.current=!pointerTargetInside,lastInteractionTypeRef.current=event.pointerType||"keyboard",target?.closest(`[${CLICK_TRIGGER_IDENTIFIER}]`))isPointerDownRef.current=!0}function onKeyDown(){lastInteractionTypeRef.current="keyboard"}return mergeCleanups(addEventListener(doc,"pointerdown",onPointerDown,!0),addEventListener(doc,"pointerup",clearPointerDownOutside,!0),addEventListener(doc,"pointercancel",clearPointerDownOutside,!0),addEventListener(doc,"keydown",onKeyDown,!0))},[disabled2,floating,domReference,floatingFocusElement,open,portalContext,getResolvedInsideElements]),React31.useEffect(()=>{if(disabled2||!closeOnFocusOut)return;let doc=ownerDocument(floatingFocusElement);function handlePointerDown(){isPointerDownRef.current=!0,pointerDownTimeout.start(0,()=>{isPointerDownRef.current=!1})}function handleFocusIn(event){let target=getTarget(event);if(isTabbable(target))lastFocusedTabbableRef.current=target}function handleFocusOutside(event){let{relatedTarget,currentTarget}=event,target=getTarget(event);queueMicrotask(()=>{let nodeId=getNodeId(),triggers=store.context.triggerElements,insideElements=getResolvedInsideElements(),isRelatedFocusGuard=relatedTarget?.hasAttribute(createAttribute("focus-guard"))&&[beforeGuardRef.current,afterGuardRef.current,portalContext?.beforeInsideRef.current,portalContext?.afterInsideRef.current,portalContext?.beforeOutsideRef.current,portalContext?.afterOutsideRef.current,resolveRef(previousFocusableElement),resolveRef(nextFocusableElement)].includes(relatedTarget),movedToUnrelatedNode=!(contains(domReference,relatedTarget)||contains(floating,relatedTarget)||contains(relatedTarget,floating)||contains(portalContext?.portalNode,relatedTarget)||insideElements.some((element)=>element===relatedTarget||contains(element,relatedTarget))||relatedTarget!=null&&triggers.hasElement(relatedTarget)||triggers.hasMatchingElement((trigger)=>contains(trigger,relatedTarget))||isRelatedFocusGuard||tree&&(getNodeChildren(tree.nodesRef.current,nodeId).find((node)=>contains(node.context?.elements.floating,relatedTarget)||contains(node.context?.elements.domReference,relatedTarget))||getNodeAncestors(tree.nodesRef.current,nodeId).find((node)=>[node.context?.elements.floating,getFloatingFocusElement(node.context?.elements.floating)].includes(relatedTarget)||node.context?.elements.domReference===relatedTarget)));if(currentTarget===domReference&&floatingFocusElement)handleTabIndex(floatingFocusElement,orderRef);if(restoreFocus&&currentTarget!==domReference&&!isElementVisible(target)&&activeElement(doc)===doc.body){if(isHTMLElement(floatingFocusElement)){if(floatingFocusElement.focus(),restoreFocus==="popup"){restoreFocusFrame.request(()=>{floatingFocusElement.focus()});return}}let tabbableContent=getTabbableContent(),prevTabbable=lastFocusedTabbableRef.current,nodeToFocus=(prevTabbable&&tabbableContent.includes(prevTabbable)?prevTabbable:null)||tabbableContent[tabbableContent.length-1]||floatingFocusElement;if(isHTMLElement(nodeToFocus))nodeToFocus.focus()}if(dataRef.current.insideReactTree){dataRef.current.insideReactTree=!1;return}if((isUntrappedTypeableCombobox?!0:!modal)&&relatedTarget&&movedToUnrelatedNode&&!isPointerDownRef.current&&(isUntrappedTypeableCombobox||relatedTarget!==getPreviouslyFocusedElement()))preventReturnFocusRef.current=!0,store.setOpen(!1,createChangeEventDetails(exports_reason_parts.focusOut,event))})}function markInsideReactTree(){if(pointerDownOutsideRef.current)return;dataRef.current.insideReactTree=!0,blurTimeout.start(0,()=>{dataRef.current.insideReactTree=!1})}let domReferenceElement=isHTMLElement(domReference)?domReference:null;if(!floating&&!domReferenceElement)return;return mergeCleanups(domReferenceElement&&addEventListener(domReferenceElement,"focusout",handleFocusOutside),domReferenceElement&&addEventListener(domReferenceElement,"pointerdown",handlePointerDown),floating&&addEventListener(floating,"focusin",handleFocusIn),floating&&addEventListener(floating,"focusout",handleFocusOutside),floating&&portalContext&&addEventListener(floating,"focusout",markInsideReactTree,!0))},[disabled2,domReference,floating,floatingFocusElement,modal,tree,portalContext,store,closeOnFocusOut,restoreFocus,getTabbableContent,isUntrappedTypeableCombobox,getNodeId,orderRef,dataRef,blurTimeout,pointerDownTimeout,restoreFocusFrame,nextFocusableElement,previousFocusableElement,getResolvedInsideElements]),React31.useEffect(()=>{if(disabled2||!floating||!open)return;let portalNodes=Array.from(portalContext?.portalNode?.querySelectorAll(`[${createAttribute("portal")}]`)||[]),rootAncestorComboboxDomReference=(tree?getNodeAncestors(tree.nodesRef.current,getNodeId()):[]).find((node)=>isTypeableCombobox(node.context?.elements.domReference||null))?.context?.elements.domReference,insideElements=[...[floating,...portalNodes,beforeGuardRef.current,afterGuardRef.current,portalContext?.beforeOutsideRef.current,portalContext?.afterOutsideRef.current,...getResolvedInsideElements()],rootAncestorComboboxDomReference,resolveRef(previousFocusableElement),resolveRef(nextFocusableElement),isUntrappedTypeableCombobox?domReference:null].filter((x)=>x!=null),ariaHiddenCleanup=markOthers(insideElements,{ariaHidden:modal||isUntrappedTypeableCombobox,mark:!1}),markerInsideElements=[floating,...portalNodes].filter((x)=>x!=null),markerCleanup=markOthers(markerInsideElements);return()=>{markerCleanup(),ariaHiddenCleanup()}},[open,disabled2,domReference,floating,modal,orderRef,portalContext,isUntrappedTypeableCombobox,tree,getNodeId,nextFocusableElement,previousFocusableElement,getResolvedInsideElements]),useIsoLayoutEffect(()=>{if(!open||disabled2||!isHTMLElement(floatingFocusElement))return;let doc=ownerDocument(floatingFocusElement),previouslyFocusedElement=activeElement(doc);queueMicrotask(()=>{let initialFocusValueOrFn=initialFocusRef.current,resolvedInitialFocus=typeof initialFocusValueOrFn==="function"?initialFocusValueOrFn(openInteractionTypeRef.current||""):initialFocusValueOrFn;if(resolvedInitialFocus===void 0||resolvedInitialFocus===!1)return;if(contains(floatingFocusElement,previouslyFocusedElement))return;let focusableElements=null,getDefaultFocusElement=()=>{if(focusableElements==null)focusableElements=getTabbableContent(floatingFocusElement);return focusableElements[0]||floatingFocusElement},elToFocus;if(resolvedInitialFocus===!0||resolvedInitialFocus===null)elToFocus=getDefaultFocusElement();else elToFocus=resolveRef(resolvedInitialFocus);elToFocus=elToFocus||getDefaultFocusElement(),enqueueFocus(elToFocus,{preventScroll:elToFocus===floatingFocusElement})})},[disabled2,open,floatingFocusElement,ignoreInitialFocus,getTabbableContent,initialFocusRef,openInteractionTypeRef]),useIsoLayoutEffect(()=>{if(disabled2||!floatingFocusElement)return;let doc=ownerDocument(floatingFocusElement),previouslyFocusedElement=activeElement(doc);addPreviouslyFocusedElement(previouslyFocusedElement);function onOpenChangeLocal(details){if(!details.open)closeTypeRef.current=getEventType(details.nativeEvent,lastInteractionTypeRef.current);if(details.reason===exports_reason_parts.triggerHover&&details.nativeEvent.type==="mouseleave")preventReturnFocusRef.current=!0;if(details.reason!==exports_reason_parts.outsidePress)return;if(details.nested)preventReturnFocusRef.current=!1;else if(isVirtualClick(details.nativeEvent)||isVirtualPointerEvent(details.nativeEvent))preventReturnFocusRef.current=!1;else{let isPreventScrollSupported=!1;if(ownerDocument(floatingFocusElement).createElement("div").focus({get preventScroll(){return isPreventScrollSupported=!0,!1}}),isPreventScrollSupported)preventReturnFocusRef.current=!1;else preventReturnFocusRef.current=!0}}events.on("openchange",onOpenChangeLocal);function getReturnElement(){let returnFocusValueOrFn=returnFocusRef.current,resolvedReturnFocusValue=typeof returnFocusValueOrFn==="function"?returnFocusValueOrFn(closeTypeRef.current):returnFocusValueOrFn;if(resolvedReturnFocusValue===void 0||resolvedReturnFocusValue===!1)return null;if(resolvedReturnFocusValue===null)resolvedReturnFocusValue=!0;if(typeof resolvedReturnFocusValue==="boolean"){let el=domReference||getPreviouslyFocusedElement();return el&&el.isConnected?el:null}let fallback=domReference||getPreviouslyFocusedElement();return resolveRef(resolvedReturnFocusValue)||fallback||null}return()=>{events.off("openchange",onOpenChangeLocal);let activeEl=activeElement(doc),insideElements=getResolvedInsideElements(),isFocusInsideFloatingTree=contains(floating,activeEl)||insideElements.some((element)=>element===activeEl||contains(element,activeEl))||tree&&getNodeChildren(tree.nodesRef.current,getNodeId(),!1).some((node)=>contains(node.context?.elements.floating,activeEl)),returnFocusValueOrFn=returnFocusRef.current,returnElement=getReturnElement();queueMicrotask(()=>{let tabbableReturnElement=getFirstTabbableElement(returnElement),hasExplicitReturnFocus=typeof returnFocusValueOrFn!=="boolean";if(returnFocusValueOrFn&&!preventReturnFocusRef.current&&isHTMLElement(tabbableReturnElement)&&(!hasExplicitReturnFocus&&tabbableReturnElement!==activeEl&&activeEl!==doc.body?isFocusInsideFloatingTree:!0))tabbableReturnElement.focus({preventScroll:!0});preventReturnFocusRef.current=!1})}},[disabled2,floating,floatingFocusElement,returnFocusRef,dataRef,events,tree,domReference,getNodeId,getResolvedInsideElements]),useIsoLayoutEffect(()=>{if(!isWebKit2||open||!floating)return;let activeEl=activeElement(ownerDocument(floating));if(!isHTMLElement(activeEl)||!isTypeableElement(activeEl))return;if(contains(floating,activeEl))activeEl.blur()},[open,floating]),useIsoLayoutEffect(()=>{if(disabled2||!portalContext)return;return portalContext.setFocusManagerState({modal,closeOnFocusOut,open,onOpenChange:store.setOpen,domReference}),()=>{portalContext.setFocusManagerState(null)}},[disabled2,portalContext,modal,open,store,closeOnFocusOut,domReference]),useIsoLayoutEffect(()=>{if(disabled2||!floatingFocusElement)return;return handleTabIndex(floatingFocusElement,orderRef),()=>{queueMicrotask(clearDisconnectedPreviouslyFocusedElements)}},[disabled2,floatingFocusElement,orderRef]);let shouldRenderGuards=!disabled2&&(modal?!isUntrappedTypeableCombobox:!0)&&(isInsidePortal||modal);return _jsxs2(React31.Fragment,{children:[shouldRenderGuards&&_jsx6(FocusGuard,{"data-type":"inside",ref:mergedBeforeGuardRef,onFocus:(event)=>{if(modal){let els=getTabbableContent();enqueueFocus(els[els.length-1])}else if(portalContext?.portalNode)if(preventReturnFocusRef.current=!1,isOutsideEvent(event,portalContext.portalNode))getNextTabbable(domReference)?.focus();else resolveRef(previousFocusableElement??portalContext.beforeOutsideRef)?.focus()}}),children,shouldRenderGuards&&_jsx6(FocusGuard,{"data-type":"inside",ref:mergedAfterGuardRef,onFocus:(event)=>{if(modal)enqueueFocus(getTabbableContent()[0]);else if(portalContext?.portalNode){if(closeOnFocusOut)preventReturnFocusRef.current=!0;if(isOutsideEvent(event,portalContext.portalNode))getPreviousTabbable(domReference)?.focus();else resolveRef(nextFocusableElement??portalContext.afterOutsideRef)?.focus()}}})]})}import*as React32 from"react";function useClick(context,props={}){let store="rootStore"in context?context.rootStore:context,dataRef=store.context.dataRef,{enabled=!0,event:eventOption="click",toggle=!0,ignoreMouse=!1,stickIfOpen=!0,touchOpenDelay=0,reason=exports_reason_parts.triggerPress}=props,pointerTypeRef=React32.useRef(void 0),frame=useAnimationFrame(),touchOpenTimeout=useTimeout(),reference=React32.useMemo(()=>({onPointerDown(event){pointerTypeRef.current=event.pointerType},onMouseDown(event){let pointerType=pointerTypeRef.current,nativeEvent=event.nativeEvent,open=store.select("open");if(event.button!==0||eventOption==="click"||isMouseLikePointerType(pointerType,!0)&&ignoreMouse)return;let openEvent=dataRef.current.openEvent,openEventType=openEvent?.type,hasClickedOnInactiveTrigger=store.select("domReferenceElement")!==event.currentTarget,nextOpen=open&&hasClickedOnInactiveTrigger||!(open&&toggle&&(openEvent&&stickIfOpen?openEventType==="click"||openEventType==="mousedown":!0)),target=getTarget(nativeEvent);if(isTypeableElement(target)){let details=createChangeEventDetails(reason,nativeEvent,target);if(nextOpen&&pointerType==="touch"&&touchOpenDelay>0)touchOpenTimeout.start(touchOpenDelay,()=>{store.setOpen(!0,details)});else store.setOpen(nextOpen,details);return}let eventCurrentTarget=event.currentTarget;frame.request(()=>{let details=createChangeEventDetails(reason,nativeEvent,eventCurrentTarget);if(nextOpen&&pointerType==="touch"&&touchOpenDelay>0)touchOpenTimeout.start(touchOpenDelay,()=>{store.setOpen(!0,details)});else store.setOpen(nextOpen,details)})},onClick(event){if(eventOption==="mousedown-only")return;let pointerType=pointerTypeRef.current;if(eventOption==="mousedown"&&pointerType){pointerTypeRef.current=void 0;return}if(isMouseLikePointerType(pointerType,!0)&&ignoreMouse)return;let open=store.select("open"),openEvent=dataRef.current.openEvent,hasClickedOnInactiveTrigger=store.select("domReferenceElement")!==event.currentTarget,nextOpen=open&&hasClickedOnInactiveTrigger||!(open&&toggle&&(openEvent&&stickIfOpen?isClickLikeEvent(openEvent):!0)),details=createChangeEventDetails(reason,event.nativeEvent,event.currentTarget);if(nextOpen&&pointerType==="touch"&&touchOpenDelay>0)touchOpenTimeout.start(touchOpenDelay,()=>{store.setOpen(!0,details)});else store.setOpen(nextOpen,details)},onKeyDown(){pointerTypeRef.current=void 0}}),[dataRef,eventOption,ignoreMouse,store,stickIfOpen,toggle,frame,touchOpenTimeout,touchOpenDelay,reason]);return React32.useMemo(()=>enabled?{reference}:EMPTY_OBJECT,[enabled,reference])}import*as React33 from"react";function createVirtualElement(domElement,data){let offsetX=null,offsetY=null,isAutoUpdateEvent=!1;return{contextElement:domElement||void 0,getBoundingClientRect(){let domRect=domElement?.getBoundingClientRect()||{width:0,height:0,x:0,y:0},isXAxis=data.axis==="x"||data.axis==="both",isYAxis=data.axis==="y"||data.axis==="both",canTrackCursorOnAutoUpdate=["mouseenter","mousemove"].includes(data.dataRef.current.openEvent?.type||"")&&data.pointerType!=="touch",width=domRect.width,height=domRect.height,x=domRect.x,y=domRect.y;if(offsetX==null&&data.x&&isXAxis)offsetX=domRect.x-data.x;if(offsetY==null&&data.y&&isYAxis)offsetY=domRect.y-data.y;if(x-=offsetX||0,y-=offsetY||0,width=0,height=0,!isAutoUpdateEvent||canTrackCursorOnAutoUpdate)width=data.axis==="y"?domRect.width:0,height=data.axis==="x"?domRect.height:0,x=isXAxis&&data.x!=null?data.x:x,y=isYAxis&&data.y!=null?data.y:y;else if(isAutoUpdateEvent&&!canTrackCursorOnAutoUpdate)height=data.axis==="x"?domRect.height:height,width=data.axis==="y"?domRect.width:width;return isAutoUpdateEvent=!0,{width,height,x,y,top:y,right:x+width,bottom:y+height,left:x}}}}function isMouseBasedEvent(event){return event!=null&&event.clientX!=null}function useClientPoint(context,props={}){let store="rootStore"in context?context.rootStore:context,open=store.useState("open"),floating=store.useState("floatingElement"),domReference=store.useState("domReferenceElement"),dataRef=store.context.dataRef,{enabled=!0,axis="both"}=props,initialRef=React33.useRef(!1),cleanupListenerRef=React33.useRef(null),[pointerType,setPointerType]=React33.useState(),[reactive,setReactive]=React33.useState([]),setReference=useStableCallback((newX,newY,referenceElement)=>{if(initialRef.current)return;if(dataRef.current.openEvent&&!isMouseBasedEvent(dataRef.current.openEvent))return;store.set("positionReference",createVirtualElement(referenceElement??domReference,{x:newX,y:newY,axis,dataRef,pointerType}))}),handleReferenceEnterOrMove=useStableCallback((event)=>{if(!open)setReference(event.clientX,event.clientY,event.currentTarget);else if(!cleanupListenerRef.current)setReactive([])}),openCheck=isMouseLikePointerType(pointerType)?floating:open,addListener=React33.useCallback(()=>{if(!openCheck||!enabled)return;let win=getWindow(floating);function handleMouseMove(event){let target=getTarget(event);if(!contains(floating,target))setReference(event.clientX,event.clientY);else cleanupListenerRef.current?.(),cleanupListenerRef.current=null}if(!dataRef.current.openEvent||isMouseBasedEvent(dataRef.current.openEvent)){let cleanup=()=>{cleanupListenerRef.current?.(),cleanupListenerRef.current=null};return cleanupListenerRef.current=addEventListener(win,"mousemove",handleMouseMove),cleanup}store.set("positionReference",domReference);return},[openCheck,enabled,floating,dataRef,domReference,store,setReference]);React33.useEffect(()=>{return addListener()},[addListener,reactive]),React33.useEffect(()=>{if(enabled&&!floating)initialRef.current=!1},[enabled,floating]),React33.useEffect(()=>{if(!enabled&&open)initialRef.current=!0},[enabled,open]);let reference=React33.useMemo(()=>{function setPointerTypeRef(event){setPointerType(event.pointerType)}return{onPointerDown:setPointerTypeRef,onPointerEnter:setPointerTypeRef,onMouseMove:handleReferenceEnterOrMove,onMouseEnter:handleReferenceEnterOrMove}},[handleReferenceEnterOrMove]);return React33.useMemo(()=>enabled?{reference,trigger:reference}:{},[enabled,reference])}import*as React34 from"react";var bubbleHandlerKeys={intentional:"onClick",sloppy:"onPointerDown"};function alwaysFalse(){return!1}function normalizeProp(normalizable){return{escapeKey:typeof normalizable==="boolean"?normalizable:normalizable?.escapeKey??!1,outsidePress:typeof normalizable==="boolean"?normalizable:normalizable?.outsidePress??!0}}function useDismiss(context,props={}){let store="rootStore"in context?context.rootStore:context,open=store.useState("open"),floatingElement=store.useState("floatingElement"),{dataRef}=store.context,{enabled=!0,escapeKey:escapeKey2=!0,outsidePress:outsidePressProp=!0,outsidePressEvent="sloppy",referencePress=alwaysFalse,referencePressEvent="sloppy",bubbles,externalTree}=props,tree=useFloatingTree(externalTree),outsidePressFn=useStableCallback(typeof outsidePressProp==="function"?outsidePressProp:()=>!1),outsidePress2=typeof outsidePressProp==="function"?outsidePressFn:outsidePressProp,outsidePressEnabled=outsidePress2!==!1,getOutsidePressEventProp=useStableCallback(()=>outsidePressEvent),pressStartedInsideRef=React34.useRef(!1),pressStartPreventedRef=React34.useRef(!1),suppressNextOutsideClickRef=React34.useRef(!1),{escapeKey:escapeKeyBubbles,outsidePress:outsidePressBubbles}=normalizeProp(bubbles),touchStateRef=React34.useRef(null),cancelDismissOnEndTimeout=useTimeout(),clearInsideReactTreeTimeout=useTimeout(),clearInsideReactTree=useStableCallback(()=>{clearInsideReactTreeTimeout.clear(),dataRef.current.insideReactTree=!1}),isComposingRef=React34.useRef(!1),currentPointerTypeRef=React34.useRef(""),isReferencePressEnabled=useStableCallback(referencePress),closeOnEscapeKeyDown=useStableCallback((event)=>{if(!open||!enabled||!escapeKey2||event.key!=="Escape")return;if(isComposingRef.current)return;let nodeId=dataRef.current.floatingContext?.nodeId,children=tree?getNodeChildren(tree.nodesRef.current,nodeId):[];if(!escapeKeyBubbles){if(children.length>0){let shouldDismiss=!0;if(children.forEach((child)=>{if(child.context?.open&&!child.context.dataRef.current.__escapeKeyBubbles)shouldDismiss=!1}),!shouldDismiss)return}}let native=isReactEvent(event)?event.nativeEvent:event,eventDetails=createChangeEventDetails(exports_reason_parts.escapeKey,native);if(store.setOpen(!1,eventDetails),!escapeKeyBubbles&&!eventDetails.isPropagationAllowed)event.stopPropagation()}),markInsideReactTree=useStableCallback(()=>{dataRef.current.insideReactTree=!0,clearInsideReactTreeTimeout.start(0,clearInsideReactTree)});React34.useEffect(()=>{if(!open||!enabled)return;dataRef.current.__escapeKeyBubbles=escapeKeyBubbles,dataRef.current.__outsidePressBubbles=outsidePressBubbles;let compositionTimeout=new Timeout,preventedPressSuppressionTimeout=new Timeout;function handleCompositionStart(){compositionTimeout.clear(),isComposingRef.current=!0}function handleCompositionEnd(){compositionTimeout.start(isWebKit()?5:0,()=>{isComposingRef.current=!1})}function suppressImmediateOutsideClickAfterPreventedStart(){suppressNextOutsideClickRef.current=!0,preventedPressSuppressionTimeout.start(0,()=>{suppressNextOutsideClickRef.current=!1})}function resetPressStartState(){pressStartedInsideRef.current=!1,pressStartPreventedRef.current=!1}function getOutsidePressEvent(){let type=currentPointerTypeRef.current,computedType=type==="pen"||!type?"mouse":type,outsidePressEventValue=getOutsidePressEventProp(),resolved=typeof outsidePressEventValue==="function"?outsidePressEventValue():outsidePressEventValue;if(typeof resolved==="string")return resolved;return resolved[computedType]}function shouldIgnoreEvent(event){let computedOutsidePressEvent=getOutsidePressEvent();return computedOutsidePressEvent==="intentional"&&event.type!=="click"||computedOutsidePressEvent==="sloppy"&&event.type==="click"}function isEventWithinFloatingTree(event){let nodeId=dataRef.current.floatingContext?.nodeId,targetIsInsideChildren=tree&&getNodeChildren(tree.nodesRef.current,nodeId).some((node)=>isEventTargetWithin(event,node.context?.elements.floating));return isEventTargetWithin(event,store.select("floatingElement"))||isEventTargetWithin(event,store.select("domReferenceElement"))||targetIsInsideChildren}function closeOnPressOutside(event){if(shouldIgnoreEvent(event)){clearInsideReactTree();return}if(dataRef.current.insideReactTree){clearInsideReactTree();return}let target=getTarget(event),inertSelector=`[${createAttribute("inert")}]`,targetRoot=isElement(target)?target.getRootNode():null,markers=Array.from((isShadowRoot(targetRoot)?targetRoot:ownerDocument(store.select("floatingElement"))).querySelectorAll(inertSelector)),triggers=store.context.triggerElements;if(target&&(triggers.hasElement(target)||triggers.hasMatchingElement((trigger)=>contains(trigger,target))))return;let targetRootAncestor=isElement(target)?target:null;while(targetRootAncestor&&!isLastTraversableNode(targetRootAncestor)){let nextParent=getParentNode(targetRootAncestor);if(isLastTraversableNode(nextParent)||!isElement(nextParent))break;targetRootAncestor=nextParent}if(markers.length&&isElement(target)&&!isRootElement(target)&&!contains(target,store.select("floatingElement"))&&markers.every((marker)=>!contains(targetRootAncestor,marker)))return;if(isHTMLElement(target)&&!("touches"in event)){let lastTraversableNode=isLastTraversableNode(target),style=getComputedStyle2(target),scrollRe=/auto|scroll/,isScrollableX=lastTraversableNode||scrollRe.test(style.overflowX),isScrollableY=lastTraversableNode||scrollRe.test(style.overflowY),canScrollX=isScrollableX&&target.clientWidth>0&&target.scrollWidth>target.clientWidth,canScrollY=isScrollableY&&target.clientHeight>0&&target.scrollHeight>target.clientHeight,isRTL=style.direction==="rtl",pressedVerticalScrollbar=canScrollY&&(isRTL?event.offsetX<=target.offsetWidth-target.clientWidth:event.offsetX>target.clientWidth),pressedHorizontalScrollbar=canScrollX&&event.offsetY>target.clientHeight;if(pressedVerticalScrollbar||pressedHorizontalScrollbar)return}if(isEventWithinFloatingTree(event))return;if(getOutsidePressEvent()==="intentional"&&suppressNextOutsideClickRef.current){preventedPressSuppressionTimeout.clear(),suppressNextOutsideClickRef.current=!1;return}if(typeof outsidePress2==="function"&&!outsidePress2(event))return;let nodeId=dataRef.current.floatingContext?.nodeId,children=tree?getNodeChildren(tree.nodesRef.current,nodeId):[];if(children.length>0){let shouldDismiss=!0;if(children.forEach((child)=>{if(child.context?.open&&!child.context.dataRef.current.__outsidePressBubbles)shouldDismiss=!1}),!shouldDismiss)return}store.setOpen(!1,createChangeEventDetails(exports_reason_parts.outsidePress,event)),clearInsideReactTree()}function handlePointerDown(event){if(getOutsidePressEvent()!=="sloppy"||event.pointerType==="touch"||!store.select("open")||!enabled||isEventTargetWithin(event,store.select("floatingElement"))||isEventTargetWithin(event,store.select("domReferenceElement")))return;closeOnPressOutside(event)}function handleTouchStart(event){if(getOutsidePressEvent()!=="sloppy"||!store.select("open")||!enabled||isEventTargetWithin(event,store.select("floatingElement"))||isEventTargetWithin(event,store.select("domReferenceElement")))return;let touch=event.touches[0];if(touch)touchStateRef.current={startTime:Date.now(),startX:touch.clientX,startY:touch.clientY,dismissOnTouchEnd:!1,dismissOnMouseDown:!0},cancelDismissOnEndTimeout.start(1000,()=>{if(touchStateRef.current)touchStateRef.current.dismissOnTouchEnd=!1,touchStateRef.current.dismissOnMouseDown=!1})}function addTargetEventListenerOnce(event,listener){let target=getTarget(event);if(!target)return;let unsubscribe2=addEventListener(target,event.type,()=>{listener(event),unsubscribe2()})}function handleTouchStartCapture(event){currentPointerTypeRef.current="touch",addTargetEventListenerOnce(event,handleTouchStart)}function closeOnPressOutsideCapture(event){if(cancelDismissOnEndTimeout.clear(),event.type==="pointerdown")currentPointerTypeRef.current=event.pointerType;if(event.type==="mousedown"&&touchStateRef.current&&!touchStateRef.current.dismissOnMouseDown)return;addTargetEventListenerOnce(event,(targetEvent)=>{if(targetEvent.type==="pointerdown")handlePointerDown(targetEvent);else closeOnPressOutside(targetEvent)})}function handlePressEndCapture(event){if(!pressStartedInsideRef.current)return;let pressStartedInsideDefaultPrevented=pressStartPreventedRef.current;if(resetPressStartState(),getOutsidePressEvent()!=="intentional")return;if(event.type==="pointercancel"){if(pressStartedInsideDefaultPrevented)suppressImmediateOutsideClickAfterPreventedStart();return}if(isEventWithinFloatingTree(event))return;if(pressStartedInsideDefaultPrevented){suppressImmediateOutsideClickAfterPreventedStart();return}if(typeof outsidePress2==="function"&&!outsidePress2(event))return;preventedPressSuppressionTimeout.clear(),suppressNextOutsideClickRef.current=!0,clearInsideReactTree()}function handleTouchMove(event){if(getOutsidePressEvent()!=="sloppy"||!touchStateRef.current||isEventTargetWithin(event,store.select("floatingElement"))||isEventTargetWithin(event,store.select("domReferenceElement")))return;let touch=event.touches[0];if(!touch)return;let deltaX=Math.abs(touch.clientX-touchStateRef.current.startX),deltaY=Math.abs(touch.clientY-touchStateRef.current.startY),distance=Math.sqrt(deltaX*deltaX+deltaY*deltaY);if(distance>5)touchStateRef.current.dismissOnTouchEnd=!0;if(distance>10)closeOnPressOutside(event),cancelDismissOnEndTimeout.clear(),touchStateRef.current=null}function handleTouchMoveCapture(event){addTargetEventListenerOnce(event,handleTouchMove)}function handleTouchEnd(event){if(getOutsidePressEvent()!=="sloppy"||!touchStateRef.current||isEventTargetWithin(event,store.select("floatingElement"))||isEventTargetWithin(event,store.select("domReferenceElement")))return;if(touchStateRef.current.dismissOnTouchEnd)closeOnPressOutside(event);cancelDismissOnEndTimeout.clear(),touchStateRef.current=null}function handleTouchEndCapture(event){addTargetEventListenerOnce(event,handleTouchEnd)}let doc=ownerDocument(floatingElement),unsubscribe=mergeCleanups(escapeKey2&&mergeCleanups(addEventListener(doc,"keydown",closeOnEscapeKeyDown),addEventListener(doc,"compositionstart",handleCompositionStart),addEventListener(doc,"compositionend",handleCompositionEnd)),outsidePressEnabled&&mergeCleanups(addEventListener(doc,"click",closeOnPressOutsideCapture,!0),addEventListener(doc,"pointerdown",closeOnPressOutsideCapture,!0),addEventListener(doc,"pointerup",handlePressEndCapture,!0),addEventListener(doc,"pointercancel",handlePressEndCapture,!0),addEventListener(doc,"mousedown",closeOnPressOutsideCapture,!0),addEventListener(doc,"mouseup",handlePressEndCapture,!0),addEventListener(doc,"touchstart",handleTouchStartCapture,!0),addEventListener(doc,"touchmove",handleTouchMoveCapture,!0),addEventListener(doc,"touchend",handleTouchEndCapture,!0)));return()=>{unsubscribe(),compositionTimeout.clear(),preventedPressSuppressionTimeout.clear(),resetPressStartState(),suppressNextOutsideClickRef.current=!1}},[dataRef,floatingElement,escapeKey2,outsidePressEnabled,outsidePress2,open,enabled,escapeKeyBubbles,outsidePressBubbles,closeOnEscapeKeyDown,clearInsideReactTree,getOutsidePressEventProp,tree,store,cancelDismissOnEndTimeout]),React34.useEffect(clearInsideReactTree,[outsidePress2,clearInsideReactTree]);let reference=React34.useMemo(()=>({onKeyDown:closeOnEscapeKeyDown,[bubbleHandlerKeys[referencePressEvent]]:(event)=>{if(!isReferencePressEnabled())return;store.setOpen(!1,createChangeEventDetails(exports_reason_parts.triggerPress,event.nativeEvent))},...referencePressEvent!=="intentional"&&{onClick(event){if(!isReferencePressEnabled())return;store.setOpen(!1,createChangeEventDetails(exports_reason_parts.triggerPress,event.nativeEvent))}}}),[closeOnEscapeKeyDown,store,referencePressEvent,isReferencePressEnabled]),markPressStartedInsideReactTree=useStableCallback((event)=>{if(!open||!enabled||event.button!==0)return;let target=getTarget(event.nativeEvent);if(!contains(store.select("floatingElement"),target))return;if(!pressStartedInsideRef.current)pressStartedInsideRef.current=!0,pressStartPreventedRef.current=!1}),markInsidePressStartPrevented=useStableCallback((event)=>{if(!open||!enabled)return;if(!(event.defaultPrevented||event.nativeEvent.defaultPrevented))return;if(pressStartedInsideRef.current)pressStartPreventedRef.current=!0}),floating=React34.useMemo(()=>({onKeyDown:closeOnEscapeKeyDown,onPointerDown:markInsidePressStartPrevented,onMouseDown:markInsidePressStartPrevented,onClickCapture:markInsideReactTree,onMouseDownCapture(event){markInsideReactTree(),markPressStartedInsideReactTree(event)},onPointerDownCapture(event){markInsideReactTree(),markPressStartedInsideReactTree(event)},onMouseUpCapture:markInsideReactTree,onTouchEndCapture:markInsideReactTree,onTouchMoveCapture:markInsideReactTree}),[closeOnEscapeKeyDown,markInsideReactTree,markPressStartedInsideReactTree,markInsidePressStartPrevented]);return React34.useMemo(()=>enabled?{reference,floating,trigger:reference}:{},[enabled,reference,floating])}import*as React42 from"react";function computeCoordsFromPlacement(_ref,placement,rtl){let{reference,floating}=_ref,sideAxis=getSideAxis(placement),alignmentAxis=getAlignmentAxis(placement),alignLength=getAxisLength(alignmentAxis),side=getSide(placement),isVertical=sideAxis==="y",commonX=reference.x+reference.width/2-floating.width/2,commonY=reference.y+reference.height/2-floating.height/2,commonAlign=reference[alignLength]/2-floating[alignLength]/2,coords;switch(side){case"top":coords={x:commonX,y:reference.y-floating.height};break;case"bottom":coords={x:commonX,y:reference.y+reference.height};break;case"right":coords={x:reference.x+reference.width,y:commonY};break;case"left":coords={x:reference.x-floating.width,y:commonY};break;default:coords={x:reference.x,y:reference.y}}switch(getAlignment(placement)){case"start":coords[alignmentAxis]-=commonAlign*(rtl&&isVertical?-1:1);break;case"end":coords[alignmentAxis]+=commonAlign*(rtl&&isVertical?-1:1);break}return coords}async function detectOverflow(state,options){var _await$platform$isEle;if(options===void 0)options={};let{x,y,platform:platform2,rects,elements,strategy}=state,{boundary="clippingAncestors",rootBoundary="viewport",elementContext="floating",altBoundary=!1,padding=0}=evaluate(options,state),paddingObject=getPaddingObject(padding),element=elements[altBoundary?elementContext==="floating"?"reference":"floating":elementContext],clippingClientRect=rectToClientRect(await platform2.getClippingRect({element:((_await$platform$isEle=await(platform2.isElement==null?void 0:platform2.isElement(element)))!=null?_await$platform$isEle:!0)?element:element.contextElement||await(platform2.getDocumentElement==null?void 0:platform2.getDocumentElement(elements.floating)),boundary,rootBoundary,strategy})),rect=elementContext==="floating"?{x,y,width:rects.floating.width,height:rects.floating.height}:rects.reference,offsetParent=await(platform2.getOffsetParent==null?void 0:platform2.getOffsetParent(elements.floating)),offsetScale=await(platform2.isElement==null?void 0:platform2.isElement(offsetParent))?await(platform2.getScale==null?void 0:platform2.getScale(offsetParent))||{x:1,y:1}:{x:1,y:1},elementClientRect=rectToClientRect(platform2.convertOffsetParentRelativeRectToViewportRelativeRect?await platform2.convertOffsetParentRelativeRectToViewportRelativeRect({elements,rect,offsetParent,strategy}):rect);return{top:(clippingClientRect.top-elementClientRect.top+paddingObject.top)/offsetScale.y,bottom:(elementClientRect.bottom-clippingClientRect.bottom+paddingObject.bottom)/offsetScale.y,left:(clippingClientRect.left-elementClientRect.left+paddingObject.left)/offsetScale.x,right:(elementClientRect.right-clippingClientRect.right+paddingObject.right)/offsetScale.x}}var MAX_RESET_COUNT=50,computePosition=async(reference,floating,config)=>{let{placement="bottom",strategy="absolute",middleware=[],platform:platform2}=config,platformWithDetectOverflow=platform2.detectOverflow?platform2:{...platform2,detectOverflow},rtl=await(platform2.isRTL==null?void 0:platform2.isRTL(floating)),rects=await platform2.getElementRects({reference,floating,strategy}),{x,y}=computeCoordsFromPlacement(rects,placement,rtl),statefulPlacement=placement,resetCount=0,middlewareData={};for(let i=0;i<middleware.length;i++){let currentMiddleware=middleware[i];if(!currentMiddleware)continue;let{name,fn}=currentMiddleware,{x:nextX,y:nextY,data,reset}=await fn({x,y,initialPlacement:placement,placement:statefulPlacement,strategy,middlewareData,rects,platform:platformWithDetectOverflow,elements:{reference,floating}});if(x=nextX!=null?nextX:x,y=nextY!=null?nextY:y,middlewareData[name]={...middlewareData[name],...data},reset&&resetCount<MAX_RESET_COUNT){if(resetCount++,typeof reset==="object"){if(reset.placement)statefulPlacement=reset.placement;if(reset.rects)rects=reset.rects===!0?await platform2.getElementRects({reference,floating,strategy}):reset.rects;({x,y}=computeCoordsFromPlacement(rects,statefulPlacement,rtl))}i=-1}}return{x,y,placement:statefulPlacement,strategy,middlewareData}};var flip=function(options){if(options===void 0)options={};return{name:"flip",options,async fn(state){var _middlewareData$arrow,_middlewareData$flip;let{placement,middlewareData,rects,initialPlacement,platform:platform2,elements}=state,{mainAxis:checkMainAxis=!0,crossAxis:checkCrossAxis=!0,fallbackPlacements:specifiedFallbackPlacements,fallbackStrategy="bestFit",fallbackAxisSideDirection="none",flipAlignment=!0,...detectOverflowOptions}=evaluate(options,state);if((_middlewareData$arrow=middlewareData.arrow)!=null&&_middlewareData$arrow.alignmentOffset)return{};let side=getSide(placement),initialSideAxis=getSideAxis(initialPlacement),isBasePlacement=getSide(initialPlacement)===initialPlacement,rtl=await(platform2.isRTL==null?void 0:platform2.isRTL(elements.floating)),fallbackPlacements=specifiedFallbackPlacements||(isBasePlacement||!flipAlignment?[getOppositePlacement(initialPlacement)]:getExpandedPlacements(initialPlacement)),hasFallbackAxisSideDirection=fallbackAxisSideDirection!=="none";if(!specifiedFallbackPlacements&&hasFallbackAxisSideDirection)fallbackPlacements.push(...getOppositeAxisPlacements(initialPlacement,flipAlignment,fallbackAxisSideDirection,rtl));let placements2=[initialPlacement,...fallbackPlacements],overflow=await platform2.detectOverflow(state,detectOverflowOptions),overflows=[],overflowsData=((_middlewareData$flip=middlewareData.flip)==null?void 0:_middlewareData$flip.overflows)||[];if(checkMainAxis)overflows.push(overflow[side]);if(checkCrossAxis){let sides2=getAlignmentSides(placement,rects,rtl);overflows.push(overflow[sides2[0]],overflow[sides2[1]])}if(overflowsData=[...overflowsData,{placement,overflows}],!overflows.every((side2)=>side2<=0)){var _middlewareData$flip2,_overflowsData$filter;let nextIndex=(((_middlewareData$flip2=middlewareData.flip)==null?void 0:_middlewareData$flip2.index)||0)+1,nextPlacement=placements2[nextIndex];if(nextPlacement){if(!(checkCrossAxis==="alignment"?initialSideAxis!==getSideAxis(nextPlacement):!1)||overflowsData.every((d)=>getSideAxis(d.placement)===initialSideAxis?d.overflows[0]>0:!0))return{data:{index:nextIndex,overflows:overflowsData},reset:{placement:nextPlacement}}}let resetPlacement=(_overflowsData$filter=overflowsData.filter((d)=>d.overflows[0]<=0).sort((a,b)=>a.overflows[1]-b.overflows[1])[0])==null?void 0:_overflowsData$filter.placement;if(!resetPlacement)switch(fallbackStrategy){case"bestFit":{var _overflowsData$filter2;let placement2=(_overflowsData$filter2=overflowsData.filter((d)=>{if(hasFallbackAxisSideDirection){let currentSideAxis=getSideAxis(d.placement);return currentSideAxis===initialSideAxis||currentSideAxis==="y"}return!0}).map((d)=>[d.placement,d.overflows.filter((overflow2)=>overflow2>0).reduce((acc,overflow2)=>acc+overflow2,0)]).sort((a,b)=>a[1]-b[1])[0])==null?void 0:_overflowsData$filter2[0];if(placement2)resetPlacement=placement2;break}case"initialPlacement":resetPlacement=initialPlacement;break}if(placement!==resetPlacement)return{reset:{placement:resetPlacement}}}return{}}}};function getSideOffsets(overflow,rect){return{top:overflow.top-rect.height,right:overflow.right-rect.width,bottom:overflow.bottom-rect.height,left:overflow.left-rect.width}}function isAnySideFullyClipped(overflow){return sides.some((side)=>overflow[side]>=0)}var hide=function(options){if(options===void 0)options={};return{name:"hide",options,async fn(state){let{rects,platform:platform2}=state,{strategy="referenceHidden",...detectOverflowOptions}=evaluate(options,state);switch(strategy){case"referenceHidden":{let overflow=await platform2.detectOverflow(state,{...detectOverflowOptions,elementContext:"reference"}),offsets=getSideOffsets(overflow,rects.reference);return{data:{referenceHiddenOffsets:offsets,referenceHidden:isAnySideFullyClipped(offsets)}}}case"escaped":{let overflow=await platform2.detectOverflow(state,{...detectOverflowOptions,altBoundary:!0}),offsets=getSideOffsets(overflow,rects.floating);return{data:{escapedOffsets:offsets,escaped:isAnySideFullyClipped(offsets)}}}default:return{}}}}};var originSides=new Set(["left","top"]);async function convertValueToCoords(state,options){let{placement,platform:platform2,elements}=state,rtl=await(platform2.isRTL==null?void 0:platform2.isRTL(elements.floating)),side=getSide(placement),alignment=getAlignment(placement),isVertical=getSideAxis(placement)==="y",mainAxisMulti=originSides.has(side)?-1:1,crossAxisMulti=rtl&&isVertical?-1:1,rawValue=evaluate(options,state),{mainAxis,crossAxis,alignmentAxis}=typeof rawValue==="number"?{mainAxis:rawValue,crossAxis:0,alignmentAxis:null}:{mainAxis:rawValue.mainAxis||0,crossAxis:rawValue.crossAxis||0,alignmentAxis:rawValue.alignmentAxis};if(alignment&&typeof alignmentAxis==="number")crossAxis=alignment==="end"?alignmentAxis*-1:alignmentAxis;return isVertical?{x:crossAxis*crossAxisMulti,y:mainAxis*mainAxisMulti}:{x:mainAxis*mainAxisMulti,y:crossAxis*crossAxisMulti}}var offset=function(options){if(options===void 0)options=0;return{name:"offset",options,async fn(state){var _middlewareData$offse,_middlewareData$arrow;let{x,y,placement,middlewareData}=state,diffCoords=await convertValueToCoords(state,options);if(placement===((_middlewareData$offse=middlewareData.offset)==null?void 0:_middlewareData$offse.placement)&&(_middlewareData$arrow=middlewareData.arrow)!=null&&_middlewareData$arrow.alignmentOffset)return{};return{x:x+diffCoords.x,y:y+diffCoords.y,data:{...diffCoords,placement}}}}},shift=function(options){if(options===void 0)options={};return{name:"shift",options,async fn(state){let{x,y,placement,platform:platform2}=state,{mainAxis:checkMainAxis=!0,crossAxis:checkCrossAxis=!1,limiter={fn:(_ref)=>{let{x:x2,y:y2}=_ref;return{x:x2,y:y2}}},...detectOverflowOptions}=evaluate(options,state),coords={x,y},overflow=await platform2.detectOverflow(state,detectOverflowOptions),crossAxis=getSideAxis(getSide(placement)),mainAxis=getOppositeAxis(crossAxis),mainAxisCoord=coords[mainAxis],crossAxisCoord=coords[crossAxis];if(checkMainAxis){let minSide=mainAxis==="y"?"top":"left",maxSide=mainAxis==="y"?"bottom":"right",min2=mainAxisCoord+overflow[minSide],max2=mainAxisCoord-overflow[maxSide];mainAxisCoord=clamp2(min2,mainAxisCoord,max2)}if(checkCrossAxis){let minSide=crossAxis==="y"?"top":"left",maxSide=crossAxis==="y"?"bottom":"right",min2=crossAxisCoord+overflow[minSide],max2=crossAxisCoord-overflow[maxSide];crossAxisCoord=clamp2(min2,crossAxisCoord,max2)}let limitedCoords=limiter.fn({...state,[mainAxis]:mainAxisCoord,[crossAxis]:crossAxisCoord});return{...limitedCoords,data:{x:limitedCoords.x-x,y:limitedCoords.y-y,enabled:{[mainAxis]:checkMainAxis,[crossAxis]:checkCrossAxis}}}}}},limitShift=function(options){if(options===void 0)options={};return{options,fn(state){let{x,y,placement,rects,middlewareData}=state,{offset:offset2=0,mainAxis:checkMainAxis=!0,crossAxis:checkCrossAxis=!0}=evaluate(options,state),coords={x,y},crossAxis=getSideAxis(placement),mainAxis=getOppositeAxis(crossAxis),mainAxisCoord=coords[mainAxis],crossAxisCoord=coords[crossAxis],rawOffset=evaluate(offset2,state),computedOffset=typeof rawOffset==="number"?{mainAxis:rawOffset,crossAxis:0}:{mainAxis:0,crossAxis:0,...rawOffset};if(checkMainAxis){let len=mainAxis==="y"?"height":"width",limitMin=rects.reference[mainAxis]-rects.floating[len]+computedOffset.mainAxis,limitMax=rects.reference[mainAxis]+rects.reference[len]-computedOffset.mainAxis;if(mainAxisCoord<limitMin)mainAxisCoord=limitMin;else if(mainAxisCoord>limitMax)mainAxisCoord=limitMax}if(checkCrossAxis){var _middlewareData$offse,_middlewareData$offse2;let len=mainAxis==="y"?"width":"height",isOriginSide=originSides.has(getSide(placement)),limitMin=rects.reference[crossAxis]-rects.floating[len]+(isOriginSide?((_middlewareData$offse=middlewareData.offset)==null?void 0:_middlewareData$offse[crossAxis])||0:0)+(isOriginSide?0:computedOffset.crossAxis),limitMax=rects.reference[crossAxis]+rects.reference[len]+(isOriginSide?0:((_middlewareData$offse2=middlewareData.offset)==null?void 0:_middlewareData$offse2[crossAxis])||0)-(isOriginSide?computedOffset.crossAxis:0);if(crossAxisCoord<limitMin)crossAxisCoord=limitMin;else if(crossAxisCoord>limitMax)crossAxisCoord=limitMax}return{[mainAxis]:mainAxisCoord,[crossAxis]:crossAxisCoord}}}},size=function(options){if(options===void 0)options={};return{name:"size",options,async fn(state){var _state$middlewareData,_state$middlewareData2;let{placement,rects,platform:platform2,elements}=state,{apply=()=>{},...detectOverflowOptions}=evaluate(options,state),overflow=await platform2.detectOverflow(state,detectOverflowOptions),side=getSide(placement),alignment=getAlignment(placement),isYAxis=getSideAxis(placement)==="y",{width,height}=rects.floating,heightSide,widthSide;if(side==="top"||side==="bottom")heightSide=side,widthSide=alignment===(await(platform2.isRTL==null?void 0:platform2.isRTL(elements.floating))?"start":"end")?"left":"right";else widthSide=side,heightSide=alignment==="end"?"top":"bottom";let maximumClippingHeight=height-overflow.top-overflow.bottom,maximumClippingWidth=width-overflow.left-overflow.right,overflowAvailableHeight=min(height-overflow[heightSide],maximumClippingHeight),overflowAvailableWidth=min(width-overflow[widthSide],maximumClippingWidth),noShift=!state.middlewareData.shift,availableHeight=overflowAvailableHeight,availableWidth=overflowAvailableWidth;if((_state$middlewareData=state.middlewareData.shift)!=null&&_state$middlewareData.enabled.x)availableWidth=maximumClippingWidth;if((_state$middlewareData2=state.middlewareData.shift)!=null&&_state$middlewareData2.enabled.y)availableHeight=maximumClippingHeight;if(noShift&&!alignment){let xMin=max(overflow.left,0),xMax=max(overflow.right,0),yMin=max(overflow.top,0),yMax=max(overflow.bottom,0);if(isYAxis)availableWidth=width-2*(xMin!==0||xMax!==0?xMin+xMax:max(overflow.left,overflow.right));else availableHeight=height-2*(yMin!==0||yMax!==0?yMin+yMax:max(overflow.top,overflow.bottom))}await apply({...state,availableWidth,availableHeight});let nextDimensions=await platform2.getDimensions(elements.floating);if(width!==nextDimensions.width||height!==nextDimensions.height)return{reset:{rects:!0}};return{}}}};function getCssDimensions(element){let css=getComputedStyle2(element),width=parseFloat(css.width)||0,height=parseFloat(css.height)||0,hasOffset=isHTMLElement(element),offsetWidth=hasOffset?element.offsetWidth:width,offsetHeight=hasOffset?element.offsetHeight:height,shouldFallback=round(width)!==offsetWidth||round(height)!==offsetHeight;if(shouldFallback)width=offsetWidth,height=offsetHeight;return{width,height,$:shouldFallback}}function unwrapElement(element){return!isElement(element)?element.contextElement:element}function getScale(element){let domElement=unwrapElement(element);if(!isHTMLElement(domElement))return createCoords(1);let rect=domElement.getBoundingClientRect(),{width,height,$}=getCssDimensions(domElement),x=($?round(rect.width):rect.width)/width,y=($?round(rect.height):rect.height)/height;if(!x||!Number.isFinite(x))x=1;if(!y||!Number.isFinite(y))y=1;return{x,y}}var noOffsets=createCoords(0);function getVisualOffsets(element){let win=getWindow(element);if(!isWebKit()||!win.visualViewport)return noOffsets;return{x:win.visualViewport.offsetLeft,y:win.visualViewport.offsetTop}}function shouldAddVisualOffsets(element,isFixed,floatingOffsetParent){if(isFixed===void 0)isFixed=!1;if(!floatingOffsetParent||isFixed&&floatingOffsetParent!==getWindow(element))return!1;return isFixed}function getBoundingClientRect(element,includeScale,isFixedStrategy,offsetParent){if(includeScale===void 0)includeScale=!1;if(isFixedStrategy===void 0)isFixedStrategy=!1;let clientRect=element.getBoundingClientRect(),domElement=unwrapElement(element),scale=createCoords(1);if(includeScale)if(offsetParent){if(isElement(offsetParent))scale=getScale(offsetParent)}else scale=getScale(element);let visualOffsets=shouldAddVisualOffsets(domElement,isFixedStrategy,offsetParent)?getVisualOffsets(domElement):createCoords(0),x=(clientRect.left+visualOffsets.x)/scale.x,y=(clientRect.top+visualOffsets.y)/scale.y,width=clientRect.width/scale.x,height=clientRect.height/scale.y;if(domElement){let win=getWindow(domElement),offsetWin=offsetParent&&isElement(offsetParent)?getWindow(offsetParent):offsetParent,currentWin=win,currentIFrame=getFrameElement(currentWin);while(currentIFrame&&offsetParent&&offsetWin!==currentWin){let iframeScale=getScale(currentIFrame),iframeRect=currentIFrame.getBoundingClientRect(),css=getComputedStyle2(currentIFrame),left=iframeRect.left+(currentIFrame.clientLeft+parseFloat(css.paddingLeft))*iframeScale.x,top=iframeRect.top+(currentIFrame.clientTop+parseFloat(css.paddingTop))*iframeScale.y;x*=iframeScale.x,y*=iframeScale.y,width*=iframeScale.x,height*=iframeScale.y,x+=left,y+=top,currentWin=getWindow(currentIFrame),currentIFrame=getFrameElement(currentWin)}}return rectToClientRect({width,height,x,y})}function getWindowScrollBarX(element,rect){let leftScroll=getNodeScroll(element).scrollLeft;if(!rect)return getBoundingClientRect(getDocumentElement(element)).left+leftScroll;return rect.left+leftScroll}function getHTMLOffset(documentElement,scroll){let htmlRect=documentElement.getBoundingClientRect(),x=htmlRect.left+scroll.scrollLeft-getWindowScrollBarX(documentElement,htmlRect),y=htmlRect.top+scroll.scrollTop;return{x,y}}function convertOffsetParentRelativeRectToViewportRelativeRect(_ref){let{elements,rect,offsetParent,strategy}=_ref,isFixed=strategy==="fixed",documentElement=getDocumentElement(offsetParent),topLayer=elements?isTopLayer(elements.floating):!1;if(offsetParent===documentElement||topLayer&&isFixed)return rect;let scroll={scrollLeft:0,scrollTop:0},scale=createCoords(1),offsets=createCoords(0),isOffsetParentAnElement=isHTMLElement(offsetParent);if(isOffsetParentAnElement||!isOffsetParentAnElement&&!isFixed){if(getNodeName(offsetParent)!=="body"||isOverflowElement(documentElement))scroll=getNodeScroll(offsetParent);if(isOffsetParentAnElement){let offsetRect=getBoundingClientRect(offsetParent);scale=getScale(offsetParent),offsets.x=offsetRect.x+offsetParent.clientLeft,offsets.y=offsetRect.y+offsetParent.clientTop}}let htmlOffset=documentElement&&!isOffsetParentAnElement&&!isFixed?getHTMLOffset(documentElement,scroll):createCoords(0);return{width:rect.width*scale.x,height:rect.height*scale.y,x:rect.x*scale.x-scroll.scrollLeft*scale.x+offsets.x+htmlOffset.x,y:rect.y*scale.y-scroll.scrollTop*scale.y+offsets.y+htmlOffset.y}}function getClientRects(element){return Array.from(element.getClientRects())}function getDocumentRect(element){let html=getDocumentElement(element),scroll=getNodeScroll(element),body=element.ownerDocument.body,width=max(html.scrollWidth,html.clientWidth,body.scrollWidth,body.clientWidth),height=max(html.scrollHeight,html.clientHeight,body.scrollHeight,body.clientHeight),x=-scroll.scrollLeft+getWindowScrollBarX(element),y=-scroll.scrollTop;if(getComputedStyle2(body).direction==="rtl")x+=max(html.clientWidth,body.clientWidth)-width;return{width,height,x,y}}var SCROLLBAR_MAX=25;function getViewportRect(element,strategy){let win=getWindow(element),html=getDocumentElement(element),visualViewport=win.visualViewport,width=html.clientWidth,height=html.clientHeight,x=0,y=0;if(visualViewport){width=visualViewport.width,height=visualViewport.height;let visualViewportBased=isWebKit();if(!visualViewportBased||visualViewportBased&&strategy==="fixed")x=visualViewport.offsetLeft,y=visualViewport.offsetTop}let windowScrollbarX=getWindowScrollBarX(html);if(windowScrollbarX<=0){let doc=html.ownerDocument,body=doc.body,bodyStyles=getComputedStyle(body),bodyMarginInline=doc.compatMode==="CSS1Compat"?parseFloat(bodyStyles.marginLeft)+parseFloat(bodyStyles.marginRight)||0:0,clippingStableScrollbarWidth=Math.abs(html.clientWidth-body.clientWidth-bodyMarginInline);if(clippingStableScrollbarWidth<=SCROLLBAR_MAX)width-=clippingStableScrollbarWidth}else if(windowScrollbarX<=SCROLLBAR_MAX)width+=windowScrollbarX;return{width,height,x,y}}function getInnerBoundingClientRect(element,strategy){let clientRect=getBoundingClientRect(element,!0,strategy==="fixed"),top=clientRect.top+element.clientTop,left=clientRect.left+element.clientLeft,scale=isHTMLElement(element)?getScale(element):createCoords(1),width=element.clientWidth*scale.x,height=element.clientHeight*scale.y,x=left*scale.x,y=top*scale.y;return{width,height,x,y}}function getClientRectFromClippingAncestor(element,clippingAncestor,strategy){let rect;if(clippingAncestor==="viewport")rect=getViewportRect(element,strategy);else if(clippingAncestor==="document")rect=getDocumentRect(getDocumentElement(element));else if(isElement(clippingAncestor))rect=getInnerBoundingClientRect(clippingAncestor,strategy);else{let visualOffsets=getVisualOffsets(element);rect={x:clippingAncestor.x-visualOffsets.x,y:clippingAncestor.y-visualOffsets.y,width:clippingAncestor.width,height:clippingAncestor.height}}return rectToClientRect(rect)}function hasFixedPositionAncestor(element,stopNode){let parentNode=getParentNode(element);if(parentNode===stopNode||!isElement(parentNode)||isLastTraversableNode(parentNode))return!1;return getComputedStyle2(parentNode).position==="fixed"||hasFixedPositionAncestor(parentNode,stopNode)}function getClippingElementAncestors(element,cache){let cachedResult=cache.get(element);if(cachedResult)return cachedResult;let result=getOverflowAncestors(element,[],!1).filter((el)=>isElement(el)&&getNodeName(el)!=="body"),currentContainingBlockComputedStyle=null,elementIsFixed=getComputedStyle2(element).position==="fixed",currentNode=elementIsFixed?getParentNode(element):element;while(isElement(currentNode)&&!isLastTraversableNode(currentNode)){let computedStyle=getComputedStyle2(currentNode),currentNodeIsContaining=isContainingBlock(currentNode);if(!currentNodeIsContaining&&computedStyle.position==="fixed")currentContainingBlockComputedStyle=null;if(elementIsFixed?!currentNodeIsContaining&&!currentContainingBlockComputedStyle:!currentNodeIsContaining&&computedStyle.position==="static"&&!!currentContainingBlockComputedStyle&&(currentContainingBlockComputedStyle.position==="absolute"||currentContainingBlockComputedStyle.position==="fixed")||isOverflowElement(currentNode)&&!currentNodeIsContaining&&hasFixedPositionAncestor(element,currentNode))result=result.filter((ancestor)=>ancestor!==currentNode);else currentContainingBlockComputedStyle=computedStyle;currentNode=getParentNode(currentNode)}return cache.set(element,result),result}function getClippingRect(_ref){let{element,boundary,rootBoundary,strategy}=_ref,clippingAncestors=[...boundary==="clippingAncestors"?isTopLayer(element)?[]:getClippingElementAncestors(element,this._c):[].concat(boundary),rootBoundary],firstRect=getClientRectFromClippingAncestor(element,clippingAncestors[0],strategy),top=firstRect.top,right=firstRect.right,bottom=firstRect.bottom,left=firstRect.left;for(let i=1;i<clippingAncestors.length;i++){let rect=getClientRectFromClippingAncestor(element,clippingAncestors[i],strategy);top=max(rect.top,top),right=min(rect.right,right),bottom=min(rect.bottom,bottom),left=max(rect.left,left)}return{width:right-left,height:bottom-top,x:left,y:top}}function getDimensions(element){let{width,height}=getCssDimensions(element);return{width,height}}function getRectRelativeToOffsetParent(element,offsetParent,strategy){let isOffsetParentAnElement=isHTMLElement(offsetParent),documentElement=getDocumentElement(offsetParent),isFixed=strategy==="fixed",rect=getBoundingClientRect(element,!0,isFixed,offsetParent),scroll={scrollLeft:0,scrollTop:0},offsets=createCoords(0);function setLeftRTLScrollbarOffset(){offsets.x=getWindowScrollBarX(documentElement)}if(isOffsetParentAnElement||!isOffsetParentAnElement&&!isFixed){if(getNodeName(offsetParent)!=="body"||isOverflowElement(documentElement))scroll=getNodeScroll(offsetParent);if(isOffsetParentAnElement){let offsetRect=getBoundingClientRect(offsetParent,!0,isFixed,offsetParent);offsets.x=offsetRect.x+offsetParent.clientLeft,offsets.y=offsetRect.y+offsetParent.clientTop}else if(documentElement)setLeftRTLScrollbarOffset()}if(isFixed&&!isOffsetParentAnElement&&documentElement)setLeftRTLScrollbarOffset();let htmlOffset=documentElement&&!isOffsetParentAnElement&&!isFixed?getHTMLOffset(documentElement,scroll):createCoords(0),x=rect.left+scroll.scrollLeft-offsets.x-htmlOffset.x,y=rect.top+scroll.scrollTop-offsets.y-htmlOffset.y;return{x,y,width:rect.width,height:rect.height}}function isStaticPositioned(element){return getComputedStyle2(element).position==="static"}function getTrueOffsetParent(element,polyfill){if(!isHTMLElement(element)||getComputedStyle2(element).position==="fixed")return null;if(polyfill)return polyfill(element);let rawOffsetParent=element.offsetParent;if(getDocumentElement(element)===rawOffsetParent)rawOffsetParent=rawOffsetParent.ownerDocument.body;return rawOffsetParent}function getOffsetParent(element,polyfill){let win=getWindow(element);if(isTopLayer(element))return win;if(!isHTMLElement(element)){let svgOffsetParent=getParentNode(element);while(svgOffsetParent&&!isLastTraversableNode(svgOffsetParent)){if(isElement(svgOffsetParent)&&!isStaticPositioned(svgOffsetParent))return svgOffsetParent;svgOffsetParent=getParentNode(svgOffsetParent)}return win}let offsetParent=getTrueOffsetParent(element,polyfill);while(offsetParent&&isTableElement(offsetParent)&&isStaticPositioned(offsetParent))offsetParent=getTrueOffsetParent(offsetParent,polyfill);if(offsetParent&&isLastTraversableNode(offsetParent)&&isStaticPositioned(offsetParent)&&!isContainingBlock(offsetParent))return win;return offsetParent||getContainingBlock(element)||win}var getElementRects=async function(data){let getOffsetParentFn=this.getOffsetParent||getOffsetParent,getDimensionsFn=this.getDimensions,floatingDimensions=await getDimensionsFn(data.floating);return{reference:getRectRelativeToOffsetParent(data.reference,await getOffsetParentFn(data.floating),data.strategy),floating:{x:0,y:0,width:floatingDimensions.width,height:floatingDimensions.height}}};function isRTL(element){return getComputedStyle2(element).direction==="rtl"}var platform2={convertOffsetParentRelativeRectToViewportRelativeRect,getDocumentElement,getClippingRect,getOffsetParent,getElementRects,getClientRects,getDimensions,getScale,isElement,isRTL};function rectsAreEqual(a,b){return a.x===b.x&&a.y===b.y&&a.width===b.width&&a.height===b.height}function observeMove(element,onMove){let io=null,timeoutId,root=getDocumentElement(element);function cleanup(){var _io;clearTimeout(timeoutId),(_io=io)==null||_io.disconnect(),io=null}function refresh(skip,threshold){if(skip===void 0)skip=!1;if(threshold===void 0)threshold=1;cleanup();let elementRectForRootMargin=element.getBoundingClientRect(),{left,top,width,height}=elementRectForRootMargin;if(!skip)onMove();if(!width||!height)return;let insetTop=floor(top),insetRight=floor(root.clientWidth-(left+width)),insetBottom=floor(root.clientHeight-(top+height)),insetLeft=floor(left),options={rootMargin:-insetTop+"px "+-insetRight+"px "+-insetBottom+"px "+-insetLeft+"px",threshold:max(0,min(1,threshold))||1},isFirstUpdate=!0;function handleObserve(entries){let ratio=entries[0].intersectionRatio;if(ratio!==threshold){if(!isFirstUpdate)return refresh();if(!ratio)timeoutId=setTimeout(()=>{refresh(!1,0.0000001)},1000);else refresh(!1,ratio)}if(ratio===1&&!rectsAreEqual(elementRectForRootMargin,element.getBoundingClientRect()))refresh();isFirstUpdate=!1}try{io=new IntersectionObserver(handleObserve,{...options,root:root.ownerDocument})}catch(_e){io=new IntersectionObserver(handleObserve,options)}io.observe(element)}return refresh(!0),cleanup}function autoUpdate(reference,floating,update2,options){if(options===void 0)options={};let{ancestorScroll=!0,ancestorResize=!0,elementResize=typeof ResizeObserver==="function",layoutShift=typeof IntersectionObserver==="function",animationFrame=!1}=options,referenceEl=unwrapElement(reference),ancestors=ancestorScroll||ancestorResize?[...referenceEl?getOverflowAncestors(referenceEl):[],...floating?getOverflowAncestors(floating):[]]:[];ancestors.forEach((ancestor)=>{ancestorScroll&&ancestor.addEventListener("scroll",update2,{passive:!0}),ancestorResize&&ancestor.addEventListener("resize",update2)});let cleanupIo=referenceEl&&layoutShift?observeMove(referenceEl,update2):null,reobserveFrame=-1,resizeObserver=null;if(elementResize){if(resizeObserver=new ResizeObserver((_ref)=>{let[firstEntry]=_ref;if(firstEntry&&firstEntry.target===referenceEl&&resizeObserver&&floating)resizeObserver.unobserve(floating),cancelAnimationFrame(reobserveFrame),reobserveFrame=requestAnimationFrame(()=>{var _resizeObserver;(_resizeObserver=resizeObserver)==null||_resizeObserver.observe(floating)});update2()}),referenceEl&&!animationFrame)resizeObserver.observe(referenceEl);if(floating)resizeObserver.observe(floating)}let frameId,prevRefRect=animationFrame?getBoundingClientRect(reference):null;if(animationFrame)frameLoop();function frameLoop(){let nextRefRect=getBoundingClientRect(reference);if(prevRefRect&&!rectsAreEqual(prevRefRect,nextRefRect))update2();prevRefRect=nextRefRect,frameId=requestAnimationFrame(frameLoop)}return update2(),()=>{var _resizeObserver2;if(ancestors.forEach((ancestor)=>{ancestorScroll&&ancestor.removeEventListener("scroll",update2),ancestorResize&&ancestor.removeEventListener("resize",update2)}),cleanupIo==null||cleanupIo(),(_resizeObserver2=resizeObserver)==null||_resizeObserver2.disconnect(),resizeObserver=null,animationFrame)cancelAnimationFrame(frameId)}}var offset2=offset;var shift2=shift,flip2=flip,size2=size,hide2=hide;var limitShift2=limitShift,computePosition2=(reference,floating,options)=>{let cache=new Map,mergedOptions={platform:platform2,...options},platformWithCache={...mergedOptions.platform,_c:cache};return computePosition(reference,floating,{...mergedOptions,platform:platformWithCache})};import*as React35 from"react";import{useLayoutEffect as useLayoutEffect4}from"react";import*as ReactDOM3 from"react-dom";var isClient=typeof document<"u",noop2=function(){},index=isClient?useLayoutEffect4:noop2;function deepEqual(a,b){if(a===b)return!0;if(typeof a!==typeof b)return!1;if(typeof a==="function"&&a.toString()===b.toString())return!0;let length,i,keys;if(a&&b&&typeof a==="object"){if(Array.isArray(a)){if(length=a.length,length!==b.length)return!1;for(i=length;i--!==0;)if(!deepEqual(a[i],b[i]))return!1;return!0}if(keys=Object.keys(a),length=keys.length,length!==Object.keys(b).length)return!1;for(i=length;i--!==0;)if(!{}.hasOwnProperty.call(b,keys[i]))return!1;for(i=length;i--!==0;){let key=keys[i];if(key==="_owner"&&a.$$typeof)continue;if(!deepEqual(a[key],b[key]))return!1}return!0}return a!==a&&b!==b}function getDPR(element){if(typeof window>"u")return 1;return(element.ownerDocument.defaultView||window).devicePixelRatio||1}function roundByDPR(element,value){let dpr=getDPR(element);return Math.round(value*dpr)/dpr}function useLatestRef(value){let ref=React35.useRef(value);return index(()=>{ref.current=value}),ref}function useFloating(options){if(options===void 0)options={};let{placement="bottom",strategy="absolute",middleware=[],platform:platform3,elements:{reference:externalReference,floating:externalFloating}={},transform=!0,whileElementsMounted,open}=options,[data,setData]=React35.useState({x:0,y:0,strategy,placement,middlewareData:{},isPositioned:!1}),[latestMiddleware,setLatestMiddleware]=React35.useState(middleware);if(!deepEqual(latestMiddleware,middleware))setLatestMiddleware(middleware);let[_reference,_setReference]=React35.useState(null),[_floating,_setFloating]=React35.useState(null),setReference=React35.useCallback((node)=>{if(node!==referenceRef.current)referenceRef.current=node,_setReference(node)},[]),setFloating=React35.useCallback((node)=>{if(node!==floatingRef.current)floatingRef.current=node,_setFloating(node)},[]),referenceEl=externalReference||_reference,floatingEl=externalFloating||_floating,referenceRef=React35.useRef(null),floatingRef=React35.useRef(null),dataRef=React35.useRef(data),hasWhileElementsMounted=whileElementsMounted!=null,whileElementsMountedRef=useLatestRef(whileElementsMounted),platformRef=useLatestRef(platform3),openRef=useLatestRef(open),update2=React35.useCallback(()=>{if(!referenceRef.current||!floatingRef.current)return;let config={placement,strategy,middleware:latestMiddleware};if(platformRef.current)config.platform=platformRef.current;computePosition2(referenceRef.current,floatingRef.current,config).then((data2)=>{let fullData={...data2,isPositioned:openRef.current!==!1};if(isMountedRef.current&&!deepEqual(dataRef.current,fullData))dataRef.current=fullData,ReactDOM3.flushSync(()=>{setData(fullData)})})},[latestMiddleware,placement,strategy,platformRef,openRef]);index(()=>{if(open===!1&&dataRef.current.isPositioned)dataRef.current.isPositioned=!1,setData((data2)=>({...data2,isPositioned:!1}))},[open]);let isMountedRef=React35.useRef(!1);index(()=>{return isMountedRef.current=!0,()=>{isMountedRef.current=!1}},[]),index(()=>{if(referenceEl)referenceRef.current=referenceEl;if(floatingEl)floatingRef.current=floatingEl;if(referenceEl&&floatingEl){if(whileElementsMountedRef.current)return whileElementsMountedRef.current(referenceEl,floatingEl,update2);update2()}},[referenceEl,floatingEl,update2,whileElementsMountedRef,hasWhileElementsMounted]);let refs=React35.useMemo(()=>({reference:referenceRef,floating:floatingRef,setReference,setFloating}),[setReference,setFloating]),elements=React35.useMemo(()=>({reference:referenceEl,floating:floatingEl}),[referenceEl,floatingEl]),floatingStyles=React35.useMemo(()=>{let initialStyles={position:strategy,left:0,top:0};if(!elements.floating)return initialStyles;let x=roundByDPR(elements.floating,data.x),y=roundByDPR(elements.floating,data.y);if(transform)return{...initialStyles,transform:"translate("+x+"px, "+y+"px)",...getDPR(elements.floating)>=1.5&&{willChange:"transform"}};return{position:strategy,left:x,top:y}},[strategy,transform,elements.floating,data.x,data.y]);return React35.useMemo(()=>({...data,update:update2,refs,elements,floatingStyles}),[data,update2,refs,elements,floatingStyles])}var offset3=(options,deps)=>{let result=offset2(options);return{name:result.name,fn:result.fn,options:[options,deps]}},shift3=(options,deps)=>{let result=shift2(options);return{name:result.name,fn:result.fn,options:[options,deps]}},limitShift3=(options,deps)=>{return{fn:limitShift2(options).fn,options:[options,deps]}},flip3=(options,deps)=>{let result=flip2(options);return{name:result.name,fn:result.fn,options:[options,deps]}},size3=(options,deps)=>{let result=size2(options);return{name:result.name,fn:result.fn,options:[options,deps]}};var hide3=(options,deps)=>{let result=hide2(options);return{name:result.name,fn:result.fn,options:[options,deps]}};var createSelector=(a,b,c,d,e,f,...other)=>{if(other.length>0)throw Error(formatErrorMessage_default(1));let selector;if(a&&b&&c&&d&&e&&f)selector=(state,a1,a2,a3)=>{let va=a(state,a1,a2,a3),vb=b(state,a1,a2,a3),vc=c(state,a1,a2,a3),vd=d(state,a1,a2,a3),ve=e(state,a1,a2,a3);return f(va,vb,vc,vd,ve,a1,a2,a3)};else if(a&&b&&c&&d&&e)selector=(state,a1,a2,a3)=>{let va=a(state,a1,a2,a3),vb=b(state,a1,a2,a3),vc=c(state,a1,a2,a3),vd=d(state,a1,a2,a3);return e(va,vb,vc,vd,a1,a2,a3)};else if(a&&b&&c&&d)selector=(state,a1,a2,a3)=>{let va=a(state,a1,a2,a3),vb=b(state,a1,a2,a3),vc=c(state,a1,a2,a3);return d(va,vb,vc,a1,a2,a3)};else if(a&&b&&c)selector=(state,a1,a2,a3)=>{let va=a(state,a1,a2,a3),vb=b(state,a1,a2,a3);return c(va,vb,a1,a2,a3)};else if(a&&b)selector=(state,a1,a2,a3)=>{let va=a(state,a1,a2,a3);return b(va,a1,a2,a3)};else if(a)selector=a;else throw Error("Missing arguments");return selector};var import_shim=__toESM(require_use_sync_external_store_shim_production(),1);import*as React39 from"react";import*as React37 from"react";var shim=require_use_sync_external_store_shim_production();function is(x,y){return x===y&&(x!==0||1/x===1/y)||x!==x&&y!==y}var objectIs=typeof Object.is==="function"?Object.is:is,useSyncExternalStore=shim.useSyncExternalStore,useRef16=React37.useRef,useEffect15=React37.useEffect,useMemo12=React37.useMemo,useDebugValue2=React37.useDebugValue;var $useSyncExternalStoreWithSelector=function(subscribe,getSnapshot,getServerSnapshot,selector,isEqual){var instRef=useRef16(null);if(instRef.current===null){var inst={hasValue:!1,value:null};instRef.current=inst}else inst=instRef.current;instRef=useMemo12(function(){function memoizedSelector(nextSnapshot){if(!hasMemo){if(hasMemo=!0,memoizedSnapshot=nextSnapshot,nextSnapshot=selector(nextSnapshot),isEqual!==void 0&&inst.hasValue){var currentSelection=inst.value;if(isEqual(currentSelection,nextSnapshot))return memoizedSelection=currentSelection}return memoizedSelection=nextSnapshot}if(currentSelection=memoizedSelection,objectIs(memoizedSnapshot,nextSnapshot))return currentSelection;var nextSelection=selector(nextSnapshot);if(isEqual!==void 0&&isEqual(currentSelection,nextSelection))return memoizedSnapshot=nextSnapshot,currentSelection;return memoizedSnapshot=nextSnapshot,memoizedSelection=nextSelection}var hasMemo=!1,memoizedSnapshot,memoizedSelection,maybeGetServerSnapshot=getServerSnapshot===void 0?null:getServerSnapshot;return[function(){return memoizedSelector(getSnapshot())},maybeGetServerSnapshot===null?void 0:function(){return memoizedSelector(maybeGetServerSnapshot())}]},[getSnapshot,getServerSnapshot,selector,isEqual]);var value=useSyncExternalStore(subscribe,instRef[0],instRef[1]);return useEffect15(function(){inst.hasValue=!0,inst.value=value},[value]),useDebugValue2(value),value};import*as React38 from"react";var hooks=[],currentInstance=void 0;function getInstance(){return currentInstance}function register(hook){hooks.push(hook)}function fastComponent(fn){let FastComponent=(props,forwardedRef)=>{let instance=useRefWithInit(createInstance).current,result;try{currentInstance=instance;for(let hook of hooks)hook.before(instance);result=fn(props,forwardedRef);for(let hook of hooks)hook.after(instance);instance.didInitialize=!0}finally{currentInstance=void 0}return result};return FastComponent.displayName=fn.displayName||fn.name,FastComponent}function fastComponentRef(fn){return React38.forwardRef(fastComponent(fn))}function createInstance(){return{didInitialize:!1}}var canUseRawUseSyncExternalStore=isReactVersionAtLeast(19),useStoreImplementation=canUseRawUseSyncExternalStore?useStoreFast:useStoreLegacy;function useStore(store,selector,a1,a2,a3){return useStoreImplementation(store,selector,a1,a2,a3)}function useStoreR19(store,selector,a1,a2,a3){let getSelection=React39.useCallback(()=>selector(store.getSnapshot(),a1,a2,a3),[store,selector,a1,a2,a3]);return import_shim.useSyncExternalStore(store.subscribe,getSelection,getSelection)}register({before(instance){if(instance.syncIndex=0,!instance.didInitialize)instance.syncTick=1,instance.syncHooks=[],instance.didChangeStore=!0,instance.getSnapshot=()=>{let didChange2=!1;for(let i=0;i<instance.syncHooks.length;i+=1){let hook=instance.syncHooks[i],value=hook.selector(hook.store.state,hook.a1,hook.a2,hook.a3);if(hook.didChange||!Object.is(hook.value,value))didChange2=!0,hook.value=value,hook.didChange=!1}if(didChange2)instance.syncTick+=1;return instance.syncTick}},after(instance){if(instance.syncHooks.length>0){if(instance.didChangeStore)instance.didChangeStore=!1,instance.subscribe=(onStoreChange)=>{let stores=new Set;for(let hook of instance.syncHooks)stores.add(hook.store);let unsubscribes=[];for(let store of stores)unsubscribes.push(store.subscribe(onStoreChange));return()=>{for(let unsubscribe of unsubscribes)unsubscribe()}};import_shim.useSyncExternalStore(instance.subscribe,instance.getSnapshot,instance.getSnapshot)}}});function useStoreFast(store,selector,a1,a2,a3){let instance=getInstance();if(!instance)return useStoreR19(store,selector,a1,a2,a3);let index2=instance.syncIndex;instance.syncIndex+=1;let hook;if(!instance.didInitialize)hook={store,selector,a1,a2,a3,value:selector(store.getSnapshot(),a1,a2,a3),didChange:!1},instance.syncHooks.push(hook);else if(hook=instance.syncHooks[index2],hook.store!==store||hook.selector!==selector||!Object.is(hook.a1,a1)||!Object.is(hook.a2,a2)||!Object.is(hook.a3,a3)){if(hook.store!==store)instance.didChangeStore=!0;hook.store=store,hook.selector=selector,hook.a1=a1,hook.a2=a2,hook.a3=a3,hook.didChange=!0}return hook.value}function useStoreLegacy(store,selector,a1,a2,a3){return $useSyncExternalStoreWithSelector(store.subscribe,store.getSnapshot,store.getSnapshot,(state)=>selector(state,a1,a2,a3))}class Store{constructor(state){this.state=state,this.listeners=new Set,this.updateTick=0}subscribe=(fn)=>{return this.listeners.add(fn),()=>{this.listeners.delete(fn)}};getSnapshot=()=>{return this.state};setState(newState){if(this.state===newState)return;this.state=newState,this.updateTick+=1;let currentTick=this.updateTick;for(let listener of this.listeners){if(currentTick!==this.updateTick)return;listener(newState)}}update(changes){for(let key in changes)if(!Object.is(this.state[key],changes[key])){this.setState({...this.state,...changes});return}}set(key,value){if(!Object.is(this.state[key],value))this.setState({...this.state,[key]:value})}notifyAll(){let newState={...this.state};this.setState(newState)}use(selector,a1,a2,a3){return useStore(this,selector,a1,a2,a3)}}import*as React40 from"react";class ReactStore extends Store{constructor(state,context={},selectors){super(state);this.context=context,this.selectors=selectors}useSyncedValue(key,value){React40.useDebugValue(key),useIsoLayoutEffect(()=>{if(this.state[key]!==value)this.set(key,value)},[key,value])}useSyncedValueWithCleanup(key,value){let store=this;useIsoLayoutEffect(()=>{if(store.state[key]!==value)store.set(key,value);return()=>{store.set(key,void 0)}},[store,key,value])}useSyncedValues(statePart){let store=this,dependencies=Object.values(statePart);useIsoLayoutEffect(()=>{store.update(statePart)},[store,...dependencies])}useControlledProp(key,controlled){React40.useDebugValue(key);let isControlled=controlled!==void 0;useIsoLayoutEffect(()=>{if(isControlled&&!Object.is(this.state[key],controlled))super.setState({...this.state,[key]:controlled})},[key,controlled,isControlled])}select(key,a1,a2,a3){let selector=this.selectors[key];return selector(this.state,a1,a2,a3)}useState(key,a1,a2,a3){return React40.useDebugValue(key),useStore(this,this.selectors[key],a1,a2,a3)}useContextCallback(key,fn){React40.useDebugValue(key);let stableFunction=useStableCallback(fn??NOOP);this.context[key]=stableFunction}useStateSetter(key){let ref=React40.useRef(void 0);if(ref.current===void 0)ref.current=(value)=>{this.set(key,value)};return ref.current}observe(selector,listener){let selectFn;if(typeof selector==="function")selectFn=selector;else selectFn=this.selectors[selector];let prevValue=selectFn(this.state);return listener(prevValue,prevValue,this),this.subscribe((nextState)=>{let nextValue=selectFn(nextState);if(!Object.is(prevValue,nextValue)){let oldValue=prevValue;prevValue=nextValue,listener(nextValue,oldValue,this)}})}}var selectors={open:createSelector((state)=>state.open),transitionStatus:createSelector((state)=>state.transitionStatus),domReferenceElement:createSelector((state)=>state.domReferenceElement),referenceElement:createSelector((state)=>state.positionReference??state.referenceElement),floatingElement:createSelector((state)=>state.floatingElement),floatingId:createSelector((state)=>state.floatingId)};class FloatingRootStore extends ReactStore{constructor(options){let{syncOnly,nested,onOpenChange,triggerElements,...initialState}=options;super({...initialState,positionReference:initialState.referenceElement,domReferenceElement:initialState.referenceElement},{onOpenChange,dataRef:{current:{}},events:createEventEmitter(),nested,triggerElements},selectors);this.syncOnly=syncOnly}syncOpenEvent=(newOpen,event)=>{if(!newOpen||!this.state.open||event!=null&&isClickLikeEvent(event))this.context.dataRef.current.openEvent=newOpen?event:void 0};dispatchOpenChange=(newOpen,eventDetails)=>{this.syncOpenEvent(newOpen,eventDetails.event);let details={open:newOpen,reason:eventDetails.reason,nativeEvent:eventDetails.event,nested:this.context.nested,triggerElement:eventDetails.trigger};this.context.events.emit("openchange",details)};setOpen=(newOpen,eventDetails)=>{if(this.syncOnly){this.context.onOpenChange?.(newOpen,eventDetails);return}this.dispatchOpenChange(newOpen,eventDetails),this.context.onOpenChange?.(newOpen,eventDetails)}}import*as React41 from"react";function useTriggerRegistration(id,store){let registeredElementIdRef=React41.useRef(null),registeredElementRef=React41.useRef(null);return React41.useCallback((element)=>{if(id===void 0)return;if(registeredElementIdRef.current!==null){let registeredId=registeredElementIdRef.current,registeredElement=registeredElementRef.current,currentElement=store.context.triggerElements.getById(registeredId);if(registeredElement&&currentElement===registeredElement)store.context.triggerElements.delete(registeredId);registeredElementIdRef.current=null,registeredElementRef.current=null}if(element!==null)registeredElementIdRef.current=id,registeredElementRef.current=element,store.context.triggerElements.add(id,element)},[store,id])}function useTriggerDataForwarding(triggerId,triggerElementRef,store,stateUpdates){let isMountedByThisTrigger=store.useState("isMountedByTrigger",triggerId),baseRegisterTrigger=useTriggerRegistration(triggerId,store),registerTrigger=useStableCallback((element)=>{if(baseRegisterTrigger(element),!element||!store.select("open"))return;let activeTriggerId=store.select("activeTriggerId");if(activeTriggerId===triggerId){store.update({activeTriggerElement:element,...stateUpdates});return}if(activeTriggerId==null)store.update({activeTriggerId:triggerId,activeTriggerElement:element,...stateUpdates})});return useIsoLayoutEffect(()=>{if(isMountedByThisTrigger)store.update({activeTriggerElement:triggerElementRef.current,...stateUpdates})},[isMountedByThisTrigger,store,triggerElementRef,...Object.values(stateUpdates)]),{registerTrigger,isMountedByThisTrigger}}function useImplicitActiveTrigger(store){let open=store.useState("open");useIsoLayoutEffect(()=>{if(open&&!store.select("activeTriggerId")&&store.context.triggerElements.size===1){let iteratorResult=store.context.triggerElements.entries().next();if(!iteratorResult.done){let[implicitTriggerId,implicitTriggerElement]=iteratorResult.value;store.update({activeTriggerId:implicitTriggerId,activeTriggerElement:implicitTriggerElement})}}},[open,store])}function useOpenStateTransitions(open,store,onUnmount){let{mounted,setMounted,transitionStatus}=useTransitionStatus(open);store.useSyncedValues({mounted,transitionStatus});let forceUnmount=useStableCallback(()=>{setMounted(!1),store.update({activeTriggerId:null,activeTriggerElement:null,mounted:!1}),onUnmount?.(),store.context.onOpenChangeComplete?.(!1)}),preventUnmountingOnClose=store.useState("preventUnmountingOnClose");return useOpenChangeComplete({enabled:!preventUnmountingOnClose,open,ref:store.context.popupRef,onComplete(){if(!open)forceUnmount()}}),{forceUnmount,transitionStatus}}class PopupTriggerMap{constructor(){this.elementsSet=new Set,this.idMap=new Map}add(id,element){let existingElement=this.idMap.get(id);if(existingElement===element)return;if(existingElement!==void 0)this.elementsSet.delete(existingElement);this.elementsSet.add(element),this.idMap.set(id,element)}delete(id){let element=this.idMap.get(id);if(element)this.elementsSet.delete(element),this.idMap.delete(id)}hasElement(element){return this.elementsSet.has(element)}hasMatchingElement(predicate){for(let element of this.elementsSet)if(predicate(element))return!0;return!1}getById(id){return this.idMap.get(id)}entries(){return this.idMap.entries()}elements(){return this.elementsSet.values()}get size(){return this.idMap.size}}function getEmptyRootContext(){return new FloatingRootStore({open:!1,transitionStatus:void 0,floatingElement:null,referenceElement:null,triggerElements:new PopupTriggerMap,floatingId:"",syncOnly:!1,nested:!1,onOpenChange:void 0})}function createInitialPopupStoreState(){return{open:!1,openProp:void 0,mounted:!1,transitionStatus:void 0,floatingRootContext:getEmptyRootContext(),preventUnmountingOnClose:!1,payload:void 0,activeTriggerId:null,activeTriggerElement:null,triggerIdProp:void 0,popupElement:null,positionerElement:null,activeTriggerProps:EMPTY_OBJECT,inactiveTriggerProps:EMPTY_OBJECT,popupProps:EMPTY_OBJECT}}var activeTriggerIdSelector=createSelector((state)=>state.triggerIdProp??state.activeTriggerId),popupStoreSelectors={open:createSelector((state)=>state.openProp??state.open),mounted:createSelector((state)=>state.mounted),transitionStatus:createSelector((state)=>state.transitionStatus),floatingRootContext:createSelector((state)=>state.floatingRootContext),preventUnmountingOnClose:createSelector((state)=>state.preventUnmountingOnClose),payload:createSelector((state)=>state.payload),activeTriggerId:activeTriggerIdSelector,activeTriggerElement:createSelector((state)=>state.mounted?state.activeTriggerElement:null),isTriggerActive:createSelector((state,triggerId)=>triggerId!==void 0&&activeTriggerIdSelector(state)===triggerId),isOpenedByTrigger:createSelector((state,triggerId)=>triggerId!==void 0&&activeTriggerIdSelector(state)===triggerId&&state.open),isMountedByTrigger:createSelector((state,triggerId)=>triggerId!==void 0&&activeTriggerIdSelector(state)===triggerId&&state.mounted),triggerProps:createSelector((state,isActive)=>isActive?state.activeTriggerProps:state.inactiveTriggerProps),popupProps:createSelector((state)=>state.popupProps),popupElement:createSelector((state)=>state.popupElement),positionerElement:createSelector((state)=>state.positionerElement)};function useFloatingRootContext(options){let{open=!1,onOpenChange,elements={}}=options,floatingId=useId3(),nested=useFloatingParentNodeId()!=null,store=useRefWithInit(()=>new FloatingRootStore({open,transitionStatus:void 0,onOpenChange,referenceElement:elements.reference??null,floatingElement:elements.floating??null,triggerElements:new PopupTriggerMap,floatingId,syncOnly:!1,nested})).current;return useIsoLayoutEffect(()=>{let valuesToSync={open,floatingId};if(elements.reference!==void 0)valuesToSync.referenceElement=elements.reference,valuesToSync.domReferenceElement=isElement(elements.reference)?elements.reference:null;if(elements.floating!==void 0)valuesToSync.floatingElement=elements.floating;store.update(valuesToSync)},[open,floatingId,elements.reference,elements.floating,store]),store.context.onOpenChange=onOpenChange,store.context.nested=nested,store}function useFloating2(options={}){let{nodeId,externalTree}=options,internalRootStore=useFloatingRootContext(options),rootContext=options.rootContext||internalRootStore,rootContextElements={reference:rootContext.useState("referenceElement"),floating:rootContext.useState("floatingElement"),domReference:rootContext.useState("domReferenceElement")},[positionReference,setPositionReferenceRaw]=React42.useState(null),domReferenceRef=React42.useRef(null),tree=useFloatingTree(externalTree);useIsoLayoutEffect(()=>{if(rootContextElements.domReference)domReferenceRef.current=rootContextElements.domReference},[rootContextElements.domReference]);let position=useFloating({...options,elements:{...rootContextElements,...positionReference&&{reference:positionReference}}}),setPositionReference=React42.useCallback((node)=>{let computedPositionReference=isElement(node)?{getBoundingClientRect:()=>node.getBoundingClientRect(),getClientRects:()=>node.getClientRects(),contextElement:node}:node;setPositionReferenceRaw(computedPositionReference),position.refs.setReference(computedPositionReference)},[position.refs]),[localDomReference,setLocalDomReference]=React42.useState(void 0),[localFloatingElement,setLocalFloatingElement]=React42.useState(null);rootContext.useSyncedValue("referenceElement",localDomReference??null);let localDomReferenceElement=isElement(localDomReference)?localDomReference:null;rootContext.useSyncedValue("domReferenceElement",localDomReference===void 0?rootContextElements.domReference:localDomReferenceElement),rootContext.useSyncedValue("floatingElement",localFloatingElement);let setReference=React42.useCallback((node)=>{if(isElement(node)||node===null)domReferenceRef.current=node,setLocalDomReference(node);if(isElement(position.refs.reference.current)||position.refs.reference.current===null||node!==null&&!isElement(node))position.refs.setReference(node)},[position.refs,setLocalDomReference]),setFloating=React42.useCallback((node)=>{setLocalFloatingElement(node),position.refs.setFloating(node)},[position.refs]),refs=React42.useMemo(()=>({...position.refs,setReference,setFloating,setPositionReference,domReference:domReferenceRef}),[position.refs,setReference,setFloating,setPositionReference]),elements=React42.useMemo(()=>({...position.elements,domReference:rootContextElements.domReference}),[position.elements,rootContextElements.domReference]),open=rootContext.useState("open"),floatingId=rootContext.useState("floatingId"),context=React42.useMemo(()=>({...position,dataRef:rootContext.context.dataRef,open,onOpenChange:rootContext.setOpen,events:rootContext.context.events,floatingId,refs,elements,nodeId,rootStore:rootContext}),[position,refs,elements,nodeId,rootContext,open,floatingId]);return useIsoLayoutEffect(()=>{rootContext.context.dataRef.current.floatingContext=context;let node=tree?.nodesRef.current.find((n)=>n.id===nodeId);if(node)node.context=context}),React42.useMemo(()=>({...position,context,refs,elements,rootStore:rootContext}),[position,refs,elements,context,rootContext])}function useSyncedFloatingRootContext(options){let{popupStore,treatPopupAsFloatingElement=!1,onOpenChange}=options,floatingId=useId3(),nested=useFloatingParentNodeId()!=null,open=popupStore.useState("open"),referenceElement=popupStore.useState("activeTriggerElement"),floatingElement=popupStore.useState(treatPopupAsFloatingElement?"popupElement":"positionerElement"),triggerElements=popupStore.context.triggerElements,store=useRefWithInit(()=>new FloatingRootStore({open,transitionStatus:void 0,referenceElement,floatingElement,triggerElements,onOpenChange,floatingId,syncOnly:!0,nested})).current;return useIsoLayoutEffect(()=>{let valuesToSync={open,floatingId,referenceElement,floatingElement};if(isElement(referenceElement))valuesToSync.domReferenceElement=referenceElement;if(store.state.positionReference===store.state.referenceElement)valuesToSync.positionReference=referenceElement;store.update(valuesToSync)},[open,floatingId,referenceElement,floatingElement,store]),store.context.onOpenChange=onOpenChange,store.context.nested=nested,store}import*as React43 from"react";var isMacSafari=isMac&&isSafari;function useFocus(context,props={}){let store="rootStore"in context?context.rootStore:context,{events,dataRef}=store.context,{enabled=!0,delay}=props,blockFocusRef=React43.useRef(!1),blockedReferenceRef=React43.useRef(null),timeout=useTimeout(),keyboardModalityRef=React43.useRef(!0);React43.useEffect(()=>{let domReference=store.select("domReferenceElement");if(!enabled)return;let win=getWindow(domReference);function onBlur(){let currentDomReference=store.select("domReferenceElement");if(!store.select("open")&&isHTMLElement(currentDomReference)&&currentDomReference===activeElement(ownerDocument(currentDomReference)))blockFocusRef.current=!0}function onKeyDown(){keyboardModalityRef.current=!0}function onPointerDown(){keyboardModalityRef.current=!1}return mergeCleanups(addEventListener(win,"blur",onBlur),isMacSafari&&addEventListener(win,"keydown",onKeyDown,!0),isMacSafari&&addEventListener(win,"pointerdown",onPointerDown,!0))},[store,enabled]),React43.useEffect(()=>{if(!enabled)return;function onOpenChangeLocal(details){if(details.reason===exports_reason_parts.triggerPress||details.reason===exports_reason_parts.escapeKey){let referenceElement=store.select("domReferenceElement");if(isElement(referenceElement))blockedReferenceRef.current=referenceElement,blockFocusRef.current=!0}}return events.on("openchange",onOpenChangeLocal),()=>{events.off("openchange",onOpenChangeLocal)}},[events,enabled,store]);let reference=React43.useMemo(()=>({onMouseLeave(){blockFocusRef.current=!1,blockedReferenceRef.current=null},onFocus(event){let focusTarget=event.currentTarget;if(blockFocusRef.current){if(blockedReferenceRef.current===focusTarget)return;blockFocusRef.current=!1,blockedReferenceRef.current=null}let target=getTarget(event.nativeEvent);if(isElement(target)){if(isMacSafari&&!event.relatedTarget){if(!keyboardModalityRef.current&&!isTypeableElement(target))return}else if(!matchesFocusVisible(target))return}let movedFromOtherEnabledTrigger=isTargetInsideEnabledTrigger(event.relatedTarget,store.context.triggerElements),{nativeEvent,currentTarget}=event,delayValue=typeof delay==="function"?delay():delay;if(store.select("open")&&movedFromOtherEnabledTrigger||delayValue===0||delayValue===void 0){store.setOpen(!0,createChangeEventDetails(exports_reason_parts.triggerFocus,nativeEvent,currentTarget));return}timeout.start(delayValue,()=>{if(blockFocusRef.current)return;store.setOpen(!0,createChangeEventDetails(exports_reason_parts.triggerFocus,nativeEvent,currentTarget))})},onBlur(event){blockFocusRef.current=!1,blockedReferenceRef.current=null;let{relatedTarget,nativeEvent}=event,movedToFocusGuard=isElement(relatedTarget)&&relatedTarget.hasAttribute(createAttribute("focus-guard"))&&relatedTarget.getAttribute("data-type")==="outside";timeout.start(0,()=>{let domReference=store.select("domReferenceElement"),activeEl=activeElement(ownerDocument(domReference));if(!relatedTarget&&activeEl===domReference)return;if(contains(dataRef.current.floatingContext?.refs.floating.current,activeEl)||contains(domReference,activeEl)||movedToFocusGuard)return;if(isTargetInsideEnabledTrigger(relatedTarget??activeEl,store.context.triggerElements))return;store.setOpen(!1,createChangeEventDetails(exports_reason_parts.triggerFocus,nativeEvent))})}}),[dataRef,store,timeout,delay]);return React43.useMemo(()=>enabled?{reference,trigger:reference}:{},[enabled,reference])}import*as React44 from"react";class HoverInteraction{constructor(){this.pointerType=void 0,this.interactedInside=!1,this.handler=void 0,this.blockMouseMove=!0,this.performedPointerEventsMutation=!1,this.pointerEventsScopeElement=null,this.pointerEventsReferenceElement=null,this.pointerEventsFloatingElement=null,this.restTimeoutPending=!1,this.openChangeTimeout=new Timeout,this.restTimeout=new Timeout,this.handleCloseOptions=void 0}static create(){return new HoverInteraction}dispose=()=>{this.openChangeTimeout.clear(),this.restTimeout.clear()};disposeEffect=()=>{return this.dispose}}var pointerEventsMutationOwnerByScopeElement=new WeakMap;function clearSafePolygonPointerEventsMutation(instance){if(!instance.performedPointerEventsMutation)return;let scopeElement=instance.pointerEventsScopeElement;if(scopeElement&&pointerEventsMutationOwnerByScopeElement.get(scopeElement)===instance)instance.pointerEventsScopeElement?.style.removeProperty("pointer-events"),instance.pointerEventsReferenceElement?.style.removeProperty("pointer-events"),instance.pointerEventsFloatingElement?.style.removeProperty("pointer-events"),pointerEventsMutationOwnerByScopeElement.delete(scopeElement);instance.performedPointerEventsMutation=!1,instance.pointerEventsScopeElement=null,instance.pointerEventsReferenceElement=null,instance.pointerEventsFloatingElement=null}function applySafePolygonPointerEventsMutation(instance,options){let{scopeElement,referenceElement,floatingElement}=options,existingOwner=pointerEventsMutationOwnerByScopeElement.get(scopeElement);if(existingOwner&&existingOwner!==instance)clearSafePolygonPointerEventsMutation(existingOwner);clearSafePolygonPointerEventsMutation(instance),instance.performedPointerEventsMutation=!0,instance.pointerEventsScopeElement=scopeElement,instance.pointerEventsReferenceElement=referenceElement,instance.pointerEventsFloatingElement=floatingElement,pointerEventsMutationOwnerByScopeElement.set(scopeElement,instance),scopeElement.style.pointerEvents="none",referenceElement.style.pointerEvents="auto",floatingElement.style.pointerEvents="auto"}function useHoverInteractionSharedState(store){let instance=useRefWithInit(HoverInteraction.create).current,data=store.context.dataRef.current;if(!data.hoverInteractionState)data.hoverInteractionState=instance;return useOnMount(data.hoverInteractionState.disposeEffect),data.hoverInteractionState}function useHoverFloatingInteraction(context,parameters={}){let store="rootStore"in context?context.rootStore:context,open=store.useState("open"),floatingElement=store.useState("floatingElement"),domReferenceElement=store.useState("domReferenceElement"),{dataRef}=store.context,{enabled=!0,closeDelay:closeDelayProp=0,nodeId:nodeIdProp}=parameters,instance=useHoverInteractionSharedState(store),tree=useFloatingTree(),parentId=useFloatingParentNodeId(),isClickLikeOpenEvent2=useStableCallback(()=>{return isClickLikeOpenEvent(dataRef.current.openEvent?.type,instance.interactedInside)}),isHoverOpen=useStableCallback(()=>{let type=dataRef.current.openEvent?.type;return type?.includes("mouse")&&type!=="mousedown"}),isRelatedTargetInsideEnabledTrigger=useStableCallback((target)=>{return isTargetInsideEnabledTrigger(target,store.context.triggerElements)}),closeWithDelay=React44.useCallback((event)=>{let closeDelay=getDelay(closeDelayProp,"close",instance.pointerType),close=()=>{store.setOpen(!1,createChangeEventDetails(exports_reason_parts.triggerHover,event)),tree?.events.emit("floating.closed",event)};if(closeDelay)instance.openChangeTimeout.start(closeDelay,close);else instance.openChangeTimeout.clear(),close()},[closeDelayProp,store,instance,tree]),clearPointerEvents=useStableCallback(()=>{clearSafePolygonPointerEventsMutation(instance)}),handleInteractInside=useStableCallback((event)=>{let target=getTarget(event);if(!isInteractiveElement(target)){instance.interactedInside=!1;return}instance.interactedInside=target?.closest("[aria-haspopup]")!=null});useIsoLayoutEffect(()=>{if(!open)instance.pointerType=void 0,instance.restTimeoutPending=!1,instance.interactedInside=!1,clearPointerEvents()},[open,instance,clearPointerEvents]),React44.useEffect(()=>{return clearPointerEvents},[clearPointerEvents]),useIsoLayoutEffect(()=>{if(!enabled)return;if(open&&instance.handleCloseOptions?.blockPointerEvents&&isHoverOpen()&&isElement(domReferenceElement)&&floatingElement){let ref=domReferenceElement,floatingEl=floatingElement,doc=ownerDocument(floatingElement),parentFloating=tree?.nodesRef.current.find((node)=>node.id===parentId)?.context?.elements.floating;if(parentFloating)parentFloating.style.pointerEvents="";let scopeElement=instance.handleCloseOptions?.getScope?.()??instance.pointerEventsScopeElement??parentFloating??ref.closest("[data-rootownerid]")??doc.body;return applySafePolygonPointerEventsMutation(instance,{scopeElement,referenceElement:ref,floatingElement:floatingEl}),()=>{clearPointerEvents()}}return},[enabled,open,domReferenceElement,floatingElement,instance,isHoverOpen,tree,parentId,clearPointerEvents]);let childClosedTimeout=useTimeout();React44.useEffect(()=>{if(!enabled)return;function onFloatingMouseEnter(){instance.openChangeTimeout.clear(),childClosedTimeout.clear(),tree?.events.off("floating.closed",onNodeClosed),clearPointerEvents()}function onFloatingMouseLeave(event){if(tree&&parentId&&getNodeChildren(tree.nodesRef.current,parentId).length>0){tree.events.on("floating.closed",onNodeClosed);return}if(isRelatedTargetInsideEnabledTrigger(event.relatedTarget))return;let currentNodeId=dataRef.current.floatingContext?.nodeId??nodeIdProp,relatedTarget=event.relatedTarget;if(tree&&currentNodeId&&isElement(relatedTarget)&&getNodeChildren(tree.nodesRef.current,currentNodeId,!1).some((node)=>contains(node.context?.elements.floating,relatedTarget)))return;if(instance.handler){instance.handler(event);return}if(clearPointerEvents(),!isClickLikeOpenEvent2())closeWithDelay(event)}function onNodeClosed(event){if(!tree||!parentId||getNodeChildren(tree.nodesRef.current,parentId).length>0)return;childClosedTimeout.start(0,()=>{tree.events.off("floating.closed",onNodeClosed),store.setOpen(!1,createChangeEventDetails(exports_reason_parts.triggerHover,event)),tree.events.emit("floating.closed",event)})}let floating=floatingElement;return mergeCleanups(floating&&addEventListener(floating,"mouseenter",onFloatingMouseEnter),floating&&addEventListener(floating,"mouseleave",onFloatingMouseLeave),floating&&addEventListener(floating,"pointerdown",handleInteractInside,!0),()=>{tree?.events.off("floating.closed",onNodeClosed)})},[enabled,floatingElement,store,dataRef,nodeIdProp,isClickLikeOpenEvent2,isRelatedTargetInsideEnabledTrigger,closeWithDelay,clearPointerEvents,handleInteractInside,instance,tree,parentId,childClosedTimeout])}import*as React45 from"react";import*as ReactDOM4 from"react-dom";var EMPTY_REF={current:null};function useHoverReferenceInteraction(context,props={}){let store="rootStore"in context?context.rootStore:context,{dataRef,events}=store.context,{enabled=!0,delay=0,handleClose=null,mouseOnly=!1,restMs=0,move=!0,triggerElementRef=EMPTY_REF,externalTree,isActiveTrigger=!0,getHandleCloseContext,isClosing}=props,tree=useFloatingTree(externalTree),instance=useHoverInteractionSharedState(store),isHoverCloseActiveRef=React45.useRef(!1),handleCloseRef=useValueAsRef(handleClose),delayRef=useValueAsRef(delay),restMsRef=useValueAsRef(restMs),enabledRef=useValueAsRef(enabled),isClosingRef=useValueAsRef(isClosing);if(isActiveTrigger)instance.handleCloseOptions=handleCloseRef.current?.__options;let isClickLikeOpenEvent2=useStableCallback(()=>{return isClickLikeOpenEvent(dataRef.current.openEvent?.type,instance.interactedInside)}),isRelatedTargetInsideEnabledTrigger=useStableCallback((target)=>{return isTargetInsideEnabledTrigger(target,store.context.triggerElements)}),isOverInactiveTrigger=useStableCallback((currentDomReference,currentTarget,target)=>{let allTriggers=store.context.triggerElements;if(allTriggers.hasElement(currentTarget))return!currentDomReference||!contains(currentDomReference,currentTarget);if(!isElement(target))return!1;let targetElement=target;return allTriggers.hasMatchingElement((trigger)=>contains(trigger,targetElement))&&(!currentDomReference||!contains(currentDomReference,targetElement))}),closeWithDelay=useStableCallback((event,runElseBranch=!0)=>{let closeDelay=getDelay(delayRef.current,"close",instance.pointerType);if(closeDelay)instance.openChangeTimeout.start(closeDelay,()=>{store.setOpen(!1,createChangeEventDetails(exports_reason_parts.triggerHover,event)),tree?.events.emit("floating.closed",event)});else if(runElseBranch)instance.openChangeTimeout.clear(),store.setOpen(!1,createChangeEventDetails(exports_reason_parts.triggerHover,event)),tree?.events.emit("floating.closed",event)}),cleanupMouseMoveHandler=useStableCallback(()=>{if(!instance.handler)return;ownerDocument(store.select("domReferenceElement")).removeEventListener("mousemove",instance.handler),instance.handler=void 0}),clearPointerEvents=useStableCallback(()=>{clearSafePolygonPointerEventsMutation(instance)});return React45.useEffect(()=>cleanupMouseMoveHandler,[cleanupMouseMoveHandler]),React45.useEffect(()=>{if(!enabled)return;function onOpenChangeLocal(details){if(!details.open)isHoverCloseActiveRef.current=details.reason===exports_reason_parts.triggerHover,cleanupMouseMoveHandler(),instance.openChangeTimeout.clear(),instance.restTimeout.clear(),instance.blockMouseMove=!0,instance.restTimeoutPending=!1;else isHoverCloseActiveRef.current=!1}return events.on("openchange",onOpenChangeLocal),()=>{events.off("openchange",onOpenChangeLocal)}},[enabled,events,instance,cleanupMouseMoveHandler]),React45.useEffect(()=>{if(!enabled)return;let trigger=triggerElementRef.current??(isActiveTrigger?store.select("domReferenceElement"):null);if(!isElement(trigger))return;function onMouseEnter(event){if(instance.openChangeTimeout.clear(),instance.blockMouseMove=!1,mouseOnly&&!isMouseLikePointerType(instance.pointerType))return;let restMsValue=getRestMs(restMsRef.current),openDelay=getDelay(delayRef.current,"open",instance.pointerType),eventTarget=getTarget(event),currentTarget=event.currentTarget??null,currentDomReference=store.select("domReferenceElement"),triggerNode=currentTarget;if(isElement(eventTarget)&&!store.context.triggerElements.hasElement(eventTarget)){for(let triggerElement of store.context.triggerElements.elements())if(contains(triggerElement,eventTarget)){triggerNode=triggerElement;break}}if(isElement(currentTarget)&&isElement(currentDomReference)&&!store.context.triggerElements.hasElement(currentTarget)&&contains(currentTarget,currentDomReference))triggerNode=currentDomReference;let isOverInactive=triggerNode==null?!1:isOverInactiveTrigger(currentDomReference,triggerNode,eventTarget),isOpen=store.select("open"),isInClosingTransition=isClosingRef.current?.()??store.select("transitionStatus")==="ending",isHoverCloseTransition=!isOpen&&isInClosingTransition&&isHoverCloseActiveRef.current,isReenteringSameTriggerDuringCloseTransition=!isOverInactive&&isElement(triggerNode)&&isElement(currentDomReference)&&contains(currentDomReference,triggerNode)&&isHoverCloseTransition,isRestOnlyDelay=restMsValue>0&&!openDelay,shouldOpenImmediately=isOverInactive&&(isOpen||isHoverCloseTransition)||isReenteringSameTriggerDuringCloseTransition,shouldOpen=!isOpen||isOverInactive;if(shouldOpenImmediately){store.setOpen(!0,createChangeEventDetails(exports_reason_parts.triggerHover,event,triggerNode));return}if(isRestOnlyDelay)return;if(openDelay)instance.openChangeTimeout.start(openDelay,()=>{if(shouldOpen)store.setOpen(!0,createChangeEventDetails(exports_reason_parts.triggerHover,event,triggerNode))});else if(shouldOpen)store.setOpen(!0,createChangeEventDetails(exports_reason_parts.triggerHover,event,triggerNode))}function onMouseLeave(event){if(isClickLikeOpenEvent2()){clearPointerEvents();return}cleanupMouseMoveHandler();let domReferenceElement=store.select("domReferenceElement"),doc=ownerDocument(domReferenceElement);instance.restTimeout.clear(),instance.restTimeoutPending=!1;let handleCloseContextBase=dataRef.current.floatingContext??getHandleCloseContext?.();if(isRelatedTargetInsideEnabledTrigger(event.relatedTarget))return;if(handleCloseRef.current&&handleCloseContextBase){if(!store.select("open"))instance.openChangeTimeout.clear();let currentTrigger=triggerElementRef.current;instance.handler=handleCloseRef.current({...handleCloseContextBase,tree,x:event.clientX,y:event.clientY,onClose(){if(clearPointerEvents(),cleanupMouseMoveHandler(),enabledRef.current&&!isClickLikeOpenEvent2()&&currentTrigger===store.select("domReferenceElement"))closeWithDelay(event,!0)}}),doc.addEventListener("mousemove",instance.handler),instance.handler(event);return}if(instance.pointerType==="touch"?!contains(store.select("floatingElement"),event.relatedTarget):!0)closeWithDelay(event)}if(move)return mergeCleanups(addEventListener(trigger,"mousemove",onMouseEnter,{once:!0}),addEventListener(trigger,"mouseenter",onMouseEnter),addEventListener(trigger,"mouseleave",onMouseLeave));return mergeCleanups(addEventListener(trigger,"mouseenter",onMouseEnter),addEventListener(trigger,"mouseleave",onMouseLeave))},[cleanupMouseMoveHandler,clearPointerEvents,dataRef,delayRef,closeWithDelay,store,enabled,handleCloseRef,instance,isActiveTrigger,isOverInactiveTrigger,isClickLikeOpenEvent2,isRelatedTargetInsideEnabledTrigger,mouseOnly,move,restMsRef,triggerElementRef,tree,enabledRef,getHandleCloseContext,isClosingRef]),React45.useMemo(()=>{if(!enabled)return;function setPointerRef(event){instance.pointerType=event.pointerType}return{onPointerDown:setPointerRef,onPointerEnter:setPointerRef,onMouseMove(event){let{nativeEvent}=event,trigger=event.currentTarget,currentDomReference=store.select("domReferenceElement"),currentOpen=store.select("open"),isOverInactive=isOverInactiveTrigger(currentDomReference,trigger,event.target);if(mouseOnly&&!isMouseLikePointerType(instance.pointerType))return;if(currentOpen&&isOverInactive&&instance.handleCloseOptions?.blockPointerEvents){let floatingElement=store.select("floatingElement");if(floatingElement){let scopeElement=instance.handleCloseOptions?.getScope?.()??trigger.ownerDocument.body;applySafePolygonPointerEventsMutation(instance,{scopeElement,referenceElement:trigger,floatingElement})}}let restMsValue=getRestMs(restMsRef.current);if(currentOpen&&!isOverInactive||restMsValue===0)return;if(!isOverInactive&&instance.restTimeoutPending&&event.movementX**2+event.movementY**2<2)return;instance.restTimeout.clear();function handleMouseMove(){if(instance.restTimeoutPending=!1,isClickLikeOpenEvent2())return;let latestOpen=store.select("open");if(!instance.blockMouseMove&&(!latestOpen||isOverInactive))store.setOpen(!0,createChangeEventDetails(exports_reason_parts.triggerHover,nativeEvent,trigger))}if(instance.pointerType==="touch")ReactDOM4.flushSync(()=>{handleMouseMove()});else if(isOverInactive&&currentOpen)handleMouseMove();else instance.restTimeoutPending=!0,instance.restTimeout.start(restMsValue,handleMouseMove)}}},[enabled,instance,isClickLikeOpenEvent2,isOverInactiveTrigger,mouseOnly,store,restMsRef])}import*as React46 from"react";function useInteractions(propsList=[]){let referenceDeps=propsList.map((key)=>key?.reference),floatingDeps=propsList.map((key)=>key?.floating),itemDeps=propsList.map((key)=>key?.item),triggerDeps=propsList.map((key)=>key?.trigger),getReferenceProps=React46.useCallback((userProps)=>mergeProps2(userProps,propsList,"reference"),referenceDeps),getFloatingProps=React46.useCallback((userProps)=>mergeProps2(userProps,propsList,"floating"),floatingDeps),getItemProps=React46.useCallback((userProps)=>mergeProps2(userProps,propsList,"item"),itemDeps),getTriggerProps=React46.useCallback((userProps)=>mergeProps2(userProps,propsList,"trigger"),triggerDeps);return React46.useMemo(()=>({getReferenceProps,getFloatingProps,getItemProps,getTriggerProps}),[getReferenceProps,getFloatingProps,getItemProps,getTriggerProps])}function mergeProps2(userProps,propsList,elementKey){let eventHandlers=new Map,isItem=elementKey==="item",outputProps={};if(elementKey==="floating")outputProps.tabIndex=-1,outputProps[FOCUSABLE_ATTRIBUTE]="";for(let key in userProps){if(isItem&&userProps){if(key===ACTIVE_KEY||key===SELECTED_KEY)continue}outputProps[key]=userProps[key]}for(let i=0;i<propsList.length;i+=1){let props,propsOrGetProps=propsList[i]?.[elementKey];if(typeof propsOrGetProps==="function")props=userProps?propsOrGetProps(userProps):null;else props=propsOrGetProps;if(!props)continue;mutablyMergeProps(outputProps,props,isItem,eventHandlers)}return mutablyMergeProps(outputProps,userProps,isItem,eventHandlers),outputProps}function mutablyMergeProps(outputProps,props,isItem,eventHandlers){for(let key in props){let value=props[key];if(isItem&&(key===ACTIVE_KEY||key===SELECTED_KEY))continue;if(!key.startsWith("on"))outputProps[key]=value;else{if(!eventHandlers.has(key))eventHandlers.set(key,[]);if(typeof value==="function")eventHandlers.get(key)?.push(value),outputProps[key]=(...args)=>{return eventHandlers.get(key)?.map((fn)=>fn(...args)).find((val)=>val!==void 0)}}}}import*as React47 from"react";var componentRoleToAriaRoleMap=new Map([["select","listbox"],["combobox","listbox"],["label",!1]]);function useRole(context,props={}){let store="rootStore"in context?context.rootStore:context,open=store.useState("open"),defaultFloatingId=store.useState("floatingId"),domReference=store.useState("domReferenceElement"),floatingElement=store.useState("floatingElement"),{role="dialog"}=props,defaultReferenceId=useId3(),referenceId=domReference?.id||defaultReferenceId,floatingId=React47.useMemo(()=>getFloatingFocusElement(floatingElement)?.id||defaultFloatingId,[floatingElement,defaultFloatingId]),ariaRole=componentRoleToAriaRoleMap.get(role)??role,isNested=useFloatingParentNodeId()!=null,trigger=React47.useMemo(()=>{if(ariaRole==="tooltip"||role==="label")return EMPTY_OBJECT;return{"aria-haspopup":ariaRole==="alertdialog"?"dialog":ariaRole,"aria-expanded":"false",...ariaRole==="listbox"&&{role:"combobox"},...ariaRole==="menu"&&isNested&&{role:"menuitem"},...role==="select"&&{"aria-autocomplete":"none"},...role==="combobox"&&{"aria-autocomplete":"list"}}},[ariaRole,isNested,role]),reference=React47.useMemo(()=>{if(ariaRole==="tooltip"||role==="label")return{[`aria-${role==="label"?"labelledby":"describedby"}`]:open?floatingId:void 0};return{...trigger,"aria-expanded":open?"true":"false","aria-controls":open?floatingId:void 0,...ariaRole==="menu"&&{id:referenceId}}},[ariaRole,floatingId,open,referenceId,role,trigger]),floating=React47.useMemo(()=>{let floatingProps={id:floatingId,...ariaRole&&{role:ariaRole}};if(ariaRole==="tooltip"||role==="label")return floatingProps;return{...floatingProps,...ariaRole==="menu"&&{"aria-labelledby":referenceId}}},[ariaRole,floatingId,referenceId,role]),item=React47.useCallback(({active,selected})=>{let commonProps={role:"option",...active&&{id:`${floatingId}-fui-option`}};switch(role){case"select":case"combobox":return{...commonProps,"aria-selected":selected};default:}return{}},[floatingId,role]);return React47.useMemo(()=>({reference,floating,item,trigger}),[reference,floating,trigger,item])}var CURSOR_SPEED_THRESHOLD=0.1,CURSOR_SPEED_THRESHOLD_SQUARED=CURSOR_SPEED_THRESHOLD*CURSOR_SPEED_THRESHOLD,POLYGON_BUFFER=0.5;function hasIntersectingEdge(pointX,pointY,xi,yi,xj,yj){return yi>=pointY!==yj>=pointY&&pointX<=(xj-xi)*(pointY-yi)/(yj-yi)+xi}function isPointInQuadrilateral(pointX,pointY,x1,y1,x2,y2,x3,y3,x4,y4){let isInsideValue=!1;if(hasIntersectingEdge(pointX,pointY,x1,y1,x2,y2))isInsideValue=!isInsideValue;if(hasIntersectingEdge(pointX,pointY,x2,y2,x3,y3))isInsideValue=!isInsideValue;if(hasIntersectingEdge(pointX,pointY,x3,y3,x4,y4))isInsideValue=!isInsideValue;if(hasIntersectingEdge(pointX,pointY,x4,y4,x1,y1))isInsideValue=!isInsideValue;return isInsideValue}function isInsideRect(pointX,pointY,rect){return pointX>=rect.x&&pointX<=rect.x+rect.width&&pointY>=rect.y&&pointY<=rect.y+rect.height}function isInsideAxisAlignedRect(pointX,pointY,x1,y1,x2,y2){let minX=Math.min(x1,x2),maxX=Math.max(x1,x2),minY=Math.min(y1,y2),maxY=Math.max(y1,y2);return pointX>=minX&&pointX<=maxX&&pointY>=minY&&pointY<=maxY}function safePolygon(options={}){let{blockPointerEvents=!1}=options,timeout=new Timeout,fn=({x,y,placement,elements,onClose,nodeId,tree})=>{let side=placement?.split("-")[0],hasLanded=!1,lastX=null,lastY=null,lastCursorTime=typeof performance<"u"?performance.now():0;function isCursorMovingSlowly(nextX,nextY){let currentTime=performance.now(),elapsedTime=currentTime-lastCursorTime;if(lastX===null||lastY===null||elapsedTime===0)return lastX=nextX,lastY=nextY,lastCursorTime=currentTime,!1;let deltaX=nextX-lastX,deltaY=nextY-lastY,distanceSquared=deltaX*deltaX+deltaY*deltaY,thresholdSquared=elapsedTime*elapsedTime*CURSOR_SPEED_THRESHOLD_SQUARED;return lastX=nextX,lastY=nextY,lastCursorTime=currentTime,distanceSquared<thresholdSquared}function close(){timeout.clear(),onClose()}return function(event){timeout.clear();let{domReference,floating}=elements;if(!domReference||!floating||side==null||x==null||y==null)return;let{clientX,clientY}=event,target=getTarget(event),isLeave=event.type==="mouseleave",isOverFloatingEl=contains(floating,target),isOverReferenceEl=contains(domReference,target);if(isOverFloatingEl){if(hasLanded=!0,!isLeave)return}if(isOverReferenceEl){if(hasLanded=!1,!isLeave){hasLanded=!0;return}}if(isLeave&&isElement(event.relatedTarget)&&contains(floating,event.relatedTarget))return;function hasOpenChildNode(){return Boolean(tree&&getNodeChildren(tree.nodesRef.current,nodeId).length>0)}function closeIfNoOpenChild(){if(!hasOpenChildNode())close()}if(hasOpenChildNode())return;let refRect=domReference.getBoundingClientRect(),rect=floating.getBoundingClientRect(),cursorLeaveFromRight=x>rect.right-rect.width/2,cursorLeaveFromBottom=y>rect.bottom-rect.height/2,isFloatingWider=rect.width>refRect.width,isFloatingTaller=rect.height>refRect.height,left=(isFloatingWider?refRect:rect).left,right=(isFloatingWider?refRect:rect).right,top=(isFloatingTaller?refRect:rect).top,bottom=(isFloatingTaller?refRect:rect).bottom;if(side==="top"&&y>=refRect.bottom-1||side==="bottom"&&y<=refRect.top+1||side==="left"&&x>=refRect.right-1||side==="right"&&x<=refRect.left+1){closeIfNoOpenChild();return}let isInsideTroughRect=!1;switch(side){case"top":isInsideTroughRect=isInsideAxisAlignedRect(clientX,clientY,left,refRect.top+1,right,rect.bottom-1);break;case"bottom":isInsideTroughRect=isInsideAxisAlignedRect(clientX,clientY,left,rect.top+1,right,refRect.bottom-1);break;case"left":isInsideTroughRect=isInsideAxisAlignedRect(clientX,clientY,rect.right-1,bottom,refRect.left+1,top);break;case"right":isInsideTroughRect=isInsideAxisAlignedRect(clientX,clientY,refRect.right-1,bottom,rect.left+1,top);break;default:}if(isInsideTroughRect)return;if(hasLanded&&!isInsideRect(clientX,clientY,refRect)){closeIfNoOpenChild();return}if(!isLeave&&isCursorMovingSlowly(clientX,clientY)){closeIfNoOpenChild();return}let isInsidePolygon=!1;switch(side){case"top":{let cursorXOffset=isFloatingWider?POLYGON_BUFFER/2:POLYGON_BUFFER*4,cursorPointOneX=isFloatingWider?x+cursorXOffset:cursorLeaveFromRight?x+cursorXOffset:x-cursorXOffset,cursorPointTwoX=isFloatingWider?x-cursorXOffset:cursorLeaveFromRight?x+cursorXOffset:x-cursorXOffset,cursorPointY=y+POLYGON_BUFFER+1,commonYLeft=cursorLeaveFromRight?rect.bottom-POLYGON_BUFFER:isFloatingWider?rect.bottom-POLYGON_BUFFER:rect.top,commonYRight=cursorLeaveFromRight?isFloatingWider?rect.bottom-POLYGON_BUFFER:rect.top:rect.bottom-POLYGON_BUFFER;isInsidePolygon=isPointInQuadrilateral(clientX,clientY,cursorPointOneX,cursorPointY,cursorPointTwoX,cursorPointY,rect.left,commonYLeft,rect.right,commonYRight);break}case"bottom":{let cursorXOffset=isFloatingWider?POLYGON_BUFFER/2:POLYGON_BUFFER*4,cursorPointOneX=isFloatingWider?x+cursorXOffset:cursorLeaveFromRight?x+cursorXOffset:x-cursorXOffset,cursorPointTwoX=isFloatingWider?x-cursorXOffset:cursorLeaveFromRight?x+cursorXOffset:x-cursorXOffset,cursorPointY=y-POLYGON_BUFFER,commonYLeft=cursorLeaveFromRight?rect.top+POLYGON_BUFFER:isFloatingWider?rect.top+POLYGON_BUFFER:rect.bottom,commonYRight=cursorLeaveFromRight?isFloatingWider?rect.top+POLYGON_BUFFER:rect.bottom:rect.top+POLYGON_BUFFER;isInsidePolygon=isPointInQuadrilateral(clientX,clientY,cursorPointOneX,cursorPointY,cursorPointTwoX,cursorPointY,rect.left,commonYLeft,rect.right,commonYRight);break}case"left":{let cursorYOffset=isFloatingTaller?POLYGON_BUFFER/2:POLYGON_BUFFER*4,cursorPointOneY=isFloatingTaller?y+cursorYOffset:cursorLeaveFromBottom?y+cursorYOffset:y-cursorYOffset,cursorPointTwoY=isFloatingTaller?y-cursorYOffset:cursorLeaveFromBottom?y+cursorYOffset:y-cursorYOffset,cursorPointX=x+POLYGON_BUFFER+1,commonXTop=cursorLeaveFromBottom?rect.right-POLYGON_BUFFER:isFloatingTaller?rect.right-POLYGON_BUFFER:rect.left,commonXBottom=cursorLeaveFromBottom?isFloatingTaller?rect.right-POLYGON_BUFFER:rect.left:rect.right-POLYGON_BUFFER;isInsidePolygon=isPointInQuadrilateral(clientX,clientY,commonXTop,rect.top,commonXBottom,rect.bottom,cursorPointX,cursorPointOneY,cursorPointX,cursorPointTwoY);break}case"right":{let cursorYOffset=isFloatingTaller?POLYGON_BUFFER/2:POLYGON_BUFFER*4,cursorPointOneY=isFloatingTaller?y+cursorYOffset:cursorLeaveFromBottom?y+cursorYOffset:y-cursorYOffset,cursorPointTwoY=isFloatingTaller?y-cursorYOffset:cursorLeaveFromBottom?y+cursorYOffset:y-cursorYOffset,cursorPointX=x-POLYGON_BUFFER,commonXTop=cursorLeaveFromBottom?rect.left+POLYGON_BUFFER:isFloatingTaller?rect.left+POLYGON_BUFFER:rect.right,commonXBottom=cursorLeaveFromBottom?isFloatingTaller?rect.left+POLYGON_BUFFER:rect.right:rect.left+POLYGON_BUFFER;isInsidePolygon=isPointInQuadrilateral(clientX,clientY,cursorPointX,cursorPointOneY,cursorPointX,cursorPointTwoY,commonXTop,rect.top,commonXBottom,rect.bottom);break}default:}if(!isInsidePolygon)closeIfNoOpenChild();else if(!hasLanded)timeout.start(40,closeIfNoOpenChild);return}};return fn.__options={...options,blockPointerEvents},fn}var DialogPopupCssVars=function(DialogPopupCssVars2){return DialogPopupCssVars2.nestedDialogs="--nested-dialogs",DialogPopupCssVars2}({});var DialogPopupDataAttributes=function(DialogPopupDataAttributes2){return DialogPopupDataAttributes2[DialogPopupDataAttributes2.open=CommonPopupDataAttributes.open]="open",DialogPopupDataAttributes2[DialogPopupDataAttributes2.closed=CommonPopupDataAttributes.closed]="closed",DialogPopupDataAttributes2[DialogPopupDataAttributes2.startingStyle=CommonPopupDataAttributes.startingStyle]="startingStyle",DialogPopupDataAttributes2[DialogPopupDataAttributes2.endingStyle=CommonPopupDataAttributes.endingStyle]="endingStyle",DialogPopupDataAttributes2.nested="data-nested",DialogPopupDataAttributes2.nestedDialogOpen="data-nested-dialog-open",DialogPopupDataAttributes2}({});import*as React48 from"react";var DialogPortalContext=React48.createContext(void 0);function useDialogPortalContext(){let value=React48.useContext(DialogPortalContext);if(value===void 0)throw Error(formatErrorMessage_default(26));return value}var ARROW_UP="ArrowUp",ARROW_DOWN="ArrowDown",ARROW_LEFT="ArrowLeft",ARROW_RIGHT="ArrowRight",HOME="Home",END="End";var HORIZONTAL_KEYS=new Set([ARROW_LEFT,ARROW_RIGHT]);var VERTICAL_KEYS=new Set([ARROW_UP,ARROW_DOWN]);var ARROW_KEYS=new Set([...HORIZONTAL_KEYS,...VERTICAL_KEYS]),ALL_KEYS=new Set([...ARROW_KEYS,HOME,END]),COMPOSITE_KEYS=new Set([ARROW_UP,ARROW_DOWN,ARROW_LEFT,ARROW_RIGHT,HOME,END]);import{jsx as _jsx7}from"react/jsx-runtime";var stateAttributesMapping3={...popupStateMapping,...transitionStatusMapping,nestedDialogOpen(value){return value?{[DialogPopupDataAttributes.nestedDialogOpen]:""}:null}},DialogPopup=React49.forwardRef(function(componentProps,forwardedRef){let{className,finalFocus,initialFocus,render,style,...elementProps}=componentProps,{store}=useDialogRootContext(),descriptionElementId=store.useState("descriptionElementId"),disablePointerDismissal=store.useState("disablePointerDismissal"),floatingRootContext=store.useState("floatingRootContext"),rootPopupProps=store.useState("popupProps"),modal=store.useState("modal"),mounted=store.useState("mounted"),nested=store.useState("nested"),nestedOpenDialogCount=store.useState("nestedOpenDialogCount"),open=store.useState("open"),openMethod=store.useState("openMethod"),titleElementId=store.useState("titleElementId"),transitionStatus=store.useState("transitionStatus"),role=store.useState("role");useDialogPortalContext(),useOpenChangeComplete({open,ref:store.context.popupRef,onComplete(){if(open)store.context.onOpenChangeComplete?.(!0)}});function defaultInitialFocus(interactionType){if(interactionType==="touch")return store.context.popupRef.current;return!0}let resolvedInitialFocus=initialFocus===void 0?defaultInitialFocus:initialFocus,nestedDialogOpen=nestedOpenDialogCount>0,element=useRenderElement("div",componentProps,{state:{open,nested,transitionStatus,nestedDialogOpen},props:[rootPopupProps,{"aria-labelledby":titleElementId??void 0,"aria-describedby":descriptionElementId??void 0,role,tabIndex:-1,hidden:!mounted,onKeyDown(event){if(COMPOSITE_KEYS.has(event.key))event.stopPropagation()},style:{[DialogPopupCssVars.nestedDialogs]:nestedOpenDialogCount}},elementProps],ref:[forwardedRef,store.context.popupRef,store.useStateSetter("popupElement")],stateAttributesMapping:stateAttributesMapping3});return _jsx7(FloatingFocusManager,{context:floatingRootContext,openInteractionType:openMethod,disabled:!mounted,closeOnFocusOut:!disablePointerDismissal,initialFocus:resolvedInitialFocus,returnFocus:finalFocus,modal:modal!==!1,restoreFocus:"popup",children:element})});import*as React51 from"react";function inertValue(value){if(isReactVersionAtLeast(19))return value;return value?"true":void 0}import*as React50 from"react";import{jsx as _jsx8}from"react/jsx-runtime";var InternalBackdrop=React50.forwardRef(function(props,ref){let{cutout,...otherProps}=props,clipPath;if(cutout){let rect=cutout.getBoundingClientRect();clipPath=`polygon(0% 0%,100% 0%,100% 100%,0% 100%,0% 0%,${rect.left}px ${rect.top}px,${rect.left}px ${rect.bottom}px,${rect.right}px ${rect.bottom}px,${rect.right}px ${rect.top}px,${rect.left}px ${rect.top}px)`}return _jsx8("div",{ref,role:"presentation","data-base-ui-inert":"",...otherProps,style:{position:"fixed",inset:0,userSelect:"none",WebkitUserSelect:"none",clipPath}})});import{jsx as _jsx9,jsxs as _jsxs3}from"react/jsx-runtime";var DialogPortal=React51.forwardRef(function(props,forwardedRef){let{keepMounted=!1,...portalProps}=props,{store}=useDialogRootContext(),mounted=store.useState("mounted"),modal=store.useState("modal"),open=store.useState("open");if(!(mounted||keepMounted))return null;return _jsx9(DialogPortalContext.Provider,{value:keepMounted,children:_jsxs3(FloatingPortal,{ref:forwardedRef,...portalProps,children:[mounted&&modal===!0&&_jsx9(InternalBackdrop,{ref:store.context.internalBackdropRef,inert:inertValue(!open)}),props.children]})})});import*as React58 from"react";import*as React52 from"react";function useOnFirstRender(fn){let ref=React52.useRef(!0);if(ref.current)ref.current=!1,fn()}import*as React56 from"react";var originalHtmlStyles={},originalBodyStyles={},originalHtmlScrollBehavior="";function hasInsetScrollbars(referenceElement){if(typeof document>"u")return!1;let doc=ownerDocument(referenceElement);return getWindow(doc).innerWidth-doc.documentElement.clientWidth>0}function supportsStableScrollbarGutter(referenceElement){if(!(typeof CSS<"u"&&CSS.supports&&CSS.supports("scrollbar-gutter","stable"))||typeof document>"u")return!1;let doc=ownerDocument(referenceElement),html=doc.documentElement,body=doc.body,scrollContainer=isOverflowElement(html)?html:body,originalScrollContainerOverflowY=scrollContainer.style.overflowY,originalHtmlStyleGutter=html.style.scrollbarGutter;html.style.scrollbarGutter="stable",scrollContainer.style.overflowY="scroll";let before=scrollContainer.offsetWidth;scrollContainer.style.overflowY="hidden";let after=scrollContainer.offsetWidth;return scrollContainer.style.overflowY=originalScrollContainerOverflowY,html.style.scrollbarGutter=originalHtmlStyleGutter,before===after}function preventScrollOverlayScrollbars(referenceElement){let doc=ownerDocument(referenceElement),html=doc.documentElement,body=doc.body,elementToLock=isOverflowElement(html)?html:body,originalElementToLockStyles={overflowY:elementToLock.style.overflowY,overflowX:elementToLock.style.overflowX};return Object.assign(elementToLock.style,{overflowY:"hidden",overflowX:"hidden"}),()=>{Object.assign(elementToLock.style,originalElementToLockStyles)}}function preventScrollInsetScrollbars(referenceElement){let doc=ownerDocument(referenceElement),html=doc.documentElement,body=doc.body,win=getWindow(html),scrollTop=0,scrollLeft=0,updateGutterOnly=!1,resizeFrame=AnimationFrame.create();if(isWebKit2&&(win.visualViewport?.scale??1)!==1)return()=>{};function lockScroll(){let htmlStyles=win.getComputedStyle(html),bodyStyles=win.getComputedStyle(body),scrollbarGutterValue=(htmlStyles.scrollbarGutter||"").includes("both-edges")?"stable both-edges":"stable";scrollTop=html.scrollTop,scrollLeft=html.scrollLeft,originalHtmlStyles={scrollbarGutter:html.style.scrollbarGutter,overflowY:html.style.overflowY,overflowX:html.style.overflowX},originalHtmlScrollBehavior=html.style.scrollBehavior,originalBodyStyles={position:body.style.position,height:body.style.height,width:body.style.width,boxSizing:body.style.boxSizing,overflowY:body.style.overflowY,overflowX:body.style.overflowX,scrollBehavior:body.style.scrollBehavior};let isScrollableY=html.scrollHeight>html.clientHeight,isScrollableX=html.scrollWidth>html.clientWidth,hasConstantOverflowY=htmlStyles.overflowY==="scroll"||bodyStyles.overflowY==="scroll",hasConstantOverflowX=htmlStyles.overflowX==="scroll"||bodyStyles.overflowX==="scroll",scrollbarWidth=Math.max(0,win.innerWidth-body.clientWidth),scrollbarHeight=Math.max(0,win.innerHeight-body.clientHeight),marginY=parseFloat(bodyStyles.marginTop)+parseFloat(bodyStyles.marginBottom),marginX=parseFloat(bodyStyles.marginLeft)+parseFloat(bodyStyles.marginRight),elementToLock=isOverflowElement(html)?html:body;if(updateGutterOnly=supportsStableScrollbarGutter(referenceElement),updateGutterOnly){html.style.scrollbarGutter=scrollbarGutterValue,elementToLock.style.overflowY="hidden",elementToLock.style.overflowX="hidden";return}if(Object.assign(html.style,{scrollbarGutter:scrollbarGutterValue,overflowY:"hidden",overflowX:"hidden"}),isScrollableY||hasConstantOverflowY)html.style.overflowY="scroll";if(isScrollableX||hasConstantOverflowX)html.style.overflowX="scroll";Object.assign(body.style,{position:"relative",height:marginY||scrollbarHeight?`calc(100dvh - ${marginY+scrollbarHeight}px)`:"100dvh",width:marginX||scrollbarWidth?`calc(100vw - ${marginX+scrollbarWidth}px)`:"100vw",boxSizing:"border-box",overflow:"hidden",scrollBehavior:"unset"}),body.scrollTop=scrollTop,body.scrollLeft=scrollLeft,html.setAttribute("data-base-ui-scroll-locked",""),html.style.scrollBehavior="unset"}function cleanup(){if(Object.assign(html.style,originalHtmlStyles),Object.assign(body.style,originalBodyStyles),!updateGutterOnly)html.scrollTop=scrollTop,html.scrollLeft=scrollLeft,html.removeAttribute("data-base-ui-scroll-locked"),html.style.scrollBehavior=originalHtmlScrollBehavior}function handleResize(){cleanup(),resizeFrame.request(lockScroll)}lockScroll();let unsubscribeResize=addEventListener(win,"resize",handleResize);return()=>{if(resizeFrame.cancel(),cleanup(),typeof win.removeEventListener==="function")unsubscribeResize()}}class ScrollLocker{lockCount=0;restore=null;timeoutLock=Timeout.create();timeoutUnlock=Timeout.create();acquire(referenceElement){if(this.lockCount+=1,this.lockCount===1&&this.restore===null)this.timeoutLock.start(0,()=>this.lock(referenceElement));return this.release}release=()=>{if(this.lockCount-=1,this.lockCount===0&&this.restore)this.timeoutUnlock.start(0,this.unlock)};unlock=()=>{if(this.lockCount===0&&this.restore)this.restore?.(),this.restore=null};lock(referenceElement){if(this.lockCount===0||this.restore!==null)return;let html=ownerDocument(referenceElement).documentElement,htmlOverflowY=getWindow(html).getComputedStyle(html).overflowY;if(htmlOverflowY==="hidden"||htmlOverflowY==="clip"){this.restore=NOOP;return}let hasOverlayScrollbars=isIOS||!hasInsetScrollbars(referenceElement);this.restore=hasOverlayScrollbars?preventScrollOverlayScrollbars(referenceElement):preventScrollInsetScrollbars(referenceElement)}}var SCROLL_LOCKER=new ScrollLocker;function useScrollLock(enabled=!0,referenceElement=null){useIsoLayoutEffect(()=>{if(!enabled)return;return SCROLL_LOCKER.acquire(referenceElement)},[enabled,referenceElement])}import*as React55 from"react";import*as React53 from"react";function useEnhancedClickHandler(handler){let lastClickInteractionTypeRef=React53.useRef(""),handlePointerDown=React53.useCallback((event)=>{if(event.defaultPrevented)return;lastClickInteractionTypeRef.current=event.pointerType,handler(event,event.pointerType)},[handler]);return{onClick:React53.useCallback((event)=>{if(event.detail===0){handler(event,"keyboard");return}if("pointerType"in event)handler(event,event.pointerType);else handler(event,lastClickInteractionTypeRef.current);lastClickInteractionTypeRef.current=""},[handler]),onPointerDown:handlePointerDown}}import*as React54 from"react";function useValueChanged(value,onChange){let valueRef=React54.useRef(value),onChangeCallback=useStableCallback(onChange);useIsoLayoutEffect(()=>{if(valueRef.current===value)return;onChangeCallback(valueRef.current)},[value,onChangeCallback]),useIsoLayoutEffect(()=>{valueRef.current=value},[value])}function useOpenInteractionType(open){let[openMethod,setOpenMethod]=React55.useState(null),handleTriggerClick=useStableCallback((_,interactionType)=>{if(!open)setOpenMethod(interactionType||(isIOS?"touch":""))});useValueChanged(open,(previousOpen)=>{if(previousOpen&&!open)setOpenMethod(null)});let{onClick,onPointerDown}=useEnhancedClickHandler(handleTriggerClick);return React55.useMemo(()=>({openMethod,triggerProps:{onClick,onPointerDown}}),[openMethod,onClick,onPointerDown])}function useDialogRoot(params){let{store,parentContext,actionsRef,isDrawer}=params,open=store.useState("open"),disablePointerDismissal=store.useState("disablePointerDismissal"),modal=store.useState("modal"),popupElement=store.useState("popupElement"),{openMethod,triggerProps}=useOpenInteractionType(open);useImplicitActiveTrigger(store);let{forceUnmount}=useOpenStateTransitions(open,store),handleImperativeClose=React56.useCallback(()=>{store.setOpen(!1,createChangeEventDetails(exports_reason_parts.imperativeAction))},[store]);React56.useImperativeHandle(actionsRef,()=>({unmount:forceUnmount,close:handleImperativeClose}),[forceUnmount,handleImperativeClose]);let floatingRootContext=useSyncedFloatingRootContext({popupStore:store,onOpenChange:store.setOpen,treatPopupAsFloatingElement:!0}),[ownNestedOpenDialogs,setOwnNestedOpenDialogs]=React56.useState(0),[ownNestedOpenDrawers,setOwnNestedOpenDrawers]=React56.useState(0),isTopmost=ownNestedOpenDialogs===0,role=useRole(floatingRootContext),dismiss=useDismiss(floatingRootContext,{outsidePressEvent(){if(store.context.internalBackdropRef.current||store.context.backdropRef.current)return"intentional";return{mouse:modal==="trap-focus"?"sloppy":"intentional",touch:"sloppy"}},outsidePress(event){if(!store.context.outsidePressEnabledRef.current)return!1;if("button"in event&&event.button!==0)return!1;if("touches"in event&&event.touches.length!==1)return!1;let target=getTarget(event);if(isTopmost&&!disablePointerDismissal){let eventTarget=target;if(modal)return store.context.internalBackdropRef.current||store.context.backdropRef.current?store.context.internalBackdropRef.current===eventTarget||store.context.backdropRef.current===eventTarget||contains(eventTarget,popupElement)&&!eventTarget?.hasAttribute("data-base-ui-portal"):!0;return!0}return!1},escapeKey:isTopmost});useScrollLock(open&&modal===!0,popupElement);let{getReferenceProps,getFloatingProps,getTriggerProps}=useInteractions([role,dismiss]);store.useContextCallback("onNestedDialogOpen",(dialogCount,drawerCount)=>{setOwnNestedOpenDialogs(dialogCount),setOwnNestedOpenDrawers(drawerCount)}),store.useContextCallback("onNestedDialogClose",()=>{setOwnNestedOpenDialogs(0),setOwnNestedOpenDrawers(0)}),React56.useEffect(()=>{if(parentContext?.onNestedDialogOpen&&open)parentContext.onNestedDialogOpen(ownNestedOpenDialogs+1,ownNestedOpenDrawers+(isDrawer?1:0));if(parentContext?.onNestedDialogClose&&!open)parentContext.onNestedDialogClose();return()=>{if(parentContext?.onNestedDialogClose&&open)parentContext.onNestedDialogClose()}},[isDrawer,open,ownNestedOpenDialogs,ownNestedOpenDrawers,parentContext]);let activeTriggerProps=React56.useMemo(()=>getReferenceProps(triggerProps),[getReferenceProps,triggerProps]),inactiveTriggerProps=React56.useMemo(()=>getTriggerProps(triggerProps),[getTriggerProps,triggerProps]),popupProps=React56.useMemo(()=>getFloatingProps(),[getFloatingProps]);store.useSyncedValues({openMethod,activeTriggerProps,inactiveTriggerProps,popupProps,floatingRootContext,nestedOpenDialogCount:ownNestedOpenDialogs,nestedOpenDrawerCount:ownNestedOpenDrawers})}import*as React57 from"react";var selectors2={...popupStoreSelectors,modal:createSelector((state)=>state.modal),nested:createSelector((state)=>state.nested),nestedOpenDialogCount:createSelector((state)=>state.nestedOpenDialogCount),nestedOpenDrawerCount:createSelector((state)=>state.nestedOpenDrawerCount),disablePointerDismissal:createSelector((state)=>state.disablePointerDismissal),openMethod:createSelector((state)=>state.openMethod),descriptionElementId:createSelector((state)=>state.descriptionElementId),titleElementId:createSelector((state)=>state.titleElementId),viewportElement:createSelector((state)=>state.viewportElement),role:createSelector((state)=>state.role)};class DialogStore extends ReactStore{constructor(initialState){super(createInitialState(initialState),{popupRef:React57.createRef(),backdropRef:React57.createRef(),internalBackdropRef:React57.createRef(),outsidePressEnabledRef:{current:!0},triggerElements:new PopupTriggerMap,onOpenChange:void 0,onOpenChangeComplete:void 0},selectors2)}setOpen=(nextOpen,eventDetails)=>{if(eventDetails.preventUnmountOnClose=()=>{this.set("preventUnmountingOnClose",!0)},!nextOpen&&eventDetails.trigger==null&&this.state.activeTriggerId!=null)eventDetails.trigger=this.state.activeTriggerElement??void 0;if(this.context.onOpenChange?.(nextOpen,eventDetails),eventDetails.isCanceled)return;this.state.floatingRootContext.dispatchOpenChange(nextOpen,eventDetails);let updatedState={open:nextOpen},newTriggerId=eventDetails.trigger?.id??null;if(newTriggerId||nextOpen)updatedState.activeTriggerId=newTriggerId,updatedState.activeTriggerElement=eventDetails.trigger??null;this.update(updatedState)};static useStore(externalStore,initialState){let internalStore=useRefWithInit(()=>{return new DialogStore(initialState)}).current;return externalStore??internalStore}}function createInitialState(initialState={}){return{...createInitialPopupStoreState(),modal:!0,disablePointerDismissal:!1,popupElement:null,viewportElement:null,descriptionElementId:void 0,titleElementId:void 0,openMethod:null,nested:!1,nestedOpenDialogCount:0,nestedOpenDrawerCount:0,role:"dialog",...initialState}}import{jsx as _jsx10}from"react/jsx-runtime";var IsDrawerContext=React58.createContext(!1);function DialogRoot(props){let{children,open:openProp,defaultOpen=!1,onOpenChange,onOpenChangeComplete,disablePointerDismissal=!1,modal=!0,actionsRef,handle,triggerId:triggerIdProp,defaultTriggerId:defaultTriggerIdProp=null}=props,parentDialogRootContext=useDialogRootContext(!0),isDrawer=React58.useContext(IsDrawerContext),nested=Boolean(parentDialogRootContext),store=DialogStore.useStore(handle?.store,{open:defaultOpen,openProp,activeTriggerId:defaultTriggerIdProp,triggerIdProp,modal,disablePointerDismissal,nested});useOnFirstRender(()=>{if(openProp===void 0&&store.state.open===!1&&defaultOpen===!0)store.update({open:!0,activeTriggerId:defaultTriggerIdProp})}),store.useControlledProp("openProp",openProp),store.useControlledProp("triggerIdProp",triggerIdProp),store.useSyncedValues({disablePointerDismissal,nested,modal}),store.useContextCallback("onOpenChange",onOpenChange),store.useContextCallback("onOpenChangeComplete",onOpenChangeComplete);let payload=store.useState("payload");useDialogRoot({store,actionsRef,parentContext:parentDialogRootContext?.store.context,isDrawer,onOpenChange,triggerIdProp});let contextValue=React58.useMemo(()=>({store}),[store]);return _jsx10(IsDrawerContext.Provider,{value:!1,children:_jsx10(DialogRootContext.Provider,{value:contextValue,children:typeof children==="function"?children({payload}):children})})}import*as React59 from"react";var DialogViewportDataAttributes=function(DialogViewportDataAttributes2){return DialogViewportDataAttributes2[DialogViewportDataAttributes2.open=CommonPopupDataAttributes.open]="open",DialogViewportDataAttributes2[DialogViewportDataAttributes2.closed=CommonPopupDataAttributes.closed]="closed",DialogViewportDataAttributes2[DialogViewportDataAttributes2.startingStyle=CommonPopupDataAttributes.startingStyle]="startingStyle",DialogViewportDataAttributes2[DialogViewportDataAttributes2.endingStyle=CommonPopupDataAttributes.endingStyle]="endingStyle",DialogViewportDataAttributes2.nested="data-nested",DialogViewportDataAttributes2.nestedDialogOpen="data-nested-dialog-open",DialogViewportDataAttributes2}({});var stateAttributesMapping4={...popupStateMapping,...transitionStatusMapping,nested(value){return value?{[DialogViewportDataAttributes.nested]:""}:null},nestedDialogOpen(value){return value?{[DialogViewportDataAttributes.nestedDialogOpen]:""}:null}},DialogViewport=React59.forwardRef(function(componentProps,forwardedRef){let{className,render,children,style,...elementProps}=componentProps,keepMounted=useDialogPortalContext(),{store}=useDialogRootContext(),open=store.useState("open"),nested=store.useState("nested"),transitionStatus=store.useState("transitionStatus"),nestedOpenDialogCount=store.useState("nestedOpenDialogCount"),mounted=store.useState("mounted"),nestedDialogOpen=nestedOpenDialogCount>0;return useRenderElement("div",componentProps,{enabled:keepMounted||mounted,state:{open,nested,transitionStatus,nestedDialogOpen},ref:[forwardedRef,store.useStateSetter("viewportElement")],stateAttributesMapping:stateAttributesMapping4,props:[{role:"presentation",hidden:!mounted,style:{pointerEvents:!open?"none":void 0},children},elementProps]})});import*as React60 from"react";var DialogTitle=React60.forwardRef(function(componentProps,forwardedRef){let{render,className,style,id:idProp,...elementProps}=componentProps,{store}=useDialogRootContext(),id=useBaseUiId(idProp);return store.useSyncedValueWithCleanup("titleElementId",id),useRenderElement("h2",componentProps,{ref:forwardedRef,props:[{id},elementProps]})});import*as React61 from"react";var DialogTrigger=React61.forwardRef(function(componentProps,forwardedRef){let{render,className,disabled:disabled2=!1,nativeButton=!0,id:idProp,payload,handle,style,...elementProps}=componentProps,dialogRootContext=useDialogRootContext(!0),store=handle?.store??dialogRootContext?.store;if(!store)throw Error(formatErrorMessage_default(79));let thisTriggerId=useBaseUiId(idProp),floatingContext=store.useState("floatingRootContext"),isOpenedByThisTrigger=store.useState("isOpenedByTrigger",thisTriggerId),triggerElementRef=React61.useRef(null),{registerTrigger,isMountedByThisTrigger}=useTriggerDataForwarding(thisTriggerId,triggerElementRef,store,{payload}),{getButtonProps,buttonRef}=useButton({disabled:disabled2,native:nativeButton}),click=useClick(floatingContext,{enabled:floatingContext!=null}),localInteractionProps=useInteractions([click]),state={disabled:disabled2,open:isOpenedByThisTrigger},rootTriggerProps=store.useState("triggerProps",isMountedByThisTrigger);return useRenderElement("button",componentProps,{state,ref:[buttonRef,forwardedRef,registerTrigger,triggerElementRef],props:[localInteractionProps.getReferenceProps(),rootTriggerProps,{[CLICK_TRIGGER_IDENTIFIER]:"",id:thisTriggerId},elementProps,getButtonProps],stateAttributesMapping:triggerOpenStateMapping})});class DialogHandle{constructor(store){this.store=store??new DialogStore}open(triggerId){let triggerElement=triggerId?this.store.context.triggerElements.getById(triggerId):void 0;this.store.setOpen(!0,createChangeEventDetails(exports_reason_parts.imperativeAction,void 0,triggerElement))}openWithPayload(payload){this.store.set("payload",payload),this.store.setOpen(!0,createChangeEventDetails(exports_reason_parts.imperativeAction,void 0,void 0))}close(){this.store.setOpen(!1,createChangeEventDetails(exports_reason_parts.imperativeAction,void 0,void 0))}get isOpen(){return this.store.state.open}}function createDialogHandle(){return new DialogHandle}import{createContext as createContext9,useContext as useContext9}from"react";import{jsx as jsx19,jsxs as jsxs13,Fragment as Fragment6}from"react/jsx-runtime";var ModalBusyContext=createContext9(!1);function ModalBusyProvider({busy,children}){return jsx19(ModalBusyContext.Provider,{value:busy,children})}function useModalBusy(){return useContext9(ModalBusyContext)}var modalBackdropClasses=["fixed inset-0 isolate z-50 bg-black/55","transition-opacity duration-[var(--bakin-motion-duration-feedback)] ease-bakin-standard","data-starting-style:opacity-0 data-ending-style:opacity-0 supports-backdrop-filter:backdrop-blur-sm","motion-reduce:transition-none"].join(" "),modalCloseButtonClasses="absolute right-bakin-3 top-bakin-3 z-10";function closeIcon(label){return jsxs13(Fragment6,{children:[jsx19("svg",{"aria-hidden":"true",viewBox:"0 0 16 16",className:"size-bakin-4 fill-none stroke-current stroke-[1.75]",children:jsx19("path",{d:"m4 4 8 8M12 4l-8 8",strokeLinecap:"round"})}),jsx19("span",{className:"sr-only",children:label})]})}import{createContext as createContext10,useContext as useContext10}from"react";import{jsx as jsx20}from"react/jsx-runtime";var PluginPortalOwnershipContext=createContext10(null);function PluginPortalBoundary({children}){let pluginId=useContext10(PluginPortalOwnershipContext);if(!pluginId)return children;return jsx20("div",{className:"contents","data-bakin-plugin":pluginId,"data-bakin-plugin-portal":pluginId,children})}import{jsx as jsx21,jsxs as jsxs14}from"react/jsx-runtime";function Sheet({busy=!1,onOpenChange,children,...props}){return jsx21(ModalBusyProvider,{busy,children:jsx21(exports_index_parts2.Root,{"data-slot":"sheet",onOpenChange:(open,details)=>{if(!open&&busy){details.cancel();return}onOpenChange?.(open,details)},...props,children})})}function SheetClose({disabled:disabled2,...props}){let busy=useModalBusy();return jsx21(exports_index_parts2.Close,{"data-slot":"sheet-close",disabled:disabled2||busy,...props})}function SheetPortal({children,...props}){return jsx21(exports_index_parts2.Portal,{"data-slot":"sheet-portal",...props,children:jsx21(PluginPortalBoundary,{children})})}function SheetOverlay({className,...props}){return jsx21(exports_index_parts2.Backdrop,{"data-slot":"sheet-overlay",className:mergeClassName(modalBackdropClasses,className),...props})}var sheetContentClasses=["fixed z-50 flex max-w-full flex-col gap-bakin-4 overflow-hidden border-bakin-border-subtle bg-bakin-surface-default","font-bakin-typography-family-ui text-[length:var(--bakin-typography-size-body)] text-bakin-text-primary shadow-bakin-elevation-overlay outline-none","transition-[opacity,transform] duration-[var(--bakin-motion-duration-transition)] ease-bakin-standard","data-starting-style:opacity-0 data-ending-style:opacity-0 motion-reduce:transition-none","data-[side=right]:inset-y-0 data-[side=right]:right-0 data-[side=right]:h-dvh data-[side=right]:w-full data-[side=right]:border-l data-[side=right]:sm:w-3/4 data-[side=right]:sm:max-w-xl","data-[side=right]:data-starting-style:translate-x-10 data-[side=right]:data-ending-style:translate-x-10","data-[side=left]:inset-y-0 data-[side=left]:left-0 data-[side=left]:h-dvh data-[side=left]:w-full data-[side=left]:border-r data-[side=left]:sm:w-3/4 data-[side=left]:sm:max-w-xl","data-[side=left]:data-starting-style:-translate-x-10 data-[side=left]:data-ending-style:-translate-x-10","data-[side=bottom]:inset-x-0 data-[side=bottom]:bottom-0 data-[side=bottom]:max-h-[calc(100dvh-var(--bakin-layout-space-4))] data-[side=bottom]:w-full data-[side=bottom]:rounded-t-bakin-overlay data-[side=bottom]:border-t","data-[side=bottom]:data-starting-style:translate-y-10 data-[side=bottom]:data-ending-style:translate-y-10","data-[side=top]:inset-x-0 data-[side=top]:top-0 data-[side=top]:max-h-[calc(100dvh-var(--bakin-layout-space-4))] data-[side=top]:w-full data-[side=top]:rounded-b-bakin-overlay data-[side=top]:border-b","data-[side=top]:data-starting-style:-translate-y-10 data-[side=top]:data-ending-style:-translate-y-10","motion-reduce:transform-none"].join(" ");function SheetContent({className,children,closeLabel="Close panel",overlayProps,portalProps,showCloseButton=!0,side="right",...props}){let busy=useModalBusy();return jsxs14(SheetPortal,{...portalProps,children:[jsx21(SheetOverlay,{...overlayProps}),jsxs14(exports_index_parts2.Popup,{...props,"data-slot":"sheet-content","data-side":side,"aria-busy":busy||void 0,className:mergeClassName(sheetContentClasses,className),children:[children,showCloseButton?jsx21(SheetClose,{render:jsx21(Button3,{variant:"ghost",size:"icon-sm",className:modalCloseButtonClasses,"aria-label":closeLabel}),children:closeIcon(closeLabel)}):null]})]})}function SheetHeader({className,inset="default",...props}){return jsx21("div",{"data-slot":"sheet-header","data-inset":inset,className:cn("flex min-w-0 flex-col gap-bakin-1",inset==="default"&&"p-bakin-6 pr-12",className),...props})}function SheetTitle({className,...props}){return jsx21(exports_index_parts2.Title,{"data-slot":"sheet-title",className:mergeClassName("text-[length:var(--bakin-typography-size-title)] font-bakin-typography-weight-semibold leading-tight text-bakin-text-primary",className),...props})}function SheetDescription({className,...props}){return jsx21(exports_index_parts2.Description,{"data-slot":"sheet-description",className:mergeClassName("leading-relaxed text-bakin-text-muted",className),...props})}import{jsx as jsx22,jsxs as jsxs15}from"react/jsx-runtime";var DRAWER_DEFAULT_WIDTH=720,DRAWER_MIN_WIDTH=320,DRAWER_MAX_WIDTH=960;function prettify(raw){let trimmed=raw.trim();if(!trimmed.startsWith("{")&&!trimmed.startsWith("["))return{code:raw,language:"text"};try{return{code:JSON.stringify(JSON.parse(trimmed),null,2),language:"json"}}catch{return{code:raw,language:"text"}}}function DetailSection({label,value}){let{code,language}=prettify(value);return jsxs15("section",{className:"grid min-w-0 gap-bakin-2","aria-label":label,children:[jsxs15("div",{className:"flex min-w-0 items-center gap-bakin-1",children:[jsx22("h3",{children:label}),jsx22(CopyButton,{text:value,label:`Copy ${label.toLowerCase()}`})]}),jsx22(CodeBlock,{code,language,wrap:!0,className:"max-h-80 max-w-full overflow-y-auto"})]})}function statusTone(status){if(status==="failed")return"danger";if(status==="running")return"attention";return"success"}function ToolCallDrawer({call,open,onOpenChange,storageKey="tool-call",defaultWidth=DRAWER_DEFAULT_WIDTH,minWidth=DRAWER_MIN_WIDTH,maxWidth=DRAWER_MAX_WIDTH}){let{size:width,handleProps}=usePersistedLeadingEdgeResize({axis:"x",defaultSize:defaultWidth,minSize:minWidth,maxSize:maxWidth,storageKey:`bakin-drawer-width:${storageKey}`,disabled:!open});if(!call)return null;let metadata=call.metadata&&Object.keys(call.metadata).length?JSON.stringify(call.metadata,null,2):null,truncated=call.metadata?.truncated===!0,style={"--bakin-tool-drawer-width":`${width}px`};return jsx22(Sheet,{open,onOpenChange:(nextOpen)=>onOpenChange(nextOpen),children:jsxs15(SheetContent,{side:"right",style,className:"gap-0 sm:w-[var(--bakin-tool-drawer-width)] sm:max-w-[calc(100vw-var(--bakin-layout-space-6))]",children:[jsx22(ResizeHandle,{orientation:"vertical",handleProps,label:"Resize tool detail",className:cn("absolute inset-y-0 left-0 z-10 hidden w-bakin-2 sm:flex",open?"cursor-col-resize":"cursor-default")}),jsxs15(SheetHeader,{className:"border-b border-bakin-border-subtle",children:[jsx22(SheetTitle,{className:"break-all font-bakin-typography-family-mono",children:call.toolName}),jsx22(SheetDescription,{children:"Exact inputs, output, and runtime details for this tool call."})]}),jsx22("div",{className:"min-h-0 flex-1 overflow-y-auto p-bakin-6",children:jsxs15("div",{className:"grid min-w-0 gap-bakin-6",children:[jsx22(KeyValue,{layout:"columns",items:[{label:"Status",value:jsx22(Badge,{tone:statusTone(call.status),variant:"soft",children:call.status})},...call.durationMs!==void 0?[{label:"Duration",value:formatDuration(call.durationMs),mono:!0}]:[],...call.callId?[{label:"Call ID",value:call.callId,mono:!0,breakValue:!0}]:[]]}),truncated?jsx22("div",{role:"note",className:"rounded-bakin-surface border border-bakin-signal-highlight/60 bg-bakin-signal-highlight/10 px-bakin-3 py-bakin-2 text-[length:var(--bakin-typography-size-meta)] leading-relaxed text-bakin-text-primary",children:"Captured output was truncated. This detail reflects the stored preview, not the complete runtime payload."}):null,call.summary?jsx22(DetailSection,{label:"Summary",value:call.summary}):null,call.inputPreview?jsx22(DetailSection,{label:"Input",value:call.inputPreview}):null,call.outputPreview?jsx22(DetailSection,{label:"Output",value:call.outputPreview}):null,metadata?jsx22(DetailSection,{label:"Metadata",value:metadata}):null,!call.summary&&!call.inputPreview&&!call.outputPreview?jsx22("p",{className:"text-bakin-text-muted",children:"No payload was captured for this call. The runtime reported only its name and status."}):null]})})]})})}import{useMemo as useMemo21,useState as useState19}from"react";import{jsx as jsx23,jsxs as jsxs16}from"react/jsx-runtime";function ConversationHeader({avatar,title,titleAs="div",actions,meta,className,...props}){let TitleTag=titleAs;return jsxs16("header",{"data-slot":"conversation-header",...props,className:cn("flex min-w-0 shrink-0 items-center gap-x-bakin-2 border-b border-bakin-border-subtle px-bakin-4 py-bakin-3","font-bakin-typography-family-ui text-bakin-text-primary",className),children:[avatar?jsx23("span",{className:"flex shrink-0 items-center",children:avatar}):null,jsxs16("div",{className:"flex min-w-0 flex-1 flex-col gap-y-bakin-1",children:[jsxs16("div",{className:"flex min-w-0 items-center gap-x-bakin-2",children:[jsx23(TitleTag,{"data-slot":"conversation-header-title",className:"flex min-w-0 flex-1 items-center gap-bakin-1 text-bakin-typography-size-body font-bakin-typography-weight-medium",children:typeof title==="string"?jsx23("span",{className:"truncate",children:title}):title}),actions?jsx23("span",{"data-slot":"conversation-header-actions",className:"flex shrink-0 items-center gap-bakin-1",children:actions}):null]}),meta?jsx23("div",{"data-slot":"conversation-header-meta",className:"flex min-w-0 items-center gap-bakin-2 text-bakin-typography-size-meta text-bakin-text-muted",children:meta}):null]})]})}import{jsx as jsx24,jsxs as jsxs17}from"react/jsx-runtime";var PANEL_DEFAULT_HEIGHT=420,PANEL_MIN_HEIGHT=240,PANEL_MAX_HEIGHT=800;function ConversationPanel({messages,liveChunks,streaming=!1,agent,resolveAgent,agentControl,onSend,onAbort,onRetry,renderAvatar,renderText,renderAttachment,transformText,formatToolSummary,storageKey,title,showHeader=!0,fitParent=!1,chrome="panel",readOnly=!1,readOnlyNotice,placeholder="Send a message\u2026",inputLabel,autoFocus=!0,emptyState,maxLength,attachments,queueMode=!1,queuedItems,onRemoveQueued,defaultHeight=PANEL_DEFAULT_HEIGHT,minHeight=PANEL_MIN_HEIGHT,maxHeight=PANEL_MAX_HEIGHT,className}){let[openCall,setOpenCall]=useState19(null),{size:height,handleProps}=usePersistedLeadingEdgeResize({axis:"y",defaultSize:defaultHeight,minSize:minHeight,maxSize:maxHeight,storageKey:`bakin-vresize:conv-panel:${storageKey}`,disabled:fitParent}),turns=useMemo21(()=>foldConversation(messages,liveChunks!=null?{liveChunks,liveAgentId:agent?.id}:void 0),[agent?.id,liveChunks,messages]),panelStyle=fitParent?void 0:{height};return jsxs17("section",{"data-conv-panel":"","data-chrome":chrome,"aria-label":typeof title==="string"?title:"Conversation",className:cn("flex min-h-0 min-w-0 flex-col overflow-hidden bg-bakin-canvas-default","font-bakin-typography-family-ui text-[length:var(--bakin-typography-size-body)] text-bakin-text-primary",chrome==="panel"?"rounded-bakin-overlay border border-bakin-border-subtle":"border-t border-bakin-border-subtle",fitParent&&"h-full",className),style:panelStyle,children:[!fitParent?jsx24(ResizeHandle,{orientation:"horizontal",handleProps,label:"Resize conversation panel",className:"flex h-bakin-2 w-full shrink-0 cursor-row-resize"}):null,showHeader?jsx24(ConversationHeader,{"data-conv-panel-header":"",titleAs:"h2",avatar:agent?jsx24("span",{"aria-hidden":"true",className:"shrink-0",children:renderAvatar?renderAvatar(agent):jsx24(DefaultAvatar,{agent,size:"xs"})}):void 0,title:title??"Conversation"}):null,jsx24(Conversation,{turns,mode:"contained",agent,resolveAgent,emptyState,onRetry,onOpenCall:setOpenCall,renderAvatar,renderText,renderAttachment,transformText,formatToolSummary,className:"min-h-0 flex-1"}),queuedItems?.length?jsx24(QueuedMessageList,{items:queuedItems,onRemove:onRemoveQueued}):null,readOnly?jsx24("div",{"data-conv-readonly":"",className:"shrink-0 border-t border-bakin-border-subtle px-bakin-4 py-bakin-3 text-[length:var(--bakin-typography-size-meta)] text-bakin-text-muted",children:readOnlyNotice??"This conversation is read-only."}):jsx24(Composer,{storageKey,onSend,busy:streaming,onAbort,queueMode,queuedCount:queuedItems?.length??0,placeholder,inputLabel,autoFocus,maxLength,attachments,leadingSlot:agentControl?jsx24("span",{"data-conv-agent-control":"",className:"shrink-0 self-end",children:agentControl}):void 0}),jsx24(ToolCallDrawer,{call:openCall,open:openCall!==null,onOpenChange:(nextOpen)=>{if(!nextOpen)setOpenCall(null)},storageKey:`${storageKey}:tool-call`})]})}import{jsx as jsx25,jsxs as jsxs18}from"react/jsx-runtime";function foldTurnChunks(chunks){let turn=foldConversation([],{liveChunks:chunks})[0],segments=[],tools=[],error=null;if(turn?.kind==="agent"){for(let item of turn.items)if(item.type==="text"){let previous=segments[segments.length-1];if(previous&&previous.format===item.format)previous.text+=item.content;else segments.push({format:item.format,text:item.content})}else if(item.type==="activity")for(let call of item.calls)tools.push({key:call.key,toolName:call.toolName,...call.summary!==void 0?{summary:call.summary}:{},status:call.status});else if(!error)error={message:item.message,...item.errorKind?{kind:item.errorKind}:{}}}return{segments,tools,status:turn?.kind==="agent"?turn.statusLabel??null:null,error,done:chunks.some((chunk)=>chunk.type==="done")}}function TurnToolChip({toolName,summary,status}){return jsx25(ToolCallRow,{call:{key:toolName,toolName,status,...summary!==void 0?{summary}:{}}})}function TurnOutputView({chunks,className,live=!1,renderText,rowClassName,textFrame}){let{error,segments,status,tools}=foldTurnChunks(chunks),hasText=segments.length>0,text=hasText?jsx25("div",{"data-turn-output-text":"",className:"grid min-w-0 gap-bakin-2",children:segments.map((segment,index2)=>jsx25("div",{className:"min-w-0",children:renderText?renderText(segment.text,segment.format):jsx25(DefaultText,{content:segment.text,format:segment.format})},index2))}):null;return jsxs18("div",{"data-turn-output":"",className:cn("grid min-w-0 gap-bakin-3 font-bakin-typography-family-ui text-[length:var(--bakin-typography-size-body)]",className),children:[tools.map((tool)=>jsx25("div",{className:cn("min-w-0 overflow-hidden rounded-bakin-surface border border-bakin-border-subtle",rowClassName),children:jsx25(TurnToolChip,{toolName:tool.toolName,summary:tool.summary,status:tool.status})},tool.key)),text?textFrame?textFrame(text):text:null,!hasText&&live?jsxs18("div",{role:"status","aria-live":"polite",className:cn("flex min-h-bakin-6 min-w-0 items-center gap-bakin-2 text-[length:var(--bakin-typography-size-meta)] text-bakin-text-muted",rowClassName),children:[jsx25(SpinnerIcon,{}),jsxs18("span",{className:"min-w-0 break-words",children:[status??"thinking","\u2026"]})]}):null,error?jsxs18(Alert,{tone:"danger",className:rowClassName,children:[jsx25(AlertIcon,{}),jsxs18(AlertDescription,{className:"flex min-w-0 flex-wrap items-center gap-bakin-2",children:[jsx25("span",{className:"min-w-0 break-words",children:error.message}),error.kind?jsx25("span",{className:"min-w-0 max-w-full break-all rounded-bakin-control bg-bakin-signal-danger/10 px-bakin-1 font-bakin-typography-family-mono text-[length:var(--bakin-typography-size-meta)]",children:error.kind}):null]})]}):null]})}var exports_index_parts3={};__export(exports_index_parts3,{Value:()=>ProgressValue,Track:()=>ProgressTrack,Root:()=>ProgressRoot,Label:()=>ProgressLabel,Indicator:()=>ProgressIndicator});import*as React63 from"react";var cache=new Map;function getFormatter(locale,options){let optionsString=JSON.stringify({locale,options}),cachedFormatter=cache.get(optionsString);if(cachedFormatter)return cachedFormatter;let formatter=new Intl.NumberFormat(locale,options);return cache.set(optionsString,formatter),formatter}function formatNumber(value,locale,options){if(value==null)return"";return getFormatter(locale,options).format(value)}function formatNumberValue(value,locale,format){if(value==null)return"";if(!format)return formatNumber(value/100,locale,{style:"percent"});return formatNumber(value,locale,format)}import*as React62 from"react";var ProgressRootContext=React62.createContext(void 0);function useProgressRootContext(){let context=React62.useContext(ProgressRootContext);if(context===void 0)throw Error(formatErrorMessage_default(51));return context}var ProgressRootDataAttributes=function(ProgressRootDataAttributes2){return ProgressRootDataAttributes2.complete="data-complete",ProgressRootDataAttributes2.indeterminate="data-indeterminate",ProgressRootDataAttributes2.progressing="data-progressing",ProgressRootDataAttributes2}({});var progressStateAttributesMapping={status(value){if(value==="progressing")return{[ProgressRootDataAttributes.progressing]:""};if(value==="complete")return{[ProgressRootDataAttributes.complete]:""};if(value==="indeterminate")return{[ProgressRootDataAttributes.indeterminate]:""};return null}};import{jsx as _jsx11,jsxs as _jsxs4}from"react/jsx-runtime";function getDefaultAriaValueText(formattedValue,value){if(value==null)return"indeterminate progress";return formattedValue||`${value}%`}var ProgressRoot=React63.forwardRef(function(componentProps,forwardedRef){let{format,getAriaValueText=getDefaultAriaValueText,locale,max:max2=100,min:min2=0,value,render,className,children,style,...elementProps}=componentProps,[labelId,setLabelId]=React63.useState(),formatOptionsRef=useValueAsRef(format),status="indeterminate";if(Number.isFinite(value))status=value===max2?"complete":"progressing";let formattedValue=formatNumberValue(value,locale,formatOptionsRef.current),state=React63.useMemo(()=>({status}),[status]),defaultProps={"aria-labelledby":labelId,"aria-valuemax":max2,"aria-valuemin":min2,"aria-valuenow":value??void 0,"aria-valuetext":getAriaValueText(formattedValue,value),role:"progressbar",children:_jsxs4(React63.Fragment,{children:[children,_jsx11("span",{role:"presentation",style:visuallyHidden,children:"x"})]})},contextValue=React63.useMemo(()=>({formattedValue,max:max2,min:min2,setLabelId,state,status,value}),[formattedValue,max2,min2,setLabelId,state,status,value]),element=useRenderElement("div",componentProps,{state,ref:forwardedRef,props:[defaultProps,elementProps],stateAttributesMapping:progressStateAttributesMapping});return _jsx11(ProgressRootContext.Provider,{value:contextValue,children:element})});import*as React64 from"react";var ProgressTrack=React64.forwardRef(function(componentProps,forwardedRef){let{render,className,style,...elementProps}=componentProps,{state}=useProgressRootContext();return useRenderElement("div",componentProps,{state,ref:forwardedRef,props:elementProps,stateAttributesMapping:progressStateAttributesMapping})});import*as React65 from"react";function valueToPercent(value,min2,max2){return(value-min2)*100/(max2-min2)}var ProgressIndicator=React65.forwardRef(function(componentProps,forwardedRef){let{render,className,style,...elementProps}=componentProps,{max:max2,min:min2,value,state}=useProgressRootContext(),percentageValue=Number.isFinite(value)&&value!==null?valueToPercent(value,min2,max2):null,getStyles=React65.useCallback(()=>{if(percentageValue==null)return{};return{insetInlineStart:0,height:"inherit",width:`${percentageValue}%`}},[percentageValue]);return useRenderElement("div",componentProps,{state,ref:forwardedRef,props:[{style:getStyles()},elementProps],stateAttributesMapping:progressStateAttributesMapping})});import*as React66 from"react";var ProgressValue=React66.forwardRef(function(componentProps,forwardedRef){let{className,render,children,style,...elementProps}=componentProps,{value,formattedValue,state}=useProgressRootContext(),formattedValueArg=value==null?"indeterminate":formattedValue,formattedValueDisplay=value==null?null:formattedValue;return useRenderElement("span",componentProps,{state,ref:forwardedRef,props:[{"aria-hidden":!0,children:typeof children==="function"?children(formattedValueArg,value):formattedValueDisplay},elementProps],stateAttributesMapping:progressStateAttributesMapping})});import*as React67 from"react";function useRegisteredLabelId(idProp,setLabelId){let id=useBaseUiId(idProp);return useIsoLayoutEffect(()=>{return setLabelId(id),()=>{setLabelId(void 0)}},[id,setLabelId]),id}var ProgressLabel=React67.forwardRef(function(componentProps,forwardedRef){let{render,className,style,id:idProp,...elementProps}=componentProps,{setLabelId,state}=useProgressRootContext(),id=useRegisteredLabelId(idProp,setLabelId);return useRenderElement("span",componentProps,{state,ref:forwardedRef,props:[{id,role:"presentation"},elementProps],stateAttributesMapping:progressStateAttributesMapping})});import{jsx as jsx26,jsxs as jsxs19}from"react/jsx-runtime";function progressStatus(value,max2){if(!Number.isFinite(value))return"indeterminate";return value===max2?"complete":"progressing"}function Progress({className,children,value,max:max2=100,tone="primary",size:size4="sm",markers,...props}){let status=progressStatus(value,max2),trackMarkers=markers?.map((marker)=>({percent:max2>0?Math.min(100,Math.max(0,marker.value/max2*100)):0,label:marker.label})),rootClasses="group/progress flex min-w-0 flex-wrap items-center gap-bakin-3 font-bakin-typography-family-ui",resolvedClassName=typeof className==="function"?(state)=>cn("group/progress flex min-w-0 flex-wrap items-center gap-bakin-3 font-bakin-typography-family-ui",className(state)):cn("group/progress flex min-w-0 flex-wrap items-center gap-bakin-3 font-bakin-typography-family-ui",className);return jsxs19(exports_index_parts3.Root,{value,max:max2,"data-slot":"progress","data-tone":tone,"data-size":size4,"data-status":status,className:resolvedClassName,...props,children:[children,jsx26(ProgressTrack3,{size:size4,markers:trackMarkers,children:jsx26(ProgressIndicator3,{tone})})]})}function ProgressTrack3({className,size:size4="sm",markers,children,...props}){return jsxs19(exports_index_parts3.Track,{className:cn("relative flex w-full items-center overflow-x-hidden rounded-bakin-pill bg-bakin-border-subtle/30",size4==="sm"&&"h-bakin-1",size4==="md"&&"h-bakin-2",size4==="lg"&&"h-bakin-3",className),"data-slot":"progress-track","data-size":size4,...props,children:[children,markers?.map((marker,index2)=>jsx26("span",{"aria-hidden":"true","data-slot":"progress-marker",title:marker.label,className:"absolute inset-y-0 w-px bg-bakin-text-muted",style:{insetInlineStart:`${Math.min(100,Math.max(0,marker.percent))}%`}},index2))]})}function ProgressIndicator3({className,tone="primary",...props}){return jsx26(exports_index_parts3.Indicator,{"data-slot":"progress-indicator","data-tone":tone,className:cn("h-full rounded-bakin-pill transition-[width] duration-[var(--bakin-motion-duration-transition)] ease-bakin-standard","data-[indeterminate]:w-1/3 data-[indeterminate]:animate-pulse data-[indeterminate]:motion-reduce:animate-none",tone==="primary"&&"bg-bakin-action-primary-background",tone==="accent"&&"bg-bakin-signal-accent",tone==="attention"&&"bg-bakin-signal-highlight",tone==="danger"&&"bg-bakin-signal-danger",className),...props})}var exports_index_parts4={};__export(exports_index_parts4,{createHandle:()=>createTooltipHandle,Viewport:()=>TooltipViewport,Trigger:()=>TooltipTrigger,Root:()=>TooltipRoot,Provider:()=>TooltipProvider,Positioner:()=>TooltipPositioner,Portal:()=>TooltipPortal,Popup:()=>TooltipPopup,Handle:()=>TooltipHandle,Arrow:()=>TooltipArrow});import*as React70 from"react";import*as React68 from"react";var TooltipRootContext=React68.createContext(void 0);function useTooltipRootContext(optional){let context=React68.useContext(TooltipRootContext);if(context===void 0&&!optional)throw Error(formatErrorMessage_default(72));return context}import*as React69 from"react";import*as ReactDOM5 from"react-dom";var selectors3={...popupStoreSelectors,disabled:createSelector((state)=>state.disabled),instantType:createSelector((state)=>state.instantType),isInstantPhase:createSelector((state)=>state.isInstantPhase),trackCursorAxis:createSelector((state)=>state.trackCursorAxis),disableHoverablePopup:createSelector((state)=>state.disableHoverablePopup),lastOpenChangeReason:createSelector((state)=>state.openChangeReason),closeOnClick:createSelector((state)=>state.closeOnClick),closeDelay:createSelector((state)=>state.closeDelay),hasViewport:createSelector((state)=>state.hasViewport)};class TooltipStore extends ReactStore{constructor(initialState){super({...createInitialState2(),...initialState},{popupRef:React69.createRef(),onOpenChange:void 0,onOpenChangeComplete:void 0,triggerElements:new PopupTriggerMap},selectors3)}setOpen=(nextOpen,eventDetails)=>{let reason=eventDetails.reason,isHover=reason===exports_reason_parts.triggerHover,isFocusOpen=nextOpen&&reason===exports_reason_parts.triggerFocus,isDismissClose=!nextOpen&&(reason===exports_reason_parts.triggerPress||reason===exports_reason_parts.escapeKey);if(eventDetails.preventUnmountOnClose=()=>{this.set("preventUnmountingOnClose",!0)},this.context.onOpenChange?.(nextOpen,eventDetails),eventDetails.isCanceled)return;this.state.floatingRootContext.dispatchOpenChange(nextOpen,eventDetails);let changeState=()=>{let updatedState={open:nextOpen,openChangeReason:reason};if(isFocusOpen)updatedState.instantType="focus";else if(isDismissClose)updatedState.instantType="dismiss";else if(reason===exports_reason_parts.triggerHover)updatedState.instantType=void 0;let newTriggerId=eventDetails.trigger?.id??null;if(newTriggerId||nextOpen)updatedState.activeTriggerId=newTriggerId,updatedState.activeTriggerElement=eventDetails.trigger??null;this.update(updatedState)};if(isHover)ReactDOM5.flushSync(changeState);else changeState()};static useStore(externalStore,initialState){let internalStore=useRefWithInit(()=>{return new TooltipStore(initialState)}).current,store=externalStore??internalStore,floatingRootContext=useSyncedFloatingRootContext({popupStore:store,onOpenChange:store.setOpen});return store.state.floatingRootContext=floatingRootContext,store}}function createInitialState2(){return{...createInitialPopupStoreState(),disabled:!1,instantType:void 0,isInstantPhase:!1,trackCursorAxis:"none",disableHoverablePopup:!1,openChangeReason:null,closeOnClick:!0,closeDelay:0,hasViewport:!1}}import{jsx as _jsx12}from"react/jsx-runtime";var TooltipRoot=fastComponent(function(props){let{disabled:disabled2=!1,defaultOpen=!1,open:openProp,disableHoverablePopup=!1,trackCursorAxis="none",actionsRef,onOpenChange,onOpenChangeComplete,handle,triggerId:triggerIdProp,defaultTriggerId:defaultTriggerIdProp=null,children}=props,store=TooltipStore.useStore(handle?.store,{open:defaultOpen,openProp,activeTriggerId:defaultTriggerIdProp,triggerIdProp});useOnFirstRender(()=>{if(openProp===void 0&&store.state.open===!1&&defaultOpen===!0)store.update({open:!0,activeTriggerId:defaultTriggerIdProp})}),store.useControlledProp("openProp",openProp),store.useControlledProp("triggerIdProp",triggerIdProp),store.useContextCallback("onOpenChange",onOpenChange),store.useContextCallback("onOpenChangeComplete",onOpenChangeComplete);let openState=store.useState("open"),open=!disabled2&&openState,activeTriggerId=store.useState("activeTriggerId"),payload=store.useState("payload");store.useSyncedValues({trackCursorAxis,disableHoverablePopup}),useIsoLayoutEffect(()=>{if(openState&&disabled2)store.setOpen(!1,createChangeEventDetails(exports_reason_parts.disabled))},[openState,disabled2,store]),store.useSyncedValue("disabled",disabled2),useImplicitActiveTrigger(store);let{forceUnmount,transitionStatus}=useOpenStateTransitions(open,store),floatingRootContext=store.select("floatingRootContext"),isInstantPhase=store.useState("isInstantPhase"),instantType=store.useState("instantType"),lastOpenChangeReason=store.useState("lastOpenChangeReason"),previousInstantTypeRef=React70.useRef(null);useIsoLayoutEffect(()=>{if(transitionStatus==="ending"&&lastOpenChangeReason===exports_reason_parts.none||transitionStatus!=="ending"&&isInstantPhase){if(instantType!=="delay")previousInstantTypeRef.current=instantType;store.set("instantType","delay")}else if(previousInstantTypeRef.current!==null)store.set("instantType",previousInstantTypeRef.current),previousInstantTypeRef.current=null},[transitionStatus,isInstantPhase,lastOpenChangeReason,instantType,store]),useIsoLayoutEffect(()=>{if(open){if(activeTriggerId==null)store.set("payload",void 0)}},[store,activeTriggerId,open]);let handleImperativeClose=React70.useCallback(()=>{store.setOpen(!1,createChangeEventDetails(exports_reason_parts.imperativeAction))},[store]);React70.useImperativeHandle(actionsRef,()=>({unmount:forceUnmount,close:handleImperativeClose}),[forceUnmount,handleImperativeClose]);let dismiss=useDismiss(floatingRootContext,{enabled:!disabled2,referencePress:()=>store.select("closeOnClick")}),clientPoint=useClientPoint(floatingRootContext,{enabled:!disabled2&&trackCursorAxis!=="none",axis:trackCursorAxis==="none"?void 0:trackCursorAxis}),{getReferenceProps,getFloatingProps,getTriggerProps}=useInteractions([dismiss,clientPoint]),activeTriggerProps=React70.useMemo(()=>getReferenceProps(),[getReferenceProps]),inactiveTriggerProps=React70.useMemo(()=>getTriggerProps(),[getTriggerProps]),popupProps=React70.useMemo(()=>getFloatingProps(),[getFloatingProps]);return store.useSyncedValues({activeTriggerProps,inactiveTriggerProps,popupProps}),_jsx12(TooltipRootContext.Provider,{value:store,children:typeof children==="function"?children({payload}):children})});import*as React72 from"react";import*as React71 from"react";var TooltipProviderContext=React71.createContext(void 0);function useTooltipProviderContext(){return React71.useContext(TooltipProviderContext)}var TooltipTriggerDataAttributes=function(TooltipTriggerDataAttributes2){return TooltipTriggerDataAttributes2[TooltipTriggerDataAttributes2.popupOpen=CommonTriggerDataAttributes.popupOpen]="popupOpen",TooltipTriggerDataAttributes2.triggerDisabled="data-trigger-disabled",TooltipTriggerDataAttributes2}({});var OPEN_DELAY=600;var TooltipTrigger=fastComponentRef(function(componentProps,forwardedRef){let{className,render,handle,payload,disabled:disabledProp,delay,closeOnClick=!0,closeDelay,id:idProp,style,...elementProps}=componentProps,rootContext=useTooltipRootContext(!0),store=handle?.store??rootContext;if(!store)throw Error(formatErrorMessage_default(82));let thisTriggerId=useBaseUiId(idProp),isTriggerActive=store.useState("isTriggerActive",thisTriggerId),isOpenedByThisTrigger=store.useState("isOpenedByTrigger",thisTriggerId),floatingRootContext=store.useState("floatingRootContext"),triggerElementRef=React72.useRef(null),delayWithDefault=delay??OPEN_DELAY,closeDelayWithDefault=closeDelay??0,{registerTrigger,isMountedByThisTrigger}=useTriggerDataForwarding(thisTriggerId,triggerElementRef,store,{payload,closeOnClick,closeDelay:closeDelayWithDefault}),providerContext=useTooltipProviderContext(),{delayRef,isInstantPhase,hasProvider}=useDelayGroup(floatingRootContext,{open:isOpenedByThisTrigger});store.useSyncedValue("isInstantPhase",isInstantPhase);let rootDisabled=store.useState("disabled"),disabled2=disabledProp??rootDisabled,trackCursorAxis=store.useState("trackCursorAxis"),disableHoverablePopup=store.useState("disableHoverablePopup"),hoverProps=useHoverReferenceInteraction(floatingRootContext,{enabled:!disabled2,mouseOnly:!0,move:!1,handleClose:!disableHoverablePopup&&trackCursorAxis!=="both"?safePolygon():null,restMs(){let providerDelay=providerContext?.delay,groupOpenValue=typeof delayRef.current==="object"?delayRef.current.open:void 0,computedRestMs=delayWithDefault;if(hasProvider)if(groupOpenValue!==0)computedRestMs=delay??providerDelay??delayWithDefault;else computedRestMs=0;return computedRestMs},delay(){let closeValue=typeof delayRef.current==="object"?delayRef.current.close:void 0,computedCloseDelay=closeDelayWithDefault;if(closeDelay==null&&hasProvider)computedCloseDelay=closeValue;return{close:computedCloseDelay}},triggerElementRef,isActiveTrigger:isTriggerActive,isClosing:()=>store.select("transitionStatus")==="ending"}),focusProps=useFocus(floatingRootContext,{enabled:!disabled2}).reference,state={open:isOpenedByThisTrigger},rootTriggerProps=store.useState("triggerProps",isMountedByThisTrigger);return useRenderElement("button",componentProps,{state,ref:[forwardedRef,registerTrigger,triggerElementRef],props:[hoverProps,focusProps,rootTriggerProps,{onPointerDown(){store.set("closeOnClick",closeOnClick)},id:thisTriggerId,[TooltipTriggerDataAttributes.triggerDisabled]:disabled2?"":void 0},elementProps],stateAttributesMapping:triggerOpenStateMapping})});import*as React75 from"react";import*as React73 from"react";var TooltipPortalContext=React73.createContext(void 0);function useTooltipPortalContext(){let value=React73.useContext(TooltipPortalContext);if(value===void 0)throw Error(formatErrorMessage_default(70));return value}import*as React74 from"react";import*as ReactDOM6 from"react-dom";import{jsxs as _jsxs5}from"react/jsx-runtime";var FloatingPortalLite=React74.forwardRef(function(componentProps,forwardedRef){let{children,container,className,render,style,...elementProps}=componentProps,{portalNode,portalSubtree}=useFloatingPortalNode({container,ref:forwardedRef,componentProps,elementProps});if(!portalSubtree&&!portalNode)return null;return _jsxs5(React74.Fragment,{children:[portalSubtree,portalNode&&ReactDOM6.createPortal(children,portalNode)]})});import{jsx as _jsx13}from"react/jsx-runtime";var TooltipPortal=React75.forwardRef(function(props,forwardedRef){let{keepMounted=!1,...portalProps}=props;if(!(useTooltipRootContext().useState("mounted")||keepMounted))return null;return _jsx13(TooltipPortalContext.Provider,{value:keepMounted,children:_jsx13(FloatingPortalLite,{ref:forwardedRef,...portalProps})})});import*as React79 from"react";import*as React76 from"react";var TooltipPositionerContext=React76.createContext(void 0);function useTooltipPositionerContext(){let context=React76.useContext(TooltipPositionerContext);if(context===void 0)throw Error(formatErrorMessage_default(71));return context}import*as React78 from"react";import*as React77 from"react";var DirectionContext=React77.createContext(void 0);function useDirection(){return React77.useContext(DirectionContext)?.direction??"ltr"}var baseArrow=(options)=>({name:"arrow",options,async fn(state){let{x,y,placement,rects,platform:platform3,elements,middlewareData}=state,{element,padding=0,offsetParent="real"}=evaluate(options,state)||{};if(element==null)return{};let paddingObject=getPaddingObject(padding),coords={x,y},axis=getAlignmentAxis(placement),length=getAxisLength(axis),arrowDimensions=await platform3.getDimensions(element),isYAxis=axis==="y",minProp=isYAxis?"top":"left",maxProp=isYAxis?"bottom":"right",clientProp=isYAxis?"clientHeight":"clientWidth",endDiff=rects.reference[length]+rects.reference[axis]-coords[axis]-rects.floating[length],startDiff=coords[axis]-rects.reference[axis],arrowOffsetParent=offsetParent==="real"?await platform3.getOffsetParent?.(element):elements.floating,clientSize=elements.floating[clientProp]||rects.floating[length];if(!clientSize||!await platform3.isElement?.(arrowOffsetParent))clientSize=elements.floating[clientProp]||rects.floating[length];let centerToReference=endDiff/2-startDiff/2,largestPossiblePadding=clientSize/2-arrowDimensions[length]/2-1,minPadding=Math.min(paddingObject[minProp],largestPossiblePadding),maxPadding=Math.min(paddingObject[maxProp],largestPossiblePadding),min2=minPadding,max2=clientSize-arrowDimensions[length]-maxPadding,center=clientSize/2-arrowDimensions[length]/2+centerToReference,offset4=clamp2(min2,center,max2),shouldAddOffset=!middlewareData.arrow&&getAlignment(placement)!=null&&center!==offset4&&rects.reference[length]/2-(center<min2?minPadding:maxPadding)-arrowDimensions[length]/2<0,alignmentOffset=shouldAddOffset?center<min2?center-min2:center-max2:0;return{[axis]:coords[axis]+alignmentOffset,data:{[axis]:offset4,centerOffset:center-offset4-alignmentOffset,...shouldAddOffset&&{alignmentOffset}},reset:shouldAddOffset}}}),arrow4=(options,deps)=>({...baseArrow(options),options:[options,deps]});var hide4={name:"hide",async fn(state){let{width,height,x,y}=state.rects.reference,anchorHidden=width===0&&height===0&&x===0&&y===0;return{data:{referenceHidden:(await hide3().fn(state)).data?.referenceHidden||anchorHidden}}}};var DEFAULT_SIDES={sideX:"left",sideY:"top"},adaptiveOrigin={name:"adaptiveOrigin",async fn(state){let{x:rawX,y:rawY,rects:{floating:floatRect},elements:{floating},platform:platform3,strategy,placement}=state,win=getWindow(floating),styles=win.getComputedStyle(floating);if(!(styles.transitionDuration!=="0s"&&styles.transitionDuration!==""))return{x:rawX,y:rawY,data:DEFAULT_SIDES};let offsetParent=await platform3.getOffsetParent?.(floating),offsetDimensions={width:0,height:0};if(strategy==="fixed"&&win?.visualViewport)offsetDimensions={width:win.visualViewport.width,height:win.visualViewport.height};else if(offsetParent===win){let doc=ownerDocument(floating);offsetDimensions={width:doc.documentElement.clientWidth,height:doc.documentElement.clientHeight}}else if(await platform3.isElement?.(offsetParent))offsetDimensions=await platform3.getDimensions(offsetParent);let currentSide=getSide(placement),x=rawX,y=rawY;if(currentSide==="left")x=offsetDimensions.width-(rawX+floatRect.width);if(currentSide==="top")y=offsetDimensions.height-(rawY+floatRect.height);let sideX=currentSide==="left"?"right":DEFAULT_SIDES.sideX,sideY=currentSide==="top"?"bottom":DEFAULT_SIDES.sideY;return{x,y,data:{sideX,sideY}}}};function getLogicalSide(sideParam,renderedSide,isRtl){let isLogicalSideParam=sideParam==="inline-start"||sideParam==="inline-end";return{top:"top",right:isLogicalSideParam?isRtl?"inline-start":"inline-end":"right",bottom:"bottom",left:isLogicalSideParam?isRtl?"inline-end":"inline-start":"left"}[renderedSide]}function getOffsetData(state,sideParam,isRtl){let{rects,placement}=state;return{side:getLogicalSide(sideParam,getSide(placement),isRtl),align:getAlignment(placement)||"center",anchor:{width:rects.reference.width,height:rects.reference.height},positioner:{width:rects.floating.width,height:rects.floating.height}}}function useAnchorPositioning(params){let{anchor,positionMethod="absolute",side:sideParam="bottom",sideOffset=0,align="center",alignOffset=0,collisionBoundary,collisionPadding:collisionPaddingParam=5,sticky=!1,arrowPadding=5,disableAnchorTracking=!1,keepMounted=!1,floatingRootContext,mounted,collisionAvoidance,shiftCrossAxis=!1,nodeId,adaptiveOrigin:adaptiveOrigin2,lazyFlip=!1,externalTree}=params,[mountSide,setMountSide]=React78.useState(null);if(!mounted&&mountSide!==null)setMountSide(null);let collisionAvoidanceSide=collisionAvoidance.side||"flip",collisionAvoidanceAlign=collisionAvoidance.align||"flip",collisionAvoidanceFallbackAxisSide=collisionAvoidance.fallbackAxisSide||"end",anchorFn=typeof anchor==="function"?anchor:void 0,anchorFnCallback=useStableCallback(anchorFn),anchorDep=anchorFn?anchorFnCallback:anchor,anchorValueRef=useValueAsRef(anchor),mountedRef=useValueAsRef(mounted),isRtl=useDirection()==="rtl",side=mountSide||{top:"top",right:"right",bottom:"bottom",left:"left","inline-end":isRtl?"left":"right","inline-start":isRtl?"right":"left"}[sideParam],placement=align==="center"?side:`${side}-${align}`,collisionPadding=collisionPaddingParam,bias=1,biasTop=sideParam==="bottom"?bias:0,biasBottom=sideParam==="top"?bias:0,biasLeft=sideParam==="right"?bias:0,biasRight=sideParam==="left"?bias:0;if(typeof collisionPadding==="number")collisionPadding={top:collisionPadding+biasTop,right:collisionPadding+biasRight,bottom:collisionPadding+biasBottom,left:collisionPadding+biasLeft};else if(collisionPadding)collisionPadding={top:(collisionPadding.top||0)+biasTop,right:(collisionPadding.right||0)+biasRight,bottom:(collisionPadding.bottom||0)+biasBottom,left:(collisionPadding.left||0)+biasLeft};let commonCollisionProps={boundary:collisionBoundary==="clipping-ancestors"?"clippingAncestors":collisionBoundary,padding:collisionPadding},arrowRef=React78.useRef(null),sideOffsetRef=useValueAsRef(sideOffset),alignOffsetRef=useValueAsRef(alignOffset),middleware=[offset3((state)=>{let data=getOffsetData(state,sideParam,isRtl),sideAxis=typeof sideOffsetRef.current==="function"?sideOffsetRef.current(data):sideOffsetRef.current,alignAxis=typeof alignOffsetRef.current==="function"?alignOffsetRef.current(data):alignOffsetRef.current;return{mainAxis:sideAxis,crossAxis:alignAxis,alignmentAxis:alignAxis}},[typeof sideOffset!=="function"?sideOffset:0,typeof alignOffset!=="function"?alignOffset:0,isRtl,sideParam])],shiftDisabled=collisionAvoidanceAlign==="none"&&collisionAvoidanceSide!=="shift",crossAxisShiftEnabled=!shiftDisabled&&(sticky||shiftCrossAxis||collisionAvoidanceSide==="shift"),flipMiddleware=collisionAvoidanceSide==="none"?null:flip3({...commonCollisionProps,padding:{top:collisionPadding.top+bias,right:collisionPadding.right+bias,bottom:collisionPadding.bottom+bias,left:collisionPadding.left+bias},mainAxis:!shiftCrossAxis&&collisionAvoidanceSide==="flip",crossAxis:collisionAvoidanceAlign==="flip"?"alignment":!1,fallbackAxisSideDirection:collisionAvoidanceFallbackAxisSide}),shiftMiddleware=shiftDisabled?null:shift3((data)=>{let html=ownerDocument(data.elements.floating).documentElement;return{...commonCollisionProps,rootBoundary:shiftCrossAxis?{x:0,y:0,width:html.clientWidth,height:html.clientHeight}:void 0,mainAxis:collisionAvoidanceAlign!=="none",crossAxis:crossAxisShiftEnabled,limiter:sticky||shiftCrossAxis?void 0:limitShift3((limitData)=>{if(!arrowRef.current)return{};let{width,height}=arrowRef.current.getBoundingClientRect(),sideAxis=getSideAxis(getSide(limitData.placement)),arrowSize=sideAxis==="y"?width:height,offsetAmount=sideAxis==="y"?collisionPadding.left+collisionPadding.right:collisionPadding.top+collisionPadding.bottom;return{offset:arrowSize/2+offsetAmount/2}})}},[commonCollisionProps,sticky,shiftCrossAxis,collisionPadding,collisionAvoidanceAlign]);if(collisionAvoidanceSide==="shift"||collisionAvoidanceAlign==="shift"||align==="center")middleware.push(shiftMiddleware,flipMiddleware);else middleware.push(flipMiddleware,shiftMiddleware);middleware.push(size3({...commonCollisionProps,apply({elements:{floating},availableWidth,availableHeight,rects}){if(!mountedRef.current)return;let floatingStyle=floating.style;floatingStyle.setProperty("--available-width",`${availableWidth}px`),floatingStyle.setProperty("--available-height",`${availableHeight}px`);let dpr=getWindow(floating).devicePixelRatio||1,{x:x2,y:y2,width,height}=rects.reference,anchorWidth=(Math.round((x2+width)*dpr)-Math.round(x2*dpr))/dpr,anchorHeight=(Math.round((y2+height)*dpr)-Math.round(y2*dpr))/dpr;floatingStyle.setProperty("--anchor-width",`${anchorWidth}px`),floatingStyle.setProperty("--anchor-height",`${anchorHeight}px`)}}),arrow4(()=>({element:arrowRef.current||ownerDocument(arrowRef.current).createElement("div"),padding:arrowPadding,offsetParent:"floating"}),[arrowPadding]),{name:"transformOrigin",fn(state){let{elements:elements2,middlewareData:middlewareData2,placement:renderedPlacement2,rects,y:y2}=state,currentRenderedSide=getSide(renderedPlacement2),currentRenderedAxis=getSideAxis(currentRenderedSide),arrowEl=arrowRef.current,arrowX=middlewareData2.arrow?.x||0,arrowY=middlewareData2.arrow?.y||0,arrowWidth=arrowEl?.clientWidth||0,arrowHeight=arrowEl?.clientHeight||0,transformX=arrowX+arrowWidth/2,transformY=arrowY+arrowHeight/2,shiftY=Math.abs(middlewareData2.shift?.y||0),halfAnchorHeight=rects.reference.height/2,sideOffsetValue=typeof sideOffset==="function"?sideOffset(getOffsetData(state,sideParam,isRtl)):sideOffset,isOverlappingAnchor=shiftY>sideOffsetValue,adjacentTransformOrigin={top:`${transformX}px calc(100% + ${sideOffsetValue}px)`,bottom:`${transformX}px ${-sideOffsetValue}px`,left:`calc(100% + ${sideOffsetValue}px) ${transformY}px`,right:`${-sideOffsetValue}px ${transformY}px`}[currentRenderedSide],overlapTransformOrigin=`${transformX}px ${rects.reference.y+halfAnchorHeight-y2}px`;return elements2.floating.style.setProperty("--transform-origin",crossAxisShiftEnabled&&currentRenderedAxis==="y"&&isOverlappingAnchor?overlapTransformOrigin:adjacentTransformOrigin),{}}},hide4,adaptiveOrigin2),useIsoLayoutEffect(()=>{if(!mounted&&floatingRootContext)floatingRootContext.update({referenceElement:null,floatingElement:null,domReferenceElement:null,positionReference:null})},[mounted,floatingRootContext]);let autoUpdateOptions=React78.useMemo(()=>({elementResize:!disableAnchorTracking&&typeof ResizeObserver<"u",layoutShift:!disableAnchorTracking&&typeof IntersectionObserver<"u"}),[disableAnchorTracking]),{refs,elements,x,y,middlewareData,update:update2,placement:renderedPlacement,context,isPositioned,floatingStyles:originalFloatingStyles}=useFloating2({rootContext:floatingRootContext,open:keepMounted?mounted:void 0,placement,middleware,strategy:positionMethod,whileElementsMounted:keepMounted?void 0:(...args)=>autoUpdate(...args,autoUpdateOptions),nodeId,externalTree}),{sideX,sideY}=middlewareData.adaptiveOrigin||DEFAULT_SIDES,resolvedPosition=isPositioned?positionMethod:"fixed",floatingStyles=React78.useMemo(()=>{let base=adaptiveOrigin2?{position:resolvedPosition,[sideX]:x,[sideY]:y}:{position:resolvedPosition,...originalFloatingStyles};if(!isPositioned)base.opacity=0;return base},[adaptiveOrigin2,resolvedPosition,sideX,x,sideY,y,originalFloatingStyles,isPositioned]),registeredPositionReferenceRef=React78.useRef(null);useIsoLayoutEffect(()=>{if(!mounted)return;let anchorValue=anchorValueRef.current,resolvedAnchor=typeof anchorValue==="function"?anchorValue():anchorValue,finalAnchor=(isRef(resolvedAnchor)?resolvedAnchor.current:resolvedAnchor)||null||null;if(finalAnchor!==registeredPositionReferenceRef.current)refs.setPositionReference(finalAnchor),registeredPositionReferenceRef.current=finalAnchor},[mounted,refs,anchorDep,anchorValueRef]),React78.useEffect(()=>{if(!mounted)return;let anchorValue=anchorValueRef.current;if(typeof anchorValue==="function")return;if(isRef(anchorValue)&&anchorValue.current!==registeredPositionReferenceRef.current)refs.setPositionReference(anchorValue.current),registeredPositionReferenceRef.current=anchorValue.current},[mounted,refs,anchorDep,anchorValueRef]),React78.useEffect(()=>{if(keepMounted&&mounted&&elements.domReference&&elements.floating)return autoUpdate(elements.domReference,elements.floating,update2,autoUpdateOptions);return},[keepMounted,mounted,elements,update2,autoUpdateOptions]);let renderedSide=getSide(renderedPlacement),logicalRenderedSide=getLogicalSide(sideParam,renderedSide,isRtl),renderedAlign=getAlignment(renderedPlacement)||"center",anchorHidden=Boolean(middlewareData.hide?.referenceHidden);useIsoLayoutEffect(()=>{if(lazyFlip&&mounted&&isPositioned)setMountSide(renderedSide)},[lazyFlip,mounted,isPositioned,renderedSide]);let arrowStyles=React78.useMemo(()=>({position:"absolute",top:middlewareData.arrow?.y,left:middlewareData.arrow?.x}),[middlewareData.arrow]),arrowUncentered=middlewareData.arrow?.centerOffset!==0;return React78.useMemo(()=>({positionerStyles:floatingStyles,arrowStyles,arrowRef,arrowUncentered,side:logicalRenderedSide,align:renderedAlign,physicalSide:renderedSide,anchorHidden,refs,context,isPositioned,update:update2}),[floatingStyles,arrowStyles,arrowRef,arrowUncentered,logicalRenderedSide,renderedAlign,renderedSide,anchorHidden,refs,context,isPositioned,update2])}function isRef(param){return param!=null&&"current"in param}function getDisabledMountTransitionStyles(transitionStatus){return transitionStatus==="starting"?DISABLED_TRANSITIONS_STYLE:EMPTY_OBJECT}function usePositioner(componentProps,state,{styles,transitionStatus,props,refs,hidden,inert=!1}){let style={...styles};if(inert)style.pointerEvents="none";return useRenderElement("div",componentProps,{state,ref:refs,props:[{role:"presentation",hidden,style},getDisabledMountTransitionStyles(transitionStatus),props],stateAttributesMapping:popupStateMapping})}import{jsx as _jsx14}from"react/jsx-runtime";var TooltipPositioner=React79.forwardRef(function(componentProps,forwardedRef){let{render,className,anchor,positionMethod="absolute",side="top",align="center",sideOffset=0,alignOffset=0,collisionBoundary="clipping-ancestors",collisionPadding=5,arrowPadding=5,sticky=!1,disableAnchorTracking=!1,collisionAvoidance=POPUP_COLLISION_AVOIDANCE,style,...elementProps}=componentProps,store=useTooltipRootContext(),keepMounted=useTooltipPortalContext(),open=store.useState("open"),mounted=store.useState("mounted"),trackCursorAxis=store.useState("trackCursorAxis"),disableHoverablePopup=store.useState("disableHoverablePopup"),floatingRootContext=store.useState("floatingRootContext"),instantType=store.useState("instantType"),transitionStatus=store.useState("transitionStatus"),hasViewport=store.useState("hasViewport"),positioning=useAnchorPositioning({anchor,positionMethod,floatingRootContext,mounted,side,sideOffset,align,alignOffset,collisionBoundary,collisionPadding,sticky,arrowPadding,disableAnchorTracking,keepMounted,collisionAvoidance,adaptiveOrigin:hasViewport?adaptiveOrigin:void 0}),state=React79.useMemo(()=>({open,side:positioning.side,align:positioning.align,anchorHidden:positioning.anchorHidden,instant:trackCursorAxis!=="none"?"tracking-cursor":instantType}),[open,positioning.side,positioning.align,positioning.anchorHidden,trackCursorAxis,instantType]),element=usePositioner(componentProps,state,{styles:positioning.positionerStyles,transitionStatus,props:elementProps,refs:[forwardedRef,store.useStateSetter("positionerElement")],hidden:!mounted,inert:!open||trackCursorAxis==="both"||disableHoverablePopup});return _jsx14(TooltipPositionerContext.Provider,{value:positioning,children:element})});import*as React80 from"react";var stateAttributesMapping5={...popupStateMapping,...transitionStatusMapping},TooltipPopup=React80.forwardRef(function(componentProps,forwardedRef){let{className,render,style,...elementProps}=componentProps,store=useTooltipRootContext(),{side,align}=useTooltipPositionerContext(),open=store.useState("open"),instantType=store.useState("instantType"),transitionStatus=store.useState("transitionStatus"),popupProps=store.useState("popupProps"),floatingContext=store.useState("floatingRootContext");useOpenChangeComplete({open,ref:store.context.popupRef,onComplete(){if(open)store.context.onOpenChangeComplete?.(!0)}});let disabled2=store.useState("disabled"),closeDelay=store.useState("closeDelay");return useHoverFloatingInteraction(floatingContext,{enabled:!disabled2,closeDelay}),useRenderElement("div",componentProps,{state:{open,side,align,instant:instantType,transitionStatus},ref:[forwardedRef,store.context.popupRef,store.useStateSetter("popupElement")],props:[popupProps,getDisabledMountTransitionStyles(transitionStatus),elementProps],stateAttributesMapping:stateAttributesMapping5})});import*as React81 from"react";var TooltipArrow=React81.forwardRef(function(componentProps,forwardedRef){let{className,render,style,...elementProps}=componentProps,store=useTooltipRootContext(),open=store.useState("open"),instantType=store.useState("instantType"),{arrowRef,side,align,arrowUncentered,arrowStyles}=useTooltipPositionerContext();return useRenderElement("div",componentProps,{state:{open,side,align,uncentered:arrowUncentered,instant:instantType},ref:[forwardedRef,arrowRef],props:[{style:arrowStyles,"aria-hidden":!0},elementProps],stateAttributesMapping:popupStateMapping})});import*as React82 from"react";import{jsx as _jsx15}from"react/jsx-runtime";var TooltipProvider=function(props){let{delay,closeDelay,timeout=400}=props,contextValue=React82.useMemo(()=>({delay,closeDelay}),[delay,closeDelay]),delayValue=React82.useMemo(()=>({open:delay,close:closeDelay}),[delay,closeDelay]);return _jsx15(TooltipProviderContext.Provider,{value:contextValue,children:_jsx15(FloatingDelayGroup,{delay:delayValue,timeoutMs:timeout,children:props.children})})};import*as React86 from"react";var TooltipViewportCssVars=function(TooltipViewportCssVars2){return TooltipViewportCssVars2.popupWidth="--popup-width",TooltipViewportCssVars2.popupHeight="--popup-height",TooltipViewportCssVars2}({});import*as React85 from"react";import*as ReactDOM7 from"react-dom";import*as React83 from"react";function usePreviousValue(value){let[state,setState]=React83.useState({current:value,previous:null});if(value!==state.current)setState({current:value,previous:state.current});return state.previous}import*as React84 from"react";function getCssDimensions2(element){let css=getComputedStyle2(element),width=parseFloat(css.width)||0,height=parseFloat(css.height)||0,hasOffset=isHTMLElement(element),offsetWidth=hasOffset?element.offsetWidth:width,offsetHeight=hasOffset?element.offsetHeight:height;if(round(width)!==offsetWidth||round(height)!==offsetHeight)width=offsetWidth,height=offsetHeight;return{width,height}}var DEFAULT_ENABLED=()=>!0;function usePopupAutoResize(parameters){let{popupElement,positionerElement,content,mounted,enabled=DEFAULT_ENABLED,onMeasureLayout:onMeasureLayoutParam,onMeasureLayoutComplete:onMeasureLayoutCompleteParam,side,direction}=parameters,runOnceAnimationsFinish=useAnimationsFinished(popupElement,!0,!1),animationFrame=useAnimationFrame(),committedDimensionsRef=React84.useRef(null),liveDimensionsRef=React84.useRef(null),isInitialRenderRef=React84.useRef(!0),restoreAnchoringStylesRef=React84.useRef(NOOP),onMeasureLayout=useStableCallback(onMeasureLayoutParam),onMeasureLayoutComplete=useStableCallback(onMeasureLayoutCompleteParam),anchoringStyles=React84.useMemo(()=>{let isOriginSide=side==="top",isPhysicalLeft=side==="left";if(direction==="rtl")isOriginSide=isOriginSide||side==="inline-end",isPhysicalLeft=isPhysicalLeft||side==="inline-end";else isOriginSide=isOriginSide||side==="inline-start",isPhysicalLeft=isPhysicalLeft||side==="inline-start";return isOriginSide?{position:"absolute",[side==="top"?"bottom":"top"]:"0",[isPhysicalLeft?"right":"left"]:"0"}:EMPTY_OBJECT},[side,direction]);useIsoLayoutEffect(()=>{if(!mounted||!enabled()||typeof ResizeObserver!=="function"){restoreAnchoringStylesRef.current=NOOP,isInitialRenderRef.current=!0,committedDimensionsRef.current=null,liveDimensionsRef.current=null;return}if(!popupElement||!positionerElement)return;restoreAnchoringStylesRef.current=applyElementStyles(popupElement,anchoringStyles);let observer=new ResizeObserver((entries)=>{let entry=entries[0];if(entry)liveDimensionsRef.current={width:Math.ceil(entry.borderBoxSize[0].inlineSize),height:Math.ceil(entry.borderBoxSize[0].blockSize)}});observer.observe(popupElement),setPopupCssSize(popupElement,"auto");let restorePopupPosition=overrideElementStyle(popupElement,"position","static"),restorePopupTransform=overrideElementStyle(popupElement,"transform","none"),restorePopupScale=overrideElementStyle(popupElement,"scale","1"),restorePositionerAvailableSize=applyElementStyles(positionerElement,{"--available-width":"max-content","--available-height":"max-content"});function restoreMeasurementOverrides(){restorePopupPosition(),restorePopupTransform(),restorePositionerAvailableSize()}function restoreMeasurementOverridesIncludingScale(){restoreMeasurementOverrides(),restorePopupScale()}if(onMeasureLayout?.(),isInitialRenderRef.current||committedDimensionsRef.current===null){setPositionerCssSize(positionerElement,"max-content");let dimensions=getCssDimensions2(popupElement);return committedDimensionsRef.current=dimensions,setPositionerCssSize(positionerElement,dimensions),restoreMeasurementOverridesIncludingScale(),onMeasureLayoutComplete?.(null,dimensions),isInitialRenderRef.current=!1,()=>{observer.disconnect(),restoreAnchoringStylesRef.current(),restoreAnchoringStylesRef.current=NOOP}}setPopupCssSize(popupElement,"auto"),setPositionerCssSize(positionerElement,"max-content");let previousDimensions=committedDimensionsRef.current??liveDimensionsRef.current,newDimensions=getCssDimensions2(popupElement);if(committedDimensionsRef.current=newDimensions,!previousDimensions)return setPositionerCssSize(positionerElement,newDimensions),restoreMeasurementOverridesIncludingScale(),onMeasureLayoutComplete?.(null,newDimensions),()=>{observer.disconnect(),animationFrame.cancel(),restoreAnchoringStylesRef.current(),restoreAnchoringStylesRef.current=NOOP};setPopupCssSize(popupElement,previousDimensions),restoreMeasurementOverridesIncludingScale(),onMeasureLayoutComplete?.(previousDimensions,newDimensions),setPositionerCssSize(positionerElement,newDimensions);let abortController=new AbortController;return animationFrame.request(()=>{setPopupCssSize(popupElement,newDimensions),runOnceAnimationsFinish(()=>{popupElement.style.setProperty("--popup-width","auto"),popupElement.style.setProperty("--popup-height","auto")},abortController.signal)}),()=>{observer.disconnect(),abortController.abort(),animationFrame.cancel(),restoreAnchoringStylesRef.current(),restoreAnchoringStylesRef.current=NOOP}},[content,popupElement,positionerElement,runOnceAnimationsFinish,animationFrame,enabled,mounted,onMeasureLayout,onMeasureLayoutComplete,anchoringStyles])}function overrideElementStyle(element,property,value){let originalValue=element.style.getPropertyValue(property);return element.style.setProperty(property,value),()=>{element.style.setProperty(property,originalValue)}}function applyElementStyles(element,styles){let restorers=[];for(let[key,value]of Object.entries(styles))restorers.push(overrideElementStyle(element,key,value));return restorers.length?()=>{restorers.forEach((restore)=>restore())}:NOOP}function setPopupCssSize(popupElement,size4){let width=size4==="auto"?"auto":`${size4.width}px`,height=size4==="auto"?"auto":`${size4.height}px`;popupElement.style.setProperty("--popup-width",width),popupElement.style.setProperty("--popup-height",height)}function setPositionerCssSize(positionerElement,size4){let width=size4==="max-content"?"max-content":`${size4.width}px`,height=size4==="max-content"?"max-content":`${size4.height}px`;positionerElement.style.setProperty("--positioner-width",width),positionerElement.style.setProperty("--positioner-height",height)}import{jsx as _jsx16,jsxs as _jsxs6}from"react/jsx-runtime";function usePopupViewport(parameters){let{store,side,cssVars,children}=parameters,direction=useDirection(),activeTrigger=store.useState("activeTriggerElement"),activeTriggerId=store.useState("activeTriggerId"),open=store.useState("open"),payload=store.useState("payload"),mounted=store.useState("mounted"),popupElement=store.useState("popupElement"),positionerElement=store.useState("positionerElement"),previousActiveTrigger=usePreviousValue(open?activeTrigger:null),currentContentKey=usePopupContentKey(activeTriggerId,payload),capturedNodeRef=React85.useRef(null),[previousContentNode,setPreviousContentNode]=React85.useState(null),[newTriggerOffset,setNewTriggerOffset]=React85.useState(null),currentContainerRef=React85.useRef(null),previousContainerRef=React85.useRef(null),onAnimationsFinished=useAnimationsFinished(currentContainerRef,!0,!1),cleanupFrame=useAnimationFrame(),[previousContentDimensions,setPreviousContentDimensions]=React85.useState(null),[showStartingStyleAttribute,setShowStartingStyleAttribute]=React85.useState(!1);useIsoLayoutEffect(()=>{return store.set("hasViewport",!0),()=>{store.set("hasViewport",!1)}},[store]);let handleMeasureLayout=useStableCallback(()=>{currentContainerRef.current?.style.setProperty("animation","none"),currentContainerRef.current?.style.setProperty("transition","none"),previousContainerRef.current?.style.setProperty("display","none")}),handleMeasureLayoutComplete=useStableCallback((previousDimensions)=>{if(currentContainerRef.current?.style.removeProperty("animation"),currentContainerRef.current?.style.removeProperty("transition"),previousContainerRef.current?.style.removeProperty("display"),previousDimensions)setPreviousContentDimensions(previousDimensions)}),lastHandledTriggerRef=React85.useRef(null);useIsoLayoutEffect(()=>{if(activeTrigger&&previousActiveTrigger&&activeTrigger!==previousActiveTrigger&&lastHandledTriggerRef.current!==activeTrigger&&capturedNodeRef.current){setPreviousContentNode(capturedNodeRef.current),setShowStartingStyleAttribute(!0);let offset4=calculateRelativePosition(previousActiveTrigger,activeTrigger);setNewTriggerOffset(offset4),cleanupFrame.request(()=>{ReactDOM7.flushSync(()=>{setShowStartingStyleAttribute(!1)}),onAnimationsFinished(()=>{setPreviousContentNode(null),setPreviousContentDimensions(null),capturedNodeRef.current=null})}),lastHandledTriggerRef.current=activeTrigger}},[activeTrigger,previousActiveTrigger,previousContentNode,onAnimationsFinished,cleanupFrame]),useIsoLayoutEffect(()=>{let source=currentContainerRef.current;if(!source)return;let wrapper=ownerDocument(source).createElement("div");for(let child of Array.from(source.childNodes))wrapper.appendChild(child.cloneNode(!0));capturedNodeRef.current=wrapper});let isTransitioning=previousContentNode!=null,childrenToRender;if(!isTransitioning)childrenToRender=_jsx16("div",{"data-current":!0,ref:currentContainerRef,children},currentContentKey);else childrenToRender=_jsxs6(React85.Fragment,{children:[_jsx16("div",{"data-previous":!0,inert:inertValue(!0),ref:previousContainerRef,style:{...previousContentDimensions?{[cssVars.popupWidth]:`${previousContentDimensions.width}px`,[cssVars.popupHeight]:`${previousContentDimensions.height}px`}:null,position:"absolute"},"data-ending-style":showStartingStyleAttribute?void 0:""},"previous"),_jsx16("div",{"data-current":!0,ref:currentContainerRef,"data-starting-style":showStartingStyleAttribute?"":void 0,children},currentContentKey)]});useIsoLayoutEffect(()=>{let container=previousContainerRef.current;if(!container||!previousContentNode)return;container.replaceChildren(...Array.from(previousContentNode.childNodes))},[previousContentNode]),usePopupAutoResize({popupElement,positionerElement,mounted,content:payload,onMeasureLayout:handleMeasureLayout,onMeasureLayoutComplete:handleMeasureLayoutComplete,side,direction});let state={activationDirection:getActivationDirection(newTriggerOffset),transitioning:isTransitioning};return{children:childrenToRender,state}}function getActivationDirection(offset4){if(!offset4)return;return`${getValueWithTolerance(offset4.horizontal,5,"right","left")} ${getValueWithTolerance(offset4.vertical,5,"down","up")}`}function getValueWithTolerance(value,tolerance,positiveLabel,negativeLabel){if(value>tolerance)return positiveLabel;if(value<-tolerance)return negativeLabel;return""}function calculateRelativePosition(from,to){let fromRect=from.getBoundingClientRect(),toRect=to.getBoundingClientRect(),fromCenter={x:fromRect.left+fromRect.width/2,y:fromRect.top+fromRect.height/2},toCenter={x:toRect.left+toRect.width/2,y:toRect.top+toRect.height/2};return{horizontal:toCenter.x-fromCenter.x,vertical:toCenter.y-fromCenter.y}}function usePopupContentKey(activeTriggerId,payload){let[contentKey,setContentKey]=React85.useState(0),previousActiveTriggerIdRef=React85.useRef(activeTriggerId),previousPayloadRef=React85.useRef(payload),pendingPayloadUpdateRef=React85.useRef(!1);return useIsoLayoutEffect(()=>{let previousActiveTriggerId=previousActiveTriggerIdRef.current,previousPayload=previousPayloadRef.current,triggerIdChanged=activeTriggerId!==previousActiveTriggerId,payloadChanged=payload!==previousPayload;if(triggerIdChanged)setContentKey((value)=>value+1),pendingPayloadUpdateRef.current=!payloadChanged;else if(pendingPayloadUpdateRef.current&&payloadChanged)setContentKey((value)=>value+1),pendingPayloadUpdateRef.current=!1;previousActiveTriggerIdRef.current=activeTriggerId,previousPayloadRef.current=payload},[activeTriggerId,payload]),`${activeTriggerId??"current"}-${contentKey}`}var stateAttributesMapping6={activationDirection:(value)=>value?{"data-activation-direction":value}:null},TooltipViewport=React86.forwardRef(function(componentProps,forwardedRef){let{render,className,style,children,...elementProps}=componentProps,store=useTooltipRootContext(),positioner=useTooltipPositionerContext(),instantType=store.useState("instantType"),{children:childrenToRender,state:viewportState}=usePopupViewport({store,side:positioner.side,cssVars:TooltipViewportCssVars,children}),state={activationDirection:viewportState.activationDirection,transitioning:viewportState.transitioning,instant:instantType};return useRenderElement("div",componentProps,{state,ref:forwardedRef,props:[elementProps,{children:childrenToRender}],stateAttributesMapping:stateAttributesMapping6})});class TooltipHandle{constructor(){this.store=new TooltipStore}open(triggerId){let triggerElement=triggerId?this.store.context.triggerElements.getById(triggerId):void 0;if(triggerId&&!triggerElement)throw Error(formatErrorMessage_default(81,triggerId));this.store.setOpen(!0,createChangeEventDetails(exports_reason_parts.imperativeAction,void 0,triggerElement))}close(){this.store.setOpen(!1,createChangeEventDetails(exports_reason_parts.imperativeAction,void 0,void 0))}get isOpen(){return this.store.state.open}}function createTooltipHandle(){return new TooltipHandle}var anchoredPositionerClasses="isolate z-50 outline-none",anchoredPopupClasses=["relative isolate max-h-(--available-height) max-w-[min(var(--available-width),28rem)] origin-(--transform-origin)","overflow-x-hidden overflow-y-auto rounded-bakin-overlay border border-bakin-border-subtle","bg-bakin-surface-default text-bakin-text-primary shadow-bakin-elevation-overlay outline-none","transition-[opacity,transform] duration-[var(--bakin-motion-duration-feedback)] ease-bakin-standard","data-starting-style:scale-95 data-starting-style:opacity-0 data-ending-style:scale-95 data-ending-style:opacity-0","motion-reduce:transform-none motion-reduce:transition-none"].join(" "),optionPopupClasses=[anchoredPopupClasses,"w-(--anchor-width) min-w-48"].join(" ");var optionGroupLabelClasses=["px-bakin-2 pb-bakin-1 pt-bakin-2 font-bakin-typography-family-ui","text-[length:var(--bakin-typography-size-meta)] font-bakin-typography-weight-semibold uppercase tracking-[.08em] text-bakin-text-muted"].join(" "),optionItemClasses=["relative flex min-h-bakin-8 w-full min-w-0 cursor-default select-none items-center gap-bakin-2 rounded-bakin-control","py-bakin-2 pl-bakin-2 pr-bakin-8 font-bakin-typography-family-ui text-[length:var(--bakin-typography-size-body)] leading-snug text-bakin-text-primary outline-none","data-highlighted:bg-bakin-border-subtle/35 data-highlighted:text-bakin-text-primary","data-selected:bg-bakin-action-primary-background/10","data-disabled:pointer-events-none data-disabled:opacity-[var(--bakin-state-opacity-disabled)]",'[&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*="size-"])]:size-bakin-4'].join(" ");var optionScrollButtonClasses=["sticky z-10 flex min-h-bakin-6 w-full cursor-default items-center justify-center","bg-bakin-surface-default text-bakin-text-muted"].join(" ");import{jsx as jsx27,jsxs as jsxs20}from"react/jsx-runtime";function Tooltip(props){return jsx27(exports_index_parts4.Root,{"data-slot":"tooltip",...props})}function TooltipTrigger3(props){return jsx27(exports_index_parts4.Trigger,{"data-slot":"tooltip-trigger",...props})}function TooltipPortal3({children,...props}){return jsx27(exports_index_parts4.Portal,{"data-slot":"tooltip-portal",...props,children:jsx27(PluginPortalBoundary,{children})})}var tooltipClasses=["z-50 inline-flex w-fit max-w-(--available-width) origin-(--transform-origin) items-center gap-bakin-2 rounded-bakin-control","bg-bakin-text-primary px-bakin-3 py-bakin-2 font-bakin-typography-family-ui text-[length:var(--bakin-typography-size-meta)] leading-snug text-bakin-canvas-default shadow-bakin-elevation-overlay","transition-[opacity,transform] duration-[var(--bakin-motion-duration-feedback)] ease-bakin-standard","data-starting-style:scale-95 data-starting-style:opacity-0 data-ending-style:scale-95 data-ending-style:opacity-0","motion-reduce:transform-none motion-reduce:transition-none"].join(" ");function TooltipContent({className,side="top",sideOffset=8,align="center",alignOffset=0,collisionAvoidance,children,portalProps,showArrow=!0,...props}){return jsx27(TooltipPortal3,{...portalProps,children:jsx27(exports_index_parts4.Positioner,{align,alignOffset,side,sideOffset,collisionAvoidance,className:`${anchoredPositionerClasses} max-w-xs`,children:jsxs20(exports_index_parts4.Popup,{...props,role:"tooltip","data-slot":"tooltip-content",className:mergeClassName(tooltipClasses,className),children:[jsx27("span",{"data-slot":"tooltip-copy",className:"relative z-[1] min-w-0",children}),showArrow?jsx27(exports_index_parts4.Arrow,{className:"size-bakin-2 rotate-45 rounded-[1px] bg-bakin-text-primary fill-bakin-text-primary"}):null]})})})}import{jsx as jsx28,jsxs as jsxs21}from"react/jsx-runtime";var TOOLTIP="How full this conversation's model context is \u2014 the runtime's own reading, updated when a reply finishes. "+"The tick marks where the runtime auto-compacts (when it reports one); it may compact before the hard limit.";function contextMeterHasContent(stats){if(!stats)return!1;if(stats.tokens===null)return Boolean(stats.lastCompaction?.at);return!0}function ContextMeter({stats}){if(!contextMeterHasContent(stats)||!stats)return null;let{tokens,contextWindow,compactionThreshold,lastCompaction}=stats;if(tokens===null)return jsxs21(Tooltip,{children:[jsxs21(TooltipTrigger3,{render:jsx28("span",{"data-context-meter":!0,tabIndex:0,className:"inline-flex items-center gap-bakin-2 text-bakin-text-muted"}),"aria-label":"Context size unknown after a compaction",children:["context \u2014 (compacted ",formatRelativeTime(lastCompaction.at),")"]}),jsx28(TooltipContent,{children:TOOLTIP})]});if(contextWindow===null)return jsxs21(Tooltip,{children:[jsxs21(TooltipTrigger3,{render:jsx28("span",{"data-context-meter":!0,tabIndex:0,className:"text-bakin-text-muted"}),"aria-label":"Context size",children:["context ",formatTokenCount(tokens)]}),jsx28(TooltipContent,{children:TOOLTIP})]});let percent=Math.min(100,Math.floor(tokens/contextWindow*100)),tone=percent>=90?"danger":percent>=70?"attention":"primary",tickPercent=compactionThreshold!==null&&compactionThreshold>0&&compactionThreshold<=contextWindow?Math.min(99,Math.round(compactionThreshold/contextWindow*100)):null;return jsxs21(Tooltip,{children:[jsxs21(TooltipTrigger3,{render:jsx28("div",{"data-context-meter":!0,tabIndex:0,className:"flex min-w-0 items-center gap-bakin-2 text-bakin-text-muted"}),children:[jsx28(Progress,{value:percent,max:100,tone,size:"sm","aria-label":`Context ${formatTokenCount(tokens)} of ${formatTokenCount(contextWindow)} (${percent}%)`,markers:tickPercent!==null?[{value:tickPercent,label:"Runtime auto-compaction threshold"}]:void 0,className:"w-20 flex-none"}),jsxs21("span",{children:[formatTokenCount(tokens)," / ",formatTokenCount(contextWindow)," (",percent,"%)"]})]}),jsx28(TooltipContent,{children:TOOLTIP})]})}import{useCallback as useCallback18,useEffect as useEffect22,useRef as useRef32,useState as useState24}from"react";import{useEffect as useEffect21,useRef as useRef31}from"react";var subscribers=globalThis.__bakinPluginEventSubs??(globalThis.__bakinPluginEventSubs=new Map);function usePluginEvent(event,handler){let handlerRef=useRef31(handler);handlerRef.current=handler,useEffect21(()=>{let wrapped=(payload)=>handlerRef.current(payload),set=subscribers.get(event);if(!set)set=new Set,subscribers.set(event,set);return set.add(wrapped),()=>{if(set.delete(wrapped),set.size===0)subscribers.delete(event)}},[event])}function useConversationThread(options){let{threadKey,events}=options,[messages,setMessages]=useState24([]),[meta,setMeta]=useState24(null),[liveChunks,setLiveChunks]=useState24(null),[streaming,setStreaming]=useState24(!1),[sendError,setSendError]=useState24(null),[queued,setQueued]=useState24([]),queuedRef=useRef32(queued);queuedRef.current=queued;let activeKeyRef=useRef32(threadKey);activeKeyRef.current=threadKey;let optionsRef=useRef32(options);optionsRef.current=options;let sendSeqRef=useRef32(0),loadTranscript=useCallback18(async()=>{if(!threadKey){setMeta(null),setMessages([]),setQueued([]);return}let sendSeqAtStart=sendSeqRef.current,body=null;try{body=await optionsRef.current.load(threadKey)}catch{return}if(activeKeyRef.current!==threadKey)return;if(!body)return;if(sendSeqRef.current!==sendSeqAtStart)return;if(setMeta(body.meta??null),setMessages(body.messages),setQueued(body.queued??[]),body.streaming){setStreaming(!0);let seed=body.streamingText;setLiveChunks((prev)=>prev??(seed?[{type:"text",content:seed}]:[]))}},[threadKey]);useEffect22(()=>{setMessages([]),setMeta(null),setLiveChunks(null),setStreaming(!1),setSendError(null),setQueued([]),loadTranscript()},[loadTranscript]);let refetchQueueState=(payload)=>{if(!optionsRef.current.queue?.enabled)return;if(optionsRef.current.keyOf(payload)!==activeKeyRef.current)return;loadTranscript()};usePluginEvent(options.queue?.queuedEvent??"__conv_thread_no_queued__",refetchQueueState),usePluginEvent(options.queue?.startedEvent??"__conv_thread_no_started__",refetchQueueState),usePluginEvent(events.chunk,(payload)=>{if(optionsRef.current.keyOf(payload)!==activeKeyRef.current)return;let chunk=payload.chunk;if(!chunk?.type)return;setStreaming(!0),setLiveChunks((prev)=>{let chunks=prev??[],last=chunks[chunks.length-1];if(chunk.type==="text"&&chunk.content&&last?.type==="text"&&(last.format??"markdown")===(chunk.format??"markdown"))return[...chunks.slice(0,-1),{...last,content:(last.content??"")+chunk.content}];return[...chunks,chunk]})});let settle=useCallback18((payload)=>{setStreaming(!1),setLiveChunks(null),sendSeqRef.current+=1,loadTranscript(),optionsRef.current.onSettled?.(payload)},[loadTranscript]);usePluginEvent(events.done,(payload)=>{if(optionsRef.current.keyOf(payload)===activeKeyRef.current)settle(payload)}),usePluginEvent(events.error,(payload)=>{if(optionsRef.current.keyOf(payload)===activeKeyRef.current)settle(payload)});let streamingRef=useRef32(streaming);streamingRef.current=streaming;let send=useCallback18(async(content,attachments)=>{let key=activeKeyRef.current;if(!key)return;if(streamingRef.current&&!optionsRef.current.queue?.enabled){setSendError("A reply is already in progress");return}if(streamingRef.current){setSendError(null);let result;try{result=await optionsRef.current.post(key,content,attachments)}catch(error){result={ok:!1,error:error instanceof Error?error.message:String(error)}}if(activeKeyRef.current!==key)return;if(!result.ok){setSendError(result.error??`send failed (${result.status??"network"})`);return}let optimistic=optionsRef.current.optimisticRow?.(content,attachments),optimisticUser=optimistic?.kind==="user"?optimistic:void 0;if(result.queued){sendSeqRef.current+=1;let queuedId=result.queued.id;setQueued((current)=>current.some((item)=>item.id===queuedId)?current:[...current,{id:queuedId,ts:new Date().toISOString(),content:optimisticUser?.content??content,...optimisticUser?.attachments?{attachments:optimisticUser.attachments}:{}}])}else sendSeqRef.current+=1,setMessages((current)=>[...current,optimisticUser??{kind:"user",ts:new Date().toISOString(),content}]),setStreaming(!0),setLiveChunks([]);return}setSendError(null),sendSeqRef.current+=1;let row=optionsRef.current.optimisticRow?optionsRef.current.optimisticRow(content,attachments):{kind:"user",ts:new Date().toISOString(),content};setMessages((prev)=>[...prev,row]),setStreaming(!0),setLiveChunks([]);let res;try{res=await optionsRef.current.post(key,content,attachments)}catch(err){res={ok:!1,error:err instanceof Error?err.message:String(err)}}if(!res.ok&&activeKeyRef.current===key)setStreaming(!1),setLiveChunks(null),setSendError(res.error??`send failed (${res.status??"network"})`)},[]),removeQueued=useCallback18(async(id)=>{let key=activeKeyRef.current,item=queuedRef.current.find((candidate)=>candidate.id===id);if(!item)return null;let remove=optionsRef.current.queue?.remove;if(remove){let removed=!1;try{removed=await remove(key,id)}catch{removed=!1}if(!removed)return null}if(activeKeyRef.current===key)setQueued((current)=>current.filter((candidate)=>candidate.id!==id));return item},[]);return{messages,meta,liveChunks,streaming,sendError,queued,removeQueued,send,refresh:loadTranscript}}function attentionForDone(payload,ctx){if(payload.aborted)return{toast:!1,sound:!1,browserNotification:!1,markSeen:payload.key===ctx.visibleKey};if(payload.key===ctx.visibleKey)return{toast:!1,sound:!1,browserNotification:!1,markSeen:!0};return{toast:ctx.settings.toasts,sound:ctx.settings.sound,browserNotification:!0,markSeen:!1}}function visibleIdFromLocation(pathname,base,opts){let match=new RegExp(`^${base.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}/([^/]+)/?$`).exec(pathname);if(!match)return"";let id=decodeURIComponent(match[1]);return opts?.exclude?.includes(id)?"":id}function badgeFor(totalUnread,inflightCount){if(totalUnread>0)return{count:totalUnread,tone:"attention"};if(inflightCount>0)return{tone:"info"};return null}function withUnreadPrefix(title,totalUnread){let base=title.replace(/^\(\d+\+?\)\s+/,"");if(totalUnread<=0)return base;return`(${totalUnread>99?"99+":totalUnread}) ${base}`}var audioCtx=null;function playReplyChime(){try{let Ctor=window.AudioContext??window.webkitAudioContext;if(!Ctor)return;audioCtx??=new Ctor;let ctx=audioCtx;if(ctx.state==="suspended")ctx.resume().catch(()=>{});let now=ctx.currentTime;for(let[offset4,freq]of[[0,740],[0.09,988]]){let osc=ctx.createOscillator(),gain=ctx.createGain();osc.type="sine",osc.frequency.value=freq,gain.gain.setValueAtTime(0,now+offset4),gain.gain.linearRampToValueAtTime(0.06,now+offset4+0.02),gain.gain.exponentialRampToValueAtTime(0.0001,now+offset4+0.25),osc.connect(gain),gain.connect(ctx.destination),osc.start(now+offset4),osc.stop(now+offset4+0.3)}}catch{}}var createStoreImpl=(createState)=>{let state,listeners=new Set,setState=(partial,replace)=>{let nextState=typeof partial==="function"?partial(state):partial;if(!Object.is(nextState,state)){let previousState=state;state=(replace!=null?replace:typeof nextState!=="object"||nextState===null)?nextState:Object.assign({},state,nextState),listeners.forEach((listener)=>listener(state,previousState))}},getState=()=>state,api={setState,getState,getInitialState:()=>initialState,subscribe:(listener)=>{return listeners.add(listener),()=>listeners.delete(listener)}},initialState=state=createState(setState,getState,api);return api},createStore=(createState)=>createState?createStoreImpl(createState):createStoreImpl;import React87 from"react";var identity=(arg)=>arg;function useStore2(api,selector=identity){let slice=React87.useSyncExternalStore(api.subscribe,React87.useCallback(()=>selector(api.getState()),[api,selector]),React87.useCallback(()=>selector(api.getInitialState()),[api,selector]));return React87.useDebugValue(slice),slice}var createImpl=(createState)=>{let api=createStore(createState),useBoundStore=(selector)=>useStore2(api,selector);return Object.assign(useBoundStore,api),useBoundStore},create=(createState)=>createState?createImpl(createState):createImpl;async function parsePackageStatesResponse(res){if(!res||!res.ok)return{};try{let body=await res.json();if(!body.ok||!Array.isArray(body.agents))return{};let map={};for(let row of body.agents)map[row.agentId]=row;return map}catch{return{}}}var ROSTER_CACHE_KEY="bakin-agent-roster-v1";function readRosterCache(){try{if(typeof window>"u")return null;let raw=window.localStorage.getItem(ROSTER_CACHE_KEY);if(!raw)return null;let parsed=JSON.parse(raw);if(!Array.isArray(parsed.agents))return null;return{agents:parsed.agents.filter((a)=>!!a&&typeof a==="object"&&typeof a.id==="string"&&typeof a.name==="string"),displaySettings:parsed.displaySettings&&typeof parsed.displaySettings==="object"?parsed.displaySettings:{},mainAgentId:typeof parsed.mainAgentId==="string"?parsed.mainAgentId:null}}catch{return null}}function writeRosterCache(cache2){try{window.localStorage.setItem(ROSTER_CACHE_KEY,JSON.stringify(cache2))}catch{}}var hydrated=readRosterCache(),hydratedMap={};for(let a of hydrated?.agents??[])hydratedMap[a.id]=a;var useAgentStore=create((set,get)=>({agents:hydrated?.agents??[],agentIds:(hydrated?.agents??[]).map((a)=>a.id),agentMap:hydratedMap,agentsWithStatus:[],displaySettings:hydrated?.displaySettings??{},teams:[],packageStates:{},mainAgentId:hydrated?.mainAgentId??null,loaded:!1,load:async()=>{try{let[rosterRes,pkgRes]=await Promise.all([fetch("/api/plugins/team/"),fetch("/api/agent-packages?check=1").catch(()=>null)]);if(!rosterRes.ok){set({loaded:!0});return}let data=await rosterRes.json(),agents=data.agents.map(({status:_status,heartbeat:_heartbeat,heartbeatAge:_heartbeatAge,model:_model,...meta})=>meta),agentMap={};for(let a of agents)agentMap[a.id]=a;let packageStates=await parsePackageStatesResponse(pkgRes);set({agents,agentIds:agents.map((a)=>a.id),agentMap,agentsWithStatus:data.agents,displaySettings:data.displaySettings,teams:data.teams??[],packageStates,mainAgentId:data.mainAgentId??null,loaded:!0}),writeRosterCache({agents,displaySettings:data.displaySettings,mainAgentId:data.mainAgentId??null})}catch{set({loaded:!0})}},refreshPackageStates:async()=>{let res=await fetch("/api/agent-packages?check=1").catch(()=>null),packageStates=await parsePackageStatesResponse(res);set({packageStates})},updateDisplay:async(agentId,patch)=>{let current=get().displaySettings,updated={...current,[agentId]:{...current[agentId],...patch}};set({displaySettings:updated}),await fetch("/api/plugins/team/settings",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(updated)})}}));function useAgent(agentId){return useAgentStore((s)=>s.agentMap[agentId])}function useAgentColor(agentId){return useAgentStore((s)=>s.displaySettings[agentId]?.accentColor??"#a1a1aa")}function useAgentDisplayName(agentId){return useAgentStore((s)=>s.displaySettings[agentId]?.displayName)}import{useLocation,useNavigate,useParams as useTanstackParams}from"@tanstack/react-router";import{useMemo as useMemo28}from"react";function toNavigationOptions2(url){let hashIndex=url.indexOf("#"),beforeHash=hashIndex>=0?url.slice(0,hashIndex):url,hash=hashIndex>=0?url.slice(hashIndex+1):"",queryIndex=beforeHash.indexOf("?"),to=queryIndex>=0?beforeHash.slice(0,queryIndex):beforeHash,query=queryIndex>=0?beforeHash.slice(queryIndex+1):"",search=Object.create(null);for(let[key,raw]of new URLSearchParams(query))search[key]=raw;return{to,search,hash}}function useRouter2(){let navigate=useNavigate();return useMemo28(()=>({push:(url,options)=>{navigate({...toNavigationOptions2(url),...options?.scroll===!1?{resetScroll:!1}:{}})},replace:(url)=>{navigate({...toNavigationOptions2(url),replace:!0,resetScroll:!1})},back:()=>{if(typeof window<"u")window.history.back()},forward:()=>{if(typeof window<"u")window.history.forward()},refresh:()=>{if(typeof window<"u")window.location.reload()},prefetch:()=>{}}),[navigate])}var PRESENTATION_COLOR=/^(?:#(?:[0-9a-f]{3}|[0-9a-f]{4}|[0-9a-f]{6}|[0-9a-f]{8})|(?:rgb|hsl)a?\([0-9.,%+\-\s/]+\)|var\(--[a-z0-9][a-z0-9-]*\)|[a-z]+)$/i;function safePresentationColor(value){let color=value?.trim();return color&&PRESENTATION_COLOR.test(color)?color:void 0}import{jsx as jsx29,jsxs as jsxs22}from"react/jsx-runtime";var presence={online:{label:"Online",dot:"bg-bakin-action-primary-background",active:!1},working:{label:"Working",dot:"bg-bakin-signal-highlight",active:!0},available:{label:"Available",dot:"bg-bakin-action-primary-background",active:!1},offline:{label:"Offline",dot:"bg-bakin-text-muted",active:!1},error:{label:"Needs attention",dot:"bg-bakin-signal-danger",active:!1}};function identityInitials(agent){if(agent.initials?.trim())return agent.initials.trim().slice(0,2).toUpperCase();let words=agent.name.trim().split(/\s+/).filter(Boolean);if(!words.length)return"?";return`${words[0]?.[0]??""}${words.length>1?words.at(-1)?.[0]??"":""}`.toUpperCase()}function AgentAvatar({agent,size:size4="md",showStatus=!1,status,decorative=!1,tooltip=!0,className}){let statusLabel2=showStatus&&status?presence[status].label:null,label=statusLabel2?`${agent.name}, ${statusLabel2}`:agent.name,fallbackColor=safePresentationColor(agent.color),core=jsx29("span",{"data-agent-avatar":"","data-agent-id":agent.id,"data-status":statusLabel2?status:void 0,role:decorative?void 0:"img","aria-hidden":decorative||void 0,"aria-label":decorative?void 0:label,className:`relative inline-flex shrink-0 items-center justify-center align-middle leading-none ${tooltip?"cursor-help":""} ${className??""}`,children:jsxs22(Avatar,{size:size4,children:[agent.imageSrc?jsx29(AvatarImage3,{src:agent.imageSrc,alt:"",className:"object-cover object-top"}):null,jsxs22(AvatarFallback3,{children:[identityInitials(agent),fallbackColor?jsx29("svg",{"aria-hidden":"true",viewBox:"0 0 100 100",className:"pointer-events-none absolute inset-0 size-full",children:jsx29("circle",{cx:"50",cy:"50",r:"47",fill:"none",stroke:fallbackColor,strokeWidth:"6"})}):null]}),statusLabel2?jsx29(AvatarBadge,{"aria-hidden":"true",className:presence[status].dot,children:jsx29("span",{className:"sr-only",children:statusLabel2})}):null]})});if(!tooltip)return core;return jsxs22(Tooltip,{children:[jsx29(TooltipTrigger3,{render:core}),jsx29(TooltipContent,{"data-agent-avatar-card":"",children:jsxs22("span",{className:"flex items-center gap-bakin-3",children:[jsx29(AgentAvatar,{agent,size:"lg",decorative:!0,tooltip:!1}),jsxs22("span",{className:"font-bakin-typography-weight-semibold",children:[agent.name,statusLabel2?jsx29("span",{className:"ml-bakin-2 font-bakin-typography-weight-regular opacity-80",children:statusLabel2}):null]})]})})]})}import{jsx as jsx30}from"react/jsx-runtime";function AgentAvatar2({agentId,size:size4="md",showStatus=!1,status,className}){let agent=useAgent(agentId),displayName=useAgentDisplayName(agentId),color=useAgentColor(agentId);return jsx30(AgentAvatar,{agent:{id:agentId,name:displayName??agent?.name??(agentId||"Unknown agent"),imageSrc:agent?.headshot||void 0,color:agent?color:void 0,initials:agent?void 0:"?"},size:size4,showStatus,status,className})}import{jsx as jsx31,jsxs as jsxs23}from"react/jsx-runtime";function ConversationReplyToast({agentId,title,preview,to,onNavigate,testId}){let agent=useAgent(agentId),router=useRouter2();return jsxs23("button",{type:"button",...testId?{[testId.attr]:testId.value}:{},onClick:()=>{onNavigate?.(),router.push(to)},className:"flex max-w-sm items-start gap-2 text-left",children:[jsx31(AgentAvatar2,{agentId,size:"xs"}),jsxs23("span",{className:"min-w-0",children:[jsxs23("span",{className:"block text-sm font-medium",children:[agent?.name??agentId," ",title]}),preview?jsx31("span",{className:"block truncate text-xs text-bakin-text-muted",children:preview}):null]})]})}import{useCallback as useCallback19,useEffect as useEffect24,useRef as useRef33,useState as useState25}from"react";import{useEffect as useEffect23}from"react";function buildNavItemsSnapshot(registry){let items=[];for(let[pluginId,navItems]of registry.manifestNavByPlugin.entries()){if(registry.navByPlugin.has(pluginId))continue;items.push(...navItems)}for(let navItems of registry.navByPlugin.values())items.push(...navItems);return items.sort((a,b)=>(a.order??100)-(b.order??100))}function getRegistry(){let g=globalThis;if(!g.__bakinClientRegistry)g.__bakinClientRegistry={navByPlugin:new Map,manifestNavByPlugin:new Map,routesByPlugin:new Map,cleanupByPlugin:new Map,navItemsSnapshot:[],version:0,listeners:new Set,badgesByPlugin:new Map,badgesSnapshot:new Map,badgeListeners:new Set,hitRenderersByPlugin:new Map,hitRenderersSnapshot:new Map,hitRendererListeners:new Set};let registry=g.__bakinClientRegistry;if(!registry.manifestNavByPlugin)registry.manifestNavByPlugin=new Map;if(!Array.isArray(registry.navItemsSnapshot))registry.navItemsSnapshot=buildNavItemsSnapshot(registry);if(!registry.badgesByPlugin)registry.badgesByPlugin=new Map;if(!registry.badgesSnapshot)registry.badgesSnapshot=buildBadgesSnapshot(registry);if(!registry.badgeListeners)registry.badgeListeners=new Set;if(!registry.hitRenderersByPlugin)registry.hitRenderersByPlugin=new Map;if(!registry.hitRenderersSnapshot)registry.hitRenderersSnapshot=buildHitRenderersSnapshot(registry);if(!registry.hitRendererListeners)registry.hitRendererListeners=new Set;return registry}function buildHitRenderersSnapshot(registry){let snapshot=new Map;for(let byType of registry.hitRenderersByPlugin.values())for(let[type,renderer]of byType)if(!snapshot.has(type))snapshot.set(type,renderer);return snapshot}function buildBadgesSnapshot(registry){let snapshot=new Map;for(let byNavItemId of registry.badgesByPlugin.values())for(let[navItemId,badge]of byNavItemId)if(!snapshot.has(navItemId))snapshot.set(navItemId,badge);return snapshot}function bumpBadges(){let registry=getRegistry();registry.badgesSnapshot=buildBadgesSnapshot(registry);for(let l of registry.badgeListeners)try{l()}catch(err){console.error("[bakin] badge listener threw:",err)}}function setNavBadge(pluginId,navItemId,badge){let registry=getRegistry(),plugin=registry.badgesByPlugin.get(pluginId);if(badge===null){if(!plugin?.has(navItemId))return;if(plugin.delete(navItemId),plugin.size===0)registry.badgesByPlugin.delete(pluginId);bumpBadges();return}let prev=plugin?.get(navItemId);if(prev&&prev.count===badge.count&&prev.tone===badge.tone)return;if(!plugin)plugin=new Map,registry.badgesByPlugin.set(pluginId,plugin);plugin.set(navItemId,{count:badge.count,tone:badge.tone}),bumpBadges()}function useNavBadge2(pluginId,navItemId,badge){let key=badge?`${badge.count??""}:${badge.tone??""}`:"null";useEffect23(()=>{setNavBadge(pluginId,navItemId,badge)},[pluginId,navItemId,key])}var DEFAULT_DURATION={success:4000,info:4000,error:1e4},counter=0,useToastStore2=create((set)=>({toasts:[],add:(toast2)=>{let id=String(++counter);return set((s)=>({toasts:[...s.toasts,{...toast2,id}]})),setTimeout(()=>{set((s)=>({toasts:s.toasts.filter((t)=>t.id!==id)}))},toast2.duration??DEFAULT_DURATION[toast2.type]),id},dismiss:(id)=>set((s)=>({toasts:s.toasts.filter((t)=>t.id!==id)}))}));function toast2(message,type="info",duration){return useToastStore2.getState().add({message,type,...duration?{duration}:{}})}function navigateToUrl(url){let bridge=globalThis.__bakinNavigate;if(bridge){bridge(url);return}window.location.assign(url)}function isNotificationsSupported(){return typeof window<"u"&&"Notification"in window&&window.isSecureContext}function isNotificationsEnabled(){if(!isNotificationsSupported())return!1;return localStorage.getItem("bakin-notifications-enabled")==="true"&&Notification.permission==="granted"}function sendBrowserNotification(title,body,url){if(!isNotificationsEnabled())return;if(document.hasFocus())return;let notification=new Notification(title,{body,icon:"/favicon.ico"});if(url)notification.onclick=()=>{window.focus(),navigateToUrl(url),notification.close()}}function useConversationAttention(config){let[unreadTotal,setUnreadTotal]=useState25(0),[inflight,setInflight]=useState25(new Set),baseTitleRef=useRef33(null),configRef=useRef33(config);configRef.current=config;let refreshSeqRef=useRef33(0),refreshTotals=useCallback19(async()=>{let seq=++refreshSeqRef.current;try{let totals=await configRef.current.refreshTotals();if(!totals||seq!==refreshSeqRef.current)return;setUnreadTotal(totals.unreadTotal),setInflight(new Set(totals.inflightKeys))}catch{}},[]);useEffect24(()=>{refreshTotals()},[refreshTotals]),usePluginEvent(config.events.started??`${config.pluginId}.__attention_noop_started`,(payload)=>{let key=configRef.current.keyOf(payload);setInflight((prev)=>prev.has(key)?prev:new Set(prev).add(key))}),usePluginEvent(config.events.chunk,(payload)=>{let key=configRef.current.keyOf(payload);setInflight((prev)=>prev.has(key)?prev:new Set(prev).add(key))}),usePluginEvent(config.events.done,(payload)=>{let cfg=configRef.current,key=cfg.keyOf(payload);setInflight((prev)=>{let next=new Set(prev);return next.delete(key),next});let done={key,agentId:String(payload.agentId??""),...typeof payload.preview==="string"?{preview:payload.preview}:{},...payload.aborted?{aborted:!0}:{}},actions=attentionForDone(done,{visibleKey:cfg.visibleKey(),settings:cfg.settings?.()??{sound:!0,toasts:!0}});if(actions.toast){let toastId=null,dismiss=()=>{if(toastId)useToastStore2.getState().dismiss(toastId)};toastId=toast2(cfg.renderToast(done,dismiss),"info")}if(actions.sound)(cfg.chime??playReplyChime)();if(actions.browserNotification&&done.preview){let desc=cfg.osNotification(done);if(desc)sendBrowserNotification(desc.title,desc.body,desc.href)}refreshTotals()}),usePluginEvent(config.events.error,(payload)=>{let cfg=configRef.current,key=cfg.keyOf(payload);setInflight((prev)=>{let next=new Set(prev);return next.delete(key),next});let settings=cfg.settings?.()??{sound:!0,toasts:!0};if(cfg.visibleKey()!==key&&settings.toasts){let message=cfg.errorToast?.(payload);if(message)toast2(message,"error")}refreshTotals()});let refreshEvents=config.events.refresh??[];usePluginEvent(refreshEvents[0]??`${config.pluginId}.__attention_noop_0`,()=>{refreshTotals()}),usePluginEvent(refreshEvents[1]??`${config.pluginId}.__attention_noop_1`,()=>{refreshTotals()}),useNavBadge2(config.pluginId,config.navItemId,badgeFor(unreadTotal,inflight.size));let titlePrefix=config.titlePrefix??!1;useEffect24(()=>{if(!titlePrefix)return;baseTitleRef.current??=document.title,document.title=withUnreadPrefix(baseTitleRef.current,unreadTotal)},[titlePrefix,unreadTotal])}export{writeComposerDraft,withUnreadPrefix,visibleIdFromLocation,useConversationThread,useConversationAttention,playReplyChime,humanizeActivity,formatUsageCost,formatTokenCount,formatRelativeTime,formatDuration,formatDayLabel,formatAbsoluteTime,foldTurnChunks,foldConversation,dayKey,contextMeterHasContent,badgeFor,attentionForDone,UserMessage,TurnToolChip,TurnTimestamp,TurnOutputView,ToolCallRow,ToolCallDrawer,ThinkingIndicator,QueuedMessageList,ConversationReplyToast,ConversationPanel,ConversationHeader,ConversationEmptyState,Conversation,ContextMeter,Composer,AgentTurn,ActivityGroup};