@piedata/pieui 1.2.4 → 1.2.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.esm.js CHANGED
@@ -65,4 +65,4 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
65
65
  Failed Guardrail Reason: ${$.guardrail.policyHint}.
66
66
  Failure Details: ${JSON.stringify($.output.outputInfo??{})}.
67
67
  Please respond again following policy. Apologize for not being able to answer the question (while avoiding the specific reason) and divert discussion back to an approved topic immediately and not invite more discussion.
68
- `.trim()}function _0($,X){return $ in X&&typeof X[$]!=="undefined"}function ix($){return _0("modalities",$)||_0("inputAudioFormat",$)||_0("outputAudioFormat",$)||_0("inputAudioTranscription",$)||_0("turnDetection",$)||_0("inputAudioNoiseReduction",$)||_0("speed",$)}function oM($){if(!ix($)){let X=$.audio?.input?{format:RQ($.audio.input.format),noiseReduction:$.audio.input.noiseReduction??null,transcription:$.audio.input.transcription,turnDetection:$.audio.input.turnDetection}:void 0,Q=$.audio?.output?.voice??$.voice,W=$.audio?.output||typeof Q!=="undefined"?{format:RQ($.audio?.output?.format),voice:Q,speed:$.audio?.output?.speed}:void 0;return{model:$.model,instructions:$.instructions,toolChoice:$.toolChoice,tools:$.tools,tracing:$.tracing,providerData:$.providerData,prompt:$.prompt,outputModalities:$.outputModalities,audio:X||W?{input:X,output:W}:void 0}}return{model:$.model,instructions:$.instructions,toolChoice:$.toolChoice,tools:$.tools,tracing:$.tracing,providerData:$.providerData,prompt:$.prompt,outputModalities:$.modalities,audio:{input:{format:RQ($.inputAudioFormat),noiseReduction:$.inputAudioNoiseReduction??null,transcription:$.inputAudioTranscription,turnDetection:$.turnDetection},output:{format:RQ($.outputAudioFormat),voice:$.voice,speed:$.speed}}}}function RQ($){if(!$)return;if(typeof $==="object")return $;let X=String($);if(X==="pcm16")return{type:"audio/pcm",rate:24000};if(X==="g711_ulaw")return{type:"audio/pcmu"};if(X==="g711_alaw")return{type:"audio/pcma"};return{type:"audio/pcm",rate:24000}}var a0$=K.object({itemId:K.string()}),tq=K.discriminatedUnion("role",[K.object({itemId:K.string(),previousItemId:K.string().nullable().optional(),type:K.literal("message"),role:K.literal("system"),content:K.array(K.object({type:K.literal("input_text"),text:K.string()}))}),K.object({itemId:K.string(),previousItemId:K.string().nullable().optional(),type:K.literal("message"),role:K.literal("user"),status:K.enum(["in_progress","completed"]),content:K.array(K.object({type:K.literal("input_text"),text:K.string()}).or(K.object({type:K.literal("input_audio"),audio:K.string().nullable().optional(),transcript:K.string().nullable()})))}),K.object({itemId:K.string(),previousItemId:K.string().nullable().optional(),type:K.literal("message"),role:K.literal("assistant"),status:K.enum(["in_progress","completed","incomplete"]),content:K.array(K.object({type:K.literal("output_text"),text:K.string()}).or(K.object({type:K.literal("output_audio"),audio:K.string().nullable().optional(),transcript:K.string().nullable().optional()})))})]),sq=K.object({itemId:K.string(),previousItemId:K.string().nullable().optional(),type:K.literal("function_call"),status:K.enum(["in_progress","completed","incomplete"]),arguments:K.string(),name:K.string(),output:K.string().nullable()}),eq=K.object({itemId:K.string(),previousItemId:K.string().nullable().optional(),type:K.enum(["mcp_call","mcp_tool_call"]),status:K.enum(["in_progress","completed","incomplete"]),arguments:K.string(),name:K.string(),output:K.string().nullable()}),aM=K.object({itemId:K.string(),type:K.literal("mcp_approval_request"),serverLabel:K.string(),name:K.string(),arguments:K.record(K.string(),K.any()),approved:K.boolean().optional().nullable()});var px=I4("openai-agents:realtime"),u$=px;var tM=K.object({id:K.string().optional().nullable(),conversation_id:K.string().optional().nullable(),max_output_tokens:K.number().or(K.literal("inf")).optional().nullable(),metadata:K.record(K.string(),K.any()).optional().nullable(),output_modalities:K.array(K.string()).optional().nullable(),object:K.literal("realtime.response").optional().nullable(),output:K.array(K.any()).optional().nullable(),audio:K.object({output:K.object({format:K.any().optional().nullable(),voice:K.string().optional().nullable()}).optional().nullable()}).optional().nullable(),status:K.enum(["completed","incomplete","failed","cancelled","in_progress"]).optional().nullable(),status_details:K.record(K.string(),K.any()).optional().nullable(),usage:K.object({input_tokens:K.number().optional(),input_token_details:K.record(K.string(),K.any()).optional().nullable(),output_tokens:K.number().optional(),output_token_details:K.record(K.string(),K.any()).optional().nullable()}).optional().nullable()}),nx=K.object({id:K.string().optional(),audio:K.string().nullable().optional(),text:K.string().nullable().optional(),transcript:K.string().nullable().optional(),type:K.union([K.literal("input_text"),K.literal("input_audio"),K.literal("item_reference"),K.literal("output_text"),K.literal("output_audio")])}),A9=K.object({id:K.string().optional(),arguments:K.string().optional(),call_id:K.string().optional(),content:K.array(nx).optional(),name:K.string().optional(),output:K.string().nullable().optional(),role:K.enum(["user","assistant","system"]).optional(),status:K.enum(["completed","incomplete","in_progress"]).optional(),type:K.enum(["message","function_call","function_call_output","mcp_list_tools","mcp_tool_call","mcp_call","mcp_approval_request","mcp_approval_response"]).optional(),approval_request_id:K.string().nullable().optional(),approve:K.boolean().nullable().optional(),reason:K.string().nullable().optional(),server_label:K.string().optional(),error:K.any().nullable().optional(),tools:K.array(K.object({name:K.string(),description:K.string(),input_schema:K.record(K.string(),K.any()).optional()}).passthrough()).optional()}).passthrough(),rx=K.object({type:K.literal("conversation.created"),event_id:K.string(),conversation:K.object({id:K.string().optional(),object:K.literal("realtime.conversation").optional()})}),ox=K.object({type:K.literal("conversation.item.added"),event_id:K.string(),item:A9,previous_item_id:K.string().nullable().optional()}),ax=K.object({type:K.literal("conversation.item.done"),event_id:K.string(),item:A9,previous_item_id:K.string().nullable().optional()}),tx=K.object({type:K.literal("conversation.item.deleted"),event_id:K.string(),item_id:K.string()}),sx=K.object({type:K.literal("conversation.item.input_audio_transcription.completed"),event_id:K.string(),item_id:K.string(),content_index:K.number(),transcript:K.string(),logprobs:K.array(K.any()).nullable().optional(),usage:K.object({type:K.literal("tokens"),total_tokens:K.number(),input_tokens:K.number(),input_token_details:K.object({text_tokens:K.number(),audio_tokens:K.number()}),output_tokens:K.number()}).optional()}),ex=K.object({type:K.literal("conversation.item.input_audio_transcription.delta"),event_id:K.string(),item_id:K.string(),content_index:K.number().optional(),delta:K.string().optional(),logprobs:K.array(K.any()).nullable().optional()}),$y=K.object({type:K.literal("conversation.item.input_audio_transcription.failed"),event_id:K.string(),item_id:K.string(),content_index:K.number(),error:K.object({code:K.string().optional(),message:K.string().optional(),param:K.string().optional(),type:K.string().optional()})}),Xy=K.object({type:K.literal("conversation.item.retrieved"),event_id:K.string(),item:A9}),Qy=K.object({type:K.literal("conversation.item.truncated"),event_id:K.string(),item_id:K.string(),audio_end_ms:K.number(),content_index:K.number()}),Yy=K.object({type:K.literal("conversation.item.create"),item:A9,event_id:K.string().optional(),previous_item_id:K.string().nullable().optional()}),Wy=K.object({type:K.literal("conversation.item.delete"),item_id:K.string(),event_id:K.string().optional()}),Jy=K.object({type:K.literal("conversation.item.retrieve"),item_id:K.string(),event_id:K.string().optional()}),Uy=K.object({type:K.literal("conversation.item.truncate"),item_id:K.string(),audio_end_ms:K.number(),content_index:K.number(),event_id:K.string().optional()}),Gy=K.object({type:K.literal("error"),event_id:K.string().optional(),error:K.any().optional()}),Ky=K.object({type:K.literal("input_audio_buffer.cleared"),event_id:K.string()}),Hy=K.object({type:K.literal("input_audio_buffer.append"),audio:K.string(),event_id:K.string().optional()}),qy=K.object({type:K.literal("input_audio_buffer.clear"),event_id:K.string().optional()}),Vy=K.object({type:K.literal("input_audio_buffer.commit"),event_id:K.string().optional()}),By=K.object({type:K.literal("input_audio_buffer.committed"),event_id:K.string(),item_id:K.string(),previous_item_id:K.string().nullable().optional()}),Dy=K.object({type:K.literal("input_audio_buffer.speech_started"),event_id:K.string(),item_id:K.string(),audio_start_ms:K.number()}),_y=K.object({type:K.literal("input_audio_buffer.speech_stopped"),event_id:K.string(),item_id:K.string(),audio_end_ms:K.number()}),wy=K.object({type:K.literal("output_audio_buffer.started"),event_id:K.string()}).passthrough(),Ny=K.object({type:K.literal("output_audio_buffer.stopped"),event_id:K.string()}).passthrough(),Ly=K.object({type:K.literal("output_audio_buffer.cleared"),event_id:K.string()}),Fy=K.object({type:K.literal("rate_limits.updated"),event_id:K.string(),rate_limits:K.array(K.object({limit:K.number().optional(),name:K.enum(["requests","tokens"]).optional(),remaining:K.number().optional(),reset_seconds:K.number().optional()}))}),Oy=K.object({type:K.literal("response.output_audio.delta"),event_id:K.string(),item_id:K.string(),content_index:K.number(),delta:K.string(),output_index:K.number(),response_id:K.string()}),My=K.object({type:K.literal("response.output_audio.done"),event_id:K.string(),item_id:K.string(),content_index:K.number(),output_index:K.number(),response_id:K.string()}),zy=K.object({type:K.literal("response.output_audio_transcript.delta"),event_id:K.string(),item_id:K.string(),content_index:K.number(),delta:K.string(),output_index:K.number(),response_id:K.string()}),Zy=K.object({type:K.literal("response.output_audio_transcript.done"),event_id:K.string(),item_id:K.string(),content_index:K.number(),transcript:K.string(),output_index:K.number(),response_id:K.string()}),Py=K.object({type:K.literal("response.content_part.added"),event_id:K.string(),item_id:K.string(),content_index:K.number(),output_index:K.number(),response_id:K.string(),part:K.object({audio:K.string().optional(),text:K.string().optional(),transcript:K.string().optional(),type:K.enum(["text","audio"]).optional()})}),Ay=K.object({type:K.literal("response.content_part.done"),event_id:K.string(),item_id:K.string(),content_index:K.number(),output_index:K.number(),response_id:K.string(),part:K.object({audio:K.string().optional(),text:K.string().optional(),transcript:K.string().optional(),type:K.enum(["text","audio"]).optional()})}),Ey=K.object({type:K.literal("response.created"),event_id:K.string(),response:tM}),$V=K.object({type:K.literal("response.done"),event_id:K.string(),response:tM}),jy=K.object({type:K.literal("response.function_call_arguments.delta"),event_id:K.string(),item_id:K.string(),call_id:K.string(),delta:K.string(),output_index:K.number(),response_id:K.string()}),ky=K.object({type:K.literal("response.function_call_arguments.done"),event_id:K.string(),item_id:K.string(),call_id:K.string(),arguments:K.string(),output_index:K.number(),response_id:K.string()}),Iy=K.object({type:K.literal("response.output_item.added"),event_id:K.string(),item:A9,output_index:K.number(),response_id:K.string()}),Ry=K.object({type:K.literal("response.output_item.done"),event_id:K.string(),item:A9,output_index:K.number(),response_id:K.string()}),by=K.object({type:K.literal("response.output_text.delta"),event_id:K.string(),item_id:K.string(),content_index:K.number(),delta:K.string(),output_index:K.number(),response_id:K.string()}),vy=K.object({type:K.literal("response.output_text.done"),event_id:K.string(),item_id:K.string(),content_index:K.number(),text:K.string(),output_index:K.number(),response_id:K.string()}),Sy=K.object({type:K.literal("session.created"),event_id:K.string(),session:K.any()}),Ty=K.object({type:K.literal("session.updated"),event_id:K.string(),session:K.any()}),Cy=K.object({type:K.literal("response.cancel"),event_id:K.string().optional(),response_id:K.string().optional()}),xy=K.object({type:K.literal("response.create"),event_id:K.string().optional(),response:K.any().optional()}),yy=K.object({type:K.literal("session.update"),event_id:K.string().optional(),session:K.any()}),gy=K.object({type:K.literal("mcp_list_tools.in_progress"),event_id:K.string().optional(),item_id:K.string().optional()}),fy=K.object({type:K.literal("mcp_list_tools.completed"),event_id:K.string().optional(),item_id:K.string().optional()}),hy=K.object({type:K.literal("response.mcp_call_arguments.delta"),event_id:K.string(),response_id:K.string(),item_id:K.string(),output_index:K.number(),delta:K.string(),obfuscation:K.string()}),my=K.object({type:K.literal("response.mcp_call_arguments.done"),event_id:K.string(),response_id:K.string(),item_id:K.string(),output_index:K.number(),arguments:K.string()}),uy=K.object({type:K.literal("response.mcp_call.in_progress"),event_id:K.string(),output_index:K.number(),item_id:K.string()}),cy=K.object({type:K.literal("response.mcp_call.completed"),event_id:K.string(),output_index:K.number(),item_id:K.string()}),dy=K.object({type:K.literal("mcp_list_tools.failed"),event_id:K.string().optional(),item_id:K.string().optional()}),ly=K.object({type:K.string(),event_id:K.string().optional().nullable()}).passthrough(),iy=K.discriminatedUnion("type",[rx,ox,ax,tx,sx,ex,$y,Xy,Qy,Gy,Ky,By,Dy,_y,wy,Ny,Ly,Fy,Oy,My,zy,Zy,Py,Ay,Ey,$V,jy,ky,Iy,Ry,by,vy,Sy,Ty,gy,fy,dy,hy,my,uy,cy]),X9$=K.discriminatedUnion("type",[Yy,Wy,Jy,Uy,Hy,qy,Vy,Cy,xy,yy]);function E9($){let X=JSON.parse($.data.toString()),Q=iy.safeParse(X);if(!Q.success){let W=ly.safeParse(X);if(W.success)return{data:W.data,isGeneric:!0};return{data:null,isGeneric:!0}}return{data:Q.data,isGeneric:!1}}var sM="gpt-realtime",s6={outputModalities:["audio"],audio:{input:{format:{type:"audio/pcm",rate:24000},transcription:{model:"gpt-4o-mini-transcribe"},turnDetection:{type:"semantic_vad"},noiseReduction:null},output:{format:{type:"audio/pcm",rate:24000},speed:1}}};class w0 extends Z9{#$;#X;#J=null;#Q=null;eventEmitter=new R4;constructor($={}){super();this.#$=$.model??sM,this.#X=$.apiKey}get currentModel(){return this.#$}set currentModel($){this.#$=$}_afterAudioDoneEvent(){}get _rawSessionConfig(){return this.#Q??null}async _getApiKey($){let X=$.apiKey??this.#X;if(typeof X==="function")return await X();return X}_onMessage($){let{data:X,isGeneric:Q}=E9($);if(X===null)return;if(this.emit("*",X),Q)return;if(X.type==="error")this.emit("error",{type:"error",error:X});else this.emit(X.type,X);if(X.type==="response.created"){this.emit("turn_started",{type:"response_started",providerData:{...X}});return}if(X.type==="session.updated")this.#Q=X.session;if(X.type==="response.done"){let W=$V.safeParse(X);if(!W.success){u$.error("Error parsing response done event",W.error);return}let Y=W.data.response.usage?.input_tokens??0,J=W.data.response.usage?.output_tokens??0,U=Y+J,G=new t6({inputTokens:Y,inputTokensDetails:W.data.response.usage?.input_token_details??{},outputTokens:J,outputTokensDetails:W.data.response.usage?.output_token_details??{},totalTokens:U});this.emit("usage_update",G),this.emit("turn_done",{type:"response_done",response:{id:W.data.response.id??"",output:W.data.response.output??[],usage:{inputTokens:Y,inputTokensDetails:W.data.response.usage?.input_token_details??{},outputTokens:J,outputTokensDetails:W.data.response.usage?.output_token_details??{},totalTokens:U}}});return}if(X.type==="response.output_audio.done"){this.emit("audio_done"),this._afterAudioDoneEvent();return}if(X.type==="conversation.item.deleted"){this.emit("item_deleted",{itemId:X.item_id});return}if(X.type==="conversation.item.input_audio_transcription.completed"||X.type==="conversation.item.truncated"){this.sendEvent({type:"conversation.item.retrieve",item_id:X.item_id});return}if(X.type==="conversation.item.input_audio_transcription.delta"||X.type==="response.output_text.delta"||X.type==="response.output_audio_transcript.delta"||X.type==="response.function_call_arguments.delta"){if(X.type==="response.output_audio_transcript.delta")this.emit("audio_transcript_delta",{type:"transcript_delta",delta:X.delta,itemId:X.item_id,responseId:X.response_id});return}if(X.type==="conversation.item.added"||X.type==="conversation.item.done"||X.type==="conversation.item.retrieved"){if(X.item.type==="mcp_list_tools"&&X.type==="conversation.item.done"){let W=X.item.server_label??"",Y=X.item.tools??[];try{this.emit("mcp_tools_listed",{serverLabel:W,tools:Y})}catch(J){u$.error("Error emitting mcp_tools_listed",J,X.item)}return}if(X.item.type==="message"){let W=X.type==="conversation.item.added"||X.type==="conversation.item.done"?X.previous_item_id:null,Y=tq.parse({itemId:X.item.id,previousItemId:W,type:X.item.type,role:X.item.role,content:X.item.content,status:X.item.status});this.emit("item_update",Y);return}if(X.item.type==="mcp_approval_request"&&X.type==="conversation.item.done"){let W=X.item,Y=aM.parse({itemId:W.id,type:W.type,serverLabel:W.server_label,name:W.name,arguments:JSON.parse(W.arguments||"{}"),approved:W.approved});this.emit("item_update",Y),this.emit("mcp_approval_request",Y);return}if(X.item.type==="mcp_tool_call"||X.item.type==="mcp_call"){let W=X.type==="conversation.item.done"?"completed":"in_progress",Y=eq.parse({itemId:X.item.id,type:X.item.type,status:W,arguments:X.item.arguments,name:X.item.name,output:X.item.output});if(this.emit("item_update",Y),X.type==="conversation.item.done")this.emit("mcp_tool_call_completed",Y);return}}if(X.type==="response.mcp_call.in_progress"){let W=X;this.sendEvent({type:"conversation.item.retrieve",item_id:W.item_id});return}if(X.type==="mcp_list_tools.in_progress"){let W=X;if(W.item_id)this.sendEvent({type:"conversation.item.retrieve",item_id:W.item_id});return}if(X.type==="response.output_item.done"||X.type==="response.output_item.added"){let W=X.item;if(W.type==="function_call"&&W.status==="completed"){let Y=sq.parse({itemId:W.id,type:W.type,status:"in_progress",arguments:W.arguments,name:W.name,output:null});this.emit("item_update",Y),this.emit("function_call",{id:W.id,type:"function_call",callId:W.call_id??"",arguments:W.arguments??"",name:W.name??""});return}if(W.type==="mcp_tool_call"||W.type==="mcp_call"){let Y=eq.parse({itemId:W.id,type:W.type,status:X.type==="response.output_item.done"?"completed":"in_progress",arguments:W.arguments,name:W.name,output:W.output});this.emit("item_update",Y);return}if(W.type==="message"){let Y=tq.parse({itemId:X.item.id,type:X.item.type,role:X.item.role,content:X.item.content,status:X.type==="response.output_item.done"?W.status??"completed":W.status??"in_progress"});this.emit("item_update",Y);return}}}_onError($){this.emit("error",{type:"error",error:$})}_onOpen(){this.emit("connected")}_onClose(){this.emit("disconnected")}sendMessage($,X,{triggerResponse:Q=!0}={}){let W=typeof $==="string"?[{type:"input_text",text:$}]:$.content.map((Y)=>{if(Y.type==="input_image")return{type:"input_image",image_url:Y.image,...Y.providerData??{}};return Y});if(this.sendEvent({type:"conversation.item.create",item:{type:"message",role:"user",content:W},...X}),Q)this.sendEvent({type:"response.create"})}addImage($,{triggerResponse:X=!0}={}){this.sendMessage({type:"message",role:"user",content:[{type:"input_image",image:$}]},{},{triggerResponse:X})}_getMergedSessionConfig($){let X=oM($),Q=X.audio?.input?.noiseReduction,W=X.audio?.input?.transcription,Y=w0.buildTurnDetectionConfig(X.audio?.input?.turnDetection),J={type:"realtime",instructions:X.instructions,model:X.model??this.#$,output_modalities:X.outputModalities??s6.outputModalities,audio:{input:{format:X.audio?.input?.format??s6.audio?.input?.format,noise_reduction:Q===void 0?s6.audio?.input?.noiseReduction:Q,transcription:W===void 0?s6.audio?.input?.transcription:W,turn_detection:Y===void 0?s6.audio?.input?.turnDetection:Y},output:{format:X.audio?.output?.format??s6.audio?.output?.format,voice:X.audio?.output?.voice??s6.audio?.output?.voice,speed:X.audio?.output?.speed??s6.audio?.output?.speed}},tool_choice:X.toolChoice??s6.toolChoice,...X.providerData??{}};if(X.prompt)J.prompt={id:X.prompt.promptId,version:X.prompt.version,variables:X.prompt.variables};if(X.tools&&X.tools.length>0)J.tools=X.tools.map((U)=>{let G=(H)=>Object.fromEntries(Object.entries(H).filter(([,q])=>typeof q!=="undefined"));if(U.type==="mcp")return G({type:"mcp",server_label:U.server_label,server_url:U.server_url,server_description:U.server_description,connector_id:U.connector_id,authorization:U.authorization,headers:U.headers,allowed_tools:U.allowed_tools,require_approval:U.require_approval});return G({type:U.type,name:U.name,description:U.description,parameters:U.parameters})});return J}buildSessionPayload($){return this._getMergedSessionConfig($)}static buildTurnDetectionConfig($){if(typeof $==="undefined")return;if($===null)return null;let{type:X,createResponse:Q,create_response:W,eagerness:Y,interruptResponse:J,interrupt_response:U,prefixPaddingMs:G,prefix_padding_ms:H,silenceDurationMs:q,silence_duration_ms:V,threshold:B,idleTimeoutMs:D,idle_timeout_ms:_,modelVersion:w,model_version:N,...L}=$,O={type:X,create_response:Q??W,eagerness:Y,interrupt_response:J??U,prefix_padding_ms:G??H,silence_duration_ms:q??V,idle_timeout_ms:D??_,model_version:w??N,threshold:B,...L};return Object.keys(O).forEach((Z)=>{if(O[Z]===void 0)delete O[Z]}),Object.keys(O).length>0?O:void 0}set _tracingConfig($){this.#J=$}_updateTracingConfig($){if(typeof this.#J==="undefined")this.#J=null;if($==="auto"){this.sendEvent({type:"session.update",session:{type:"realtime",tracing:"auto"}});return}if(this.#J!==null&&typeof this.#J!=="string"&&typeof $!=="string"){u$.warn("Tracing config is already set, skipping setting it again. This likely happens when you already set a tracing config on session creation.");return}if($===null){u$.debug("Disabling tracing for this session. It cannot be turned on for this session from this point on."),this.sendEvent({type:"session.update",session:{type:"realtime",tracing:null}});return}if(this.#J===null||typeof this.#J==="string"){this.sendEvent({type:"session.update",session:{type:"realtime",tracing:$}});return}if($?.group_id!==this.#J?.group_id||$?.metadata!==this.#J?.metadata||$?.workflow_name!==this.#J?.workflow_name){u$.warn("Mismatch in tracing config. Ignoring the new tracing config. This likely happens when you already set a tracing config on session creation. Current tracing config: %s, new tracing config: %s",JSON.stringify(this.#J),JSON.stringify($));return}this.sendEvent({type:"session.update",session:{type:"realtime",tracing:$}})}updateSessionConfig($){let X=this.buildSessionPayload($);this.sendEvent({type:"session.update",session:X})}sendFunctionCallOutput($,X,Q=!0){this.sendEvent({type:"conversation.item.create",item:{type:"function_call_output",output:X,call_id:$.callId}});try{let W=sq.parse({itemId:$.id,previousItemId:$.previousItemId,type:"function_call",status:"completed",arguments:$.arguments,name:$.name,output:X});this.emit("item_update",W)}catch(W){u$.error("Error parsing tool call item",W,$)}if(Q)this.sendEvent({type:"response.create"})}sendAudio($,{commit:X=!1}={}){if(this.sendEvent({type:"input_audio_buffer.append",audio:nq($)}),X)this.sendEvent({type:"input_audio_buffer.commit"})}resetHistory($,X){let{removals:Q,additions:W,updates:Y}=cM($,X),J=new Set(Q.map((G)=>G.itemId));for(let G of Y)J.add(G.itemId);if(J.size>0)for(let G of J)this.sendEvent({type:"conversation.item.delete",item_id:G});let U=[...W,...Y];for(let G of U)if(G.type==="message"){let H={type:"message",role:G.role,content:G.content,id:G.itemId};if(G.role!=="system"&&G.status)H.status=G.status;this.sendEvent({type:"conversation.item.create",item:H})}else if(G.type==="function_call")u$.warn("Function calls cannot be manually added or updated at the moment. Ignoring.")}sendMcpResponse($,X){this.sendEvent({type:"conversation.item.create",previous_item_id:$.itemId,item:{type:"mcp_approval_response",approval_request_id:$.itemId,approve:X}})}}class j9 extends w0{options;#$;#X={status:"disconnected",peerConnection:void 0,dataChannel:void 0,callId:void 0};#J;#Q=!1;#U=!1;#W;#G=0;constructor($={}){if(typeof RTCPeerConnection==="undefined")throw new Error("WebRTC is not supported in this environment");super($);this.options=$,this.#$=$.baseUrl??"https://api.openai.com/v1/realtime/calls",this.#J=$.useInsecureApiKey??!1}get callId(){return this.#X.callId}get status(){return this.#X.status}get connectionState(){return this.#X}get muted(){return this.#U}async connect($){if(this.#X.status==="connected")return;if(this.#X.status==="connecting"){if(this.#W)return this.#W;u$.warn("Realtime connection already in progress but no promise found");return}let X=$.model??this.currentModel;this.currentModel=X;let Q=$.url??this.#$,W=await this._getApiKey($),Y=typeof W==="string"&&W.startsWith("ek_");if(B5()&&!this.#J&&!Y)throw new p("Using the WebRTC connection in a browser environment requires an ephemeral client key. If you need to use a regular API key, use the WebSocket transport or set the `useInsecureApiKey` option to true.");let J=++this.#G;return this.#W=new Promise(async(U,G)=>{try{let H={...$.initialSessionConfig||{},model:this.currentModel},q=new URL(Q),V=new RTCPeerConnection,B=V.createDataChannel("oai-events"),D=void 0,_=(F)=>{F.onconnectionstatechange=()=>{switch(F.connectionState){case"disconnected":case"failed":case"closed":this.close();break}}};_(V),this.#X={status:"connecting",peerConnection:V,dataChannel:B,callId:D},this.emit("connection_change",this.#X.status),B.addEventListener("open",()=>{this.#X={status:"connecting",peerConnection:V,dataChannel:B,callId:D};let F=!1,z,P=()=>{if(F)return;if(F=!0,z!==void 0)clearTimeout(z);if(B.removeEventListener("message",j),B.removeEventListener("close",I),this.#X.status!=="connecting"||this.#X.dataChannel!==B||B.readyState!=="open"){if(this.#X.dataChannel===B)this.close();G(new Error("Connection closed before session config was acknowledged"));return}this.#X={status:"connected",peerConnection:V,dataChannel:B,callId:D},this.emit("connection_change",this.#X.status),this._onOpen(),U()},j=(k)=>{if(JSON.parse(k.data).type==="session.updated")P()},I=()=>{P()};z=setTimeout(()=>{if(!F)u$.warn("Timed out waiting for session.updated ack — resolving connect() anyway"),P()},5000),B.addEventListener("message",j),B.addEventListener("close",I),B.addEventListener("message",(k)=>{this._onMessage(k);let{data:m,isGeneric:$$}=E9(k);if(!m||$$)return;if(m.type==="response.created")this.#Q=!0;else if(m.type==="response.done")this.#Q=!1;if(m.type==="session.created"){this._tracingConfig=m.session.tracing;let U$=typeof H.tracing==="undefined"?"auto":H.tracing;this._updateTracingConfig(U$)}}),this.updateSessionConfig(H)}),B.addEventListener("error",(F)=>{this.close(),this._onError(F),G(F)});let w=this.options.audioElement??document.createElement("audio");w.autoplay=!0,V.ontrack=(F)=>{w.srcObject=F.streams[0]};let N=this.options.mediaStream??await navigator.mediaDevices.getUserMedia({audio:!0});if(V.addTrack(N.getAudioTracks()[0]),this.options.changePeerConnection){let F=V;if(V=await this.options.changePeerConnection(V),F!==V)F.onconnectionstatechange=null;_(V),this.#X={...this.#X,peerConnection:V}}let L=await V.createOffer();if(await V.setLocalDescription(L),!L.sdp)throw new Error("Failed to create offer");let O=await fetch(q,{method:"POST",body:L.sdp,headers:{"Content-Type":"application/sdp",Authorization:`Bearer ${W}`,"X-OpenAI-Agents-SDK":kQ["X-OpenAI-Agents-SDK"]}});D=O.headers?.get("Location")?.split("/").pop(),this.#X={...this.#X,callId:D};let Z={type:"answer",sdp:await O.text()};await V.setRemoteDescription(Z)}catch(H){this.close(),this._onError(H),G(H)}}).finally(()=>{if(this.#G===J)this.#W=void 0}),this.#W}sendEvent($){if(!this.#X.dataChannel||this.#X.dataChannel.readyState!=="open")throw new Error("WebRTC data channel is not connected. Make sure you call `connect()` before sending events.");this.#X.dataChannel.send(JSON.stringify($))}mute($){if(this.#U=$,this.#X.peerConnection)this.#X.peerConnection.getSenders().forEach((Q)=>{if(Q.track)Q.track.enabled=!$})}_afterAudioDoneEvent(){this.#Q=!1}close(){if(this.#X.dataChannel)this.#X.dataChannel.close();if(this.#X.peerConnection){let $=this.#X.peerConnection;$.onconnectionstatechange=null,$.getSenders().forEach((X)=>{X.track?.stop()}),$.close()}if(this.#X.status!=="disconnected")this.#X={status:"disconnected",peerConnection:void 0,dataChannel:void 0,callId:void 0},this.emit("connection_change",this.#X.status),this._onClose()}interrupt(){if(this.#Q)this.sendEvent({type:"response.cancel"}),this.#Q=!1;this.sendEvent({type:"output_audio_buffer.clear"})}}var eM=globalThis.WebSocket;function $z(){return!0}var Xz=!0;class f5 extends w0{#$;#X;#J;#Q={status:"disconnected",websocket:void 0};#U;#W;#G;_firstAudioTimestamp;_audioLengthMs=0;#Y=!1;#K;#q;#H(){this.#W=void 0,this._firstAudioTimestamp=void 0,this._audioLengthMs=0,this.#G=void 0}constructor($={}){super($);this.#X=$.url,this.#J=$.url,this.#U=$.useInsecureApiKey??!1,this.#K=$.createWebSocket,this.#q=$.skipOpenEventListeners??!1}getCommonRequestHeaders(){return kQ}get status(){return this.#Q.status}get connectionState(){return this.#Q}get muted(){return null}get currentItemId(){return this.#W}_onAudio($){this.emit("audio",$)}_afterAudioDoneEvent(){this.#H()}async#B($,X,Q){if(this.#Q.websocket){$();return}if(!this.#$)throw new p("API key is not set. Please call `connect()` with an API key first.");if($z()&&!this.#$.startsWith("ek_")&&!this.#U)throw new p("Using the WebSocket connection in a browser environment requires an ephemeral client key. If you have to use a regular API key, set the `useInsecureApiKey` option to true.");let W=null;if(this.#K)W=await this.#K({url:this.#X,apiKey:this.#$});else{let J=Xz?["realtime","openai-insecure-api-key."+this.#$,lM]:{headers:{Authorization:`Bearer ${this.#$}`,...this.getCommonRequestHeaders()}};W=new eM(this.#X,J)}this.#Q={status:"connecting",websocket:W},this.emit("connection_change",this.#Q.status);let Y=()=>{this.#Q={status:"connected",websocket:W},this.emit("connection_change",this.#Q.status),this._onOpen(),$()};if(this.#q===!0)Y();else W.addEventListener("open",Y);W.addEventListener("error",(J)=>{this._onError(J),this.#Q={status:"disconnected",websocket:void 0},this.emit("connection_change",this.#Q.status),X(J)}),W.addEventListener("message",(J)=>{this._onMessage(J);let{data:U,isGeneric:G}=E9(J);if(!U||G)return;if(U.type==="response.output_audio.delta"){if(this.#G=U.content_index,this.#W=U.item_id,this._firstAudioTimestamp===void 0)this._firstAudioTimestamp=Date.now(),this._audioLengthMs=0;let H=pq(U.delta),q=this._rawSessionConfig?.audio?.output?.format;if(q&&typeof q==="object"){let B=q.type;if(B==="audio/pcmu"||B==="audio/pcma")this._audioLengthMs+=H.byteLength/8;else if(B==="audio/pcm"){let D=q.rate??24000;this._audioLengthMs+=H.byteLength/2/D*1000}else this._audioLengthMs+=H.byteLength/24/2}else if(typeof q==="string")if(q.startsWith("g711_"))this._audioLengthMs+=H.byteLength/8;else this._audioLengthMs+=H.byteLength/24/2;else this._audioLengthMs+=H.byteLength/24/2;let V={type:"audio",data:H,responseId:U.response_id};this._onAudio(V)}else if(U.type==="input_audio_buffer.speech_started"){let H=this._rawSessionConfig?.audio?.input?.turn_detection?.interrupt_response??!1;this.interrupt(!H)}else if(U.type==="response.created")this.#Y=!0;else if(U.type==="response.done")this.#Y=!1;else if(U.type==="session.created"){this._tracingConfig=U.session.tracing;let H=typeof Q.tracing==="undefined"?"auto":Q.tracing;this._updateTracingConfig(H)}}),W.addEventListener("close",()=>{this.#Q={status:"disconnected",websocket:void 0},this.emit("connection_change",this.#Q.status),this._onClose()})}async connect($){let X=$.model??this.currentModel;this.currentModel=X,this.#$=await this._getApiKey($);let Q=$.callId,W;if($.url)W=$.url,this.#J=$.url;else if(Q)W=`wss://api.openai.com/v1/realtime?call_id=${Q}`;else if(this.#J)W=this.#J;else W=`wss://api.openai.com/v1/realtime?model=${this.currentModel}`;this.#X=W;let Y={...$.initialSessionConfig||{},model:this.currentModel};await new Promise((J,U)=>{this.#B(J,U,Y).catch(U)}),await this.updateSessionConfig(Y)}sendEvent($){if(!this.#Q.websocket)throw new Error("WebSocket is not connected. Make sure you call `connect()` before sending events.");this.#Q.websocket.send(JSON.stringify($))}close(){this.#Q.websocket?.close(),this.#W=void 0,this._firstAudioTimestamp=void 0,this._audioLengthMs=0,this.#G=void 0}mute($){throw new Error("Mute is not supported for the WebSocket transport. You have to mute the audio input yourself.")}sendAudio($,X={}){if(this.#Q.status==="connected")super.sendAudio($,X)}_cancelResponse(){if(this.#Y)this.sendEvent({type:"response.cancel"}),this.#Y=!1}_interrupt($,X=!0){if($<0)return;if(X)this._cancelResponse();let Q=this._audioLengthMs??Number.POSITIVE_INFINITY,W=Math.max(0,Math.floor(Math.min($,Q)));this.emit("audio_interrupted"),this.sendEvent({type:"conversation.item.truncate",item_id:this.#W,content_index:this.#G,audio_end_ms:W})}interrupt($=!0){if(!this.#W||typeof this._firstAudioTimestamp!=="number")return;let X=Date.now()-this._firstAudioTimestamp;if(X>=0)this._interrupt(X,$);this.#H()}}var py=Symbol("backgroundResult");function XV($){return typeof $==="object"&&$!==null&&py in $}function Qz($){return $.type==="function"||$.type==="hosted_tool"&&$.name==="hosted_mcp"}function Yz($){if($.type==="function")return $;if($.type==="hosted_tool"&&$.name==="hosted_mcp"){let X=$.providerData.server_url&&$.providerData.server_url.length>0?$.providerData.server_url:void 0;return{type:"mcp",server_label:$.providerData.server_label,server_url:X,headers:$.providerData.headers,allowed_tools:$.providerData.allowed_tools,require_approval:$.providerData.require_approval}}throw new p(`Invalid tool type: ${$}`)}function ny(){return JSON.parse(JSON.stringify(s6))}var QV="Tool execution was not approved.";function ry($){return $ instanceof Error?$.message:String($)}class k9 extends R4{initialAgent;options;#$;#X;#J;#Q;#U=[];#W;#G={};#Y=[];#K;#q={};#H=!1;#B=new Map;#V=[];#_=ny();#w=!0;#D=!1;constructor($,X={}){super();if(this.initialAgent=$,this.options=X,typeof X.transport==="undefined"&&dM()||X.transport==="webrtc")this.#$=new j9;else if(X.transport==="websocket"||typeof X.transport==="undefined")this.#$=new f5;else this.#$=X.transport;this.#X=$,this.#Q=new i$({...X.context??{},history:this.#Y}),this.#U=(X.outputGuardrails??[]).map(nM),this.#W=pM(X.outputGuardrailSettings??{}),this.#K=X.historyStoreAudio??!1,this.#w=X.automaticallyTriggerResponseForMcpToolCalls??!0}get transport(){return this.#$}get currentAgent(){return this.#X}get usage(){return this.#Q.usage}get context(){return this.#Q}get muted(){return this.#$.muted}get history(){return this.#Y}get availableMcpTools(){return this.#V}async#N($){this.#X=$;let X=await this.#X.getEnabledHandoffs(this.#Q),Q=X.map((U)=>U.getHandoffAsFunctionTool()),W=(await this.#X.getAllTools(this.#Q)).filter(Qz).map(Yz),Y=typeof this.#X.tools!=="undefined"||typeof this.#X.mcpServers!=="undefined",J=X.length>0;this.#J=Y||J?[...W,...Q]:void 0,this.#M()}async#L($={}){let X=$??{},Q=this.options.config??{},W=await this.#X.getSystemPrompt(this.#Q),Y=(B)=>{return B.audio?.output?.voice},J=this.options.tracingDisabled?null:this.options.workflowName?{workflow_name:this.options.workflowName}:"auto";if(J!==null&&J!=="auto"){if(this.options.groupId)J.group_id=this.options.groupId;if(this.options.traceMetadata)J.metadata=this.options.traceMetadata}else if(this.options.groupId||this.options.traceMetadata)u$.warn("In order to set traceMetadata or a groupId you need to specify a workflowName.");let U=Y(X)??Y(Q),G=X.voice??Q.voice,H=typeof U!=="undefined"?U:typeof G!=="undefined"?G:this.#X.voice,V={...{...this.#_??{},...Q,...X},instructions:W,voice:H,model:this.options.model,tools:this.#J,tracing:J,prompt:typeof this.#X.prompt==="function"?await this.#X.prompt(this.#Q,this.#X):this.#X.prompt};return this.#_=V,V}async getInitialSessionConfig($={}){return await this.#N(this.initialAgent),this.#L({...this.options.config??{},...$??{}})}static async computeInitialSessionConfig($,X={},Q={}){let W=new k9($,X);try{return await W.getInitialSessionConfig(Q)}finally{W.close()}}async updateAgent($){return this.#X.emit("agent_handoff",this.#Q,$),this.emit("agent_handoff",this.#Q,this.#X,$),await this.#N($),await this.#$.updateSessionConfig(await this.#L()),$}async#z($,X){let Q=await X.onInvokeHandoff(this.#Q,$.arguments);this.#X.emit("agent_handoff",this.#Q,Q),this.emit("agent_handoff",this.#Q,this.#X,Q),await this.#N(Q),await this.#$.updateSessionConfig(await this.#L());let W=b5(Q);return this.#$.sendFunctionCallOutput($,W,!0),Q}async#Z($,X){let{toolErrorFormatter:Q}=this.options;if(!Q)return QV;try{let W=await Q({kind:"approval_rejected",toolType:"function",toolName:$,callId:X,defaultMessage:QV,runContext:this.#Q});if(typeof W==="string")return W;if(typeof W!=="undefined")u$.warn("toolErrorFormatter returned a non-string value. Falling back to the default tool approval rejection message.")}catch(W){u$.warn(`toolErrorFormatter threw while formatting approval rejection: ${ry(W)}`)}return QV}async#F($,X){this.#Q.context.history=JSON.parse(JSON.stringify(this.#Y));let Q=$.arguments;if(X.parameters)if(q6(X.parameters))Q=X.parameters.parse(Q);else Q=JSON.parse(Q);if(await X.needsApproval(this.#Q,Q,$.callId)){let H=this.context.isToolApproved({toolName:X.name,callId:$.callId});if(H===!1){this.emit("agent_tool_start",this.#Q,this.#X,X,{toolCall:$}),this.#X.emit("agent_tool_start",this.#Q,X,{toolCall:$});let q=await this.#Z(X.name,$.callId);this.#$.sendFunctionCallOutput($,q,!0),this.emit("agent_tool_end",this.#Q,this.#X,X,q,{toolCall:$}),this.#X.emit("agent_tool_end",this.#Q,X,q,{toolCall:$});return}else if(typeof H==="undefined"){this.emit("tool_approval_requested",this.#Q,this.#X,{type:"function_approval",tool:X,approvalItem:new V$($,this.#X)});return}}let Y=await T5({guardrails:X.inputGuardrails,context:this.#Q,agent:this.#X,toolCall:$});this.emit("agent_tool_start",this.#Q,this.#X,X,{toolCall:$}),this.#X.emit("agent_tool_start",this.#Q,X,{toolCall:$}),this.#Q.context.history=JSON.parse(JSON.stringify(this.#Y));let J=Y.type==="reject"?Y.message:await N5({tool:X,runContext:this.#Q,input:$.arguments,details:{toolCall:$}}),U=Y.type==="reject"?J:await C5({guardrails:X.outputGuardrails,context:this.#Q,agent:this.#X,toolCall:$,toolOutput:J}),G;if(XV(U))G=R6(U.content),this.#$.sendFunctionCallOutput($,G,!1);else G=R6(U),this.#$.sendFunctionCallOutput($,G,!0);this.emit("agent_tool_end",this.#Q,this.#X,X,G,{toolCall:$}),this.#X.emit("agent_tool_end",this.#Q,X,G,{toolCall:$})}async#P($){let X=await this.#X.getEnabledHandoffs(this.#Q),Q=new Map(X.map((U)=>[U.toolName,U])),W=await this.#X.getAllTools(this.#Q),Y=new Map(W.map((U)=>[U.name,U])),J=Q.get($.name);if(J)await this.#z($,J);else{let U=Y.get($.name);if(U&&U.type==="function")await this.#F($,U);else throw new b$(`Tool ${$.name} not found`)}}async#O($,X,Q){if(this.#U.length===0)return;let W={agent:this.#X,agentOutput:$,context:this.#Q},J=(await Promise.all(this.#U.map((U)=>U.run(W)))).find((U)=>U.output.tripwireTriggered);if(J){if(this.#q[X])return;this.#q[X]=!0;let U=new P1(`Output guardrail triggered: ${JSON.stringify(J.output.outputInfo)}`,J);this.emit("guardrail_tripped",this.#Q,this.#X,U,{itemId:Q}),this.interrupt();let G=rM(J);this.sendMessage(G);return}}#A(){this.#$.on("*",(Q)=>{if(this.emit("transport_event",Q),Q.type==="conversation.item.input_audio_transcription.completed")try{let W=Q;this.#Y=oq(this.#Y,W,this.#K),this.#Q.context.history=this.#Y,this.emit("history_updated",this.#Y)}catch(W){this.emit("error",{type:"error",error:W})}}),this.#$.on("mcp_tools_listed",({serverLabel:Q,tools:W})=>{try{this.#B.set(Q,W??[]),this.#M()}catch(Y){this.emit("error",{type:"error",error:Y})}}),this.#$.on("audio",(Q)=>{if(!this.#H)this.#H=!0,this.emit("audio_start",this.#Q,this.#X);this.emit("audio",Q)}),this.#$.on("turn_started",()=>{this.#H=!1,this.emit("agent_start",this.#Q,this.#X),this.#X.emit("agent_start",this.#Q,this.#X)}),this.#$.on("turn_done",(Q)=>{let W=Q.response.output??[],Y="",J="";for(let U=W.length-1;U>=0;U--){let G=W[U],H=rq(G);if(typeof H==="string"){Y=H;let q=G?.id;J=typeof q==="string"?q:"";break}}if(!J&&W.length>0){let U=W[W.length-1];J=typeof U?.id==="string"?U.id:""}this.emit("agent_end",this.#Q,this.#X,Y),this.#X.emit("agent_end",this.#Q,Y),this.#O(Y,Q.response.id,J)}),this.#$.on("audio_done",()=>{if(this.#H)this.#H=!1;this.emit("audio_stopped",this.#Q,this.#X)});let $=0,X;this.#$.on("audio_transcript_delta",(Q)=>{try{let{delta:W,itemId:Y,responseId:J}=Q;if(X!==Y)X=Y,$=0;let G=(this.#G[Y]??"")+W;if(this.#G[Y]=G,this.#W.debounceTextLength<0)return;let H=Math.floor(G.length/this.#W.debounceTextLength);if(H>$)$=H,this.#O(G,J,Y)}catch(W){this.emit("error",{type:"error",error:W})}}),this.#$.on("item_update",(Q)=>{try{let W=!this.#Y.some((Y)=>Y.itemId===Q.itemId);if(this.#Y=oq(this.#Y,Q,this.#K),this.#Q.context.history=this.#Y,W){let Y=this.#Y.find((J)=>J.itemId===Q.itemId);if(Y)this.emit("history_added",Y)}this.emit("history_updated",this.#Y)}catch(W){this.emit("error",{type:"error",error:W})}}),this.#$.on("item_deleted",(Q)=>{try{this.#Y=this.#Y.filter((W)=>W.itemId!==Q.itemId),this.#Q.context.history=this.#Y,this.emit("history_updated",this.#Y)}catch(W){this.emit("error",{type:"error",error:W})}}),this.#$.on("function_call",async(Q)=>{try{await this.#P(Q)}catch(W){u$.error("Error handling function call",W),this.emit("error",{type:"error",error:W})}}),this.#$.on("usage_update",(Q)=>{this.#Q.usage.add(Q)}),this.#$.on("audio_interrupted",()=>{if(this.#H)this.#H=!1;this.emit("audio_interrupted",this.#Q,this.#X)}),this.#$.on("error",(Q)=>{this.emit("error",Q)}),this.#$.on("mcp_tool_call_completed",(Q)=>{if(this.emit("mcp_tool_call_completed",this.#Q,this.#X,Q),this.#w)this.#$.sendEvent({type:"response.create"})}),this.#$.on("mcp_approval_request",(Q)=>{this.emit("tool_approval_requested",this.#Q,this.#X,{type:"mcp_approval_request",approvalItem:iM(this.#X,Q)})})}#M(){let $=this.#J?.filter((U)=>U.type==="mcp"),X=(U)=>{let G=U.allowed_tools;if(!G)return;if(Array.isArray(G))return G;if(G&&Array.isArray(G.tool_names))return G.tool_names;return},Q=new Map;for(let U of $){let G=this.#B.get(U.server_label)??[],H=X(U);for(let q of G){if(H&&!H.includes(q.name))continue;if(!Q.has(q.name))Q.set(q.name,q)}}let W=Array.from(Q.values()),Y=this.#V;if(Y.length!==W.length||JSON.stringify(Y.map((U)=>U.name).sort())!==JSON.stringify(W.map((U)=>U.name).sort()))this.#V=W,this.emit("mcp_tools_changed",this.#V)}async connect($){if(await this.#N(this.initialAgent),!this.#D)this.#A(),this.#D=!0;await this.#$.connect({apiKey:$.apiKey??this.options.apiKey,model:this.options.model,url:$.url,callId:$.callId,initialSessionConfig:await this.#L(this.options.config)}),this.#Y=[],this.emit("history_updated",this.#Y)}updateHistory($){let X;if(typeof $==="function")X=$(this.#Y);else X=$;this.#$.resetHistory(this.#Y,X)}sendMessage($,X={}){this.#$.sendMessage($,X)}addImage($,{triggerResponse:X=!0}={}){this.#$.addImage($,{triggerResponse:X})}mute($){this.#$.mute($)}close(){this.#q={},this.#$.close()}sendAudio($,X={}){this.#$.sendAudio($,X)}interrupt(){this.#$.interrupt()}async approve($,X={alwaysApprove:!1}){this.#Q.approveTool($,X);let Q=$.toolName??$.rawItem.name,W=this.#X.tools.find((Y)=>Y.name===Q);if(W&&W.type==="function"&&$.rawItem.type==="function_call")await this.#F($.rawItem,W);else if($.rawItem.type==="hosted_tool_call"){if(X.alwaysApprove)u$.warn("Always approving MCP tools is not supported. Use the allowed tools configuration instead.");let Y=aq($);this.#$.sendMcpResponse(Y,!0)}else throw new b$(`Tool ${Q??"unknown"} not found`)}async reject($,X={alwaysReject:!1}){this.#Q.rejectTool($,X);let Q=$.toolName??$.rawItem.name,W=this.#X.tools.find((Y)=>Y.name===Q);if(W&&W.type==="function"&&$.rawItem.type==="function_call")await this.#F($.rawItem,W);else if($.rawItem.type==="hosted_tool_call"){if(X.alwaysReject)u$.warn("Always rejecting MCP tools is not supported. Use the allowed tools configuration instead.");let Y=aq($);this.#$.sendMcpResponse(Y,!1)}else throw new b$(`Tool ${Q??"unknown"} not found`)}}var oy=class{apply($,X){if(!X.type)return;let Q=Array.isArray(X.type)?X.type:[X.type],W=new Set(Q);if(!W.has("string"))$.string=!1;if(!W.has("number")&&!W.has("integer"))$.number=!1;if(!W.has("boolean"))$.boolean=!1;if(!W.has("null"))$.null=!1;if(!W.has("array"))$.array=!1;if(!W.has("object"))$.object=!1;if(W.has("integer")&&$.number!==!1){let Y=$.number||K.number();if(Y instanceof K.ZodNumber)$.number=Y.int()}}},ay=class{apply($,X){if(X.const===void 0)return;let Q=X.const;if($.string=!1,$.number=!1,$.boolean=!1,$.null=!1,$.array=!1,$.object=!1,typeof Q==="string")$.string=K.literal(Q);else if(typeof Q==="number")$.number=K.literal(Q);else if(typeof Q==="boolean")$.boolean=K.literal(Q);else if(Q===null)$.null=K.null();else if(Array.isArray(Q))$.array=void 0;else if(typeof Q==="object")$.object=void 0}},ty=class{apply($,X){if(!X.enum)return;if(X.enum.length===0){if(!X.type)$.string=!1,$.number=!1,$.boolean=!1,$.null=!1,$.array=!1,$.object=!1;return}let Q={string:X.enum.filter((W)=>typeof W==="string"),number:X.enum.filter((W)=>typeof W==="number"),boolean:X.enum.filter((W)=>typeof W==="boolean"),null:X.enum.filter((W)=>W===null),array:X.enum.filter((W)=>Array.isArray(W)),object:X.enum.filter((W)=>typeof W==="object"&&W!==null&&!Array.isArray(W))};$.string=this.createTypeSchema(Q.string,"string"),$.number=this.createTypeSchema(Q.number,"number"),$.boolean=this.createTypeSchema(Q.boolean,"boolean"),$.null=Q.null.length>0?K.null():!1,$.array=Q.array.length>0?void 0:!1,$.object=Q.object.length>0?void 0:!1}createTypeSchema($,X){if($.length===0)return!1;if($.length===1)return K.literal($[0]);if(X==="string")return K.enum($);if(X==="number"){let[Q,W,...Y]=$;return K.union([K.literal(Q),K.literal(W),...Y.map((J)=>K.literal(J))])}if(X==="boolean")return K.union([K.literal(!0),K.literal(!1)]);return!1}},sy=class{apply($,X){let Q=X;if(Q.type==="string"&&Q.format==="binary"&&Q.contentEncoding==="binary"){let W=K.file();if(Q.minLength!==void 0)W=W.min(Q.minLength);if(Q.maxLength!==void 0)W=W.max(Q.maxLength);if(Q.contentMediaType!==void 0)W=W.mime(Q.contentMediaType);$.file=W,$.string=!1}}},ey=class{apply($,X){let Q=X;if(X.type===void 0&&(Q.minLength!==void 0||Q.maxLength!==void 0||Q.pattern!==void 0)){if($.string===void 0)$.string=K.string()}}},$g=class{apply($,X){let Q=X;if(Q.minLength===void 0)return;if($.string!==!1){let W=$.string||K.string();if(W instanceof K.ZodString)$.string=W.refine((Y)=>{return Array.from(Y).length>=Q.minLength},{message:`String must be at least ${Q.minLength} characters long`})}}},Xg=class{apply($,X){let Q=X;if(Q.maxLength===void 0)return;if($.string!==!1){let W=$.string||K.string();if(W instanceof K.ZodString)$.string=W.refine((Y)=>{return Array.from(Y).length<=Q.maxLength},{message:`String must be at most ${Q.maxLength} characters long`})}}},Qg=class{apply($,X){let Q=X;if(!Q.pattern)return;if($.string!==!1){let W=$.string||K.string();if(W instanceof K.ZodString){let Y=new RegExp(Q.pattern);$.string=W.regex(Y)}}}},Yg=class{apply($,X){let Q=X;if(Q.minimum===void 0)return;if($.number!==!1){let W=$.number||K.number();if(W instanceof K.ZodNumber)$.number=W.min(Q.minimum)}}},Wg=class{apply($,X){let Q=X;if(Q.maximum===void 0)return;if($.number!==!1){let W=$.number||K.number();if(W instanceof K.ZodNumber)$.number=W.max(Q.maximum)}}},Jg=class{apply($,X){let Q=X;if(Q.exclusiveMinimum===void 0)return;if($.number!==!1){let W=$.number||K.number();if(W instanceof K.ZodNumber)if(typeof Q.exclusiveMinimum==="number")$.number=W.gt(Q.exclusiveMinimum);else $.number=!1}}},Ug=class{apply($,X){let Q=X;if(Q.exclusiveMaximum===void 0)return;if($.number!==!1){let W=$.number||K.number();if(W instanceof K.ZodNumber)if(typeof Q.exclusiveMaximum==="number")$.number=W.lt(Q.exclusiveMaximum);else $.number=!1}}},Gg=class{apply($,X){let Q=X;if(Q.multipleOf===void 0)return;if($.number!==!1){let W=$.number||K.number();if(W instanceof K.ZodNumber)$.number=W.refine((Y)=>{if(Q.multipleOf===0)return!1;let J=Y/Q.multipleOf,U=Math.round(J),G=Math.min(Math.abs(Y)*Number.EPSILON*10,Math.abs(Q.multipleOf)*Number.EPSILON*10);return Math.abs(J-U)<=G/Math.abs(Q.multipleOf)},{message:`Must be a multiple of ${Q.multipleOf}`})}}},Kg=class{apply($,X){let Q=X;if(X.type===void 0&&(Q.minItems!==void 0||Q.maxItems!==void 0||Q.items!==void 0||Q.prefixItems!==void 0)){if($.array===void 0)$.array=K.array(K.any())}}},Hg=class{apply($,X){let Q=X;if(Q.minItems===void 0)return;if($.array!==!1)$.array=($.array||K.array(K.any())).min(Q.minItems)}},qg=class{apply($,X){let Q=X;if(Q.maxItems===void 0)return;if($.array!==!1)$.array=($.array||K.array(K.any())).max(Q.maxItems)}},Vg=class{apply($,X){let Q=X;if($.array===!1)return;if(Array.isArray(Q.items))$.array=$.array||K.array(K.any());else if(Q.items&&typeof Q.items!=="boolean"&&!Q.prefixItems){let W=t$(Q.items),Y=K.array(W);if($.array&&$.array instanceof K.ZodArray){let J=$.array._def;if(J.checks)J.checks.forEach((U)=>{if(U._zod&&U._zod.def){let G=U._zod.def;if(G.check==="min_length"&&G.minimum!==void 0)Y=Y.min(G.minimum);else if(G.check==="max_length"&&G.maximum!==void 0)Y=Y.max(G.maximum)}})}$.array=Y}else if(typeof Q.items==="boolean"&&Q.items===!1)if(!Q.prefixItems)$.array=K.array(K.any()).max(0);else $.array=$.array||K.array(K.any());else if(typeof Q.items==="boolean"&&Q.items===!0)$.array=$.array||K.array(K.any());else if(Q.prefixItems)$.array=$.array||K.array(K.any())}},Bg=class{apply($,X){if(X.type!=="array")return;let Q=X;if(!Array.isArray(Q.items))return;if($.array===!1)return;let W=Q.items.map((J)=>t$(J)),Y;if(W.length===0)Y=K.tuple([]);else Y=K.tuple(W);if(Q.minItems!==void 0&&Q.minItems>W.length)Y=!1;if(Q.maxItems!==void 0&&Q.maxItems<W.length)Y=!1;$.tuple=Y,$.array=!1}},Dg=class{apply($,X){let Q=X;if($.object===!1)return;if(Q.properties||Q.required||Q.additionalProperties!==void 0)$.object=$.object||K.object({}).passthrough()}},_g=class{apply($,X){let Q=X;if(X.type===void 0&&(Q.maxProperties!==void 0||Q.minProperties!==void 0)){if($.object===void 0)$.object=K.object({}).passthrough()}}},wg=class{apply($,X){let Q=X;if(Q.maxProperties===void 0)return;if($.object!==!1){let W=$.object||K.object({}).passthrough();$.object=W.refine((Y)=>Object.keys(Y).length<=Q.maxProperties,{message:`Object must have at most ${Q.maxProperties} properties`})}}},Ng=class{apply($,X){let Q=X;if(Q.minProperties===void 0)return;if($.object!==!1){let W=$.object||K.object({}).passthrough();$.object=W.refine((Y)=>Object.keys(Y).length>=Q.minProperties,{message:`Object must have at least ${Q.minProperties} properties`})}}};function h5($,X){if($===X)return!0;if($==null||X==null)return $===X;if(typeof $!==typeof X)return!1;if(Array.isArray($)&&Array.isArray(X)){if($.length!==X.length)return!1;return $.every((Q,W)=>h5(Q,X[W]))}if(typeof $==="object"&&typeof X==="object"){let Q=Object.keys($),W=Object.keys(X);if(Q.length!==W.length)return!1;return Q.every((Y)=>W.includes(Y)&&h5($[Y],X[Y]))}return!1}function Lg(){return($)=>{if(!Array.isArray($))return!0;let X=[];return $.every((Q)=>{if(X.some((Y)=>h5(Q,Y)))return!1;return X.push(Q),!0})}}function bQ($,X){return $.safeParse(X).success}var Fg=class{apply($,X){if(!X.not)return $;let Q=t$(X.not);return $.refine((W)=>!bQ(Q,W),{message:"Value must not match the 'not' schema"})}},Og=class{apply($,X){if(X.uniqueItems!==!0)return $;return $.refine(Lg(),{message:"Array items must be unique"})}},Mg=class{apply($,X){if(!X.allOf||X.allOf.length===0)return $;return X.allOf.map((W)=>t$(W)).reduce((W,Y)=>K.intersection(W,Y),$)}},zg=class{apply($,X){if(!X.anyOf||X.anyOf.length===0)return $;let Q=X.anyOf.length===1?t$(X.anyOf[0]):K.union([t$(X.anyOf[0]),t$(X.anyOf[1]),...X.anyOf.slice(2).map((W)=>t$(W))]);return K.intersection($,Q)}},Zg=class{apply($,X){if(!X.oneOf||X.oneOf.length===0)return $;let Q=X.oneOf.map((W)=>t$(W));return $.refine((W)=>{let Y=0;for(let J of Q)if(J.safeParse(W).success){if(Y++,Y>1)return!1}return Y===1},{message:"Value must match exactly one of the oneOf schemas"})}},Pg=class{apply($,X){let Q=X;if(Q.prefixItems&&Array.isArray(Q.prefixItems)){let Y=Q.prefixItems.map((J)=>t$(J));return $.refine((J)=>{if(!Array.isArray(J))return!0;for(let U=0;U<Math.min(J.length,Y.length);U++)if(!bQ(Y[U],J[U]))return!1;if(J.length>Y.length){if(typeof Q.items==="boolean"&&Q.items===!1)return!1;else if(Q.items&&typeof Q.items==="object"&&!Array.isArray(Q.items)){let U=t$(Q.items);for(let G=Y.length;G<J.length;G++)if(!bQ(U,J[G]))return!1}}return!0},{message:"Array does not match prefixItems schema"})}return $}},Ag=class{apply($,X){let Q=X;if(!Q.properties&&!Q.required&&Q.additionalProperties!==!1)return $;if($ instanceof K.ZodObject||$ instanceof K.ZodRecord){let W={};if(Q.properties){for(let[Y,J]of Object.entries(Q.properties))if(J!==void 0)W[Y]=t$(J)}if(Q.required&&Array.isArray(Q.required)){let Y=new Set(Q.required);for(let J of Object.keys(W))if(!Y.has(J))W[J]=W[J].optional()}else for(let Y of Object.keys(W))W[Y]=W[Y].optional();if(Q.additionalProperties===!1)return K.object(W);else return K.object(W).passthrough()}return $.refine((W)=>{if(typeof W!=="object"||W===null||Array.isArray(W))return!0;if(Q.properties){for(let[Y,J]of Object.entries(Q.properties))if(J!==void 0){if(Object.getOwnPropertyDescriptor(W,Y)!==void 0){if(!t$(J).safeParse(W[Y]).success)return!1}}}if(Q.required&&Array.isArray(Q.required)){for(let Y of Q.required)if(Object.getOwnPropertyDescriptor(W,Y)===void 0)return!1}if(Q.additionalProperties===!1&&Q.properties){let Y=new Set(Object.keys(Q.properties));for(let J in W)if(!Y.has(J))return!1}return!0},{message:"Object constraints validation failed"})}},Eg=class{apply($,X){if(!X.enum||X.enum.length===0)return $;let Q=X.enum.filter((W)=>Array.isArray(W)||typeof W==="object"&&W!==null);if(Q.length===0)return $;return $.refine((W)=>{if(typeof W!=="object"||W===null)return!0;return Q.some((Y)=>h5(W,Y))},{message:"Value must match one of the enum values"})}},jg=class{apply($,X){if(X.const===void 0)return $;let Q=X.const;if(typeof Q!=="object"||Q===null)return $;return $.refine((W)=>h5(W,Q),{message:"Value must equal the const value"})}},kg=class{apply($,X){if(X.description)$=$.describe(X.description);return $}},Ig=class{apply($,X){var Q;let W=X;if(!((Q=W.required)==null?void 0:Q.includes("__proto__"))||X.type!==void 0)return $;return K.any().refine((Y)=>this.validateRequired(Y,W.required),{message:"Missing required properties"})}validateRequired($,X){if(typeof $!=="object"||$===null||Array.isArray($))return!0;return X.every((Q)=>Object.prototype.hasOwnProperty.call($,Q))}},Rg=class{apply($,X){var Q;let W=X;if(W.contains===void 0)return $;let Y=t$(W.contains),J=(Q=W.minContains)!=null?Q:1,U=W.maxContains;return $.refine((G)=>{if(!Array.isArray(G))return!0;let H=0;for(let q of G)if(bQ(Y,q))H++;if(H<J)return!1;if(U!==void 0&&H>U)return!1;return!0},{message:"Array must contain required items matching the schema"})}},bg=class{apply($,X){let{default:Q}=X;if(Q===void 0)return $;if(!$.safeParse(Q).success)return $;return $.default(Q)}},vg=[new ay,new ty,new oy,new sy,new ey,new Kg,new _g,new $g,new Xg,new Qg,new Yg,new Wg,new Jg,new Ug,new Gg,new Bg,new Hg,new qg,new Vg,new wg,new Ng,new Dg],Sg=[new Ig,new Eg,new jg,new Mg,new zg,new Zg,new Pg,new Ag,new Rg,new Fg,new Og,new bg,new kg];function t$($){if(typeof $==="boolean")return $?K.any():K.never();let X={};for(let Y of vg)Y.apply(X,$);let Q=[];if(X.string!==!1)Q.push(X.string||K.string());if(X.number!==!1)Q.push(X.number||K.number());if(X.boolean!==!1)Q.push(X.boolean||K.boolean());if(X.null!==!1)Q.push(X.null||K.null());if(X.array!==!1)Q.push(X.array||K.array(K.any()));if(X.tuple!==!1&&X.tuple!==void 0)Q.push(X.tuple);if(X.object!==!1)if(X.object)Q.push(X.object);else{let Y=K.custom((J)=>{return typeof J==="object"&&J!==null&&!Array.isArray(J)},"Must be an object, not an array");Q.push(Y)}if(X.file!==!1&&X.file!==void 0)Q.push(X.file);let W;if(Q.length===0)W=K.never();else if(Q.length===1)W=Q[0];else if(!Object.keys($).some((J)=>J!=="$schema"&&J!=="title"&&J!=="description"))W=K.any();else W=K.union(Q);for(let Y of Sg)W=Y.apply(W,$);return W}import{jsx as SQ,jsxs as Wz}from"react/jsx-runtime";var xg=({data:$,setUiAjaxConfiguration:X})=>{let{name:Q,titles:W,instructions:Y,tools:J,token:U,autoStart:G,muted:H,language:q,outputModalities:V,sxMap:B,iconUrl:D,iconPosition:_,useSocketioSupport:w,useCentrifugeSupport:N,useMittSupport:L,centrifugeChannel:O}=$,{apiServer:Z,enableRenderingLog:F}=$1(),[z,P]=I9(null),[j,I]=I9(null),[k,m]=I9(null),[$$,U$]=I9(!1),[_$,a]=I9([]),[,B$]=I9(null),N$=Cg(null),x=Tg(()=>{return J.map((X$)=>{let z$=AY(X??(()=>{}),X$.kwargs,X$.depsNames,X$.pathname,{apiServer:Z,renderingLogEnabled:F});return n4({name:X$.name,description:X$.description,parameters:t$(X$.params),async execute(X4){console.log(`Calling tool: ${X$.name} with: ${JSON.stringify(X4)}`);let D6=await z$(X4);if(!Array.isArray(D6))return[];return D6.filter((P$)=>P$.name===`pietoolOutput_${Q}`).map((P$)=>P$.data.output)}})})},[J,X]),i=()=>{if(console.log("Disconnecting session..."),j)j.close();I(null),P(null),U$(!1)},Y$=async(X$)=>{if(!j){console.error("Session not initialized");return}if($$){console.log("Already connected, skipping...");return}try{j.on("history_updated",(z$)=>{a(z$)}),console.log("Connecting to session..."),B$(null),await j.connect({apiKey:X$}),U$(!0),console.log("Connected successfully")}catch(z$){console.error("Failed to connect to session:",z$),B$(z$ instanceof Error?z$.message:"Failed to connect"),U$(!1)}};return vQ(()=>{if(!N$.current)return;if(!k)navigator.mediaDevices.getUserMedia({audio:!0}).then(async(X$)=>{m(new j9({mediaStream:X$,audioElement:N$.current}))})},[N$]),vQ(()=>{if(!N$.current)return;if(!k)return;if(z===null||j===null){let X$=new IQ({name:Q,instructions:Y,tools:x}),z$=new k9(X$,{model:"gpt-realtime",transport:k,config:{outputModalities:V,audio:{input:{transcription:{language:q??void 0,model:"gpt-4o-mini-transcribe"}}},inputAudioTranscription:{language:q??void 0,model:"gpt-4o-mini-transcribe"}}});P(X$),I(z$)}},[z,j,Q,Y,x,N$,k]),vQ(()=>{if(z!==null&&j!==null&&G&&U&&!$$)console.log("Auto-connecting..."),Y$(U).catch((X$)=>{console.error("Auto-connection failed:",X$)})},[z,j]),vQ(()=>{return()=>{console.log("Disconnecting..."),i()}},[]),Wz(E$,{card:"VoiceAgentCard",data:$,methods:{initializeAI:async(X$)=>{if(z!==null&&j!==null&&X$.token&&!$$)console.log("Connecting via initialize event..."),await Y$(X$.token).catch((z$)=>{console.error("Auto-connection failed:",z$)})},stop:()=>{i()}},useCentrifugeSupport:N,useSocketioSupport:w,useMittSupport:L,centrifugeChannel:O,children:[Wz("button",{id:Q,value:Q,onClick:async()=>{if($$)i();else if(U)await Y$(U)},style:$$?B.enabled:B.disabled,type:"button",children:[D&&_==="start"&&SQ("img",{src:D,alt:""}),l6($$?W.enabled:W.disabled),D&&_==="end"&&SQ("img",{src:D,alt:""})]}),SQ("input",{type:"hidden",name:Q,value:JSON.stringify(_$)}),SQ("audio",{ref:N$,autoPlay:!0,muted:H,style:{display:"none"}})]})},TQ=xg;import{useContext as gg,useEffect as Jz,useState as Uz}from"react";var YV=({data:$})=>{return l6($)};import{jsx as yg}from"react/jsx-runtime";var WV=({data:$,setUiAjaxConfiguration:X})=>{return yg(x$,{uiConfig:$,setUiAjaxConfiguration:X})};import{jsx as e6,jsxs as mg}from"react/jsx-runtime";var fg=({name:$,headers:X,rows:Q,rowUrls:W,selected:Y,columnHeights:J,sx:U,sxMap:G,setUiAjaxConfiguration:H})=>{let q=gg(m$),V=(N,L)=>Array(N.length*L).fill(0).map((O,Z)=>N[Z%N.length]),B=X.map((N)=>N.length),D=B.reduce((N,L)=>N*L,1),_=B.map((N,L)=>Math.floor(D/B.slice(0,L+1).reduce((O,Z)=>O*Z,1))),w=X.map((N,L)=>{return V(N,B.slice(0,L).reduce((O,Z)=>O*Z,1))});return mg("table",{id:$,className:"w-full table-auto border-collapse overflow-hidden text-left",style:{...G?.table,...U},children:[e6("thead",{className:"bg-gray-100",children:w.map((N,L)=>e6("tr",{className:"border-none",style:G?.row,children:N.map((O,Z)=>e6("th",{colSpan:_[L],className:"border border-gray-200 px-4 py-2 text-gray-500",style:{width:J?J[Z]:"auto",...G?.cell},children:typeof O==="string"?e6(YV,{data:O,setUiAjaxConfiguration:H}):e6(WV,{data:O,setUiAjaxConfiguration:H})},Z))},L))}),e6("tbody",{children:Q.map((N,L)=>e6("tr",{className:`border border-gray-200 bg-white ${W&&W[L]?"cursor-pointer":""} ${Y&&Y[L]?"bg-gray-200":""}`,style:G?.row,children:N.map((O,Z)=>e6("td",{onClick:()=>{if(typeof O==="string"&&W&&W[L])if(W[L].startsWith("http"))window.location.href=W[L];else q?.(W[L])},className:"border border-gray-200 px-4 py-2 text-gray-900",style:{width:J?J[Z]:"auto",...G?.cell},children:typeof O==="string"?e6(YV,{data:O,setUiAjaxConfiguration:H}):e6(WV,{data:O,setUiAjaxConfiguration:H})},Z))},L))})]})},hg=({data:$,setUiAjaxConfiguration:X})=>{let{name:Q,headers:W,rows:Y,rowUrls:J,sx:U,sxMap:G,useSocketioSupport:H,useCentrifugeSupport:q,useMittSupport:V,centrifugeChannel:B}=$,[D,_]=Uz([]),[w,N]=Uz([]);return Jz(()=>{_(Y)},[Y]),Jz(()=>{N(J)},[J]),e6(E$,{card:"TableCard",data:$,methods:{addrow:(z)=>{_((P)=>[...P,z.row]),N((P)=>[...P,z.url??null])},insertrow:(z)=>{_((P)=>[...P.slice(0,z.idx),z.row,...P.slice(z.idx)]),N((P)=>[...P.slice(0,z.idx),z.url??null,...P.slice(z.idx)])},delrow:(z)=>{_((P)=>[...P.slice(0,z.idx),...P.slice(z.idx+1)]),N((P)=>[...P.slice(0,z.idx),...P.slice(z.idx+1)])},clear:()=>{_(()=>[]),N(()=>[])}},useSocketioSupport:H,useCentrifugeSupport:q,useMittSupport:V,centrifugeChannel:B,children:e6(fg,{name:Q,rows:D,rowUrls:w,headers:W,setUiAjaxConfiguration:X,sx:U,sxMap:G})})},JV=hg;import{useContext as ug}from"react";import{jsx as UV}from"react/jsx-runtime";var cg=({data:$,content:X,setUiAjaxConfiguration:Q})=>{let{name:W,url:Y,sx:J}=$,U=ug(m$);return UV(E$,{card:W,data:$,children:UV("div",{style:J,id:W,onClick:(H)=>{if(Y)if(H.stopPropagation(),/^[a-zA-Z][a-zA-Z\d+\-.]*:\/\//.test(Y))window.location.href=Y;else U?.(Y)},children:UV(x$,{setUiAjaxConfiguration:Q,uiConfig:X})})})},GV=cg;var KV=!1;function a4(){if(KV)return;s$({name:"SequenceCard",component:gD,metadata:{author:"PieData",description:"Simple div with styles joining few components"}}),s$({name:"BoxCard",component:GV,metadata:{author:"PieData",description:"Simple div with styles joining few components"}}),s$({name:"UnionCard",component:hD,metadata:{author:"PieData",description:"Renders one of many components"}}),s$({name:"AjaxGroupCard",component:dD,metadata:{author:"PieData",description:"Group card with AJAX support"}}),s$({name:"AjaxButtonCard",component:o_,metadata:{author:"PieData",description:"Button with AJAX support"}}),s$({name:"RedirectButtonCard",component:B2,metadata:{author:"PieData",description:"Button with Redirect on click"}}),s$({name:"ChatCard",component:Zw,metadata:{author:"PieData"}}),s$({name:"HiddenCard",component:aY,metadata:{author:"PieData"}}),s$({name:"AutoRedirectCard",component:tY,metadata:{author:"PieData"}}),s$({name:"HTMLEmbedCard",component:eY,metadata:{author:"PieData"}}),s$({name:"IOEventsCard",component:q2,metadata:{author:"PieData"}}),s$({name:"OpenAIVoiceAgentCard",component:TQ,metadata:{author:"PieData"}}),s$({name:"TableCard",component:JV,metadata:{author:"PieData"}}),KV=!0}function V6(){return KV}import{jsx as S6,Fragment as og}from"react/jsx-runtime";var ng=({location:$,fallback:X,onError:Q,initializePie:W})=>{let Y=f6(),J=X1(),U=h6();dg(()=>{if(V6())return;a4(),W()},[]);let G=m5(()=>Gz.createAxiosDateTransformer({baseURL:Y||""}),[Y]),H=m5(()=>Q1(),[]),q=m5(()=>Y?W1(Y):null,[Y]),V=m5(()=>Y?U1(Y,J):null,[Y,J]),{data:B,isLoading:D,error:_}=pg({queryKey:["uiConfig",$.pathname+$.search,V6(),Y],queryFn:async()=>{if(!Y||!V6())return;let w=new URLSearchParams($.search);w.set("__pieroot","web");let N="/api/content"+$.pathname+"?"+w.toString();if(U)console.log("[PieRoot] Fetching UI configuration from:",N);let L=await G.get(N,{headers:{"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET,PUT,POST,DELETE,PATCH,OPTIONS","Content-type":"application/json"},withCredentials:!0});if(U)console.log("[PieRoot] Received UI configuration:",L.data);return L.data},staleTime:1/0,gcTime:1/0,refetchOnWindowFocus:!1,refetchOnMount:!1,refetchOnReconnect:!1,retry:!0,retryDelay:(w)=>Math.min(1000*2**w,30000)});if(!Y)return X??null;if(U)console.log("[PieRoot] Rendering with location:",$),console.log("[PieRoot] API_SERVER:",Y),console.log("[PieRoot] CENTRIFUGE_SERVER:",J),console.log("[PieRoot] Fallback provided:",!!X);if(_){if(U)console.error("[PieRoot] Error fetching UI configuration:",_),console.error("[PieRoot] Error details:",{message:_.message,status:_.response?.status,data:_.response?.data});return Q?.(),X}if(D||!B){if(U)console.log("[PieRoot] Loading state:",{isLoading:D,hasUiConfiguration:!!B});return X}if(U)console.log("[PieRoot] UI configuration loaded successfully:",B),console.log("[PieRoot] Rendering UI with configuration");return S6(m6.Provider,{value:H,children:S6(u6.Provider,{value:q,children:S6(c6.Provider,{value:V,children:S6(g6.Provider,{value:X??S6(og,{}),children:S6(G1,{children:S6(K1,{children:S6("form",{id:"piedata_global_form",action:Y+"api/process"+$.pathname,method:"post",encType:"multipart/form-data",children:S6(x$,{uiConfig:B})})})})})})})})},rg=($)=>{let X=m5(()=>new lg,[]);return S6(m$.Provider,{value:$.onNavigate,children:S6(S4.Provider,{value:$.config,children:S6(ig,{client:X,children:S6(ng,{...$})})})})},ag=rg;import{useEffect as eg,useMemo as u5}from"react";import{QueryClient as $f,QueryClientProvider as Xf,useQuery as Qf}from"@tanstack/react-query";var Hz=x1(O3(),1);import{useEffect as tg,useState as sg}from"react";var Kz=()=>{let[$,X]=sg(null),Q=FV();return tg(()=>{if(typeof window==="undefined")return;let W=window.Telegram.WebApp;if(W.ready(),Q==="telegram_expanded"&&(W.platform==="ios"||W.platform==="android"))W.expand();X(W)},[]),$};import{jsx as T6,Fragment as Jf}from"react/jsx-runtime";var Yf=({location:$,fallback:X,onError:Q,initializePie:W})=>{let Y=f6(),J=X1(),U=h6();eg(()=>{if(V6())return;a4(),W()},[]);let G=u5(()=>Hz.createAxiosDateTransformer({baseURL:Y}),[Y]),H=u5(()=>Q1(),[]),q=u5(()=>Y?W1(Y):null,[Y]),V=u5(()=>Y?U1(Y,J):null,[Y,J]),B=Kz(),{data:D,isLoading:_,error:w}=Qf({queryKey:["uiConfig",$.pathname+$.search,B?.initData,V6()],queryFn:async()=>{if(!V6())return;let N=new URLSearchParams($.search);if(N.set("__pieroot","telegram"),B?.initData)N.set("initData",B.initData);let L="/api/content"+$.pathname+"?"+N.toString();if(U)console.log("[PieRoot] Fetching UI configuration from:",L);let O=await G.get(L,{headers:{"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET,PUT,POST,DELETE,PATCH,OPTIONS","Content-type":"application/json"},withCredentials:!0});if(U)console.log("[PieRoot] Received UI configuration:",O.data);return O.data},staleTime:1/0,gcTime:1/0,refetchOnWindowFocus:!1,refetchOnMount:!1,refetchOnReconnect:!1,retry:!0,retryDelay:(N)=>Math.min(1000*2**N,30000)});if(!Y)throw Error("Set PIE_API_SERVER and PIE_CENTRIFUGE_SERVER");if(w&&U)return console.error("[PieRoot] Error fetching UI configuration:",w),console.error("[PieRoot] Error details:",{message:w.message,status:w.response?.status,data:w.response?.data}),Q?.(),X;if(_||!D){if(U)console.log("[PieRoot] Loading state:",{isLoading:_,hasUiConfiguration:!!D});return X}if(U)console.log("[PieRoot] UI configuration loaded successfully:",D),console.log("[PieRoot] Rendering UI with configuration");return T6(m6.Provider,{value:H,children:T6(u6.Provider,{value:q,children:T6(c6.Provider,{value:V,children:T6(g6.Provider,{value:X??T6(Jf,{}),children:T6(G1,{children:T6(K1,{children:T6("form",{id:"piedata_global_form",action:Y+"api/process"+$.pathname,method:"post",encType:"multipart/form-data",children:T6(x$,{uiConfig:D})})})})})})})})},Wf=($)=>{let X=u5(()=>new $f,[]);return T6(m$.Provider,{value:$.onNavigate,children:T6(S4.Provider,{value:$.config,children:T6(Xf,{client:X,children:T6(Yf,{...$})})})})},Uf=Wf;import{useEffect as Gf,useMemo as CQ}from"react";import{QueryClient as Kf,QueryClientProvider as Hf}from"@tanstack/react-query";import{jsx as $4,Fragment as Bf}from"react/jsx-runtime";var qf=({location:$,fallback:X,initializePie:Q,children:W})=>{let Y=f6(),J=X1(),U=h6();Gf(()=>{if(V6())return;a4(),Q()},[]);let G=CQ(()=>Q1(),[]),H=CQ(()=>Y?W1(Y):null,[Y]),q=CQ(()=>Y?U1(Y,J):null,[Y,J]);if(U)console.log("[PieRoot] Rendering with location:",$),console.log("[PieRoot] API_SERVER:",Y),console.log("[PieRoot] CENTRIFUGE_SERVER:",J),console.log("[PieRoot] Fallback provided:",!!X);return $4(m6.Provider,{value:G,children:$4(u6.Provider,{value:H,children:$4(c6.Provider,{value:q,children:$4(g6.Provider,{value:X??$4(Bf,{}),children:$4(G1,{children:$4(K1,{children:$4("form",{id:"piedata_global_form",action:Y+"api/process"+$.pathname,method:"post",encType:"multipart/form-data",children:W})})})})})})})},Vf=($)=>{let X=CQ(()=>new Kf,[]);return $4(m$.Provider,{value:$.onNavigate,children:$4(S4.Provider,{value:$.config,children:$4(Hf,{client:X,children:$4(qf,{...$})})})})},Df=Vf;import{useEffect as Nf,useMemo as c5}from"react";import{QueryClient as Lf,QueryClientProvider as Ff,useQuery as Of}from"@tanstack/react-query";var Vz=x1(O3(),1);import{useEffect as _f,useState as wf}from"react";var qz=()=>{let[$,X]=wf(null);return _f(()=>{if(typeof window==="undefined")return;let Q=window.WebApp;if(!Q)return;Q.ready(),X(Q)},[]),$};import{jsx as C6,Fragment as Zf}from"react/jsx-runtime";var Mf=({location:$,fallback:X,onError:Q,initializePie:W})=>{let Y=f6(),J=X1(),U=h6();Nf(()=>{if(V6())return;a4(),W()},[]);let G=c5(()=>Vz.createAxiosDateTransformer({baseURL:Y}),[Y]),H=c5(()=>Q1(),[]),q=c5(()=>Y?W1(Y):null,[Y]),V=c5(()=>Y?U1(Y,J):null,[Y,J]),B=qz(),{data:D,isLoading:_,error:w}=Of({queryKey:["uiConfig",$.pathname+$.search,B?.initData,V6()],queryFn:async()=>{if(!V6())return;let N=new URLSearchParams($.search);if(N.set("__pieroot","max"),B?.initData)N.set("initData",B.initData);let L="/api/content"+$.pathname+"?"+N.toString();if(U)console.log("[PieRoot] Fetching UI configuration from:",L);let O=await G.get(L,{headers:{"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET,PUT,POST,DELETE,PATCH,OPTIONS","Content-type":"application/json"},withCredentials:!0});if(U)console.log("[PieRoot] Received UI configuration:",O.data);return O.data},staleTime:1/0,gcTime:1/0,refetchOnWindowFocus:!1,refetchOnMount:!1,refetchOnReconnect:!1,retry:!0,retryDelay:(N)=>Math.min(1000*2**N,30000)});if(!Y)throw Error("Set PIE_API_SERVER and PIE_CENTRIFUGE_SERVER");if(w&&U)return console.error("[PieRoot] Error fetching UI configuration:",w),console.error("[PieRoot] Error details:",{message:w.message,status:w.response?.status,data:w.response?.data}),Q?.(),X;if(_||!D){if(U)console.log("[PieRoot] Loading state:",{isLoading:_,hasUiConfiguration:!!D});return X}if(U)console.log("[PieRoot] UI configuration loaded successfully:",D),console.log("[PieRoot] Rendering UI with configuration");return C6(m6.Provider,{value:H,children:C6(u6.Provider,{value:q,children:C6(c6.Provider,{value:V,children:C6(g6.Provider,{value:X??C6(Zf,{}),children:C6(G1,{children:C6(K1,{children:C6("form",{id:"piedata_global_form",action:Y+"api/process"+$.pathname,method:"post",encType:"multipart/form-data",children:C6(x$,{uiConfig:D})})})})})})})})},zf=($)=>{let X=c5(()=>new Lf,[]);return C6(m$.Provider,{value:$.onNavigate,children:C6(S4.Provider,{value:$.config,children:C6(Ff,{client:X,children:C6(Mf,{...$})})})})},Pf=zf;function Af($){if(!$)return{};return{...$}}var Ef=($,X)=>{let Q=new Array($.length+X.length);for(let W=0;W<$.length;W++)Q[W]=$[W];for(let W=0;W<X.length;W++)Q[$.length+W]=X[W];return Q},jf=($,X)=>({classGroupId:$,validator:X}),Lz=($=new Map,X=null,Q)=>({nextPart:$,validators:X,classGroupId:Q});var Bz=[];var kf=($)=>{let X=Rf($),{conflictingClassGroups:Q,conflictingClassGroupModifiers:W}=$;return{getClassGroupId:(U)=>{if(U.startsWith("[")&&U.endsWith("]"))return If(U);let G=U.split("-"),H=G[0]===""&&G.length>1?1:0;return Fz(G,H,X)},getConflictingClassGroupIds:(U,G)=>{if(G){let H=W[U],q=Q[U];if(H){if(q)return Ef(q,H);return H}return q||Bz}return Q[U]||Bz}}},Fz=($,X,Q)=>{if($.length-X===0)return Q.classGroupId;let Y=$[X],J=Q.nextPart.get(Y);if(J){let q=Fz($,X+1,J);if(q)return q}let U=Q.validators;if(U===null)return;let G=X===0?$.join("-"):$.slice(X).join("-"),H=U.length;for(let q=0;q<H;q++){let V=U[q];if(V.validator(G))return V.classGroupId}return},If=($)=>$.slice(1,-1).indexOf(":")===-1?void 0:(()=>{let X=$.slice(1,-1),Q=X.indexOf(":"),W=X.slice(0,Q);return W?"arbitrary.."+W:void 0})(),Rf=($)=>{let{theme:X,classGroups:Q}=$;return bf(Q,X)},bf=($,X)=>{let Q=Lz();for(let W in $){let Y=$[W];qV(Y,Q,W,X)}return Q},qV=($,X,Q,W)=>{let Y=$.length;for(let J=0;J<Y;J++){let U=$[J];vf(U,X,Q,W)}},vf=($,X,Q,W)=>{if(typeof $==="string"){Sf($,X,Q);return}if(typeof $==="function"){Tf($,X,Q,W);return}Cf($,X,Q,W)},Sf=($,X,Q)=>{let W=$===""?X:Oz(X,$);W.classGroupId=Q},Tf=($,X,Q,W)=>{if(xf($)){qV($(W),X,Q,W);return}if(X.validators===null)X.validators=[];X.validators.push(jf(Q,$))},Cf=($,X,Q,W)=>{let Y=Object.entries($),J=Y.length;for(let U=0;U<J;U++){let[G,H]=Y[U];qV(H,Oz(X,G),Q,W)}},Oz=($,X)=>{let Q=$,W=X.split("-"),Y=W.length;for(let J=0;J<Y;J++){let U=W[J],G=Q.nextPart.get(U);if(!G)G=Lz(),Q.nextPart.set(U,G);Q=G}return Q},xf=($)=>("isThemeGetter"in $)&&$.isThemeGetter===!0,yf=($)=>{if($<1)return{get:()=>{return},set:()=>{}};let X=0,Q=Object.create(null),W=Object.create(null),Y=(J,U)=>{if(Q[J]=U,X++,X>$)X=0,W=Q,Q=Object.create(null)};return{get(J){let U=Q[J];if(U!==void 0)return U;if((U=W[J])!==void 0)return Y(J,U),U},set(J,U){if(J in Q)Q[J]=U;else Y(J,U)}}};var gf=[],Dz=($,X,Q,W,Y)=>({modifiers:$,hasImportantModifier:X,baseClassName:Q,maybePostfixModifierPosition:W,isExternal:Y}),ff=($)=>{let{prefix:X,experimentalParseClassName:Q}=$,W=(Y)=>{let J=[],U=0,G=0,H=0,q,V=Y.length;for(let N=0;N<V;N++){let L=Y[N];if(U===0&&G===0){if(L===":"){J.push(Y.slice(H,N)),H=N+1;continue}if(L==="/"){q=N;continue}}if(L==="[")U++;else if(L==="]")U--;else if(L==="(")G++;else if(L===")")G--}let B=J.length===0?Y:Y.slice(H),D=B,_=!1;if(B.endsWith("!"))D=B.slice(0,-1),_=!0;else if(B.startsWith("!"))D=B.slice(1),_=!0;let w=q&&q>H?q-H:void 0;return Dz(J,_,D,w)};if(X){let Y=X+":",J=W;W=(U)=>U.startsWith(Y)?J(U.slice(Y.length)):Dz(gf,!1,U,void 0,!0)}if(Q){let Y=W;W=(J)=>Q({className:J,parseClassName:Y})}return W},hf=($)=>{let X=new Map;return $.orderSensitiveModifiers.forEach((Q,W)=>{X.set(Q,1e6+W)}),(Q)=>{let W=[],Y=[];for(let J=0;J<Q.length;J++){let U=Q[J],G=U[0]==="[",H=X.has(U);if(G||H){if(Y.length>0)Y.sort(),W.push(...Y),Y=[];W.push(U)}else Y.push(U)}if(Y.length>0)Y.sort(),W.push(...Y);return W}},mf=($)=>({cache:yf($.cacheSize),parseClassName:ff($),sortModifiers:hf($),...kf($)}),uf=/\s+/,cf=($,X)=>{let{parseClassName:Q,getClassGroupId:W,getConflictingClassGroupIds:Y,sortModifiers:J}=X,U=[],G=$.trim().split(uf),H="";for(let q=G.length-1;q>=0;q-=1){let V=G[q],{isExternal:B,modifiers:D,hasImportantModifier:_,baseClassName:w,maybePostfixModifierPosition:N}=Q(V);if(B){H=V+(H.length>0?" "+H:H);continue}let L=!!N,O=W(L?w.substring(0,N):w);if(!O){if(!L){H=V+(H.length>0?" "+H:H);continue}if(O=W(w),!O){H=V+(H.length>0?" "+H:H);continue}L=!1}let Z=D.length===0?"":D.length===1?D[0]:J(D).join(":"),F=_?Z+"!":Z,z=F+O;if(U.indexOf(z)>-1)continue;U.push(z);let P=Y(O,L);for(let j=0;j<P.length;++j){let I=P[j];U.push(F+I)}H=V+(H.length>0?" "+H:H)}return H},df=(...$)=>{let X=0,Q,W,Y="";while(X<$.length)if(Q=$[X++]){if(W=Mz(Q))Y&&(Y+=" "),Y+=W}return Y},Mz=($)=>{if(typeof $==="string")return $;let X,Q="";for(let W=0;W<$.length;W++)if($[W]){if(X=Mz($[W]))Q&&(Q+=" "),Q+=X}return Q},lf=($,...X)=>{let Q,W,Y,J,U=(H)=>{let q=X.reduce((V,B)=>B(V),$());return Q=mf(q),W=Q.cache.get,Y=Q.cache.set,J=G,G(H)},G=(H)=>{let q=W(H);if(q)return q;let V=cf(H,Q);return Y(H,V),V};return J=U,(...H)=>J(df(...H))},pf=[],h$=($)=>{let X=(Q)=>Q[$]||pf;return X.isThemeGetter=!0,X},zz=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,Zz=/^\((?:(\w[\w-]*):)?(.+)\)$/i,nf=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,rf=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,of=/\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$/,af=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,tf=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,sf=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,S1=($)=>nf.test($),G$=($)=>!!$&&!Number.isNaN(Number($)),T1=($)=>!!$&&Number.isInteger(Number($)),HV=($)=>$.endsWith("%")&&G$($.slice(0,-1)),t4=($)=>rf.test($),Pz=()=>!0,ef=($)=>of.test($)&&!af.test($),VV=()=>!1,$h=($)=>tf.test($),Xh=($)=>sf.test($),Qh=($)=>!c($)&&!d($),Yh=($)=>C1($,jz,VV),c=($)=>zz.test($),N0=($)=>C1($,kz,ef),_z=($)=>C1($,Vh,G$),Wh=($)=>C1($,Rz,Pz),Jh=($)=>C1($,Iz,VV),wz=($)=>C1($,Az,VV),Uh=($)=>C1($,Ez,Xh),xQ=($)=>C1($,bz,$h),d=($)=>Zz.test($),d5=($)=>L0($,kz),Gh=($)=>L0($,Iz),Nz=($)=>L0($,Az),Kh=($)=>L0($,jz),Hh=($)=>L0($,Ez),yQ=($)=>L0($,bz,!0),qh=($)=>L0($,Rz,!0),C1=($,X,Q)=>{let W=zz.exec($);if(W){if(W[1])return X(W[1]);return Q(W[2])}return!1},L0=($,X,Q=!1)=>{let W=Zz.exec($);if(W){if(W[1])return X(W[1]);return Q}return!1},Az=($)=>$==="position"||$==="percentage",Ez=($)=>$==="image"||$==="url",jz=($)=>$==="length"||$==="size"||$==="bg-size",kz=($)=>$==="length",Vh=($)=>$==="number",Iz=($)=>$==="family-name",Rz=($)=>$==="number"||$==="weight",bz=($)=>$==="shadow";var Bh=()=>{let $=h$("color"),X=h$("font"),Q=h$("text"),W=h$("font-weight"),Y=h$("tracking"),J=h$("leading"),U=h$("breakpoint"),G=h$("container"),H=h$("spacing"),q=h$("radius"),V=h$("shadow"),B=h$("inset-shadow"),D=h$("text-shadow"),_=h$("drop-shadow"),w=h$("blur"),N=h$("perspective"),L=h$("aspect"),O=h$("ease"),Z=h$("animate"),F=()=>["auto","avoid","all","avoid-page","page","left","right","column"],z=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],P=()=>[...z(),d,c],j=()=>["auto","hidden","clip","visible","scroll"],I=()=>["auto","contain","none"],k=()=>[d,c,H],m=()=>[S1,"full","auto",...k()],$$=()=>[T1,"none","subgrid",d,c],U$=()=>["auto",{span:["full",T1,d,c]},T1,d,c],_$=()=>[T1,"auto",d,c],a=()=>["auto","min","max","fr",d,c],B$=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],N$=()=>["start","end","center","stretch","center-safe","end-safe"],x=()=>["auto",...k()],i=()=>[S1,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...k()],Y$=()=>[S1,"screen","full","dvw","lvw","svw","min","max","fit",...k()],B6=()=>[S1,"screen","full","lh","dvh","lvh","svh","min","max","fit",...k()],u=()=>[$,d,c],X$=()=>[...z(),Nz,wz,{position:[d,c]}],z$=()=>["no-repeat",{repeat:["","x","y","space","round"]}],X4=()=>["auto","cover","contain",Kh,Yh,{size:[d,c]}],D6=()=>[HV,d5,N0],P$=()=>["","none","full",q,d,c],c$=()=>["",G$,d5,N0],x6=()=>["solid","dashed","dotted","double"],l5=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],k$=()=>[G$,HV,Nz,wz],s4=()=>["","none",w,d,c],Q4=()=>["none",G$,d,c],e4=()=>["none",G$,d,c],F0=()=>[G$,d,c],R9=()=>[S1,"full",...k()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[t4],breakpoint:[t4],color:[Pz],container:[t4],"drop-shadow":[t4],ease:["in","out","in-out"],font:[Qh],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[t4],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[t4],shadow:[t4],spacing:["px",G$],text:[t4],"text-shadow":[t4],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",S1,c,d,L]}],container:["container"],columns:[{columns:[G$,c,d,G]}],"break-after":[{"break-after":F()}],"break-before":[{"break-before":F()}],"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:P()}],overflow:[{overflow:j()}],"overflow-x":[{"overflow-x":j()}],"overflow-y":[{"overflow-y":j()}],overscroll:[{overscroll:I()}],"overscroll-x":[{"overscroll-x":I()}],"overscroll-y":[{"overscroll-y":I()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:m()}],"inset-x":[{"inset-x":m()}],"inset-y":[{"inset-y":m()}],start:[{"inset-s":m(),start:m()}],end:[{"inset-e":m(),end:m()}],"inset-bs":[{"inset-bs":m()}],"inset-be":[{"inset-be":m()}],top:[{top:m()}],right:[{right:m()}],bottom:[{bottom:m()}],left:[{left:m()}],visibility:["visible","invisible","collapse"],z:[{z:[T1,"auto",d,c]}],basis:[{basis:[S1,"full","auto",G,...k()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[G$,S1,"auto","initial","none",c]}],grow:[{grow:["",G$,d,c]}],shrink:[{shrink:["",G$,d,c]}],order:[{order:[T1,"first","last","none",d,c]}],"grid-cols":[{"grid-cols":$$()}],"col-start-end":[{col:U$()}],"col-start":[{"col-start":_$()}],"col-end":[{"col-end":_$()}],"grid-rows":[{"grid-rows":$$()}],"row-start-end":[{row:U$()}],"row-start":[{"row-start":_$()}],"row-end":[{"row-end":_$()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":a()}],"auto-rows":[{"auto-rows":a()}],gap:[{gap:k()}],"gap-x":[{"gap-x":k()}],"gap-y":[{"gap-y":k()}],"justify-content":[{justify:[...B$(),"normal"]}],"justify-items":[{"justify-items":[...N$(),"normal"]}],"justify-self":[{"justify-self":["auto",...N$()]}],"align-content":[{content:["normal",...B$()]}],"align-items":[{items:[...N$(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...N$(),{baseline:["","last"]}]}],"place-content":[{"place-content":B$()}],"place-items":[{"place-items":[...N$(),"baseline"]}],"place-self":[{"place-self":["auto",...N$()]}],p:[{p:k()}],px:[{px:k()}],py:[{py:k()}],ps:[{ps:k()}],pe:[{pe:k()}],pbs:[{pbs:k()}],pbe:[{pbe:k()}],pt:[{pt:k()}],pr:[{pr:k()}],pb:[{pb:k()}],pl:[{pl:k()}],m:[{m:x()}],mx:[{mx:x()}],my:[{my:x()}],ms:[{ms:x()}],me:[{me:x()}],mbs:[{mbs:x()}],mbe:[{mbe:x()}],mt:[{mt:x()}],mr:[{mr:x()}],mb:[{mb:x()}],ml:[{ml:x()}],"space-x":[{"space-x":k()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":k()}],"space-y-reverse":["space-y-reverse"],size:[{size:i()}],"inline-size":[{inline:["auto",...Y$()]}],"min-inline-size":[{"min-inline":["auto",...Y$()]}],"max-inline-size":[{"max-inline":["none",...Y$()]}],"block-size":[{block:["auto",...B6()]}],"min-block-size":[{"min-block":["auto",...B6()]}],"max-block-size":[{"max-block":["none",...B6()]}],w:[{w:[G,"screen",...i()]}],"min-w":[{"min-w":[G,"screen","none",...i()]}],"max-w":[{"max-w":[G,"screen","none","prose",{screen:[U]},...i()]}],h:[{h:["screen","lh",...i()]}],"min-h":[{"min-h":["screen","lh","none",...i()]}],"max-h":[{"max-h":["screen","lh",...i()]}],"font-size":[{text:["base",Q,d5,N0]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[W,qh,Wh]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",HV,c]}],"font-family":[{font:[Gh,Jh,X]}],"font-features":[{"font-features":[c]}],"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:[Y,d,c]}],"line-clamp":[{"line-clamp":[G$,"none",d,_z]}],leading:[{leading:[J,...k()]}],"list-image":[{"list-image":["none",d,c]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",d,c]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:u()}],"text-color":[{text:u()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...x6(),"wavy"]}],"text-decoration-thickness":[{decoration:[G$,"from-font","auto",d,N0]}],"text-decoration-color":[{decoration:u()}],"underline-offset":[{"underline-offset":[G$,"auto",d,c]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:k()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",d,c]}],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",d,c]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:X$()}],"bg-repeat":[{bg:z$()}],"bg-size":[{bg:X4()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},T1,d,c],radial:["",d,c],conic:[T1,d,c]},Hh,Uh]}],"bg-color":[{bg:u()}],"gradient-from-pos":[{from:D6()}],"gradient-via-pos":[{via:D6()}],"gradient-to-pos":[{to:D6()}],"gradient-from":[{from:u()}],"gradient-via":[{via:u()}],"gradient-to":[{to:u()}],rounded:[{rounded:P$()}],"rounded-s":[{"rounded-s":P$()}],"rounded-e":[{"rounded-e":P$()}],"rounded-t":[{"rounded-t":P$()}],"rounded-r":[{"rounded-r":P$()}],"rounded-b":[{"rounded-b":P$()}],"rounded-l":[{"rounded-l":P$()}],"rounded-ss":[{"rounded-ss":P$()}],"rounded-se":[{"rounded-se":P$()}],"rounded-ee":[{"rounded-ee":P$()}],"rounded-es":[{"rounded-es":P$()}],"rounded-tl":[{"rounded-tl":P$()}],"rounded-tr":[{"rounded-tr":P$()}],"rounded-br":[{"rounded-br":P$()}],"rounded-bl":[{"rounded-bl":P$()}],"border-w":[{border:c$()}],"border-w-x":[{"border-x":c$()}],"border-w-y":[{"border-y":c$()}],"border-w-s":[{"border-s":c$()}],"border-w-e":[{"border-e":c$()}],"border-w-bs":[{"border-bs":c$()}],"border-w-be":[{"border-be":c$()}],"border-w-t":[{"border-t":c$()}],"border-w-r":[{"border-r":c$()}],"border-w-b":[{"border-b":c$()}],"border-w-l":[{"border-l":c$()}],"divide-x":[{"divide-x":c$()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":c$()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...x6(),"hidden","none"]}],"divide-style":[{divide:[...x6(),"hidden","none"]}],"border-color":[{border:u()}],"border-color-x":[{"border-x":u()}],"border-color-y":[{"border-y":u()}],"border-color-s":[{"border-s":u()}],"border-color-e":[{"border-e":u()}],"border-color-bs":[{"border-bs":u()}],"border-color-be":[{"border-be":u()}],"border-color-t":[{"border-t":u()}],"border-color-r":[{"border-r":u()}],"border-color-b":[{"border-b":u()}],"border-color-l":[{"border-l":u()}],"divide-color":[{divide:u()}],"outline-style":[{outline:[...x6(),"none","hidden"]}],"outline-offset":[{"outline-offset":[G$,d,c]}],"outline-w":[{outline:["",G$,d5,N0]}],"outline-color":[{outline:u()}],shadow:[{shadow:["","none",V,yQ,xQ]}],"shadow-color":[{shadow:u()}],"inset-shadow":[{"inset-shadow":["none",B,yQ,xQ]}],"inset-shadow-color":[{"inset-shadow":u()}],"ring-w":[{ring:c$()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:u()}],"ring-offset-w":[{"ring-offset":[G$,N0]}],"ring-offset-color":[{"ring-offset":u()}],"inset-ring-w":[{"inset-ring":c$()}],"inset-ring-color":[{"inset-ring":u()}],"text-shadow":[{"text-shadow":["none",D,yQ,xQ]}],"text-shadow-color":[{"text-shadow":u()}],opacity:[{opacity:[G$,d,c]}],"mix-blend":[{"mix-blend":[...l5(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":l5()}],"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":[G$]}],"mask-image-linear-from-pos":[{"mask-linear-from":k$()}],"mask-image-linear-to-pos":[{"mask-linear-to":k$()}],"mask-image-linear-from-color":[{"mask-linear-from":u()}],"mask-image-linear-to-color":[{"mask-linear-to":u()}],"mask-image-t-from-pos":[{"mask-t-from":k$()}],"mask-image-t-to-pos":[{"mask-t-to":k$()}],"mask-image-t-from-color":[{"mask-t-from":u()}],"mask-image-t-to-color":[{"mask-t-to":u()}],"mask-image-r-from-pos":[{"mask-r-from":k$()}],"mask-image-r-to-pos":[{"mask-r-to":k$()}],"mask-image-r-from-color":[{"mask-r-from":u()}],"mask-image-r-to-color":[{"mask-r-to":u()}],"mask-image-b-from-pos":[{"mask-b-from":k$()}],"mask-image-b-to-pos":[{"mask-b-to":k$()}],"mask-image-b-from-color":[{"mask-b-from":u()}],"mask-image-b-to-color":[{"mask-b-to":u()}],"mask-image-l-from-pos":[{"mask-l-from":k$()}],"mask-image-l-to-pos":[{"mask-l-to":k$()}],"mask-image-l-from-color":[{"mask-l-from":u()}],"mask-image-l-to-color":[{"mask-l-to":u()}],"mask-image-x-from-pos":[{"mask-x-from":k$()}],"mask-image-x-to-pos":[{"mask-x-to":k$()}],"mask-image-x-from-color":[{"mask-x-from":u()}],"mask-image-x-to-color":[{"mask-x-to":u()}],"mask-image-y-from-pos":[{"mask-y-from":k$()}],"mask-image-y-to-pos":[{"mask-y-to":k$()}],"mask-image-y-from-color":[{"mask-y-from":u()}],"mask-image-y-to-color":[{"mask-y-to":u()}],"mask-image-radial":[{"mask-radial":[d,c]}],"mask-image-radial-from-pos":[{"mask-radial-from":k$()}],"mask-image-radial-to-pos":[{"mask-radial-to":k$()}],"mask-image-radial-from-color":[{"mask-radial-from":u()}],"mask-image-radial-to-color":[{"mask-radial-to":u()}],"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":z()}],"mask-image-conic-pos":[{"mask-conic":[G$]}],"mask-image-conic-from-pos":[{"mask-conic-from":k$()}],"mask-image-conic-to-pos":[{"mask-conic-to":k$()}],"mask-image-conic-from-color":[{"mask-conic-from":u()}],"mask-image-conic-to-color":[{"mask-conic-to":u()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:X$()}],"mask-repeat":[{mask:z$()}],"mask-size":[{mask:X4()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",d,c]}],filter:[{filter:["","none",d,c]}],blur:[{blur:s4()}],brightness:[{brightness:[G$,d,c]}],contrast:[{contrast:[G$,d,c]}],"drop-shadow":[{"drop-shadow":["","none",_,yQ,xQ]}],"drop-shadow-color":[{"drop-shadow":u()}],grayscale:[{grayscale:["",G$,d,c]}],"hue-rotate":[{"hue-rotate":[G$,d,c]}],invert:[{invert:["",G$,d,c]}],saturate:[{saturate:[G$,d,c]}],sepia:[{sepia:["",G$,d,c]}],"backdrop-filter":[{"backdrop-filter":["","none",d,c]}],"backdrop-blur":[{"backdrop-blur":s4()}],"backdrop-brightness":[{"backdrop-brightness":[G$,d,c]}],"backdrop-contrast":[{"backdrop-contrast":[G$,d,c]}],"backdrop-grayscale":[{"backdrop-grayscale":["",G$,d,c]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[G$,d,c]}],"backdrop-invert":[{"backdrop-invert":["",G$,d,c]}],"backdrop-opacity":[{"backdrop-opacity":[G$,d,c]}],"backdrop-saturate":[{"backdrop-saturate":[G$,d,c]}],"backdrop-sepia":[{"backdrop-sepia":["",G$,d,c]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":k()}],"border-spacing-x":[{"border-spacing-x":k()}],"border-spacing-y":[{"border-spacing-y":k()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",d,c]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[G$,"initial",d,c]}],ease:[{ease:["linear","initial",O,d,c]}],delay:[{delay:[G$,d,c]}],animate:[{animate:["none",Z,d,c]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[N,d,c]}],"perspective-origin":[{"perspective-origin":P()}],rotate:[{rotate:Q4()}],"rotate-x":[{"rotate-x":Q4()}],"rotate-y":[{"rotate-y":Q4()}],"rotate-z":[{"rotate-z":Q4()}],scale:[{scale:e4()}],"scale-x":[{"scale-x":e4()}],"scale-y":[{"scale-y":e4()}],"scale-z":[{"scale-z":e4()}],"scale-3d":["scale-3d"],skew:[{skew:F0()}],"skew-x":[{"skew-x":F0()}],"skew-y":[{"skew-y":F0()}],transform:[{transform:[d,c,"","none","gpu","cpu"]}],"transform-origin":[{origin:P()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:R9()}],"translate-x":[{"translate-x":R9()}],"translate-y":[{"translate-y":R9()}],"translate-z":[{"translate-z":R9()}],"translate-none":["translate-none"],accent:[{accent:u()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:u()}],"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",d,c]}],"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":k()}],"scroll-mx":[{"scroll-mx":k()}],"scroll-my":[{"scroll-my":k()}],"scroll-ms":[{"scroll-ms":k()}],"scroll-me":[{"scroll-me":k()}],"scroll-mbs":[{"scroll-mbs":k()}],"scroll-mbe":[{"scroll-mbe":k()}],"scroll-mt":[{"scroll-mt":k()}],"scroll-mr":[{"scroll-mr":k()}],"scroll-mb":[{"scroll-mb":k()}],"scroll-ml":[{"scroll-ml":k()}],"scroll-p":[{"scroll-p":k()}],"scroll-px":[{"scroll-px":k()}],"scroll-py":[{"scroll-py":k()}],"scroll-ps":[{"scroll-ps":k()}],"scroll-pe":[{"scroll-pe":k()}],"scroll-pbs":[{"scroll-pbs":k()}],"scroll-pbe":[{"scroll-pbe":k()}],"scroll-pt":[{"scroll-pt":k()}],"scroll-pr":[{"scroll-pr":k()}],"scroll-pb":[{"scroll-pb":k()}],"scroll-pl":[{"scroll-pl":k()}],"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",d,c]}],fill:[{fill:["none",...u()]}],"stroke-w":[{stroke:[G$,d5,N0,_z]}],stroke:[{stroke:["none",...u()]}],"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 vz=lf(Bh);function Dh(...$){return vz($2($))}var _h=()=>{if(typeof document==="undefined")return;let $=document.getElementById("piedata_global_form");$&&$.submit()};export{C3 as useOpenAIWebRTC,a9 as useAjaxSubmit,Af as sx2radium,_h as submitGlobalForm,s$ as registerPieComponent,V6 as isPieComponentsInitialized,a4 as initializePieComponents,Dh as cn,x$ as UI,Uf as PieTelegramRoot,ag as PieRoot,Pf as PieMaxRoot,E$ as PieCard,Df as PieBaseRoot,i5 as PIEBREAK};
68
+ `.trim()}function _0($,X){return $ in X&&typeof X[$]!=="undefined"}function ix($){return _0("modalities",$)||_0("inputAudioFormat",$)||_0("outputAudioFormat",$)||_0("inputAudioTranscription",$)||_0("turnDetection",$)||_0("inputAudioNoiseReduction",$)||_0("speed",$)}function oM($){if(!ix($)){let X=$.audio?.input?{format:RQ($.audio.input.format),noiseReduction:$.audio.input.noiseReduction??null,transcription:$.audio.input.transcription,turnDetection:$.audio.input.turnDetection}:void 0,Q=$.audio?.output?.voice??$.voice,W=$.audio?.output||typeof Q!=="undefined"?{format:RQ($.audio?.output?.format),voice:Q,speed:$.audio?.output?.speed}:void 0;return{model:$.model,instructions:$.instructions,toolChoice:$.toolChoice,tools:$.tools,tracing:$.tracing,providerData:$.providerData,prompt:$.prompt,outputModalities:$.outputModalities,audio:X||W?{input:X,output:W}:void 0}}return{model:$.model,instructions:$.instructions,toolChoice:$.toolChoice,tools:$.tools,tracing:$.tracing,providerData:$.providerData,prompt:$.prompt,outputModalities:$.modalities,audio:{input:{format:RQ($.inputAudioFormat),noiseReduction:$.inputAudioNoiseReduction??null,transcription:$.inputAudioTranscription,turnDetection:$.turnDetection},output:{format:RQ($.outputAudioFormat),voice:$.voice,speed:$.speed}}}}function RQ($){if(!$)return;if(typeof $==="object")return $;let X=String($);if(X==="pcm16")return{type:"audio/pcm",rate:24000};if(X==="g711_ulaw")return{type:"audio/pcmu"};if(X==="g711_alaw")return{type:"audio/pcma"};return{type:"audio/pcm",rate:24000}}var a0$=K.object({itemId:K.string()}),tq=K.discriminatedUnion("role",[K.object({itemId:K.string(),previousItemId:K.string().nullable().optional(),type:K.literal("message"),role:K.literal("system"),content:K.array(K.object({type:K.literal("input_text"),text:K.string()}))}),K.object({itemId:K.string(),previousItemId:K.string().nullable().optional(),type:K.literal("message"),role:K.literal("user"),status:K.enum(["in_progress","completed"]),content:K.array(K.object({type:K.literal("input_text"),text:K.string()}).or(K.object({type:K.literal("input_audio"),audio:K.string().nullable().optional(),transcript:K.string().nullable()})))}),K.object({itemId:K.string(),previousItemId:K.string().nullable().optional(),type:K.literal("message"),role:K.literal("assistant"),status:K.enum(["in_progress","completed","incomplete"]),content:K.array(K.object({type:K.literal("output_text"),text:K.string()}).or(K.object({type:K.literal("output_audio"),audio:K.string().nullable().optional(),transcript:K.string().nullable().optional()})))})]),sq=K.object({itemId:K.string(),previousItemId:K.string().nullable().optional(),type:K.literal("function_call"),status:K.enum(["in_progress","completed","incomplete"]),arguments:K.string(),name:K.string(),output:K.string().nullable()}),eq=K.object({itemId:K.string(),previousItemId:K.string().nullable().optional(),type:K.enum(["mcp_call","mcp_tool_call"]),status:K.enum(["in_progress","completed","incomplete"]),arguments:K.string(),name:K.string(),output:K.string().nullable()}),aM=K.object({itemId:K.string(),type:K.literal("mcp_approval_request"),serverLabel:K.string(),name:K.string(),arguments:K.record(K.string(),K.any()),approved:K.boolean().optional().nullable()});var px=I4("openai-agents:realtime"),u$=px;var tM=K.object({id:K.string().optional().nullable(),conversation_id:K.string().optional().nullable(),max_output_tokens:K.number().or(K.literal("inf")).optional().nullable(),metadata:K.record(K.string(),K.any()).optional().nullable(),output_modalities:K.array(K.string()).optional().nullable(),object:K.literal("realtime.response").optional().nullable(),output:K.array(K.any()).optional().nullable(),audio:K.object({output:K.object({format:K.any().optional().nullable(),voice:K.string().optional().nullable()}).optional().nullable()}).optional().nullable(),status:K.enum(["completed","incomplete","failed","cancelled","in_progress"]).optional().nullable(),status_details:K.record(K.string(),K.any()).optional().nullable(),usage:K.object({input_tokens:K.number().optional(),input_token_details:K.record(K.string(),K.any()).optional().nullable(),output_tokens:K.number().optional(),output_token_details:K.record(K.string(),K.any()).optional().nullable()}).optional().nullable()}),nx=K.object({id:K.string().optional(),audio:K.string().nullable().optional(),text:K.string().nullable().optional(),transcript:K.string().nullable().optional(),type:K.union([K.literal("input_text"),K.literal("input_audio"),K.literal("item_reference"),K.literal("output_text"),K.literal("output_audio")])}),A9=K.object({id:K.string().optional(),arguments:K.string().optional(),call_id:K.string().optional(),content:K.array(nx).optional(),name:K.string().optional(),output:K.string().nullable().optional(),role:K.enum(["user","assistant","system"]).optional(),status:K.enum(["completed","incomplete","in_progress"]).optional(),type:K.enum(["message","function_call","function_call_output","mcp_list_tools","mcp_tool_call","mcp_call","mcp_approval_request","mcp_approval_response"]).optional(),approval_request_id:K.string().nullable().optional(),approve:K.boolean().nullable().optional(),reason:K.string().nullable().optional(),server_label:K.string().optional(),error:K.any().nullable().optional(),tools:K.array(K.object({name:K.string(),description:K.string(),input_schema:K.record(K.string(),K.any()).optional()}).passthrough()).optional()}).passthrough(),rx=K.object({type:K.literal("conversation.created"),event_id:K.string(),conversation:K.object({id:K.string().optional(),object:K.literal("realtime.conversation").optional()})}),ox=K.object({type:K.literal("conversation.item.added"),event_id:K.string(),item:A9,previous_item_id:K.string().nullable().optional()}),ax=K.object({type:K.literal("conversation.item.done"),event_id:K.string(),item:A9,previous_item_id:K.string().nullable().optional()}),tx=K.object({type:K.literal("conversation.item.deleted"),event_id:K.string(),item_id:K.string()}),sx=K.object({type:K.literal("conversation.item.input_audio_transcription.completed"),event_id:K.string(),item_id:K.string(),content_index:K.number(),transcript:K.string(),logprobs:K.array(K.any()).nullable().optional(),usage:K.object({type:K.literal("tokens"),total_tokens:K.number(),input_tokens:K.number(),input_token_details:K.object({text_tokens:K.number(),audio_tokens:K.number()}),output_tokens:K.number()}).optional()}),ex=K.object({type:K.literal("conversation.item.input_audio_transcription.delta"),event_id:K.string(),item_id:K.string(),content_index:K.number().optional(),delta:K.string().optional(),logprobs:K.array(K.any()).nullable().optional()}),$y=K.object({type:K.literal("conversation.item.input_audio_transcription.failed"),event_id:K.string(),item_id:K.string(),content_index:K.number(),error:K.object({code:K.string().optional(),message:K.string().optional(),param:K.string().optional(),type:K.string().optional()})}),Xy=K.object({type:K.literal("conversation.item.retrieved"),event_id:K.string(),item:A9}),Qy=K.object({type:K.literal("conversation.item.truncated"),event_id:K.string(),item_id:K.string(),audio_end_ms:K.number(),content_index:K.number()}),Yy=K.object({type:K.literal("conversation.item.create"),item:A9,event_id:K.string().optional(),previous_item_id:K.string().nullable().optional()}),Wy=K.object({type:K.literal("conversation.item.delete"),item_id:K.string(),event_id:K.string().optional()}),Jy=K.object({type:K.literal("conversation.item.retrieve"),item_id:K.string(),event_id:K.string().optional()}),Uy=K.object({type:K.literal("conversation.item.truncate"),item_id:K.string(),audio_end_ms:K.number(),content_index:K.number(),event_id:K.string().optional()}),Gy=K.object({type:K.literal("error"),event_id:K.string().optional(),error:K.any().optional()}),Ky=K.object({type:K.literal("input_audio_buffer.cleared"),event_id:K.string()}),Hy=K.object({type:K.literal("input_audio_buffer.append"),audio:K.string(),event_id:K.string().optional()}),qy=K.object({type:K.literal("input_audio_buffer.clear"),event_id:K.string().optional()}),Vy=K.object({type:K.literal("input_audio_buffer.commit"),event_id:K.string().optional()}),By=K.object({type:K.literal("input_audio_buffer.committed"),event_id:K.string(),item_id:K.string(),previous_item_id:K.string().nullable().optional()}),Dy=K.object({type:K.literal("input_audio_buffer.speech_started"),event_id:K.string(),item_id:K.string(),audio_start_ms:K.number()}),_y=K.object({type:K.literal("input_audio_buffer.speech_stopped"),event_id:K.string(),item_id:K.string(),audio_end_ms:K.number()}),wy=K.object({type:K.literal("output_audio_buffer.started"),event_id:K.string()}).passthrough(),Ny=K.object({type:K.literal("output_audio_buffer.stopped"),event_id:K.string()}).passthrough(),Ly=K.object({type:K.literal("output_audio_buffer.cleared"),event_id:K.string()}),Fy=K.object({type:K.literal("rate_limits.updated"),event_id:K.string(),rate_limits:K.array(K.object({limit:K.number().optional(),name:K.enum(["requests","tokens"]).optional(),remaining:K.number().optional(),reset_seconds:K.number().optional()}))}),Oy=K.object({type:K.literal("response.output_audio.delta"),event_id:K.string(),item_id:K.string(),content_index:K.number(),delta:K.string(),output_index:K.number(),response_id:K.string()}),My=K.object({type:K.literal("response.output_audio.done"),event_id:K.string(),item_id:K.string(),content_index:K.number(),output_index:K.number(),response_id:K.string()}),zy=K.object({type:K.literal("response.output_audio_transcript.delta"),event_id:K.string(),item_id:K.string(),content_index:K.number(),delta:K.string(),output_index:K.number(),response_id:K.string()}),Zy=K.object({type:K.literal("response.output_audio_transcript.done"),event_id:K.string(),item_id:K.string(),content_index:K.number(),transcript:K.string(),output_index:K.number(),response_id:K.string()}),Py=K.object({type:K.literal("response.content_part.added"),event_id:K.string(),item_id:K.string(),content_index:K.number(),output_index:K.number(),response_id:K.string(),part:K.object({audio:K.string().optional(),text:K.string().optional(),transcript:K.string().optional(),type:K.enum(["text","audio"]).optional()})}),Ay=K.object({type:K.literal("response.content_part.done"),event_id:K.string(),item_id:K.string(),content_index:K.number(),output_index:K.number(),response_id:K.string(),part:K.object({audio:K.string().optional(),text:K.string().optional(),transcript:K.string().optional(),type:K.enum(["text","audio"]).optional()})}),Ey=K.object({type:K.literal("response.created"),event_id:K.string(),response:tM}),$V=K.object({type:K.literal("response.done"),event_id:K.string(),response:tM}),jy=K.object({type:K.literal("response.function_call_arguments.delta"),event_id:K.string(),item_id:K.string(),call_id:K.string(),delta:K.string(),output_index:K.number(),response_id:K.string()}),ky=K.object({type:K.literal("response.function_call_arguments.done"),event_id:K.string(),item_id:K.string(),call_id:K.string(),arguments:K.string(),output_index:K.number(),response_id:K.string()}),Iy=K.object({type:K.literal("response.output_item.added"),event_id:K.string(),item:A9,output_index:K.number(),response_id:K.string()}),Ry=K.object({type:K.literal("response.output_item.done"),event_id:K.string(),item:A9,output_index:K.number(),response_id:K.string()}),by=K.object({type:K.literal("response.output_text.delta"),event_id:K.string(),item_id:K.string(),content_index:K.number(),delta:K.string(),output_index:K.number(),response_id:K.string()}),vy=K.object({type:K.literal("response.output_text.done"),event_id:K.string(),item_id:K.string(),content_index:K.number(),text:K.string(),output_index:K.number(),response_id:K.string()}),Sy=K.object({type:K.literal("session.created"),event_id:K.string(),session:K.any()}),Ty=K.object({type:K.literal("session.updated"),event_id:K.string(),session:K.any()}),Cy=K.object({type:K.literal("response.cancel"),event_id:K.string().optional(),response_id:K.string().optional()}),xy=K.object({type:K.literal("response.create"),event_id:K.string().optional(),response:K.any().optional()}),yy=K.object({type:K.literal("session.update"),event_id:K.string().optional(),session:K.any()}),gy=K.object({type:K.literal("mcp_list_tools.in_progress"),event_id:K.string().optional(),item_id:K.string().optional()}),fy=K.object({type:K.literal("mcp_list_tools.completed"),event_id:K.string().optional(),item_id:K.string().optional()}),hy=K.object({type:K.literal("response.mcp_call_arguments.delta"),event_id:K.string(),response_id:K.string(),item_id:K.string(),output_index:K.number(),delta:K.string(),obfuscation:K.string()}),my=K.object({type:K.literal("response.mcp_call_arguments.done"),event_id:K.string(),response_id:K.string(),item_id:K.string(),output_index:K.number(),arguments:K.string()}),uy=K.object({type:K.literal("response.mcp_call.in_progress"),event_id:K.string(),output_index:K.number(),item_id:K.string()}),cy=K.object({type:K.literal("response.mcp_call.completed"),event_id:K.string(),output_index:K.number(),item_id:K.string()}),dy=K.object({type:K.literal("mcp_list_tools.failed"),event_id:K.string().optional(),item_id:K.string().optional()}),ly=K.object({type:K.string(),event_id:K.string().optional().nullable()}).passthrough(),iy=K.discriminatedUnion("type",[rx,ox,ax,tx,sx,ex,$y,Xy,Qy,Gy,Ky,By,Dy,_y,wy,Ny,Ly,Fy,Oy,My,zy,Zy,Py,Ay,Ey,$V,jy,ky,Iy,Ry,by,vy,Sy,Ty,gy,fy,dy,hy,my,uy,cy]),X9$=K.discriminatedUnion("type",[Yy,Wy,Jy,Uy,Hy,qy,Vy,Cy,xy,yy]);function E9($){let X=JSON.parse($.data.toString()),Q=iy.safeParse(X);if(!Q.success){let W=ly.safeParse(X);if(W.success)return{data:W.data,isGeneric:!0};return{data:null,isGeneric:!0}}return{data:Q.data,isGeneric:!1}}var sM="gpt-realtime",s6={outputModalities:["audio"],audio:{input:{format:{type:"audio/pcm",rate:24000},transcription:{model:"gpt-4o-mini-transcribe"},turnDetection:{type:"semantic_vad"},noiseReduction:null},output:{format:{type:"audio/pcm",rate:24000},speed:1}}};class w0 extends Z9{#$;#X;#J=null;#Q=null;eventEmitter=new R4;constructor($={}){super();this.#$=$.model??sM,this.#X=$.apiKey}get currentModel(){return this.#$}set currentModel($){this.#$=$}_afterAudioDoneEvent(){}get _rawSessionConfig(){return this.#Q??null}async _getApiKey($){let X=$.apiKey??this.#X;if(typeof X==="function")return await X();return X}_onMessage($){let{data:X,isGeneric:Q}=E9($);if(X===null)return;if(this.emit("*",X),Q)return;if(X.type==="error")this.emit("error",{type:"error",error:X});else this.emit(X.type,X);if(X.type==="response.created"){this.emit("turn_started",{type:"response_started",providerData:{...X}});return}if(X.type==="session.updated")this.#Q=X.session;if(X.type==="response.done"){let W=$V.safeParse(X);if(!W.success){u$.error("Error parsing response done event",W.error);return}let Y=W.data.response.usage?.input_tokens??0,J=W.data.response.usage?.output_tokens??0,U=Y+J,G=new t6({inputTokens:Y,inputTokensDetails:W.data.response.usage?.input_token_details??{},outputTokens:J,outputTokensDetails:W.data.response.usage?.output_token_details??{},totalTokens:U});this.emit("usage_update",G),this.emit("turn_done",{type:"response_done",response:{id:W.data.response.id??"",output:W.data.response.output??[],usage:{inputTokens:Y,inputTokensDetails:W.data.response.usage?.input_token_details??{},outputTokens:J,outputTokensDetails:W.data.response.usage?.output_token_details??{},totalTokens:U}}});return}if(X.type==="response.output_audio.done"){this.emit("audio_done"),this._afterAudioDoneEvent();return}if(X.type==="conversation.item.deleted"){this.emit("item_deleted",{itemId:X.item_id});return}if(X.type==="conversation.item.input_audio_transcription.completed"||X.type==="conversation.item.truncated"){this.sendEvent({type:"conversation.item.retrieve",item_id:X.item_id});return}if(X.type==="conversation.item.input_audio_transcription.delta"||X.type==="response.output_text.delta"||X.type==="response.output_audio_transcript.delta"||X.type==="response.function_call_arguments.delta"){if(X.type==="response.output_audio_transcript.delta")this.emit("audio_transcript_delta",{type:"transcript_delta",delta:X.delta,itemId:X.item_id,responseId:X.response_id});return}if(X.type==="conversation.item.added"||X.type==="conversation.item.done"||X.type==="conversation.item.retrieved"){if(X.item.type==="mcp_list_tools"&&X.type==="conversation.item.done"){let W=X.item.server_label??"",Y=X.item.tools??[];try{this.emit("mcp_tools_listed",{serverLabel:W,tools:Y})}catch(J){u$.error("Error emitting mcp_tools_listed",J,X.item)}return}if(X.item.type==="message"){let W=X.type==="conversation.item.added"||X.type==="conversation.item.done"?X.previous_item_id:null,Y=tq.parse({itemId:X.item.id,previousItemId:W,type:X.item.type,role:X.item.role,content:X.item.content,status:X.item.status});this.emit("item_update",Y);return}if(X.item.type==="mcp_approval_request"&&X.type==="conversation.item.done"){let W=X.item,Y=aM.parse({itemId:W.id,type:W.type,serverLabel:W.server_label,name:W.name,arguments:JSON.parse(W.arguments||"{}"),approved:W.approved});this.emit("item_update",Y),this.emit("mcp_approval_request",Y);return}if(X.item.type==="mcp_tool_call"||X.item.type==="mcp_call"){let W=X.type==="conversation.item.done"?"completed":"in_progress",Y=eq.parse({itemId:X.item.id,type:X.item.type,status:W,arguments:X.item.arguments,name:X.item.name,output:X.item.output});if(this.emit("item_update",Y),X.type==="conversation.item.done")this.emit("mcp_tool_call_completed",Y);return}}if(X.type==="response.mcp_call.in_progress"){let W=X;this.sendEvent({type:"conversation.item.retrieve",item_id:W.item_id});return}if(X.type==="mcp_list_tools.in_progress"){let W=X;if(W.item_id)this.sendEvent({type:"conversation.item.retrieve",item_id:W.item_id});return}if(X.type==="response.output_item.done"||X.type==="response.output_item.added"){let W=X.item;if(W.type==="function_call"&&W.status==="completed"){let Y=sq.parse({itemId:W.id,type:W.type,status:"in_progress",arguments:W.arguments,name:W.name,output:null});this.emit("item_update",Y),this.emit("function_call",{id:W.id,type:"function_call",callId:W.call_id??"",arguments:W.arguments??"",name:W.name??""});return}if(W.type==="mcp_tool_call"||W.type==="mcp_call"){let Y=eq.parse({itemId:W.id,type:W.type,status:X.type==="response.output_item.done"?"completed":"in_progress",arguments:W.arguments,name:W.name,output:W.output});this.emit("item_update",Y);return}if(W.type==="message"){let Y=tq.parse({itemId:X.item.id,type:X.item.type,role:X.item.role,content:X.item.content,status:X.type==="response.output_item.done"?W.status??"completed":W.status??"in_progress"});this.emit("item_update",Y);return}}}_onError($){this.emit("error",{type:"error",error:$})}_onOpen(){this.emit("connected")}_onClose(){this.emit("disconnected")}sendMessage($,X,{triggerResponse:Q=!0}={}){let W=typeof $==="string"?[{type:"input_text",text:$}]:$.content.map((Y)=>{if(Y.type==="input_image")return{type:"input_image",image_url:Y.image,...Y.providerData??{}};return Y});if(this.sendEvent({type:"conversation.item.create",item:{type:"message",role:"user",content:W},...X}),Q)this.sendEvent({type:"response.create"})}addImage($,{triggerResponse:X=!0}={}){this.sendMessage({type:"message",role:"user",content:[{type:"input_image",image:$}]},{},{triggerResponse:X})}_getMergedSessionConfig($){let X=oM($),Q=X.audio?.input?.noiseReduction,W=X.audio?.input?.transcription,Y=w0.buildTurnDetectionConfig(X.audio?.input?.turnDetection),J={type:"realtime",instructions:X.instructions,model:X.model??this.#$,output_modalities:X.outputModalities??s6.outputModalities,audio:{input:{format:X.audio?.input?.format??s6.audio?.input?.format,noise_reduction:Q===void 0?s6.audio?.input?.noiseReduction:Q,transcription:W===void 0?s6.audio?.input?.transcription:W,turn_detection:Y===void 0?s6.audio?.input?.turnDetection:Y},output:{format:X.audio?.output?.format??s6.audio?.output?.format,voice:X.audio?.output?.voice??s6.audio?.output?.voice,speed:X.audio?.output?.speed??s6.audio?.output?.speed}},tool_choice:X.toolChoice??s6.toolChoice,...X.providerData??{}};if(X.prompt)J.prompt={id:X.prompt.promptId,version:X.prompt.version,variables:X.prompt.variables};if(X.tools&&X.tools.length>0)J.tools=X.tools.map((U)=>{let G=(H)=>Object.fromEntries(Object.entries(H).filter(([,q])=>typeof q!=="undefined"));if(U.type==="mcp")return G({type:"mcp",server_label:U.server_label,server_url:U.server_url,server_description:U.server_description,connector_id:U.connector_id,authorization:U.authorization,headers:U.headers,allowed_tools:U.allowed_tools,require_approval:U.require_approval});return G({type:U.type,name:U.name,description:U.description,parameters:U.parameters})});return J}buildSessionPayload($){return this._getMergedSessionConfig($)}static buildTurnDetectionConfig($){if(typeof $==="undefined")return;if($===null)return null;let{type:X,createResponse:Q,create_response:W,eagerness:Y,interruptResponse:J,interrupt_response:U,prefixPaddingMs:G,prefix_padding_ms:H,silenceDurationMs:q,silence_duration_ms:V,threshold:B,idleTimeoutMs:D,idle_timeout_ms:_,modelVersion:w,model_version:N,...L}=$,O={type:X,create_response:Q??W,eagerness:Y,interrupt_response:J??U,prefix_padding_ms:G??H,silence_duration_ms:q??V,idle_timeout_ms:D??_,model_version:w??N,threshold:B,...L};return Object.keys(O).forEach((Z)=>{if(O[Z]===void 0)delete O[Z]}),Object.keys(O).length>0?O:void 0}set _tracingConfig($){this.#J=$}_updateTracingConfig($){if(typeof this.#J==="undefined")this.#J=null;if($==="auto"){this.sendEvent({type:"session.update",session:{type:"realtime",tracing:"auto"}});return}if(this.#J!==null&&typeof this.#J!=="string"&&typeof $!=="string"){u$.warn("Tracing config is already set, skipping setting it again. This likely happens when you already set a tracing config on session creation.");return}if($===null){u$.debug("Disabling tracing for this session. It cannot be turned on for this session from this point on."),this.sendEvent({type:"session.update",session:{type:"realtime",tracing:null}});return}if(this.#J===null||typeof this.#J==="string"){this.sendEvent({type:"session.update",session:{type:"realtime",tracing:$}});return}if($?.group_id!==this.#J?.group_id||$?.metadata!==this.#J?.metadata||$?.workflow_name!==this.#J?.workflow_name){u$.warn("Mismatch in tracing config. Ignoring the new tracing config. This likely happens when you already set a tracing config on session creation. Current tracing config: %s, new tracing config: %s",JSON.stringify(this.#J),JSON.stringify($));return}this.sendEvent({type:"session.update",session:{type:"realtime",tracing:$}})}updateSessionConfig($){let X=this.buildSessionPayload($);this.sendEvent({type:"session.update",session:X})}sendFunctionCallOutput($,X,Q=!0){this.sendEvent({type:"conversation.item.create",item:{type:"function_call_output",output:X,call_id:$.callId}});try{let W=sq.parse({itemId:$.id,previousItemId:$.previousItemId,type:"function_call",status:"completed",arguments:$.arguments,name:$.name,output:X});this.emit("item_update",W)}catch(W){u$.error("Error parsing tool call item",W,$)}if(Q)this.sendEvent({type:"response.create"})}sendAudio($,{commit:X=!1}={}){if(this.sendEvent({type:"input_audio_buffer.append",audio:nq($)}),X)this.sendEvent({type:"input_audio_buffer.commit"})}resetHistory($,X){let{removals:Q,additions:W,updates:Y}=cM($,X),J=new Set(Q.map((G)=>G.itemId));for(let G of Y)J.add(G.itemId);if(J.size>0)for(let G of J)this.sendEvent({type:"conversation.item.delete",item_id:G});let U=[...W,...Y];for(let G of U)if(G.type==="message"){let H={type:"message",role:G.role,content:G.content,id:G.itemId};if(G.role!=="system"&&G.status)H.status=G.status;this.sendEvent({type:"conversation.item.create",item:H})}else if(G.type==="function_call")u$.warn("Function calls cannot be manually added or updated at the moment. Ignoring.")}sendMcpResponse($,X){this.sendEvent({type:"conversation.item.create",previous_item_id:$.itemId,item:{type:"mcp_approval_response",approval_request_id:$.itemId,approve:X}})}}class j9 extends w0{options;#$;#X={status:"disconnected",peerConnection:void 0,dataChannel:void 0,callId:void 0};#J;#Q=!1;#U=!1;#W;#G=0;constructor($={}){if(typeof RTCPeerConnection==="undefined")throw new Error("WebRTC is not supported in this environment");super($);this.options=$,this.#$=$.baseUrl??"https://api.openai.com/v1/realtime/calls",this.#J=$.useInsecureApiKey??!1}get callId(){return this.#X.callId}get status(){return this.#X.status}get connectionState(){return this.#X}get muted(){return this.#U}async connect($){if(this.#X.status==="connected")return;if(this.#X.status==="connecting"){if(this.#W)return this.#W;u$.warn("Realtime connection already in progress but no promise found");return}let X=$.model??this.currentModel;this.currentModel=X;let Q=$.url??this.#$,W=await this._getApiKey($),Y=typeof W==="string"&&W.startsWith("ek_");if(B5()&&!this.#J&&!Y)throw new p("Using the WebRTC connection in a browser environment requires an ephemeral client key. If you need to use a regular API key, use the WebSocket transport or set the `useInsecureApiKey` option to true.");let J=++this.#G;return this.#W=new Promise(async(U,G)=>{try{let H={...$.initialSessionConfig||{},model:this.currentModel},q=new URL(Q),V=new RTCPeerConnection,B=V.createDataChannel("oai-events"),D=void 0,_=(F)=>{F.onconnectionstatechange=()=>{switch(F.connectionState){case"disconnected":case"failed":case"closed":this.close();break}}};_(V),this.#X={status:"connecting",peerConnection:V,dataChannel:B,callId:D},this.emit("connection_change",this.#X.status),B.addEventListener("open",()=>{this.#X={status:"connecting",peerConnection:V,dataChannel:B,callId:D};let F=!1,z,P=()=>{if(F)return;if(F=!0,z!==void 0)clearTimeout(z);if(B.removeEventListener("message",j),B.removeEventListener("close",I),this.#X.status!=="connecting"||this.#X.dataChannel!==B||B.readyState!=="open"){if(this.#X.dataChannel===B)this.close();G(new Error("Connection closed before session config was acknowledged"));return}this.#X={status:"connected",peerConnection:V,dataChannel:B,callId:D},this.emit("connection_change",this.#X.status),this._onOpen(),U()},j=(k)=>{if(JSON.parse(k.data).type==="session.updated")P()},I=()=>{P()};z=setTimeout(()=>{if(!F)u$.warn("Timed out waiting for session.updated ack — resolving connect() anyway"),P()},5000),B.addEventListener("message",j),B.addEventListener("close",I),B.addEventListener("message",(k)=>{this._onMessage(k);let{data:m,isGeneric:$$}=E9(k);if(!m||$$)return;if(m.type==="response.created")this.#Q=!0;else if(m.type==="response.done")this.#Q=!1;if(m.type==="session.created"){this._tracingConfig=m.session.tracing;let U$=typeof H.tracing==="undefined"?"auto":H.tracing;this._updateTracingConfig(U$)}}),this.updateSessionConfig(H)}),B.addEventListener("error",(F)=>{this.close(),this._onError(F),G(F)});let w=this.options.audioElement??document.createElement("audio");w.autoplay=!0,V.ontrack=(F)=>{w.srcObject=F.streams[0]};let N=this.options.mediaStream??await navigator.mediaDevices.getUserMedia({audio:!0});if(V.addTrack(N.getAudioTracks()[0]),this.options.changePeerConnection){let F=V;if(V=await this.options.changePeerConnection(V),F!==V)F.onconnectionstatechange=null;_(V),this.#X={...this.#X,peerConnection:V}}let L=await V.createOffer();if(await V.setLocalDescription(L),!L.sdp)throw new Error("Failed to create offer");let O=await fetch(q,{method:"POST",body:L.sdp,headers:{"Content-Type":"application/sdp",Authorization:`Bearer ${W}`,"X-OpenAI-Agents-SDK":kQ["X-OpenAI-Agents-SDK"]}});D=O.headers?.get("Location")?.split("/").pop(),this.#X={...this.#X,callId:D};let Z={type:"answer",sdp:await O.text()};await V.setRemoteDescription(Z)}catch(H){this.close(),this._onError(H),G(H)}}).finally(()=>{if(this.#G===J)this.#W=void 0}),this.#W}sendEvent($){if(!this.#X.dataChannel||this.#X.dataChannel.readyState!=="open")throw new Error("WebRTC data channel is not connected. Make sure you call `connect()` before sending events.");this.#X.dataChannel.send(JSON.stringify($))}mute($){if(this.#U=$,this.#X.peerConnection)this.#X.peerConnection.getSenders().forEach((Q)=>{if(Q.track)Q.track.enabled=!$})}_afterAudioDoneEvent(){this.#Q=!1}close(){if(this.#X.dataChannel)this.#X.dataChannel.close();if(this.#X.peerConnection){let $=this.#X.peerConnection;$.onconnectionstatechange=null,$.getSenders().forEach((X)=>{X.track?.stop()}),$.close()}if(this.#X.status!=="disconnected")this.#X={status:"disconnected",peerConnection:void 0,dataChannel:void 0,callId:void 0},this.emit("connection_change",this.#X.status),this._onClose()}interrupt(){if(this.#Q)this.sendEvent({type:"response.cancel"}),this.#Q=!1;this.sendEvent({type:"output_audio_buffer.clear"})}}var eM=globalThis.WebSocket;function $z(){return!0}var Xz=!0;class f5 extends w0{#$;#X;#J;#Q={status:"disconnected",websocket:void 0};#U;#W;#G;_firstAudioTimestamp;_audioLengthMs=0;#Y=!1;#K;#q;#H(){this.#W=void 0,this._firstAudioTimestamp=void 0,this._audioLengthMs=0,this.#G=void 0}constructor($={}){super($);this.#X=$.url,this.#J=$.url,this.#U=$.useInsecureApiKey??!1,this.#K=$.createWebSocket,this.#q=$.skipOpenEventListeners??!1}getCommonRequestHeaders(){return kQ}get status(){return this.#Q.status}get connectionState(){return this.#Q}get muted(){return null}get currentItemId(){return this.#W}_onAudio($){this.emit("audio",$)}_afterAudioDoneEvent(){this.#H()}async#B($,X,Q){if(this.#Q.websocket){$();return}if(!this.#$)throw new p("API key is not set. Please call `connect()` with an API key first.");if($z()&&!this.#$.startsWith("ek_")&&!this.#U)throw new p("Using the WebSocket connection in a browser environment requires an ephemeral client key. If you have to use a regular API key, set the `useInsecureApiKey` option to true.");let W=null;if(this.#K)W=await this.#K({url:this.#X,apiKey:this.#$});else{let J=Xz?["realtime","openai-insecure-api-key."+this.#$,lM]:{headers:{Authorization:`Bearer ${this.#$}`,...this.getCommonRequestHeaders()}};W=new eM(this.#X,J)}this.#Q={status:"connecting",websocket:W},this.emit("connection_change",this.#Q.status);let Y=()=>{this.#Q={status:"connected",websocket:W},this.emit("connection_change",this.#Q.status),this._onOpen(),$()};if(this.#q===!0)Y();else W.addEventListener("open",Y);W.addEventListener("error",(J)=>{this._onError(J),this.#Q={status:"disconnected",websocket:void 0},this.emit("connection_change",this.#Q.status),X(J)}),W.addEventListener("message",(J)=>{this._onMessage(J);let{data:U,isGeneric:G}=E9(J);if(!U||G)return;if(U.type==="response.output_audio.delta"){if(this.#G=U.content_index,this.#W=U.item_id,this._firstAudioTimestamp===void 0)this._firstAudioTimestamp=Date.now(),this._audioLengthMs=0;let H=pq(U.delta),q=this._rawSessionConfig?.audio?.output?.format;if(q&&typeof q==="object"){let B=q.type;if(B==="audio/pcmu"||B==="audio/pcma")this._audioLengthMs+=H.byteLength/8;else if(B==="audio/pcm"){let D=q.rate??24000;this._audioLengthMs+=H.byteLength/2/D*1000}else this._audioLengthMs+=H.byteLength/24/2}else if(typeof q==="string")if(q.startsWith("g711_"))this._audioLengthMs+=H.byteLength/8;else this._audioLengthMs+=H.byteLength/24/2;else this._audioLengthMs+=H.byteLength/24/2;let V={type:"audio",data:H,responseId:U.response_id};this._onAudio(V)}else if(U.type==="input_audio_buffer.speech_started"){let H=this._rawSessionConfig?.audio?.input?.turn_detection?.interrupt_response??!1;this.interrupt(!H)}else if(U.type==="response.created")this.#Y=!0;else if(U.type==="response.done")this.#Y=!1;else if(U.type==="session.created"){this._tracingConfig=U.session.tracing;let H=typeof Q.tracing==="undefined"?"auto":Q.tracing;this._updateTracingConfig(H)}}),W.addEventListener("close",()=>{this.#Q={status:"disconnected",websocket:void 0},this.emit("connection_change",this.#Q.status),this._onClose()})}async connect($){let X=$.model??this.currentModel;this.currentModel=X,this.#$=await this._getApiKey($);let Q=$.callId,W;if($.url)W=$.url,this.#J=$.url;else if(Q)W=`wss://api.openai.com/v1/realtime?call_id=${Q}`;else if(this.#J)W=this.#J;else W=`wss://api.openai.com/v1/realtime?model=${this.currentModel}`;this.#X=W;let Y={...$.initialSessionConfig||{},model:this.currentModel};await new Promise((J,U)=>{this.#B(J,U,Y).catch(U)}),await this.updateSessionConfig(Y)}sendEvent($){if(!this.#Q.websocket)throw new Error("WebSocket is not connected. Make sure you call `connect()` before sending events.");this.#Q.websocket.send(JSON.stringify($))}close(){this.#Q.websocket?.close(),this.#W=void 0,this._firstAudioTimestamp=void 0,this._audioLengthMs=0,this.#G=void 0}mute($){throw new Error("Mute is not supported for the WebSocket transport. You have to mute the audio input yourself.")}sendAudio($,X={}){if(this.#Q.status==="connected")super.sendAudio($,X)}_cancelResponse(){if(this.#Y)this.sendEvent({type:"response.cancel"}),this.#Y=!1}_interrupt($,X=!0){if($<0)return;if(X)this._cancelResponse();let Q=this._audioLengthMs??Number.POSITIVE_INFINITY,W=Math.max(0,Math.floor(Math.min($,Q)));this.emit("audio_interrupted"),this.sendEvent({type:"conversation.item.truncate",item_id:this.#W,content_index:this.#G,audio_end_ms:W})}interrupt($=!0){if(!this.#W||typeof this._firstAudioTimestamp!=="number")return;let X=Date.now()-this._firstAudioTimestamp;if(X>=0)this._interrupt(X,$);this.#H()}}var py=Symbol("backgroundResult");function XV($){return typeof $==="object"&&$!==null&&py in $}function Qz($){return $.type==="function"||$.type==="hosted_tool"&&$.name==="hosted_mcp"}function Yz($){if($.type==="function")return $;if($.type==="hosted_tool"&&$.name==="hosted_mcp"){let X=$.providerData.server_url&&$.providerData.server_url.length>0?$.providerData.server_url:void 0;return{type:"mcp",server_label:$.providerData.server_label,server_url:X,headers:$.providerData.headers,allowed_tools:$.providerData.allowed_tools,require_approval:$.providerData.require_approval}}throw new p(`Invalid tool type: ${$}`)}function ny(){return JSON.parse(JSON.stringify(s6))}var QV="Tool execution was not approved.";function ry($){return $ instanceof Error?$.message:String($)}class k9 extends R4{initialAgent;options;#$;#X;#J;#Q;#U=[];#W;#G={};#Y=[];#K;#q={};#H=!1;#B=new Map;#V=[];#_=ny();#w=!0;#D=!1;constructor($,X={}){super();if(this.initialAgent=$,this.options=X,typeof X.transport==="undefined"&&dM()||X.transport==="webrtc")this.#$=new j9;else if(X.transport==="websocket"||typeof X.transport==="undefined")this.#$=new f5;else this.#$=X.transport;this.#X=$,this.#Q=new i$({...X.context??{},history:this.#Y}),this.#U=(X.outputGuardrails??[]).map(nM),this.#W=pM(X.outputGuardrailSettings??{}),this.#K=X.historyStoreAudio??!1,this.#w=X.automaticallyTriggerResponseForMcpToolCalls??!0}get transport(){return this.#$}get currentAgent(){return this.#X}get usage(){return this.#Q.usage}get context(){return this.#Q}get muted(){return this.#$.muted}get history(){return this.#Y}get availableMcpTools(){return this.#V}async#N($){this.#X=$;let X=await this.#X.getEnabledHandoffs(this.#Q),Q=X.map((U)=>U.getHandoffAsFunctionTool()),W=(await this.#X.getAllTools(this.#Q)).filter(Qz).map(Yz),Y=typeof this.#X.tools!=="undefined"||typeof this.#X.mcpServers!=="undefined",J=X.length>0;this.#J=Y||J?[...W,...Q]:void 0,this.#M()}async#L($={}){let X=$??{},Q=this.options.config??{},W=await this.#X.getSystemPrompt(this.#Q),Y=(B)=>{return B.audio?.output?.voice},J=this.options.tracingDisabled?null:this.options.workflowName?{workflow_name:this.options.workflowName}:"auto";if(J!==null&&J!=="auto"){if(this.options.groupId)J.group_id=this.options.groupId;if(this.options.traceMetadata)J.metadata=this.options.traceMetadata}else if(this.options.groupId||this.options.traceMetadata)u$.warn("In order to set traceMetadata or a groupId you need to specify a workflowName.");let U=Y(X)??Y(Q),G=X.voice??Q.voice,H=typeof U!=="undefined"?U:typeof G!=="undefined"?G:this.#X.voice,V={...{...this.#_??{},...Q,...X},instructions:W,voice:H,model:this.options.model,tools:this.#J,tracing:J,prompt:typeof this.#X.prompt==="function"?await this.#X.prompt(this.#Q,this.#X):this.#X.prompt};return this.#_=V,V}async getInitialSessionConfig($={}){return await this.#N(this.initialAgent),this.#L({...this.options.config??{},...$??{}})}static async computeInitialSessionConfig($,X={},Q={}){let W=new k9($,X);try{return await W.getInitialSessionConfig(Q)}finally{W.close()}}async updateAgent($){return this.#X.emit("agent_handoff",this.#Q,$),this.emit("agent_handoff",this.#Q,this.#X,$),await this.#N($),await this.#$.updateSessionConfig(await this.#L()),$}async#z($,X){let Q=await X.onInvokeHandoff(this.#Q,$.arguments);this.#X.emit("agent_handoff",this.#Q,Q),this.emit("agent_handoff",this.#Q,this.#X,Q),await this.#N(Q),await this.#$.updateSessionConfig(await this.#L());let W=b5(Q);return this.#$.sendFunctionCallOutput($,W,!0),Q}async#Z($,X){let{toolErrorFormatter:Q}=this.options;if(!Q)return QV;try{let W=await Q({kind:"approval_rejected",toolType:"function",toolName:$,callId:X,defaultMessage:QV,runContext:this.#Q});if(typeof W==="string")return W;if(typeof W!=="undefined")u$.warn("toolErrorFormatter returned a non-string value. Falling back to the default tool approval rejection message.")}catch(W){u$.warn(`toolErrorFormatter threw while formatting approval rejection: ${ry(W)}`)}return QV}async#F($,X){this.#Q.context.history=JSON.parse(JSON.stringify(this.#Y));let Q=$.arguments;if(X.parameters)if(q6(X.parameters))Q=X.parameters.parse(Q);else Q=JSON.parse(Q);if(await X.needsApproval(this.#Q,Q,$.callId)){let H=this.context.isToolApproved({toolName:X.name,callId:$.callId});if(H===!1){this.emit("agent_tool_start",this.#Q,this.#X,X,{toolCall:$}),this.#X.emit("agent_tool_start",this.#Q,X,{toolCall:$});let q=await this.#Z(X.name,$.callId);this.#$.sendFunctionCallOutput($,q,!0),this.emit("agent_tool_end",this.#Q,this.#X,X,q,{toolCall:$}),this.#X.emit("agent_tool_end",this.#Q,X,q,{toolCall:$});return}else if(typeof H==="undefined"){this.emit("tool_approval_requested",this.#Q,this.#X,{type:"function_approval",tool:X,approvalItem:new V$($,this.#X)});return}}let Y=await T5({guardrails:X.inputGuardrails,context:this.#Q,agent:this.#X,toolCall:$});this.emit("agent_tool_start",this.#Q,this.#X,X,{toolCall:$}),this.#X.emit("agent_tool_start",this.#Q,X,{toolCall:$}),this.#Q.context.history=JSON.parse(JSON.stringify(this.#Y));let J=Y.type==="reject"?Y.message:await N5({tool:X,runContext:this.#Q,input:$.arguments,details:{toolCall:$}}),U=Y.type==="reject"?J:await C5({guardrails:X.outputGuardrails,context:this.#Q,agent:this.#X,toolCall:$,toolOutput:J}),G;if(XV(U))G=R6(U.content),this.#$.sendFunctionCallOutput($,G,!1);else G=R6(U),this.#$.sendFunctionCallOutput($,G,!0);this.emit("agent_tool_end",this.#Q,this.#X,X,G,{toolCall:$}),this.#X.emit("agent_tool_end",this.#Q,X,G,{toolCall:$})}async#P($){let X=await this.#X.getEnabledHandoffs(this.#Q),Q=new Map(X.map((U)=>[U.toolName,U])),W=await this.#X.getAllTools(this.#Q),Y=new Map(W.map((U)=>[U.name,U])),J=Q.get($.name);if(J)await this.#z($,J);else{let U=Y.get($.name);if(U&&U.type==="function")await this.#F($,U);else throw new b$(`Tool ${$.name} not found`)}}async#O($,X,Q){if(this.#U.length===0)return;let W={agent:this.#X,agentOutput:$,context:this.#Q},J=(await Promise.all(this.#U.map((U)=>U.run(W)))).find((U)=>U.output.tripwireTriggered);if(J){if(this.#q[X])return;this.#q[X]=!0;let U=new P1(`Output guardrail triggered: ${JSON.stringify(J.output.outputInfo)}`,J);this.emit("guardrail_tripped",this.#Q,this.#X,U,{itemId:Q}),this.interrupt();let G=rM(J);this.sendMessage(G);return}}#A(){this.#$.on("*",(Q)=>{if(this.emit("transport_event",Q),Q.type==="conversation.item.input_audio_transcription.completed")try{let W=Q;this.#Y=oq(this.#Y,W,this.#K),this.#Q.context.history=this.#Y,this.emit("history_updated",this.#Y)}catch(W){this.emit("error",{type:"error",error:W})}}),this.#$.on("mcp_tools_listed",({serverLabel:Q,tools:W})=>{try{this.#B.set(Q,W??[]),this.#M()}catch(Y){this.emit("error",{type:"error",error:Y})}}),this.#$.on("audio",(Q)=>{if(!this.#H)this.#H=!0,this.emit("audio_start",this.#Q,this.#X);this.emit("audio",Q)}),this.#$.on("turn_started",()=>{this.#H=!1,this.emit("agent_start",this.#Q,this.#X),this.#X.emit("agent_start",this.#Q,this.#X)}),this.#$.on("turn_done",(Q)=>{let W=Q.response.output??[],Y="",J="";for(let U=W.length-1;U>=0;U--){let G=W[U],H=rq(G);if(typeof H==="string"){Y=H;let q=G?.id;J=typeof q==="string"?q:"";break}}if(!J&&W.length>0){let U=W[W.length-1];J=typeof U?.id==="string"?U.id:""}this.emit("agent_end",this.#Q,this.#X,Y),this.#X.emit("agent_end",this.#Q,Y),this.#O(Y,Q.response.id,J)}),this.#$.on("audio_done",()=>{if(this.#H)this.#H=!1;this.emit("audio_stopped",this.#Q,this.#X)});let $=0,X;this.#$.on("audio_transcript_delta",(Q)=>{try{let{delta:W,itemId:Y,responseId:J}=Q;if(X!==Y)X=Y,$=0;let G=(this.#G[Y]??"")+W;if(this.#G[Y]=G,this.#W.debounceTextLength<0)return;let H=Math.floor(G.length/this.#W.debounceTextLength);if(H>$)$=H,this.#O(G,J,Y)}catch(W){this.emit("error",{type:"error",error:W})}}),this.#$.on("item_update",(Q)=>{try{let W=!this.#Y.some((Y)=>Y.itemId===Q.itemId);if(this.#Y=oq(this.#Y,Q,this.#K),this.#Q.context.history=this.#Y,W){let Y=this.#Y.find((J)=>J.itemId===Q.itemId);if(Y)this.emit("history_added",Y)}this.emit("history_updated",this.#Y)}catch(W){this.emit("error",{type:"error",error:W})}}),this.#$.on("item_deleted",(Q)=>{try{this.#Y=this.#Y.filter((W)=>W.itemId!==Q.itemId),this.#Q.context.history=this.#Y,this.emit("history_updated",this.#Y)}catch(W){this.emit("error",{type:"error",error:W})}}),this.#$.on("function_call",async(Q)=>{try{await this.#P(Q)}catch(W){u$.error("Error handling function call",W),this.emit("error",{type:"error",error:W})}}),this.#$.on("usage_update",(Q)=>{this.#Q.usage.add(Q)}),this.#$.on("audio_interrupted",()=>{if(this.#H)this.#H=!1;this.emit("audio_interrupted",this.#Q,this.#X)}),this.#$.on("error",(Q)=>{this.emit("error",Q)}),this.#$.on("mcp_tool_call_completed",(Q)=>{if(this.emit("mcp_tool_call_completed",this.#Q,this.#X,Q),this.#w)this.#$.sendEvent({type:"response.create"})}),this.#$.on("mcp_approval_request",(Q)=>{this.emit("tool_approval_requested",this.#Q,this.#X,{type:"mcp_approval_request",approvalItem:iM(this.#X,Q)})})}#M(){let $=this.#J?.filter((U)=>U.type==="mcp"),X=(U)=>{let G=U.allowed_tools;if(!G)return;if(Array.isArray(G))return G;if(G&&Array.isArray(G.tool_names))return G.tool_names;return},Q=new Map;for(let U of $){let G=this.#B.get(U.server_label)??[],H=X(U);for(let q of G){if(H&&!H.includes(q.name))continue;if(!Q.has(q.name))Q.set(q.name,q)}}let W=Array.from(Q.values()),Y=this.#V;if(Y.length!==W.length||JSON.stringify(Y.map((U)=>U.name).sort())!==JSON.stringify(W.map((U)=>U.name).sort()))this.#V=W,this.emit("mcp_tools_changed",this.#V)}async connect($){if(await this.#N(this.initialAgent),!this.#D)this.#A(),this.#D=!0;await this.#$.connect({apiKey:$.apiKey??this.options.apiKey,model:this.options.model,url:$.url,callId:$.callId,initialSessionConfig:await this.#L(this.options.config)}),this.#Y=[],this.emit("history_updated",this.#Y)}updateHistory($){let X;if(typeof $==="function")X=$(this.#Y);else X=$;this.#$.resetHistory(this.#Y,X)}sendMessage($,X={}){this.#$.sendMessage($,X)}addImage($,{triggerResponse:X=!0}={}){this.#$.addImage($,{triggerResponse:X})}mute($){this.#$.mute($)}close(){this.#q={},this.#$.close()}sendAudio($,X={}){this.#$.sendAudio($,X)}interrupt(){this.#$.interrupt()}async approve($,X={alwaysApprove:!1}){this.#Q.approveTool($,X);let Q=$.toolName??$.rawItem.name,W=this.#X.tools.find((Y)=>Y.name===Q);if(W&&W.type==="function"&&$.rawItem.type==="function_call")await this.#F($.rawItem,W);else if($.rawItem.type==="hosted_tool_call"){if(X.alwaysApprove)u$.warn("Always approving MCP tools is not supported. Use the allowed tools configuration instead.");let Y=aq($);this.#$.sendMcpResponse(Y,!0)}else throw new b$(`Tool ${Q??"unknown"} not found`)}async reject($,X={alwaysReject:!1}){this.#Q.rejectTool($,X);let Q=$.toolName??$.rawItem.name,W=this.#X.tools.find((Y)=>Y.name===Q);if(W&&W.type==="function"&&$.rawItem.type==="function_call")await this.#F($.rawItem,W);else if($.rawItem.type==="hosted_tool_call"){if(X.alwaysReject)u$.warn("Always rejecting MCP tools is not supported. Use the allowed tools configuration instead.");let Y=aq($);this.#$.sendMcpResponse(Y,!1)}else throw new b$(`Tool ${Q??"unknown"} not found`)}}var oy=class{apply($,X){if(!X.type)return;let Q=Array.isArray(X.type)?X.type:[X.type],W=new Set(Q);if(!W.has("string"))$.string=!1;if(!W.has("number")&&!W.has("integer"))$.number=!1;if(!W.has("boolean"))$.boolean=!1;if(!W.has("null"))$.null=!1;if(!W.has("array"))$.array=!1;if(!W.has("object"))$.object=!1;if(W.has("integer")&&$.number!==!1){let Y=$.number||K.number();if(Y instanceof K.ZodNumber)$.number=Y.int()}}},ay=class{apply($,X){if(X.const===void 0)return;let Q=X.const;if($.string=!1,$.number=!1,$.boolean=!1,$.null=!1,$.array=!1,$.object=!1,typeof Q==="string")$.string=K.literal(Q);else if(typeof Q==="number")$.number=K.literal(Q);else if(typeof Q==="boolean")$.boolean=K.literal(Q);else if(Q===null)$.null=K.null();else if(Array.isArray(Q))$.array=void 0;else if(typeof Q==="object")$.object=void 0}},ty=class{apply($,X){if(!X.enum)return;if(X.enum.length===0){if(!X.type)$.string=!1,$.number=!1,$.boolean=!1,$.null=!1,$.array=!1,$.object=!1;return}let Q={string:X.enum.filter((W)=>typeof W==="string"),number:X.enum.filter((W)=>typeof W==="number"),boolean:X.enum.filter((W)=>typeof W==="boolean"),null:X.enum.filter((W)=>W===null),array:X.enum.filter((W)=>Array.isArray(W)),object:X.enum.filter((W)=>typeof W==="object"&&W!==null&&!Array.isArray(W))};$.string=this.createTypeSchema(Q.string,"string"),$.number=this.createTypeSchema(Q.number,"number"),$.boolean=this.createTypeSchema(Q.boolean,"boolean"),$.null=Q.null.length>0?K.null():!1,$.array=Q.array.length>0?void 0:!1,$.object=Q.object.length>0?void 0:!1}createTypeSchema($,X){if($.length===0)return!1;if($.length===1)return K.literal($[0]);if(X==="string")return K.enum($);if(X==="number"){let[Q,W,...Y]=$;return K.union([K.literal(Q),K.literal(W),...Y.map((J)=>K.literal(J))])}if(X==="boolean")return K.union([K.literal(!0),K.literal(!1)]);return!1}},sy=class{apply($,X){let Q=X;if(Q.type==="string"&&Q.format==="binary"&&Q.contentEncoding==="binary"){let W=K.file();if(Q.minLength!==void 0)W=W.min(Q.minLength);if(Q.maxLength!==void 0)W=W.max(Q.maxLength);if(Q.contentMediaType!==void 0)W=W.mime(Q.contentMediaType);$.file=W,$.string=!1}}},ey=class{apply($,X){let Q=X;if(X.type===void 0&&(Q.minLength!==void 0||Q.maxLength!==void 0||Q.pattern!==void 0)){if($.string===void 0)$.string=K.string()}}},$g=class{apply($,X){let Q=X;if(Q.minLength===void 0)return;if($.string!==!1){let W=$.string||K.string();if(W instanceof K.ZodString)$.string=W.refine((Y)=>{return Array.from(Y).length>=Q.minLength},{message:`String must be at least ${Q.minLength} characters long`})}}},Xg=class{apply($,X){let Q=X;if(Q.maxLength===void 0)return;if($.string!==!1){let W=$.string||K.string();if(W instanceof K.ZodString)$.string=W.refine((Y)=>{return Array.from(Y).length<=Q.maxLength},{message:`String must be at most ${Q.maxLength} characters long`})}}},Qg=class{apply($,X){let Q=X;if(!Q.pattern)return;if($.string!==!1){let W=$.string||K.string();if(W instanceof K.ZodString){let Y=new RegExp(Q.pattern);$.string=W.regex(Y)}}}},Yg=class{apply($,X){let Q=X;if(Q.minimum===void 0)return;if($.number!==!1){let W=$.number||K.number();if(W instanceof K.ZodNumber)$.number=W.min(Q.minimum)}}},Wg=class{apply($,X){let Q=X;if(Q.maximum===void 0)return;if($.number!==!1){let W=$.number||K.number();if(W instanceof K.ZodNumber)$.number=W.max(Q.maximum)}}},Jg=class{apply($,X){let Q=X;if(Q.exclusiveMinimum===void 0)return;if($.number!==!1){let W=$.number||K.number();if(W instanceof K.ZodNumber)if(typeof Q.exclusiveMinimum==="number")$.number=W.gt(Q.exclusiveMinimum);else $.number=!1}}},Ug=class{apply($,X){let Q=X;if(Q.exclusiveMaximum===void 0)return;if($.number!==!1){let W=$.number||K.number();if(W instanceof K.ZodNumber)if(typeof Q.exclusiveMaximum==="number")$.number=W.lt(Q.exclusiveMaximum);else $.number=!1}}},Gg=class{apply($,X){let Q=X;if(Q.multipleOf===void 0)return;if($.number!==!1){let W=$.number||K.number();if(W instanceof K.ZodNumber)$.number=W.refine((Y)=>{if(Q.multipleOf===0)return!1;let J=Y/Q.multipleOf,U=Math.round(J),G=Math.min(Math.abs(Y)*Number.EPSILON*10,Math.abs(Q.multipleOf)*Number.EPSILON*10);return Math.abs(J-U)<=G/Math.abs(Q.multipleOf)},{message:`Must be a multiple of ${Q.multipleOf}`})}}},Kg=class{apply($,X){let Q=X;if(X.type===void 0&&(Q.minItems!==void 0||Q.maxItems!==void 0||Q.items!==void 0||Q.prefixItems!==void 0)){if($.array===void 0)$.array=K.array(K.any())}}},Hg=class{apply($,X){let Q=X;if(Q.minItems===void 0)return;if($.array!==!1)$.array=($.array||K.array(K.any())).min(Q.minItems)}},qg=class{apply($,X){let Q=X;if(Q.maxItems===void 0)return;if($.array!==!1)$.array=($.array||K.array(K.any())).max(Q.maxItems)}},Vg=class{apply($,X){let Q=X;if($.array===!1)return;if(Array.isArray(Q.items))$.array=$.array||K.array(K.any());else if(Q.items&&typeof Q.items!=="boolean"&&!Q.prefixItems){let W=t$(Q.items),Y=K.array(W);if($.array&&$.array instanceof K.ZodArray){let J=$.array._def;if(J.checks)J.checks.forEach((U)=>{if(U._zod&&U._zod.def){let G=U._zod.def;if(G.check==="min_length"&&G.minimum!==void 0)Y=Y.min(G.minimum);else if(G.check==="max_length"&&G.maximum!==void 0)Y=Y.max(G.maximum)}})}$.array=Y}else if(typeof Q.items==="boolean"&&Q.items===!1)if(!Q.prefixItems)$.array=K.array(K.any()).max(0);else $.array=$.array||K.array(K.any());else if(typeof Q.items==="boolean"&&Q.items===!0)$.array=$.array||K.array(K.any());else if(Q.prefixItems)$.array=$.array||K.array(K.any())}},Bg=class{apply($,X){if(X.type!=="array")return;let Q=X;if(!Array.isArray(Q.items))return;if($.array===!1)return;let W=Q.items.map((J)=>t$(J)),Y;if(W.length===0)Y=K.tuple([]);else Y=K.tuple(W);if(Q.minItems!==void 0&&Q.minItems>W.length)Y=!1;if(Q.maxItems!==void 0&&Q.maxItems<W.length)Y=!1;$.tuple=Y,$.array=!1}},Dg=class{apply($,X){let Q=X;if($.object===!1)return;if(Q.properties||Q.required||Q.additionalProperties!==void 0)$.object=$.object||K.object({}).passthrough()}},_g=class{apply($,X){let Q=X;if(X.type===void 0&&(Q.maxProperties!==void 0||Q.minProperties!==void 0)){if($.object===void 0)$.object=K.object({}).passthrough()}}},wg=class{apply($,X){let Q=X;if(Q.maxProperties===void 0)return;if($.object!==!1){let W=$.object||K.object({}).passthrough();$.object=W.refine((Y)=>Object.keys(Y).length<=Q.maxProperties,{message:`Object must have at most ${Q.maxProperties} properties`})}}},Ng=class{apply($,X){let Q=X;if(Q.minProperties===void 0)return;if($.object!==!1){let W=$.object||K.object({}).passthrough();$.object=W.refine((Y)=>Object.keys(Y).length>=Q.minProperties,{message:`Object must have at least ${Q.minProperties} properties`})}}};function h5($,X){if($===X)return!0;if($==null||X==null)return $===X;if(typeof $!==typeof X)return!1;if(Array.isArray($)&&Array.isArray(X)){if($.length!==X.length)return!1;return $.every((Q,W)=>h5(Q,X[W]))}if(typeof $==="object"&&typeof X==="object"){let Q=Object.keys($),W=Object.keys(X);if(Q.length!==W.length)return!1;return Q.every((Y)=>W.includes(Y)&&h5($[Y],X[Y]))}return!1}function Lg(){return($)=>{if(!Array.isArray($))return!0;let X=[];return $.every((Q)=>{if(X.some((Y)=>h5(Q,Y)))return!1;return X.push(Q),!0})}}function bQ($,X){return $.safeParse(X).success}var Fg=class{apply($,X){if(!X.not)return $;let Q=t$(X.not);return $.refine((W)=>!bQ(Q,W),{message:"Value must not match the 'not' schema"})}},Og=class{apply($,X){if(X.uniqueItems!==!0)return $;return $.refine(Lg(),{message:"Array items must be unique"})}},Mg=class{apply($,X){if(!X.allOf||X.allOf.length===0)return $;return X.allOf.map((W)=>t$(W)).reduce((W,Y)=>K.intersection(W,Y),$)}},zg=class{apply($,X){if(!X.anyOf||X.anyOf.length===0)return $;let Q=X.anyOf.length===1?t$(X.anyOf[0]):K.union([t$(X.anyOf[0]),t$(X.anyOf[1]),...X.anyOf.slice(2).map((W)=>t$(W))]);return K.intersection($,Q)}},Zg=class{apply($,X){if(!X.oneOf||X.oneOf.length===0)return $;let Q=X.oneOf.map((W)=>t$(W));return $.refine((W)=>{let Y=0;for(let J of Q)if(J.safeParse(W).success){if(Y++,Y>1)return!1}return Y===1},{message:"Value must match exactly one of the oneOf schemas"})}},Pg=class{apply($,X){let Q=X;if(Q.prefixItems&&Array.isArray(Q.prefixItems)){let Y=Q.prefixItems.map((J)=>t$(J));return $.refine((J)=>{if(!Array.isArray(J))return!0;for(let U=0;U<Math.min(J.length,Y.length);U++)if(!bQ(Y[U],J[U]))return!1;if(J.length>Y.length){if(typeof Q.items==="boolean"&&Q.items===!1)return!1;else if(Q.items&&typeof Q.items==="object"&&!Array.isArray(Q.items)){let U=t$(Q.items);for(let G=Y.length;G<J.length;G++)if(!bQ(U,J[G]))return!1}}return!0},{message:"Array does not match prefixItems schema"})}return $}},Ag=class{apply($,X){let Q=X;if(!Q.properties&&!Q.required&&Q.additionalProperties!==!1)return $;if($ instanceof K.ZodObject||$ instanceof K.ZodRecord){let W={};if(Q.properties){for(let[Y,J]of Object.entries(Q.properties))if(J!==void 0)W[Y]=t$(J)}if(Q.required&&Array.isArray(Q.required)){let Y=new Set(Q.required);for(let J of Object.keys(W))if(!Y.has(J))W[J]=W[J].optional()}else for(let Y of Object.keys(W))W[Y]=W[Y].optional();if(Q.additionalProperties===!1)return K.object(W);else return K.object(W).passthrough()}return $.refine((W)=>{if(typeof W!=="object"||W===null||Array.isArray(W))return!0;if(Q.properties){for(let[Y,J]of Object.entries(Q.properties))if(J!==void 0){if(Object.getOwnPropertyDescriptor(W,Y)!==void 0){if(!t$(J).safeParse(W[Y]).success)return!1}}}if(Q.required&&Array.isArray(Q.required)){for(let Y of Q.required)if(Object.getOwnPropertyDescriptor(W,Y)===void 0)return!1}if(Q.additionalProperties===!1&&Q.properties){let Y=new Set(Object.keys(Q.properties));for(let J in W)if(!Y.has(J))return!1}return!0},{message:"Object constraints validation failed"})}},Eg=class{apply($,X){if(!X.enum||X.enum.length===0)return $;let Q=X.enum.filter((W)=>Array.isArray(W)||typeof W==="object"&&W!==null);if(Q.length===0)return $;return $.refine((W)=>{if(typeof W!=="object"||W===null)return!0;return Q.some((Y)=>h5(W,Y))},{message:"Value must match one of the enum values"})}},jg=class{apply($,X){if(X.const===void 0)return $;let Q=X.const;if(typeof Q!=="object"||Q===null)return $;return $.refine((W)=>h5(W,Q),{message:"Value must equal the const value"})}},kg=class{apply($,X){if(X.description)$=$.describe(X.description);return $}},Ig=class{apply($,X){var Q;let W=X;if(!((Q=W.required)==null?void 0:Q.includes("__proto__"))||X.type!==void 0)return $;return K.any().refine((Y)=>this.validateRequired(Y,W.required),{message:"Missing required properties"})}validateRequired($,X){if(typeof $!=="object"||$===null||Array.isArray($))return!0;return X.every((Q)=>Object.prototype.hasOwnProperty.call($,Q))}},Rg=class{apply($,X){var Q;let W=X;if(W.contains===void 0)return $;let Y=t$(W.contains),J=(Q=W.minContains)!=null?Q:1,U=W.maxContains;return $.refine((G)=>{if(!Array.isArray(G))return!0;let H=0;for(let q of G)if(bQ(Y,q))H++;if(H<J)return!1;if(U!==void 0&&H>U)return!1;return!0},{message:"Array must contain required items matching the schema"})}},bg=class{apply($,X){let{default:Q}=X;if(Q===void 0)return $;if(!$.safeParse(Q).success)return $;return $.default(Q)}},vg=[new ay,new ty,new oy,new sy,new ey,new Kg,new _g,new $g,new Xg,new Qg,new Yg,new Wg,new Jg,new Ug,new Gg,new Bg,new Hg,new qg,new Vg,new wg,new Ng,new Dg],Sg=[new Ig,new Eg,new jg,new Mg,new zg,new Zg,new Pg,new Ag,new Rg,new Fg,new Og,new bg,new kg];function t$($){if(typeof $==="boolean")return $?K.any():K.never();let X={};for(let Y of vg)Y.apply(X,$);let Q=[];if(X.string!==!1)Q.push(X.string||K.string());if(X.number!==!1)Q.push(X.number||K.number());if(X.boolean!==!1)Q.push(X.boolean||K.boolean());if(X.null!==!1)Q.push(X.null||K.null());if(X.array!==!1)Q.push(X.array||K.array(K.any()));if(X.tuple!==!1&&X.tuple!==void 0)Q.push(X.tuple);if(X.object!==!1)if(X.object)Q.push(X.object);else{let Y=K.custom((J)=>{return typeof J==="object"&&J!==null&&!Array.isArray(J)},"Must be an object, not an array");Q.push(Y)}if(X.file!==!1&&X.file!==void 0)Q.push(X.file);let W;if(Q.length===0)W=K.never();else if(Q.length===1)W=Q[0];else if(!Object.keys($).some((J)=>J!=="$schema"&&J!=="title"&&J!=="description"))W=K.any();else W=K.union(Q);for(let Y of Sg)W=Y.apply(W,$);return W}import{jsx as SQ,jsxs as Wz}from"react/jsx-runtime";var xg=({data:$,setUiAjaxConfiguration:X})=>{let{name:Q,titles:W,instructions:Y,tools:J,token:U,autoStart:G,muted:H,language:q,outputModalities:V,sxMap:B,iconUrl:D,iconPosition:_,useSocketioSupport:w,useCentrifugeSupport:N,useMittSupport:L,centrifugeChannel:O}=$,{apiServer:Z,enableRenderingLog:F}=$1(),[z,P]=I9(null),[j,I]=I9(null),[k,m]=I9(null),[$$,U$]=I9(!1),[_$,a]=I9([]),[,B$]=I9(null),N$=Cg(null),x=Tg(()=>{return J.map((X$)=>{let z$=AY(X??(()=>{}),X$.kwargs,X$.depsNames,X$.pathname,{apiServer:Z,renderingLogEnabled:F});return n4({name:X$.name,description:X$.description,parameters:t$(X$.params),async execute(X4){console.log(`Calling tool: ${X$.name} with: ${JSON.stringify(X4)}`);let D6=await z$(X4);if(!Array.isArray(D6))return[];return D6.filter((P$)=>P$.name===`pietoolOutput_${Q}`).map((P$)=>P$.data.output)}})})},[J,X]),i=()=>{if(console.log("Disconnecting session..."),j)j.close();I(null),P(null),U$(!1)},Y$=async(X$)=>{if(!j){console.error("Session not initialized");return}if($$){console.log("Already connected, skipping...");return}try{j.on("history_updated",(z$)=>{a(z$)}),console.log("Connecting to session..."),B$(null),await j.connect({apiKey:X$}),U$(!0),console.log("Connected successfully")}catch(z$){console.error("Failed to connect to session:",z$),B$(z$ instanceof Error?z$.message:"Failed to connect"),U$(!1)}};return vQ(()=>{if(!N$.current)return;if(!k)navigator.mediaDevices.getUserMedia({audio:!0}).then(async(X$)=>{m(new j9({mediaStream:X$,audioElement:N$.current}))})},[N$]),vQ(()=>{if(!N$.current)return;if(!k)return;if(z===null||j===null){let X$=new IQ({name:Q,instructions:Y,tools:x}),z$=new k9(X$,{model:"gpt-realtime",transport:k,config:{outputModalities:V,audio:{input:{transcription:{language:q??void 0,model:"gpt-4o-mini-transcribe"}}},inputAudioTranscription:{language:q??void 0,model:"gpt-4o-mini-transcribe"}}});P(X$),I(z$)}},[z,j,Q,Y,x,N$,k]),vQ(()=>{if(z!==null&&j!==null&&G&&U&&!$$)console.log("Auto-connecting..."),Y$(U).catch((X$)=>{console.error("Auto-connection failed:",X$)})},[z,j]),vQ(()=>{return()=>{console.log("Disconnecting..."),i()}},[]),Wz(E$,{card:"VoiceAgentCard",data:$,methods:{initializeAI:async(X$)=>{if(z!==null&&j!==null&&X$.token&&!$$)console.log("Connecting via initialize event..."),await Y$(X$.token).catch((z$)=>{console.error("Auto-connection failed:",z$)})},stop:()=>{i()}},useCentrifugeSupport:N,useSocketioSupport:w,useMittSupport:L,centrifugeChannel:O,children:[Wz("button",{id:Q,value:Q,onClick:async()=>{if($$)i();else if(U)await Y$(U)},style:$$?B.enabled:B.disabled,type:"button",children:[D&&_==="start"&&SQ("img",{src:D,alt:""}),l6($$?W.enabled:W.disabled),D&&_==="end"&&SQ("img",{src:D,alt:""})]}),SQ("input",{type:"hidden",name:Q,value:JSON.stringify(_$)}),SQ("audio",{ref:N$,autoPlay:!0,muted:H,style:{display:"none"}})]})},TQ=xg;import{useContext as gg,useEffect as Jz,useState as Uz}from"react";var YV=({data:$})=>{return l6($)};import{jsx as yg}from"react/jsx-runtime";var WV=({data:$,setUiAjaxConfiguration:X})=>{return yg(x$,{uiConfig:$,setUiAjaxConfiguration:X})};import{jsx as e6,jsxs as mg}from"react/jsx-runtime";var fg=({name:$,headers:X,rows:Q,rowUrls:W,selected:Y,columnHeights:J,sx:U,sxMap:G,setUiAjaxConfiguration:H})=>{let q=gg(m$),V=(N,L)=>Array(N.length*L).fill(0).map((O,Z)=>N[Z%N.length]),B=X.map((N)=>N.length),D=B.reduce((N,L)=>N*L,1),_=B.map((N,L)=>Math.floor(D/B.slice(0,L+1).reduce((O,Z)=>O*Z,1))),w=X.map((N,L)=>{return V(N,B.slice(0,L).reduce((O,Z)=>O*Z,1))});return mg("table",{id:$,className:"w-full table-auto border-collapse overflow-hidden text-left",style:{...G?.table,...U},children:[e6("thead",{className:"bg-gray-100",children:w.map((N,L)=>e6("tr",{className:"border-none",style:G?.row,children:N.map((O,Z)=>e6("th",{colSpan:_[L],className:"border border-gray-200 px-4 py-2 text-gray-500",style:{width:J?J[Z]:"auto",...G?.cell},children:typeof O==="string"?e6(YV,{data:O,setUiAjaxConfiguration:H}):e6(WV,{data:O,setUiAjaxConfiguration:H})},Z))},L))}),e6("tbody",{children:Q.map((N,L)=>e6("tr",{className:`border border-gray-200 bg-white ${W&&W[L]?"cursor-pointer":""} ${Y&&Y[L]?"bg-gray-200":""}`,style:G?.row,children:N.map((O,Z)=>e6("td",{onClick:()=>{if(typeof O==="string"&&W&&W[L])if(W[L].startsWith("http"))window.location.href=W[L];else q?.(W[L])},className:"border border-gray-200 px-4 py-2 text-gray-900",style:{width:J?J[Z]:"auto",...G?.cell},children:typeof O==="string"?e6(YV,{data:O,setUiAjaxConfiguration:H}):e6(WV,{data:O,setUiAjaxConfiguration:H})},Z))},L))})]})},hg=({data:$,setUiAjaxConfiguration:X})=>{let{name:Q,headers:W,rows:Y,rowUrls:J,sx:U,sxMap:G,useSocketioSupport:H,useCentrifugeSupport:q,useMittSupport:V,centrifugeChannel:B}=$,[D,_]=Uz([]),[w,N]=Uz([]);return Jz(()=>{_(Y)},[Y]),Jz(()=>{N(J)},[J]),e6(E$,{card:"TableCard",data:$,methods:{addrow:(z)=>{_((P)=>[...P,z.row]),N((P)=>[...P,z.url??null])},insertrow:(z)=>{_((P)=>[...P.slice(0,z.idx),z.row,...P.slice(z.idx)]),N((P)=>[...P.slice(0,z.idx),z.url??null,...P.slice(z.idx)])},delrow:(z)=>{_((P)=>[...P.slice(0,z.idx),...P.slice(z.idx+1)]),N((P)=>[...P.slice(0,z.idx),...P.slice(z.idx+1)])},clear:()=>{_(()=>[]),N(()=>[])}},useSocketioSupport:H,useCentrifugeSupport:q,useMittSupport:V,centrifugeChannel:B,children:e6(fg,{name:Q,rows:D,rowUrls:w,headers:W,setUiAjaxConfiguration:X,sx:U,sxMap:G})})},JV=hg;import{useContext as ug}from"react";import{jsx as UV}from"react/jsx-runtime";var cg=({data:$,content:X,setUiAjaxConfiguration:Q})=>{let{name:W,url:Y,sx:J}=$,U=ug(m$);return UV(E$,{card:W,data:$,children:UV("div",{style:J,id:W,onClick:(H)=>{if(Y)if(H.stopPropagation(),/^[a-zA-Z][a-zA-Z\d+\-.]*:\/\//.test(Y))window.location.href=Y;else U?.(Y)},children:UV(x$,{setUiAjaxConfiguration:Q,uiConfig:X})})})},GV=cg;var KV=!1;function a4(){if(KV)return;s$({name:"SequenceCard",component:gD,metadata:{author:"PieData",description:"Simple div with styles joining few components"}}),s$({name:"BoxCard",component:GV,metadata:{author:"PieData",description:"Simple div with styles joining few components"}}),s$({name:"UnionCard",component:hD,metadata:{author:"PieData",description:"Renders one of many components"}}),s$({name:"AjaxGroupCard",component:dD,metadata:{author:"PieData",description:"Group card with AJAX support"}}),s$({name:"AjaxButtonCard",component:o_,metadata:{author:"PieData",description:"Button with AJAX support"}}),s$({name:"RedirectButtonCard",component:B2,metadata:{author:"PieData",description:"Button with Redirect on click"}}),s$({name:"ChatCard",component:Zw,metadata:{author:"PieData"}}),s$({name:"HiddenCard",component:aY,metadata:{author:"PieData"}}),s$({name:"AutoRedirectCard",component:tY,metadata:{author:"PieData"}}),s$({name:"HTMLEmbedCard",component:eY,metadata:{author:"PieData"}}),s$({name:"IOEventsCard",component:q2,metadata:{author:"PieData"}}),s$({name:"OpenAIVoiceAgentCard",component:TQ,metadata:{author:"PieData"}}),s$({name:"TableCard",component:JV,metadata:{author:"PieData"}}),KV=!0}function V6(){return KV}import{jsx as S6,Fragment as og}from"react/jsx-runtime";var ng=({location:$,fallback:X,onError:Q,initializePie:W})=>{let Y=f6(),J=X1(),U=h6();dg(()=>{if(V6())return;a4(),W()},[]);let G=m5(()=>Gz.createAxiosDateTransformer({baseURL:Y||""}),[Y]),H=m5(()=>Q1(),[]),q=m5(()=>Y?W1(Y):null,[Y]),V=m5(()=>Y?U1(Y,J):null,[Y,J]),{data:B,isLoading:D,error:_}=pg({queryKey:["uiConfig",$.pathname+$.search,V6(),Y],enabled:V6()&&!!Y,queryFn:async()=>{let w=new URLSearchParams($.search);w.set("__pieroot","web");let N="/api/content"+$.pathname+"?"+w.toString();if(U)console.log("[PieRoot] Fetching UI configuration from:",N);let L=await G.get(N,{headers:{"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET,PUT,POST,DELETE,PATCH,OPTIONS","Content-type":"application/json"},withCredentials:!0});if(U)console.log("[PieRoot] Received UI configuration:",L.data);return L.data},staleTime:1/0,gcTime:1/0,refetchOnWindowFocus:!1,refetchOnMount:!1,refetchOnReconnect:!1,retry:!0,retryDelay:(w)=>Math.min(1000*2**w,30000)});if(!Y)return X??null;if(U)console.log("[PieRoot] Rendering with location:",$),console.log("[PieRoot] API_SERVER:",Y),console.log("[PieRoot] CENTRIFUGE_SERVER:",J),console.log("[PieRoot] Fallback provided:",!!X);if(_){if(U)console.error("[PieRoot] Error fetching UI configuration:",_),console.error("[PieRoot] Error details:",{message:_.message,status:_.response?.status,data:_.response?.data});return Q?.(),X}if(D||!B){if(U)console.log("[PieRoot] Loading state:",{isLoading:D,hasUiConfiguration:!!B});return X}if(U)console.log("[PieRoot] UI configuration loaded successfully:",B),console.log("[PieRoot] Rendering UI with configuration");return S6(m6.Provider,{value:H,children:S6(u6.Provider,{value:q,children:S6(c6.Provider,{value:V,children:S6(g6.Provider,{value:X??S6(og,{}),children:S6(G1,{children:S6(K1,{children:S6("form",{id:"piedata_global_form",action:Y+"api/process"+$.pathname,method:"post",encType:"multipart/form-data",children:S6(x$,{uiConfig:B})})})})})})})})},rg=($)=>{let X=m5(()=>new lg,[]);return S6(m$.Provider,{value:$.onNavigate,children:S6(S4.Provider,{value:$.config,children:S6(ig,{client:X,children:S6(ng,{...$})})})})},ag=rg;import{useEffect as eg,useMemo as u5}from"react";import{QueryClient as $f,QueryClientProvider as Xf,useQuery as Qf}from"@tanstack/react-query";var Hz=x1(O3(),1);import{useEffect as tg,useState as sg}from"react";var Kz=()=>{let[$,X]=sg(null),Q=FV();return tg(()=>{if(typeof window==="undefined")return;let W=window.Telegram.WebApp;if(W.ready(),Q==="telegram_expanded"&&(W.platform==="ios"||W.platform==="android"))W.expand();X(W)},[]),$};import{jsx as T6,Fragment as Jf}from"react/jsx-runtime";var Yf=({location:$,fallback:X,onError:Q,initializePie:W})=>{let Y=f6(),J=X1(),U=h6();eg(()=>{if(V6())return;a4(),W()},[]);let G=u5(()=>Hz.createAxiosDateTransformer({baseURL:Y}),[Y]),H=u5(()=>Q1(),[]),q=u5(()=>Y?W1(Y):null,[Y]),V=u5(()=>Y?U1(Y,J):null,[Y,J]),B=Kz(),{data:D,isLoading:_,error:w}=Qf({queryKey:["uiConfig",$.pathname+$.search,B?.initData,V6()],enabled:V6()&&!!B?.initData,queryFn:async()=>{let N=new URLSearchParams($.search);if(N.set("__pieroot","telegram"),B?.initData)N.set("initData",B.initData);let L="/api/content"+$.pathname+"?"+N.toString();if(U)console.log("[PieRoot] Fetching UI configuration from:",L);let O=await G.get(L,{headers:{"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET,PUT,POST,DELETE,PATCH,OPTIONS","Content-type":"application/json"},withCredentials:!0});if(U)console.log("[PieRoot] Received UI configuration:",O.data);return O.data},staleTime:1/0,gcTime:1/0,refetchOnWindowFocus:!1,refetchOnMount:!1,refetchOnReconnect:!1,retry:!0,retryDelay:(N)=>Math.min(1000*2**N,30000)});if(!Y)throw Error("Set PIE_API_SERVER and PIE_CENTRIFUGE_SERVER");if(w&&U)return console.error("[PieRoot] Error fetching UI configuration:",w),console.error("[PieRoot] Error details:",{message:w.message,status:w.response?.status,data:w.response?.data}),Q?.(),X;if(_||!D){if(U)console.log("[PieRoot] Loading state:",{isLoading:_,hasUiConfiguration:!!D});return X}if(U)console.log("[PieRoot] UI configuration loaded successfully:",D),console.log("[PieRoot] Rendering UI with configuration");return T6(m6.Provider,{value:H,children:T6(u6.Provider,{value:q,children:T6(c6.Provider,{value:V,children:T6(g6.Provider,{value:X??T6(Jf,{}),children:T6(G1,{children:T6(K1,{children:T6("form",{id:"piedata_global_form",action:Y+"api/process"+$.pathname,method:"post",encType:"multipart/form-data",children:T6(x$,{uiConfig:D})})})})})})})})},Wf=($)=>{let X=u5(()=>new $f,[]);return T6(m$.Provider,{value:$.onNavigate,children:T6(S4.Provider,{value:$.config,children:T6(Xf,{client:X,children:T6(Yf,{...$})})})})},Uf=Wf;import{useEffect as Gf,useMemo as CQ}from"react";import{QueryClient as Kf,QueryClientProvider as Hf}from"@tanstack/react-query";import{jsx as $4,Fragment as Bf}from"react/jsx-runtime";var qf=({location:$,fallback:X,initializePie:Q,children:W})=>{let Y=f6(),J=X1(),U=h6();Gf(()=>{if(V6())return;a4(),Q()},[]);let G=CQ(()=>Q1(),[]),H=CQ(()=>Y?W1(Y):null,[Y]),q=CQ(()=>Y?U1(Y,J):null,[Y,J]);if(U)console.log("[PieRoot] Rendering with location:",$),console.log("[PieRoot] API_SERVER:",Y),console.log("[PieRoot] CENTRIFUGE_SERVER:",J),console.log("[PieRoot] Fallback provided:",!!X);return $4(m6.Provider,{value:G,children:$4(u6.Provider,{value:H,children:$4(c6.Provider,{value:q,children:$4(g6.Provider,{value:X??$4(Bf,{}),children:$4(G1,{children:$4(K1,{children:$4("form",{id:"piedata_global_form",action:Y+"api/process"+$.pathname,method:"post",encType:"multipart/form-data",children:W})})})})})})})},Vf=($)=>{let X=CQ(()=>new Kf,[]);return $4(m$.Provider,{value:$.onNavigate,children:$4(S4.Provider,{value:$.config,children:$4(Hf,{client:X,children:$4(qf,{...$})})})})},Df=Vf;import{useEffect as Nf,useMemo as c5}from"react";import{QueryClient as Lf,QueryClientProvider as Ff,useQuery as Of}from"@tanstack/react-query";var Vz=x1(O3(),1);import{useEffect as _f,useState as wf}from"react";var qz=()=>{let[$,X]=wf(null);return _f(()=>{if(typeof window==="undefined")return;let Q=window.WebApp;if(!Q)return;Q.ready(),X(Q)},[]),$};import{jsx as C6,Fragment as Zf}from"react/jsx-runtime";var Mf=({location:$,fallback:X,onError:Q,initializePie:W})=>{let Y=f6(),J=X1(),U=h6();Nf(()=>{if(V6())return;a4(),W()},[]);let G=c5(()=>Vz.createAxiosDateTransformer({baseURL:Y}),[Y]),H=c5(()=>Q1(),[]),q=c5(()=>Y?W1(Y):null,[Y]),V=c5(()=>Y?U1(Y,J):null,[Y,J]),B=qz(),{data:D,isLoading:_,error:w}=Of({queryKey:["uiConfig",$.pathname+$.search,B?.initData,V6()],queryFn:async()=>{let N=new URLSearchParams($.search);if(N.set("__pieroot","max"),B?.initData)N.set("initData",B.initData);let L="/api/content"+$.pathname+"?"+N.toString();if(U)console.log("[PieRoot] Fetching UI configuration from:",L);let O=await G.get(L,{headers:{"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET,PUT,POST,DELETE,PATCH,OPTIONS","Content-type":"application/json"},withCredentials:!0});if(U)console.log("[PieRoot] Received UI configuration:",O.data);return O.data},enabled:V6()&&!!B?.initData,staleTime:1/0,gcTime:1/0,refetchOnWindowFocus:!1,refetchOnMount:!1,refetchOnReconnect:!1,retry:!0,retryDelay:(N)=>Math.min(1000*2**N,30000)});if(!Y)throw Error("Set PIE_API_SERVER and PIE_CENTRIFUGE_SERVER");if(w&&U)return console.error("[PieRoot] Error fetching UI configuration:",w),console.error("[PieRoot] Error details:",{message:w.message,status:w.response?.status,data:w.response?.data}),Q?.(),X;if(_||!D){if(U)console.log("[PieRoot] Loading state:",{isLoading:_,hasUiConfiguration:!!D});return X}if(U)console.log("[PieRoot] UI configuration loaded successfully:",D),console.log("[PieRoot] Rendering UI with configuration");return C6(m6.Provider,{value:H,children:C6(u6.Provider,{value:q,children:C6(c6.Provider,{value:V,children:C6(g6.Provider,{value:X??C6(Zf,{}),children:C6(G1,{children:C6(K1,{children:C6("form",{id:"piedata_global_form",action:Y+"api/process"+$.pathname,method:"post",encType:"multipart/form-data",children:C6(x$,{uiConfig:D})})})})})})})})},zf=($)=>{let X=c5(()=>new Lf,[]);return C6(m$.Provider,{value:$.onNavigate,children:C6(S4.Provider,{value:$.config,children:C6(Ff,{client:X,children:C6(Mf,{...$})})})})},Pf=zf;function Af($){if(!$)return{};return{...$}}var Ef=($,X)=>{let Q=new Array($.length+X.length);for(let W=0;W<$.length;W++)Q[W]=$[W];for(let W=0;W<X.length;W++)Q[$.length+W]=X[W];return Q},jf=($,X)=>({classGroupId:$,validator:X}),Lz=($=new Map,X=null,Q)=>({nextPart:$,validators:X,classGroupId:Q});var Bz=[];var kf=($)=>{let X=Rf($),{conflictingClassGroups:Q,conflictingClassGroupModifiers:W}=$;return{getClassGroupId:(U)=>{if(U.startsWith("[")&&U.endsWith("]"))return If(U);let G=U.split("-"),H=G[0]===""&&G.length>1?1:0;return Fz(G,H,X)},getConflictingClassGroupIds:(U,G)=>{if(G){let H=W[U],q=Q[U];if(H){if(q)return Ef(q,H);return H}return q||Bz}return Q[U]||Bz}}},Fz=($,X,Q)=>{if($.length-X===0)return Q.classGroupId;let Y=$[X],J=Q.nextPart.get(Y);if(J){let q=Fz($,X+1,J);if(q)return q}let U=Q.validators;if(U===null)return;let G=X===0?$.join("-"):$.slice(X).join("-"),H=U.length;for(let q=0;q<H;q++){let V=U[q];if(V.validator(G))return V.classGroupId}return},If=($)=>$.slice(1,-1).indexOf(":")===-1?void 0:(()=>{let X=$.slice(1,-1),Q=X.indexOf(":"),W=X.slice(0,Q);return W?"arbitrary.."+W:void 0})(),Rf=($)=>{let{theme:X,classGroups:Q}=$;return bf(Q,X)},bf=($,X)=>{let Q=Lz();for(let W in $){let Y=$[W];qV(Y,Q,W,X)}return Q},qV=($,X,Q,W)=>{let Y=$.length;for(let J=0;J<Y;J++){let U=$[J];vf(U,X,Q,W)}},vf=($,X,Q,W)=>{if(typeof $==="string"){Sf($,X,Q);return}if(typeof $==="function"){Tf($,X,Q,W);return}Cf($,X,Q,W)},Sf=($,X,Q)=>{let W=$===""?X:Oz(X,$);W.classGroupId=Q},Tf=($,X,Q,W)=>{if(xf($)){qV($(W),X,Q,W);return}if(X.validators===null)X.validators=[];X.validators.push(jf(Q,$))},Cf=($,X,Q,W)=>{let Y=Object.entries($),J=Y.length;for(let U=0;U<J;U++){let[G,H]=Y[U];qV(H,Oz(X,G),Q,W)}},Oz=($,X)=>{let Q=$,W=X.split("-"),Y=W.length;for(let J=0;J<Y;J++){let U=W[J],G=Q.nextPart.get(U);if(!G)G=Lz(),Q.nextPart.set(U,G);Q=G}return Q},xf=($)=>("isThemeGetter"in $)&&$.isThemeGetter===!0,yf=($)=>{if($<1)return{get:()=>{return},set:()=>{}};let X=0,Q=Object.create(null),W=Object.create(null),Y=(J,U)=>{if(Q[J]=U,X++,X>$)X=0,W=Q,Q=Object.create(null)};return{get(J){let U=Q[J];if(U!==void 0)return U;if((U=W[J])!==void 0)return Y(J,U),U},set(J,U){if(J in Q)Q[J]=U;else Y(J,U)}}};var gf=[],Dz=($,X,Q,W,Y)=>({modifiers:$,hasImportantModifier:X,baseClassName:Q,maybePostfixModifierPosition:W,isExternal:Y}),ff=($)=>{let{prefix:X,experimentalParseClassName:Q}=$,W=(Y)=>{let J=[],U=0,G=0,H=0,q,V=Y.length;for(let N=0;N<V;N++){let L=Y[N];if(U===0&&G===0){if(L===":"){J.push(Y.slice(H,N)),H=N+1;continue}if(L==="/"){q=N;continue}}if(L==="[")U++;else if(L==="]")U--;else if(L==="(")G++;else if(L===")")G--}let B=J.length===0?Y:Y.slice(H),D=B,_=!1;if(B.endsWith("!"))D=B.slice(0,-1),_=!0;else if(B.startsWith("!"))D=B.slice(1),_=!0;let w=q&&q>H?q-H:void 0;return Dz(J,_,D,w)};if(X){let Y=X+":",J=W;W=(U)=>U.startsWith(Y)?J(U.slice(Y.length)):Dz(gf,!1,U,void 0,!0)}if(Q){let Y=W;W=(J)=>Q({className:J,parseClassName:Y})}return W},hf=($)=>{let X=new Map;return $.orderSensitiveModifiers.forEach((Q,W)=>{X.set(Q,1e6+W)}),(Q)=>{let W=[],Y=[];for(let J=0;J<Q.length;J++){let U=Q[J],G=U[0]==="[",H=X.has(U);if(G||H){if(Y.length>0)Y.sort(),W.push(...Y),Y=[];W.push(U)}else Y.push(U)}if(Y.length>0)Y.sort(),W.push(...Y);return W}},mf=($)=>({cache:yf($.cacheSize),parseClassName:ff($),sortModifiers:hf($),...kf($)}),uf=/\s+/,cf=($,X)=>{let{parseClassName:Q,getClassGroupId:W,getConflictingClassGroupIds:Y,sortModifiers:J}=X,U=[],G=$.trim().split(uf),H="";for(let q=G.length-1;q>=0;q-=1){let V=G[q],{isExternal:B,modifiers:D,hasImportantModifier:_,baseClassName:w,maybePostfixModifierPosition:N}=Q(V);if(B){H=V+(H.length>0?" "+H:H);continue}let L=!!N,O=W(L?w.substring(0,N):w);if(!O){if(!L){H=V+(H.length>0?" "+H:H);continue}if(O=W(w),!O){H=V+(H.length>0?" "+H:H);continue}L=!1}let Z=D.length===0?"":D.length===1?D[0]:J(D).join(":"),F=_?Z+"!":Z,z=F+O;if(U.indexOf(z)>-1)continue;U.push(z);let P=Y(O,L);for(let j=0;j<P.length;++j){let I=P[j];U.push(F+I)}H=V+(H.length>0?" "+H:H)}return H},df=(...$)=>{let X=0,Q,W,Y="";while(X<$.length)if(Q=$[X++]){if(W=Mz(Q))Y&&(Y+=" "),Y+=W}return Y},Mz=($)=>{if(typeof $==="string")return $;let X,Q="";for(let W=0;W<$.length;W++)if($[W]){if(X=Mz($[W]))Q&&(Q+=" "),Q+=X}return Q},lf=($,...X)=>{let Q,W,Y,J,U=(H)=>{let q=X.reduce((V,B)=>B(V),$());return Q=mf(q),W=Q.cache.get,Y=Q.cache.set,J=G,G(H)},G=(H)=>{let q=W(H);if(q)return q;let V=cf(H,Q);return Y(H,V),V};return J=U,(...H)=>J(df(...H))},pf=[],h$=($)=>{let X=(Q)=>Q[$]||pf;return X.isThemeGetter=!0,X},zz=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,Zz=/^\((?:(\w[\w-]*):)?(.+)\)$/i,nf=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,rf=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,of=/\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$/,af=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,tf=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,sf=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,S1=($)=>nf.test($),G$=($)=>!!$&&!Number.isNaN(Number($)),T1=($)=>!!$&&Number.isInteger(Number($)),HV=($)=>$.endsWith("%")&&G$($.slice(0,-1)),t4=($)=>rf.test($),Pz=()=>!0,ef=($)=>of.test($)&&!af.test($),VV=()=>!1,$h=($)=>tf.test($),Xh=($)=>sf.test($),Qh=($)=>!c($)&&!d($),Yh=($)=>C1($,jz,VV),c=($)=>zz.test($),N0=($)=>C1($,kz,ef),_z=($)=>C1($,Vh,G$),Wh=($)=>C1($,Rz,Pz),Jh=($)=>C1($,Iz,VV),wz=($)=>C1($,Az,VV),Uh=($)=>C1($,Ez,Xh),xQ=($)=>C1($,bz,$h),d=($)=>Zz.test($),d5=($)=>L0($,kz),Gh=($)=>L0($,Iz),Nz=($)=>L0($,Az),Kh=($)=>L0($,jz),Hh=($)=>L0($,Ez),yQ=($)=>L0($,bz,!0),qh=($)=>L0($,Rz,!0),C1=($,X,Q)=>{let W=zz.exec($);if(W){if(W[1])return X(W[1]);return Q(W[2])}return!1},L0=($,X,Q=!1)=>{let W=Zz.exec($);if(W){if(W[1])return X(W[1]);return Q}return!1},Az=($)=>$==="position"||$==="percentage",Ez=($)=>$==="image"||$==="url",jz=($)=>$==="length"||$==="size"||$==="bg-size",kz=($)=>$==="length",Vh=($)=>$==="number",Iz=($)=>$==="family-name",Rz=($)=>$==="number"||$==="weight",bz=($)=>$==="shadow";var Bh=()=>{let $=h$("color"),X=h$("font"),Q=h$("text"),W=h$("font-weight"),Y=h$("tracking"),J=h$("leading"),U=h$("breakpoint"),G=h$("container"),H=h$("spacing"),q=h$("radius"),V=h$("shadow"),B=h$("inset-shadow"),D=h$("text-shadow"),_=h$("drop-shadow"),w=h$("blur"),N=h$("perspective"),L=h$("aspect"),O=h$("ease"),Z=h$("animate"),F=()=>["auto","avoid","all","avoid-page","page","left","right","column"],z=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],P=()=>[...z(),d,c],j=()=>["auto","hidden","clip","visible","scroll"],I=()=>["auto","contain","none"],k=()=>[d,c,H],m=()=>[S1,"full","auto",...k()],$$=()=>[T1,"none","subgrid",d,c],U$=()=>["auto",{span:["full",T1,d,c]},T1,d,c],_$=()=>[T1,"auto",d,c],a=()=>["auto","min","max","fr",d,c],B$=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],N$=()=>["start","end","center","stretch","center-safe","end-safe"],x=()=>["auto",...k()],i=()=>[S1,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...k()],Y$=()=>[S1,"screen","full","dvw","lvw","svw","min","max","fit",...k()],B6=()=>[S1,"screen","full","lh","dvh","lvh","svh","min","max","fit",...k()],u=()=>[$,d,c],X$=()=>[...z(),Nz,wz,{position:[d,c]}],z$=()=>["no-repeat",{repeat:["","x","y","space","round"]}],X4=()=>["auto","cover","contain",Kh,Yh,{size:[d,c]}],D6=()=>[HV,d5,N0],P$=()=>["","none","full",q,d,c],c$=()=>["",G$,d5,N0],x6=()=>["solid","dashed","dotted","double"],l5=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],k$=()=>[G$,HV,Nz,wz],s4=()=>["","none",w,d,c],Q4=()=>["none",G$,d,c],e4=()=>["none",G$,d,c],F0=()=>[G$,d,c],R9=()=>[S1,"full",...k()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[t4],breakpoint:[t4],color:[Pz],container:[t4],"drop-shadow":[t4],ease:["in","out","in-out"],font:[Qh],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[t4],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[t4],shadow:[t4],spacing:["px",G$],text:[t4],"text-shadow":[t4],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",S1,c,d,L]}],container:["container"],columns:[{columns:[G$,c,d,G]}],"break-after":[{"break-after":F()}],"break-before":[{"break-before":F()}],"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:P()}],overflow:[{overflow:j()}],"overflow-x":[{"overflow-x":j()}],"overflow-y":[{"overflow-y":j()}],overscroll:[{overscroll:I()}],"overscroll-x":[{"overscroll-x":I()}],"overscroll-y":[{"overscroll-y":I()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:m()}],"inset-x":[{"inset-x":m()}],"inset-y":[{"inset-y":m()}],start:[{"inset-s":m(),start:m()}],end:[{"inset-e":m(),end:m()}],"inset-bs":[{"inset-bs":m()}],"inset-be":[{"inset-be":m()}],top:[{top:m()}],right:[{right:m()}],bottom:[{bottom:m()}],left:[{left:m()}],visibility:["visible","invisible","collapse"],z:[{z:[T1,"auto",d,c]}],basis:[{basis:[S1,"full","auto",G,...k()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[G$,S1,"auto","initial","none",c]}],grow:[{grow:["",G$,d,c]}],shrink:[{shrink:["",G$,d,c]}],order:[{order:[T1,"first","last","none",d,c]}],"grid-cols":[{"grid-cols":$$()}],"col-start-end":[{col:U$()}],"col-start":[{"col-start":_$()}],"col-end":[{"col-end":_$()}],"grid-rows":[{"grid-rows":$$()}],"row-start-end":[{row:U$()}],"row-start":[{"row-start":_$()}],"row-end":[{"row-end":_$()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":a()}],"auto-rows":[{"auto-rows":a()}],gap:[{gap:k()}],"gap-x":[{"gap-x":k()}],"gap-y":[{"gap-y":k()}],"justify-content":[{justify:[...B$(),"normal"]}],"justify-items":[{"justify-items":[...N$(),"normal"]}],"justify-self":[{"justify-self":["auto",...N$()]}],"align-content":[{content:["normal",...B$()]}],"align-items":[{items:[...N$(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...N$(),{baseline:["","last"]}]}],"place-content":[{"place-content":B$()}],"place-items":[{"place-items":[...N$(),"baseline"]}],"place-self":[{"place-self":["auto",...N$()]}],p:[{p:k()}],px:[{px:k()}],py:[{py:k()}],ps:[{ps:k()}],pe:[{pe:k()}],pbs:[{pbs:k()}],pbe:[{pbe:k()}],pt:[{pt:k()}],pr:[{pr:k()}],pb:[{pb:k()}],pl:[{pl:k()}],m:[{m:x()}],mx:[{mx:x()}],my:[{my:x()}],ms:[{ms:x()}],me:[{me:x()}],mbs:[{mbs:x()}],mbe:[{mbe:x()}],mt:[{mt:x()}],mr:[{mr:x()}],mb:[{mb:x()}],ml:[{ml:x()}],"space-x":[{"space-x":k()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":k()}],"space-y-reverse":["space-y-reverse"],size:[{size:i()}],"inline-size":[{inline:["auto",...Y$()]}],"min-inline-size":[{"min-inline":["auto",...Y$()]}],"max-inline-size":[{"max-inline":["none",...Y$()]}],"block-size":[{block:["auto",...B6()]}],"min-block-size":[{"min-block":["auto",...B6()]}],"max-block-size":[{"max-block":["none",...B6()]}],w:[{w:[G,"screen",...i()]}],"min-w":[{"min-w":[G,"screen","none",...i()]}],"max-w":[{"max-w":[G,"screen","none","prose",{screen:[U]},...i()]}],h:[{h:["screen","lh",...i()]}],"min-h":[{"min-h":["screen","lh","none",...i()]}],"max-h":[{"max-h":["screen","lh",...i()]}],"font-size":[{text:["base",Q,d5,N0]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[W,qh,Wh]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",HV,c]}],"font-family":[{font:[Gh,Jh,X]}],"font-features":[{"font-features":[c]}],"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:[Y,d,c]}],"line-clamp":[{"line-clamp":[G$,"none",d,_z]}],leading:[{leading:[J,...k()]}],"list-image":[{"list-image":["none",d,c]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",d,c]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:u()}],"text-color":[{text:u()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...x6(),"wavy"]}],"text-decoration-thickness":[{decoration:[G$,"from-font","auto",d,N0]}],"text-decoration-color":[{decoration:u()}],"underline-offset":[{"underline-offset":[G$,"auto",d,c]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:k()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",d,c]}],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",d,c]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:X$()}],"bg-repeat":[{bg:z$()}],"bg-size":[{bg:X4()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},T1,d,c],radial:["",d,c],conic:[T1,d,c]},Hh,Uh]}],"bg-color":[{bg:u()}],"gradient-from-pos":[{from:D6()}],"gradient-via-pos":[{via:D6()}],"gradient-to-pos":[{to:D6()}],"gradient-from":[{from:u()}],"gradient-via":[{via:u()}],"gradient-to":[{to:u()}],rounded:[{rounded:P$()}],"rounded-s":[{"rounded-s":P$()}],"rounded-e":[{"rounded-e":P$()}],"rounded-t":[{"rounded-t":P$()}],"rounded-r":[{"rounded-r":P$()}],"rounded-b":[{"rounded-b":P$()}],"rounded-l":[{"rounded-l":P$()}],"rounded-ss":[{"rounded-ss":P$()}],"rounded-se":[{"rounded-se":P$()}],"rounded-ee":[{"rounded-ee":P$()}],"rounded-es":[{"rounded-es":P$()}],"rounded-tl":[{"rounded-tl":P$()}],"rounded-tr":[{"rounded-tr":P$()}],"rounded-br":[{"rounded-br":P$()}],"rounded-bl":[{"rounded-bl":P$()}],"border-w":[{border:c$()}],"border-w-x":[{"border-x":c$()}],"border-w-y":[{"border-y":c$()}],"border-w-s":[{"border-s":c$()}],"border-w-e":[{"border-e":c$()}],"border-w-bs":[{"border-bs":c$()}],"border-w-be":[{"border-be":c$()}],"border-w-t":[{"border-t":c$()}],"border-w-r":[{"border-r":c$()}],"border-w-b":[{"border-b":c$()}],"border-w-l":[{"border-l":c$()}],"divide-x":[{"divide-x":c$()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":c$()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...x6(),"hidden","none"]}],"divide-style":[{divide:[...x6(),"hidden","none"]}],"border-color":[{border:u()}],"border-color-x":[{"border-x":u()}],"border-color-y":[{"border-y":u()}],"border-color-s":[{"border-s":u()}],"border-color-e":[{"border-e":u()}],"border-color-bs":[{"border-bs":u()}],"border-color-be":[{"border-be":u()}],"border-color-t":[{"border-t":u()}],"border-color-r":[{"border-r":u()}],"border-color-b":[{"border-b":u()}],"border-color-l":[{"border-l":u()}],"divide-color":[{divide:u()}],"outline-style":[{outline:[...x6(),"none","hidden"]}],"outline-offset":[{"outline-offset":[G$,d,c]}],"outline-w":[{outline:["",G$,d5,N0]}],"outline-color":[{outline:u()}],shadow:[{shadow:["","none",V,yQ,xQ]}],"shadow-color":[{shadow:u()}],"inset-shadow":[{"inset-shadow":["none",B,yQ,xQ]}],"inset-shadow-color":[{"inset-shadow":u()}],"ring-w":[{ring:c$()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:u()}],"ring-offset-w":[{"ring-offset":[G$,N0]}],"ring-offset-color":[{"ring-offset":u()}],"inset-ring-w":[{"inset-ring":c$()}],"inset-ring-color":[{"inset-ring":u()}],"text-shadow":[{"text-shadow":["none",D,yQ,xQ]}],"text-shadow-color":[{"text-shadow":u()}],opacity:[{opacity:[G$,d,c]}],"mix-blend":[{"mix-blend":[...l5(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":l5()}],"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":[G$]}],"mask-image-linear-from-pos":[{"mask-linear-from":k$()}],"mask-image-linear-to-pos":[{"mask-linear-to":k$()}],"mask-image-linear-from-color":[{"mask-linear-from":u()}],"mask-image-linear-to-color":[{"mask-linear-to":u()}],"mask-image-t-from-pos":[{"mask-t-from":k$()}],"mask-image-t-to-pos":[{"mask-t-to":k$()}],"mask-image-t-from-color":[{"mask-t-from":u()}],"mask-image-t-to-color":[{"mask-t-to":u()}],"mask-image-r-from-pos":[{"mask-r-from":k$()}],"mask-image-r-to-pos":[{"mask-r-to":k$()}],"mask-image-r-from-color":[{"mask-r-from":u()}],"mask-image-r-to-color":[{"mask-r-to":u()}],"mask-image-b-from-pos":[{"mask-b-from":k$()}],"mask-image-b-to-pos":[{"mask-b-to":k$()}],"mask-image-b-from-color":[{"mask-b-from":u()}],"mask-image-b-to-color":[{"mask-b-to":u()}],"mask-image-l-from-pos":[{"mask-l-from":k$()}],"mask-image-l-to-pos":[{"mask-l-to":k$()}],"mask-image-l-from-color":[{"mask-l-from":u()}],"mask-image-l-to-color":[{"mask-l-to":u()}],"mask-image-x-from-pos":[{"mask-x-from":k$()}],"mask-image-x-to-pos":[{"mask-x-to":k$()}],"mask-image-x-from-color":[{"mask-x-from":u()}],"mask-image-x-to-color":[{"mask-x-to":u()}],"mask-image-y-from-pos":[{"mask-y-from":k$()}],"mask-image-y-to-pos":[{"mask-y-to":k$()}],"mask-image-y-from-color":[{"mask-y-from":u()}],"mask-image-y-to-color":[{"mask-y-to":u()}],"mask-image-radial":[{"mask-radial":[d,c]}],"mask-image-radial-from-pos":[{"mask-radial-from":k$()}],"mask-image-radial-to-pos":[{"mask-radial-to":k$()}],"mask-image-radial-from-color":[{"mask-radial-from":u()}],"mask-image-radial-to-color":[{"mask-radial-to":u()}],"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":z()}],"mask-image-conic-pos":[{"mask-conic":[G$]}],"mask-image-conic-from-pos":[{"mask-conic-from":k$()}],"mask-image-conic-to-pos":[{"mask-conic-to":k$()}],"mask-image-conic-from-color":[{"mask-conic-from":u()}],"mask-image-conic-to-color":[{"mask-conic-to":u()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:X$()}],"mask-repeat":[{mask:z$()}],"mask-size":[{mask:X4()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",d,c]}],filter:[{filter:["","none",d,c]}],blur:[{blur:s4()}],brightness:[{brightness:[G$,d,c]}],contrast:[{contrast:[G$,d,c]}],"drop-shadow":[{"drop-shadow":["","none",_,yQ,xQ]}],"drop-shadow-color":[{"drop-shadow":u()}],grayscale:[{grayscale:["",G$,d,c]}],"hue-rotate":[{"hue-rotate":[G$,d,c]}],invert:[{invert:["",G$,d,c]}],saturate:[{saturate:[G$,d,c]}],sepia:[{sepia:["",G$,d,c]}],"backdrop-filter":[{"backdrop-filter":["","none",d,c]}],"backdrop-blur":[{"backdrop-blur":s4()}],"backdrop-brightness":[{"backdrop-brightness":[G$,d,c]}],"backdrop-contrast":[{"backdrop-contrast":[G$,d,c]}],"backdrop-grayscale":[{"backdrop-grayscale":["",G$,d,c]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[G$,d,c]}],"backdrop-invert":[{"backdrop-invert":["",G$,d,c]}],"backdrop-opacity":[{"backdrop-opacity":[G$,d,c]}],"backdrop-saturate":[{"backdrop-saturate":[G$,d,c]}],"backdrop-sepia":[{"backdrop-sepia":["",G$,d,c]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":k()}],"border-spacing-x":[{"border-spacing-x":k()}],"border-spacing-y":[{"border-spacing-y":k()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",d,c]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[G$,"initial",d,c]}],ease:[{ease:["linear","initial",O,d,c]}],delay:[{delay:[G$,d,c]}],animate:[{animate:["none",Z,d,c]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[N,d,c]}],"perspective-origin":[{"perspective-origin":P()}],rotate:[{rotate:Q4()}],"rotate-x":[{"rotate-x":Q4()}],"rotate-y":[{"rotate-y":Q4()}],"rotate-z":[{"rotate-z":Q4()}],scale:[{scale:e4()}],"scale-x":[{"scale-x":e4()}],"scale-y":[{"scale-y":e4()}],"scale-z":[{"scale-z":e4()}],"scale-3d":["scale-3d"],skew:[{skew:F0()}],"skew-x":[{"skew-x":F0()}],"skew-y":[{"skew-y":F0()}],transform:[{transform:[d,c,"","none","gpu","cpu"]}],"transform-origin":[{origin:P()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:R9()}],"translate-x":[{"translate-x":R9()}],"translate-y":[{"translate-y":R9()}],"translate-z":[{"translate-z":R9()}],"translate-none":["translate-none"],accent:[{accent:u()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:u()}],"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",d,c]}],"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":k()}],"scroll-mx":[{"scroll-mx":k()}],"scroll-my":[{"scroll-my":k()}],"scroll-ms":[{"scroll-ms":k()}],"scroll-me":[{"scroll-me":k()}],"scroll-mbs":[{"scroll-mbs":k()}],"scroll-mbe":[{"scroll-mbe":k()}],"scroll-mt":[{"scroll-mt":k()}],"scroll-mr":[{"scroll-mr":k()}],"scroll-mb":[{"scroll-mb":k()}],"scroll-ml":[{"scroll-ml":k()}],"scroll-p":[{"scroll-p":k()}],"scroll-px":[{"scroll-px":k()}],"scroll-py":[{"scroll-py":k()}],"scroll-ps":[{"scroll-ps":k()}],"scroll-pe":[{"scroll-pe":k()}],"scroll-pbs":[{"scroll-pbs":k()}],"scroll-pbe":[{"scroll-pbe":k()}],"scroll-pt":[{"scroll-pt":k()}],"scroll-pr":[{"scroll-pr":k()}],"scroll-pb":[{"scroll-pb":k()}],"scroll-pl":[{"scroll-pl":k()}],"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",d,c]}],fill:[{fill:["none",...u()]}],"stroke-w":[{stroke:[G$,d5,N0,_z]}],stroke:[{stroke:["none",...u()]}],"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 vz=lf(Bh);function Dh(...$){return vz($2($))}var _h=()=>{if(typeof document==="undefined")return;let $=document.getElementById("piedata_global_form");$&&$.submit()};export{C3 as useOpenAIWebRTC,a9 as useAjaxSubmit,Af as sx2radium,_h as submitGlobalForm,s$ as registerPieComponent,V6 as isPieComponentsInitialized,a4 as initializePieComponents,Dh as cn,x$ as UI,Uf as PieTelegramRoot,ag as PieRoot,Pf as PieMaxRoot,E$ as PieCard,Df as PieBaseRoot,i5 as PIEBREAK};