@tscircuit/runframe 0.0.36 → 0.0.38
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/README.md +1 -0
- package/dist/{chunk-E6OI3PY2.js → chunk-CASPTXGV.js} +33 -0
- package/dist/preview.d.ts +1 -1
- package/dist/preview.js +1 -1
- package/dist/runner.js +4 -1
- package/dist/standalone.min.js +4 -4
- package/package.json +2 -1
package/README.md
CHANGED
|
@@ -188,6 +188,7 @@ var ErrorTabContent = ({
|
|
|
188
188
|
|
|
189
189
|
// lib/components/CircuitJsonPreview.tsx
|
|
190
190
|
import { SchematicViewer } from "@tscircuit/schematic-viewer";
|
|
191
|
+
import { AssemblyViewer } from "@tscircuit/assembly-viewer";
|
|
191
192
|
|
|
192
193
|
// lib/components/PreviewEmptyState.tsx
|
|
193
194
|
import { PlayIcon } from "lucide-react";
|
|
@@ -819,6 +820,18 @@ var CircuitJsonPreview = ({
|
|
|
819
820
|
errorMessage && /* @__PURE__ */ jsx13("span", { className: "inline-flex absolute top-[6px] right-[4px] items-center justify-center w-1 h-1 ml-2 text-[8px] font-bold text-white bg-red-500 rounded-full" })
|
|
820
821
|
] }) }),
|
|
821
822
|
/* @__PURE__ */ jsxs9(DropdownMenuContent, { className: "*:text-xs", children: [
|
|
823
|
+
/* @__PURE__ */ jsxs9(DropdownMenuItem, { onSelect: () => setActiveTab("assembly"), children: [
|
|
824
|
+
/* @__PURE__ */ jsx13(
|
|
825
|
+
CheckIcon2,
|
|
826
|
+
{
|
|
827
|
+
className: cn(
|
|
828
|
+
"w-3 h-3 mr-2",
|
|
829
|
+
activeTab !== "assembly" && "invisible"
|
|
830
|
+
)
|
|
831
|
+
}
|
|
832
|
+
),
|
|
833
|
+
"Assembly"
|
|
834
|
+
] }),
|
|
822
835
|
/* @__PURE__ */ jsxs9(
|
|
823
836
|
DropdownMenuItem,
|
|
824
837
|
{
|
|
@@ -895,6 +908,26 @@ var CircuitJsonPreview = ({
|
|
|
895
908
|
) : /* @__PURE__ */ jsx13(PreviewEmptyState_default, { onRunClicked }) })
|
|
896
909
|
}
|
|
897
910
|
) }),
|
|
911
|
+
/* @__PURE__ */ jsx13(TabsContent, { value: "assembly", children: /* @__PURE__ */ jsx13(
|
|
912
|
+
"div",
|
|
913
|
+
{
|
|
914
|
+
className: cn(
|
|
915
|
+
"overflow-auto",
|
|
916
|
+
isFullScreen ? "h-[calc(100vh-96px)]" : "h-[620px]"
|
|
917
|
+
),
|
|
918
|
+
children: /* @__PURE__ */ jsx13(ErrorBoundary, { fallback: /* @__PURE__ */ jsx13("div", { children: "Error loading Assembly" }), children: circuitJson ? /* @__PURE__ */ jsx13(
|
|
919
|
+
AssemblyViewer,
|
|
920
|
+
{
|
|
921
|
+
circuitJson,
|
|
922
|
+
containerStyle: {
|
|
923
|
+
height: "100%"
|
|
924
|
+
},
|
|
925
|
+
editingEnabled: true,
|
|
926
|
+
debugGrid: true
|
|
927
|
+
}
|
|
928
|
+
) : /* @__PURE__ */ jsx13(PreviewEmptyState_default, { onRunClicked }) })
|
|
929
|
+
}
|
|
930
|
+
) }),
|
|
898
931
|
/* @__PURE__ */ jsx13(TabsContent, { value: "schematic", children: /* @__PURE__ */ jsx13(
|
|
899
932
|
"div",
|
|
900
933
|
{
|
package/dist/preview.d.ts
CHANGED
|
@@ -25,7 +25,7 @@ interface PreviewContentProps {
|
|
|
25
25
|
onToggleFullScreen?: () => void;
|
|
26
26
|
isFullScreen?: boolean;
|
|
27
27
|
hasCodeChangedSinceLastRun?: boolean;
|
|
28
|
-
defaultActiveTab?: "code" | "pcb" | "schematic" | "cad" | "bom" | "circuitjson" | "error";
|
|
28
|
+
defaultActiveTab?: "code" | "pcb" | "schematic" | "assembly" | "cad" | "bom" | "circuitjson" | "error";
|
|
29
29
|
onEditEvent?: (editEvent: ManualEditEvent) => void;
|
|
30
30
|
editEvents?: ManualEditEvent[];
|
|
31
31
|
}
|
package/dist/preview.js
CHANGED
package/dist/runner.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
CircuitJsonPreview
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-CASPTXGV.js";
|
|
4
4
|
|
|
5
5
|
// lib/components/RunFrame.tsx
|
|
6
6
|
import { createCircuitWebWorker } from "@tscircuit/eval-webworker";
|
|
@@ -366,6 +366,9 @@ var RunFrameWithApi = (props) => {
|
|
|
366
366
|
return () => stopPolling();
|
|
367
367
|
}, [startPolling, stopPolling]);
|
|
368
368
|
const entrypoint = guessEntrypoint(Array.from(fsMap.keys())) ?? "entrypoint.tsx";
|
|
369
|
+
useEffect3(() => {
|
|
370
|
+
debug5(`entrypoint set to ${entrypoint}`);
|
|
371
|
+
}, [entrypoint]);
|
|
369
372
|
if (!fsMap.get(entrypoint)) {
|
|
370
373
|
return /* @__PURE__ */ jsxs("div", { children: [
|
|
371
374
|
"No entrypoint found for Run Frame! Found files:",
|
package/dist/standalone.min.js
CHANGED
|
@@ -22224,7 +22224,7 @@ void main() {
|
|
|
22224
22224
|
.pin-number { fill: ${colorMap.schematic.pin_number}; }
|
|
22225
22225
|
.port-label { fill: ${colorMap.schematic.reference}; }
|
|
22226
22226
|
.component-name { fill: ${colorMap.schematic.reference}; }
|
|
22227
|
-
`,name:"",attributes:{},children:[]}],value:"",attributes:{}},...NV],value:""};return stringify(cV)}var circuitJsonToSchematicSvg=convertCircuitJsonToSchematicSvg;const index$1=Object.freeze(Object.defineProperty({__proto__:null,circuitJsonToPcbSvg,circuitJsonToSchematicSvg,convertCircuitJsonToAssemblySvg,convertCircuitJsonToPcbSvg,convertCircuitJsonToSchematicSvg},Symbol.toStringTag,{value:"Module"}));var EditIcon=({onClick:lV,active:J})=>jsxRuntimeExports.jsx("div",{onClick:lV,style:{position:"absolute",top:"16px",right:"16px",backgroundColor:J?"#4CAF50":"#fff",color:J?"#fff":"#000",padding:"8px",borderRadius:"4px",cursor:"pointer",boxShadow:"0 2px 4px rgba(0,0,0,0.1)",display:"flex",alignItems:"center",gap:"4px",zIndex:1e3},children:jsxRuntimeExports.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:[jsxRuntimeExports.jsx("path",{d:"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7"}),jsxRuntimeExports.jsx("path",{d:"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z"})]})}),useResizeHandling=lV=>{const[J,VV]=reactExports.useState(0),[RV,UV]=reactExports.useState(0);return reactExports.useEffect(()=>{if(!lV.current)return;const ZV=()=>{var dV;const IV=(dV=lV.current)==null?void 0:dV.getBoundingClientRect();VV((IV==null?void 0:IV.width)||0),UV((IV==null?void 0:IV.height)||0)};ZV();const WV=new ResizeObserver(ZV);return WV.observe(lV.current),window.addEventListener("resize",ZV),()=>{WV.disconnect(),window.removeEventListener("resize",ZV)}},[]),{containerWidth:J,containerHeight:RV}},getComponentOffsetDueToEvents=({editEvents:lV,schematic_component_id:J})=>{const VV=lV.filter(ZV=>"schematic_component_id"in ZV&&ZV.schematic_component_id===J).filter(ZV=>"edit_event_type"in ZV&&ZV.edit_event_type==="edit_schematic_component_location"),RV=VV.reduce((ZV,WV)=>ZV+WV.new_center.x-WV.original_center.x,0),UV=VV.reduce((ZV,WV)=>ZV+WV.new_center.y-WV.original_center.y,0);return{x:RV,y:UV}},debug$5=Debug$1("schematic-viewer"),enableDebug=()=>{Debug$1.enable("schematic-viewer*")},debug_default=debug$5,debug2=debug_default.extend("useComponentDragging"),useComponentDragging=({onEditEvent:lV,editEvents:J=[],circuitJson:VV,cancelDrag:RV,svgToScreenProjection:UV,realToSvgProjection:ZV,enabled:WV=!1})=>{const[IV,dV]=reactExports.useState(null),CV=compose(ZV,UV),FV=reactExports.useRef(null),NV=reactExports.useRef(null),gV=reactExports.useCallback(nV=>{if(!WV)return;const GV=nV.target.closest('[data-circuit-json-type="schematic_component"]');if(!GV)return;const cV=GV.getAttribute("data-schematic-component-id");if(!cV)return;RV&&RV();const TV=distExports$4.su(VV).schematic_component.get(cV);if(!TV)return;const iV=getComponentOffsetDueToEvents({editEvents:J,schematic_component_id:cV});FV.current={x:nV.clientX,y:nV.clientY};const tV={x:TV.center.x+iV.x,y:TV.center.y+iV.y},MV={edit_event_id:Math.random().toString(36).substr(2,9),edit_event_type:"edit_schematic_component_location",schematic_component_id:cV,original_center:tV,new_center:{...tV},in_progress:!0,created_at:Date.now(),_element:GV};NV.current=MV},[RV,WV,VV]),eV=reactExports.useCallback(nV=>{if(!NV.current||!FV.current)return;const aV={x:nV.clientX-FV.current.x,y:nV.clientY-FV.current.y},GV={x:aV.x/CV.a,y:aV.y/CV.d},cV={...NV.current,new_center:{x:NV.current.original_center.x+GV.x,y:NV.current.original_center.y+GV.y}};NV.current=cV,dV(cV)},[CV]),JV=reactExports.useCallback(()=>{if(!NV.current)return;const nV={...NV.current,in_progress:!1};debug2("handleMouseUp calling onEditEvent with new edit event",{newEditEvent:nV}),lV&&lV(nV),NV.current=null,FV.current=null,dV(null)},[lV]);return reactExports.useEffect(()=>(window.addEventListener("mousemove",eV),window.addEventListener("mouseup",JV),()=>{window.removeEventListener("mousemove",eV),window.removeEventListener("mouseup",JV)}),[eV,JV]),{handleMouseDown:gV,isDragging:!!NV.current,activeEditEvent:IV}},useChangeSchematicComponentLocationsInSvg=({svgDivRef:lV,realToSvgProjection:J,svgToScreenProjection:VV,activeEditEvent:RV,editEvents:UV})=>{const ZV=reactExports.useRef(null);reactExports.useEffect(()=>{const WV=lV.current;if(!WV)return;const IV=new MutationObserver(CV=>{const FV=WV.innerHTML;FV!==ZV.current&&(ZV.current=FV,dV())}),dV=()=>{const CV=new Set;for(const NV of UV)"edit_event_type"in NV&&NV.edit_event_type==="edit_schematic_component_location"&&CV.add(NV.schematic_component_id);RV&&CV.add(RV.schematic_component_id);const FV=WV.querySelectorAll('[data-circuit-json-type="schematic_component"]');for(const NV of Array.from(FV)){const gV=NV.getAttribute("data-schematic-component-id"),eV=getComponentOffsetDueToEvents({editEvents:[...UV,...RV?[RV]:[]],schematic_component_id:gV}),JV={x:eV.x*J.a,y:eV.y*J.d},nV=NV.style;nV.transform=`translate(${JV.x}px, ${JV.y}px)`,(RV==null?void 0:RV.schematic_component_id)===gV?(nV.outline="solid 2px rgba(255,0,0,0.5)",nV.outlineOffset="5px"):nV.outline&&(nV.outline="")}};return IV.observe(WV,{childList:!0,subtree:!1,characterData:!1}),dV(),()=>{IV.disconnect()}},[lV,UV,RV])},useChangeSchematicTracesForMovedComponents=({svgDivRef:lV,circuitJson:J,activeEditEvent:VV,editEvents:RV})=>{reactExports.useRef(null),reactExports.useEffect(()=>{const UV=lV.current;if(!UV)return;const ZV=()=>{const IV=UV.querySelectorAll('[data-circuit-json-type="schematic_trace"] path');for(const dV of Array.from(IV))dV.setAttribute("stroke-dasharray","0"),dV.style.animation="";for(const dV of[...RV,...VV?[VV]:[]])if("schematic_component_id"in dV&&dV.edit_event_type==="edit_schematic_component_location"){const CV=distExports$4.su(J).schematic_component.get(dV.schematic_component_id);if(!CV)return;const FV=distExports$4.su(J).source_port.list({source_component_id:CV.source_component_id}),NV=new Set(FV.map(nV=>nV.source_port_id)),gV=distExports$4.su(J).source_trace.list().filter(nV=>{var aV;return(aV=nV.connected_source_port_ids)==null?void 0:aV.some(GV=>NV.has(GV))}),eV=new Set(gV.map(nV=>nV.source_trace_id));distExports$4.su(J).schematic_trace.list().filter(nV=>eV.has(nV.source_trace_id)).forEach(nV=>{var GV;const aV=UV.querySelectorAll(`[data-schematic-trace-id="${nV.schematic_trace_id}"] path`);for(const cV of Array.from(aV))if(!((GV=cV.getAttribute("class"))!=null&&GV.includes("invisible"))&&(cV.setAttribute("stroke-dasharray","20,20"),cV.style.animation="dash-animation 350ms linear infinite, pulse-animation 900ms linear infinite",!UV.querySelector("style#dash-animation"))){const TV=document.createElement("style");TV.id="dash-animation",TV.textContent=`
|
|
22227
|
+
`,name:"",attributes:{},children:[]}],value:"",attributes:{}},...NV],value:""};return stringify(cV)}var circuitJsonToSchematicSvg=convertCircuitJsonToSchematicSvg;const index$1=Object.freeze(Object.defineProperty({__proto__:null,circuitJsonToPcbSvg,circuitJsonToSchematicSvg,convertCircuitJsonToAssemblySvg,convertCircuitJsonToPcbSvg,convertCircuitJsonToSchematicSvg},Symbol.toStringTag,{value:"Module"}));var EditIcon=({onClick:lV,active:J})=>jsxRuntimeExports.jsx("div",{onClick:lV,style:{position:"absolute",top:"16px",right:"16px",backgroundColor:J?"#4CAF50":"#fff",color:J?"#fff":"#000",padding:"8px",borderRadius:"4px",cursor:"pointer",boxShadow:"0 2px 4px rgba(0,0,0,0.1)",display:"flex",alignItems:"center",gap:"4px",zIndex:1e3},children:jsxRuntimeExports.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:[jsxRuntimeExports.jsx("path",{d:"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7"}),jsxRuntimeExports.jsx("path",{d:"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z"})]})}),useResizeHandling$1=lV=>{const[J,VV]=reactExports.useState(0),[RV,UV]=reactExports.useState(0);return reactExports.useEffect(()=>{if(!lV.current)return;const ZV=()=>{var dV;const IV=(dV=lV.current)==null?void 0:dV.getBoundingClientRect();VV((IV==null?void 0:IV.width)||0),UV((IV==null?void 0:IV.height)||0)};ZV();const WV=new ResizeObserver(ZV);return WV.observe(lV.current),window.addEventListener("resize",ZV),()=>{WV.disconnect(),window.removeEventListener("resize",ZV)}},[]),{containerWidth:J,containerHeight:RV}},getComponentOffsetDueToEvents=({editEvents:lV,schematic_component_id:J})=>{const VV=lV.filter(ZV=>"schematic_component_id"in ZV&&ZV.schematic_component_id===J).filter(ZV=>"edit_event_type"in ZV&&ZV.edit_event_type==="edit_schematic_component_location"),RV=VV.reduce((ZV,WV)=>ZV+WV.new_center.x-WV.original_center.x,0),UV=VV.reduce((ZV,WV)=>ZV+WV.new_center.y-WV.original_center.y,0);return{x:RV,y:UV}},debug$5=Debug$1("schematic-viewer"),enableDebug$1=()=>{Debug$1.enable("schematic-viewer*")},debug_default=debug$5,debug2=debug_default.extend("useComponentDragging"),useComponentDragging=({onEditEvent:lV,editEvents:J=[],circuitJson:VV,cancelDrag:RV,svgToScreenProjection:UV,realToSvgProjection:ZV,enabled:WV=!1})=>{const[IV,dV]=reactExports.useState(null),CV=compose(ZV,UV),FV=reactExports.useRef(null),NV=reactExports.useRef(null),gV=reactExports.useCallback(nV=>{if(!WV)return;const GV=nV.target.closest('[data-circuit-json-type="schematic_component"]');if(!GV)return;const cV=GV.getAttribute("data-schematic-component-id");if(!cV)return;RV&&RV();const TV=distExports$4.su(VV).schematic_component.get(cV);if(!TV)return;const iV=getComponentOffsetDueToEvents({editEvents:J,schematic_component_id:cV});FV.current={x:nV.clientX,y:nV.clientY};const tV={x:TV.center.x+iV.x,y:TV.center.y+iV.y},MV={edit_event_id:Math.random().toString(36).substr(2,9),edit_event_type:"edit_schematic_component_location",schematic_component_id:cV,original_center:tV,new_center:{...tV},in_progress:!0,created_at:Date.now(),_element:GV};NV.current=MV},[RV,WV,VV]),eV=reactExports.useCallback(nV=>{if(!NV.current||!FV.current)return;const aV={x:nV.clientX-FV.current.x,y:nV.clientY-FV.current.y},GV={x:aV.x/CV.a,y:aV.y/CV.d},cV={...NV.current,new_center:{x:NV.current.original_center.x+GV.x,y:NV.current.original_center.y+GV.y}};NV.current=cV,dV(cV)},[CV]),JV=reactExports.useCallback(()=>{if(!NV.current)return;const nV={...NV.current,in_progress:!1};debug2("handleMouseUp calling onEditEvent with new edit event",{newEditEvent:nV}),lV&&lV(nV),NV.current=null,FV.current=null,dV(null)},[lV]);return reactExports.useEffect(()=>(window.addEventListener("mousemove",eV),window.addEventListener("mouseup",JV),()=>{window.removeEventListener("mousemove",eV),window.removeEventListener("mouseup",JV)}),[eV,JV]),{handleMouseDown:gV,isDragging:!!NV.current,activeEditEvent:IV}},useChangeSchematicComponentLocationsInSvg=({svgDivRef:lV,realToSvgProjection:J,svgToScreenProjection:VV,activeEditEvent:RV,editEvents:UV})=>{const ZV=reactExports.useRef(null);reactExports.useEffect(()=>{const WV=lV.current;if(!WV)return;const IV=new MutationObserver(CV=>{const FV=WV.innerHTML;FV!==ZV.current&&(ZV.current=FV,dV())}),dV=()=>{const CV=new Set;for(const NV of UV)"edit_event_type"in NV&&NV.edit_event_type==="edit_schematic_component_location"&&CV.add(NV.schematic_component_id);RV&&CV.add(RV.schematic_component_id);const FV=WV.querySelectorAll('[data-circuit-json-type="schematic_component"]');for(const NV of Array.from(FV)){const gV=NV.getAttribute("data-schematic-component-id"),eV=getComponentOffsetDueToEvents({editEvents:[...UV,...RV?[RV]:[]],schematic_component_id:gV}),JV={x:eV.x*J.a,y:eV.y*J.d},nV=NV.style;nV.transform=`translate(${JV.x}px, ${JV.y}px)`,(RV==null?void 0:RV.schematic_component_id)===gV?(nV.outline="solid 2px rgba(255,0,0,0.5)",nV.outlineOffset="5px"):nV.outline&&(nV.outline="")}};return IV.observe(WV,{childList:!0,subtree:!1,characterData:!1}),dV(),()=>{IV.disconnect()}},[lV,UV,RV])},useChangeSchematicTracesForMovedComponents=({svgDivRef:lV,circuitJson:J,activeEditEvent:VV,editEvents:RV})=>{reactExports.useRef(null),reactExports.useEffect(()=>{const UV=lV.current;if(!UV)return;const ZV=()=>{const IV=UV.querySelectorAll('[data-circuit-json-type="schematic_trace"] path');for(const dV of Array.from(IV))dV.setAttribute("stroke-dasharray","0"),dV.style.animation="";for(const dV of[...RV,...VV?[VV]:[]])if("schematic_component_id"in dV&&dV.edit_event_type==="edit_schematic_component_location"){const CV=distExports$4.su(J).schematic_component.get(dV.schematic_component_id);if(!CV)return;const FV=distExports$4.su(J).source_port.list({source_component_id:CV.source_component_id}),NV=new Set(FV.map(nV=>nV.source_port_id)),gV=distExports$4.su(J).source_trace.list().filter(nV=>{var aV;return(aV=nV.connected_source_port_ids)==null?void 0:aV.some(GV=>NV.has(GV))}),eV=new Set(gV.map(nV=>nV.source_trace_id));distExports$4.su(J).schematic_trace.list().filter(nV=>eV.has(nV.source_trace_id)).forEach(nV=>{var GV;const aV=UV.querySelectorAll(`[data-schematic-trace-id="${nV.schematic_trace_id}"] path`);for(const cV of Array.from(aV))if(!((GV=cV.getAttribute("class"))!=null&&GV.includes("invisible"))&&(cV.setAttribute("stroke-dasharray","20,20"),cV.style.animation="dash-animation 350ms linear infinite, pulse-animation 900ms linear infinite",!UV.querySelector("style#dash-animation"))){const TV=document.createElement("style");TV.id="dash-animation",TV.textContent=`
|
|
22228
22228
|
@keyframes dash-animation {
|
|
22229
22229
|
to {
|
|
22230
22230
|
stroke-dashoffset: -40;
|
|
@@ -22235,7 +22235,7 @@ void main() {
|
|
|
22235
22235
|
50% { opacity: 0.2; }
|
|
22236
22236
|
100% { opacity: 0.6; }
|
|
22237
22237
|
}
|
|
22238
|
-
`,UV.appendChild(TV)}})}};ZV();const WV=new MutationObserver(ZV);return WV.observe(UV,{childList:!0,subtree:!1,characterData:!1}),()=>{WV.disconnect()}},[lV,VV,J,RV])},SchematicViewer=({circuitJson:lV,containerStyle:J,editEvents:VV=[],onEditEvent:RV,defaultEditMode:UV=!1,debugGrid:ZV=!1,editingEnabled:WV=!1,debug:IV=!1})=>{IV&&enableDebug();const[dV,CV]=reactExports.useState(UV),FV=reactExports.useRef(null),{ref:NV,cancelDrag:gV,transform:eV}=distExports.useMouseMatrixTransform({onSetTransform(MV){FV.current&&(FV.current.style.transform=toString(MV))}}),{containerWidth:JV,containerHeight:nV}=useResizeHandling(NV),aV=reactExports.useMemo(()=>!JV||!nV?"":convertCircuitJsonToSchematicSvg(lV,{width:JV,height:nV||720,grid:ZV?{cellSize:1,labelCells:!0}:void 0}),[lV,JV,nV]),GV=reactExports.useMemo(()=>{var AV;if(!aV)return identity$4();const MV=(AV=aV.match(/data-real-to-screen-transform="([^"]+)"/))==null?void 0:AV[1];try{return fromString(MV)}catch(pV){return console.error(pV),identity$4()}},[aV]),{handleMouseDown:cV,isDragging:TV,activeEditEvent:iV}=useComponentDragging({onEditEvent:RV,cancelDrag:gV,realToSvgProjection:GV,svgToScreenProjection:eV,circuitJson:lV,editEvents:VV,enabled:dV});useChangeSchematicComponentLocationsInSvg({svgDivRef:FV,editEvents:VV,realToSvgProjection:GV,svgToScreenProjection:eV,activeEditEvent:iV}),useChangeSchematicTracesForMovedComponents({svgDivRef:FV,circuitJson:lV,activeEditEvent:iV,editEvents:VV});const tV=reactExports.useMemo(()=>jsxRuntimeExports.jsx("div",{ref:FV,style:{pointerEvents:"auto",transformOrigin:"0 0"},dangerouslySetInnerHTML:{__html:aV}}),[aV]);return jsxRuntimeExports.jsxs("div",{ref:NV,style:{position:"relative",backgroundColor:"#F5F1ED",overflow:"hidden",cursor:TV?"grabbing":"grab",minHeight:"300px",...J},onMouseDown:cV,children:[WV&&jsxRuntimeExports.jsx(EditIcon,{active:dV,onClick:()=>CV(!dV)}),tV]})};const PreviewEmptyState=({onRunClicked:lV})=>jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-3 bg-gray-100 text-center justify-center py-10",children:["No circuit json loaded",lV&&jsxRuntimeExports.jsxs(Button,{className:"bg-blue-600 hover:bg-blue-500",onClick:lV,children:["Run Code",jsxRuntimeExports.jsx(Play,{className:"w-3 h-3 ml-2"})]})]}),ClickableText=({text:lV,onClick:J})=>jsxRuntimeExports.jsx("span",{className:"cursor-pointer underline text-blue-300 mx-2",onClick:J,children:lV}),HeaderCell=lV=>{var J;return jsxRuntimeExports.jsxs("div",{className:"leading-5",children:[jsxRuntimeExports.jsx("div",{className:"py-2 font-bold",children:lV.column.name}),jsxRuntimeExports.jsx("div",{children:((J=lV.field)==null?void 0:J.call(lV))??jsxRuntimeExports.jsx("input",{type:"text",className:"border rounded p-1 w-full",onChange:VV=>{var RV;(RV=lV.onTextChange)==null||RV.call(lV,VV.target.value)}})})]})},Modal=({open:lV,children:J,title:VV,onClose:RV})=>lV?jsxRuntimeExports.jsx("div",{className:"fixed inset-0 bg-black bg-opacity-50 flex justify-center items-center z-50",onClick:RV,children:jsxRuntimeExports.jsxs("div",{className:"bg-white p-5 rounded-lg relative w-11/12 max-w-2xl",onClick:UV=>{UV.preventDefault(),UV.stopPropagation()},children:[jsxRuntimeExports.jsx("h2",{className:"mt-0 text-xl",children:VV}),jsxRuntimeExports.jsx("button",{className:"absolute top-4 right-4 text-2xl font-bold",onClick:RV,children:"×"}),J]})}):null,CircuitJsonTableViewer=({elements:lV})=>{const[J,VV]=reactExports.useState({open:!1}),[RV,UV]=reactExports.useReducer((FV,NV)=>({...FV,...NV}),{}),ZV=[...new Set(lV.map(FV=>FV.type))],WV=lV.map(FV=>{const NV=FV[`${FV.type}_id`],gV=Object.fromEntries(Object.entries(FV).filter(([JV])=>!(JV===`${FV.type}_id`||!JV.endsWith("_id")))),eV=Object.fromEntries(Object.entries(FV).filter(([JV])=>!JV.endsWith("_id")));return{primary_id:NV,other_ids:gV,...eV,_og_elm:FV}}),IV=WV.map(FV=>{let NV="";const gV=eV=>{const JV=Object.keys(eV.other_ids).find(GV=>GV.startsWith("source_"));if(!JV)return`.${eV.name}`;const nV=JV.slice(0,-3),aV=WV.find(GV=>GV.type===nV&&GV.primary_id===eV.other_ids[JV]);return aV?"name"in aV?`${gV(aV)} > .${eV.name}`:`#${aV.primary_id} > .${eV.name}`:`??? > .${eV.name}`};return"name"in FV&&(NV=gV(FV)),{...FV,selector_path:NV}}),dV=[{key:"primary_id",name:"primary_id",renderCell:FV=>jsxRuntimeExports.jsxs("div",{className:"flex items-center",children:[jsxRuntimeExports.jsx(ClickableText,{text:FV.primary_id,onClick:()=>UV({focused_id:FV.primary_id,id_search:void 0,selector_search:void 0})}),jsxRuntimeExports.jsx("span",{className:"flex-grow"}),jsxRuntimeExports.jsx(ClickableText,{text:"(JSON)",onClick:()=>VV({open:!0,element:FV._og_elm,title:FV.primary_id})})]}),renderHeaderCell:FV=>jsxRuntimeExports.jsx(HeaderCell,{column:FV,onTextChange:NV=>UV({id_search:NV}),field:RV.focused_id?()=>jsxRuntimeExports.jsxs("div",{children:["Focus:"," ",jsxRuntimeExports.jsx("span",{className:"underline",children:RV.focused_id}),jsxRuntimeExports.jsx(ClickableText,{text:"(unfocus)",onClick:()=>UV({focused_id:void 0})})]}):void 0})},{key:"type",name:"type",renderHeaderCell:FV=>jsxRuntimeExports.jsx(HeaderCell,{column:FV,field:()=>jsxRuntimeExports.jsxs("select",{onChange:NV=>UV({component_type_filter:NV.target.value}),className:"border rounded p-1 w-full",children:[jsxRuntimeExports.jsx("option",{value:"any",children:"any"},"any"),jsxRuntimeExports.jsx("option",{value:"source",children:"source"},"source"),jsxRuntimeExports.jsx("option",{value:"source/pcb",children:"source/pcb"},"source/pcb"),jsxRuntimeExports.jsx("option",{value:"source/schematic",children:"source/schematic"},"source/schematic"),ZV.map(NV=>jsxRuntimeExports.jsx("option",{value:NV,children:NV},NV))]})})},{key:"name",name:"name",renderHeaderCell:FV=>jsxRuntimeExports.jsx(HeaderCell,{column:FV,onTextChange:NV=>UV({name_search:NV})})},{key:"selector_path",name:"selector_path",renderHeaderCell:FV=>jsxRuntimeExports.jsx(HeaderCell,{column:FV,onTextChange:NV=>UV({selector_search:NV})})},{key:"other_ids",name:"other_ids",renderCell:FV=>jsxRuntimeExports.jsx("div",{className:"space-x-2",children:Object.entries(FV.other_ids).map(([NV,gV])=>jsxRuntimeExports.jsx(ClickableText,{text:gV,onClick:()=>UV({focused_id:gV})},gV))})}],CV=IV.filter(FV=>{var NV,gV;return RV.name_search?(gV=(NV=FV.name)==null?void 0:NV.toLowerCase())==null?void 0:gV.includes(RV.name_search.toLowerCase()):!0}).filter(FV=>{var NV;return!RV.component_type_filter||RV.component_type_filter==="any"?!0:RV.component_type_filter==="source"?FV.type.startsWith("source_"):RV.component_type_filter==="source/pcb"?FV.type.startsWith("source_")||FV.type.startsWith("pcb_"):RV.component_type_filter==="source/schematic"?FV.type.startsWith("source_")||FV.type.startsWith("schematic_"):(NV=FV.type)==null?void 0:NV.includes(RV.component_type_filter)}).filter(FV=>RV.selector_search?RV.selector_search.split(" ").filter(gV=>gV.length>0).every(gV=>{var eV;return(eV=FV.selector_path)==null?void 0:eV.includes(gV)}):!0).filter(FV=>{var NV;return RV.id_search?(NV=FV.primary_id)==null?void 0:NV.includes(RV.id_search):!0}).filter(FV=>!!(!RV.focused_id||FV.primary_id===RV.focused_id||Object.values(FV.other_ids).includes(RV.focused_id)));return jsxRuntimeExports.jsxs("div",{className:"font-mono text-xs",children:[jsxRuntimeExports.jsx("div",{className:"overflow-x-auto",children:jsxRuntimeExports.jsxs("table",{className:"table-auto w-full text-left",children:[jsxRuntimeExports.jsx("thead",{children:jsxRuntimeExports.jsx("tr",{children:dV.map(FV=>jsxRuntimeExports.jsx("th",{className:"px-4 py-2 border-b",children:FV.renderHeaderCell?FV.renderHeaderCell(FV):FV.name},FV.key))})}),jsxRuntimeExports.jsx("tbody",{children:CV.map((FV,NV)=>jsxRuntimeExports.jsx("tr",{className:"hover:bg-gray-100",children:dV.map(gV=>jsxRuntimeExports.jsx("td",{className:"px-4 py-2 border-b",children:gV.renderCell?gV.renderCell(FV):FV[gV.key]},gV.key))},NV))})]})}),jsxRuntimeExports.jsx(Modal,{open:J.open,onClose:()=>VV({open:!1}),title:J.open?J.title:"",children:jsxRuntimeExports.jsx("div",{className:"bg-gray-800 p-3 text-white rounded",children:jsxRuntimeExports.jsx("pre",{className:"whitespace-pre-wrap",children:J.open?JSON.stringify(J.element,null,2):""})})})]})},linkify=(lV,J)=>lV==="jlcpcb"?jsxRuntimeExports.jsx("a",{className:"underline text-blue-500",target:"_blank",rel:"noreferrer",href:`https://jlcpcb.com/partdetail/${J}`,children:J}):J,BomTable=({circuitJson:lV})=>{const J=lV.filter(RV=>RV.type==="source_component"),VV=new Set;for(const RV of J)if(RV.supplier_part_numbers)for(const UV of Object.keys(RV.supplier_part_numbers))VV.add(UV);return jsxRuntimeExports.jsx("div",{className:"overflow-x-auto",children:jsxRuntimeExports.jsxs("table",{className:"w-full text-left text-sm",children:[jsxRuntimeExports.jsx("thead",{children:jsxRuntimeExports.jsxs("tr",{className:"border-b",children:[jsxRuntimeExports.jsx("th",{className:"p-2",children:"Name"}),Array.from(VV).map(RV=>jsxRuntimeExports.jsx("th",{className:"p-2 capitalize",children:RV},RV))]})}),jsxRuntimeExports.jsx("tbody",{children:J.map(RV=>jsxRuntimeExports.jsxs("tr",{className:"border-b",children:[jsxRuntimeExports.jsx("td",{className:"p-2",children:RV.name}),Array.from(VV).map(UV=>{var ZV,WV;return jsxRuntimeExports.jsx("td",{className:"p-2",children:linkify(UV,((WV=(ZV=RV.supplier_part_numbers)==null?void 0:ZV[UV])==null?void 0:WV[0])||"")},UV)})]},RV.source_component_id))})]})})};function useEscapeKeydown(lV,J=globalThis==null?void 0:globalThis.document){const VV=useCallbackRef$1(lV);reactExports.useEffect(()=>{const RV=UV=>{UV.key==="Escape"&&VV(UV)};return J.addEventListener("keydown",RV,{capture:!0}),()=>J.removeEventListener("keydown",RV,{capture:!0})},[VV,J])}var DISMISSABLE_LAYER_NAME="DismissableLayer",CONTEXT_UPDATE="dismissableLayer.update",POINTER_DOWN_OUTSIDE="dismissableLayer.pointerDownOutside",FOCUS_OUTSIDE="dismissableLayer.focusOutside",originalBodyPointerEvents,DismissableLayerContext=reactExports.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),DismissableLayer=reactExports.forwardRef((lV,J)=>{const{disableOutsidePointerEvents:VV=!1,onEscapeKeyDown:RV,onPointerDownOutside:UV,onFocusOutside:ZV,onInteractOutside:WV,onDismiss:IV,...dV}=lV,CV=reactExports.useContext(DismissableLayerContext),[FV,NV]=reactExports.useState(null),gV=(FV==null?void 0:FV.ownerDocument)??(globalThis==null?void 0:globalThis.document),[,eV]=reactExports.useState({}),JV=useComposedRefs(J,AV=>NV(AV)),nV=Array.from(CV.layers),[aV]=[...CV.layersWithOutsidePointerEventsDisabled].slice(-1),GV=nV.indexOf(aV),cV=FV?nV.indexOf(FV):-1,TV=CV.layersWithOutsidePointerEventsDisabled.size>0,iV=cV>=GV,tV=usePointerDownOutside(AV=>{const pV=AV.target,HV=[...CV.branches].some(oV=>oV.contains(pV));!iV||HV||(UV==null||UV(AV),WV==null||WV(AV),AV.defaultPrevented||IV==null||IV())},gV),MV=useFocusOutside(AV=>{const pV=AV.target;[...CV.branches].some(oV=>oV.contains(pV))||(ZV==null||ZV(AV),WV==null||WV(AV),AV.defaultPrevented||IV==null||IV())},gV);return useEscapeKeydown(AV=>{cV===CV.layers.size-1&&(RV==null||RV(AV),!AV.defaultPrevented&&IV&&(AV.preventDefault(),IV()))},gV),reactExports.useEffect(()=>{if(FV)return VV&&(CV.layersWithOutsidePointerEventsDisabled.size===0&&(originalBodyPointerEvents=gV.body.style.pointerEvents,gV.body.style.pointerEvents="none"),CV.layersWithOutsidePointerEventsDisabled.add(FV)),CV.layers.add(FV),dispatchUpdate(),()=>{VV&&CV.layersWithOutsidePointerEventsDisabled.size===1&&(gV.body.style.pointerEvents=originalBodyPointerEvents)}},[FV,gV,VV,CV]),reactExports.useEffect(()=>()=>{FV&&(CV.layers.delete(FV),CV.layersWithOutsidePointerEventsDisabled.delete(FV),dispatchUpdate())},[FV,CV]),reactExports.useEffect(()=>{const AV=()=>eV({});return document.addEventListener(CONTEXT_UPDATE,AV),()=>document.removeEventListener(CONTEXT_UPDATE,AV)},[]),jsxRuntimeExports.jsx(Primitive.div,{...dV,ref:JV,style:{pointerEvents:TV?iV?"auto":"none":void 0,...lV.style},onFocusCapture:composeEventHandlers(lV.onFocusCapture,MV.onFocusCapture),onBlurCapture:composeEventHandlers(lV.onBlurCapture,MV.onBlurCapture),onPointerDownCapture:composeEventHandlers(lV.onPointerDownCapture,tV.onPointerDownCapture)})});DismissableLayer.displayName=DISMISSABLE_LAYER_NAME;var BRANCH_NAME="DismissableLayerBranch",DismissableLayerBranch=reactExports.forwardRef((lV,J)=>{const VV=reactExports.useContext(DismissableLayerContext),RV=reactExports.useRef(null),UV=useComposedRefs(J,RV);return reactExports.useEffect(()=>{const ZV=RV.current;if(ZV)return VV.branches.add(ZV),()=>{VV.branches.delete(ZV)}},[VV.branches]),jsxRuntimeExports.jsx(Primitive.div,{...lV,ref:UV})});DismissableLayerBranch.displayName=BRANCH_NAME;function usePointerDownOutside(lV,J=globalThis==null?void 0:globalThis.document){const VV=useCallbackRef$1(lV),RV=reactExports.useRef(!1),UV=reactExports.useRef(()=>{});return reactExports.useEffect(()=>{const ZV=IV=>{if(IV.target&&!RV.current){let dV=function(){handleAndDispatchCustomEvent(POINTER_DOWN_OUTSIDE,VV,CV,{discrete:!0})};const CV={originalEvent:IV};IV.pointerType==="touch"?(J.removeEventListener("click",UV.current),UV.current=dV,J.addEventListener("click",UV.current,{once:!0})):dV()}else J.removeEventListener("click",UV.current);RV.current=!1},WV=window.setTimeout(()=>{J.addEventListener("pointerdown",ZV)},0);return()=>{window.clearTimeout(WV),J.removeEventListener("pointerdown",ZV),J.removeEventListener("click",UV.current)}},[J,VV]),{onPointerDownCapture:()=>RV.current=!0}}function useFocusOutside(lV,J=globalThis==null?void 0:globalThis.document){const VV=useCallbackRef$1(lV),RV=reactExports.useRef(!1);return reactExports.useEffect(()=>{const UV=ZV=>{ZV.target&&!RV.current&&handleAndDispatchCustomEvent(FOCUS_OUTSIDE,VV,{originalEvent:ZV},{discrete:!1})};return J.addEventListener("focusin",UV),()=>J.removeEventListener("focusin",UV)},[J,VV]),{onFocusCapture:()=>RV.current=!0,onBlurCapture:()=>RV.current=!1}}function dispatchUpdate(){const lV=new CustomEvent(CONTEXT_UPDATE);document.dispatchEvent(lV)}function handleAndDispatchCustomEvent(lV,J,VV,{discrete:RV}){const UV=VV.originalEvent.target,ZV=new CustomEvent(lV,{bubbles:!1,cancelable:!0,detail:VV});J&&UV.addEventListener(lV,J,{once:!0}),RV?dispatchDiscreteCustomEvent(UV,ZV):UV.dispatchEvent(ZV)}var count=0;function useFocusGuards(){reactExports.useEffect(()=>{const lV=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",lV[0]??createFocusGuard()),document.body.insertAdjacentElement("beforeend",lV[1]??createFocusGuard()),count++,()=>{count===1&&document.querySelectorAll("[data-radix-focus-guard]").forEach(J=>J.remove()),count--}},[])}function createFocusGuard(){const lV=document.createElement("span");return lV.setAttribute("data-radix-focus-guard",""),lV.tabIndex=0,lV.style.outline="none",lV.style.opacity="0",lV.style.position="fixed",lV.style.pointerEvents="none",lV}var AUTOFOCUS_ON_MOUNT="focusScope.autoFocusOnMount",AUTOFOCUS_ON_UNMOUNT="focusScope.autoFocusOnUnmount",EVENT_OPTIONS={bubbles:!1,cancelable:!0},FOCUS_SCOPE_NAME="FocusScope",FocusScope=reactExports.forwardRef((lV,J)=>{const{loop:VV=!1,trapped:RV=!1,onMountAutoFocus:UV,onUnmountAutoFocus:ZV,...WV}=lV,[IV,dV]=reactExports.useState(null),CV=useCallbackRef$1(UV),FV=useCallbackRef$1(ZV),NV=reactExports.useRef(null),gV=useComposedRefs(J,nV=>dV(nV)),eV=reactExports.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;reactExports.useEffect(()=>{if(RV){let nV=function(TV){if(eV.paused||!IV)return;const iV=TV.target;IV.contains(iV)?NV.current=iV:focus(NV.current,{select:!0})},aV=function(TV){if(eV.paused||!IV)return;const iV=TV.relatedTarget;iV!==null&&(IV.contains(iV)||focus(NV.current,{select:!0}))},GV=function(TV){if(document.activeElement===document.body)for(const tV of TV)tV.removedNodes.length>0&&focus(IV)};document.addEventListener("focusin",nV),document.addEventListener("focusout",aV);const cV=new MutationObserver(GV);return IV&&cV.observe(IV,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",nV),document.removeEventListener("focusout",aV),cV.disconnect()}}},[RV,IV,eV.paused]),reactExports.useEffect(()=>{if(IV){focusScopesStack.add(eV);const nV=document.activeElement;if(!IV.contains(nV)){const GV=new CustomEvent(AUTOFOCUS_ON_MOUNT,EVENT_OPTIONS);IV.addEventListener(AUTOFOCUS_ON_MOUNT,CV),IV.dispatchEvent(GV),GV.defaultPrevented||(focusFirst$1(removeLinks(getTabbableCandidates(IV)),{select:!0}),document.activeElement===nV&&focus(IV))}return()=>{IV.removeEventListener(AUTOFOCUS_ON_MOUNT,CV),setTimeout(()=>{const GV=new CustomEvent(AUTOFOCUS_ON_UNMOUNT,EVENT_OPTIONS);IV.addEventListener(AUTOFOCUS_ON_UNMOUNT,FV),IV.dispatchEvent(GV),GV.defaultPrevented||focus(nV??document.body,{select:!0}),IV.removeEventListener(AUTOFOCUS_ON_UNMOUNT,FV),focusScopesStack.remove(eV)},0)}}},[IV,CV,FV,eV]);const JV=reactExports.useCallback(nV=>{if(!VV&&!RV||eV.paused)return;const aV=nV.key==="Tab"&&!nV.altKey&&!nV.ctrlKey&&!nV.metaKey,GV=document.activeElement;if(aV&&GV){const cV=nV.currentTarget,[TV,iV]=getTabbableEdges(cV);TV&&iV?!nV.shiftKey&&GV===iV?(nV.preventDefault(),VV&&focus(TV,{select:!0})):nV.shiftKey&&GV===TV&&(nV.preventDefault(),VV&&focus(iV,{select:!0})):GV===cV&&nV.preventDefault()}},[VV,RV,eV.paused]);return jsxRuntimeExports.jsx(Primitive.div,{tabIndex:-1,...WV,ref:gV,onKeyDown:JV})});FocusScope.displayName=FOCUS_SCOPE_NAME;function focusFirst$1(lV,{select:J=!1}={}){const VV=document.activeElement;for(const RV of lV)if(focus(RV,{select:J}),document.activeElement!==VV)return}function getTabbableEdges(lV){const J=getTabbableCandidates(lV),VV=findVisible(J,lV),RV=findVisible(J.reverse(),lV);return[VV,RV]}function getTabbableCandidates(lV){const J=[],VV=document.createTreeWalker(lV,NodeFilter.SHOW_ELEMENT,{acceptNode:RV=>{const UV=RV.tagName==="INPUT"&&RV.type==="hidden";return RV.disabled||RV.hidden||UV?NodeFilter.FILTER_SKIP:RV.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;VV.nextNode();)J.push(VV.currentNode);return J}function findVisible(lV,J){for(const VV of lV)if(!isHidden(VV,{upTo:J}))return VV}function isHidden(lV,{upTo:J}){if(getComputedStyle(lV).visibility==="hidden")return!0;for(;lV;){if(J!==void 0&&lV===J)return!1;if(getComputedStyle(lV).display==="none")return!0;lV=lV.parentElement}return!1}function isSelectableInput(lV){return lV instanceof HTMLInputElement&&"select"in lV}function focus(lV,{select:J=!1}={}){if(lV&&lV.focus){const VV=document.activeElement;lV.focus({preventScroll:!0}),lV!==VV&&isSelectableInput(lV)&&J&&lV.select()}}var focusScopesStack=createFocusScopesStack();function createFocusScopesStack(){let lV=[];return{add(J){const VV=lV[0];J!==VV&&(VV==null||VV.pause()),lV=arrayRemove(lV,J),lV.unshift(J)},remove(J){var VV;lV=arrayRemove(lV,J),(VV=lV[0])==null||VV.resume()}}}function arrayRemove(lV,J){const VV=[...lV],RV=VV.indexOf(J);return RV!==-1&&VV.splice(RV,1),VV}function removeLinks(lV){return lV.filter(J=>J.tagName!=="A")}const sides=["top","right","bottom","left"],min=Math.min,max=Math.max,round=Math.round,floor=Math.floor,createCoords=lV=>({x:lV,y:lV}),oppositeSideMap={left:"right",right:"left",bottom:"top",top:"bottom"},oppositeAlignmentMap={start:"end",end:"start"};function clamp(lV,J,VV){return max(lV,min(J,VV))}function evaluate(lV,J){return typeof lV=="function"?lV(J):lV}function getSide(lV){return lV.split("-")[0]}function getAlignment(lV){return lV.split("-")[1]}function getOppositeAxis(lV){return lV==="x"?"y":"x"}function getAxisLength(lV){return lV==="y"?"height":"width"}function getSideAxis(lV){return["top","bottom"].includes(getSide(lV))?"y":"x"}function getAlignmentAxis(lV){return getOppositeAxis(getSideAxis(lV))}function getAlignmentSides(lV,J,VV){VV===void 0&&(VV=!1);const RV=getAlignment(lV),UV=getAlignmentAxis(lV),ZV=getAxisLength(UV);let WV=UV==="x"?RV===(VV?"end":"start")?"right":"left":RV==="start"?"bottom":"top";return J.reference[ZV]>J.floating[ZV]&&(WV=getOppositePlacement(WV)),[WV,getOppositePlacement(WV)]}function getExpandedPlacements(lV){const J=getOppositePlacement(lV);return[getOppositeAlignmentPlacement(lV),J,getOppositeAlignmentPlacement(J)]}function getOppositeAlignmentPlacement(lV){return lV.replace(/start|end/g,J=>oppositeAlignmentMap[J])}function getSideList(lV,J,VV){const RV=["left","right"],UV=["right","left"],ZV=["top","bottom"],WV=["bottom","top"];switch(lV){case"top":case"bottom":return VV?J?UV:RV:J?RV:UV;case"left":case"right":return J?ZV:WV;default:return[]}}function getOppositeAxisPlacements(lV,J,VV,RV){const UV=getAlignment(lV);let ZV=getSideList(getSide(lV),VV==="start",RV);return UV&&(ZV=ZV.map(WV=>WV+"-"+UV),J&&(ZV=ZV.concat(ZV.map(getOppositeAlignmentPlacement)))),ZV}function getOppositePlacement(lV){return lV.replace(/left|right|bottom|top/g,J=>oppositeSideMap[J])}function expandPaddingObject(lV){return{top:0,right:0,bottom:0,left:0,...lV}}function getPaddingObject(lV){return typeof lV!="number"?expandPaddingObject(lV):{top:lV,right:lV,bottom:lV,left:lV}}function rectToClientRect(lV){const{x:J,y:VV,width:RV,height:UV}=lV;return{width:RV,height:UV,top:VV,left:J,right:J+RV,bottom:VV+UV,x:J,y:VV}}function computeCoordsFromPlacement(lV,J,VV){let{reference:RV,floating:UV}=lV;const ZV=getSideAxis(J),WV=getAlignmentAxis(J),IV=getAxisLength(WV),dV=getSide(J),CV=ZV==="y",FV=RV.x+RV.width/2-UV.width/2,NV=RV.y+RV.height/2-UV.height/2,gV=RV[IV]/2-UV[IV]/2;let eV;switch(dV){case"top":eV={x:FV,y:RV.y-UV.height};break;case"bottom":eV={x:FV,y:RV.y+RV.height};break;case"right":eV={x:RV.x+RV.width,y:NV};break;case"left":eV={x:RV.x-UV.width,y:NV};break;default:eV={x:RV.x,y:RV.y}}switch(getAlignment(J)){case"start":eV[WV]-=gV*(VV&&CV?-1:1);break;case"end":eV[WV]+=gV*(VV&&CV?-1:1);break}return eV}const computePosition$1=async(lV,J,VV)=>{const{placement:RV="bottom",strategy:UV="absolute",middleware:ZV=[],platform:WV}=VV,IV=ZV.filter(Boolean),dV=await(WV.isRTL==null?void 0:WV.isRTL(J));let CV=await WV.getElementRects({reference:lV,floating:J,strategy:UV}),{x:FV,y:NV}=computeCoordsFromPlacement(CV,RV,dV),gV=RV,eV={},JV=0;for(let nV=0;nV<IV.length;nV++){const{name:aV,fn:GV}=IV[nV],{x:cV,y:TV,data:iV,reset:tV}=await GV({x:FV,y:NV,initialPlacement:RV,placement:gV,strategy:UV,middlewareData:eV,rects:CV,platform:WV,elements:{reference:lV,floating:J}});FV=cV??FV,NV=TV??NV,eV={...eV,[aV]:{...eV[aV],...iV}},tV&&JV<=50&&(JV++,typeof tV=="object"&&(tV.placement&&(gV=tV.placement),tV.rects&&(CV=tV.rects===!0?await WV.getElementRects({reference:lV,floating:J,strategy:UV}):tV.rects),{x:FV,y:NV}=computeCoordsFromPlacement(CV,gV,dV)),nV=-1)}return{x:FV,y:NV,placement:gV,strategy:UV,middlewareData:eV}};async function detectOverflow(lV,J){var VV;J===void 0&&(J={});const{x:RV,y:UV,platform:ZV,rects:WV,elements:IV,strategy:dV}=lV,{boundary:CV="clippingAncestors",rootBoundary:FV="viewport",elementContext:NV="floating",altBoundary:gV=!1,padding:eV=0}=evaluate(J,lV),JV=getPaddingObject(eV),aV=IV[gV?NV==="floating"?"reference":"floating":NV],GV=rectToClientRect(await ZV.getClippingRect({element:(VV=await(ZV.isElement==null?void 0:ZV.isElement(aV)))==null||VV?aV:aV.contextElement||await(ZV.getDocumentElement==null?void 0:ZV.getDocumentElement(IV.floating)),boundary:CV,rootBoundary:FV,strategy:dV})),cV=NV==="floating"?{x:RV,y:UV,width:WV.floating.width,height:WV.floating.height}:WV.reference,TV=await(ZV.getOffsetParent==null?void 0:ZV.getOffsetParent(IV.floating)),iV=await(ZV.isElement==null?void 0:ZV.isElement(TV))?await(ZV.getScale==null?void 0:ZV.getScale(TV))||{x:1,y:1}:{x:1,y:1},tV=rectToClientRect(ZV.convertOffsetParentRelativeRectToViewportRelativeRect?await ZV.convertOffsetParentRelativeRectToViewportRelativeRect({elements:IV,rect:cV,offsetParent:TV,strategy:dV}):cV);return{top:(GV.top-tV.top+JV.top)/iV.y,bottom:(tV.bottom-GV.bottom+JV.bottom)/iV.y,left:(GV.left-tV.left+JV.left)/iV.x,right:(tV.right-GV.right+JV.right)/iV.x}}const arrow$3=lV=>({name:"arrow",options:lV,async fn(J){const{x:VV,y:RV,placement:UV,rects:ZV,platform:WV,elements:IV,middlewareData:dV}=J,{element:CV,padding:FV=0}=evaluate(lV,J)||{};if(CV==null)return{};const NV=getPaddingObject(FV),gV={x:VV,y:RV},eV=getAlignmentAxis(UV),JV=getAxisLength(eV),nV=await WV.getDimensions(CV),aV=eV==="y",GV=aV?"top":"left",cV=aV?"bottom":"right",TV=aV?"clientHeight":"clientWidth",iV=ZV.reference[JV]+ZV.reference[eV]-gV[eV]-ZV.floating[JV],tV=gV[eV]-ZV.reference[eV],MV=await(WV.getOffsetParent==null?void 0:WV.getOffsetParent(CV));let AV=MV?MV[TV]:0;(!AV||!await(WV.isElement==null?void 0:WV.isElement(MV)))&&(AV=IV.floating[TV]||ZV.floating[JV]);const pV=iV/2-tV/2,HV=AV/2-nV[JV]/2-1,oV=min(NV[GV],HV),DV=min(NV[cV],HV),wV=oV,qV=AV-nV[JV]-DV,Cl=AV/2-nV[JV]/2+pV,nl=clamp(wV,Cl,qV),Il=!dV.arrow&&getAlignment(UV)!=null&&Cl!==nl&&ZV.reference[JV]/2-(Cl<wV?oV:DV)-nV[JV]/2<0,LV=Il?Cl<wV?Cl-wV:Cl-qV:0;return{[eV]:gV[eV]+LV,data:{[eV]:nl,centerOffset:Cl-nl-LV,...Il&&{alignmentOffset:LV}},reset:Il}}}),flip$2=function(lV){return lV===void 0&&(lV={}),{name:"flip",options:lV,async fn(J){var VV,RV;const{placement:UV,middlewareData:ZV,rects:WV,initialPlacement:IV,platform:dV,elements:CV}=J,{mainAxis:FV=!0,crossAxis:NV=!0,fallbackPlacements:gV,fallbackStrategy:eV="bestFit",fallbackAxisSideDirection:JV="none",flipAlignment:nV=!0,...aV}=evaluate(lV,J);if((VV=ZV.arrow)!=null&&VV.alignmentOffset)return{};const GV=getSide(UV),cV=getSideAxis(IV),TV=getSide(IV)===IV,iV=await(dV.isRTL==null?void 0:dV.isRTL(CV.floating)),tV=gV||(TV||!nV?[getOppositePlacement(IV)]:getExpandedPlacements(IV)),MV=JV!=="none";!gV&&MV&&tV.push(...getOppositeAxisPlacements(IV,nV,JV,iV));const AV=[IV,...tV],pV=await detectOverflow(J,aV),HV=[];let oV=((RV=ZV.flip)==null?void 0:RV.overflows)||[];if(FV&&HV.push(pV[GV]),NV){const Cl=getAlignmentSides(UV,WV,iV);HV.push(pV[Cl[0]],pV[Cl[1]])}if(oV=[...oV,{placement:UV,overflows:HV}],!HV.every(Cl=>Cl<=0)){var DV,wV;const Cl=(((DV=ZV.flip)==null?void 0:DV.index)||0)+1,nl=AV[Cl];if(nl)return{data:{index:Cl,overflows:oV},reset:{placement:nl}};let Il=(wV=oV.filter(LV=>LV.overflows[0]<=0).sort((LV,OV)=>LV.overflows[1]-OV.overflows[1])[0])==null?void 0:wV.placement;if(!Il)switch(eV){case"bestFit":{var qV;const LV=(qV=oV.filter(OV=>{if(MV){const $V=getSideAxis(OV.placement);return $V===cV||$V==="y"}return!0}).map(OV=>[OV.placement,OV.overflows.filter($V=>$V>0).reduce(($V,dl)=>$V+dl,0)]).sort((OV,$V)=>OV[1]-$V[1])[0])==null?void 0:qV[0];LV&&(Il=LV);break}case"initialPlacement":Il=IV;break}if(UV!==Il)return{reset:{placement:Il}}}return{}}}};function getSideOffsets(lV,J){return{top:lV.top-J.height,right:lV.right-J.width,bottom:lV.bottom-J.height,left:lV.left-J.width}}function isAnySideFullyClipped(lV){return sides.some(J=>lV[J]>=0)}const hide$2=function(lV){return lV===void 0&&(lV={}),{name:"hide",options:lV,async fn(J){const{rects:VV}=J,{strategy:RV="referenceHidden",...UV}=evaluate(lV,J);switch(RV){case"referenceHidden":{const ZV=await detectOverflow(J,{...UV,elementContext:"reference"}),WV=getSideOffsets(ZV,VV.reference);return{data:{referenceHiddenOffsets:WV,referenceHidden:isAnySideFullyClipped(WV)}}}case"escaped":{const ZV=await detectOverflow(J,{...UV,altBoundary:!0}),WV=getSideOffsets(ZV,VV.floating);return{data:{escapedOffsets:WV,escaped:isAnySideFullyClipped(WV)}}}default:return{}}}}};async function convertValueToCoords(lV,J){const{placement:VV,platform:RV,elements:UV}=lV,ZV=await(RV.isRTL==null?void 0:RV.isRTL(UV.floating)),WV=getSide(VV),IV=getAlignment(VV),dV=getSideAxis(VV)==="y",CV=["left","top"].includes(WV)?-1:1,FV=ZV&&dV?-1:1,NV=evaluate(J,lV);let{mainAxis:gV,crossAxis:eV,alignmentAxis:JV}=typeof NV=="number"?{mainAxis:NV,crossAxis:0,alignmentAxis:null}:{mainAxis:NV.mainAxis||0,crossAxis:NV.crossAxis||0,alignmentAxis:NV.alignmentAxis};return IV&&typeof JV=="number"&&(eV=IV==="end"?JV*-1:JV),dV?{x:eV*FV,y:gV*CV}:{x:gV*CV,y:eV*FV}}const offset$2=function(lV){return lV===void 0&&(lV=0),{name:"offset",options:lV,async fn(J){var VV,RV;const{x:UV,y:ZV,placement:WV,middlewareData:IV}=J,dV=await convertValueToCoords(J,lV);return WV===((VV=IV.offset)==null?void 0:VV.placement)&&(RV=IV.arrow)!=null&&RV.alignmentOffset?{}:{x:UV+dV.x,y:ZV+dV.y,data:{...dV,placement:WV}}}}},shift$2=function(lV){return lV===void 0&&(lV={}),{name:"shift",options:lV,async fn(J){const{x:VV,y:RV,placement:UV}=J,{mainAxis:ZV=!0,crossAxis:WV=!1,limiter:IV={fn:aV=>{let{x:GV,y:cV}=aV;return{x:GV,y:cV}}},...dV}=evaluate(lV,J),CV={x:VV,y:RV},FV=await detectOverflow(J,dV),NV=getSideAxis(getSide(UV)),gV=getOppositeAxis(NV);let eV=CV[gV],JV=CV[NV];if(ZV){const aV=gV==="y"?"top":"left",GV=gV==="y"?"bottom":"right",cV=eV+FV[aV],TV=eV-FV[GV];eV=clamp(cV,eV,TV)}if(WV){const aV=NV==="y"?"top":"left",GV=NV==="y"?"bottom":"right",cV=JV+FV[aV],TV=JV-FV[GV];JV=clamp(cV,JV,TV)}const nV=IV.fn({...J,[gV]:eV,[NV]:JV});return{...nV,data:{x:nV.x-VV,y:nV.y-RV,enabled:{[gV]:ZV,[NV]:WV}}}}}},limitShift$2=function(lV){return lV===void 0&&(lV={}),{options:lV,fn(J){const{x:VV,y:RV,placement:UV,rects:ZV,middlewareData:WV}=J,{offset:IV=0,mainAxis:dV=!0,crossAxis:CV=!0}=evaluate(lV,J),FV={x:VV,y:RV},NV=getSideAxis(UV),gV=getOppositeAxis(NV);let eV=FV[gV],JV=FV[NV];const nV=evaluate(IV,J),aV=typeof nV=="number"?{mainAxis:nV,crossAxis:0}:{mainAxis:0,crossAxis:0,...nV};if(dV){const TV=gV==="y"?"height":"width",iV=ZV.reference[gV]-ZV.floating[TV]+aV.mainAxis,tV=ZV.reference[gV]+ZV.reference[TV]-aV.mainAxis;eV<iV?eV=iV:eV>tV&&(eV=tV)}if(CV){var GV,cV;const TV=gV==="y"?"width":"height",iV=["top","left"].includes(getSide(UV)),tV=ZV.reference[NV]-ZV.floating[TV]+(iV&&((GV=WV.offset)==null?void 0:GV[NV])||0)+(iV?0:aV.crossAxis),MV=ZV.reference[NV]+ZV.reference[TV]+(iV?0:((cV=WV.offset)==null?void 0:cV[NV])||0)-(iV?aV.crossAxis:0);JV<tV?JV=tV:JV>MV&&(JV=MV)}return{[gV]:eV,[NV]:JV}}}},size$2=function(lV){return lV===void 0&&(lV={}),{name:"size",options:lV,async fn(J){var VV,RV;const{placement:UV,rects:ZV,platform:WV,elements:IV}=J,{apply:dV=()=>{},...CV}=evaluate(lV,J),FV=await detectOverflow(J,CV),NV=getSide(UV),gV=getAlignment(UV),eV=getSideAxis(UV)==="y",{width:JV,height:nV}=ZV.floating;let aV,GV;NV==="top"||NV==="bottom"?(aV=NV,GV=gV===(await(WV.isRTL==null?void 0:WV.isRTL(IV.floating))?"start":"end")?"left":"right"):(GV=NV,aV=gV==="end"?"top":"bottom");const cV=nV-FV.top-FV.bottom,TV=JV-FV.left-FV.right,iV=min(nV-FV[aV],cV),tV=min(JV-FV[GV],TV),MV=!J.middlewareData.shift;let AV=iV,pV=tV;if((VV=J.middlewareData.shift)!=null&&VV.enabled.x&&(pV=TV),(RV=J.middlewareData.shift)!=null&&RV.enabled.y&&(AV=cV),MV&&!gV){const oV=max(FV.left,0),DV=max(FV.right,0),wV=max(FV.top,0),qV=max(FV.bottom,0);eV?pV=JV-2*(oV!==0||DV!==0?oV+DV:max(FV.left,FV.right)):AV=nV-2*(wV!==0||qV!==0?wV+qV:max(FV.top,FV.bottom))}await dV({...J,availableWidth:pV,availableHeight:AV});const HV=await WV.getDimensions(IV.floating);return JV!==HV.width||nV!==HV.height?{reset:{rects:!0}}:{}}}};function hasWindow(){return typeof window<"u"}function getNodeName(lV){return isNode(lV)?(lV.nodeName||"").toLowerCase():"#document"}function getWindow(lV){var J;return(lV==null||(J=lV.ownerDocument)==null?void 0:J.defaultView)||window}function getDocumentElement(lV){var J;return(J=(isNode(lV)?lV.ownerDocument:lV.document)||window.document)==null?void 0:J.documentElement}function isNode(lV){return hasWindow()?lV instanceof Node||lV instanceof getWindow(lV).Node:!1}function isElement(lV){return hasWindow()?lV instanceof Element||lV instanceof getWindow(lV).Element:!1}function isHTMLElement(lV){return hasWindow()?lV instanceof HTMLElement||lV instanceof getWindow(lV).HTMLElement:!1}function isShadowRoot(lV){return!hasWindow()||typeof ShadowRoot>"u"?!1:lV instanceof ShadowRoot||lV instanceof getWindow(lV).ShadowRoot}function isOverflowElement(lV){const{overflow:J,overflowX:VV,overflowY:RV,display:UV}=getComputedStyle$1(lV);return/auto|scroll|overlay|hidden|clip/.test(J+RV+VV)&&!["inline","contents"].includes(UV)}function isTableElement(lV){return["table","td","th"].includes(getNodeName(lV))}function isTopLayer(lV){return[":popover-open",":modal"].some(J=>{try{return lV.matches(J)}catch{return!1}})}function isContainingBlock(lV){const J=isWebKit(),VV=isElement(lV)?getComputedStyle$1(lV):lV;return VV.transform!=="none"||VV.perspective!=="none"||(VV.containerType?VV.containerType!=="normal":!1)||!J&&(VV.backdropFilter?VV.backdropFilter!=="none":!1)||!J&&(VV.filter?VV.filter!=="none":!1)||["transform","perspective","filter"].some(RV=>(VV.willChange||"").includes(RV))||["paint","layout","strict","content"].some(RV=>(VV.contain||"").includes(RV))}function getContainingBlock(lV){let J=getParentNode(lV);for(;isHTMLElement(J)&&!isLastTraversableNode(J);){if(isContainingBlock(J))return J;if(isTopLayer(J))return null;J=getParentNode(J)}return null}function isWebKit(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}function isLastTraversableNode(lV){return["html","body","#document"].includes(getNodeName(lV))}function getComputedStyle$1(lV){return getWindow(lV).getComputedStyle(lV)}function getNodeScroll(lV){return isElement(lV)?{scrollLeft:lV.scrollLeft,scrollTop:lV.scrollTop}:{scrollLeft:lV.scrollX,scrollTop:lV.scrollY}}function getParentNode(lV){if(getNodeName(lV)==="html")return lV;const J=lV.assignedSlot||lV.parentNode||isShadowRoot(lV)&&lV.host||getDocumentElement(lV);return isShadowRoot(J)?J.host:J}function getNearestOverflowAncestor(lV){const J=getParentNode(lV);return isLastTraversableNode(J)?lV.ownerDocument?lV.ownerDocument.body:lV.body:isHTMLElement(J)&&isOverflowElement(J)?J:getNearestOverflowAncestor(J)}function getOverflowAncestors(lV,J,VV){var RV;J===void 0&&(J=[]),VV===void 0&&(VV=!0);const UV=getNearestOverflowAncestor(lV),ZV=UV===((RV=lV.ownerDocument)==null?void 0:RV.body),WV=getWindow(UV);if(ZV){const IV=getFrameElement(WV);return J.concat(WV,WV.visualViewport||[],isOverflowElement(UV)?UV:[],IV&&VV?getOverflowAncestors(IV):[])}return J.concat(UV,getOverflowAncestors(UV,[],VV))}function getFrameElement(lV){return lV.parent&&Object.getPrototypeOf(lV.parent)?lV.frameElement:null}function getCssDimensions(lV){const J=getComputedStyle$1(lV);let VV=parseFloat(J.width)||0,RV=parseFloat(J.height)||0;const UV=isHTMLElement(lV),ZV=UV?lV.offsetWidth:VV,WV=UV?lV.offsetHeight:RV,IV=round(VV)!==ZV||round(RV)!==WV;return IV&&(VV=ZV,RV=WV),{width:VV,height:RV,$:IV}}function unwrapElement(lV){return isElement(lV)?lV:lV.contextElement}function getScale(lV){const J=unwrapElement(lV);if(!isHTMLElement(J))return createCoords(1);const VV=J.getBoundingClientRect(),{width:RV,height:UV,$:ZV}=getCssDimensions(J);let WV=(ZV?round(VV.width):VV.width)/RV,IV=(ZV?round(VV.height):VV.height)/UV;return(!WV||!Number.isFinite(WV))&&(WV=1),(!IV||!Number.isFinite(IV))&&(IV=1),{x:WV,y:IV}}const noOffsets=createCoords(0);function getVisualOffsets(lV){const J=getWindow(lV);return!isWebKit()||!J.visualViewport?noOffsets:{x:J.visualViewport.offsetLeft,y:J.visualViewport.offsetTop}}function shouldAddVisualOffsets(lV,J,VV){return J===void 0&&(J=!1),!VV||J&&VV!==getWindow(lV)?!1:J}function getBoundingClientRect(lV,J,VV,RV){J===void 0&&(J=!1),VV===void 0&&(VV=!1);const UV=lV.getBoundingClientRect(),ZV=unwrapElement(lV);let WV=createCoords(1);J&&(RV?isElement(RV)&&(WV=getScale(RV)):WV=getScale(lV));const IV=shouldAddVisualOffsets(ZV,VV,RV)?getVisualOffsets(ZV):createCoords(0);let dV=(UV.left+IV.x)/WV.x,CV=(UV.top+IV.y)/WV.y,FV=UV.width/WV.x,NV=UV.height/WV.y;if(ZV){const gV=getWindow(ZV),eV=RV&&isElement(RV)?getWindow(RV):RV;let JV=gV,nV=getFrameElement(JV);for(;nV&&RV&&eV!==JV;){const aV=getScale(nV),GV=nV.getBoundingClientRect(),cV=getComputedStyle$1(nV),TV=GV.left+(nV.clientLeft+parseFloat(cV.paddingLeft))*aV.x,iV=GV.top+(nV.clientTop+parseFloat(cV.paddingTop))*aV.y;dV*=aV.x,CV*=aV.y,FV*=aV.x,NV*=aV.y,dV+=TV,CV+=iV,JV=getWindow(nV),nV=getFrameElement(JV)}}return rectToClientRect({width:FV,height:NV,x:dV,y:CV})}function getWindowScrollBarX(lV,J){const VV=getNodeScroll(lV).scrollLeft;return J?J.left+VV:getBoundingClientRect(getDocumentElement(lV)).left+VV}function getHTMLOffset(lV,J,VV){VV===void 0&&(VV=!1);const RV=lV.getBoundingClientRect(),UV=RV.left+J.scrollLeft-(VV?0:getWindowScrollBarX(lV,RV)),ZV=RV.top+J.scrollTop;return{x:UV,y:ZV}}function convertOffsetParentRelativeRectToViewportRelativeRect(lV){let{elements:J,rect:VV,offsetParent:RV,strategy:UV}=lV;const ZV=UV==="fixed",WV=getDocumentElement(RV),IV=J?isTopLayer(J.floating):!1;if(RV===WV||IV&&ZV)return VV;let dV={scrollLeft:0,scrollTop:0},CV=createCoords(1);const FV=createCoords(0),NV=isHTMLElement(RV);if((NV||!NV&&!ZV)&&((getNodeName(RV)!=="body"||isOverflowElement(WV))&&(dV=getNodeScroll(RV)),isHTMLElement(RV))){const eV=getBoundingClientRect(RV);CV=getScale(RV),FV.x=eV.x+RV.clientLeft,FV.y=eV.y+RV.clientTop}const gV=WV&&!NV&&!ZV?getHTMLOffset(WV,dV,!0):createCoords(0);return{width:VV.width*CV.x,height:VV.height*CV.y,x:VV.x*CV.x-dV.scrollLeft*CV.x+FV.x+gV.x,y:VV.y*CV.y-dV.scrollTop*CV.y+FV.y+gV.y}}function getClientRects(lV){return Array.from(lV.getClientRects())}function getDocumentRect(lV){const J=getDocumentElement(lV),VV=getNodeScroll(lV),RV=lV.ownerDocument.body,UV=max(J.scrollWidth,J.clientWidth,RV.scrollWidth,RV.clientWidth),ZV=max(J.scrollHeight,J.clientHeight,RV.scrollHeight,RV.clientHeight);let WV=-VV.scrollLeft+getWindowScrollBarX(lV);const IV=-VV.scrollTop;return getComputedStyle$1(RV).direction==="rtl"&&(WV+=max(J.clientWidth,RV.clientWidth)-UV),{width:UV,height:ZV,x:WV,y:IV}}function getViewportRect(lV,J){const VV=getWindow(lV),RV=getDocumentElement(lV),UV=VV.visualViewport;let ZV=RV.clientWidth,WV=RV.clientHeight,IV=0,dV=0;if(UV){ZV=UV.width,WV=UV.height;const CV=isWebKit();(!CV||CV&&J==="fixed")&&(IV=UV.offsetLeft,dV=UV.offsetTop)}return{width:ZV,height:WV,x:IV,y:dV}}function getInnerBoundingClientRect(lV,J){const VV=getBoundingClientRect(lV,!0,J==="fixed"),RV=VV.top+lV.clientTop,UV=VV.left+lV.clientLeft,ZV=isHTMLElement(lV)?getScale(lV):createCoords(1),WV=lV.clientWidth*ZV.x,IV=lV.clientHeight*ZV.y,dV=UV*ZV.x,CV=RV*ZV.y;return{width:WV,height:IV,x:dV,y:CV}}function getClientRectFromClippingAncestor(lV,J,VV){let RV;if(J==="viewport")RV=getViewportRect(lV,VV);else if(J==="document")RV=getDocumentRect(getDocumentElement(lV));else if(isElement(J))RV=getInnerBoundingClientRect(J,VV);else{const UV=getVisualOffsets(lV);RV={x:J.x-UV.x,y:J.y-UV.y,width:J.width,height:J.height}}return rectToClientRect(RV)}function hasFixedPositionAncestor(lV,J){const VV=getParentNode(lV);return VV===J||!isElement(VV)||isLastTraversableNode(VV)?!1:getComputedStyle$1(VV).position==="fixed"||hasFixedPositionAncestor(VV,J)}function getClippingElementAncestors(lV,J){const VV=J.get(lV);if(VV)return VV;let RV=getOverflowAncestors(lV,[],!1).filter(IV=>isElement(IV)&&getNodeName(IV)!=="body"),UV=null;const ZV=getComputedStyle$1(lV).position==="fixed";let WV=ZV?getParentNode(lV):lV;for(;isElement(WV)&&!isLastTraversableNode(WV);){const IV=getComputedStyle$1(WV),dV=isContainingBlock(WV);!dV&&IV.position==="fixed"&&(UV=null),(ZV?!dV&&!UV:!dV&&IV.position==="static"&&!!UV&&["absolute","fixed"].includes(UV.position)||isOverflowElement(WV)&&!dV&&hasFixedPositionAncestor(lV,WV))?RV=RV.filter(FV=>FV!==WV):UV=IV,WV=getParentNode(WV)}return J.set(lV,RV),RV}function getClippingRect(lV){let{element:J,boundary:VV,rootBoundary:RV,strategy:UV}=lV;const WV=[...VV==="clippingAncestors"?isTopLayer(J)?[]:getClippingElementAncestors(J,this._c):[].concat(VV),RV],IV=WV[0],dV=WV.reduce((CV,FV)=>{const NV=getClientRectFromClippingAncestor(J,FV,UV);return CV.top=max(NV.top,CV.top),CV.right=min(NV.right,CV.right),CV.bottom=min(NV.bottom,CV.bottom),CV.left=max(NV.left,CV.left),CV},getClientRectFromClippingAncestor(J,IV,UV));return{width:dV.right-dV.left,height:dV.bottom-dV.top,x:dV.left,y:dV.top}}function getDimensions(lV){const{width:J,height:VV}=getCssDimensions(lV);return{width:J,height:VV}}function getRectRelativeToOffsetParent(lV,J,VV){const RV=isHTMLElement(J),UV=getDocumentElement(J),ZV=VV==="fixed",WV=getBoundingClientRect(lV,!0,ZV,J);let IV={scrollLeft:0,scrollTop:0};const dV=createCoords(0);if(RV||!RV&&!ZV)if((getNodeName(J)!=="body"||isOverflowElement(UV))&&(IV=getNodeScroll(J)),RV){const gV=getBoundingClientRect(J,!0,ZV,J);dV.x=gV.x+J.clientLeft,dV.y=gV.y+J.clientTop}else UV&&(dV.x=getWindowScrollBarX(UV));const CV=UV&&!RV&&!ZV?getHTMLOffset(UV,IV):createCoords(0),FV=WV.left+IV.scrollLeft-dV.x-CV.x,NV=WV.top+IV.scrollTop-dV.y-CV.y;return{x:FV,y:NV,width:WV.width,height:WV.height}}function isStaticPositioned(lV){return getComputedStyle$1(lV).position==="static"}function getTrueOffsetParent(lV,J){if(!isHTMLElement(lV)||getComputedStyle$1(lV).position==="fixed")return null;if(J)return J(lV);let VV=lV.offsetParent;return getDocumentElement(lV)===VV&&(VV=VV.ownerDocument.body),VV}function getOffsetParent(lV,J){const VV=getWindow(lV);if(isTopLayer(lV))return VV;if(!isHTMLElement(lV)){let UV=getParentNode(lV);for(;UV&&!isLastTraversableNode(UV);){if(isElement(UV)&&!isStaticPositioned(UV))return UV;UV=getParentNode(UV)}return VV}let RV=getTrueOffsetParent(lV,J);for(;RV&&isTableElement(RV)&&isStaticPositioned(RV);)RV=getTrueOffsetParent(RV,J);return RV&&isLastTraversableNode(RV)&&isStaticPositioned(RV)&&!isContainingBlock(RV)?VV:RV||getContainingBlock(lV)||VV}const getElementRects=async function(lV){const J=this.getOffsetParent||getOffsetParent,VV=this.getDimensions,RV=await VV(lV.floating);return{reference:getRectRelativeToOffsetParent(lV.reference,await J(lV.floating),lV.strategy),floating:{x:0,y:0,width:RV.width,height:RV.height}}};function isRTL(lV){return getComputedStyle$1(lV).direction==="rtl"}const platform={convertOffsetParentRelativeRectToViewportRelativeRect,getDocumentElement,getClippingRect,getOffsetParent,getElementRects,getClientRects,getDimensions,getScale,isElement,isRTL};function observeMove(lV,J){let VV=null,RV;const UV=getDocumentElement(lV);function ZV(){var IV;clearTimeout(RV),(IV=VV)==null||IV.disconnect(),VV=null}function WV(IV,dV){IV===void 0&&(IV=!1),dV===void 0&&(dV=1),ZV();const{left:CV,top:FV,width:NV,height:gV}=lV.getBoundingClientRect();if(IV||J(),!NV||!gV)return;const eV=floor(FV),JV=floor(UV.clientWidth-(CV+NV)),nV=floor(UV.clientHeight-(FV+gV)),aV=floor(CV),cV={rootMargin:-eV+"px "+-JV+"px "+-nV+"px "+-aV+"px",threshold:max(0,min(1,dV))||1};let TV=!0;function iV(tV){const MV=tV[0].intersectionRatio;if(MV!==dV){if(!TV)return WV();MV?WV(!1,MV):RV=setTimeout(()=>{WV(!1,1e-7)},1e3)}TV=!1}try{VV=new IntersectionObserver(iV,{...cV,root:UV.ownerDocument})}catch{VV=new IntersectionObserver(iV,cV)}VV.observe(lV)}return WV(!0),ZV}function autoUpdate(lV,J,VV,RV){RV===void 0&&(RV={});const{ancestorScroll:UV=!0,ancestorResize:ZV=!0,elementResize:WV=typeof ResizeObserver=="function",layoutShift:IV=typeof IntersectionObserver=="function",animationFrame:dV=!1}=RV,CV=unwrapElement(lV),FV=UV||ZV?[...CV?getOverflowAncestors(CV):[],...getOverflowAncestors(J)]:[];FV.forEach(GV=>{UV&&GV.addEventListener("scroll",VV,{passive:!0}),ZV&&GV.addEventListener("resize",VV)});const NV=CV&&IV?observeMove(CV,VV):null;let gV=-1,eV=null;WV&&(eV=new ResizeObserver(GV=>{let[cV]=GV;cV&&cV.target===CV&&eV&&(eV.unobserve(J),cancelAnimationFrame(gV),gV=requestAnimationFrame(()=>{var TV;(TV=eV)==null||TV.observe(J)})),VV()}),CV&&!dV&&eV.observe(CV),eV.observe(J));let JV,nV=dV?getBoundingClientRect(lV):null;dV&&aV();function aV(){const GV=getBoundingClientRect(lV);nV&&(GV.x!==nV.x||GV.y!==nV.y||GV.width!==nV.width||GV.height!==nV.height)&&VV(),nV=GV,JV=requestAnimationFrame(aV)}return VV(),()=>{var GV;FV.forEach(cV=>{UV&&cV.removeEventListener("scroll",VV),ZV&&cV.removeEventListener("resize",VV)}),NV==null||NV(),(GV=eV)==null||GV.disconnect(),eV=null,dV&&cancelAnimationFrame(JV)}}const offset$1=offset$2,shift$1=shift$2,flip$1=flip$2,size$1=size$2,hide$1=hide$2,arrow$2=arrow$3,limitShift$1=limitShift$2,computePosition=(lV,J,VV)=>{const RV=new Map,UV={platform,...VV},ZV={...UV.platform,_c:RV};return computePosition$1(lV,J,{...UV,platform:ZV})};var index=typeof document<"u"?reactExports.useLayoutEffect:reactExports.useEffect;function deepEqual(lV,J){if(lV===J)return!0;if(typeof lV!=typeof J)return!1;if(typeof lV=="function"&&lV.toString()===J.toString())return!0;let VV,RV,UV;if(lV&&J&&typeof lV=="object"){if(Array.isArray(lV)){if(VV=lV.length,VV!==J.length)return!1;for(RV=VV;RV--!==0;)if(!deepEqual(lV[RV],J[RV]))return!1;return!0}if(UV=Object.keys(lV),VV=UV.length,VV!==Object.keys(J).length)return!1;for(RV=VV;RV--!==0;)if(!{}.hasOwnProperty.call(J,UV[RV]))return!1;for(RV=VV;RV--!==0;){const ZV=UV[RV];if(!(ZV==="_owner"&&lV.$$typeof)&&!deepEqual(lV[ZV],J[ZV]))return!1}return!0}return lV!==lV&&J!==J}function getDPR(lV){return typeof window>"u"?1:(lV.ownerDocument.defaultView||window).devicePixelRatio||1}function roundByDPR(lV,J){const VV=getDPR(lV);return Math.round(J*VV)/VV}function useLatestRef(lV){const J=reactExports.useRef(lV);return index(()=>{J.current=lV}),J}function useFloating(lV){lV===void 0&&(lV={});const{placement:J="bottom",strategy:VV="absolute",middleware:RV=[],platform:UV,elements:{reference:ZV,floating:WV}={},transform:IV=!0,whileElementsMounted:dV,open:CV}=lV,[FV,NV]=reactExports.useState({x:0,y:0,strategy:VV,placement:J,middlewareData:{},isPositioned:!1}),[gV,eV]=reactExports.useState(RV);deepEqual(gV,RV)||eV(RV);const[JV,nV]=reactExports.useState(null),[aV,GV]=reactExports.useState(null),cV=reactExports.useCallback(OV=>{OV!==MV.current&&(MV.current=OV,nV(OV))},[]),TV=reactExports.useCallback(OV=>{OV!==AV.current&&(AV.current=OV,GV(OV))},[]),iV=ZV||JV,tV=WV||aV,MV=reactExports.useRef(null),AV=reactExports.useRef(null),pV=reactExports.useRef(FV),HV=dV!=null,oV=useLatestRef(dV),DV=useLatestRef(UV),wV=useLatestRef(CV),qV=reactExports.useCallback(()=>{if(!MV.current||!AV.current)return;const OV={placement:J,strategy:VV,middleware:gV};DV.current&&(OV.platform=DV.current),computePosition(MV.current,AV.current,OV).then($V=>{const dl={...$V,isPositioned:wV.current!==!1};Cl.current&&!deepEqual(pV.current,dl)&&(pV.current=dl,reactDomExports.flushSync(()=>{NV(dl)}))})},[gV,J,VV,DV,wV]);index(()=>{CV===!1&&pV.current.isPositioned&&(pV.current.isPositioned=!1,NV(OV=>({...OV,isPositioned:!1})))},[CV]);const Cl=reactExports.useRef(!1);index(()=>(Cl.current=!0,()=>{Cl.current=!1}),[]),index(()=>{if(iV&&(MV.current=iV),tV&&(AV.current=tV),iV&&tV){if(oV.current)return oV.current(iV,tV,qV);qV()}},[iV,tV,qV,oV,HV]);const nl=reactExports.useMemo(()=>({reference:MV,floating:AV,setReference:cV,setFloating:TV}),[cV,TV]),Il=reactExports.useMemo(()=>({reference:iV,floating:tV}),[iV,tV]),LV=reactExports.useMemo(()=>{const OV={position:VV,left:0,top:0};if(!Il.floating)return OV;const $V=roundByDPR(Il.floating,FV.x),dl=roundByDPR(Il.floating,FV.y);return IV?{...OV,transform:"translate("+$V+"px, "+dl+"px)",...getDPR(Il.floating)>=1.5&&{willChange:"transform"}}:{position:VV,left:$V,top:dl}},[VV,IV,Il.floating,FV.x,FV.y]);return reactExports.useMemo(()=>({...FV,update:qV,refs:nl,elements:Il,floatingStyles:LV}),[FV,qV,nl,Il,LV])}const arrow$1=lV=>{function J(VV){return{}.hasOwnProperty.call(VV,"current")}return{name:"arrow",options:lV,fn(VV){const{element:RV,padding:UV}=typeof lV=="function"?lV(VV):lV;return RV&&J(RV)?RV.current!=null?arrow$2({element:RV.current,padding:UV}).fn(VV):{}:RV?arrow$2({element:RV,padding:UV}).fn(VV):{}}}},offset=(lV,J)=>({...offset$1(lV),options:[lV,J]}),shift=(lV,J)=>({...shift$1(lV),options:[lV,J]}),limitShift=(lV,J)=>({...limitShift$1(lV),options:[lV,J]}),flip=(lV,J)=>({...flip$1(lV),options:[lV,J]}),size=(lV,J)=>({...size$1(lV),options:[lV,J]}),hide=(lV,J)=>({...hide$1(lV),options:[lV,J]}),arrow=(lV,J)=>({...arrow$1(lV),options:[lV,J]});var NAME="Arrow",Arrow$1=reactExports.forwardRef((lV,J)=>{const{children:VV,width:RV=10,height:UV=5,...ZV}=lV;return jsxRuntimeExports.jsx(Primitive.svg,{...ZV,ref:J,width:RV,height:UV,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:lV.asChild?VV:jsxRuntimeExports.jsx("polygon",{points:"0,0 30,0 15,10"})})});Arrow$1.displayName=NAME;var Root=Arrow$1;function createContextScope(lV,J=[]){let VV=[];function RV(ZV,WV){const IV=reactExports.createContext(WV),dV=VV.length;VV=[...VV,WV];function CV(NV){const{scope:gV,children:eV,...JV}=NV,nV=(gV==null?void 0:gV[lV][dV])||IV,aV=reactExports.useMemo(()=>JV,Object.values(JV));return jsxRuntimeExports.jsx(nV.Provider,{value:aV,children:eV})}function FV(NV,gV){const eV=(gV==null?void 0:gV[lV][dV])||IV,JV=reactExports.useContext(eV);if(JV)return JV;if(WV!==void 0)return WV;throw new Error(`\`${NV}\` must be used within \`${ZV}\``)}return CV.displayName=ZV+"Provider",[CV,FV]}const UV=()=>{const ZV=VV.map(WV=>reactExports.createContext(WV));return function(IV){const dV=(IV==null?void 0:IV[lV])||ZV;return reactExports.useMemo(()=>({[`__scope${lV}`]:{...IV,[lV]:dV}}),[IV,dV])}};return UV.scopeName=lV,[RV,composeContextScopes(UV,...J)]}function composeContextScopes(...lV){const J=lV[0];if(lV.length===1)return J;const VV=()=>{const RV=lV.map(UV=>({useScope:UV(),scopeName:UV.scopeName}));return function(ZV){const WV=RV.reduce((IV,{useScope:dV,scopeName:CV})=>{const NV=dV(ZV)[`__scope${CV}`];return{...IV,...NV}},{});return reactExports.useMemo(()=>({[`__scope${J.scopeName}`]:WV}),[WV])}};return VV.scopeName=J.scopeName,VV}function useSize(lV){const[J,VV]=reactExports.useState(void 0);return useLayoutEffect2(()=>{if(lV){VV({width:lV.offsetWidth,height:lV.offsetHeight});const RV=new ResizeObserver(UV=>{if(!Array.isArray(UV)||!UV.length)return;const ZV=UV[0];let WV,IV;if("borderBoxSize"in ZV){const dV=ZV.borderBoxSize,CV=Array.isArray(dV)?dV[0]:dV;WV=CV.inlineSize,IV=CV.blockSize}else WV=lV.offsetWidth,IV=lV.offsetHeight;VV({width:WV,height:IV})});return RV.observe(lV,{box:"border-box"}),()=>RV.unobserve(lV)}else VV(void 0)},[lV]),J}var POPPER_NAME="Popper",[createPopperContext,createPopperScope]=createContextScope(POPPER_NAME),[PopperProvider,usePopperContext]=createPopperContext(POPPER_NAME),Popper=lV=>{const{__scopePopper:J,children:VV}=lV,[RV,UV]=reactExports.useState(null);return jsxRuntimeExports.jsx(PopperProvider,{scope:J,anchor:RV,onAnchorChange:UV,children:VV})};Popper.displayName=POPPER_NAME;var ANCHOR_NAME$1="PopperAnchor",PopperAnchor=reactExports.forwardRef((lV,J)=>{const{__scopePopper:VV,virtualRef:RV,...UV}=lV,ZV=usePopperContext(ANCHOR_NAME$1,VV),WV=reactExports.useRef(null),IV=useComposedRefs(J,WV);return reactExports.useEffect(()=>{ZV.onAnchorChange((RV==null?void 0:RV.current)||WV.current)}),RV?null:jsxRuntimeExports.jsx(Primitive.div,{...UV,ref:IV})});PopperAnchor.displayName=ANCHOR_NAME$1;var CONTENT_NAME$2="PopperContent",[PopperContentProvider,useContentContext]=createPopperContext(CONTENT_NAME$2),PopperContent=reactExports.forwardRef((lV,J)=>{var jl,Ll,ol,Tl,kl,ul;const{__scopePopper:VV,side:RV="bottom",sideOffset:UV=0,align:ZV="center",alignOffset:WV=0,arrowPadding:IV=0,avoidCollisions:dV=!0,collisionBoundary:CV=[],collisionPadding:FV=0,sticky:NV="partial",hideWhenDetached:gV=!1,updatePositionStrategy:eV="optimized",onPlaced:JV,...nV}=lV,aV=usePopperContext(CONTENT_NAME$2,VV),[GV,cV]=reactExports.useState(null),TV=useComposedRefs(J,UR=>cV(UR)),[iV,tV]=reactExports.useState(null),MV=useSize(iV),AV=(MV==null?void 0:MV.width)??0,pV=(MV==null?void 0:MV.height)??0,HV=RV+(ZV!=="center"?"-"+ZV:""),oV=typeof FV=="number"?FV:{top:0,right:0,bottom:0,left:0,...FV},DV=Array.isArray(CV)?CV:[CV],wV=DV.length>0,qV={padding:oV,boundary:DV.filter(isNotNull),altBoundary:wV},{refs:Cl,floatingStyles:nl,placement:Il,isPositioned:LV,middlewareData:OV}=useFloating({strategy:"fixed",placement:HV,whileElementsMounted:(...UR)=>autoUpdate(...UR,{animationFrame:eV==="always"}),elements:{reference:aV.anchor},middleware:[offset({mainAxis:UV+pV,alignmentAxis:WV}),dV&&shift({mainAxis:!0,crossAxis:!1,limiter:NV==="partial"?limitShift():void 0,...qV}),dV&&flip({...qV}),size({...qV,apply:({elements:UR,rects:JR,availableWidth:FR,availableHeight:QR})=>{const{width:hR,height:MR}=JR.reference,mR=UR.floating.style;mR.setProperty("--radix-popper-available-width",`${FR}px`),mR.setProperty("--radix-popper-available-height",`${QR}px`),mR.setProperty("--radix-popper-anchor-width",`${hR}px`),mR.setProperty("--radix-popper-anchor-height",`${MR}px`)}}),iV&&arrow({element:iV,padding:IV}),transformOrigin({arrowWidth:AV,arrowHeight:pV}),gV&&hide({strategy:"referenceHidden",...qV})]}),[$V,dl]=getSideAndAlignFromPlacement(Il),Wl=useCallbackRef$1(JV);useLayoutEffect2(()=>{LV&&(Wl==null||Wl())},[LV,Wl]);const el=(jl=OV.arrow)==null?void 0:jl.x,pl=(Ll=OV.arrow)==null?void 0:Ll.y,ml=((ol=OV.arrow)==null?void 0:ol.centerOffset)!==0,[Bl,xl]=reactExports.useState();return useLayoutEffect2(()=>{GV&&xl(window.getComputedStyle(GV).zIndex)},[GV]),jsxRuntimeExports.jsx("div",{ref:Cl.setFloating,"data-radix-popper-content-wrapper":"",style:{...nl,transform:LV?nl.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:Bl,"--radix-popper-transform-origin":[(Tl=OV.transformOrigin)==null?void 0:Tl.x,(kl=OV.transformOrigin)==null?void 0:kl.y].join(" "),...((ul=OV.hide)==null?void 0:ul.referenceHidden)&&{visibility:"hidden",pointerEvents:"none"}},dir:lV.dir,children:jsxRuntimeExports.jsx(PopperContentProvider,{scope:VV,placedSide:$V,onArrowChange:tV,arrowX:el,arrowY:pl,shouldHideArrow:ml,children:jsxRuntimeExports.jsx(Primitive.div,{"data-side":$V,"data-align":dl,...nV,ref:TV,style:{...nV.style,animation:LV?void 0:"none"}})})})});PopperContent.displayName=CONTENT_NAME$2;var ARROW_NAME$2="PopperArrow",OPPOSITE_SIDE={top:"bottom",right:"left",bottom:"top",left:"right"},PopperArrow=reactExports.forwardRef(function lV(J,VV){const{__scopePopper:RV,...UV}=J,ZV=useContentContext(ARROW_NAME$2,RV),WV=OPPOSITE_SIDE[ZV.placedSide];return jsxRuntimeExports.jsx("span",{ref:ZV.onArrowChange,style:{position:"absolute",left:ZV.arrowX,top:ZV.arrowY,[WV]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[ZV.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[ZV.placedSide],visibility:ZV.shouldHideArrow?"hidden":void 0},children:jsxRuntimeExports.jsx(Root,{...UV,ref:VV,style:{...UV.style,display:"block"}})})});PopperArrow.displayName=ARROW_NAME$2;function isNotNull(lV){return lV!==null}var transformOrigin=lV=>({name:"transformOrigin",options:lV,fn(J){var aV,GV,cV;const{placement:VV,rects:RV,middlewareData:UV}=J,WV=((aV=UV.arrow)==null?void 0:aV.centerOffset)!==0,IV=WV?0:lV.arrowWidth,dV=WV?0:lV.arrowHeight,[CV,FV]=getSideAndAlignFromPlacement(VV),NV={start:"0%",center:"50%",end:"100%"}[FV],gV=(((GV=UV.arrow)==null?void 0:GV.x)??0)+IV/2,eV=(((cV=UV.arrow)==null?void 0:cV.y)??0)+dV/2;let JV="",nV="";return CV==="bottom"?(JV=WV?NV:`${gV}px`,nV=`${-dV}px`):CV==="top"?(JV=WV?NV:`${gV}px`,nV=`${RV.floating.height+dV}px`):CV==="right"?(JV=`${-dV}px`,nV=WV?NV:`${eV}px`):CV==="left"&&(JV=`${RV.floating.width+dV}px`,nV=WV?NV:`${eV}px`),{data:{x:JV,y:nV}}}});function getSideAndAlignFromPlacement(lV){const[J,VV="center"]=lV.split("-");return[J,VV]}var Root2$1=Popper,Anchor=PopperAnchor,Content=PopperContent,Arrow=PopperArrow,PORTAL_NAME$2="Portal",Portal$1=reactExports.forwardRef((lV,J)=>{var IV;const{container:VV,...RV}=lV,[UV,ZV]=reactExports.useState(!1);useLayoutEffect2(()=>ZV(!0),[]);const WV=VV||UV&&((IV=globalThis==null?void 0:globalThis.document)==null?void 0:IV.body);return WV?ReactDOM.createPortal(jsxRuntimeExports.jsx(Primitive.div,{...RV,ref:J}),WV):null});Portal$1.displayName=PORTAL_NAME$2;var getDefaultParent=function(lV){if(typeof document>"u")return null;var J=Array.isArray(lV)?lV[0]:lV;return J.ownerDocument.body},counterMap=new WeakMap,uncontrolledNodes=new WeakMap,markerMap={},lockCount=0,unwrapHost=function(lV){return lV&&(lV.host||unwrapHost(lV.parentNode))},correctTargets=function(lV,J){return J.map(function(VV){if(lV.contains(VV))return VV;var RV=unwrapHost(VV);return RV&&lV.contains(RV)?RV:(console.error("aria-hidden",VV,"in not contained inside",lV,". Doing nothing"),null)}).filter(function(VV){return!!VV})},applyAttributeToOthers=function(lV,J,VV,RV){var UV=correctTargets(J,Array.isArray(lV)?lV:[lV]);markerMap[VV]||(markerMap[VV]=new WeakMap);var ZV=markerMap[VV],WV=[],IV=new Set,dV=new Set(UV),CV=function(NV){!NV||IV.has(NV)||(IV.add(NV),CV(NV.parentNode))};UV.forEach(CV);var FV=function(NV){!NV||dV.has(NV)||Array.prototype.forEach.call(NV.children,function(gV){if(IV.has(gV))FV(gV);else try{var eV=gV.getAttribute(RV),JV=eV!==null&&eV!=="false",nV=(counterMap.get(gV)||0)+1,aV=(ZV.get(gV)||0)+1;counterMap.set(gV,nV),ZV.set(gV,aV),WV.push(gV),nV===1&&JV&&uncontrolledNodes.set(gV,!0),aV===1&&gV.setAttribute(VV,"true"),JV||gV.setAttribute(RV,"true")}catch(GV){console.error("aria-hidden: cannot operate on ",gV,GV)}})};return FV(J),IV.clear(),lockCount++,function(){WV.forEach(function(NV){var gV=counterMap.get(NV)-1,eV=ZV.get(NV)-1;counterMap.set(NV,gV),ZV.set(NV,eV),gV||(uncontrolledNodes.has(NV)||NV.removeAttribute(RV),uncontrolledNodes.delete(NV)),eV||NV.removeAttribute(VV)}),lockCount--,lockCount||(counterMap=new WeakMap,counterMap=new WeakMap,uncontrolledNodes=new WeakMap,markerMap={})}},hideOthers=function(lV,J,VV){VV===void 0&&(VV="data-aria-hidden");var RV=Array.from(Array.isArray(lV)?lV:[lV]),UV=getDefaultParent(lV);return UV?(RV.push.apply(RV,Array.from(UV.querySelectorAll("[aria-live]"))),applyAttributeToOthers(RV,UV,VV,"aria-hidden")):function(){return null}},__assign=function(){return __assign=Object.assign||function(J){for(var VV,RV=1,UV=arguments.length;RV<UV;RV++){VV=arguments[RV];for(var ZV in VV)Object.prototype.hasOwnProperty.call(VV,ZV)&&(J[ZV]=VV[ZV])}return J},__assign.apply(this,arguments)};function __rest(lV,J){var VV={};for(var RV in lV)Object.prototype.hasOwnProperty.call(lV,RV)&&J.indexOf(RV)<0&&(VV[RV]=lV[RV]);if(lV!=null&&typeof Object.getOwnPropertySymbols=="function")for(var UV=0,RV=Object.getOwnPropertySymbols(lV);UV<RV.length;UV++)J.indexOf(RV[UV])<0&&Object.prototype.propertyIsEnumerable.call(lV,RV[UV])&&(VV[RV[UV]]=lV[RV[UV]]);return VV}function __spreadArray(lV,J,VV){if(VV||arguments.length===2)for(var RV=0,UV=J.length,ZV;RV<UV;RV++)(ZV||!(RV in J))&&(ZV||(ZV=Array.prototype.slice.call(J,0,RV)),ZV[RV]=J[RV]);return lV.concat(ZV||Array.prototype.slice.call(J))}typeof SuppressedError=="function"&&SuppressedError;var zeroRightClassName="right-scroll-bar-position",fullWidthClassName="width-before-scroll-bar",noScrollbarsClassName="with-scroll-bars-hidden",removedBarSizeVariable="--removed-body-scroll-bar-size";function assignRef(lV,J){return typeof lV=="function"?lV(J):lV&&(lV.current=J),lV}function useCallbackRef(lV,J){var VV=reactExports.useState(function(){return{value:lV,callback:J,facade:{get current(){return VV.value},set current(RV){var UV=VV.value;UV!==RV&&(VV.value=RV,VV.callback(RV,UV))}}}})[0];return VV.callback=J,VV.facade}var useIsomorphicLayoutEffect=typeof window<"u"?reactExports.useLayoutEffect:reactExports.useEffect,currentValues=new WeakMap;function useMergeRefs(lV,J){var VV=useCallbackRef(null,function(RV){return lV.forEach(function(UV){return assignRef(UV,RV)})});return useIsomorphicLayoutEffect(function(){var RV=currentValues.get(VV);if(RV){var UV=new Set(RV),ZV=new Set(lV),WV=VV.current;UV.forEach(function(IV){ZV.has(IV)||assignRef(IV,null)}),ZV.forEach(function(IV){UV.has(IV)||assignRef(IV,WV)})}currentValues.set(VV,lV)},[lV]),VV}function ItoI(lV){return lV}function innerCreateMedium(lV,J){J===void 0&&(J=ItoI);var VV=[],RV=!1,UV={read:function(){if(RV)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return VV.length?VV[VV.length-1]:lV},useMedium:function(ZV){var WV=J(ZV,RV);return VV.push(WV),function(){VV=VV.filter(function(IV){return IV!==WV})}},assignSyncMedium:function(ZV){for(RV=!0;VV.length;){var WV=VV;VV=[],WV.forEach(ZV)}VV={push:function(IV){return ZV(IV)},filter:function(){return VV}}},assignMedium:function(ZV){RV=!0;var WV=[];if(VV.length){var IV=VV;VV=[],IV.forEach(ZV),WV=VV}var dV=function(){var FV=WV;WV=[],FV.forEach(ZV)},CV=function(){return Promise.resolve().then(dV)};CV(),VV={push:function(FV){WV.push(FV),CV()},filter:function(FV){return WV=WV.filter(FV),VV}}}};return UV}function createSidecarMedium(lV){lV===void 0&&(lV={});var J=innerCreateMedium(null);return J.options=__assign({async:!0,ssr:!1},lV),J}var SideCar$1=function(lV){var J=lV.sideCar,VV=__rest(lV,["sideCar"]);if(!J)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var RV=J.read();if(!RV)throw new Error("Sidecar medium not found");return reactExports.createElement(RV,__assign({},VV))};SideCar$1.isSideCarExport=!0;function exportSidecar(lV,J){return lV.useMedium(J),SideCar$1}var effectCar=createSidecarMedium(),nothing=function(){},RemoveScroll=reactExports.forwardRef(function(lV,J){var VV=reactExports.useRef(null),RV=reactExports.useState({onScrollCapture:nothing,onWheelCapture:nothing,onTouchMoveCapture:nothing}),UV=RV[0],ZV=RV[1],WV=lV.forwardProps,IV=lV.children,dV=lV.className,CV=lV.removeScrollBar,FV=lV.enabled,NV=lV.shards,gV=lV.sideCar,eV=lV.noIsolation,JV=lV.inert,nV=lV.allowPinchZoom,aV=lV.as,GV=aV===void 0?"div":aV,cV=lV.gapMode,TV=__rest(lV,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noIsolation","inert","allowPinchZoom","as","gapMode"]),iV=gV,tV=useMergeRefs([VV,J]),MV=__assign(__assign({},TV),UV);return reactExports.createElement(reactExports.Fragment,null,FV&&reactExports.createElement(iV,{sideCar:effectCar,removeScrollBar:CV,shards:NV,noIsolation:eV,inert:JV,setCallbacks:ZV,allowPinchZoom:!!nV,lockRef:VV,gapMode:cV}),WV?reactExports.cloneElement(reactExports.Children.only(IV),__assign(__assign({},MV),{ref:tV})):reactExports.createElement(GV,__assign({},MV,{className:dV,ref:tV}),IV))});RemoveScroll.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},RemoveScroll.classNames={fullWidth:fullWidthClassName,zeroRight:zeroRightClassName};var getNonce=function(){if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function makeStyleTag(){if(!document)return null;var lV=document.createElement("style");lV.type="text/css";var J=getNonce();return J&&lV.setAttribute("nonce",J),lV}function injectStyles(lV,J){lV.styleSheet?lV.styleSheet.cssText=J:lV.appendChild(document.createTextNode(J))}function insertStyleTag(lV){var J=document.head||document.getElementsByTagName("head")[0];J.appendChild(lV)}var stylesheetSingleton=function(){var lV=0,J=null;return{add:function(VV){lV==0&&(J=makeStyleTag())&&(injectStyles(J,VV),insertStyleTag(J)),lV++},remove:function(){lV--,!lV&&J&&(J.parentNode&&J.parentNode.removeChild(J),J=null)}}},styleHookSingleton=function(){var lV=stylesheetSingleton();return function(J,VV){reactExports.useEffect(function(){return lV.add(J),function(){lV.remove()}},[J&&VV])}},styleSingleton=function(){var lV=styleHookSingleton(),J=function(VV){var RV=VV.styles,UV=VV.dynamic;return lV(RV,UV),null};return J},zeroGap={left:0,top:0,right:0,gap:0},parse=function(lV){return parseInt(lV||"",10)||0},getOffset=function(lV){var J=window.getComputedStyle(document.body),VV=J[lV==="padding"?"paddingLeft":"marginLeft"],RV=J[lV==="padding"?"paddingTop":"marginTop"],UV=J[lV==="padding"?"paddingRight":"marginRight"];return[parse(VV),parse(RV),parse(UV)]},getGapWidth=function(lV){if(lV===void 0&&(lV="margin"),typeof window>"u")return zeroGap;var J=getOffset(lV),VV=document.documentElement.clientWidth,RV=window.innerWidth;return{left:J[0],top:J[1],right:J[2],gap:Math.max(0,RV-VV+J[2]-J[0])}},Style=styleSingleton(),lockAttribute="data-scroll-locked",getStyles=function(lV,J,VV,RV){var UV=lV.left,ZV=lV.top,WV=lV.right,IV=lV.gap;return VV===void 0&&(VV="margin"),`
|
|
22238
|
+
`,UV.appendChild(TV)}})}};ZV();const WV=new MutationObserver(ZV);return WV.observe(UV,{childList:!0,subtree:!1,characterData:!1}),()=>{WV.disconnect()}},[lV,VV,J,RV])},SchematicViewer=({circuitJson:lV,containerStyle:J,editEvents:VV=[],onEditEvent:RV,defaultEditMode:UV=!1,debugGrid:ZV=!1,editingEnabled:WV=!1,debug:IV=!1})=>{IV&&enableDebug$1();const[dV,CV]=reactExports.useState(UV),FV=reactExports.useRef(null),{ref:NV,cancelDrag:gV,transform:eV}=distExports.useMouseMatrixTransform({onSetTransform(MV){FV.current&&(FV.current.style.transform=toString(MV))}}),{containerWidth:JV,containerHeight:nV}=useResizeHandling$1(NV),aV=reactExports.useMemo(()=>!JV||!nV?"":convertCircuitJsonToSchematicSvg(lV,{width:JV,height:nV||720,grid:ZV?{cellSize:1,labelCells:!0}:void 0}),[lV,JV,nV]),GV=reactExports.useMemo(()=>{var AV;if(!aV)return identity$4();const MV=(AV=aV.match(/data-real-to-screen-transform="([^"]+)"/))==null?void 0:AV[1];try{return fromString(MV)}catch(pV){return console.error(pV),identity$4()}},[aV]),{handleMouseDown:cV,isDragging:TV,activeEditEvent:iV}=useComponentDragging({onEditEvent:RV,cancelDrag:gV,realToSvgProjection:GV,svgToScreenProjection:eV,circuitJson:lV,editEvents:VV,enabled:dV});useChangeSchematicComponentLocationsInSvg({svgDivRef:FV,editEvents:VV,realToSvgProjection:GV,svgToScreenProjection:eV,activeEditEvent:iV}),useChangeSchematicTracesForMovedComponents({svgDivRef:FV,circuitJson:lV,activeEditEvent:iV,editEvents:VV});const tV=reactExports.useMemo(()=>jsxRuntimeExports.jsx("div",{ref:FV,style:{pointerEvents:"auto",transformOrigin:"0 0"},dangerouslySetInnerHTML:{__html:aV}}),[aV]);return jsxRuntimeExports.jsxs("div",{ref:NV,style:{position:"relative",backgroundColor:"#F5F1ED",overflow:"hidden",cursor:TV?"grabbing":"grab",minHeight:"300px",...J},onMouseDown:cV,children:[WV&&jsxRuntimeExports.jsx(EditIcon,{active:dV,onClick:()=>CV(!dV)}),tV]})},useResizeHandling=lV=>{const[J,VV]=reactExports.useState(0),[RV,UV]=reactExports.useState(0);return reactExports.useEffect(()=>{if(!lV.current)return;const ZV=()=>{var dV;const IV=(dV=lV.current)==null?void 0:dV.getBoundingClientRect();VV((IV==null?void 0:IV.width)||0),UV((IV==null?void 0:IV.height)||0)};ZV();const WV=new ResizeObserver(ZV);return WV.observe(lV.current),window.addEventListener("resize",ZV),()=>{WV.disconnect(),window.removeEventListener("resize",ZV)}},[]),{containerWidth:J,containerHeight:RV}};Debug$1("assembly-viewer");var enableDebug=()=>{Debug$1.enable("assembly-viewer*")},AssemblyViewer=({circuitJson:lV,containerStyle:J,debugGrid:VV=!1,debug:RV=!1})=>{RV&&enableDebug();const UV=reactExports.useRef(null),{ref:ZV,cancelDrag:WV,transform:IV}=distExports.useMouseMatrixTransform({onSetTransform(gV){UV.current&&(UV.current.style.transform=toString(gV))}}),{containerWidth:dV,containerHeight:CV}=useResizeHandling(ZV),FV=reactExports.useMemo(()=>!dV||!CV?"":convertCircuitJsonToAssemblySvg(lV,{width:dV,height:CV||720}),[lV,dV,CV]);reactExports.useMemo(()=>{var eV;if(!FV)return identity$4();const gV=(eV=FV.match(/data-real-to-screen-transform="([^"]+)"/))==null?void 0:eV[1];try{return fromString(gV)}catch(JV){return console.error(JV),identity$4()}},[FV]);const NV=reactExports.useMemo(()=>jsxRuntimeExports.jsx("div",{ref:UV,style:{pointerEvents:"auto",transformOrigin:"0 0"},dangerouslySetInnerHTML:{__html:FV}}),[FV]);return jsxRuntimeExports.jsx("div",{ref:ZV,style:{position:"relative",backgroundColor:"#F5F1ED",overflow:"hidden",minHeight:"300px",...J},children:NV})};const PreviewEmptyState=({onRunClicked:lV})=>jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-3 bg-gray-100 text-center justify-center py-10",children:["No circuit json loaded",lV&&jsxRuntimeExports.jsxs(Button,{className:"bg-blue-600 hover:bg-blue-500",onClick:lV,children:["Run Code",jsxRuntimeExports.jsx(Play,{className:"w-3 h-3 ml-2"})]})]}),ClickableText=({text:lV,onClick:J})=>jsxRuntimeExports.jsx("span",{className:"cursor-pointer underline text-blue-300 mx-2",onClick:J,children:lV}),HeaderCell=lV=>{var J;return jsxRuntimeExports.jsxs("div",{className:"leading-5",children:[jsxRuntimeExports.jsx("div",{className:"py-2 font-bold",children:lV.column.name}),jsxRuntimeExports.jsx("div",{children:((J=lV.field)==null?void 0:J.call(lV))??jsxRuntimeExports.jsx("input",{type:"text",className:"border rounded p-1 w-full",onChange:VV=>{var RV;(RV=lV.onTextChange)==null||RV.call(lV,VV.target.value)}})})]})},Modal=({open:lV,children:J,title:VV,onClose:RV})=>lV?jsxRuntimeExports.jsx("div",{className:"fixed inset-0 bg-black bg-opacity-50 flex justify-center items-center z-50",onClick:RV,children:jsxRuntimeExports.jsxs("div",{className:"bg-white p-5 rounded-lg relative w-11/12 max-w-2xl",onClick:UV=>{UV.preventDefault(),UV.stopPropagation()},children:[jsxRuntimeExports.jsx("h2",{className:"mt-0 text-xl",children:VV}),jsxRuntimeExports.jsx("button",{className:"absolute top-4 right-4 text-2xl font-bold",onClick:RV,children:"×"}),J]})}):null,CircuitJsonTableViewer=({elements:lV})=>{const[J,VV]=reactExports.useState({open:!1}),[RV,UV]=reactExports.useReducer((FV,NV)=>({...FV,...NV}),{}),ZV=[...new Set(lV.map(FV=>FV.type))],WV=lV.map(FV=>{const NV=FV[`${FV.type}_id`],gV=Object.fromEntries(Object.entries(FV).filter(([JV])=>!(JV===`${FV.type}_id`||!JV.endsWith("_id")))),eV=Object.fromEntries(Object.entries(FV).filter(([JV])=>!JV.endsWith("_id")));return{primary_id:NV,other_ids:gV,...eV,_og_elm:FV}}),IV=WV.map(FV=>{let NV="";const gV=eV=>{const JV=Object.keys(eV.other_ids).find(GV=>GV.startsWith("source_"));if(!JV)return`.${eV.name}`;const nV=JV.slice(0,-3),aV=WV.find(GV=>GV.type===nV&&GV.primary_id===eV.other_ids[JV]);return aV?"name"in aV?`${gV(aV)} > .${eV.name}`:`#${aV.primary_id} > .${eV.name}`:`??? > .${eV.name}`};return"name"in FV&&(NV=gV(FV)),{...FV,selector_path:NV}}),dV=[{key:"primary_id",name:"primary_id",renderCell:FV=>jsxRuntimeExports.jsxs("div",{className:"flex items-center",children:[jsxRuntimeExports.jsx(ClickableText,{text:FV.primary_id,onClick:()=>UV({focused_id:FV.primary_id,id_search:void 0,selector_search:void 0})}),jsxRuntimeExports.jsx("span",{className:"flex-grow"}),jsxRuntimeExports.jsx(ClickableText,{text:"(JSON)",onClick:()=>VV({open:!0,element:FV._og_elm,title:FV.primary_id})})]}),renderHeaderCell:FV=>jsxRuntimeExports.jsx(HeaderCell,{column:FV,onTextChange:NV=>UV({id_search:NV}),field:RV.focused_id?()=>jsxRuntimeExports.jsxs("div",{children:["Focus:"," ",jsxRuntimeExports.jsx("span",{className:"underline",children:RV.focused_id}),jsxRuntimeExports.jsx(ClickableText,{text:"(unfocus)",onClick:()=>UV({focused_id:void 0})})]}):void 0})},{key:"type",name:"type",renderHeaderCell:FV=>jsxRuntimeExports.jsx(HeaderCell,{column:FV,field:()=>jsxRuntimeExports.jsxs("select",{onChange:NV=>UV({component_type_filter:NV.target.value}),className:"border rounded p-1 w-full",children:[jsxRuntimeExports.jsx("option",{value:"any",children:"any"},"any"),jsxRuntimeExports.jsx("option",{value:"source",children:"source"},"source"),jsxRuntimeExports.jsx("option",{value:"source/pcb",children:"source/pcb"},"source/pcb"),jsxRuntimeExports.jsx("option",{value:"source/schematic",children:"source/schematic"},"source/schematic"),ZV.map(NV=>jsxRuntimeExports.jsx("option",{value:NV,children:NV},NV))]})})},{key:"name",name:"name",renderHeaderCell:FV=>jsxRuntimeExports.jsx(HeaderCell,{column:FV,onTextChange:NV=>UV({name_search:NV})})},{key:"selector_path",name:"selector_path",renderHeaderCell:FV=>jsxRuntimeExports.jsx(HeaderCell,{column:FV,onTextChange:NV=>UV({selector_search:NV})})},{key:"other_ids",name:"other_ids",renderCell:FV=>jsxRuntimeExports.jsx("div",{className:"space-x-2",children:Object.entries(FV.other_ids).map(([NV,gV])=>jsxRuntimeExports.jsx(ClickableText,{text:gV,onClick:()=>UV({focused_id:gV})},gV))})}],CV=IV.filter(FV=>{var NV,gV;return RV.name_search?(gV=(NV=FV.name)==null?void 0:NV.toLowerCase())==null?void 0:gV.includes(RV.name_search.toLowerCase()):!0}).filter(FV=>{var NV;return!RV.component_type_filter||RV.component_type_filter==="any"?!0:RV.component_type_filter==="source"?FV.type.startsWith("source_"):RV.component_type_filter==="source/pcb"?FV.type.startsWith("source_")||FV.type.startsWith("pcb_"):RV.component_type_filter==="source/schematic"?FV.type.startsWith("source_")||FV.type.startsWith("schematic_"):(NV=FV.type)==null?void 0:NV.includes(RV.component_type_filter)}).filter(FV=>RV.selector_search?RV.selector_search.split(" ").filter(gV=>gV.length>0).every(gV=>{var eV;return(eV=FV.selector_path)==null?void 0:eV.includes(gV)}):!0).filter(FV=>{var NV;return RV.id_search?(NV=FV.primary_id)==null?void 0:NV.includes(RV.id_search):!0}).filter(FV=>!!(!RV.focused_id||FV.primary_id===RV.focused_id||Object.values(FV.other_ids).includes(RV.focused_id)));return jsxRuntimeExports.jsxs("div",{className:"font-mono text-xs",children:[jsxRuntimeExports.jsx("div",{className:"overflow-x-auto",children:jsxRuntimeExports.jsxs("table",{className:"table-auto w-full text-left",children:[jsxRuntimeExports.jsx("thead",{children:jsxRuntimeExports.jsx("tr",{children:dV.map(FV=>jsxRuntimeExports.jsx("th",{className:"px-4 py-2 border-b",children:FV.renderHeaderCell?FV.renderHeaderCell(FV):FV.name},FV.key))})}),jsxRuntimeExports.jsx("tbody",{children:CV.map((FV,NV)=>jsxRuntimeExports.jsx("tr",{className:"hover:bg-gray-100",children:dV.map(gV=>jsxRuntimeExports.jsx("td",{className:"px-4 py-2 border-b",children:gV.renderCell?gV.renderCell(FV):FV[gV.key]},gV.key))},NV))})]})}),jsxRuntimeExports.jsx(Modal,{open:J.open,onClose:()=>VV({open:!1}),title:J.open?J.title:"",children:jsxRuntimeExports.jsx("div",{className:"bg-gray-800 p-3 text-white rounded",children:jsxRuntimeExports.jsx("pre",{className:"whitespace-pre-wrap",children:J.open?JSON.stringify(J.element,null,2):""})})})]})},linkify=(lV,J)=>lV==="jlcpcb"?jsxRuntimeExports.jsx("a",{className:"underline text-blue-500",target:"_blank",rel:"noreferrer",href:`https://jlcpcb.com/partdetail/${J}`,children:J}):J,BomTable=({circuitJson:lV})=>{const J=lV.filter(RV=>RV.type==="source_component"),VV=new Set;for(const RV of J)if(RV.supplier_part_numbers)for(const UV of Object.keys(RV.supplier_part_numbers))VV.add(UV);return jsxRuntimeExports.jsx("div",{className:"overflow-x-auto",children:jsxRuntimeExports.jsxs("table",{className:"w-full text-left text-sm",children:[jsxRuntimeExports.jsx("thead",{children:jsxRuntimeExports.jsxs("tr",{className:"border-b",children:[jsxRuntimeExports.jsx("th",{className:"p-2",children:"Name"}),Array.from(VV).map(RV=>jsxRuntimeExports.jsx("th",{className:"p-2 capitalize",children:RV},RV))]})}),jsxRuntimeExports.jsx("tbody",{children:J.map(RV=>jsxRuntimeExports.jsxs("tr",{className:"border-b",children:[jsxRuntimeExports.jsx("td",{className:"p-2",children:RV.name}),Array.from(VV).map(UV=>{var ZV,WV;return jsxRuntimeExports.jsx("td",{className:"p-2",children:linkify(UV,((WV=(ZV=RV.supplier_part_numbers)==null?void 0:ZV[UV])==null?void 0:WV[0])||"")},UV)})]},RV.source_component_id))})]})})};function useEscapeKeydown(lV,J=globalThis==null?void 0:globalThis.document){const VV=useCallbackRef$1(lV);reactExports.useEffect(()=>{const RV=UV=>{UV.key==="Escape"&&VV(UV)};return J.addEventListener("keydown",RV,{capture:!0}),()=>J.removeEventListener("keydown",RV,{capture:!0})},[VV,J])}var DISMISSABLE_LAYER_NAME="DismissableLayer",CONTEXT_UPDATE="dismissableLayer.update",POINTER_DOWN_OUTSIDE="dismissableLayer.pointerDownOutside",FOCUS_OUTSIDE="dismissableLayer.focusOutside",originalBodyPointerEvents,DismissableLayerContext=reactExports.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),DismissableLayer=reactExports.forwardRef((lV,J)=>{const{disableOutsidePointerEvents:VV=!1,onEscapeKeyDown:RV,onPointerDownOutside:UV,onFocusOutside:ZV,onInteractOutside:WV,onDismiss:IV,...dV}=lV,CV=reactExports.useContext(DismissableLayerContext),[FV,NV]=reactExports.useState(null),gV=(FV==null?void 0:FV.ownerDocument)??(globalThis==null?void 0:globalThis.document),[,eV]=reactExports.useState({}),JV=useComposedRefs(J,AV=>NV(AV)),nV=Array.from(CV.layers),[aV]=[...CV.layersWithOutsidePointerEventsDisabled].slice(-1),GV=nV.indexOf(aV),cV=FV?nV.indexOf(FV):-1,TV=CV.layersWithOutsidePointerEventsDisabled.size>0,iV=cV>=GV,tV=usePointerDownOutside(AV=>{const pV=AV.target,HV=[...CV.branches].some(oV=>oV.contains(pV));!iV||HV||(UV==null||UV(AV),WV==null||WV(AV),AV.defaultPrevented||IV==null||IV())},gV),MV=useFocusOutside(AV=>{const pV=AV.target;[...CV.branches].some(oV=>oV.contains(pV))||(ZV==null||ZV(AV),WV==null||WV(AV),AV.defaultPrevented||IV==null||IV())},gV);return useEscapeKeydown(AV=>{cV===CV.layers.size-1&&(RV==null||RV(AV),!AV.defaultPrevented&&IV&&(AV.preventDefault(),IV()))},gV),reactExports.useEffect(()=>{if(FV)return VV&&(CV.layersWithOutsidePointerEventsDisabled.size===0&&(originalBodyPointerEvents=gV.body.style.pointerEvents,gV.body.style.pointerEvents="none"),CV.layersWithOutsidePointerEventsDisabled.add(FV)),CV.layers.add(FV),dispatchUpdate(),()=>{VV&&CV.layersWithOutsidePointerEventsDisabled.size===1&&(gV.body.style.pointerEvents=originalBodyPointerEvents)}},[FV,gV,VV,CV]),reactExports.useEffect(()=>()=>{FV&&(CV.layers.delete(FV),CV.layersWithOutsidePointerEventsDisabled.delete(FV),dispatchUpdate())},[FV,CV]),reactExports.useEffect(()=>{const AV=()=>eV({});return document.addEventListener(CONTEXT_UPDATE,AV),()=>document.removeEventListener(CONTEXT_UPDATE,AV)},[]),jsxRuntimeExports.jsx(Primitive.div,{...dV,ref:JV,style:{pointerEvents:TV?iV?"auto":"none":void 0,...lV.style},onFocusCapture:composeEventHandlers(lV.onFocusCapture,MV.onFocusCapture),onBlurCapture:composeEventHandlers(lV.onBlurCapture,MV.onBlurCapture),onPointerDownCapture:composeEventHandlers(lV.onPointerDownCapture,tV.onPointerDownCapture)})});DismissableLayer.displayName=DISMISSABLE_LAYER_NAME;var BRANCH_NAME="DismissableLayerBranch",DismissableLayerBranch=reactExports.forwardRef((lV,J)=>{const VV=reactExports.useContext(DismissableLayerContext),RV=reactExports.useRef(null),UV=useComposedRefs(J,RV);return reactExports.useEffect(()=>{const ZV=RV.current;if(ZV)return VV.branches.add(ZV),()=>{VV.branches.delete(ZV)}},[VV.branches]),jsxRuntimeExports.jsx(Primitive.div,{...lV,ref:UV})});DismissableLayerBranch.displayName=BRANCH_NAME;function usePointerDownOutside(lV,J=globalThis==null?void 0:globalThis.document){const VV=useCallbackRef$1(lV),RV=reactExports.useRef(!1),UV=reactExports.useRef(()=>{});return reactExports.useEffect(()=>{const ZV=IV=>{if(IV.target&&!RV.current){let dV=function(){handleAndDispatchCustomEvent(POINTER_DOWN_OUTSIDE,VV,CV,{discrete:!0})};const CV={originalEvent:IV};IV.pointerType==="touch"?(J.removeEventListener("click",UV.current),UV.current=dV,J.addEventListener("click",UV.current,{once:!0})):dV()}else J.removeEventListener("click",UV.current);RV.current=!1},WV=window.setTimeout(()=>{J.addEventListener("pointerdown",ZV)},0);return()=>{window.clearTimeout(WV),J.removeEventListener("pointerdown",ZV),J.removeEventListener("click",UV.current)}},[J,VV]),{onPointerDownCapture:()=>RV.current=!0}}function useFocusOutside(lV,J=globalThis==null?void 0:globalThis.document){const VV=useCallbackRef$1(lV),RV=reactExports.useRef(!1);return reactExports.useEffect(()=>{const UV=ZV=>{ZV.target&&!RV.current&&handleAndDispatchCustomEvent(FOCUS_OUTSIDE,VV,{originalEvent:ZV},{discrete:!1})};return J.addEventListener("focusin",UV),()=>J.removeEventListener("focusin",UV)},[J,VV]),{onFocusCapture:()=>RV.current=!0,onBlurCapture:()=>RV.current=!1}}function dispatchUpdate(){const lV=new CustomEvent(CONTEXT_UPDATE);document.dispatchEvent(lV)}function handleAndDispatchCustomEvent(lV,J,VV,{discrete:RV}){const UV=VV.originalEvent.target,ZV=new CustomEvent(lV,{bubbles:!1,cancelable:!0,detail:VV});J&&UV.addEventListener(lV,J,{once:!0}),RV?dispatchDiscreteCustomEvent(UV,ZV):UV.dispatchEvent(ZV)}var count=0;function useFocusGuards(){reactExports.useEffect(()=>{const lV=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",lV[0]??createFocusGuard()),document.body.insertAdjacentElement("beforeend",lV[1]??createFocusGuard()),count++,()=>{count===1&&document.querySelectorAll("[data-radix-focus-guard]").forEach(J=>J.remove()),count--}},[])}function createFocusGuard(){const lV=document.createElement("span");return lV.setAttribute("data-radix-focus-guard",""),lV.tabIndex=0,lV.style.outline="none",lV.style.opacity="0",lV.style.position="fixed",lV.style.pointerEvents="none",lV}var AUTOFOCUS_ON_MOUNT="focusScope.autoFocusOnMount",AUTOFOCUS_ON_UNMOUNT="focusScope.autoFocusOnUnmount",EVENT_OPTIONS={bubbles:!1,cancelable:!0},FOCUS_SCOPE_NAME="FocusScope",FocusScope=reactExports.forwardRef((lV,J)=>{const{loop:VV=!1,trapped:RV=!1,onMountAutoFocus:UV,onUnmountAutoFocus:ZV,...WV}=lV,[IV,dV]=reactExports.useState(null),CV=useCallbackRef$1(UV),FV=useCallbackRef$1(ZV),NV=reactExports.useRef(null),gV=useComposedRefs(J,nV=>dV(nV)),eV=reactExports.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;reactExports.useEffect(()=>{if(RV){let nV=function(TV){if(eV.paused||!IV)return;const iV=TV.target;IV.contains(iV)?NV.current=iV:focus(NV.current,{select:!0})},aV=function(TV){if(eV.paused||!IV)return;const iV=TV.relatedTarget;iV!==null&&(IV.contains(iV)||focus(NV.current,{select:!0}))},GV=function(TV){if(document.activeElement===document.body)for(const tV of TV)tV.removedNodes.length>0&&focus(IV)};document.addEventListener("focusin",nV),document.addEventListener("focusout",aV);const cV=new MutationObserver(GV);return IV&&cV.observe(IV,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",nV),document.removeEventListener("focusout",aV),cV.disconnect()}}},[RV,IV,eV.paused]),reactExports.useEffect(()=>{if(IV){focusScopesStack.add(eV);const nV=document.activeElement;if(!IV.contains(nV)){const GV=new CustomEvent(AUTOFOCUS_ON_MOUNT,EVENT_OPTIONS);IV.addEventListener(AUTOFOCUS_ON_MOUNT,CV),IV.dispatchEvent(GV),GV.defaultPrevented||(focusFirst$1(removeLinks(getTabbableCandidates(IV)),{select:!0}),document.activeElement===nV&&focus(IV))}return()=>{IV.removeEventListener(AUTOFOCUS_ON_MOUNT,CV),setTimeout(()=>{const GV=new CustomEvent(AUTOFOCUS_ON_UNMOUNT,EVENT_OPTIONS);IV.addEventListener(AUTOFOCUS_ON_UNMOUNT,FV),IV.dispatchEvent(GV),GV.defaultPrevented||focus(nV??document.body,{select:!0}),IV.removeEventListener(AUTOFOCUS_ON_UNMOUNT,FV),focusScopesStack.remove(eV)},0)}}},[IV,CV,FV,eV]);const JV=reactExports.useCallback(nV=>{if(!VV&&!RV||eV.paused)return;const aV=nV.key==="Tab"&&!nV.altKey&&!nV.ctrlKey&&!nV.metaKey,GV=document.activeElement;if(aV&&GV){const cV=nV.currentTarget,[TV,iV]=getTabbableEdges(cV);TV&&iV?!nV.shiftKey&&GV===iV?(nV.preventDefault(),VV&&focus(TV,{select:!0})):nV.shiftKey&&GV===TV&&(nV.preventDefault(),VV&&focus(iV,{select:!0})):GV===cV&&nV.preventDefault()}},[VV,RV,eV.paused]);return jsxRuntimeExports.jsx(Primitive.div,{tabIndex:-1,...WV,ref:gV,onKeyDown:JV})});FocusScope.displayName=FOCUS_SCOPE_NAME;function focusFirst$1(lV,{select:J=!1}={}){const VV=document.activeElement;for(const RV of lV)if(focus(RV,{select:J}),document.activeElement!==VV)return}function getTabbableEdges(lV){const J=getTabbableCandidates(lV),VV=findVisible(J,lV),RV=findVisible(J.reverse(),lV);return[VV,RV]}function getTabbableCandidates(lV){const J=[],VV=document.createTreeWalker(lV,NodeFilter.SHOW_ELEMENT,{acceptNode:RV=>{const UV=RV.tagName==="INPUT"&&RV.type==="hidden";return RV.disabled||RV.hidden||UV?NodeFilter.FILTER_SKIP:RV.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;VV.nextNode();)J.push(VV.currentNode);return J}function findVisible(lV,J){for(const VV of lV)if(!isHidden(VV,{upTo:J}))return VV}function isHidden(lV,{upTo:J}){if(getComputedStyle(lV).visibility==="hidden")return!0;for(;lV;){if(J!==void 0&&lV===J)return!1;if(getComputedStyle(lV).display==="none")return!0;lV=lV.parentElement}return!1}function isSelectableInput(lV){return lV instanceof HTMLInputElement&&"select"in lV}function focus(lV,{select:J=!1}={}){if(lV&&lV.focus){const VV=document.activeElement;lV.focus({preventScroll:!0}),lV!==VV&&isSelectableInput(lV)&&J&&lV.select()}}var focusScopesStack=createFocusScopesStack();function createFocusScopesStack(){let lV=[];return{add(J){const VV=lV[0];J!==VV&&(VV==null||VV.pause()),lV=arrayRemove(lV,J),lV.unshift(J)},remove(J){var VV;lV=arrayRemove(lV,J),(VV=lV[0])==null||VV.resume()}}}function arrayRemove(lV,J){const VV=[...lV],RV=VV.indexOf(J);return RV!==-1&&VV.splice(RV,1),VV}function removeLinks(lV){return lV.filter(J=>J.tagName!=="A")}const sides=["top","right","bottom","left"],min=Math.min,max=Math.max,round=Math.round,floor=Math.floor,createCoords=lV=>({x:lV,y:lV}),oppositeSideMap={left:"right",right:"left",bottom:"top",top:"bottom"},oppositeAlignmentMap={start:"end",end:"start"};function clamp(lV,J,VV){return max(lV,min(J,VV))}function evaluate(lV,J){return typeof lV=="function"?lV(J):lV}function getSide(lV){return lV.split("-")[0]}function getAlignment(lV){return lV.split("-")[1]}function getOppositeAxis(lV){return lV==="x"?"y":"x"}function getAxisLength(lV){return lV==="y"?"height":"width"}function getSideAxis(lV){return["top","bottom"].includes(getSide(lV))?"y":"x"}function getAlignmentAxis(lV){return getOppositeAxis(getSideAxis(lV))}function getAlignmentSides(lV,J,VV){VV===void 0&&(VV=!1);const RV=getAlignment(lV),UV=getAlignmentAxis(lV),ZV=getAxisLength(UV);let WV=UV==="x"?RV===(VV?"end":"start")?"right":"left":RV==="start"?"bottom":"top";return J.reference[ZV]>J.floating[ZV]&&(WV=getOppositePlacement(WV)),[WV,getOppositePlacement(WV)]}function getExpandedPlacements(lV){const J=getOppositePlacement(lV);return[getOppositeAlignmentPlacement(lV),J,getOppositeAlignmentPlacement(J)]}function getOppositeAlignmentPlacement(lV){return lV.replace(/start|end/g,J=>oppositeAlignmentMap[J])}function getSideList(lV,J,VV){const RV=["left","right"],UV=["right","left"],ZV=["top","bottom"],WV=["bottom","top"];switch(lV){case"top":case"bottom":return VV?J?UV:RV:J?RV:UV;case"left":case"right":return J?ZV:WV;default:return[]}}function getOppositeAxisPlacements(lV,J,VV,RV){const UV=getAlignment(lV);let ZV=getSideList(getSide(lV),VV==="start",RV);return UV&&(ZV=ZV.map(WV=>WV+"-"+UV),J&&(ZV=ZV.concat(ZV.map(getOppositeAlignmentPlacement)))),ZV}function getOppositePlacement(lV){return lV.replace(/left|right|bottom|top/g,J=>oppositeSideMap[J])}function expandPaddingObject(lV){return{top:0,right:0,bottom:0,left:0,...lV}}function getPaddingObject(lV){return typeof lV!="number"?expandPaddingObject(lV):{top:lV,right:lV,bottom:lV,left:lV}}function rectToClientRect(lV){const{x:J,y:VV,width:RV,height:UV}=lV;return{width:RV,height:UV,top:VV,left:J,right:J+RV,bottom:VV+UV,x:J,y:VV}}function computeCoordsFromPlacement(lV,J,VV){let{reference:RV,floating:UV}=lV;const ZV=getSideAxis(J),WV=getAlignmentAxis(J),IV=getAxisLength(WV),dV=getSide(J),CV=ZV==="y",FV=RV.x+RV.width/2-UV.width/2,NV=RV.y+RV.height/2-UV.height/2,gV=RV[IV]/2-UV[IV]/2;let eV;switch(dV){case"top":eV={x:FV,y:RV.y-UV.height};break;case"bottom":eV={x:FV,y:RV.y+RV.height};break;case"right":eV={x:RV.x+RV.width,y:NV};break;case"left":eV={x:RV.x-UV.width,y:NV};break;default:eV={x:RV.x,y:RV.y}}switch(getAlignment(J)){case"start":eV[WV]-=gV*(VV&&CV?-1:1);break;case"end":eV[WV]+=gV*(VV&&CV?-1:1);break}return eV}const computePosition$1=async(lV,J,VV)=>{const{placement:RV="bottom",strategy:UV="absolute",middleware:ZV=[],platform:WV}=VV,IV=ZV.filter(Boolean),dV=await(WV.isRTL==null?void 0:WV.isRTL(J));let CV=await WV.getElementRects({reference:lV,floating:J,strategy:UV}),{x:FV,y:NV}=computeCoordsFromPlacement(CV,RV,dV),gV=RV,eV={},JV=0;for(let nV=0;nV<IV.length;nV++){const{name:aV,fn:GV}=IV[nV],{x:cV,y:TV,data:iV,reset:tV}=await GV({x:FV,y:NV,initialPlacement:RV,placement:gV,strategy:UV,middlewareData:eV,rects:CV,platform:WV,elements:{reference:lV,floating:J}});FV=cV??FV,NV=TV??NV,eV={...eV,[aV]:{...eV[aV],...iV}},tV&&JV<=50&&(JV++,typeof tV=="object"&&(tV.placement&&(gV=tV.placement),tV.rects&&(CV=tV.rects===!0?await WV.getElementRects({reference:lV,floating:J,strategy:UV}):tV.rects),{x:FV,y:NV}=computeCoordsFromPlacement(CV,gV,dV)),nV=-1)}return{x:FV,y:NV,placement:gV,strategy:UV,middlewareData:eV}};async function detectOverflow(lV,J){var VV;J===void 0&&(J={});const{x:RV,y:UV,platform:ZV,rects:WV,elements:IV,strategy:dV}=lV,{boundary:CV="clippingAncestors",rootBoundary:FV="viewport",elementContext:NV="floating",altBoundary:gV=!1,padding:eV=0}=evaluate(J,lV),JV=getPaddingObject(eV),aV=IV[gV?NV==="floating"?"reference":"floating":NV],GV=rectToClientRect(await ZV.getClippingRect({element:(VV=await(ZV.isElement==null?void 0:ZV.isElement(aV)))==null||VV?aV:aV.contextElement||await(ZV.getDocumentElement==null?void 0:ZV.getDocumentElement(IV.floating)),boundary:CV,rootBoundary:FV,strategy:dV})),cV=NV==="floating"?{x:RV,y:UV,width:WV.floating.width,height:WV.floating.height}:WV.reference,TV=await(ZV.getOffsetParent==null?void 0:ZV.getOffsetParent(IV.floating)),iV=await(ZV.isElement==null?void 0:ZV.isElement(TV))?await(ZV.getScale==null?void 0:ZV.getScale(TV))||{x:1,y:1}:{x:1,y:1},tV=rectToClientRect(ZV.convertOffsetParentRelativeRectToViewportRelativeRect?await ZV.convertOffsetParentRelativeRectToViewportRelativeRect({elements:IV,rect:cV,offsetParent:TV,strategy:dV}):cV);return{top:(GV.top-tV.top+JV.top)/iV.y,bottom:(tV.bottom-GV.bottom+JV.bottom)/iV.y,left:(GV.left-tV.left+JV.left)/iV.x,right:(tV.right-GV.right+JV.right)/iV.x}}const arrow$3=lV=>({name:"arrow",options:lV,async fn(J){const{x:VV,y:RV,placement:UV,rects:ZV,platform:WV,elements:IV,middlewareData:dV}=J,{element:CV,padding:FV=0}=evaluate(lV,J)||{};if(CV==null)return{};const NV=getPaddingObject(FV),gV={x:VV,y:RV},eV=getAlignmentAxis(UV),JV=getAxisLength(eV),nV=await WV.getDimensions(CV),aV=eV==="y",GV=aV?"top":"left",cV=aV?"bottom":"right",TV=aV?"clientHeight":"clientWidth",iV=ZV.reference[JV]+ZV.reference[eV]-gV[eV]-ZV.floating[JV],tV=gV[eV]-ZV.reference[eV],MV=await(WV.getOffsetParent==null?void 0:WV.getOffsetParent(CV));let AV=MV?MV[TV]:0;(!AV||!await(WV.isElement==null?void 0:WV.isElement(MV)))&&(AV=IV.floating[TV]||ZV.floating[JV]);const pV=iV/2-tV/2,HV=AV/2-nV[JV]/2-1,oV=min(NV[GV],HV),DV=min(NV[cV],HV),wV=oV,qV=AV-nV[JV]-DV,Cl=AV/2-nV[JV]/2+pV,nl=clamp(wV,Cl,qV),Il=!dV.arrow&&getAlignment(UV)!=null&&Cl!==nl&&ZV.reference[JV]/2-(Cl<wV?oV:DV)-nV[JV]/2<0,LV=Il?Cl<wV?Cl-wV:Cl-qV:0;return{[eV]:gV[eV]+LV,data:{[eV]:nl,centerOffset:Cl-nl-LV,...Il&&{alignmentOffset:LV}},reset:Il}}}),flip$2=function(lV){return lV===void 0&&(lV={}),{name:"flip",options:lV,async fn(J){var VV,RV;const{placement:UV,middlewareData:ZV,rects:WV,initialPlacement:IV,platform:dV,elements:CV}=J,{mainAxis:FV=!0,crossAxis:NV=!0,fallbackPlacements:gV,fallbackStrategy:eV="bestFit",fallbackAxisSideDirection:JV="none",flipAlignment:nV=!0,...aV}=evaluate(lV,J);if((VV=ZV.arrow)!=null&&VV.alignmentOffset)return{};const GV=getSide(UV),cV=getSideAxis(IV),TV=getSide(IV)===IV,iV=await(dV.isRTL==null?void 0:dV.isRTL(CV.floating)),tV=gV||(TV||!nV?[getOppositePlacement(IV)]:getExpandedPlacements(IV)),MV=JV!=="none";!gV&&MV&&tV.push(...getOppositeAxisPlacements(IV,nV,JV,iV));const AV=[IV,...tV],pV=await detectOverflow(J,aV),HV=[];let oV=((RV=ZV.flip)==null?void 0:RV.overflows)||[];if(FV&&HV.push(pV[GV]),NV){const Cl=getAlignmentSides(UV,WV,iV);HV.push(pV[Cl[0]],pV[Cl[1]])}if(oV=[...oV,{placement:UV,overflows:HV}],!HV.every(Cl=>Cl<=0)){var DV,wV;const Cl=(((DV=ZV.flip)==null?void 0:DV.index)||0)+1,nl=AV[Cl];if(nl)return{data:{index:Cl,overflows:oV},reset:{placement:nl}};let Il=(wV=oV.filter(LV=>LV.overflows[0]<=0).sort((LV,OV)=>LV.overflows[1]-OV.overflows[1])[0])==null?void 0:wV.placement;if(!Il)switch(eV){case"bestFit":{var qV;const LV=(qV=oV.filter(OV=>{if(MV){const $V=getSideAxis(OV.placement);return $V===cV||$V==="y"}return!0}).map(OV=>[OV.placement,OV.overflows.filter($V=>$V>0).reduce(($V,dl)=>$V+dl,0)]).sort((OV,$V)=>OV[1]-$V[1])[0])==null?void 0:qV[0];LV&&(Il=LV);break}case"initialPlacement":Il=IV;break}if(UV!==Il)return{reset:{placement:Il}}}return{}}}};function getSideOffsets(lV,J){return{top:lV.top-J.height,right:lV.right-J.width,bottom:lV.bottom-J.height,left:lV.left-J.width}}function isAnySideFullyClipped(lV){return sides.some(J=>lV[J]>=0)}const hide$2=function(lV){return lV===void 0&&(lV={}),{name:"hide",options:lV,async fn(J){const{rects:VV}=J,{strategy:RV="referenceHidden",...UV}=evaluate(lV,J);switch(RV){case"referenceHidden":{const ZV=await detectOverflow(J,{...UV,elementContext:"reference"}),WV=getSideOffsets(ZV,VV.reference);return{data:{referenceHiddenOffsets:WV,referenceHidden:isAnySideFullyClipped(WV)}}}case"escaped":{const ZV=await detectOverflow(J,{...UV,altBoundary:!0}),WV=getSideOffsets(ZV,VV.floating);return{data:{escapedOffsets:WV,escaped:isAnySideFullyClipped(WV)}}}default:return{}}}}};async function convertValueToCoords(lV,J){const{placement:VV,platform:RV,elements:UV}=lV,ZV=await(RV.isRTL==null?void 0:RV.isRTL(UV.floating)),WV=getSide(VV),IV=getAlignment(VV),dV=getSideAxis(VV)==="y",CV=["left","top"].includes(WV)?-1:1,FV=ZV&&dV?-1:1,NV=evaluate(J,lV);let{mainAxis:gV,crossAxis:eV,alignmentAxis:JV}=typeof NV=="number"?{mainAxis:NV,crossAxis:0,alignmentAxis:null}:{mainAxis:NV.mainAxis||0,crossAxis:NV.crossAxis||0,alignmentAxis:NV.alignmentAxis};return IV&&typeof JV=="number"&&(eV=IV==="end"?JV*-1:JV),dV?{x:eV*FV,y:gV*CV}:{x:gV*CV,y:eV*FV}}const offset$2=function(lV){return lV===void 0&&(lV=0),{name:"offset",options:lV,async fn(J){var VV,RV;const{x:UV,y:ZV,placement:WV,middlewareData:IV}=J,dV=await convertValueToCoords(J,lV);return WV===((VV=IV.offset)==null?void 0:VV.placement)&&(RV=IV.arrow)!=null&&RV.alignmentOffset?{}:{x:UV+dV.x,y:ZV+dV.y,data:{...dV,placement:WV}}}}},shift$2=function(lV){return lV===void 0&&(lV={}),{name:"shift",options:lV,async fn(J){const{x:VV,y:RV,placement:UV}=J,{mainAxis:ZV=!0,crossAxis:WV=!1,limiter:IV={fn:aV=>{let{x:GV,y:cV}=aV;return{x:GV,y:cV}}},...dV}=evaluate(lV,J),CV={x:VV,y:RV},FV=await detectOverflow(J,dV),NV=getSideAxis(getSide(UV)),gV=getOppositeAxis(NV);let eV=CV[gV],JV=CV[NV];if(ZV){const aV=gV==="y"?"top":"left",GV=gV==="y"?"bottom":"right",cV=eV+FV[aV],TV=eV-FV[GV];eV=clamp(cV,eV,TV)}if(WV){const aV=NV==="y"?"top":"left",GV=NV==="y"?"bottom":"right",cV=JV+FV[aV],TV=JV-FV[GV];JV=clamp(cV,JV,TV)}const nV=IV.fn({...J,[gV]:eV,[NV]:JV});return{...nV,data:{x:nV.x-VV,y:nV.y-RV,enabled:{[gV]:ZV,[NV]:WV}}}}}},limitShift$2=function(lV){return lV===void 0&&(lV={}),{options:lV,fn(J){const{x:VV,y:RV,placement:UV,rects:ZV,middlewareData:WV}=J,{offset:IV=0,mainAxis:dV=!0,crossAxis:CV=!0}=evaluate(lV,J),FV={x:VV,y:RV},NV=getSideAxis(UV),gV=getOppositeAxis(NV);let eV=FV[gV],JV=FV[NV];const nV=evaluate(IV,J),aV=typeof nV=="number"?{mainAxis:nV,crossAxis:0}:{mainAxis:0,crossAxis:0,...nV};if(dV){const TV=gV==="y"?"height":"width",iV=ZV.reference[gV]-ZV.floating[TV]+aV.mainAxis,tV=ZV.reference[gV]+ZV.reference[TV]-aV.mainAxis;eV<iV?eV=iV:eV>tV&&(eV=tV)}if(CV){var GV,cV;const TV=gV==="y"?"width":"height",iV=["top","left"].includes(getSide(UV)),tV=ZV.reference[NV]-ZV.floating[TV]+(iV&&((GV=WV.offset)==null?void 0:GV[NV])||0)+(iV?0:aV.crossAxis),MV=ZV.reference[NV]+ZV.reference[TV]+(iV?0:((cV=WV.offset)==null?void 0:cV[NV])||0)-(iV?aV.crossAxis:0);JV<tV?JV=tV:JV>MV&&(JV=MV)}return{[gV]:eV,[NV]:JV}}}},size$2=function(lV){return lV===void 0&&(lV={}),{name:"size",options:lV,async fn(J){var VV,RV;const{placement:UV,rects:ZV,platform:WV,elements:IV}=J,{apply:dV=()=>{},...CV}=evaluate(lV,J),FV=await detectOverflow(J,CV),NV=getSide(UV),gV=getAlignment(UV),eV=getSideAxis(UV)==="y",{width:JV,height:nV}=ZV.floating;let aV,GV;NV==="top"||NV==="bottom"?(aV=NV,GV=gV===(await(WV.isRTL==null?void 0:WV.isRTL(IV.floating))?"start":"end")?"left":"right"):(GV=NV,aV=gV==="end"?"top":"bottom");const cV=nV-FV.top-FV.bottom,TV=JV-FV.left-FV.right,iV=min(nV-FV[aV],cV),tV=min(JV-FV[GV],TV),MV=!J.middlewareData.shift;let AV=iV,pV=tV;if((VV=J.middlewareData.shift)!=null&&VV.enabled.x&&(pV=TV),(RV=J.middlewareData.shift)!=null&&RV.enabled.y&&(AV=cV),MV&&!gV){const oV=max(FV.left,0),DV=max(FV.right,0),wV=max(FV.top,0),qV=max(FV.bottom,0);eV?pV=JV-2*(oV!==0||DV!==0?oV+DV:max(FV.left,FV.right)):AV=nV-2*(wV!==0||qV!==0?wV+qV:max(FV.top,FV.bottom))}await dV({...J,availableWidth:pV,availableHeight:AV});const HV=await WV.getDimensions(IV.floating);return JV!==HV.width||nV!==HV.height?{reset:{rects:!0}}:{}}}};function hasWindow(){return typeof window<"u"}function getNodeName(lV){return isNode(lV)?(lV.nodeName||"").toLowerCase():"#document"}function getWindow(lV){var J;return(lV==null||(J=lV.ownerDocument)==null?void 0:J.defaultView)||window}function getDocumentElement(lV){var J;return(J=(isNode(lV)?lV.ownerDocument:lV.document)||window.document)==null?void 0:J.documentElement}function isNode(lV){return hasWindow()?lV instanceof Node||lV instanceof getWindow(lV).Node:!1}function isElement(lV){return hasWindow()?lV instanceof Element||lV instanceof getWindow(lV).Element:!1}function isHTMLElement(lV){return hasWindow()?lV instanceof HTMLElement||lV instanceof getWindow(lV).HTMLElement:!1}function isShadowRoot(lV){return!hasWindow()||typeof ShadowRoot>"u"?!1:lV instanceof ShadowRoot||lV instanceof getWindow(lV).ShadowRoot}function isOverflowElement(lV){const{overflow:J,overflowX:VV,overflowY:RV,display:UV}=getComputedStyle$1(lV);return/auto|scroll|overlay|hidden|clip/.test(J+RV+VV)&&!["inline","contents"].includes(UV)}function isTableElement(lV){return["table","td","th"].includes(getNodeName(lV))}function isTopLayer(lV){return[":popover-open",":modal"].some(J=>{try{return lV.matches(J)}catch{return!1}})}function isContainingBlock(lV){const J=isWebKit(),VV=isElement(lV)?getComputedStyle$1(lV):lV;return VV.transform!=="none"||VV.perspective!=="none"||(VV.containerType?VV.containerType!=="normal":!1)||!J&&(VV.backdropFilter?VV.backdropFilter!=="none":!1)||!J&&(VV.filter?VV.filter!=="none":!1)||["transform","perspective","filter"].some(RV=>(VV.willChange||"").includes(RV))||["paint","layout","strict","content"].some(RV=>(VV.contain||"").includes(RV))}function getContainingBlock(lV){let J=getParentNode(lV);for(;isHTMLElement(J)&&!isLastTraversableNode(J);){if(isContainingBlock(J))return J;if(isTopLayer(J))return null;J=getParentNode(J)}return null}function isWebKit(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}function isLastTraversableNode(lV){return["html","body","#document"].includes(getNodeName(lV))}function getComputedStyle$1(lV){return getWindow(lV).getComputedStyle(lV)}function getNodeScroll(lV){return isElement(lV)?{scrollLeft:lV.scrollLeft,scrollTop:lV.scrollTop}:{scrollLeft:lV.scrollX,scrollTop:lV.scrollY}}function getParentNode(lV){if(getNodeName(lV)==="html")return lV;const J=lV.assignedSlot||lV.parentNode||isShadowRoot(lV)&&lV.host||getDocumentElement(lV);return isShadowRoot(J)?J.host:J}function getNearestOverflowAncestor(lV){const J=getParentNode(lV);return isLastTraversableNode(J)?lV.ownerDocument?lV.ownerDocument.body:lV.body:isHTMLElement(J)&&isOverflowElement(J)?J:getNearestOverflowAncestor(J)}function getOverflowAncestors(lV,J,VV){var RV;J===void 0&&(J=[]),VV===void 0&&(VV=!0);const UV=getNearestOverflowAncestor(lV),ZV=UV===((RV=lV.ownerDocument)==null?void 0:RV.body),WV=getWindow(UV);if(ZV){const IV=getFrameElement(WV);return J.concat(WV,WV.visualViewport||[],isOverflowElement(UV)?UV:[],IV&&VV?getOverflowAncestors(IV):[])}return J.concat(UV,getOverflowAncestors(UV,[],VV))}function getFrameElement(lV){return lV.parent&&Object.getPrototypeOf(lV.parent)?lV.frameElement:null}function getCssDimensions(lV){const J=getComputedStyle$1(lV);let VV=parseFloat(J.width)||0,RV=parseFloat(J.height)||0;const UV=isHTMLElement(lV),ZV=UV?lV.offsetWidth:VV,WV=UV?lV.offsetHeight:RV,IV=round(VV)!==ZV||round(RV)!==WV;return IV&&(VV=ZV,RV=WV),{width:VV,height:RV,$:IV}}function unwrapElement(lV){return isElement(lV)?lV:lV.contextElement}function getScale(lV){const J=unwrapElement(lV);if(!isHTMLElement(J))return createCoords(1);const VV=J.getBoundingClientRect(),{width:RV,height:UV,$:ZV}=getCssDimensions(J);let WV=(ZV?round(VV.width):VV.width)/RV,IV=(ZV?round(VV.height):VV.height)/UV;return(!WV||!Number.isFinite(WV))&&(WV=1),(!IV||!Number.isFinite(IV))&&(IV=1),{x:WV,y:IV}}const noOffsets=createCoords(0);function getVisualOffsets(lV){const J=getWindow(lV);return!isWebKit()||!J.visualViewport?noOffsets:{x:J.visualViewport.offsetLeft,y:J.visualViewport.offsetTop}}function shouldAddVisualOffsets(lV,J,VV){return J===void 0&&(J=!1),!VV||J&&VV!==getWindow(lV)?!1:J}function getBoundingClientRect(lV,J,VV,RV){J===void 0&&(J=!1),VV===void 0&&(VV=!1);const UV=lV.getBoundingClientRect(),ZV=unwrapElement(lV);let WV=createCoords(1);J&&(RV?isElement(RV)&&(WV=getScale(RV)):WV=getScale(lV));const IV=shouldAddVisualOffsets(ZV,VV,RV)?getVisualOffsets(ZV):createCoords(0);let dV=(UV.left+IV.x)/WV.x,CV=(UV.top+IV.y)/WV.y,FV=UV.width/WV.x,NV=UV.height/WV.y;if(ZV){const gV=getWindow(ZV),eV=RV&&isElement(RV)?getWindow(RV):RV;let JV=gV,nV=getFrameElement(JV);for(;nV&&RV&&eV!==JV;){const aV=getScale(nV),GV=nV.getBoundingClientRect(),cV=getComputedStyle$1(nV),TV=GV.left+(nV.clientLeft+parseFloat(cV.paddingLeft))*aV.x,iV=GV.top+(nV.clientTop+parseFloat(cV.paddingTop))*aV.y;dV*=aV.x,CV*=aV.y,FV*=aV.x,NV*=aV.y,dV+=TV,CV+=iV,JV=getWindow(nV),nV=getFrameElement(JV)}}return rectToClientRect({width:FV,height:NV,x:dV,y:CV})}function getWindowScrollBarX(lV,J){const VV=getNodeScroll(lV).scrollLeft;return J?J.left+VV:getBoundingClientRect(getDocumentElement(lV)).left+VV}function getHTMLOffset(lV,J,VV){VV===void 0&&(VV=!1);const RV=lV.getBoundingClientRect(),UV=RV.left+J.scrollLeft-(VV?0:getWindowScrollBarX(lV,RV)),ZV=RV.top+J.scrollTop;return{x:UV,y:ZV}}function convertOffsetParentRelativeRectToViewportRelativeRect(lV){let{elements:J,rect:VV,offsetParent:RV,strategy:UV}=lV;const ZV=UV==="fixed",WV=getDocumentElement(RV),IV=J?isTopLayer(J.floating):!1;if(RV===WV||IV&&ZV)return VV;let dV={scrollLeft:0,scrollTop:0},CV=createCoords(1);const FV=createCoords(0),NV=isHTMLElement(RV);if((NV||!NV&&!ZV)&&((getNodeName(RV)!=="body"||isOverflowElement(WV))&&(dV=getNodeScroll(RV)),isHTMLElement(RV))){const eV=getBoundingClientRect(RV);CV=getScale(RV),FV.x=eV.x+RV.clientLeft,FV.y=eV.y+RV.clientTop}const gV=WV&&!NV&&!ZV?getHTMLOffset(WV,dV,!0):createCoords(0);return{width:VV.width*CV.x,height:VV.height*CV.y,x:VV.x*CV.x-dV.scrollLeft*CV.x+FV.x+gV.x,y:VV.y*CV.y-dV.scrollTop*CV.y+FV.y+gV.y}}function getClientRects(lV){return Array.from(lV.getClientRects())}function getDocumentRect(lV){const J=getDocumentElement(lV),VV=getNodeScroll(lV),RV=lV.ownerDocument.body,UV=max(J.scrollWidth,J.clientWidth,RV.scrollWidth,RV.clientWidth),ZV=max(J.scrollHeight,J.clientHeight,RV.scrollHeight,RV.clientHeight);let WV=-VV.scrollLeft+getWindowScrollBarX(lV);const IV=-VV.scrollTop;return getComputedStyle$1(RV).direction==="rtl"&&(WV+=max(J.clientWidth,RV.clientWidth)-UV),{width:UV,height:ZV,x:WV,y:IV}}function getViewportRect(lV,J){const VV=getWindow(lV),RV=getDocumentElement(lV),UV=VV.visualViewport;let ZV=RV.clientWidth,WV=RV.clientHeight,IV=0,dV=0;if(UV){ZV=UV.width,WV=UV.height;const CV=isWebKit();(!CV||CV&&J==="fixed")&&(IV=UV.offsetLeft,dV=UV.offsetTop)}return{width:ZV,height:WV,x:IV,y:dV}}function getInnerBoundingClientRect(lV,J){const VV=getBoundingClientRect(lV,!0,J==="fixed"),RV=VV.top+lV.clientTop,UV=VV.left+lV.clientLeft,ZV=isHTMLElement(lV)?getScale(lV):createCoords(1),WV=lV.clientWidth*ZV.x,IV=lV.clientHeight*ZV.y,dV=UV*ZV.x,CV=RV*ZV.y;return{width:WV,height:IV,x:dV,y:CV}}function getClientRectFromClippingAncestor(lV,J,VV){let RV;if(J==="viewport")RV=getViewportRect(lV,VV);else if(J==="document")RV=getDocumentRect(getDocumentElement(lV));else if(isElement(J))RV=getInnerBoundingClientRect(J,VV);else{const UV=getVisualOffsets(lV);RV={x:J.x-UV.x,y:J.y-UV.y,width:J.width,height:J.height}}return rectToClientRect(RV)}function hasFixedPositionAncestor(lV,J){const VV=getParentNode(lV);return VV===J||!isElement(VV)||isLastTraversableNode(VV)?!1:getComputedStyle$1(VV).position==="fixed"||hasFixedPositionAncestor(VV,J)}function getClippingElementAncestors(lV,J){const VV=J.get(lV);if(VV)return VV;let RV=getOverflowAncestors(lV,[],!1).filter(IV=>isElement(IV)&&getNodeName(IV)!=="body"),UV=null;const ZV=getComputedStyle$1(lV).position==="fixed";let WV=ZV?getParentNode(lV):lV;for(;isElement(WV)&&!isLastTraversableNode(WV);){const IV=getComputedStyle$1(WV),dV=isContainingBlock(WV);!dV&&IV.position==="fixed"&&(UV=null),(ZV?!dV&&!UV:!dV&&IV.position==="static"&&!!UV&&["absolute","fixed"].includes(UV.position)||isOverflowElement(WV)&&!dV&&hasFixedPositionAncestor(lV,WV))?RV=RV.filter(FV=>FV!==WV):UV=IV,WV=getParentNode(WV)}return J.set(lV,RV),RV}function getClippingRect(lV){let{element:J,boundary:VV,rootBoundary:RV,strategy:UV}=lV;const WV=[...VV==="clippingAncestors"?isTopLayer(J)?[]:getClippingElementAncestors(J,this._c):[].concat(VV),RV],IV=WV[0],dV=WV.reduce((CV,FV)=>{const NV=getClientRectFromClippingAncestor(J,FV,UV);return CV.top=max(NV.top,CV.top),CV.right=min(NV.right,CV.right),CV.bottom=min(NV.bottom,CV.bottom),CV.left=max(NV.left,CV.left),CV},getClientRectFromClippingAncestor(J,IV,UV));return{width:dV.right-dV.left,height:dV.bottom-dV.top,x:dV.left,y:dV.top}}function getDimensions(lV){const{width:J,height:VV}=getCssDimensions(lV);return{width:J,height:VV}}function getRectRelativeToOffsetParent(lV,J,VV){const RV=isHTMLElement(J),UV=getDocumentElement(J),ZV=VV==="fixed",WV=getBoundingClientRect(lV,!0,ZV,J);let IV={scrollLeft:0,scrollTop:0};const dV=createCoords(0);if(RV||!RV&&!ZV)if((getNodeName(J)!=="body"||isOverflowElement(UV))&&(IV=getNodeScroll(J)),RV){const gV=getBoundingClientRect(J,!0,ZV,J);dV.x=gV.x+J.clientLeft,dV.y=gV.y+J.clientTop}else UV&&(dV.x=getWindowScrollBarX(UV));const CV=UV&&!RV&&!ZV?getHTMLOffset(UV,IV):createCoords(0),FV=WV.left+IV.scrollLeft-dV.x-CV.x,NV=WV.top+IV.scrollTop-dV.y-CV.y;return{x:FV,y:NV,width:WV.width,height:WV.height}}function isStaticPositioned(lV){return getComputedStyle$1(lV).position==="static"}function getTrueOffsetParent(lV,J){if(!isHTMLElement(lV)||getComputedStyle$1(lV).position==="fixed")return null;if(J)return J(lV);let VV=lV.offsetParent;return getDocumentElement(lV)===VV&&(VV=VV.ownerDocument.body),VV}function getOffsetParent(lV,J){const VV=getWindow(lV);if(isTopLayer(lV))return VV;if(!isHTMLElement(lV)){let UV=getParentNode(lV);for(;UV&&!isLastTraversableNode(UV);){if(isElement(UV)&&!isStaticPositioned(UV))return UV;UV=getParentNode(UV)}return VV}let RV=getTrueOffsetParent(lV,J);for(;RV&&isTableElement(RV)&&isStaticPositioned(RV);)RV=getTrueOffsetParent(RV,J);return RV&&isLastTraversableNode(RV)&&isStaticPositioned(RV)&&!isContainingBlock(RV)?VV:RV||getContainingBlock(lV)||VV}const getElementRects=async function(lV){const J=this.getOffsetParent||getOffsetParent,VV=this.getDimensions,RV=await VV(lV.floating);return{reference:getRectRelativeToOffsetParent(lV.reference,await J(lV.floating),lV.strategy),floating:{x:0,y:0,width:RV.width,height:RV.height}}};function isRTL(lV){return getComputedStyle$1(lV).direction==="rtl"}const platform={convertOffsetParentRelativeRectToViewportRelativeRect,getDocumentElement,getClippingRect,getOffsetParent,getElementRects,getClientRects,getDimensions,getScale,isElement,isRTL};function observeMove(lV,J){let VV=null,RV;const UV=getDocumentElement(lV);function ZV(){var IV;clearTimeout(RV),(IV=VV)==null||IV.disconnect(),VV=null}function WV(IV,dV){IV===void 0&&(IV=!1),dV===void 0&&(dV=1),ZV();const{left:CV,top:FV,width:NV,height:gV}=lV.getBoundingClientRect();if(IV||J(),!NV||!gV)return;const eV=floor(FV),JV=floor(UV.clientWidth-(CV+NV)),nV=floor(UV.clientHeight-(FV+gV)),aV=floor(CV),cV={rootMargin:-eV+"px "+-JV+"px "+-nV+"px "+-aV+"px",threshold:max(0,min(1,dV))||1};let TV=!0;function iV(tV){const MV=tV[0].intersectionRatio;if(MV!==dV){if(!TV)return WV();MV?WV(!1,MV):RV=setTimeout(()=>{WV(!1,1e-7)},1e3)}TV=!1}try{VV=new IntersectionObserver(iV,{...cV,root:UV.ownerDocument})}catch{VV=new IntersectionObserver(iV,cV)}VV.observe(lV)}return WV(!0),ZV}function autoUpdate(lV,J,VV,RV){RV===void 0&&(RV={});const{ancestorScroll:UV=!0,ancestorResize:ZV=!0,elementResize:WV=typeof ResizeObserver=="function",layoutShift:IV=typeof IntersectionObserver=="function",animationFrame:dV=!1}=RV,CV=unwrapElement(lV),FV=UV||ZV?[...CV?getOverflowAncestors(CV):[],...getOverflowAncestors(J)]:[];FV.forEach(GV=>{UV&&GV.addEventListener("scroll",VV,{passive:!0}),ZV&&GV.addEventListener("resize",VV)});const NV=CV&&IV?observeMove(CV,VV):null;let gV=-1,eV=null;WV&&(eV=new ResizeObserver(GV=>{let[cV]=GV;cV&&cV.target===CV&&eV&&(eV.unobserve(J),cancelAnimationFrame(gV),gV=requestAnimationFrame(()=>{var TV;(TV=eV)==null||TV.observe(J)})),VV()}),CV&&!dV&&eV.observe(CV),eV.observe(J));let JV,nV=dV?getBoundingClientRect(lV):null;dV&&aV();function aV(){const GV=getBoundingClientRect(lV);nV&&(GV.x!==nV.x||GV.y!==nV.y||GV.width!==nV.width||GV.height!==nV.height)&&VV(),nV=GV,JV=requestAnimationFrame(aV)}return VV(),()=>{var GV;FV.forEach(cV=>{UV&&cV.removeEventListener("scroll",VV),ZV&&cV.removeEventListener("resize",VV)}),NV==null||NV(),(GV=eV)==null||GV.disconnect(),eV=null,dV&&cancelAnimationFrame(JV)}}const offset$1=offset$2,shift$1=shift$2,flip$1=flip$2,size$1=size$2,hide$1=hide$2,arrow$2=arrow$3,limitShift$1=limitShift$2,computePosition=(lV,J,VV)=>{const RV=new Map,UV={platform,...VV},ZV={...UV.platform,_c:RV};return computePosition$1(lV,J,{...UV,platform:ZV})};var index=typeof document<"u"?reactExports.useLayoutEffect:reactExports.useEffect;function deepEqual(lV,J){if(lV===J)return!0;if(typeof lV!=typeof J)return!1;if(typeof lV=="function"&&lV.toString()===J.toString())return!0;let VV,RV,UV;if(lV&&J&&typeof lV=="object"){if(Array.isArray(lV)){if(VV=lV.length,VV!==J.length)return!1;for(RV=VV;RV--!==0;)if(!deepEqual(lV[RV],J[RV]))return!1;return!0}if(UV=Object.keys(lV),VV=UV.length,VV!==Object.keys(J).length)return!1;for(RV=VV;RV--!==0;)if(!{}.hasOwnProperty.call(J,UV[RV]))return!1;for(RV=VV;RV--!==0;){const ZV=UV[RV];if(!(ZV==="_owner"&&lV.$$typeof)&&!deepEqual(lV[ZV],J[ZV]))return!1}return!0}return lV!==lV&&J!==J}function getDPR(lV){return typeof window>"u"?1:(lV.ownerDocument.defaultView||window).devicePixelRatio||1}function roundByDPR(lV,J){const VV=getDPR(lV);return Math.round(J*VV)/VV}function useLatestRef(lV){const J=reactExports.useRef(lV);return index(()=>{J.current=lV}),J}function useFloating(lV){lV===void 0&&(lV={});const{placement:J="bottom",strategy:VV="absolute",middleware:RV=[],platform:UV,elements:{reference:ZV,floating:WV}={},transform:IV=!0,whileElementsMounted:dV,open:CV}=lV,[FV,NV]=reactExports.useState({x:0,y:0,strategy:VV,placement:J,middlewareData:{},isPositioned:!1}),[gV,eV]=reactExports.useState(RV);deepEqual(gV,RV)||eV(RV);const[JV,nV]=reactExports.useState(null),[aV,GV]=reactExports.useState(null),cV=reactExports.useCallback(OV=>{OV!==MV.current&&(MV.current=OV,nV(OV))},[]),TV=reactExports.useCallback(OV=>{OV!==AV.current&&(AV.current=OV,GV(OV))},[]),iV=ZV||JV,tV=WV||aV,MV=reactExports.useRef(null),AV=reactExports.useRef(null),pV=reactExports.useRef(FV),HV=dV!=null,oV=useLatestRef(dV),DV=useLatestRef(UV),wV=useLatestRef(CV),qV=reactExports.useCallback(()=>{if(!MV.current||!AV.current)return;const OV={placement:J,strategy:VV,middleware:gV};DV.current&&(OV.platform=DV.current),computePosition(MV.current,AV.current,OV).then($V=>{const dl={...$V,isPositioned:wV.current!==!1};Cl.current&&!deepEqual(pV.current,dl)&&(pV.current=dl,reactDomExports.flushSync(()=>{NV(dl)}))})},[gV,J,VV,DV,wV]);index(()=>{CV===!1&&pV.current.isPositioned&&(pV.current.isPositioned=!1,NV(OV=>({...OV,isPositioned:!1})))},[CV]);const Cl=reactExports.useRef(!1);index(()=>(Cl.current=!0,()=>{Cl.current=!1}),[]),index(()=>{if(iV&&(MV.current=iV),tV&&(AV.current=tV),iV&&tV){if(oV.current)return oV.current(iV,tV,qV);qV()}},[iV,tV,qV,oV,HV]);const nl=reactExports.useMemo(()=>({reference:MV,floating:AV,setReference:cV,setFloating:TV}),[cV,TV]),Il=reactExports.useMemo(()=>({reference:iV,floating:tV}),[iV,tV]),LV=reactExports.useMemo(()=>{const OV={position:VV,left:0,top:0};if(!Il.floating)return OV;const $V=roundByDPR(Il.floating,FV.x),dl=roundByDPR(Il.floating,FV.y);return IV?{...OV,transform:"translate("+$V+"px, "+dl+"px)",...getDPR(Il.floating)>=1.5&&{willChange:"transform"}}:{position:VV,left:$V,top:dl}},[VV,IV,Il.floating,FV.x,FV.y]);return reactExports.useMemo(()=>({...FV,update:qV,refs:nl,elements:Il,floatingStyles:LV}),[FV,qV,nl,Il,LV])}const arrow$1=lV=>{function J(VV){return{}.hasOwnProperty.call(VV,"current")}return{name:"arrow",options:lV,fn(VV){const{element:RV,padding:UV}=typeof lV=="function"?lV(VV):lV;return RV&&J(RV)?RV.current!=null?arrow$2({element:RV.current,padding:UV}).fn(VV):{}:RV?arrow$2({element:RV,padding:UV}).fn(VV):{}}}},offset=(lV,J)=>({...offset$1(lV),options:[lV,J]}),shift=(lV,J)=>({...shift$1(lV),options:[lV,J]}),limitShift=(lV,J)=>({...limitShift$1(lV),options:[lV,J]}),flip=(lV,J)=>({...flip$1(lV),options:[lV,J]}),size=(lV,J)=>({...size$1(lV),options:[lV,J]}),hide=(lV,J)=>({...hide$1(lV),options:[lV,J]}),arrow=(lV,J)=>({...arrow$1(lV),options:[lV,J]});var NAME="Arrow",Arrow$1=reactExports.forwardRef((lV,J)=>{const{children:VV,width:RV=10,height:UV=5,...ZV}=lV;return jsxRuntimeExports.jsx(Primitive.svg,{...ZV,ref:J,width:RV,height:UV,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:lV.asChild?VV:jsxRuntimeExports.jsx("polygon",{points:"0,0 30,0 15,10"})})});Arrow$1.displayName=NAME;var Root=Arrow$1;function createContextScope(lV,J=[]){let VV=[];function RV(ZV,WV){const IV=reactExports.createContext(WV),dV=VV.length;VV=[...VV,WV];function CV(NV){const{scope:gV,children:eV,...JV}=NV,nV=(gV==null?void 0:gV[lV][dV])||IV,aV=reactExports.useMemo(()=>JV,Object.values(JV));return jsxRuntimeExports.jsx(nV.Provider,{value:aV,children:eV})}function FV(NV,gV){const eV=(gV==null?void 0:gV[lV][dV])||IV,JV=reactExports.useContext(eV);if(JV)return JV;if(WV!==void 0)return WV;throw new Error(`\`${NV}\` must be used within \`${ZV}\``)}return CV.displayName=ZV+"Provider",[CV,FV]}const UV=()=>{const ZV=VV.map(WV=>reactExports.createContext(WV));return function(IV){const dV=(IV==null?void 0:IV[lV])||ZV;return reactExports.useMemo(()=>({[`__scope${lV}`]:{...IV,[lV]:dV}}),[IV,dV])}};return UV.scopeName=lV,[RV,composeContextScopes(UV,...J)]}function composeContextScopes(...lV){const J=lV[0];if(lV.length===1)return J;const VV=()=>{const RV=lV.map(UV=>({useScope:UV(),scopeName:UV.scopeName}));return function(ZV){const WV=RV.reduce((IV,{useScope:dV,scopeName:CV})=>{const NV=dV(ZV)[`__scope${CV}`];return{...IV,...NV}},{});return reactExports.useMemo(()=>({[`__scope${J.scopeName}`]:WV}),[WV])}};return VV.scopeName=J.scopeName,VV}function useSize(lV){const[J,VV]=reactExports.useState(void 0);return useLayoutEffect2(()=>{if(lV){VV({width:lV.offsetWidth,height:lV.offsetHeight});const RV=new ResizeObserver(UV=>{if(!Array.isArray(UV)||!UV.length)return;const ZV=UV[0];let WV,IV;if("borderBoxSize"in ZV){const dV=ZV.borderBoxSize,CV=Array.isArray(dV)?dV[0]:dV;WV=CV.inlineSize,IV=CV.blockSize}else WV=lV.offsetWidth,IV=lV.offsetHeight;VV({width:WV,height:IV})});return RV.observe(lV,{box:"border-box"}),()=>RV.unobserve(lV)}else VV(void 0)},[lV]),J}var POPPER_NAME="Popper",[createPopperContext,createPopperScope]=createContextScope(POPPER_NAME),[PopperProvider,usePopperContext]=createPopperContext(POPPER_NAME),Popper=lV=>{const{__scopePopper:J,children:VV}=lV,[RV,UV]=reactExports.useState(null);return jsxRuntimeExports.jsx(PopperProvider,{scope:J,anchor:RV,onAnchorChange:UV,children:VV})};Popper.displayName=POPPER_NAME;var ANCHOR_NAME$1="PopperAnchor",PopperAnchor=reactExports.forwardRef((lV,J)=>{const{__scopePopper:VV,virtualRef:RV,...UV}=lV,ZV=usePopperContext(ANCHOR_NAME$1,VV),WV=reactExports.useRef(null),IV=useComposedRefs(J,WV);return reactExports.useEffect(()=>{ZV.onAnchorChange((RV==null?void 0:RV.current)||WV.current)}),RV?null:jsxRuntimeExports.jsx(Primitive.div,{...UV,ref:IV})});PopperAnchor.displayName=ANCHOR_NAME$1;var CONTENT_NAME$2="PopperContent",[PopperContentProvider,useContentContext]=createPopperContext(CONTENT_NAME$2),PopperContent=reactExports.forwardRef((lV,J)=>{var jl,Ll,ol,Tl,kl,ul;const{__scopePopper:VV,side:RV="bottom",sideOffset:UV=0,align:ZV="center",alignOffset:WV=0,arrowPadding:IV=0,avoidCollisions:dV=!0,collisionBoundary:CV=[],collisionPadding:FV=0,sticky:NV="partial",hideWhenDetached:gV=!1,updatePositionStrategy:eV="optimized",onPlaced:JV,...nV}=lV,aV=usePopperContext(CONTENT_NAME$2,VV),[GV,cV]=reactExports.useState(null),TV=useComposedRefs(J,UR=>cV(UR)),[iV,tV]=reactExports.useState(null),MV=useSize(iV),AV=(MV==null?void 0:MV.width)??0,pV=(MV==null?void 0:MV.height)??0,HV=RV+(ZV!=="center"?"-"+ZV:""),oV=typeof FV=="number"?FV:{top:0,right:0,bottom:0,left:0,...FV},DV=Array.isArray(CV)?CV:[CV],wV=DV.length>0,qV={padding:oV,boundary:DV.filter(isNotNull),altBoundary:wV},{refs:Cl,floatingStyles:nl,placement:Il,isPositioned:LV,middlewareData:OV}=useFloating({strategy:"fixed",placement:HV,whileElementsMounted:(...UR)=>autoUpdate(...UR,{animationFrame:eV==="always"}),elements:{reference:aV.anchor},middleware:[offset({mainAxis:UV+pV,alignmentAxis:WV}),dV&&shift({mainAxis:!0,crossAxis:!1,limiter:NV==="partial"?limitShift():void 0,...qV}),dV&&flip({...qV}),size({...qV,apply:({elements:UR,rects:JR,availableWidth:FR,availableHeight:QR})=>{const{width:hR,height:MR}=JR.reference,mR=UR.floating.style;mR.setProperty("--radix-popper-available-width",`${FR}px`),mR.setProperty("--radix-popper-available-height",`${QR}px`),mR.setProperty("--radix-popper-anchor-width",`${hR}px`),mR.setProperty("--radix-popper-anchor-height",`${MR}px`)}}),iV&&arrow({element:iV,padding:IV}),transformOrigin({arrowWidth:AV,arrowHeight:pV}),gV&&hide({strategy:"referenceHidden",...qV})]}),[$V,dl]=getSideAndAlignFromPlacement(Il),Wl=useCallbackRef$1(JV);useLayoutEffect2(()=>{LV&&(Wl==null||Wl())},[LV,Wl]);const el=(jl=OV.arrow)==null?void 0:jl.x,pl=(Ll=OV.arrow)==null?void 0:Ll.y,ml=((ol=OV.arrow)==null?void 0:ol.centerOffset)!==0,[Bl,xl]=reactExports.useState();return useLayoutEffect2(()=>{GV&&xl(window.getComputedStyle(GV).zIndex)},[GV]),jsxRuntimeExports.jsx("div",{ref:Cl.setFloating,"data-radix-popper-content-wrapper":"",style:{...nl,transform:LV?nl.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:Bl,"--radix-popper-transform-origin":[(Tl=OV.transformOrigin)==null?void 0:Tl.x,(kl=OV.transformOrigin)==null?void 0:kl.y].join(" "),...((ul=OV.hide)==null?void 0:ul.referenceHidden)&&{visibility:"hidden",pointerEvents:"none"}},dir:lV.dir,children:jsxRuntimeExports.jsx(PopperContentProvider,{scope:VV,placedSide:$V,onArrowChange:tV,arrowX:el,arrowY:pl,shouldHideArrow:ml,children:jsxRuntimeExports.jsx(Primitive.div,{"data-side":$V,"data-align":dl,...nV,ref:TV,style:{...nV.style,animation:LV?void 0:"none"}})})})});PopperContent.displayName=CONTENT_NAME$2;var ARROW_NAME$2="PopperArrow",OPPOSITE_SIDE={top:"bottom",right:"left",bottom:"top",left:"right"},PopperArrow=reactExports.forwardRef(function lV(J,VV){const{__scopePopper:RV,...UV}=J,ZV=useContentContext(ARROW_NAME$2,RV),WV=OPPOSITE_SIDE[ZV.placedSide];return jsxRuntimeExports.jsx("span",{ref:ZV.onArrowChange,style:{position:"absolute",left:ZV.arrowX,top:ZV.arrowY,[WV]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[ZV.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[ZV.placedSide],visibility:ZV.shouldHideArrow?"hidden":void 0},children:jsxRuntimeExports.jsx(Root,{...UV,ref:VV,style:{...UV.style,display:"block"}})})});PopperArrow.displayName=ARROW_NAME$2;function isNotNull(lV){return lV!==null}var transformOrigin=lV=>({name:"transformOrigin",options:lV,fn(J){var aV,GV,cV;const{placement:VV,rects:RV,middlewareData:UV}=J,WV=((aV=UV.arrow)==null?void 0:aV.centerOffset)!==0,IV=WV?0:lV.arrowWidth,dV=WV?0:lV.arrowHeight,[CV,FV]=getSideAndAlignFromPlacement(VV),NV={start:"0%",center:"50%",end:"100%"}[FV],gV=(((GV=UV.arrow)==null?void 0:GV.x)??0)+IV/2,eV=(((cV=UV.arrow)==null?void 0:cV.y)??0)+dV/2;let JV="",nV="";return CV==="bottom"?(JV=WV?NV:`${gV}px`,nV=`${-dV}px`):CV==="top"?(JV=WV?NV:`${gV}px`,nV=`${RV.floating.height+dV}px`):CV==="right"?(JV=`${-dV}px`,nV=WV?NV:`${eV}px`):CV==="left"&&(JV=`${RV.floating.width+dV}px`,nV=WV?NV:`${eV}px`),{data:{x:JV,y:nV}}}});function getSideAndAlignFromPlacement(lV){const[J,VV="center"]=lV.split("-");return[J,VV]}var Root2$1=Popper,Anchor=PopperAnchor,Content=PopperContent,Arrow=PopperArrow,PORTAL_NAME$2="Portal",Portal$1=reactExports.forwardRef((lV,J)=>{var IV;const{container:VV,...RV}=lV,[UV,ZV]=reactExports.useState(!1);useLayoutEffect2(()=>ZV(!0),[]);const WV=VV||UV&&((IV=globalThis==null?void 0:globalThis.document)==null?void 0:IV.body);return WV?ReactDOM.createPortal(jsxRuntimeExports.jsx(Primitive.div,{...RV,ref:J}),WV):null});Portal$1.displayName=PORTAL_NAME$2;var getDefaultParent=function(lV){if(typeof document>"u")return null;var J=Array.isArray(lV)?lV[0]:lV;return J.ownerDocument.body},counterMap=new WeakMap,uncontrolledNodes=new WeakMap,markerMap={},lockCount=0,unwrapHost=function(lV){return lV&&(lV.host||unwrapHost(lV.parentNode))},correctTargets=function(lV,J){return J.map(function(VV){if(lV.contains(VV))return VV;var RV=unwrapHost(VV);return RV&&lV.contains(RV)?RV:(console.error("aria-hidden",VV,"in not contained inside",lV,". Doing nothing"),null)}).filter(function(VV){return!!VV})},applyAttributeToOthers=function(lV,J,VV,RV){var UV=correctTargets(J,Array.isArray(lV)?lV:[lV]);markerMap[VV]||(markerMap[VV]=new WeakMap);var ZV=markerMap[VV],WV=[],IV=new Set,dV=new Set(UV),CV=function(NV){!NV||IV.has(NV)||(IV.add(NV),CV(NV.parentNode))};UV.forEach(CV);var FV=function(NV){!NV||dV.has(NV)||Array.prototype.forEach.call(NV.children,function(gV){if(IV.has(gV))FV(gV);else try{var eV=gV.getAttribute(RV),JV=eV!==null&&eV!=="false",nV=(counterMap.get(gV)||0)+1,aV=(ZV.get(gV)||0)+1;counterMap.set(gV,nV),ZV.set(gV,aV),WV.push(gV),nV===1&&JV&&uncontrolledNodes.set(gV,!0),aV===1&&gV.setAttribute(VV,"true"),JV||gV.setAttribute(RV,"true")}catch(GV){console.error("aria-hidden: cannot operate on ",gV,GV)}})};return FV(J),IV.clear(),lockCount++,function(){WV.forEach(function(NV){var gV=counterMap.get(NV)-1,eV=ZV.get(NV)-1;counterMap.set(NV,gV),ZV.set(NV,eV),gV||(uncontrolledNodes.has(NV)||NV.removeAttribute(RV),uncontrolledNodes.delete(NV)),eV||NV.removeAttribute(VV)}),lockCount--,lockCount||(counterMap=new WeakMap,counterMap=new WeakMap,uncontrolledNodes=new WeakMap,markerMap={})}},hideOthers=function(lV,J,VV){VV===void 0&&(VV="data-aria-hidden");var RV=Array.from(Array.isArray(lV)?lV:[lV]),UV=getDefaultParent(lV);return UV?(RV.push.apply(RV,Array.from(UV.querySelectorAll("[aria-live]"))),applyAttributeToOthers(RV,UV,VV,"aria-hidden")):function(){return null}},__assign=function(){return __assign=Object.assign||function(J){for(var VV,RV=1,UV=arguments.length;RV<UV;RV++){VV=arguments[RV];for(var ZV in VV)Object.prototype.hasOwnProperty.call(VV,ZV)&&(J[ZV]=VV[ZV])}return J},__assign.apply(this,arguments)};function __rest(lV,J){var VV={};for(var RV in lV)Object.prototype.hasOwnProperty.call(lV,RV)&&J.indexOf(RV)<0&&(VV[RV]=lV[RV]);if(lV!=null&&typeof Object.getOwnPropertySymbols=="function")for(var UV=0,RV=Object.getOwnPropertySymbols(lV);UV<RV.length;UV++)J.indexOf(RV[UV])<0&&Object.prototype.propertyIsEnumerable.call(lV,RV[UV])&&(VV[RV[UV]]=lV[RV[UV]]);return VV}function __spreadArray(lV,J,VV){if(VV||arguments.length===2)for(var RV=0,UV=J.length,ZV;RV<UV;RV++)(ZV||!(RV in J))&&(ZV||(ZV=Array.prototype.slice.call(J,0,RV)),ZV[RV]=J[RV]);return lV.concat(ZV||Array.prototype.slice.call(J))}typeof SuppressedError=="function"&&SuppressedError;var zeroRightClassName="right-scroll-bar-position",fullWidthClassName="width-before-scroll-bar",noScrollbarsClassName="with-scroll-bars-hidden",removedBarSizeVariable="--removed-body-scroll-bar-size";function assignRef(lV,J){return typeof lV=="function"?lV(J):lV&&(lV.current=J),lV}function useCallbackRef(lV,J){var VV=reactExports.useState(function(){return{value:lV,callback:J,facade:{get current(){return VV.value},set current(RV){var UV=VV.value;UV!==RV&&(VV.value=RV,VV.callback(RV,UV))}}}})[0];return VV.callback=J,VV.facade}var useIsomorphicLayoutEffect=typeof window<"u"?reactExports.useLayoutEffect:reactExports.useEffect,currentValues=new WeakMap;function useMergeRefs(lV,J){var VV=useCallbackRef(null,function(RV){return lV.forEach(function(UV){return assignRef(UV,RV)})});return useIsomorphicLayoutEffect(function(){var RV=currentValues.get(VV);if(RV){var UV=new Set(RV),ZV=new Set(lV),WV=VV.current;UV.forEach(function(IV){ZV.has(IV)||assignRef(IV,null)}),ZV.forEach(function(IV){UV.has(IV)||assignRef(IV,WV)})}currentValues.set(VV,lV)},[lV]),VV}function ItoI(lV){return lV}function innerCreateMedium(lV,J){J===void 0&&(J=ItoI);var VV=[],RV=!1,UV={read:function(){if(RV)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return VV.length?VV[VV.length-1]:lV},useMedium:function(ZV){var WV=J(ZV,RV);return VV.push(WV),function(){VV=VV.filter(function(IV){return IV!==WV})}},assignSyncMedium:function(ZV){for(RV=!0;VV.length;){var WV=VV;VV=[],WV.forEach(ZV)}VV={push:function(IV){return ZV(IV)},filter:function(){return VV}}},assignMedium:function(ZV){RV=!0;var WV=[];if(VV.length){var IV=VV;VV=[],IV.forEach(ZV),WV=VV}var dV=function(){var FV=WV;WV=[],FV.forEach(ZV)},CV=function(){return Promise.resolve().then(dV)};CV(),VV={push:function(FV){WV.push(FV),CV()},filter:function(FV){return WV=WV.filter(FV),VV}}}};return UV}function createSidecarMedium(lV){lV===void 0&&(lV={});var J=innerCreateMedium(null);return J.options=__assign({async:!0,ssr:!1},lV),J}var SideCar$1=function(lV){var J=lV.sideCar,VV=__rest(lV,["sideCar"]);if(!J)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var RV=J.read();if(!RV)throw new Error("Sidecar medium not found");return reactExports.createElement(RV,__assign({},VV))};SideCar$1.isSideCarExport=!0;function exportSidecar(lV,J){return lV.useMedium(J),SideCar$1}var effectCar=createSidecarMedium(),nothing=function(){},RemoveScroll=reactExports.forwardRef(function(lV,J){var VV=reactExports.useRef(null),RV=reactExports.useState({onScrollCapture:nothing,onWheelCapture:nothing,onTouchMoveCapture:nothing}),UV=RV[0],ZV=RV[1],WV=lV.forwardProps,IV=lV.children,dV=lV.className,CV=lV.removeScrollBar,FV=lV.enabled,NV=lV.shards,gV=lV.sideCar,eV=lV.noIsolation,JV=lV.inert,nV=lV.allowPinchZoom,aV=lV.as,GV=aV===void 0?"div":aV,cV=lV.gapMode,TV=__rest(lV,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noIsolation","inert","allowPinchZoom","as","gapMode"]),iV=gV,tV=useMergeRefs([VV,J]),MV=__assign(__assign({},TV),UV);return reactExports.createElement(reactExports.Fragment,null,FV&&reactExports.createElement(iV,{sideCar:effectCar,removeScrollBar:CV,shards:NV,noIsolation:eV,inert:JV,setCallbacks:ZV,allowPinchZoom:!!nV,lockRef:VV,gapMode:cV}),WV?reactExports.cloneElement(reactExports.Children.only(IV),__assign(__assign({},MV),{ref:tV})):reactExports.createElement(GV,__assign({},MV,{className:dV,ref:tV}),IV))});RemoveScroll.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},RemoveScroll.classNames={fullWidth:fullWidthClassName,zeroRight:zeroRightClassName};var getNonce=function(){if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function makeStyleTag(){if(!document)return null;var lV=document.createElement("style");lV.type="text/css";var J=getNonce();return J&&lV.setAttribute("nonce",J),lV}function injectStyles(lV,J){lV.styleSheet?lV.styleSheet.cssText=J:lV.appendChild(document.createTextNode(J))}function insertStyleTag(lV){var J=document.head||document.getElementsByTagName("head")[0];J.appendChild(lV)}var stylesheetSingleton=function(){var lV=0,J=null;return{add:function(VV){lV==0&&(J=makeStyleTag())&&(injectStyles(J,VV),insertStyleTag(J)),lV++},remove:function(){lV--,!lV&&J&&(J.parentNode&&J.parentNode.removeChild(J),J=null)}}},styleHookSingleton=function(){var lV=stylesheetSingleton();return function(J,VV){reactExports.useEffect(function(){return lV.add(J),function(){lV.remove()}},[J&&VV])}},styleSingleton=function(){var lV=styleHookSingleton(),J=function(VV){var RV=VV.styles,UV=VV.dynamic;return lV(RV,UV),null};return J},zeroGap={left:0,top:0,right:0,gap:0},parse=function(lV){return parseInt(lV||"",10)||0},getOffset=function(lV){var J=window.getComputedStyle(document.body),VV=J[lV==="padding"?"paddingLeft":"marginLeft"],RV=J[lV==="padding"?"paddingTop":"marginTop"],UV=J[lV==="padding"?"paddingRight":"marginRight"];return[parse(VV),parse(RV),parse(UV)]},getGapWidth=function(lV){if(lV===void 0&&(lV="margin"),typeof window>"u")return zeroGap;var J=getOffset(lV),VV=document.documentElement.clientWidth,RV=window.innerWidth;return{left:J[0],top:J[1],right:J[2],gap:Math.max(0,RV-VV+J[2]-J[0])}},Style=styleSingleton(),lockAttribute="data-scroll-locked",getStyles=function(lV,J,VV,RV){var UV=lV.left,ZV=lV.top,WV=lV.right,IV=lV.gap;return VV===void 0&&(VV="margin"),`
|
|
22239
22239
|
.`.concat(noScrollbarsClassName,` {
|
|
22240
22240
|
overflow: hidden `).concat(RV,`;
|
|
22241
22241
|
padding-right: `).concat(IV,"px ").concat(RV,`;
|
|
@@ -22275,7 +22275,7 @@ void main() {
|
|
|
22275
22275
|
`)},getCurrentUseCounter=function(){var lV=parseInt(document.body.getAttribute(lockAttribute)||"0",10);return isFinite(lV)?lV:0},useLockAttribute=function(){reactExports.useEffect(function(){return document.body.setAttribute(lockAttribute,(getCurrentUseCounter()+1).toString()),function(){var lV=getCurrentUseCounter()-1;lV<=0?document.body.removeAttribute(lockAttribute):document.body.setAttribute(lockAttribute,lV.toString())}},[])},RemoveScrollBar=function(lV){var J=lV.noRelative,VV=lV.noImportant,RV=lV.gapMode,UV=RV===void 0?"margin":RV;useLockAttribute();var ZV=reactExports.useMemo(function(){return getGapWidth(UV)},[UV]);return reactExports.createElement(Style,{styles:getStyles(ZV,!J,UV,VV?"":"!important")})},passiveSupported=!1;if(typeof window<"u")try{var options=Object.defineProperty({},"passive",{get:function(){return passiveSupported=!0,!0}});window.addEventListener("test",options,options),window.removeEventListener("test",options,options)}catch{passiveSupported=!1}var nonPassive=passiveSupported?{passive:!1}:!1,alwaysContainsScroll=function(lV){return lV.tagName==="TEXTAREA"},elementCanBeScrolled=function(lV,J){if(!(lV instanceof Element))return!1;var VV=window.getComputedStyle(lV);return VV[J]!=="hidden"&&!(VV.overflowY===VV.overflowX&&!alwaysContainsScroll(lV)&&VV[J]==="visible")},elementCouldBeVScrolled=function(lV){return elementCanBeScrolled(lV,"overflowY")},elementCouldBeHScrolled=function(lV){return elementCanBeScrolled(lV,"overflowX")},locationCouldBeScrolled=function(lV,J){var VV=J.ownerDocument,RV=J;do{typeof ShadowRoot<"u"&&RV instanceof ShadowRoot&&(RV=RV.host);var UV=elementCouldBeScrolled(lV,RV);if(UV){var ZV=getScrollVariables(lV,RV),WV=ZV[1],IV=ZV[2];if(WV>IV)return!0}RV=RV.parentNode}while(RV&&RV!==VV.body);return!1},getVScrollVariables=function(lV){var J=lV.scrollTop,VV=lV.scrollHeight,RV=lV.clientHeight;return[J,VV,RV]},getHScrollVariables=function(lV){var J=lV.scrollLeft,VV=lV.scrollWidth,RV=lV.clientWidth;return[J,VV,RV]},elementCouldBeScrolled=function(lV,J){return lV==="v"?elementCouldBeVScrolled(J):elementCouldBeHScrolled(J)},getScrollVariables=function(lV,J){return lV==="v"?getVScrollVariables(J):getHScrollVariables(J)},getDirectionFactor=function(lV,J){return lV==="h"&&J==="rtl"?-1:1},handleScroll=function(lV,J,VV,RV,UV){var ZV=getDirectionFactor(lV,window.getComputedStyle(J).direction),WV=ZV*RV,IV=VV.target,dV=J.contains(IV),CV=!1,FV=WV>0,NV=0,gV=0;do{var eV=getScrollVariables(lV,IV),JV=eV[0],nV=eV[1],aV=eV[2],GV=nV-aV-ZV*JV;(JV||GV)&&elementCouldBeScrolled(lV,IV)&&(NV+=GV,gV+=JV),IV instanceof ShadowRoot?IV=IV.host:IV=IV.parentNode}while(!dV&&IV!==document.body||dV&&(J.contains(IV)||J===IV));return(FV&&(Math.abs(NV)<1||!UV)||!FV&&(Math.abs(gV)<1||!UV))&&(CV=!0),CV},getTouchXY=function(lV){return"changedTouches"in lV?[lV.changedTouches[0].clientX,lV.changedTouches[0].clientY]:[0,0]},getDeltaXY=function(lV){return[lV.deltaX,lV.deltaY]},extractRef=function(lV){return lV&&"current"in lV?lV.current:lV},deltaCompare=function(lV,J){return lV[0]===J[0]&&lV[1]===J[1]},generateStyle=function(lV){return`
|
|
22276
22276
|
.block-interactivity-`.concat(lV,` {pointer-events: none;}
|
|
22277
22277
|
.allow-interactivity-`).concat(lV,` {pointer-events: all;}
|
|
22278
|
-
`)},idCounter=0,lockStack=[];function RemoveScrollSideCar(lV){var J=reactExports.useRef([]),VV=reactExports.useRef([0,0]),RV=reactExports.useRef(),UV=reactExports.useState(idCounter++)[0],ZV=reactExports.useState(styleSingleton)[0],WV=reactExports.useRef(lV);reactExports.useEffect(function(){WV.current=lV},[lV]),reactExports.useEffect(function(){if(lV.inert){document.body.classList.add("block-interactivity-".concat(UV));var nV=__spreadArray([lV.lockRef.current],(lV.shards||[]).map(extractRef),!0).filter(Boolean);return nV.forEach(function(aV){return aV.classList.add("allow-interactivity-".concat(UV))}),function(){document.body.classList.remove("block-interactivity-".concat(UV)),nV.forEach(function(aV){return aV.classList.remove("allow-interactivity-".concat(UV))})}}},[lV.inert,lV.lockRef.current,lV.shards]);var IV=reactExports.useCallback(function(nV,aV){if("touches"in nV&&nV.touches.length===2||nV.type==="wheel"&&nV.ctrlKey)return!WV.current.allowPinchZoom;var GV=getTouchXY(nV),cV=VV.current,TV="deltaX"in nV?nV.deltaX:cV[0]-GV[0],iV="deltaY"in nV?nV.deltaY:cV[1]-GV[1],tV,MV=nV.target,AV=Math.abs(TV)>Math.abs(iV)?"h":"v";if("touches"in nV&&AV==="h"&&MV.type==="range")return!1;var pV=locationCouldBeScrolled(AV,MV);if(!pV)return!0;if(pV?tV=AV:(tV=AV==="v"?"h":"v",pV=locationCouldBeScrolled(AV,MV)),!pV)return!1;if(!RV.current&&"changedTouches"in nV&&(TV||iV)&&(RV.current=tV),!tV)return!0;var HV=RV.current||tV;return handleScroll(HV,aV,nV,HV==="h"?TV:iV,!0)},[]),dV=reactExports.useCallback(function(nV){var aV=nV;if(!(!lockStack.length||lockStack[lockStack.length-1]!==ZV)){var GV="deltaY"in aV?getDeltaXY(aV):getTouchXY(aV),cV=J.current.filter(function(tV){return tV.name===aV.type&&(tV.target===aV.target||aV.target===tV.shadowParent)&&deltaCompare(tV.delta,GV)})[0];if(cV&&cV.should){aV.cancelable&&aV.preventDefault();return}if(!cV){var TV=(WV.current.shards||[]).map(extractRef).filter(Boolean).filter(function(tV){return tV.contains(aV.target)}),iV=TV.length>0?IV(aV,TV[0]):!WV.current.noIsolation;iV&&aV.cancelable&&aV.preventDefault()}}},[]),CV=reactExports.useCallback(function(nV,aV,GV,cV){var TV={name:nV,delta:aV,target:GV,should:cV,shadowParent:getOutermostShadowParent(GV)};J.current.push(TV),setTimeout(function(){J.current=J.current.filter(function(iV){return iV!==TV})},1)},[]),FV=reactExports.useCallback(function(nV){VV.current=getTouchXY(nV),RV.current=void 0},[]),NV=reactExports.useCallback(function(nV){CV(nV.type,getDeltaXY(nV),nV.target,IV(nV,lV.lockRef.current))},[]),gV=reactExports.useCallback(function(nV){CV(nV.type,getTouchXY(nV),nV.target,IV(nV,lV.lockRef.current))},[]);reactExports.useEffect(function(){return lockStack.push(ZV),lV.setCallbacks({onScrollCapture:NV,onWheelCapture:NV,onTouchMoveCapture:gV}),document.addEventListener("wheel",dV,nonPassive),document.addEventListener("touchmove",dV,nonPassive),document.addEventListener("touchstart",FV,nonPassive),function(){lockStack=lockStack.filter(function(nV){return nV!==ZV}),document.removeEventListener("wheel",dV,nonPassive),document.removeEventListener("touchmove",dV,nonPassive),document.removeEventListener("touchstart",FV,nonPassive)}},[]);var eV=lV.removeScrollBar,JV=lV.inert;return reactExports.createElement(reactExports.Fragment,null,JV?reactExports.createElement(ZV,{styles:generateStyle(UV)}):null,eV?reactExports.createElement(RemoveScrollBar,{gapMode:lV.gapMode}):null)}function getOutermostShadowParent(lV){for(var J=null;lV!==null;)lV instanceof ShadowRoot&&(J=lV.host,lV=lV.host),lV=lV.parentNode;return J}const SideCar=exportSidecar(effectCar,RemoveScrollSideCar);var ReactRemoveScroll=reactExports.forwardRef(function(lV,J){return reactExports.createElement(RemoveScroll,__assign({},lV,{ref:J,sideCar:SideCar}))});ReactRemoveScroll.classNames=RemoveScroll.classNames;var SELECTION_KEYS=["Enter"," "],FIRST_KEYS=["ArrowDown","PageUp","Home"],LAST_KEYS=["ArrowUp","PageDown","End"],FIRST_LAST_KEYS=[...FIRST_KEYS,...LAST_KEYS],SUB_OPEN_KEYS={ltr:[...SELECTION_KEYS,"ArrowRight"],rtl:[...SELECTION_KEYS,"ArrowLeft"]},SUB_CLOSE_KEYS={ltr:["ArrowLeft"],rtl:["ArrowRight"]},MENU_NAME="Menu",[Collection,useCollection,createCollectionScope]=createCollection(MENU_NAME),[createMenuContext,createMenuScope]=createContextScope$3(MENU_NAME,[createCollectionScope,createPopperScope,createRovingFocusGroupScope]),usePopperScope=createPopperScope(),useRovingFocusGroupScope=createRovingFocusGroupScope(),[MenuProvider,useMenuContext]=createMenuContext(MENU_NAME),[MenuRootProvider,useMenuRootContext]=createMenuContext(MENU_NAME),Menu=lV=>{const{__scopeMenu:J,open:VV=!1,children:RV,dir:UV,onOpenChange:ZV,modal:WV=!0}=lV,IV=usePopperScope(J),[dV,CV]=reactExports.useState(null),FV=reactExports.useRef(!1),NV=useCallbackRef$1(ZV),gV=useDirection(UV);return reactExports.useEffect(()=>{const eV=()=>{FV.current=!0,document.addEventListener("pointerdown",JV,{capture:!0,once:!0}),document.addEventListener("pointermove",JV,{capture:!0,once:!0})},JV=()=>FV.current=!1;return document.addEventListener("keydown",eV,{capture:!0}),()=>{document.removeEventListener("keydown",eV,{capture:!0}),document.removeEventListener("pointerdown",JV,{capture:!0}),document.removeEventListener("pointermove",JV,{capture:!0})}},[]),jsxRuntimeExports.jsx(Root2$1,{...IV,children:jsxRuntimeExports.jsx(MenuProvider,{scope:J,open:VV,onOpenChange:NV,content:dV,onContentChange:CV,children:jsxRuntimeExports.jsx(MenuRootProvider,{scope:J,onClose:reactExports.useCallback(()=>NV(!1),[NV]),isUsingKeyboardRef:FV,dir:gV,modal:WV,children:RV})})})};Menu.displayName=MENU_NAME;var ANCHOR_NAME="MenuAnchor",MenuAnchor=reactExports.forwardRef((lV,J)=>{const{__scopeMenu:VV,...RV}=lV,UV=usePopperScope(VV);return jsxRuntimeExports.jsx(Anchor,{...UV,...RV,ref:J})});MenuAnchor.displayName=ANCHOR_NAME;var PORTAL_NAME$1="MenuPortal",[PortalProvider,usePortalContext]=createMenuContext(PORTAL_NAME$1,{forceMount:void 0}),MenuPortal=lV=>{const{__scopeMenu:J,forceMount:VV,children:RV,container:UV}=lV,ZV=useMenuContext(PORTAL_NAME$1,J);return jsxRuntimeExports.jsx(PortalProvider,{scope:J,forceMount:VV,children:jsxRuntimeExports.jsx(Presence,{present:VV||ZV.open,children:jsxRuntimeExports.jsx(Portal$1,{asChild:!0,container:UV,children:RV})})})};MenuPortal.displayName=PORTAL_NAME$1;var CONTENT_NAME$1="MenuContent",[MenuContentProvider,useMenuContentContext]=createMenuContext(CONTENT_NAME$1),MenuContent=reactExports.forwardRef((lV,J)=>{const VV=usePortalContext(CONTENT_NAME$1,lV.__scopeMenu),{forceMount:RV=VV.forceMount,...UV}=lV,ZV=useMenuContext(CONTENT_NAME$1,lV.__scopeMenu),WV=useMenuRootContext(CONTENT_NAME$1,lV.__scopeMenu);return jsxRuntimeExports.jsx(Collection.Provider,{scope:lV.__scopeMenu,children:jsxRuntimeExports.jsx(Presence,{present:RV||ZV.open,children:jsxRuntimeExports.jsx(Collection.Slot,{scope:lV.__scopeMenu,children:WV.modal?jsxRuntimeExports.jsx(MenuRootContentModal,{...UV,ref:J}):jsxRuntimeExports.jsx(MenuRootContentNonModal,{...UV,ref:J})})})})}),MenuRootContentModal=reactExports.forwardRef((lV,J)=>{const VV=useMenuContext(CONTENT_NAME$1,lV.__scopeMenu),RV=reactExports.useRef(null),UV=useComposedRefs(J,RV);return reactExports.useEffect(()=>{const ZV=RV.current;if(ZV)return hideOthers(ZV)},[]),jsxRuntimeExports.jsx(MenuContentImpl,{...lV,ref:UV,trapFocus:VV.open,disableOutsidePointerEvents:VV.open,disableOutsideScroll:!0,onFocusOutside:composeEventHandlers(lV.onFocusOutside,ZV=>ZV.preventDefault(),{checkForDefaultPrevented:!1}),onDismiss:()=>VV.onOpenChange(!1)})}),MenuRootContentNonModal=reactExports.forwardRef((lV,J)=>{const VV=useMenuContext(CONTENT_NAME$1,lV.__scopeMenu);return jsxRuntimeExports.jsx(MenuContentImpl,{...lV,ref:J,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>VV.onOpenChange(!1)})}),MenuContentImpl=reactExports.forwardRef((lV,J)=>{const{__scopeMenu:VV,loop:RV=!1,trapFocus:UV,onOpenAutoFocus:ZV,onCloseAutoFocus:WV,disableOutsidePointerEvents:IV,onEntryFocus:dV,onEscapeKeyDown:CV,onPointerDownOutside:FV,onFocusOutside:NV,onInteractOutside:gV,onDismiss:eV,disableOutsideScroll:JV,...nV}=lV,aV=useMenuContext(CONTENT_NAME$1,VV),GV=useMenuRootContext(CONTENT_NAME$1,VV),cV=usePopperScope(VV),TV=useRovingFocusGroupScope(VV),iV=useCollection(VV),[tV,MV]=reactExports.useState(null),AV=reactExports.useRef(null),pV=useComposedRefs(J,AV,aV.onContentChange),HV=reactExports.useRef(0),oV=reactExports.useRef(""),DV=reactExports.useRef(0),wV=reactExports.useRef(null),qV=reactExports.useRef("right"),Cl=reactExports.useRef(0),nl=JV?ReactRemoveScroll:reactExports.Fragment,Il=JV?{as:Slot,allowPinchZoom:!0}:void 0,LV=$V=>{var jl,Ll;const dl=oV.current+$V,Wl=iV().filter(ol=>!ol.disabled),el=document.activeElement,pl=(jl=Wl.find(ol=>ol.ref.current===el))==null?void 0:jl.textValue,ml=Wl.map(ol=>ol.textValue),Bl=getNextMatch(ml,dl,pl),xl=(Ll=Wl.find(ol=>ol.textValue===Bl))==null?void 0:Ll.ref.current;(function ol(Tl){oV.current=Tl,window.clearTimeout(HV.current),Tl!==""&&(HV.current=window.setTimeout(()=>ol(""),1e3))})(dl),xl&&setTimeout(()=>xl.focus())};reactExports.useEffect(()=>()=>window.clearTimeout(HV.current),[]),useFocusGuards();const OV=reactExports.useCallback($V=>{var Wl,el;return qV.current===((Wl=wV.current)==null?void 0:Wl.side)&&isPointerInGraceArea($V,(el=wV.current)==null?void 0:el.area)},[]);return jsxRuntimeExports.jsx(MenuContentProvider,{scope:VV,searchRef:oV,onItemEnter:reactExports.useCallback($V=>{OV($V)&&$V.preventDefault()},[OV]),onItemLeave:reactExports.useCallback($V=>{var dl;OV($V)||((dl=AV.current)==null||dl.focus(),MV(null))},[OV]),onTriggerLeave:reactExports.useCallback($V=>{OV($V)&&$V.preventDefault()},[OV]),pointerGraceTimerRef:DV,onPointerGraceIntentChange:reactExports.useCallback($V=>{wV.current=$V},[]),children:jsxRuntimeExports.jsx(nl,{...Il,children:jsxRuntimeExports.jsx(FocusScope,{asChild:!0,trapped:UV,onMountAutoFocus:composeEventHandlers(ZV,$V=>{var dl;$V.preventDefault(),(dl=AV.current)==null||dl.focus({preventScroll:!0})}),onUnmountAutoFocus:WV,children:jsxRuntimeExports.jsx(DismissableLayer,{asChild:!0,disableOutsidePointerEvents:IV,onEscapeKeyDown:CV,onPointerDownOutside:FV,onFocusOutside:NV,onInteractOutside:gV,onDismiss:eV,children:jsxRuntimeExports.jsx(Root$1,{asChild:!0,...TV,dir:GV.dir,orientation:"vertical",loop:RV,currentTabStopId:tV,onCurrentTabStopIdChange:MV,onEntryFocus:composeEventHandlers(dV,$V=>{GV.isUsingKeyboardRef.current||$V.preventDefault()}),preventScrollOnEntryFocus:!0,children:jsxRuntimeExports.jsx(Content,{role:"menu","aria-orientation":"vertical","data-state":getOpenState(aV.open),"data-radix-menu-content":"",dir:GV.dir,...cV,...nV,ref:pV,style:{outline:"none",...nV.style},onKeyDown:composeEventHandlers(nV.onKeyDown,$V=>{const Wl=$V.target.closest("[data-radix-menu-content]")===$V.currentTarget,el=$V.ctrlKey||$V.altKey||$V.metaKey,pl=$V.key.length===1;Wl&&($V.key==="Tab"&&$V.preventDefault(),!el&&pl&&LV($V.key));const ml=AV.current;if($V.target!==ml||!FIRST_LAST_KEYS.includes($V.key))return;$V.preventDefault();const xl=iV().filter(jl=>!jl.disabled).map(jl=>jl.ref.current);LAST_KEYS.includes($V.key)&&xl.reverse(),focusFirst(xl)}),onBlur:composeEventHandlers(lV.onBlur,$V=>{$V.currentTarget.contains($V.target)||(window.clearTimeout(HV.current),oV.current="")}),onPointerMove:composeEventHandlers(lV.onPointerMove,whenMouse($V=>{const dl=$V.target,Wl=Cl.current!==$V.clientX;if($V.currentTarget.contains(dl)&&Wl){const el=$V.clientX>Cl.current?"right":"left";qV.current=el,Cl.current=$V.clientX}}))})})})})})})});MenuContent.displayName=CONTENT_NAME$1;var GROUP_NAME$1="MenuGroup",MenuGroup=reactExports.forwardRef((lV,J)=>{const{__scopeMenu:VV,...RV}=lV;return jsxRuntimeExports.jsx(Primitive.div,{role:"group",...RV,ref:J})});MenuGroup.displayName=GROUP_NAME$1;var LABEL_NAME$1="MenuLabel",MenuLabel=reactExports.forwardRef((lV,J)=>{const{__scopeMenu:VV,...RV}=lV;return jsxRuntimeExports.jsx(Primitive.div,{...RV,ref:J})});MenuLabel.displayName=LABEL_NAME$1;var ITEM_NAME$1="MenuItem",ITEM_SELECT="menu.itemSelect",MenuItem=reactExports.forwardRef((lV,J)=>{const{disabled:VV=!1,onSelect:RV,...UV}=lV,ZV=reactExports.useRef(null),WV=useMenuRootContext(ITEM_NAME$1,lV.__scopeMenu),IV=useMenuContentContext(ITEM_NAME$1,lV.__scopeMenu),dV=useComposedRefs(J,ZV),CV=reactExports.useRef(!1),FV=()=>{const NV=ZV.current;if(!VV&&NV){const gV=new CustomEvent(ITEM_SELECT,{bubbles:!0,cancelable:!0});NV.addEventListener(ITEM_SELECT,eV=>RV==null?void 0:RV(eV),{once:!0}),dispatchDiscreteCustomEvent(NV,gV),gV.defaultPrevented?CV.current=!1:WV.onClose()}};return jsxRuntimeExports.jsx(MenuItemImpl,{...UV,ref:dV,disabled:VV,onClick:composeEventHandlers(lV.onClick,FV),onPointerDown:NV=>{var gV;(gV=lV.onPointerDown)==null||gV.call(lV,NV),CV.current=!0},onPointerUp:composeEventHandlers(lV.onPointerUp,NV=>{var gV;CV.current||(gV=NV.currentTarget)==null||gV.click()}),onKeyDown:composeEventHandlers(lV.onKeyDown,NV=>{const gV=IV.searchRef.current!=="";VV||gV&&NV.key===" "||SELECTION_KEYS.includes(NV.key)&&(NV.currentTarget.click(),NV.preventDefault())})})});MenuItem.displayName=ITEM_NAME$1;var MenuItemImpl=reactExports.forwardRef((lV,J)=>{const{__scopeMenu:VV,disabled:RV=!1,textValue:UV,...ZV}=lV,WV=useMenuContentContext(ITEM_NAME$1,VV),IV=useRovingFocusGroupScope(VV),dV=reactExports.useRef(null),CV=useComposedRefs(J,dV),[FV,NV]=reactExports.useState(!1),[gV,eV]=reactExports.useState("");return reactExports.useEffect(()=>{const JV=dV.current;JV&&eV((JV.textContent??"").trim())},[ZV.children]),jsxRuntimeExports.jsx(Collection.ItemSlot,{scope:VV,disabled:RV,textValue:UV??gV,children:jsxRuntimeExports.jsx(Item,{asChild:!0,...IV,focusable:!RV,children:jsxRuntimeExports.jsx(Primitive.div,{role:"menuitem","data-highlighted":FV?"":void 0,"aria-disabled":RV||void 0,"data-disabled":RV?"":void 0,...ZV,ref:CV,onPointerMove:composeEventHandlers(lV.onPointerMove,whenMouse(JV=>{RV?WV.onItemLeave(JV):(WV.onItemEnter(JV),JV.defaultPrevented||JV.currentTarget.focus({preventScroll:!0}))})),onPointerLeave:composeEventHandlers(lV.onPointerLeave,whenMouse(JV=>WV.onItemLeave(JV))),onFocus:composeEventHandlers(lV.onFocus,()=>NV(!0)),onBlur:composeEventHandlers(lV.onBlur,()=>NV(!1))})})})}),CHECKBOX_ITEM_NAME$1="MenuCheckboxItem",MenuCheckboxItem=reactExports.forwardRef((lV,J)=>{const{checked:VV=!1,onCheckedChange:RV,...UV}=lV;return jsxRuntimeExports.jsx(ItemIndicatorProvider,{scope:lV.__scopeMenu,checked:VV,children:jsxRuntimeExports.jsx(MenuItem,{role:"menuitemcheckbox","aria-checked":isIndeterminate(VV)?"mixed":VV,...UV,ref:J,"data-state":getCheckedState(VV),onSelect:composeEventHandlers(UV.onSelect,()=>RV==null?void 0:RV(isIndeterminate(VV)?!0:!VV),{checkForDefaultPrevented:!1})})})});MenuCheckboxItem.displayName=CHECKBOX_ITEM_NAME$1;var RADIO_GROUP_NAME$1="MenuRadioGroup",[RadioGroupProvider,useRadioGroupContext]=createMenuContext(RADIO_GROUP_NAME$1,{value:void 0,onValueChange:()=>{}}),MenuRadioGroup=reactExports.forwardRef((lV,J)=>{const{value:VV,onValueChange:RV,...UV}=lV,ZV=useCallbackRef$1(RV);return jsxRuntimeExports.jsx(RadioGroupProvider,{scope:lV.__scopeMenu,value:VV,onValueChange:ZV,children:jsxRuntimeExports.jsx(MenuGroup,{...UV,ref:J})})});MenuRadioGroup.displayName=RADIO_GROUP_NAME$1;var RADIO_ITEM_NAME$1="MenuRadioItem",MenuRadioItem=reactExports.forwardRef((lV,J)=>{const{value:VV,...RV}=lV,UV=useRadioGroupContext(RADIO_ITEM_NAME$1,lV.__scopeMenu),ZV=VV===UV.value;return jsxRuntimeExports.jsx(ItemIndicatorProvider,{scope:lV.__scopeMenu,checked:ZV,children:jsxRuntimeExports.jsx(MenuItem,{role:"menuitemradio","aria-checked":ZV,...RV,ref:J,"data-state":getCheckedState(ZV),onSelect:composeEventHandlers(RV.onSelect,()=>{var WV;return(WV=UV.onValueChange)==null?void 0:WV.call(UV,VV)},{checkForDefaultPrevented:!1})})})});MenuRadioItem.displayName=RADIO_ITEM_NAME$1;var ITEM_INDICATOR_NAME="MenuItemIndicator",[ItemIndicatorProvider,useItemIndicatorContext]=createMenuContext(ITEM_INDICATOR_NAME,{checked:!1}),MenuItemIndicator=reactExports.forwardRef((lV,J)=>{const{__scopeMenu:VV,forceMount:RV,...UV}=lV,ZV=useItemIndicatorContext(ITEM_INDICATOR_NAME,VV);return jsxRuntimeExports.jsx(Presence,{present:RV||isIndeterminate(ZV.checked)||ZV.checked===!0,children:jsxRuntimeExports.jsx(Primitive.span,{...UV,ref:J,"data-state":getCheckedState(ZV.checked)})})});MenuItemIndicator.displayName=ITEM_INDICATOR_NAME;var SEPARATOR_NAME$1="MenuSeparator",MenuSeparator=reactExports.forwardRef((lV,J)=>{const{__scopeMenu:VV,...RV}=lV;return jsxRuntimeExports.jsx(Primitive.div,{role:"separator","aria-orientation":"horizontal",...RV,ref:J})});MenuSeparator.displayName=SEPARATOR_NAME$1;var ARROW_NAME$1="MenuArrow",MenuArrow=reactExports.forwardRef((lV,J)=>{const{__scopeMenu:VV,...RV}=lV,UV=usePopperScope(VV);return jsxRuntimeExports.jsx(Arrow,{...UV,...RV,ref:J})});MenuArrow.displayName=ARROW_NAME$1;var SUB_NAME="MenuSub",[MenuSubProvider,useMenuSubContext]=createMenuContext(SUB_NAME),SUB_TRIGGER_NAME$1="MenuSubTrigger",MenuSubTrigger=reactExports.forwardRef((lV,J)=>{const VV=useMenuContext(SUB_TRIGGER_NAME$1,lV.__scopeMenu),RV=useMenuRootContext(SUB_TRIGGER_NAME$1,lV.__scopeMenu),UV=useMenuSubContext(SUB_TRIGGER_NAME$1,lV.__scopeMenu),ZV=useMenuContentContext(SUB_TRIGGER_NAME$1,lV.__scopeMenu),WV=reactExports.useRef(null),{pointerGraceTimerRef:IV,onPointerGraceIntentChange:dV}=ZV,CV={__scopeMenu:lV.__scopeMenu},FV=reactExports.useCallback(()=>{WV.current&&window.clearTimeout(WV.current),WV.current=null},[]);return reactExports.useEffect(()=>FV,[FV]),reactExports.useEffect(()=>{const NV=IV.current;return()=>{window.clearTimeout(NV),dV(null)}},[IV,dV]),jsxRuntimeExports.jsx(MenuAnchor,{asChild:!0,...CV,children:jsxRuntimeExports.jsx(MenuItemImpl,{id:UV.triggerId,"aria-haspopup":"menu","aria-expanded":VV.open,"aria-controls":UV.contentId,"data-state":getOpenState(VV.open),...lV,ref:composeRefs(J,UV.onTriggerChange),onClick:NV=>{var gV;(gV=lV.onClick)==null||gV.call(lV,NV),!(lV.disabled||NV.defaultPrevented)&&(NV.currentTarget.focus(),VV.open||VV.onOpenChange(!0))},onPointerMove:composeEventHandlers(lV.onPointerMove,whenMouse(NV=>{ZV.onItemEnter(NV),!NV.defaultPrevented&&!lV.disabled&&!VV.open&&!WV.current&&(ZV.onPointerGraceIntentChange(null),WV.current=window.setTimeout(()=>{VV.onOpenChange(!0),FV()},100))})),onPointerLeave:composeEventHandlers(lV.onPointerLeave,whenMouse(NV=>{var eV,JV;FV();const gV=(eV=VV.content)==null?void 0:eV.getBoundingClientRect();if(gV){const nV=(JV=VV.content)==null?void 0:JV.dataset.side,aV=nV==="right",GV=aV?-5:5,cV=gV[aV?"left":"right"],TV=gV[aV?"right":"left"];ZV.onPointerGraceIntentChange({area:[{x:NV.clientX+GV,y:NV.clientY},{x:cV,y:gV.top},{x:TV,y:gV.top},{x:TV,y:gV.bottom},{x:cV,y:gV.bottom}],side:nV}),window.clearTimeout(IV.current),IV.current=window.setTimeout(()=>ZV.onPointerGraceIntentChange(null),300)}else{if(ZV.onTriggerLeave(NV),NV.defaultPrevented)return;ZV.onPointerGraceIntentChange(null)}})),onKeyDown:composeEventHandlers(lV.onKeyDown,NV=>{var eV;const gV=ZV.searchRef.current!=="";lV.disabled||gV&&NV.key===" "||SUB_OPEN_KEYS[RV.dir].includes(NV.key)&&(VV.onOpenChange(!0),(eV=VV.content)==null||eV.focus(),NV.preventDefault())})})})});MenuSubTrigger.displayName=SUB_TRIGGER_NAME$1;var SUB_CONTENT_NAME$1="MenuSubContent",MenuSubContent=reactExports.forwardRef((lV,J)=>{const VV=usePortalContext(CONTENT_NAME$1,lV.__scopeMenu),{forceMount:RV=VV.forceMount,...UV}=lV,ZV=useMenuContext(CONTENT_NAME$1,lV.__scopeMenu),WV=useMenuRootContext(CONTENT_NAME$1,lV.__scopeMenu),IV=useMenuSubContext(SUB_CONTENT_NAME$1,lV.__scopeMenu),dV=reactExports.useRef(null),CV=useComposedRefs(J,dV);return jsxRuntimeExports.jsx(Collection.Provider,{scope:lV.__scopeMenu,children:jsxRuntimeExports.jsx(Presence,{present:RV||ZV.open,children:jsxRuntimeExports.jsx(Collection.Slot,{scope:lV.__scopeMenu,children:jsxRuntimeExports.jsx(MenuContentImpl,{id:IV.contentId,"aria-labelledby":IV.triggerId,...UV,ref:CV,align:"start",side:WV.dir==="rtl"?"left":"right",disableOutsidePointerEvents:!1,disableOutsideScroll:!1,trapFocus:!1,onOpenAutoFocus:FV=>{var NV;WV.isUsingKeyboardRef.current&&((NV=dV.current)==null||NV.focus()),FV.preventDefault()},onCloseAutoFocus:FV=>FV.preventDefault(),onFocusOutside:composeEventHandlers(lV.onFocusOutside,FV=>{FV.target!==IV.trigger&&ZV.onOpenChange(!1)}),onEscapeKeyDown:composeEventHandlers(lV.onEscapeKeyDown,FV=>{WV.onClose(),FV.preventDefault()}),onKeyDown:composeEventHandlers(lV.onKeyDown,FV=>{var eV;const NV=FV.currentTarget.contains(FV.target),gV=SUB_CLOSE_KEYS[WV.dir].includes(FV.key);NV&&gV&&(ZV.onOpenChange(!1),(eV=IV.trigger)==null||eV.focus(),FV.preventDefault())})})})})})});MenuSubContent.displayName=SUB_CONTENT_NAME$1;function getOpenState(lV){return lV?"open":"closed"}function isIndeterminate(lV){return lV==="indeterminate"}function getCheckedState(lV){return isIndeterminate(lV)?"indeterminate":lV?"checked":"unchecked"}function focusFirst(lV){const J=document.activeElement;for(const VV of lV)if(VV===J||(VV.focus(),document.activeElement!==J))return}function wrapArray(lV,J){return lV.map((VV,RV)=>lV[(J+RV)%lV.length])}function getNextMatch(lV,J,VV){const UV=J.length>1&&Array.from(J).every(CV=>CV===J[0])?J[0]:J,ZV=VV?lV.indexOf(VV):-1;let WV=wrapArray(lV,Math.max(ZV,0));UV.length===1&&(WV=WV.filter(CV=>CV!==VV));const dV=WV.find(CV=>CV.toLowerCase().startsWith(UV.toLowerCase()));return dV!==VV?dV:void 0}function isPointInPolygon(lV,J){const{x:VV,y:RV}=lV;let UV=!1;for(let ZV=0,WV=J.length-1;ZV<J.length;WV=ZV++){const IV=J[ZV].x,dV=J[ZV].y,CV=J[WV].x,FV=J[WV].y;dV>RV!=FV>RV&&VV<(CV-IV)*(RV-dV)/(FV-dV)+IV&&(UV=!UV)}return UV}function isPointerInGraceArea(lV,J){if(!J)return!1;const VV={x:lV.clientX,y:lV.clientY};return isPointInPolygon(VV,J)}function whenMouse(lV){return J=>J.pointerType==="mouse"?lV(J):void 0}var Root3=Menu,Anchor2=MenuAnchor,Portal=MenuPortal,Content2$1=MenuContent,Group=MenuGroup,Label=MenuLabel,Item2$1=MenuItem,CheckboxItem=MenuCheckboxItem,RadioGroup=MenuRadioGroup,RadioItem=MenuRadioItem,ItemIndicator=MenuItemIndicator,Separator=MenuSeparator,Arrow2=MenuArrow,SubTrigger=MenuSubTrigger,SubContent=MenuSubContent,DROPDOWN_MENU_NAME="DropdownMenu",[createDropdownMenuContext,createDropdownMenuScope]=createContextScope$3(DROPDOWN_MENU_NAME,[createMenuScope]),useMenuScope=createMenuScope(),[DropdownMenuProvider,useDropdownMenuContext]=createDropdownMenuContext(DROPDOWN_MENU_NAME),DropdownMenu$1=lV=>{const{__scopeDropdownMenu:J,children:VV,dir:RV,open:UV,defaultOpen:ZV,onOpenChange:WV,modal:IV=!0}=lV,dV=useMenuScope(J),CV=reactExports.useRef(null),[FV=!1,NV]=useControllableState({prop:UV,defaultProp:ZV,onChange:WV});return jsxRuntimeExports.jsx(DropdownMenuProvider,{scope:J,triggerId:useId(),triggerRef:CV,contentId:useId(),open:FV,onOpenChange:NV,onOpenToggle:reactExports.useCallback(()=>NV(gV=>!gV),[NV]),modal:IV,children:jsxRuntimeExports.jsx(Root3,{...dV,open:FV,onOpenChange:NV,dir:RV,modal:IV,children:VV})})};DropdownMenu$1.displayName=DROPDOWN_MENU_NAME;var TRIGGER_NAME="DropdownMenuTrigger",DropdownMenuTrigger$1=reactExports.forwardRef((lV,J)=>{const{__scopeDropdownMenu:VV,disabled:RV=!1,...UV}=lV,ZV=useDropdownMenuContext(TRIGGER_NAME,VV),WV=useMenuScope(VV);return jsxRuntimeExports.jsx(Anchor2,{asChild:!0,...WV,children:jsxRuntimeExports.jsx(Primitive.button,{type:"button",id:ZV.triggerId,"aria-haspopup":"menu","aria-expanded":ZV.open,"aria-controls":ZV.open?ZV.contentId:void 0,"data-state":ZV.open?"open":"closed","data-disabled":RV?"":void 0,disabled:RV,...UV,ref:composeRefs(J,ZV.triggerRef),onPointerDown:composeEventHandlers(lV.onPointerDown,IV=>{!RV&&IV.button===0&&IV.ctrlKey===!1&&(ZV.onOpenToggle(),ZV.open||IV.preventDefault())}),onKeyDown:composeEventHandlers(lV.onKeyDown,IV=>{RV||(["Enter"," "].includes(IV.key)&&ZV.onOpenToggle(),IV.key==="ArrowDown"&&ZV.onOpenChange(!0),["Enter"," ","ArrowDown"].includes(IV.key)&&IV.preventDefault())})})})});DropdownMenuTrigger$1.displayName=TRIGGER_NAME;var PORTAL_NAME="DropdownMenuPortal",DropdownMenuPortal=lV=>{const{__scopeDropdownMenu:J,...VV}=lV,RV=useMenuScope(J);return jsxRuntimeExports.jsx(Portal,{...RV,...VV})};DropdownMenuPortal.displayName=PORTAL_NAME;var CONTENT_NAME="DropdownMenuContent",DropdownMenuContent$1=reactExports.forwardRef((lV,J)=>{const{__scopeDropdownMenu:VV,...RV}=lV,UV=useDropdownMenuContext(CONTENT_NAME,VV),ZV=useMenuScope(VV),WV=reactExports.useRef(!1);return jsxRuntimeExports.jsx(Content2$1,{id:UV.contentId,"aria-labelledby":UV.triggerId,...ZV,...RV,ref:J,onCloseAutoFocus:composeEventHandlers(lV.onCloseAutoFocus,IV=>{var dV;WV.current||(dV=UV.triggerRef.current)==null||dV.focus(),WV.current=!1,IV.preventDefault()}),onInteractOutside:composeEventHandlers(lV.onInteractOutside,IV=>{const dV=IV.detail.originalEvent,CV=dV.button===0&&dV.ctrlKey===!0,FV=dV.button===2||CV;(!UV.modal||FV)&&(WV.current=!0)}),style:{...lV.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});DropdownMenuContent$1.displayName=CONTENT_NAME;var GROUP_NAME="DropdownMenuGroup",DropdownMenuGroup=reactExports.forwardRef((lV,J)=>{const{__scopeDropdownMenu:VV,...RV}=lV,UV=useMenuScope(VV);return jsxRuntimeExports.jsx(Group,{...UV,...RV,ref:J})});DropdownMenuGroup.displayName=GROUP_NAME;var LABEL_NAME="DropdownMenuLabel",DropdownMenuLabel$1=reactExports.forwardRef((lV,J)=>{const{__scopeDropdownMenu:VV,...RV}=lV,UV=useMenuScope(VV);return jsxRuntimeExports.jsx(Label,{...UV,...RV,ref:J})});DropdownMenuLabel$1.displayName=LABEL_NAME;var ITEM_NAME="DropdownMenuItem",DropdownMenuItem$1=reactExports.forwardRef((lV,J)=>{const{__scopeDropdownMenu:VV,...RV}=lV,UV=useMenuScope(VV);return jsxRuntimeExports.jsx(Item2$1,{...UV,...RV,ref:J})});DropdownMenuItem$1.displayName=ITEM_NAME;var CHECKBOX_ITEM_NAME="DropdownMenuCheckboxItem",DropdownMenuCheckboxItem$1=reactExports.forwardRef((lV,J)=>{const{__scopeDropdownMenu:VV,...RV}=lV,UV=useMenuScope(VV);return jsxRuntimeExports.jsx(CheckboxItem,{...UV,...RV,ref:J})});DropdownMenuCheckboxItem$1.displayName=CHECKBOX_ITEM_NAME;var RADIO_GROUP_NAME="DropdownMenuRadioGroup",DropdownMenuRadioGroup=reactExports.forwardRef((lV,J)=>{const{__scopeDropdownMenu:VV,...RV}=lV,UV=useMenuScope(VV);return jsxRuntimeExports.jsx(RadioGroup,{...UV,...RV,ref:J})});DropdownMenuRadioGroup.displayName=RADIO_GROUP_NAME;var RADIO_ITEM_NAME="DropdownMenuRadioItem",DropdownMenuRadioItem$1=reactExports.forwardRef((lV,J)=>{const{__scopeDropdownMenu:VV,...RV}=lV,UV=useMenuScope(VV);return jsxRuntimeExports.jsx(RadioItem,{...UV,...RV,ref:J})});DropdownMenuRadioItem$1.displayName=RADIO_ITEM_NAME;var INDICATOR_NAME="DropdownMenuItemIndicator",DropdownMenuItemIndicator=reactExports.forwardRef((lV,J)=>{const{__scopeDropdownMenu:VV,...RV}=lV,UV=useMenuScope(VV);return jsxRuntimeExports.jsx(ItemIndicator,{...UV,...RV,ref:J})});DropdownMenuItemIndicator.displayName=INDICATOR_NAME;var SEPARATOR_NAME="DropdownMenuSeparator",DropdownMenuSeparator$1=reactExports.forwardRef((lV,J)=>{const{__scopeDropdownMenu:VV,...RV}=lV,UV=useMenuScope(VV);return jsxRuntimeExports.jsx(Separator,{...UV,...RV,ref:J})});DropdownMenuSeparator$1.displayName=SEPARATOR_NAME;var ARROW_NAME="DropdownMenuArrow",DropdownMenuArrow=reactExports.forwardRef((lV,J)=>{const{__scopeDropdownMenu:VV,...RV}=lV,UV=useMenuScope(VV);return jsxRuntimeExports.jsx(Arrow2,{...UV,...RV,ref:J})});DropdownMenuArrow.displayName=ARROW_NAME;var SUB_TRIGGER_NAME="DropdownMenuSubTrigger",DropdownMenuSubTrigger$1=reactExports.forwardRef((lV,J)=>{const{__scopeDropdownMenu:VV,...RV}=lV,UV=useMenuScope(VV);return jsxRuntimeExports.jsx(SubTrigger,{...UV,...RV,ref:J})});DropdownMenuSubTrigger$1.displayName=SUB_TRIGGER_NAME;var SUB_CONTENT_NAME="DropdownMenuSubContent",DropdownMenuSubContent$1=reactExports.forwardRef((lV,J)=>{const{__scopeDropdownMenu:VV,...RV}=lV,UV=useMenuScope(VV);return jsxRuntimeExports.jsx(SubContent,{...UV,...RV,ref:J,style:{...lV.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});DropdownMenuSubContent$1.displayName=SUB_CONTENT_NAME;var Root2=DropdownMenu$1,Trigger=DropdownMenuTrigger$1,Portal2=DropdownMenuPortal,Content2=DropdownMenuContent$1,Label2=DropdownMenuLabel$1,Item2=DropdownMenuItem$1,CheckboxItem2=DropdownMenuCheckboxItem$1,RadioItem2=DropdownMenuRadioItem$1,ItemIndicator2=DropdownMenuItemIndicator,Separator2=DropdownMenuSeparator$1,SubTrigger2=DropdownMenuSubTrigger$1,SubContent2=DropdownMenuSubContent$1;const DropdownMenu=Root2,DropdownMenuTrigger=Trigger,DropdownMenuSubTrigger=reactExports.forwardRef(({className:lV,inset:J,children:VV,...RV},UV)=>jsxRuntimeExports.jsxs(SubTrigger2,{ref:UV,className:cn$1("flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-slate-100 data-[state=open]:bg-slate-100 dark:focus:bg-slate-800 dark:data-[state=open]:bg-slate-800",J&&"pl-8",lV),...RV,children:[VV,jsxRuntimeExports.jsx(ChevronRightIcon,{className:"ml-auto h-4 w-4"})]}));DropdownMenuSubTrigger.displayName=SubTrigger2.displayName;const DropdownMenuSubContent=reactExports.forwardRef(({className:lV,...J},VV)=>jsxRuntimeExports.jsx(SubContent2,{ref:VV,className:cn$1("z-50 min-w-[8rem] overflow-hidden rounded-md border border-slate-200 bg-white p-1 text-slate-950 shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 dark:border-slate-800 dark:bg-slate-950 dark:text-slate-50",lV),...J}));DropdownMenuSubContent.displayName=SubContent2.displayName;const DropdownMenuContent=reactExports.forwardRef(({className:lV,sideOffset:J=4,...VV},RV)=>jsxRuntimeExports.jsx(Portal2,{children:jsxRuntimeExports.jsx(Content2,{ref:RV,sideOffset:J,className:cn$1("z-50 min-w-[8rem] overflow-hidden rounded-md border border-slate-200 bg-white p-1 text-slate-950 shadow-md dark:border-slate-800 dark:bg-slate-950 dark:text-slate-50","data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",lV),...VV})}));DropdownMenuContent.displayName=Content2.displayName;const DropdownMenuItem=reactExports.forwardRef(({className:lV,inset:J,...VV},RV)=>jsxRuntimeExports.jsx(Item2,{ref:RV,className:cn$1("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-slate-100 focus:text-slate-900 data-[disabled]:pointer-events-none data-[disabled]:opacity-50 dark:focus:bg-slate-800 dark:focus:text-slate-50",J&&"pl-8",lV),...VV}));DropdownMenuItem.displayName=Item2.displayName;const DropdownMenuCheckboxItem=reactExports.forwardRef(({className:lV,children:J,checked:VV,...RV},UV)=>jsxRuntimeExports.jsxs(CheckboxItem2,{ref:UV,className:cn$1("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-slate-100 focus:text-slate-900 data-[disabled]:pointer-events-none data-[disabled]:opacity-50 dark:focus:bg-slate-800 dark:focus:text-slate-50",lV),checked:VV,...RV,children:[jsxRuntimeExports.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:jsxRuntimeExports.jsx(ItemIndicator2,{children:jsxRuntimeExports.jsx(CheckIcon,{className:"h-4 w-4"})})}),J]}));DropdownMenuCheckboxItem.displayName=CheckboxItem2.displayName;const DropdownMenuRadioItem=reactExports.forwardRef(({className:lV,children:J,...VV},RV)=>jsxRuntimeExports.jsxs(RadioItem2,{ref:RV,className:cn$1("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-slate-100 focus:text-slate-900 data-[disabled]:pointer-events-none data-[disabled]:opacity-50 dark:focus:bg-slate-800 dark:focus:text-slate-50",lV),...VV,children:[jsxRuntimeExports.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:jsxRuntimeExports.jsx(ItemIndicator2,{children:jsxRuntimeExports.jsx(DotFilledIcon,{className:"h-4 w-4 fill-current"})})}),J]}));DropdownMenuRadioItem.displayName=RadioItem2.displayName;const DropdownMenuLabel=reactExports.forwardRef(({className:lV,inset:J,...VV},RV)=>jsxRuntimeExports.jsx(Label2,{ref:RV,className:cn$1("px-2 py-1.5 text-sm font-semibold",J&&"pl-8",lV),...VV}));DropdownMenuLabel.displayName=Label2.displayName;const DropdownMenuSeparator=reactExports.forwardRef(({className:lV,...J},VV)=>jsxRuntimeExports.jsx(Separator2,{ref:VV,className:cn$1("-mx-1 my-1 h-px bg-slate-100 dark:bg-slate-800",lV),...J}));DropdownMenuSeparator.displayName=Separator2.displayName;const PcbViewerWithContainerHeight=({containerClassName:lV,...J})=>{const VV=reactExports.useRef(null),[RV,UV]=reactExports.useState(620);return reactExports.useLayoutEffect(()=>{const ZV=()=>{if(VV.current){const IV=VV.current.clientHeight,dV=window.innerHeight;UV(Math.min(Math.max(IV,620),dV))}};ZV();const WV=new ResizeObserver(ZV);return VV.current&&WV.observe(VV.current),window.addEventListener("resize",ZV),()=>{WV.disconnect(),window.removeEventListener("resize",ZV)}},[]),jsxRuntimeExports.jsx("div",{ref:VV,className:lV||"w-full h-full",children:jsxRuntimeExports.jsx(distExports$1.PCBViewer,{...J,height:RV})})},styles=".invisible{visibility:hidden}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.left-2{left:.5rem}.right-4{right:1rem}.right-\\[4px\\]{right:4px}.top-2{top:.5rem}.top-4{top:1rem}.top-\\[6px\\]{top:6px}.z-50{z-index:50}.z-\\[100\\]{z-index:100}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.my-1{margin-bottom:.25rem;margin-top:.25rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.ml-1{margin-left:.25rem}.ml-1\\.5{margin-left:.375rem}.ml-2{margin-left:.5rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mt-0{margin-top:0}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.contents{display:contents}.hidden{display:none}.h-1{height:.25rem}.h-10{height:2.5rem}.h-2{height:.5rem}.h-3{height:.75rem}.h-3\\.5{height:.875rem}.h-4{height:1rem}.h-60{height:15rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\\[620px\\]{height:620px}.h-\\[calc\\(100vh-96px\\)\\]{height:calc(100vh - 96px)}.h-full{height:100%}.h-px{height:1px}.max-h-\\[500px\\]{max-height:500px}.min-h-\\[620px\\]{min-height:620px}.min-h-\\[calc\\(100vh-240px\\)\\]{min-height:calc(100vh - 240px)}.w-1{width:.25rem}.w-11{width:2.75rem}.w-11\\/12{width:91.666667%}.w-2{width:.5rem}.w-3{width:.75rem}.w-3\\.5{width:.875rem}.w-4{width:1rem}.w-9{width:2.25rem}.w-96{width:24rem}.w-full{width:100%}.min-w-\\[8rem\\]{min-width:8rem}.max-w-2xl{max-width:42rem}.flex-grow{flex-grow:1}.table-auto{table-layout:auto}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.5rem*var(--tw-space-x-reverse))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-sm{border-radius:.125rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.border-green-200{--tw-border-opacity:1;border-color:rgb(187 247 208/var(--tw-border-opacity,1))}.border-red-200{--tw-border-opacity:1;border-color:rgb(254 202 202/var(--tw-border-opacity,1))}.border-slate-200{--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity,1))}.bg-black{background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.bg-black,.bg-blue-50{--tw-bg-opacity:1}.bg-blue-50{background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.bg-blue-500{--tw-bg-opacity:1;background-color:rgb(59 130 246/var(--tw-bg-opacity,1))}.bg-blue-600{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.bg-gray-500{--tw-bg-opacity:1;background-color:rgb(107 114 128/var(--tw-bg-opacity,1))}.bg-gray-800{--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity,1))}.bg-green-50{--tw-bg-opacity:1;background-color:rgb(240 253 244/var(--tw-bg-opacity,1))}.bg-orange-400{--tw-bg-opacity:1;background-color:rgb(251 146 60/var(--tw-bg-opacity,1))}.bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}.bg-red-900{--tw-bg-opacity:1;background-color:rgb(127 29 29/var(--tw-bg-opacity,1))}.bg-slate-100{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.bg-slate-50{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.bg-slate-800{--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.bg-slate-900{--tw-bg-opacity:1;background-color:rgb(15 23 42/var(--tw-bg-opacity,1))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-opacity-50{--tw-bg-opacity:0.5}.fill-current{fill:currentColor}.p-0{padding:0}.p-0\\.5{padding:.125rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-8{padding-left:2rem;padding-right:2rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-1\\.5{padding-bottom:.375rem;padding-top:.375rem}.py-10{padding-bottom:2.5rem;padding-top:2.5rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.pl-8{padding-left:2rem}.pr-2{padding-right:.5rem}.text-left{text-align:left}.text-center{text-align:center}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\\[8px\\]{font-size:8px}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.capitalize{text-transform:capitalize}.leading-5{line-height:1.25rem}.tracking-widest{letter-spacing:.1em}.text-blue-300{--tw-text-opacity:1;color:rgb(147 197 253/var(--tw-text-opacity,1))}.text-blue-500{--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity,1))}.text-green-500{--tw-text-opacity:1;color:rgb(34 197 94/var(--tw-text-opacity,1))}.text-green-700{--tw-text-opacity:1;color:rgb(21 128 61/var(--tw-text-opacity,1))}.text-green-800{--tw-text-opacity:1;color:rgb(22 101 52/var(--tw-text-opacity,1))}.text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.text-red-700{--tw-text-opacity:1;color:rgb(185 28 28/var(--tw-text-opacity,1))}.text-red-800{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity,1))}.text-slate-50{--tw-text-opacity:1;color:rgb(248 250 252/var(--tw-text-opacity,1))}.text-slate-500{--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}.text-slate-900{--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.text-slate-950{--tw-text-opacity:1;color:rgb(2 6 23/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.opacity-60{opacity:.6}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-md,.shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring-offset-white{--tw-ring-offset-color:#fff}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0) scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0) scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}.running{animation-play-state:running}.\\*\\:text-xs>*{font-size:.75rem;line-height:1rem}.hover\\:bg-blue-500:hover{--tw-bg-opacity:1;background-color:rgb(59 130 246/var(--tw-bg-opacity,1))}.hover\\:bg-blue-600:hover{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.hover\\:bg-gray-100:hover{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.hover\\:bg-red-500\\/90:hover{background-color:rgba(239,68,68,.9)}.hover\\:bg-slate-100:hover{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.hover\\:bg-slate-100\\/80:hover{background-color:rgba(241,245,249,.8)}.hover\\:bg-slate-900\\/90:hover{background-color:rgba(15,23,42,.9)}.hover\\:text-gray-800:hover{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity,1))}.hover\\:text-slate-900:hover{--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.hover\\:underline:hover{text-decoration-line:underline}.focus\\:bg-slate-100:focus{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.focus\\:text-slate-900:focus{--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.focus-visible\\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\\:ring-1:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\\:ring-2:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\\:ring-slate-950:focus-visible{--tw-ring-opacity:1;--tw-ring-color:rgb(2 6 23/var(--tw-ring-opacity,1))}.focus-visible\\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px}.disabled\\:pointer-events-none:disabled{pointer-events:none}.disabled\\:opacity-50:disabled{opacity:.5}.data-\\[disabled\\]\\:pointer-events-none[data-disabled]{pointer-events:none}.data-\\[state\\=active\\]\\:bg-white[data-state=active]{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.data-\\[state\\=open\\]\\:bg-slate-100[data-state=open]{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.data-\\[state\\=active\\]\\:text-slate-950[data-state=active]{--tw-text-opacity:1;color:rgb(2 6 23/var(--tw-text-opacity,1))}.data-\\[disabled\\]\\:opacity-50[data-disabled]{opacity:.5}.data-\\[state\\=active\\]\\:shadow[data-state=active]{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.data-\\[state\\=open\\]\\:animate-in[data-state=open]{animation-duration:.15s;animation-name:enter;--tw-enter-opacity:initial;--tw-enter-scale:initial;--tw-enter-rotate:initial;--tw-enter-translate-x:initial;--tw-enter-translate-y:initial}.data-\\[state\\=closed\\]\\:animate-out[data-state=closed]{animation-duration:.15s;animation-name:exit;--tw-exit-opacity:initial;--tw-exit-scale:initial;--tw-exit-rotate:initial;--tw-exit-translate-x:initial;--tw-exit-translate-y:initial}.data-\\[state\\=closed\\]\\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\\[state\\=open\\]\\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\\[state\\=closed\\]\\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\\[state\\=open\\]\\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\\[side\\=bottom\\]\\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:-0.5rem}.data-\\[side\\=left\\]\\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:0.5rem}.data-\\[side\\=right\\]\\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:-0.5rem}.data-\\[side\\=top\\]\\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:0.5rem}.dark\\:border-slate-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(30 41 59/var(--tw-border-opacity,1))}.dark\\:bg-red-900:is(.dark *){--tw-bg-opacity:1;background-color:rgb(127 29 29/var(--tw-bg-opacity,1))}.dark\\:bg-slate-50:is(.dark *){--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.dark\\:bg-slate-800:is(.dark *){--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.dark\\:bg-slate-950:is(.dark *){--tw-bg-opacity:1;background-color:rgb(2 6 23/var(--tw-bg-opacity,1))}.dark\\:text-slate-400:is(.dark *){--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}.dark\\:text-slate-50:is(.dark *){--tw-text-opacity:1;color:rgb(248 250 252/var(--tw-text-opacity,1))}.dark\\:text-slate-900:is(.dark *){--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.dark\\:ring-offset-slate-950:is(.dark *){--tw-ring-offset-color:#020617}.dark\\:hover\\:bg-red-900\\/90:hover:is(.dark *){background-color:rgba(127,29,29,.9)}.dark\\:hover\\:bg-slate-50\\/90:hover:is(.dark *){background-color:rgba(248,250,252,.9)}.dark\\:hover\\:bg-slate-800:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.dark\\:hover\\:bg-slate-800\\/80:hover:is(.dark *){background-color:rgba(30,41,59,.8)}.dark\\:hover\\:text-slate-50:hover:is(.dark *){--tw-text-opacity:1;color:rgb(248 250 252/var(--tw-text-opacity,1))}.dark\\:focus\\:bg-slate-800:focus:is(.dark *){--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.dark\\:focus\\:text-slate-50:focus:is(.dark *){--tw-text-opacity:1;color:rgb(248 250 252/var(--tw-text-opacity,1))}.dark\\:focus-visible\\:ring-slate-300:focus-visible:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgb(203 213 225/var(--tw-ring-opacity,1))}.dark\\:data-\\[state\\=active\\]\\:bg-slate-950[data-state=active]:is(.dark *){--tw-bg-opacity:1;background-color:rgb(2 6 23/var(--tw-bg-opacity,1))}.dark\\:data-\\[state\\=open\\]\\:bg-slate-800[data-state=open]:is(.dark *){--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.dark\\:data-\\[state\\=active\\]\\:text-slate-50[data-state=active]:is(.dark *){--tw-text-opacity:1;color:rgb(248 250 252/var(--tw-text-opacity,1))}@media (min-width:768px){.md\\:sticky{position:sticky}.md\\:top-2{top:.5rem}}",useStyles=()=>{reactExports.useEffect(()=>{if(document.querySelector('style[data-styles="tscircuit-runframe"]'))return;const J=document.createElement("style");J.setAttribute("data-styles","tscircuit-runframe"),J.textContent=styles,document.head.appendChild(J)},[])},CircuitJsonPreview=({code:lV,onRunClicked:J=void 0,tsxRunTriggerCount:VV,errorMessage:RV,circuitJsonKey:UV="",circuitJson:ZV,showCodeTab:WV=!1,codeTabContent:IV,showJsonTab:dV=!0,showImportAndFormatButtons:CV=!0,className:FV,headerClassName:NV,leftHeaderContent:gV,readOnly:eV,isStreaming:JV,onToggleFullScreen:nV,isFullScreen:aV,isRunningCode:GV,hasCodeChangedSinceLastRun:cV,onEditEvent:TV,editEvents:iV,defaultActiveTab:tV})=>{useStyles();const[MV,AV]=reactExports.useState(tV??"pcb");return reactExports.useEffect(()=>{RV&&AV("error")},[RV]),reactExports.useEffect(()=>{MV==="code"&&ZV&&!RV&&AV("pcb")},[ZV]),jsxRuntimeExports.jsx("div",{className:cn$1("flex flex-col relative",FV),children:jsxRuntimeExports.jsx("div",{className:"md:sticky md:top-2",children:jsxRuntimeExports.jsxs(Tabs,{value:MV,onValueChange:AV,className:"flex-grow flex flex-col p-2",children:[jsxRuntimeExports.jsxs("div",{className:cn$1("flex items-center gap-2",NV),children:[gV,gV&&jsxRuntimeExports.jsx("div",{className:"flex-grow"}),!gV&&jsxRuntimeExports.jsx("div",{className:"flex-grow"}),jsxRuntimeExports.jsxs(TabsList,{children:[WV&&jsxRuntimeExports.jsx(TabsTrigger,{value:"code",children:"Code"}),jsxRuntimeExports.jsxs(TabsTrigger,{value:"pcb",className:"whitespace-nowrap",children:[ZV&&jsxRuntimeExports.jsx("span",{className:cn$1("inline-flex items-center justify-center w-2 h-2 mr-1 text-xs font-bold text-white rounded-full",cV?"bg-gray-500":"bg-blue-500")}),"PCB"]}),jsxRuntimeExports.jsxs(TabsTrigger,{value:"schematic",className:"whitespace-nowrap",children:[ZV&&jsxRuntimeExports.jsx("span",{className:cn$1("inline-flex items-center justify-center w-2 h-2 mr-1 text-xs font-bold text-white rounded-full",cV?"bg-gray-500":"bg-blue-500")}),"Schematic"]}),jsxRuntimeExports.jsxs(TabsTrigger,{value:"cad",children:[ZV&&jsxRuntimeExports.jsx("span",{className:cn$1("inline-flex items-center justify-center w-2 h-2 mr-1 text-xs font-bold text-white rounded-full",cV?"bg-gray-500":"bg-blue-500")}),"3D"]}),jsxRuntimeExports.jsxs(DropdownMenu,{children:[jsxRuntimeExports.jsx(DropdownMenuTrigger,{asChild:!0,children:jsxRuntimeExports.jsxs("div",{className:"whitespace-nowrap p-2 mr-1 cursor-pointer relative",children:[jsxRuntimeExports.jsx(Ellipsis,{className:"w-4 h-4"}),RV&&jsxRuntimeExports.jsx("span",{className:"inline-flex absolute top-[6px] right-[4px] items-center justify-center w-1 h-1 ml-2 text-[8px] font-bold text-white bg-red-500 rounded-full"})]})}),jsxRuntimeExports.jsxs(DropdownMenuContent,{className:"*:text-xs",children:[jsxRuntimeExports.jsxs(DropdownMenuItem,{onSelect:()=>AV("error"),className:"flex",children:[jsxRuntimeExports.jsx(Check,{className:cn$1("w-3 h-3 mr-2",MV!=="error"&&"invisible")}),jsxRuntimeExports.jsx("div",{className:"flex-grow",children:"Errors"}),RV&&jsxRuntimeExports.jsx("span",{className:"inline-flex items-center justify-center w-3 h-3 ml-2 text-[8px] font-bold text-white bg-red-500 rounded-full",children:"1"})]}),jsxRuntimeExports.jsxs(DropdownMenuItem,{onSelect:()=>AV("bom"),children:[jsxRuntimeExports.jsx(Check,{className:cn$1("w-3 h-3 mr-2",MV!=="bom"&&"invisible")}),"Bill of Materials"]}),jsxRuntimeExports.jsxs(DropdownMenuItem,{onSelect:()=>AV("circuitjson"),children:[jsxRuntimeExports.jsx(Check,{className:cn$1("w-3 h-3 mr-2",MV!=="circuitjson"&&"invisible")}),"JSON"]})]})]})]}),nV&&jsxRuntimeExports.jsx(Button,{onClick:nV,variant:"ghost",children:aV?jsxRuntimeExports.jsx(Minimize,{size:16}):jsxRuntimeExports.jsx(Fullscreen,{size:16})})]}),WV&&jsxRuntimeExports.jsx(TabsContent,{value:"code",className:"flex-grow overflow-hidden",children:jsxRuntimeExports.jsx("div",{className:"h-full",children:IV})}),jsxRuntimeExports.jsx(TabsContent,{value:"pcb",children:jsxRuntimeExports.jsx("div",{className:cn$1("overflow-hidden",aV?"h-[calc(100vh-96px)]":"h-[620px]"),children:jsxRuntimeExports.jsx(ErrorBoundary,{fallback:jsxRuntimeExports.jsx("div",{children:"Error loading PCB viewer"}),children:ZV?jsxRuntimeExports.jsx(PcbViewerWithContainerHeight,{soup:ZV,containerClassName:cn$1("h-full w-full",aV?"min-h-[calc(100vh-240px)]":"min-h-[620px]")},UV):jsxRuntimeExports.jsx(PreviewEmptyState,{onRunClicked:J})})})}),jsxRuntimeExports.jsx(TabsContent,{value:"schematic",children:jsxRuntimeExports.jsx("div",{className:cn$1("overflow-auto",aV?"h-[calc(100vh-96px)]":"h-[620px]"),children:jsxRuntimeExports.jsx(ErrorBoundary,{fallback:jsxRuntimeExports.jsx("div",{children:"Error loading Schematic"}),children:ZV?jsxRuntimeExports.jsx(SchematicViewer,{circuitJson:ZV,containerStyle:{height:"100%"},editingEnabled:!0,onEditEvent:pV=>TV==null?void 0:TV(pV),editEvents:iV,debugGrid:!0}):jsxRuntimeExports.jsx(PreviewEmptyState,{onRunClicked:J})})})}),jsxRuntimeExports.jsx(TabsContent,{value:"cad",children:jsxRuntimeExports.jsx("div",{className:cn$1("overflow-auto",aV?"h-[calc(100vh-96px)]":"h-[620px]"),children:jsxRuntimeExports.jsx(ErrorBoundary,{FallbackComponent:ErrorFallback,children:ZV?jsxRuntimeExports.jsx(distExports$2.CadViewer,{soup:ZV}):jsxRuntimeExports.jsx(PreviewEmptyState,{onRunClicked:J})})})}),jsxRuntimeExports.jsx(TabsContent,{value:"bom",children:jsxRuntimeExports.jsx("div",{className:cn$1("overflow-auto",aV?"h-[calc(100vh-96px)]":"h-[620px]"),children:jsxRuntimeExports.jsx(ErrorBoundary,{fallback:jsxRuntimeExports.jsx("div",{children:"Error loading BOM"}),children:ZV?jsxRuntimeExports.jsx(BomTable,{circuitJson:ZV}):jsxRuntimeExports.jsx(PreviewEmptyState,{onRunClicked:J})})})}),jsxRuntimeExports.jsx(TabsContent,{value:"circuitjson",children:jsxRuntimeExports.jsx("div",{className:cn$1("overflow-auto",aV?"h-[calc(100vh-96px)]":"h-[620px]"),children:jsxRuntimeExports.jsx(ErrorBoundary,{fallback:jsxRuntimeExports.jsx("div",{children:"Error loading JSON viewer"}),children:ZV?jsxRuntimeExports.jsx(CircuitJsonTableViewer,{elements:ZV}):jsxRuntimeExports.jsx(PreviewEmptyState,{onRunClicked:J})})})}),jsxRuntimeExports.jsx(TabsContent,{value:"error",children:ZV||RV?jsxRuntimeExports.jsx(ErrorTabContent,{code:lV,errorMessage:RV}):jsxRuntimeExports.jsx(PreviewEmptyState,{onRunClicked:J})})]})})})};/**
|
|
22278
|
+
`)},idCounter=0,lockStack=[];function RemoveScrollSideCar(lV){var J=reactExports.useRef([]),VV=reactExports.useRef([0,0]),RV=reactExports.useRef(),UV=reactExports.useState(idCounter++)[0],ZV=reactExports.useState(styleSingleton)[0],WV=reactExports.useRef(lV);reactExports.useEffect(function(){WV.current=lV},[lV]),reactExports.useEffect(function(){if(lV.inert){document.body.classList.add("block-interactivity-".concat(UV));var nV=__spreadArray([lV.lockRef.current],(lV.shards||[]).map(extractRef),!0).filter(Boolean);return nV.forEach(function(aV){return aV.classList.add("allow-interactivity-".concat(UV))}),function(){document.body.classList.remove("block-interactivity-".concat(UV)),nV.forEach(function(aV){return aV.classList.remove("allow-interactivity-".concat(UV))})}}},[lV.inert,lV.lockRef.current,lV.shards]);var IV=reactExports.useCallback(function(nV,aV){if("touches"in nV&&nV.touches.length===2||nV.type==="wheel"&&nV.ctrlKey)return!WV.current.allowPinchZoom;var GV=getTouchXY(nV),cV=VV.current,TV="deltaX"in nV?nV.deltaX:cV[0]-GV[0],iV="deltaY"in nV?nV.deltaY:cV[1]-GV[1],tV,MV=nV.target,AV=Math.abs(TV)>Math.abs(iV)?"h":"v";if("touches"in nV&&AV==="h"&&MV.type==="range")return!1;var pV=locationCouldBeScrolled(AV,MV);if(!pV)return!0;if(pV?tV=AV:(tV=AV==="v"?"h":"v",pV=locationCouldBeScrolled(AV,MV)),!pV)return!1;if(!RV.current&&"changedTouches"in nV&&(TV||iV)&&(RV.current=tV),!tV)return!0;var HV=RV.current||tV;return handleScroll(HV,aV,nV,HV==="h"?TV:iV,!0)},[]),dV=reactExports.useCallback(function(nV){var aV=nV;if(!(!lockStack.length||lockStack[lockStack.length-1]!==ZV)){var GV="deltaY"in aV?getDeltaXY(aV):getTouchXY(aV),cV=J.current.filter(function(tV){return tV.name===aV.type&&(tV.target===aV.target||aV.target===tV.shadowParent)&&deltaCompare(tV.delta,GV)})[0];if(cV&&cV.should){aV.cancelable&&aV.preventDefault();return}if(!cV){var TV=(WV.current.shards||[]).map(extractRef).filter(Boolean).filter(function(tV){return tV.contains(aV.target)}),iV=TV.length>0?IV(aV,TV[0]):!WV.current.noIsolation;iV&&aV.cancelable&&aV.preventDefault()}}},[]),CV=reactExports.useCallback(function(nV,aV,GV,cV){var TV={name:nV,delta:aV,target:GV,should:cV,shadowParent:getOutermostShadowParent(GV)};J.current.push(TV),setTimeout(function(){J.current=J.current.filter(function(iV){return iV!==TV})},1)},[]),FV=reactExports.useCallback(function(nV){VV.current=getTouchXY(nV),RV.current=void 0},[]),NV=reactExports.useCallback(function(nV){CV(nV.type,getDeltaXY(nV),nV.target,IV(nV,lV.lockRef.current))},[]),gV=reactExports.useCallback(function(nV){CV(nV.type,getTouchXY(nV),nV.target,IV(nV,lV.lockRef.current))},[]);reactExports.useEffect(function(){return lockStack.push(ZV),lV.setCallbacks({onScrollCapture:NV,onWheelCapture:NV,onTouchMoveCapture:gV}),document.addEventListener("wheel",dV,nonPassive),document.addEventListener("touchmove",dV,nonPassive),document.addEventListener("touchstart",FV,nonPassive),function(){lockStack=lockStack.filter(function(nV){return nV!==ZV}),document.removeEventListener("wheel",dV,nonPassive),document.removeEventListener("touchmove",dV,nonPassive),document.removeEventListener("touchstart",FV,nonPassive)}},[]);var eV=lV.removeScrollBar,JV=lV.inert;return reactExports.createElement(reactExports.Fragment,null,JV?reactExports.createElement(ZV,{styles:generateStyle(UV)}):null,eV?reactExports.createElement(RemoveScrollBar,{gapMode:lV.gapMode}):null)}function getOutermostShadowParent(lV){for(var J=null;lV!==null;)lV instanceof ShadowRoot&&(J=lV.host,lV=lV.host),lV=lV.parentNode;return J}const SideCar=exportSidecar(effectCar,RemoveScrollSideCar);var ReactRemoveScroll=reactExports.forwardRef(function(lV,J){return reactExports.createElement(RemoveScroll,__assign({},lV,{ref:J,sideCar:SideCar}))});ReactRemoveScroll.classNames=RemoveScroll.classNames;var SELECTION_KEYS=["Enter"," "],FIRST_KEYS=["ArrowDown","PageUp","Home"],LAST_KEYS=["ArrowUp","PageDown","End"],FIRST_LAST_KEYS=[...FIRST_KEYS,...LAST_KEYS],SUB_OPEN_KEYS={ltr:[...SELECTION_KEYS,"ArrowRight"],rtl:[...SELECTION_KEYS,"ArrowLeft"]},SUB_CLOSE_KEYS={ltr:["ArrowLeft"],rtl:["ArrowRight"]},MENU_NAME="Menu",[Collection,useCollection,createCollectionScope]=createCollection(MENU_NAME),[createMenuContext,createMenuScope]=createContextScope$3(MENU_NAME,[createCollectionScope,createPopperScope,createRovingFocusGroupScope]),usePopperScope=createPopperScope(),useRovingFocusGroupScope=createRovingFocusGroupScope(),[MenuProvider,useMenuContext]=createMenuContext(MENU_NAME),[MenuRootProvider,useMenuRootContext]=createMenuContext(MENU_NAME),Menu=lV=>{const{__scopeMenu:J,open:VV=!1,children:RV,dir:UV,onOpenChange:ZV,modal:WV=!0}=lV,IV=usePopperScope(J),[dV,CV]=reactExports.useState(null),FV=reactExports.useRef(!1),NV=useCallbackRef$1(ZV),gV=useDirection(UV);return reactExports.useEffect(()=>{const eV=()=>{FV.current=!0,document.addEventListener("pointerdown",JV,{capture:!0,once:!0}),document.addEventListener("pointermove",JV,{capture:!0,once:!0})},JV=()=>FV.current=!1;return document.addEventListener("keydown",eV,{capture:!0}),()=>{document.removeEventListener("keydown",eV,{capture:!0}),document.removeEventListener("pointerdown",JV,{capture:!0}),document.removeEventListener("pointermove",JV,{capture:!0})}},[]),jsxRuntimeExports.jsx(Root2$1,{...IV,children:jsxRuntimeExports.jsx(MenuProvider,{scope:J,open:VV,onOpenChange:NV,content:dV,onContentChange:CV,children:jsxRuntimeExports.jsx(MenuRootProvider,{scope:J,onClose:reactExports.useCallback(()=>NV(!1),[NV]),isUsingKeyboardRef:FV,dir:gV,modal:WV,children:RV})})})};Menu.displayName=MENU_NAME;var ANCHOR_NAME="MenuAnchor",MenuAnchor=reactExports.forwardRef((lV,J)=>{const{__scopeMenu:VV,...RV}=lV,UV=usePopperScope(VV);return jsxRuntimeExports.jsx(Anchor,{...UV,...RV,ref:J})});MenuAnchor.displayName=ANCHOR_NAME;var PORTAL_NAME$1="MenuPortal",[PortalProvider,usePortalContext]=createMenuContext(PORTAL_NAME$1,{forceMount:void 0}),MenuPortal=lV=>{const{__scopeMenu:J,forceMount:VV,children:RV,container:UV}=lV,ZV=useMenuContext(PORTAL_NAME$1,J);return jsxRuntimeExports.jsx(PortalProvider,{scope:J,forceMount:VV,children:jsxRuntimeExports.jsx(Presence,{present:VV||ZV.open,children:jsxRuntimeExports.jsx(Portal$1,{asChild:!0,container:UV,children:RV})})})};MenuPortal.displayName=PORTAL_NAME$1;var CONTENT_NAME$1="MenuContent",[MenuContentProvider,useMenuContentContext]=createMenuContext(CONTENT_NAME$1),MenuContent=reactExports.forwardRef((lV,J)=>{const VV=usePortalContext(CONTENT_NAME$1,lV.__scopeMenu),{forceMount:RV=VV.forceMount,...UV}=lV,ZV=useMenuContext(CONTENT_NAME$1,lV.__scopeMenu),WV=useMenuRootContext(CONTENT_NAME$1,lV.__scopeMenu);return jsxRuntimeExports.jsx(Collection.Provider,{scope:lV.__scopeMenu,children:jsxRuntimeExports.jsx(Presence,{present:RV||ZV.open,children:jsxRuntimeExports.jsx(Collection.Slot,{scope:lV.__scopeMenu,children:WV.modal?jsxRuntimeExports.jsx(MenuRootContentModal,{...UV,ref:J}):jsxRuntimeExports.jsx(MenuRootContentNonModal,{...UV,ref:J})})})})}),MenuRootContentModal=reactExports.forwardRef((lV,J)=>{const VV=useMenuContext(CONTENT_NAME$1,lV.__scopeMenu),RV=reactExports.useRef(null),UV=useComposedRefs(J,RV);return reactExports.useEffect(()=>{const ZV=RV.current;if(ZV)return hideOthers(ZV)},[]),jsxRuntimeExports.jsx(MenuContentImpl,{...lV,ref:UV,trapFocus:VV.open,disableOutsidePointerEvents:VV.open,disableOutsideScroll:!0,onFocusOutside:composeEventHandlers(lV.onFocusOutside,ZV=>ZV.preventDefault(),{checkForDefaultPrevented:!1}),onDismiss:()=>VV.onOpenChange(!1)})}),MenuRootContentNonModal=reactExports.forwardRef((lV,J)=>{const VV=useMenuContext(CONTENT_NAME$1,lV.__scopeMenu);return jsxRuntimeExports.jsx(MenuContentImpl,{...lV,ref:J,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>VV.onOpenChange(!1)})}),MenuContentImpl=reactExports.forwardRef((lV,J)=>{const{__scopeMenu:VV,loop:RV=!1,trapFocus:UV,onOpenAutoFocus:ZV,onCloseAutoFocus:WV,disableOutsidePointerEvents:IV,onEntryFocus:dV,onEscapeKeyDown:CV,onPointerDownOutside:FV,onFocusOutside:NV,onInteractOutside:gV,onDismiss:eV,disableOutsideScroll:JV,...nV}=lV,aV=useMenuContext(CONTENT_NAME$1,VV),GV=useMenuRootContext(CONTENT_NAME$1,VV),cV=usePopperScope(VV),TV=useRovingFocusGroupScope(VV),iV=useCollection(VV),[tV,MV]=reactExports.useState(null),AV=reactExports.useRef(null),pV=useComposedRefs(J,AV,aV.onContentChange),HV=reactExports.useRef(0),oV=reactExports.useRef(""),DV=reactExports.useRef(0),wV=reactExports.useRef(null),qV=reactExports.useRef("right"),Cl=reactExports.useRef(0),nl=JV?ReactRemoveScroll:reactExports.Fragment,Il=JV?{as:Slot,allowPinchZoom:!0}:void 0,LV=$V=>{var jl,Ll;const dl=oV.current+$V,Wl=iV().filter(ol=>!ol.disabled),el=document.activeElement,pl=(jl=Wl.find(ol=>ol.ref.current===el))==null?void 0:jl.textValue,ml=Wl.map(ol=>ol.textValue),Bl=getNextMatch(ml,dl,pl),xl=(Ll=Wl.find(ol=>ol.textValue===Bl))==null?void 0:Ll.ref.current;(function ol(Tl){oV.current=Tl,window.clearTimeout(HV.current),Tl!==""&&(HV.current=window.setTimeout(()=>ol(""),1e3))})(dl),xl&&setTimeout(()=>xl.focus())};reactExports.useEffect(()=>()=>window.clearTimeout(HV.current),[]),useFocusGuards();const OV=reactExports.useCallback($V=>{var Wl,el;return qV.current===((Wl=wV.current)==null?void 0:Wl.side)&&isPointerInGraceArea($V,(el=wV.current)==null?void 0:el.area)},[]);return jsxRuntimeExports.jsx(MenuContentProvider,{scope:VV,searchRef:oV,onItemEnter:reactExports.useCallback($V=>{OV($V)&&$V.preventDefault()},[OV]),onItemLeave:reactExports.useCallback($V=>{var dl;OV($V)||((dl=AV.current)==null||dl.focus(),MV(null))},[OV]),onTriggerLeave:reactExports.useCallback($V=>{OV($V)&&$V.preventDefault()},[OV]),pointerGraceTimerRef:DV,onPointerGraceIntentChange:reactExports.useCallback($V=>{wV.current=$V},[]),children:jsxRuntimeExports.jsx(nl,{...Il,children:jsxRuntimeExports.jsx(FocusScope,{asChild:!0,trapped:UV,onMountAutoFocus:composeEventHandlers(ZV,$V=>{var dl;$V.preventDefault(),(dl=AV.current)==null||dl.focus({preventScroll:!0})}),onUnmountAutoFocus:WV,children:jsxRuntimeExports.jsx(DismissableLayer,{asChild:!0,disableOutsidePointerEvents:IV,onEscapeKeyDown:CV,onPointerDownOutside:FV,onFocusOutside:NV,onInteractOutside:gV,onDismiss:eV,children:jsxRuntimeExports.jsx(Root$1,{asChild:!0,...TV,dir:GV.dir,orientation:"vertical",loop:RV,currentTabStopId:tV,onCurrentTabStopIdChange:MV,onEntryFocus:composeEventHandlers(dV,$V=>{GV.isUsingKeyboardRef.current||$V.preventDefault()}),preventScrollOnEntryFocus:!0,children:jsxRuntimeExports.jsx(Content,{role:"menu","aria-orientation":"vertical","data-state":getOpenState(aV.open),"data-radix-menu-content":"",dir:GV.dir,...cV,...nV,ref:pV,style:{outline:"none",...nV.style},onKeyDown:composeEventHandlers(nV.onKeyDown,$V=>{const Wl=$V.target.closest("[data-radix-menu-content]")===$V.currentTarget,el=$V.ctrlKey||$V.altKey||$V.metaKey,pl=$V.key.length===1;Wl&&($V.key==="Tab"&&$V.preventDefault(),!el&&pl&&LV($V.key));const ml=AV.current;if($V.target!==ml||!FIRST_LAST_KEYS.includes($V.key))return;$V.preventDefault();const xl=iV().filter(jl=>!jl.disabled).map(jl=>jl.ref.current);LAST_KEYS.includes($V.key)&&xl.reverse(),focusFirst(xl)}),onBlur:composeEventHandlers(lV.onBlur,$V=>{$V.currentTarget.contains($V.target)||(window.clearTimeout(HV.current),oV.current="")}),onPointerMove:composeEventHandlers(lV.onPointerMove,whenMouse($V=>{const dl=$V.target,Wl=Cl.current!==$V.clientX;if($V.currentTarget.contains(dl)&&Wl){const el=$V.clientX>Cl.current?"right":"left";qV.current=el,Cl.current=$V.clientX}}))})})})})})})});MenuContent.displayName=CONTENT_NAME$1;var GROUP_NAME$1="MenuGroup",MenuGroup=reactExports.forwardRef((lV,J)=>{const{__scopeMenu:VV,...RV}=lV;return jsxRuntimeExports.jsx(Primitive.div,{role:"group",...RV,ref:J})});MenuGroup.displayName=GROUP_NAME$1;var LABEL_NAME$1="MenuLabel",MenuLabel=reactExports.forwardRef((lV,J)=>{const{__scopeMenu:VV,...RV}=lV;return jsxRuntimeExports.jsx(Primitive.div,{...RV,ref:J})});MenuLabel.displayName=LABEL_NAME$1;var ITEM_NAME$1="MenuItem",ITEM_SELECT="menu.itemSelect",MenuItem=reactExports.forwardRef((lV,J)=>{const{disabled:VV=!1,onSelect:RV,...UV}=lV,ZV=reactExports.useRef(null),WV=useMenuRootContext(ITEM_NAME$1,lV.__scopeMenu),IV=useMenuContentContext(ITEM_NAME$1,lV.__scopeMenu),dV=useComposedRefs(J,ZV),CV=reactExports.useRef(!1),FV=()=>{const NV=ZV.current;if(!VV&&NV){const gV=new CustomEvent(ITEM_SELECT,{bubbles:!0,cancelable:!0});NV.addEventListener(ITEM_SELECT,eV=>RV==null?void 0:RV(eV),{once:!0}),dispatchDiscreteCustomEvent(NV,gV),gV.defaultPrevented?CV.current=!1:WV.onClose()}};return jsxRuntimeExports.jsx(MenuItemImpl,{...UV,ref:dV,disabled:VV,onClick:composeEventHandlers(lV.onClick,FV),onPointerDown:NV=>{var gV;(gV=lV.onPointerDown)==null||gV.call(lV,NV),CV.current=!0},onPointerUp:composeEventHandlers(lV.onPointerUp,NV=>{var gV;CV.current||(gV=NV.currentTarget)==null||gV.click()}),onKeyDown:composeEventHandlers(lV.onKeyDown,NV=>{const gV=IV.searchRef.current!=="";VV||gV&&NV.key===" "||SELECTION_KEYS.includes(NV.key)&&(NV.currentTarget.click(),NV.preventDefault())})})});MenuItem.displayName=ITEM_NAME$1;var MenuItemImpl=reactExports.forwardRef((lV,J)=>{const{__scopeMenu:VV,disabled:RV=!1,textValue:UV,...ZV}=lV,WV=useMenuContentContext(ITEM_NAME$1,VV),IV=useRovingFocusGroupScope(VV),dV=reactExports.useRef(null),CV=useComposedRefs(J,dV),[FV,NV]=reactExports.useState(!1),[gV,eV]=reactExports.useState("");return reactExports.useEffect(()=>{const JV=dV.current;JV&&eV((JV.textContent??"").trim())},[ZV.children]),jsxRuntimeExports.jsx(Collection.ItemSlot,{scope:VV,disabled:RV,textValue:UV??gV,children:jsxRuntimeExports.jsx(Item,{asChild:!0,...IV,focusable:!RV,children:jsxRuntimeExports.jsx(Primitive.div,{role:"menuitem","data-highlighted":FV?"":void 0,"aria-disabled":RV||void 0,"data-disabled":RV?"":void 0,...ZV,ref:CV,onPointerMove:composeEventHandlers(lV.onPointerMove,whenMouse(JV=>{RV?WV.onItemLeave(JV):(WV.onItemEnter(JV),JV.defaultPrevented||JV.currentTarget.focus({preventScroll:!0}))})),onPointerLeave:composeEventHandlers(lV.onPointerLeave,whenMouse(JV=>WV.onItemLeave(JV))),onFocus:composeEventHandlers(lV.onFocus,()=>NV(!0)),onBlur:composeEventHandlers(lV.onBlur,()=>NV(!1))})})})}),CHECKBOX_ITEM_NAME$1="MenuCheckboxItem",MenuCheckboxItem=reactExports.forwardRef((lV,J)=>{const{checked:VV=!1,onCheckedChange:RV,...UV}=lV;return jsxRuntimeExports.jsx(ItemIndicatorProvider,{scope:lV.__scopeMenu,checked:VV,children:jsxRuntimeExports.jsx(MenuItem,{role:"menuitemcheckbox","aria-checked":isIndeterminate(VV)?"mixed":VV,...UV,ref:J,"data-state":getCheckedState(VV),onSelect:composeEventHandlers(UV.onSelect,()=>RV==null?void 0:RV(isIndeterminate(VV)?!0:!VV),{checkForDefaultPrevented:!1})})})});MenuCheckboxItem.displayName=CHECKBOX_ITEM_NAME$1;var RADIO_GROUP_NAME$1="MenuRadioGroup",[RadioGroupProvider,useRadioGroupContext]=createMenuContext(RADIO_GROUP_NAME$1,{value:void 0,onValueChange:()=>{}}),MenuRadioGroup=reactExports.forwardRef((lV,J)=>{const{value:VV,onValueChange:RV,...UV}=lV,ZV=useCallbackRef$1(RV);return jsxRuntimeExports.jsx(RadioGroupProvider,{scope:lV.__scopeMenu,value:VV,onValueChange:ZV,children:jsxRuntimeExports.jsx(MenuGroup,{...UV,ref:J})})});MenuRadioGroup.displayName=RADIO_GROUP_NAME$1;var RADIO_ITEM_NAME$1="MenuRadioItem",MenuRadioItem=reactExports.forwardRef((lV,J)=>{const{value:VV,...RV}=lV,UV=useRadioGroupContext(RADIO_ITEM_NAME$1,lV.__scopeMenu),ZV=VV===UV.value;return jsxRuntimeExports.jsx(ItemIndicatorProvider,{scope:lV.__scopeMenu,checked:ZV,children:jsxRuntimeExports.jsx(MenuItem,{role:"menuitemradio","aria-checked":ZV,...RV,ref:J,"data-state":getCheckedState(ZV),onSelect:composeEventHandlers(RV.onSelect,()=>{var WV;return(WV=UV.onValueChange)==null?void 0:WV.call(UV,VV)},{checkForDefaultPrevented:!1})})})});MenuRadioItem.displayName=RADIO_ITEM_NAME$1;var ITEM_INDICATOR_NAME="MenuItemIndicator",[ItemIndicatorProvider,useItemIndicatorContext]=createMenuContext(ITEM_INDICATOR_NAME,{checked:!1}),MenuItemIndicator=reactExports.forwardRef((lV,J)=>{const{__scopeMenu:VV,forceMount:RV,...UV}=lV,ZV=useItemIndicatorContext(ITEM_INDICATOR_NAME,VV);return jsxRuntimeExports.jsx(Presence,{present:RV||isIndeterminate(ZV.checked)||ZV.checked===!0,children:jsxRuntimeExports.jsx(Primitive.span,{...UV,ref:J,"data-state":getCheckedState(ZV.checked)})})});MenuItemIndicator.displayName=ITEM_INDICATOR_NAME;var SEPARATOR_NAME$1="MenuSeparator",MenuSeparator=reactExports.forwardRef((lV,J)=>{const{__scopeMenu:VV,...RV}=lV;return jsxRuntimeExports.jsx(Primitive.div,{role:"separator","aria-orientation":"horizontal",...RV,ref:J})});MenuSeparator.displayName=SEPARATOR_NAME$1;var ARROW_NAME$1="MenuArrow",MenuArrow=reactExports.forwardRef((lV,J)=>{const{__scopeMenu:VV,...RV}=lV,UV=usePopperScope(VV);return jsxRuntimeExports.jsx(Arrow,{...UV,...RV,ref:J})});MenuArrow.displayName=ARROW_NAME$1;var SUB_NAME="MenuSub",[MenuSubProvider,useMenuSubContext]=createMenuContext(SUB_NAME),SUB_TRIGGER_NAME$1="MenuSubTrigger",MenuSubTrigger=reactExports.forwardRef((lV,J)=>{const VV=useMenuContext(SUB_TRIGGER_NAME$1,lV.__scopeMenu),RV=useMenuRootContext(SUB_TRIGGER_NAME$1,lV.__scopeMenu),UV=useMenuSubContext(SUB_TRIGGER_NAME$1,lV.__scopeMenu),ZV=useMenuContentContext(SUB_TRIGGER_NAME$1,lV.__scopeMenu),WV=reactExports.useRef(null),{pointerGraceTimerRef:IV,onPointerGraceIntentChange:dV}=ZV,CV={__scopeMenu:lV.__scopeMenu},FV=reactExports.useCallback(()=>{WV.current&&window.clearTimeout(WV.current),WV.current=null},[]);return reactExports.useEffect(()=>FV,[FV]),reactExports.useEffect(()=>{const NV=IV.current;return()=>{window.clearTimeout(NV),dV(null)}},[IV,dV]),jsxRuntimeExports.jsx(MenuAnchor,{asChild:!0,...CV,children:jsxRuntimeExports.jsx(MenuItemImpl,{id:UV.triggerId,"aria-haspopup":"menu","aria-expanded":VV.open,"aria-controls":UV.contentId,"data-state":getOpenState(VV.open),...lV,ref:composeRefs(J,UV.onTriggerChange),onClick:NV=>{var gV;(gV=lV.onClick)==null||gV.call(lV,NV),!(lV.disabled||NV.defaultPrevented)&&(NV.currentTarget.focus(),VV.open||VV.onOpenChange(!0))},onPointerMove:composeEventHandlers(lV.onPointerMove,whenMouse(NV=>{ZV.onItemEnter(NV),!NV.defaultPrevented&&!lV.disabled&&!VV.open&&!WV.current&&(ZV.onPointerGraceIntentChange(null),WV.current=window.setTimeout(()=>{VV.onOpenChange(!0),FV()},100))})),onPointerLeave:composeEventHandlers(lV.onPointerLeave,whenMouse(NV=>{var eV,JV;FV();const gV=(eV=VV.content)==null?void 0:eV.getBoundingClientRect();if(gV){const nV=(JV=VV.content)==null?void 0:JV.dataset.side,aV=nV==="right",GV=aV?-5:5,cV=gV[aV?"left":"right"],TV=gV[aV?"right":"left"];ZV.onPointerGraceIntentChange({area:[{x:NV.clientX+GV,y:NV.clientY},{x:cV,y:gV.top},{x:TV,y:gV.top},{x:TV,y:gV.bottom},{x:cV,y:gV.bottom}],side:nV}),window.clearTimeout(IV.current),IV.current=window.setTimeout(()=>ZV.onPointerGraceIntentChange(null),300)}else{if(ZV.onTriggerLeave(NV),NV.defaultPrevented)return;ZV.onPointerGraceIntentChange(null)}})),onKeyDown:composeEventHandlers(lV.onKeyDown,NV=>{var eV;const gV=ZV.searchRef.current!=="";lV.disabled||gV&&NV.key===" "||SUB_OPEN_KEYS[RV.dir].includes(NV.key)&&(VV.onOpenChange(!0),(eV=VV.content)==null||eV.focus(),NV.preventDefault())})})})});MenuSubTrigger.displayName=SUB_TRIGGER_NAME$1;var SUB_CONTENT_NAME$1="MenuSubContent",MenuSubContent=reactExports.forwardRef((lV,J)=>{const VV=usePortalContext(CONTENT_NAME$1,lV.__scopeMenu),{forceMount:RV=VV.forceMount,...UV}=lV,ZV=useMenuContext(CONTENT_NAME$1,lV.__scopeMenu),WV=useMenuRootContext(CONTENT_NAME$1,lV.__scopeMenu),IV=useMenuSubContext(SUB_CONTENT_NAME$1,lV.__scopeMenu),dV=reactExports.useRef(null),CV=useComposedRefs(J,dV);return jsxRuntimeExports.jsx(Collection.Provider,{scope:lV.__scopeMenu,children:jsxRuntimeExports.jsx(Presence,{present:RV||ZV.open,children:jsxRuntimeExports.jsx(Collection.Slot,{scope:lV.__scopeMenu,children:jsxRuntimeExports.jsx(MenuContentImpl,{id:IV.contentId,"aria-labelledby":IV.triggerId,...UV,ref:CV,align:"start",side:WV.dir==="rtl"?"left":"right",disableOutsidePointerEvents:!1,disableOutsideScroll:!1,trapFocus:!1,onOpenAutoFocus:FV=>{var NV;WV.isUsingKeyboardRef.current&&((NV=dV.current)==null||NV.focus()),FV.preventDefault()},onCloseAutoFocus:FV=>FV.preventDefault(),onFocusOutside:composeEventHandlers(lV.onFocusOutside,FV=>{FV.target!==IV.trigger&&ZV.onOpenChange(!1)}),onEscapeKeyDown:composeEventHandlers(lV.onEscapeKeyDown,FV=>{WV.onClose(),FV.preventDefault()}),onKeyDown:composeEventHandlers(lV.onKeyDown,FV=>{var eV;const NV=FV.currentTarget.contains(FV.target),gV=SUB_CLOSE_KEYS[WV.dir].includes(FV.key);NV&&gV&&(ZV.onOpenChange(!1),(eV=IV.trigger)==null||eV.focus(),FV.preventDefault())})})})})})});MenuSubContent.displayName=SUB_CONTENT_NAME$1;function getOpenState(lV){return lV?"open":"closed"}function isIndeterminate(lV){return lV==="indeterminate"}function getCheckedState(lV){return isIndeterminate(lV)?"indeterminate":lV?"checked":"unchecked"}function focusFirst(lV){const J=document.activeElement;for(const VV of lV)if(VV===J||(VV.focus(),document.activeElement!==J))return}function wrapArray(lV,J){return lV.map((VV,RV)=>lV[(J+RV)%lV.length])}function getNextMatch(lV,J,VV){const UV=J.length>1&&Array.from(J).every(CV=>CV===J[0])?J[0]:J,ZV=VV?lV.indexOf(VV):-1;let WV=wrapArray(lV,Math.max(ZV,0));UV.length===1&&(WV=WV.filter(CV=>CV!==VV));const dV=WV.find(CV=>CV.toLowerCase().startsWith(UV.toLowerCase()));return dV!==VV?dV:void 0}function isPointInPolygon(lV,J){const{x:VV,y:RV}=lV;let UV=!1;for(let ZV=0,WV=J.length-1;ZV<J.length;WV=ZV++){const IV=J[ZV].x,dV=J[ZV].y,CV=J[WV].x,FV=J[WV].y;dV>RV!=FV>RV&&VV<(CV-IV)*(RV-dV)/(FV-dV)+IV&&(UV=!UV)}return UV}function isPointerInGraceArea(lV,J){if(!J)return!1;const VV={x:lV.clientX,y:lV.clientY};return isPointInPolygon(VV,J)}function whenMouse(lV){return J=>J.pointerType==="mouse"?lV(J):void 0}var Root3=Menu,Anchor2=MenuAnchor,Portal=MenuPortal,Content2$1=MenuContent,Group=MenuGroup,Label=MenuLabel,Item2$1=MenuItem,CheckboxItem=MenuCheckboxItem,RadioGroup=MenuRadioGroup,RadioItem=MenuRadioItem,ItemIndicator=MenuItemIndicator,Separator=MenuSeparator,Arrow2=MenuArrow,SubTrigger=MenuSubTrigger,SubContent=MenuSubContent,DROPDOWN_MENU_NAME="DropdownMenu",[createDropdownMenuContext,createDropdownMenuScope]=createContextScope$3(DROPDOWN_MENU_NAME,[createMenuScope]),useMenuScope=createMenuScope(),[DropdownMenuProvider,useDropdownMenuContext]=createDropdownMenuContext(DROPDOWN_MENU_NAME),DropdownMenu$1=lV=>{const{__scopeDropdownMenu:J,children:VV,dir:RV,open:UV,defaultOpen:ZV,onOpenChange:WV,modal:IV=!0}=lV,dV=useMenuScope(J),CV=reactExports.useRef(null),[FV=!1,NV]=useControllableState({prop:UV,defaultProp:ZV,onChange:WV});return jsxRuntimeExports.jsx(DropdownMenuProvider,{scope:J,triggerId:useId(),triggerRef:CV,contentId:useId(),open:FV,onOpenChange:NV,onOpenToggle:reactExports.useCallback(()=>NV(gV=>!gV),[NV]),modal:IV,children:jsxRuntimeExports.jsx(Root3,{...dV,open:FV,onOpenChange:NV,dir:RV,modal:IV,children:VV})})};DropdownMenu$1.displayName=DROPDOWN_MENU_NAME;var TRIGGER_NAME="DropdownMenuTrigger",DropdownMenuTrigger$1=reactExports.forwardRef((lV,J)=>{const{__scopeDropdownMenu:VV,disabled:RV=!1,...UV}=lV,ZV=useDropdownMenuContext(TRIGGER_NAME,VV),WV=useMenuScope(VV);return jsxRuntimeExports.jsx(Anchor2,{asChild:!0,...WV,children:jsxRuntimeExports.jsx(Primitive.button,{type:"button",id:ZV.triggerId,"aria-haspopup":"menu","aria-expanded":ZV.open,"aria-controls":ZV.open?ZV.contentId:void 0,"data-state":ZV.open?"open":"closed","data-disabled":RV?"":void 0,disabled:RV,...UV,ref:composeRefs(J,ZV.triggerRef),onPointerDown:composeEventHandlers(lV.onPointerDown,IV=>{!RV&&IV.button===0&&IV.ctrlKey===!1&&(ZV.onOpenToggle(),ZV.open||IV.preventDefault())}),onKeyDown:composeEventHandlers(lV.onKeyDown,IV=>{RV||(["Enter"," "].includes(IV.key)&&ZV.onOpenToggle(),IV.key==="ArrowDown"&&ZV.onOpenChange(!0),["Enter"," ","ArrowDown"].includes(IV.key)&&IV.preventDefault())})})})});DropdownMenuTrigger$1.displayName=TRIGGER_NAME;var PORTAL_NAME="DropdownMenuPortal",DropdownMenuPortal=lV=>{const{__scopeDropdownMenu:J,...VV}=lV,RV=useMenuScope(J);return jsxRuntimeExports.jsx(Portal,{...RV,...VV})};DropdownMenuPortal.displayName=PORTAL_NAME;var CONTENT_NAME="DropdownMenuContent",DropdownMenuContent$1=reactExports.forwardRef((lV,J)=>{const{__scopeDropdownMenu:VV,...RV}=lV,UV=useDropdownMenuContext(CONTENT_NAME,VV),ZV=useMenuScope(VV),WV=reactExports.useRef(!1);return jsxRuntimeExports.jsx(Content2$1,{id:UV.contentId,"aria-labelledby":UV.triggerId,...ZV,...RV,ref:J,onCloseAutoFocus:composeEventHandlers(lV.onCloseAutoFocus,IV=>{var dV;WV.current||(dV=UV.triggerRef.current)==null||dV.focus(),WV.current=!1,IV.preventDefault()}),onInteractOutside:composeEventHandlers(lV.onInteractOutside,IV=>{const dV=IV.detail.originalEvent,CV=dV.button===0&&dV.ctrlKey===!0,FV=dV.button===2||CV;(!UV.modal||FV)&&(WV.current=!0)}),style:{...lV.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});DropdownMenuContent$1.displayName=CONTENT_NAME;var GROUP_NAME="DropdownMenuGroup",DropdownMenuGroup=reactExports.forwardRef((lV,J)=>{const{__scopeDropdownMenu:VV,...RV}=lV,UV=useMenuScope(VV);return jsxRuntimeExports.jsx(Group,{...UV,...RV,ref:J})});DropdownMenuGroup.displayName=GROUP_NAME;var LABEL_NAME="DropdownMenuLabel",DropdownMenuLabel$1=reactExports.forwardRef((lV,J)=>{const{__scopeDropdownMenu:VV,...RV}=lV,UV=useMenuScope(VV);return jsxRuntimeExports.jsx(Label,{...UV,...RV,ref:J})});DropdownMenuLabel$1.displayName=LABEL_NAME;var ITEM_NAME="DropdownMenuItem",DropdownMenuItem$1=reactExports.forwardRef((lV,J)=>{const{__scopeDropdownMenu:VV,...RV}=lV,UV=useMenuScope(VV);return jsxRuntimeExports.jsx(Item2$1,{...UV,...RV,ref:J})});DropdownMenuItem$1.displayName=ITEM_NAME;var CHECKBOX_ITEM_NAME="DropdownMenuCheckboxItem",DropdownMenuCheckboxItem$1=reactExports.forwardRef((lV,J)=>{const{__scopeDropdownMenu:VV,...RV}=lV,UV=useMenuScope(VV);return jsxRuntimeExports.jsx(CheckboxItem,{...UV,...RV,ref:J})});DropdownMenuCheckboxItem$1.displayName=CHECKBOX_ITEM_NAME;var RADIO_GROUP_NAME="DropdownMenuRadioGroup",DropdownMenuRadioGroup=reactExports.forwardRef((lV,J)=>{const{__scopeDropdownMenu:VV,...RV}=lV,UV=useMenuScope(VV);return jsxRuntimeExports.jsx(RadioGroup,{...UV,...RV,ref:J})});DropdownMenuRadioGroup.displayName=RADIO_GROUP_NAME;var RADIO_ITEM_NAME="DropdownMenuRadioItem",DropdownMenuRadioItem$1=reactExports.forwardRef((lV,J)=>{const{__scopeDropdownMenu:VV,...RV}=lV,UV=useMenuScope(VV);return jsxRuntimeExports.jsx(RadioItem,{...UV,...RV,ref:J})});DropdownMenuRadioItem$1.displayName=RADIO_ITEM_NAME;var INDICATOR_NAME="DropdownMenuItemIndicator",DropdownMenuItemIndicator=reactExports.forwardRef((lV,J)=>{const{__scopeDropdownMenu:VV,...RV}=lV,UV=useMenuScope(VV);return jsxRuntimeExports.jsx(ItemIndicator,{...UV,...RV,ref:J})});DropdownMenuItemIndicator.displayName=INDICATOR_NAME;var SEPARATOR_NAME="DropdownMenuSeparator",DropdownMenuSeparator$1=reactExports.forwardRef((lV,J)=>{const{__scopeDropdownMenu:VV,...RV}=lV,UV=useMenuScope(VV);return jsxRuntimeExports.jsx(Separator,{...UV,...RV,ref:J})});DropdownMenuSeparator$1.displayName=SEPARATOR_NAME;var ARROW_NAME="DropdownMenuArrow",DropdownMenuArrow=reactExports.forwardRef((lV,J)=>{const{__scopeDropdownMenu:VV,...RV}=lV,UV=useMenuScope(VV);return jsxRuntimeExports.jsx(Arrow2,{...UV,...RV,ref:J})});DropdownMenuArrow.displayName=ARROW_NAME;var SUB_TRIGGER_NAME="DropdownMenuSubTrigger",DropdownMenuSubTrigger$1=reactExports.forwardRef((lV,J)=>{const{__scopeDropdownMenu:VV,...RV}=lV,UV=useMenuScope(VV);return jsxRuntimeExports.jsx(SubTrigger,{...UV,...RV,ref:J})});DropdownMenuSubTrigger$1.displayName=SUB_TRIGGER_NAME;var SUB_CONTENT_NAME="DropdownMenuSubContent",DropdownMenuSubContent$1=reactExports.forwardRef((lV,J)=>{const{__scopeDropdownMenu:VV,...RV}=lV,UV=useMenuScope(VV);return jsxRuntimeExports.jsx(SubContent,{...UV,...RV,ref:J,style:{...lV.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});DropdownMenuSubContent$1.displayName=SUB_CONTENT_NAME;var Root2=DropdownMenu$1,Trigger=DropdownMenuTrigger$1,Portal2=DropdownMenuPortal,Content2=DropdownMenuContent$1,Label2=DropdownMenuLabel$1,Item2=DropdownMenuItem$1,CheckboxItem2=DropdownMenuCheckboxItem$1,RadioItem2=DropdownMenuRadioItem$1,ItemIndicator2=DropdownMenuItemIndicator,Separator2=DropdownMenuSeparator$1,SubTrigger2=DropdownMenuSubTrigger$1,SubContent2=DropdownMenuSubContent$1;const DropdownMenu=Root2,DropdownMenuTrigger=Trigger,DropdownMenuSubTrigger=reactExports.forwardRef(({className:lV,inset:J,children:VV,...RV},UV)=>jsxRuntimeExports.jsxs(SubTrigger2,{ref:UV,className:cn$1("flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-slate-100 data-[state=open]:bg-slate-100 dark:focus:bg-slate-800 dark:data-[state=open]:bg-slate-800",J&&"pl-8",lV),...RV,children:[VV,jsxRuntimeExports.jsx(ChevronRightIcon,{className:"ml-auto h-4 w-4"})]}));DropdownMenuSubTrigger.displayName=SubTrigger2.displayName;const DropdownMenuSubContent=reactExports.forwardRef(({className:lV,...J},VV)=>jsxRuntimeExports.jsx(SubContent2,{ref:VV,className:cn$1("z-50 min-w-[8rem] overflow-hidden rounded-md border border-slate-200 bg-white p-1 text-slate-950 shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 dark:border-slate-800 dark:bg-slate-950 dark:text-slate-50",lV),...J}));DropdownMenuSubContent.displayName=SubContent2.displayName;const DropdownMenuContent=reactExports.forwardRef(({className:lV,sideOffset:J=4,...VV},RV)=>jsxRuntimeExports.jsx(Portal2,{children:jsxRuntimeExports.jsx(Content2,{ref:RV,sideOffset:J,className:cn$1("z-50 min-w-[8rem] overflow-hidden rounded-md border border-slate-200 bg-white p-1 text-slate-950 shadow-md dark:border-slate-800 dark:bg-slate-950 dark:text-slate-50","data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",lV),...VV})}));DropdownMenuContent.displayName=Content2.displayName;const DropdownMenuItem=reactExports.forwardRef(({className:lV,inset:J,...VV},RV)=>jsxRuntimeExports.jsx(Item2,{ref:RV,className:cn$1("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-slate-100 focus:text-slate-900 data-[disabled]:pointer-events-none data-[disabled]:opacity-50 dark:focus:bg-slate-800 dark:focus:text-slate-50",J&&"pl-8",lV),...VV}));DropdownMenuItem.displayName=Item2.displayName;const DropdownMenuCheckboxItem=reactExports.forwardRef(({className:lV,children:J,checked:VV,...RV},UV)=>jsxRuntimeExports.jsxs(CheckboxItem2,{ref:UV,className:cn$1("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-slate-100 focus:text-slate-900 data-[disabled]:pointer-events-none data-[disabled]:opacity-50 dark:focus:bg-slate-800 dark:focus:text-slate-50",lV),checked:VV,...RV,children:[jsxRuntimeExports.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:jsxRuntimeExports.jsx(ItemIndicator2,{children:jsxRuntimeExports.jsx(CheckIcon,{className:"h-4 w-4"})})}),J]}));DropdownMenuCheckboxItem.displayName=CheckboxItem2.displayName;const DropdownMenuRadioItem=reactExports.forwardRef(({className:lV,children:J,...VV},RV)=>jsxRuntimeExports.jsxs(RadioItem2,{ref:RV,className:cn$1("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-slate-100 focus:text-slate-900 data-[disabled]:pointer-events-none data-[disabled]:opacity-50 dark:focus:bg-slate-800 dark:focus:text-slate-50",lV),...VV,children:[jsxRuntimeExports.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:jsxRuntimeExports.jsx(ItemIndicator2,{children:jsxRuntimeExports.jsx(DotFilledIcon,{className:"h-4 w-4 fill-current"})})}),J]}));DropdownMenuRadioItem.displayName=RadioItem2.displayName;const DropdownMenuLabel=reactExports.forwardRef(({className:lV,inset:J,...VV},RV)=>jsxRuntimeExports.jsx(Label2,{ref:RV,className:cn$1("px-2 py-1.5 text-sm font-semibold",J&&"pl-8",lV),...VV}));DropdownMenuLabel.displayName=Label2.displayName;const DropdownMenuSeparator=reactExports.forwardRef(({className:lV,...J},VV)=>jsxRuntimeExports.jsx(Separator2,{ref:VV,className:cn$1("-mx-1 my-1 h-px bg-slate-100 dark:bg-slate-800",lV),...J}));DropdownMenuSeparator.displayName=Separator2.displayName;const PcbViewerWithContainerHeight=({containerClassName:lV,...J})=>{const VV=reactExports.useRef(null),[RV,UV]=reactExports.useState(620);return reactExports.useLayoutEffect(()=>{const ZV=()=>{if(VV.current){const IV=VV.current.clientHeight,dV=window.innerHeight;UV(Math.min(Math.max(IV,620),dV))}};ZV();const WV=new ResizeObserver(ZV);return VV.current&&WV.observe(VV.current),window.addEventListener("resize",ZV),()=>{WV.disconnect(),window.removeEventListener("resize",ZV)}},[]),jsxRuntimeExports.jsx("div",{ref:VV,className:lV||"w-full h-full",children:jsxRuntimeExports.jsx(distExports$1.PCBViewer,{...J,height:RV})})},styles=".invisible{visibility:hidden}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.left-2{left:.5rem}.right-4{right:1rem}.right-\\[4px\\]{right:4px}.top-2{top:.5rem}.top-4{top:1rem}.top-\\[6px\\]{top:6px}.z-50{z-index:50}.z-\\[100\\]{z-index:100}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.my-1{margin-bottom:.25rem;margin-top:.25rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.ml-1{margin-left:.25rem}.ml-1\\.5{margin-left:.375rem}.ml-2{margin-left:.5rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mt-0{margin-top:0}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.contents{display:contents}.hidden{display:none}.h-1{height:.25rem}.h-10{height:2.5rem}.h-2{height:.5rem}.h-3{height:.75rem}.h-3\\.5{height:.875rem}.h-4{height:1rem}.h-60{height:15rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\\[620px\\]{height:620px}.h-\\[calc\\(100vh-96px\\)\\]{height:calc(100vh - 96px)}.h-full{height:100%}.h-px{height:1px}.max-h-\\[500px\\]{max-height:500px}.min-h-\\[620px\\]{min-height:620px}.min-h-\\[calc\\(100vh-240px\\)\\]{min-height:calc(100vh - 240px)}.w-1{width:.25rem}.w-11{width:2.75rem}.w-11\\/12{width:91.666667%}.w-2{width:.5rem}.w-3{width:.75rem}.w-3\\.5{width:.875rem}.w-4{width:1rem}.w-9{width:2.25rem}.w-96{width:24rem}.w-full{width:100%}.min-w-\\[8rem\\]{min-width:8rem}.max-w-2xl{max-width:42rem}.flex-grow{flex-grow:1}.table-auto{table-layout:auto}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.5rem*var(--tw-space-x-reverse))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-sm{border-radius:.125rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.border-green-200{--tw-border-opacity:1;border-color:rgb(187 247 208/var(--tw-border-opacity,1))}.border-red-200{--tw-border-opacity:1;border-color:rgb(254 202 202/var(--tw-border-opacity,1))}.border-slate-200{--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity,1))}.bg-black{background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.bg-black,.bg-blue-50{--tw-bg-opacity:1}.bg-blue-50{background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.bg-blue-500{--tw-bg-opacity:1;background-color:rgb(59 130 246/var(--tw-bg-opacity,1))}.bg-blue-600{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.bg-gray-500{--tw-bg-opacity:1;background-color:rgb(107 114 128/var(--tw-bg-opacity,1))}.bg-gray-800{--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity,1))}.bg-green-50{--tw-bg-opacity:1;background-color:rgb(240 253 244/var(--tw-bg-opacity,1))}.bg-orange-400{--tw-bg-opacity:1;background-color:rgb(251 146 60/var(--tw-bg-opacity,1))}.bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}.bg-red-900{--tw-bg-opacity:1;background-color:rgb(127 29 29/var(--tw-bg-opacity,1))}.bg-slate-100{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.bg-slate-50{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.bg-slate-800{--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.bg-slate-900{--tw-bg-opacity:1;background-color:rgb(15 23 42/var(--tw-bg-opacity,1))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-opacity-50{--tw-bg-opacity:0.5}.fill-current{fill:currentColor}.p-0{padding:0}.p-0\\.5{padding:.125rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-8{padding-left:2rem;padding-right:2rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-1\\.5{padding-bottom:.375rem;padding-top:.375rem}.py-10{padding-bottom:2.5rem;padding-top:2.5rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.pl-8{padding-left:2rem}.pr-2{padding-right:.5rem}.text-left{text-align:left}.text-center{text-align:center}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\\[8px\\]{font-size:8px}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.capitalize{text-transform:capitalize}.leading-5{line-height:1.25rem}.tracking-widest{letter-spacing:.1em}.text-blue-300{--tw-text-opacity:1;color:rgb(147 197 253/var(--tw-text-opacity,1))}.text-blue-500{--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity,1))}.text-green-500{--tw-text-opacity:1;color:rgb(34 197 94/var(--tw-text-opacity,1))}.text-green-700{--tw-text-opacity:1;color:rgb(21 128 61/var(--tw-text-opacity,1))}.text-green-800{--tw-text-opacity:1;color:rgb(22 101 52/var(--tw-text-opacity,1))}.text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.text-red-700{--tw-text-opacity:1;color:rgb(185 28 28/var(--tw-text-opacity,1))}.text-red-800{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity,1))}.text-slate-50{--tw-text-opacity:1;color:rgb(248 250 252/var(--tw-text-opacity,1))}.text-slate-500{--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}.text-slate-900{--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.text-slate-950{--tw-text-opacity:1;color:rgb(2 6 23/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.opacity-60{opacity:.6}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-md,.shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring-offset-white{--tw-ring-offset-color:#fff}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0) scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0) scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}.running{animation-play-state:running}.\\*\\:text-xs>*{font-size:.75rem;line-height:1rem}.hover\\:bg-blue-500:hover{--tw-bg-opacity:1;background-color:rgb(59 130 246/var(--tw-bg-opacity,1))}.hover\\:bg-blue-600:hover{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.hover\\:bg-gray-100:hover{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.hover\\:bg-red-500\\/90:hover{background-color:rgba(239,68,68,.9)}.hover\\:bg-slate-100:hover{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.hover\\:bg-slate-100\\/80:hover{background-color:rgba(241,245,249,.8)}.hover\\:bg-slate-900\\/90:hover{background-color:rgba(15,23,42,.9)}.hover\\:text-gray-800:hover{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity,1))}.hover\\:text-slate-900:hover{--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.hover\\:underline:hover{text-decoration-line:underline}.focus\\:bg-slate-100:focus{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.focus\\:text-slate-900:focus{--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.focus-visible\\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\\:ring-1:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\\:ring-2:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\\:ring-slate-950:focus-visible{--tw-ring-opacity:1;--tw-ring-color:rgb(2 6 23/var(--tw-ring-opacity,1))}.focus-visible\\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px}.disabled\\:pointer-events-none:disabled{pointer-events:none}.disabled\\:opacity-50:disabled{opacity:.5}.data-\\[disabled\\]\\:pointer-events-none[data-disabled]{pointer-events:none}.data-\\[state\\=active\\]\\:bg-white[data-state=active]{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.data-\\[state\\=open\\]\\:bg-slate-100[data-state=open]{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.data-\\[state\\=active\\]\\:text-slate-950[data-state=active]{--tw-text-opacity:1;color:rgb(2 6 23/var(--tw-text-opacity,1))}.data-\\[disabled\\]\\:opacity-50[data-disabled]{opacity:.5}.data-\\[state\\=active\\]\\:shadow[data-state=active]{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.data-\\[state\\=open\\]\\:animate-in[data-state=open]{animation-duration:.15s;animation-name:enter;--tw-enter-opacity:initial;--tw-enter-scale:initial;--tw-enter-rotate:initial;--tw-enter-translate-x:initial;--tw-enter-translate-y:initial}.data-\\[state\\=closed\\]\\:animate-out[data-state=closed]{animation-duration:.15s;animation-name:exit;--tw-exit-opacity:initial;--tw-exit-scale:initial;--tw-exit-rotate:initial;--tw-exit-translate-x:initial;--tw-exit-translate-y:initial}.data-\\[state\\=closed\\]\\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\\[state\\=open\\]\\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\\[state\\=closed\\]\\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\\[state\\=open\\]\\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\\[side\\=bottom\\]\\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:-0.5rem}.data-\\[side\\=left\\]\\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:0.5rem}.data-\\[side\\=right\\]\\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:-0.5rem}.data-\\[side\\=top\\]\\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:0.5rem}.dark\\:border-slate-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(30 41 59/var(--tw-border-opacity,1))}.dark\\:bg-red-900:is(.dark *){--tw-bg-opacity:1;background-color:rgb(127 29 29/var(--tw-bg-opacity,1))}.dark\\:bg-slate-50:is(.dark *){--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.dark\\:bg-slate-800:is(.dark *){--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.dark\\:bg-slate-950:is(.dark *){--tw-bg-opacity:1;background-color:rgb(2 6 23/var(--tw-bg-opacity,1))}.dark\\:text-slate-400:is(.dark *){--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}.dark\\:text-slate-50:is(.dark *){--tw-text-opacity:1;color:rgb(248 250 252/var(--tw-text-opacity,1))}.dark\\:text-slate-900:is(.dark *){--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.dark\\:ring-offset-slate-950:is(.dark *){--tw-ring-offset-color:#020617}.dark\\:hover\\:bg-red-900\\/90:hover:is(.dark *){background-color:rgba(127,29,29,.9)}.dark\\:hover\\:bg-slate-50\\/90:hover:is(.dark *){background-color:rgba(248,250,252,.9)}.dark\\:hover\\:bg-slate-800:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.dark\\:hover\\:bg-slate-800\\/80:hover:is(.dark *){background-color:rgba(30,41,59,.8)}.dark\\:hover\\:text-slate-50:hover:is(.dark *){--tw-text-opacity:1;color:rgb(248 250 252/var(--tw-text-opacity,1))}.dark\\:focus\\:bg-slate-800:focus:is(.dark *){--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.dark\\:focus\\:text-slate-50:focus:is(.dark *){--tw-text-opacity:1;color:rgb(248 250 252/var(--tw-text-opacity,1))}.dark\\:focus-visible\\:ring-slate-300:focus-visible:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgb(203 213 225/var(--tw-ring-opacity,1))}.dark\\:data-\\[state\\=active\\]\\:bg-slate-950[data-state=active]:is(.dark *){--tw-bg-opacity:1;background-color:rgb(2 6 23/var(--tw-bg-opacity,1))}.dark\\:data-\\[state\\=open\\]\\:bg-slate-800[data-state=open]:is(.dark *){--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.dark\\:data-\\[state\\=active\\]\\:text-slate-50[data-state=active]:is(.dark *){--tw-text-opacity:1;color:rgb(248 250 252/var(--tw-text-opacity,1))}@media (min-width:768px){.md\\:sticky{position:sticky}.md\\:top-2{top:.5rem}}",useStyles=()=>{reactExports.useEffect(()=>{if(document.querySelector('style[data-styles="tscircuit-runframe"]'))return;const J=document.createElement("style");J.setAttribute("data-styles","tscircuit-runframe"),J.textContent=styles,document.head.appendChild(J)},[])},CircuitJsonPreview=({code:lV,onRunClicked:J=void 0,tsxRunTriggerCount:VV,errorMessage:RV,circuitJsonKey:UV="",circuitJson:ZV,showCodeTab:WV=!1,codeTabContent:IV,showJsonTab:dV=!0,showImportAndFormatButtons:CV=!0,className:FV,headerClassName:NV,leftHeaderContent:gV,readOnly:eV,isStreaming:JV,onToggleFullScreen:nV,isFullScreen:aV,isRunningCode:GV,hasCodeChangedSinceLastRun:cV,onEditEvent:TV,editEvents:iV,defaultActiveTab:tV})=>{useStyles();const[MV,AV]=reactExports.useState(tV??"pcb");return reactExports.useEffect(()=>{RV&&AV("error")},[RV]),reactExports.useEffect(()=>{MV==="code"&&ZV&&!RV&&AV("pcb")},[ZV]),jsxRuntimeExports.jsx("div",{className:cn$1("flex flex-col relative",FV),children:jsxRuntimeExports.jsx("div",{className:"md:sticky md:top-2",children:jsxRuntimeExports.jsxs(Tabs,{value:MV,onValueChange:AV,className:"flex-grow flex flex-col p-2",children:[jsxRuntimeExports.jsxs("div",{className:cn$1("flex items-center gap-2",NV),children:[gV,gV&&jsxRuntimeExports.jsx("div",{className:"flex-grow"}),!gV&&jsxRuntimeExports.jsx("div",{className:"flex-grow"}),jsxRuntimeExports.jsxs(TabsList,{children:[WV&&jsxRuntimeExports.jsx(TabsTrigger,{value:"code",children:"Code"}),jsxRuntimeExports.jsxs(TabsTrigger,{value:"pcb",className:"whitespace-nowrap",children:[ZV&&jsxRuntimeExports.jsx("span",{className:cn$1("inline-flex items-center justify-center w-2 h-2 mr-1 text-xs font-bold text-white rounded-full",cV?"bg-gray-500":"bg-blue-500")}),"PCB"]}),jsxRuntimeExports.jsxs(TabsTrigger,{value:"schematic",className:"whitespace-nowrap",children:[ZV&&jsxRuntimeExports.jsx("span",{className:cn$1("inline-flex items-center justify-center w-2 h-2 mr-1 text-xs font-bold text-white rounded-full",cV?"bg-gray-500":"bg-blue-500")}),"Schematic"]}),jsxRuntimeExports.jsxs(TabsTrigger,{value:"cad",children:[ZV&&jsxRuntimeExports.jsx("span",{className:cn$1("inline-flex items-center justify-center w-2 h-2 mr-1 text-xs font-bold text-white rounded-full",cV?"bg-gray-500":"bg-blue-500")}),"3D"]}),jsxRuntimeExports.jsxs(DropdownMenu,{children:[jsxRuntimeExports.jsx(DropdownMenuTrigger,{asChild:!0,children:jsxRuntimeExports.jsxs("div",{className:"whitespace-nowrap p-2 mr-1 cursor-pointer relative",children:[jsxRuntimeExports.jsx(Ellipsis,{className:"w-4 h-4"}),RV&&jsxRuntimeExports.jsx("span",{className:"inline-flex absolute top-[6px] right-[4px] items-center justify-center w-1 h-1 ml-2 text-[8px] font-bold text-white bg-red-500 rounded-full"})]})}),jsxRuntimeExports.jsxs(DropdownMenuContent,{className:"*:text-xs",children:[jsxRuntimeExports.jsxs(DropdownMenuItem,{onSelect:()=>AV("assembly"),children:[jsxRuntimeExports.jsx(Check,{className:cn$1("w-3 h-3 mr-2",MV!=="assembly"&&"invisible")}),"Assembly"]}),jsxRuntimeExports.jsxs(DropdownMenuItem,{onSelect:()=>AV("error"),className:"flex",children:[jsxRuntimeExports.jsx(Check,{className:cn$1("w-3 h-3 mr-2",MV!=="error"&&"invisible")}),jsxRuntimeExports.jsx("div",{className:"flex-grow",children:"Errors"}),RV&&jsxRuntimeExports.jsx("span",{className:"inline-flex items-center justify-center w-3 h-3 ml-2 text-[8px] font-bold text-white bg-red-500 rounded-full",children:"1"})]}),jsxRuntimeExports.jsxs(DropdownMenuItem,{onSelect:()=>AV("bom"),children:[jsxRuntimeExports.jsx(Check,{className:cn$1("w-3 h-3 mr-2",MV!=="bom"&&"invisible")}),"Bill of Materials"]}),jsxRuntimeExports.jsxs(DropdownMenuItem,{onSelect:()=>AV("circuitjson"),children:[jsxRuntimeExports.jsx(Check,{className:cn$1("w-3 h-3 mr-2",MV!=="circuitjson"&&"invisible")}),"JSON"]})]})]})]}),nV&&jsxRuntimeExports.jsx(Button,{onClick:nV,variant:"ghost",children:aV?jsxRuntimeExports.jsx(Minimize,{size:16}):jsxRuntimeExports.jsx(Fullscreen,{size:16})})]}),WV&&jsxRuntimeExports.jsx(TabsContent,{value:"code",className:"flex-grow overflow-hidden",children:jsxRuntimeExports.jsx("div",{className:"h-full",children:IV})}),jsxRuntimeExports.jsx(TabsContent,{value:"pcb",children:jsxRuntimeExports.jsx("div",{className:cn$1("overflow-hidden",aV?"h-[calc(100vh-96px)]":"h-[620px]"),children:jsxRuntimeExports.jsx(ErrorBoundary,{fallback:jsxRuntimeExports.jsx("div",{children:"Error loading PCB viewer"}),children:ZV?jsxRuntimeExports.jsx(PcbViewerWithContainerHeight,{soup:ZV,containerClassName:cn$1("h-full w-full",aV?"min-h-[calc(100vh-240px)]":"min-h-[620px]")},UV):jsxRuntimeExports.jsx(PreviewEmptyState,{onRunClicked:J})})})}),jsxRuntimeExports.jsx(TabsContent,{value:"assembly",children:jsxRuntimeExports.jsx("div",{className:cn$1("overflow-auto",aV?"h-[calc(100vh-96px)]":"h-[620px]"),children:jsxRuntimeExports.jsx(ErrorBoundary,{fallback:jsxRuntimeExports.jsx("div",{children:"Error loading Assembly"}),children:ZV?jsxRuntimeExports.jsx(AssemblyViewer,{circuitJson:ZV,containerStyle:{height:"100%"},editingEnabled:!0,debugGrid:!0}):jsxRuntimeExports.jsx(PreviewEmptyState,{onRunClicked:J})})})}),jsxRuntimeExports.jsx(TabsContent,{value:"schematic",children:jsxRuntimeExports.jsx("div",{className:cn$1("overflow-auto",aV?"h-[calc(100vh-96px)]":"h-[620px]"),children:jsxRuntimeExports.jsx(ErrorBoundary,{fallback:jsxRuntimeExports.jsx("div",{children:"Error loading Schematic"}),children:ZV?jsxRuntimeExports.jsx(SchematicViewer,{circuitJson:ZV,containerStyle:{height:"100%"},editingEnabled:!0,onEditEvent:pV=>TV==null?void 0:TV(pV),editEvents:iV,debugGrid:!0}):jsxRuntimeExports.jsx(PreviewEmptyState,{onRunClicked:J})})})}),jsxRuntimeExports.jsx(TabsContent,{value:"cad",children:jsxRuntimeExports.jsx("div",{className:cn$1("overflow-auto",aV?"h-[calc(100vh-96px)]":"h-[620px]"),children:jsxRuntimeExports.jsx(ErrorBoundary,{FallbackComponent:ErrorFallback,children:ZV?jsxRuntimeExports.jsx(distExports$2.CadViewer,{soup:ZV}):jsxRuntimeExports.jsx(PreviewEmptyState,{onRunClicked:J})})})}),jsxRuntimeExports.jsx(TabsContent,{value:"bom",children:jsxRuntimeExports.jsx("div",{className:cn$1("overflow-auto",aV?"h-[calc(100vh-96px)]":"h-[620px]"),children:jsxRuntimeExports.jsx(ErrorBoundary,{fallback:jsxRuntimeExports.jsx("div",{children:"Error loading BOM"}),children:ZV?jsxRuntimeExports.jsx(BomTable,{circuitJson:ZV}):jsxRuntimeExports.jsx(PreviewEmptyState,{onRunClicked:J})})})}),jsxRuntimeExports.jsx(TabsContent,{value:"circuitjson",children:jsxRuntimeExports.jsx("div",{className:cn$1("overflow-auto",aV?"h-[calc(100vh-96px)]":"h-[620px]"),children:jsxRuntimeExports.jsx(ErrorBoundary,{fallback:jsxRuntimeExports.jsx("div",{children:"Error loading JSON viewer"}),children:ZV?jsxRuntimeExports.jsx(CircuitJsonTableViewer,{elements:ZV}):jsxRuntimeExports.jsx(PreviewEmptyState,{onRunClicked:J})})})}),jsxRuntimeExports.jsx(TabsContent,{value:"error",children:ZV||RV?jsxRuntimeExports.jsx(ErrorTabContent,{code:lV,errorMessage:RV}):jsxRuntimeExports.jsx(PreviewEmptyState,{onRunClicked:J})})]})})})};/**
|
|
22279
22279
|
* @license
|
|
22280
22280
|
* Copyright 2019 Google LLC
|
|
22281
22281
|
* SPDX-License-Identifier: Apache-2.0
|
|
@@ -22283,7 +22283,7 @@ void main() {
|
|
|
22283
22283
|
[zustand devtools middleware] Unsupported __setState action format.
|
|
22284
22284
|
When using 'store' option in devtools(), the 'state' should have only one key, which is a value of 'store' that was passed in devtools(),
|
|
22285
22285
|
and value of this only key should be a state object. Example: { "type": "__setState", "state": { "abc123Store": { "foo": "bar" } } }
|
|
22286
|
-
`);const cV=GV.state[IV];if(cV==null)return;JSON.stringify(UV.getState())!==JSON.stringify(cV)&&eV(cV);return}UV.dispatchFromDevtools&&typeof UV.dispatch=="function"&&UV.dispatch(GV)});case"DISPATCH":switch(nV.payload.type){case"RESET":return eV(JV),IV===void 0?FV==null?void 0:FV.init(UV.getState()):FV==null?void 0:FV.init(getTrackedConnectionState(dV.name));case"COMMIT":if(IV===void 0){FV==null||FV.init(UV.getState());return}return FV==null?void 0:FV.init(getTrackedConnectionState(dV.name));case"ROLLBACK":return parseJsonThen(nV.state,GV=>{if(IV===void 0){eV(GV),FV==null||FV.init(UV.getState());return}eV(GV[IV]),FV==null||FV.init(getTrackedConnectionState(dV.name))});case"JUMP_TO_STATE":case"JUMP_TO_ACTION":return parseJsonThen(nV.state,GV=>{if(IV===void 0){eV(GV);return}JSON.stringify(UV.getState())!==JSON.stringify(GV[IV])&&eV(GV[IV])});case"IMPORT_STATE":{const{nextLiftedState:GV}=nV.payload,cV=(aV=GV.computedStates.slice(-1)[0])==null?void 0:aV.state;if(!cV)return;eV(IV===void 0?cV:cV[IV]),FV==null||FV.send(null,GV);return}case"PAUSE_RECORDING":return gV=!gV}return}}),JV},devtools=devtoolsImpl,parseJsonThen=(lV,J)=>{let VV;try{VV=JSON.parse(lV)}catch(RV){console.error("[zustand devtools middleware] Could not parse the received json",RV)}VV!==void 0&&J(VV)},API_BASE=window.API_BASE_URL??"/api",debug$4=Debug$1("run-frame"),debug$3=debug$4.extend("store");async function upsertFileApi(lV,J){return(await(await fetch(`${API_BASE}/files/upsert`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({file_path:lV,text_content:J})})).json()).file}async function getFileApi(lV){return(await(await fetch(`${API_BASE}/files/get?file_path=${encodeURIComponent(lV)}`)).json()).file}async function getEvents(lV){const J=lV?`${API_BASE}/events/list?since=${encodeURIComponent(lV)}`:`${API_BASE}/events/list`;return(await(await fetch(J)).json()).event_list}async function getInitialFilesApi(){const lV=await fetch(`${API_BASE}/files/list`),{file_list:J}=await lV.json(),VV=new Map;for(const RV of J){const UV=await getFileApi(RV.file_path);VV.set(RV.file_path,UV.text_content)}return VV}const useRunFrameStore=create$1()(devtools((lV,J)=>({fsMap:new Map,lastEventTime:new Date().toISOString(),isPolling:!1,error:null,circuitJson:null,lastManualEditsChangeSentAt:0,recentEvents:[],loadInitialFiles:async()=>{const VV=await getInitialFilesApi();lV({fsMap:VV})},upsertFile:async(VV,RV)=>{try{const UV=await upsertFileApi(VV,RV);lV(ZV=>({fsMap:new Map(ZV.fsMap).set(UV.file_path,UV.text_content)}))}catch(UV){lV({error:UV})}},getFile:async VV=>{try{const RV=await getFileApi(VV);lV(UV=>({fsMap:new Map(UV.fsMap).set(RV.file_path,RV.text_content)}))}catch(RV){lV({error:RV})}},setCircuitJson:VV=>{VV!==J().circuitJson&&lV({circuitJson:VV})},startPolling:()=>{const VV=async()=>{const RV=J();if(RV.isPolling){try{const UV=await getEvents(RV.lastEventTime);if(UV.length>0){lV(IV=>({recentEvents:[...IV.recentEvents,...UV].slice(0,100)}));const ZV=UV[UV.length-1].created_at,WV=new Map(RV.fsMap);for(const IV of UV)if(IV.event_type==="FILE_UPDATED"){const dV=await getFileApi(IV.file_path);if(IV.file_path==="manual_edits.json"&&Date.now()-RV.lastManualEditsChangeSentAt<1e3)continue;WV.set(dV.file_path,dV.text_content)}lV({fsMap:WV,lastEventTime:ZV})}}catch(UV){lV({error:UV})}setTimeout(VV,1e3)}};lV({isPolling:!0}),VV()},stopPolling:()=>{lV({isPolling:!1})},pushEvent:async VV=>{await fetch(`${window.API_BASE_URL??""}/api/events/create`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(VV)})},applyEditEventsAndUpdateManualEditsJson:async VV=>{debug$3("applyEditEventsAndUpdateManualEditsJson",{editEvents:VV});const RV=J();if(!RV.circuitJson)return;const UV=RV.fsMap.get("manual-edits.json"),ZV=UV?JSON.parse(UV):{},WV=applyEditEventsToManualEditsFile({circuitJson:RV.circuitJson,editEvents:VV,manualEditsFile:ZV});debug$3("updatedManualEditsFileContent",WV),lV(IV=>({lastManualEditsChangeSentAt:Date.now(),fsMap:new Map(IV.fsMap).set("manual-edits.json",JSON.stringify(WV))})),await upsertFileApi("manual-edits.json",JSON.stringify(WV,null,2))}}),{name:"run-frame-store"})),getChangesBetweenFsMaps=(lV,J)=>{const VV={};for(const[RV,UV]of lV.entries()){const ZV=J.get(RV);ZV!==UV&&(VV[RV]={old:UV,new:ZV})}for(const[RV,UV]of J.entries())lV.has(RV)||(VV[RV]={old:void 0,new:UV});return VV},debug$2=Debug$1("run-frame:RunFrame"),RunFrame=lV=>{const[J,VV]=useRunFrameStore(IV=>[IV.circuitJson,IV.setCircuitJson]),[RV,UV]=reactExports.useState(null);reactExports.useEffect(()=>{lV.debug&&Debug$1.enable("run-frame*")},[lV.debug]);const ZV=lV.fsMap instanceof Map?lV.fsMap:Object.entries(lV.fsMap??{}).reduce((IV,[dV,CV])=>IV.set(dV,CV),new Map),WV=reactExports.useRef(null);return reactExports.useEffect(()=>{if(!ZV)return;if(WV.current&&J){const dV=getChangesBetweenFsMaps(WV.current,ZV);if(Object.keys(dV).length>0)debug$2("render triggered by changes:",dV);else{debug$2("render triggered without changes to fsMap, skipping");return}}WV.current=ZV;async function IV(){var gV,eV,JV,nV,aV;const dV=globalThis.runFrameWorker??await createCircuitWebWorker({webWorkerUrl:blobUrl,verbose:!0});globalThis.runFrameWorker=dV,(gV=lV.onRenderStarted)==null||gV.call(lV);const CV=ZV instanceof Map?Object.fromEntries(ZV.entries()):ZV,FV=dV.executeWithFsMap({entrypoint:lV.entrypoint,fsMap:CV}).catch(GV=>{const cV=GV.message.split(":")[1];UV({error:cV,stack:GV.stack}),console.error(GV)});debug$2("waiting for initial circuit json...");let NV=await dV.getCircuitJson();debug$2("got initial circuit json"),VV(NV),(eV=lV.onCircuitJsonChange)==null||eV.call(lV,NV),(JV=lV.onInitialRender)==null||JV.call(lV,{circuitJson:NV}),debug$2("waiting for execution to finish..."),await FV,debug$2("getting final circuit json"),NV=await dV.getCircuitJson(),(nV=lV.onCircuitJsonChange)==null||nV.call(lV,NV),VV(NV),(aV=lV.onRenderFinished)==null||aV.call(lV,{circuitJson:NV})}IV()},[lV.fsMap]),jsxRuntimeExports.jsx(CircuitJsonPreview,{defaultActiveTab:"schematic",leftHeaderContent:lV.leftHeaderContent,circuitJson:J,errorMessage:RV==null?void 0:RV.error,onEditEvent:lV.onEditEvent,editEvents:lV.editEvents})},debug$1=debug$4.extend("useEditEventController"),useEditEventController=()=>{const lV=useRunFrameStore(eV=>eV.applyEditEventsAndUpdateManualEditsJson),[J,VV]=reactExports.useState([]),[RV,UV]=reactExports.useState(!1),ZV=J.filter(eV=>!eV._applied),WV=J.filter(eV=>eV._applied),IV=RV?J:ZV,dV=reactExports.useCallback(eV=>{VV(JV=>[...JV,{...eV,_applied:!1}])},[]),CV=reactExports.useCallback(eV=>{VV(JV=>JV.map(nV=>nV===eV?{...nV,_applied:!0}:nV))},[]),FV=reactExports.useCallback(()=>{VV(eV=>eV.map(JV=>({...JV,_applied:!0})))},[]),NV=reactExports.useCallback(()=>{UV(!0),J.length!==0&&(debug$1("removing edit events that are applied"),VV(eV=>eV.filter(JV=>!JV._applied)))},[J]),gV=reactExports.useCallback(()=>{UV(!1)},[]);return reactExports.useEffect(()=>{if(J.filter(JV=>!JV._applied).length===0)return;const eV=setTimeout(()=>{FV(),lV(J)},1e3);return()=>clearTimeout(eV)},[J]),{unappliedEditEvents:ZV,appliedEditEvents:WV,editEventsForRender:IV,pushEditEvent:dV,markEditEventApplied:CV,markRenderStarted:NV,markRenderComplete:gV,markAllEditEventsApplied:FV}},debug=Debug$1("run-frame:RunFrameWithApi"),guessEntrypoint=lV=>lV.find(J=>J.includes("entrypoint."))??lV.find(J=>J.includes("index."))??lV.find(J=>J.includes("main."))??lV.find(J=>J.endsWith(".tsx")),RunFrameWithApi=lV=>{const{apiBaseUrl:J,leftHeaderContent:VV}=lV;reactExports.useEffect(()=>{lV.debug&&Debug$1.enable("run-frame*")},[lV.debug]);const{startPolling:RV,stopPolling:UV,loadInitialFiles:ZV}=useRunFrameStore(gV=>({startPolling:gV.startPolling,stopPolling:gV.stopPolling,loadInitialFiles:gV.loadInitialFiles})),WV=useRunFrameStore(gV=>gV.fsMap);reactExports.useEffect(()=>{ZV()},[]);const{editEventsForRender:IV,pushEditEvent:dV,markRenderStarted:CV,markRenderComplete:FV}=useEditEventController();reactExports.useEffect(()=>{J&&(window.API_BASE_URL=J)},[J]),reactExports.useEffect(()=>(RV(),()=>UV()),[RV,UV]);const NV=guessEntrypoint(Array.from(WV.keys()))??"entrypoint.tsx";return WV.get(NV)?jsxRuntimeExports.jsx(RunFrame,{fsMap:WV,leftHeaderContent:VV,onInitialRender:()=>{debug("onInitialRender / markRenderStarted"),CV()},onRenderFinished:()=>{debug("onRenderFinished / markRenderComplete"),FV()},entrypoint:NV,onError:gV=>{console.error("RunFrame error:",gV)},editEvents:IV,onEditEvent:gV=>{dV(gV),fetch(`${API_BASE}/events/create`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({event_type:"USER_CREATED_MANUAL_EDIT",...gV})})}}):jsxRuntimeExports.jsxs("div",{children:["No entrypoint found for Run Frame! Found files:"," ",Array.from(WV.keys()).join(",")]})},SelectSnippetDialog=({snippetNames:lV,onSelect:J,onCancel:VV,isOpen:RV})=>{const[UV,ZV]=reactExports.useState(""),[WV,IV]=reactExports.useState("");if(!RV)return null;const dV=lV.filter(NV=>NV.toLowerCase().includes(WV.toLowerCase())),CV=WV&&!lV.includes(WV),FV=NV=>{NV.key==="Enter"&&(dV.length===1?ZV(dV[0]):CV&&ZV(WV))};return jsxRuntimeExports.jsx("div",{className:"fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-[100]",children:jsxRuntimeExports.jsxs("div",{className:"bg-white rounded-lg p-6 w-96",children:[jsxRuntimeExports.jsx("h2",{className:"text-lg font-semibold mb-4",children:"Select Snippet"}),jsxRuntimeExports.jsx("input",{type:"text",className:"w-full px-4 py-2 border rounded mb-4",placeholder:"Search snippets or new snippet name...",value:WV,onChange:NV=>IV(NV.target.value),onKeyDown:FV}),jsxRuntimeExports.jsxs("div",{className:"h-60 overflow-y-auto",children:[dV.map(NV=>jsxRuntimeExports.jsx("button",{type:"button",className:`w-full text-left px-4 py-2 rounded hover:bg-gray-100 ${UV===NV?"bg-blue-50":""}`,onClick:()=>ZV(NV),children:NV},NV)),CV&&jsxRuntimeExports.jsxs("button",{type:"button",className:`w-full text-left px-4 py-2 rounded hover:bg-gray-100 text-blue-500 ${UV===WV?"bg-blue-50":""}`,onClick:()=>ZV(WV),children:['Create new "',WV,'"']})]}),jsxRuntimeExports.jsxs("div",{className:"mt-4 flex justify-end gap-2",children:[jsxRuntimeExports.jsx("button",{type:"button",className:"px-4 py-2 text-gray-600 hover:text-gray-800",onClick:VV,children:"Cancel"}),jsxRuntimeExports.jsx("button",{type:"button",className:"px-4 py-2 bg-blue-500 text-white rounded hover:bg-blue-600 disabled:opacity-50",onClick:()=>UV&&J(UV),disabled:!UV,children:UV===WV?`Create "${UV}"`:`Save to ${UV}`})]})]})})},useEventHandler=lV=>{const J=reactExports.useRef(null),VV=useRunFrameStore(RV=>RV.recentEvents);reactExports.useEffect(()=>{if(VV.length===0)return;const RV=VV[0];RV.event_id!==J.current&&(lV(RV),J.current=RV.event_id)},[VV,lV])},SaveToSnippetsButton=()=>{const[lV,J]=reactExports.useState(null),[VV,RV]=reactExports.useState(!1),[UV,ZV]=reactExports.useState(!0),WV=useRunFrameStore(GV=>GV.pushEvent),IV=useRunFrameStore(GV=>GV.recentEvents),[dV,CV]=reactExports.useState(!1),[FV,NV]=reactExports.useState(null),[gV,eV]=reactExports.useState(null),[JV,nV]=reactExports.useState(!1),aV=reactExports.useMemo(()=>Date.now(),[]);return useEventHandler(GV=>{if(!(new Date(GV.created_at).valueOf()<aV+500)){if(GV.event_type==="FILE_UPDATED"){RV(!0);return}if(GV.event_type==="SNIPPET_SAVED"){RV(!1),ZV(!1);return}}}),reactExports.useEffect(()=>{if(!dV||FV===null)return;const GV=IV.filter(iV=>new Date(iV.created_at).valueOf()>FV),cV=GV.find(iV=>iV.event_type==="FAILED_TO_SAVE_SNIPPET"),TV=GV.find(iV=>iV.event_type==="SNIPPET_SAVED");cV&&(CV(!1),NV(null),cV.error_code==="SNIPPET_UNSET"&&cV.available_snippet_names&&(eV(cV.available_snippet_names),nV(!0))),TV&&(CV(!1),NV(null))},[IV,dV]),jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsxs("button",{type:"button",onClick:async()=>{CV(!0),NV(Date.now()),await WV({event_type:"REQUEST_TO_SAVE_SNIPPET",snippet_name:lV})},disabled:dV,className:`px-3 flex items-center text-sm py-1.5 rounded-md ${dV?"cursor-not-allowed":"bg-white border border-gray-300 font-medium text-gray-900 shadow-sm"}`,children:[dV?"Saving...":"Save to Snippets",dV||UV?null:jsxRuntimeExports.jsx("span",{className:"ml-1.5 flex items-center",children:VV?jsxRuntimeExports.jsx("div",{className:"text-xs bg-orange-400 text-white p-0.5 px-1.5 rounded",children:"unsaved changes"}):jsxRuntimeExports.jsx(CircleCheck,{className:"w-4 h-4 text-green-500"})})]}),jsxRuntimeExports.jsx(SelectSnippetDialog,{snippetNames:gV??[],onSelect:async GV=>{CV(!0),NV(Date.now()),J(GV),await WV({event_type:"REQUEST_TO_SAVE_SNIPPET",snippet_name:GV}),nV(!1)},onCancel:()=>nV(!1),isOpen:JV})]})},RunFrameForCli=lV=>jsxRuntimeExports.jsx(RunFrameWithApi,{debug:lV.debug,leftHeaderContent:jsxRuntimeExports.jsx("div",{children:jsxRuntimeExports.jsx(SaveToSnippetsButton,{})})}),root=clientExports.createRoot(document.getElementById("root"));root.render(jsxRuntimeExports.jsx(React.StrictMode,{children:jsxRuntimeExports.jsx("div",{style:{width:"100vw",height:"100vh"},children:jsxRuntimeExports.jsx(RunFrameForCli,{debug:window.location.search.includes("debug")})})}));var t=typeof self<"u"?self:{};function e(lV,J){V:{for(var VV=["CLOSURE_FLAGS"],RV=t,UV=0;UV<VV.length;UV++)if((RV=RV[VV[UV]])==null){VV=null;break V}VV=RV}return(lV=VV&&VV[lV])!=null?lV:J}function n(){throw Error("Invalid UTF8")}function r(lV,J){return J=String.fromCharCode.apply(null,J),lV==null?J:lV+J}let i$1,s;const o=typeof TextDecoder<"u";let a;const h=typeof TextEncoder<"u";function c(lV){if(h)lV=(a||(a=new TextEncoder)).encode(lV);else{let VV=0;const RV=new Uint8Array(3*lV.length);for(let UV=0;UV<lV.length;UV++){var J=lV.charCodeAt(UV);if(J<128)RV[VV++]=J;else{if(J<2048)RV[VV++]=J>>6|192;else{if(J>=55296&&J<=57343){if(J<=56319&&UV<lV.length){const ZV=lV.charCodeAt(++UV);if(ZV>=56320&&ZV<=57343){J=1024*(J-55296)+ZV-56320+65536,RV[VV++]=J>>18|240,RV[VV++]=J>>12&63|128,RV[VV++]=J>>6&63|128,RV[VV++]=63&J|128;continue}UV--}J=65533}RV[VV++]=J>>12|224,RV[VV++]=J>>6&63|128}RV[VV++]=63&J|128}}lV=VV===RV.length?RV:RV.subarray(0,VV)}return lV}var u,l=e(610401301,!1),f=e(653718497,e(1,!0)),d=e(660014094,!1);const p=t.navigator;function g(lV){return!!l&&!!u&&u.brands.some(({brand:J})=>J&&J.indexOf(lV)!=-1)}function m(lV){var J;return(J=t.navigator)&&(J=J.userAgent)||(J=""),J.indexOf(lV)!=-1}function y(){return!!l&&!!u&&u.brands.length>0}function _(){return y()?g("Chromium"):(m("Chrome")||m("CriOS"))&&!(!y()&&m("Edge"))||m("Silk")}function v(lV){return v[" "](lV),lV}u=p&&p.userAgentData||null,v[" "]=function(){};var E=!y()&&(m("Trident")||m("MSIE"));!m("Android")||_(),_(),m("Safari")&&(_()||!y()&&m("Coast")||!y()&&m("Opera")||!y()&&m("Edge")||(y()?g("Microsoft Edge"):m("Edg/"))||y()&&g("Opera"));var w={},T=null;function A(lV){var J=lV.length,VV=3*J/4;VV%3?VV=Math.floor(VV):"=.".indexOf(lV[J-1])!=-1&&(VV="=.".indexOf(lV[J-2])!=-1?VV-2:VV-1);var RV=new Uint8Array(VV),UV=0;return function(ZV,WV){function IV(eV){for(;dV<ZV.length;){var JV=ZV.charAt(dV++),nV=T[JV];if(nV!=null)return nV;if(!/^[\s\xa0]*$/.test(JV))throw Error("Unknown base64 encoding at char: "+JV)}return eV}b();for(var dV=0;;){var CV=IV(-1),FV=IV(0),NV=IV(64),gV=IV(64);if(gV===64&&CV===-1)break;WV(CV<<2|FV>>4),NV!=64&&(WV(FV<<4&240|NV>>2),gV!=64&&WV(NV<<6&192|gV))}}(lV,function(ZV){RV[UV++]=ZV}),UV!==VV?RV.subarray(0,UV):RV}function b(){if(!T){T={};for(var lV="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),J=["+/=","+/","-_=","-_.","-_"],VV=0;VV<5;VV++){var RV=lV.concat(J[VV].split(""));w[VV]=RV;for(var UV=0;UV<RV.length;UV++){var ZV=RV[UV];T[ZV]===void 0&&(T[ZV]=UV)}}}}var k=typeof Uint8Array<"u",S=!E&&typeof btoa=="function";function x(lV){if(!S){var J;J===void 0&&(J=0),b(),J=w[J];var VV=Array(Math.floor(lV.length/3)),RV=J[64]||"";let dV=0,CV=0;for(;dV<lV.length-2;dV+=3){var UV=lV[dV],ZV=lV[dV+1],WV=lV[dV+2],IV=J[UV>>2];UV=J[(3&UV)<<4|ZV>>4],ZV=J[(15&ZV)<<2|WV>>6],WV=J[63&WV],VV[CV++]=IV+UV+ZV+WV}switch(IV=0,WV=RV,lV.length-dV){case 2:WV=J[(15&(IV=lV[dV+1]))<<2]||RV;case 1:lV=lV[dV],VV[CV]=J[lV>>2]+J[(3&lV)<<4|IV>>4]+WV+RV}return VV.join("")}for(J="",VV=0,RV=lV.length-10240;VV<RV;)J+=String.fromCharCode.apply(null,lV.subarray(VV,VV+=10240));return J+=String.fromCharCode.apply(null,VV?lV.subarray(VV):lV),btoa(J)}const L=/[-_.]/g,R={"-":"+",_:"/",".":"="};function F(lV){return R[lV]||""}function M(lV){if(!S)return A(lV);L.test(lV)&&(lV=lV.replace(L,F)),lV=atob(lV);const J=new Uint8Array(lV.length);for(let VV=0;VV<lV.length;VV++)J[VV]=lV.charCodeAt(VV);return J}function I(lV){return k&&lV!=null&&lV instanceof Uint8Array}var P={};let O;function C(lV){if(lV!==P)throw Error("illegal external caller")}function N(){return O||(O=new D(null,P))}function U(lV){C(P);var J=lV.ba;return(J=J==null||I(J)?J:typeof J=="string"?M(J):null)==null?J:lV.ba=J}var D=class{constructor(lV,J){if(C(J),this.ba=lV,lV!=null&&lV.length===0)throw Error("ByteString should be constructed with non-empty values")}ua(){return new Uint8Array(U(this)||0)}};function B(lV,J){lV.__closure__error__context__984382||(lV.__closure__error__context__984382={}),lV.__closure__error__context__984382.severity=J}let G;function j(){const lV=Error();B(lV,"incident"),function(J){t.setTimeout(()=>{throw J},0)}(lV)}function V(lV){return B(lV=Error(lV),"warning"),lV}function X(){return typeof BigInt=="function"}function H(lV){return Array.prototype.slice.call(lV)}var W=typeof Symbol=="function"&&typeof Symbol()=="symbol";function z(lV){return typeof Symbol=="function"&&typeof Symbol()=="symbol"?Symbol():lV}var K=z(),Y=z("0di"),$=z("2ex"),q=z("1oa"),Z=W?(lV,J)=>{lV[K]|=J}:(lV,J)=>{lV.G!==void 0?lV.G|=J:Object.defineProperties(lV,{G:{value:J,configurable:!0,writable:!0,enumerable:!1}})},Q=W?(lV,J)=>{lV[K]&=~J}:(lV,J)=>{lV.G!==void 0&&(lV.G&=~J)},tt=W?lV=>0|lV[K]:lV=>0|lV.G,et=W?lV=>lV[K]:lV=>lV.G,nt=W?(lV,J)=>{lV[K]=J}:(lV,J)=>{lV.G!==void 0?lV.G=J:Object.defineProperties(lV,{G:{value:J,configurable:!0,writable:!0,enumerable:!1}})};function rt(lV){return Z(lV,34),lV}function it(lV,J){nt(J,-14591&(0|lV))}function st(lV,J){nt(J,-14557&(34|lV))}var ot,at={},ht={};function ct(lV){return!(!lV||typeof lV!="object"||lV.La!==ht)}function ut(lV){return lV!==null&&typeof lV=="object"&&!Array.isArray(lV)&&lV.constructor===Object}function lt(lV,J,VV){if(lV!=null){if(typeof lV=="string")lV=lV?new D(lV,P):N();else if(lV.constructor!==D)if(I(lV))lV=lV.length?new D(VV?lV:new Uint8Array(lV),P):N();else{if(!J)throw Error();lV=void 0}}return lV}function ft(lV){return!(!Array.isArray(lV)||lV.length)&&!!(1&tt(lV))}const dt=[];function pt(lV){if(2&lV)throw Error()}nt(dt,55),ot=Object.freeze(dt);class gt{constructor(J,VV,RV){this.l=0,this.g=J,this.h=VV,this.m=RV}next(){if(this.l<this.g.length){const J=this.g[this.l++];return{done:!1,value:this.h?this.h.call(this.m,J):J}}return{done:!0,value:void 0}}[Symbol.iterator](){return new gt(this.g,this.h,this.m)}}let mt;function yt(lV,J){(J=mt?J[mt]:void 0)&&(lV[mt]=H(J))}var _t=Object.freeze({}),vt=Object.freeze({});function Et(lV){return lV.Sa=!0,lV}var wt=Et(lV=>typeof lV=="number"),Tt=Et(lV=>typeof lV=="string"),At=Et(lV=>typeof lV=="boolean"),bt=typeof t.BigInt=="function"&&typeof t.BigInt(0)=="bigint",kt=Et(lV=>bt?lV>=xt&&lV<=Rt:lV[0]==="-"?Ft(lV,St):Ft(lV,Lt));const St=Number.MIN_SAFE_INTEGER.toString(),xt=bt?BigInt(Number.MIN_SAFE_INTEGER):void 0,Lt=Number.MAX_SAFE_INTEGER.toString(),Rt=bt?BigInt(Number.MAX_SAFE_INTEGER):void 0;function Ft(lV,J){if(lV.length>J.length)return!1;if(lV.length<J.length||lV===J)return!0;for(let VV=0;VV<lV.length;VV++){const RV=lV[VV],UV=J[VV];if(RV>UV)return!1;if(RV<UV)return!0}}const Mt=typeof Uint8Array.prototype.slice=="function";let It,Pt=0,Ot=0;function Ct(lV){const J=lV>>>0;Pt=J,Ot=(lV-J)/4294967296>>>0}function Nt(lV){if(lV<0){Ct(-lV);const[J,VV]=Xt(Pt,Ot);Pt=J>>>0,Ot=VV>>>0}else Ct(lV)}function Ut(lV){const J=It||(It=new DataView(new ArrayBuffer(8)));J.setFloat32(0,+lV,!0),Ot=0,Pt=J.getUint32(0,!0)}function Dt(lV,J){return 4294967296*J+(lV>>>0)}function Bt(lV,J){const VV=2147483648&J;return VV&&(J=~J>>>0,(lV=1+~lV>>>0)==0&&(J=J+1>>>0)),lV=Dt(lV,J),VV?-lV:lV}function Gt(lV,J){if(lV>>>=0,(J>>>=0)<=2097151)var VV=""+(4294967296*J+lV);else X()?VV=""+(BigInt(J)<<BigInt(32)|BigInt(lV)):(lV=(16777215&lV)+6777216*(VV=16777215&(lV>>>24|J<<8))+6710656*(J=J>>16&65535),VV+=8147497*J,J*=2,lV>=1e7&&(VV+=lV/1e7>>>0,lV%=1e7),VV>=1e7&&(J+=VV/1e7>>>0,VV%=1e7),VV=J+jt(VV)+jt(lV));return VV}function jt(lV){return lV=String(lV),"0000000".slice(lV.length)+lV}function Vt(lV){if(lV.length<16)Nt(Number(lV));else if(X())lV=BigInt(lV),Pt=Number(lV&BigInt(4294967295))>>>0,Ot=Number(lV>>BigInt(32)&BigInt(4294967295));else{const J=+(lV[0]==="-");Ot=Pt=0;const VV=lV.length;for(let RV=J,UV=(VV-J)%6+J;UV<=VV;RV=UV,UV+=6){const ZV=Number(lV.slice(RV,UV));Ot*=1e6,Pt=1e6*Pt+ZV,Pt>=4294967296&&(Ot+=Math.trunc(Pt/4294967296),Ot>>>=0,Pt>>>=0)}if(J){const[RV,UV]=Xt(Pt,Ot);Pt=RV,Ot=UV}}}function Xt(lV,J){return J=~J,lV?lV=1+~lV:J+=1,[lV,J]}function Ht(lV){return lV==null||typeof lV=="number"?lV:lV==="NaN"||lV==="Infinity"||lV==="-Infinity"?Number(lV):void 0}function Wt(lV){return lV==null||typeof lV=="boolean"?lV:typeof lV=="number"?!!lV:void 0}const zt=/^-?([1-9][0-9]*|0)(\.[0-9]+)?$/;function Kt(lV){const J=typeof lV;switch(J){case"bigint":return!0;case"number":return Number.isFinite(lV)}return J==="string"&&zt.test(lV)}function Yt(lV){if(lV==null)return lV;if(typeof lV=="string"){if(!lV)return;lV=+lV}return typeof lV=="number"&&Number.isFinite(lV)?0|lV:void 0}function $t(lV){if(lV==null)return lV;if(typeof lV=="string"){if(!lV)return;lV=+lV}return typeof lV=="number"&&Number.isFinite(lV)?lV>>>0:void 0}function qt(lV){return lV[0]!=="-"&&(lV.length<20||lV.length===20&&Number(lV.substring(0,6))<184467)}function Jt(lV){return lV=Math.trunc(lV),Number.isSafeInteger(lV)||(Nt(lV),lV=Bt(Pt,Ot)),lV}function Zt(lV){var J=Math.trunc(Number(lV));if(Number.isSafeInteger(J))return String(J);if((J=lV.indexOf("."))!==-1&&(lV=lV.substring(0,J)),!(lV[0]==="-"?lV.length<20||lV.length===20&&Number(lV.substring(0,7))>-922337:lV.length<19||lV.length===19&&Number(lV.substring(0,6))<922337))if(Vt(lV),lV=Pt,2147483648&(J=Ot))if(X())lV=""+(BigInt(0|J)<<BigInt(32)|BigInt(lV>>>0));else{const[VV,RV]=Xt(lV,J);lV="-"+Gt(VV,RV)}else lV=Gt(lV,J);return lV}function Qt(lV){return lV==null?lV:typeof lV=="bigint"?(kt(lV)?lV=Number(lV):(lV=BigInt.asIntN(64,lV),lV=kt(lV)?Number(lV):String(lV)),lV):Kt(lV)?typeof lV=="number"?Jt(lV):Zt(lV):void 0}function te(lV){if(lV==null)return lV;var J=typeof lV;if(J==="bigint")return String(BigInt.asUintN(64,lV));if(Kt(lV)){if(J==="string")return J=Math.trunc(Number(lV)),Number.isSafeInteger(J)&&J>=0?lV=String(J):((J=lV.indexOf("."))!==-1&&(lV=lV.substring(0,J)),qt(lV)||(Vt(lV),lV=Gt(Pt,Ot))),lV;if(J==="number")return(lV=Math.trunc(lV))>=0&&Number.isSafeInteger(lV)?lV:function(VV){if(VV<0){Nt(VV);const RV=Gt(Pt,Ot);return VV=Number(RV),Number.isSafeInteger(VV)?VV:RV}return qt(String(VV))?VV:(Nt(VV),Dt(Pt,Ot))}(lV)}}function ee(lV){if(typeof lV!="string")throw Error();return lV}function ne(lV){if(lV!=null&&typeof lV!="string")throw Error();return lV}function re(lV){return lV==null||typeof lV=="string"?lV:void 0}function ie(lV,J,VV,RV){if(lV!=null&&typeof lV=="object"&&lV.Y===at)return lV;if(!Array.isArray(lV))return VV?2&RV?(lV=J[Y])?J=lV:(rt((lV=new J).u),J=J[Y]=lV):J=new J:J=void 0,J;let UV=VV=tt(lV);return UV===0&&(UV|=32&RV),UV|=2&RV,UV!==VV&&nt(lV,UV),new J(lV)}function se(lV,J,VV){if(J)V:{if(!Kt(J=lV))throw V("int64");switch(typeof J){case"string":J=Zt(J);break V;case"bigint":if(lV=J=BigInt.asIntN(64,J),Tt(lV)){if(!/^\s*(?:-?[1-9]\d*|0)?\s*$/.test(lV))throw Error(String(lV))}else if(wt(lV)&&!Number.isSafeInteger(lV))throw Error(String(lV));J=bt?BigInt(J):At(J)?J?"1":"0":Tt(J)?J.trim()||"0":String(J);break V;default:J=Jt(J)}}else J=Qt(lV);return typeof(VV=(lV=J)==null?VV?0:void 0:lV)=="string"&&(J=+VV,Number.isSafeInteger(J))?J:VV}function oe(lV){if(ce===void 0&&(ce=typeof Proxy=="function"?ye(Proxy):null),!ce||!me())return lV;let J=ae==null?void 0:ae.get(lV);return J||(Math.random()>.01?lV:(function(VV){if(le===void 0){const RV=new ce([],{});le=Array.prototype.concat.call([],RV).length===1}le&&typeof Symbol=="function"&&Symbol.isConcatSpreadable&&(VV[Symbol.isConcatSpreadable]=!0)}(lV),J=new ce(lV,{set:(VV,RV,UV)=>(j(),VV[RV]=UV,!0)}),function(VV,RV){(ae||(ae=new ue)).set(VV,RV),(he||(he=new ue)).set(RV,VV)}(lV,J),J))}let ae,he,ce,ue,le,fe,de,pe,ge;function me(){return ue===void 0&&(ue=typeof WeakMap=="function"?ye(WeakMap):null),ue}function ye(lV){try{return lV.toString().indexOf("[native code]")!==-1?lV:null}catch{return null}}function _e(lV,J,VV){var WV;if(f&&me()){if((WV=fe==null?void 0:fe.get(J))!=null&&WV.get(lV)){if(VV)return}else if(Math.random()>.01)return;var RV=lV.length;VV={length:RV};for(var UV=0;UV<Math.min(RV,10);UV++){if(RV<=10)var ZV=UV;else{ZV=RV/10;const IV=Math.floor(UV*ZV);ZV=IV+Math.floor(Math.random()*(Math.floor((UV+1)*ZV)-IV))}VV[ZV]=lV[ZV]}Ee(lV,VV)?((UV=(RV=fe||(fe=new ue)).get(J))||(UV=new ue,RV.set(J,UV)),UV.set(lV,VV)):(j(),Te(lV,J))}}function ve(lV,J){var RV;const VV=(RV=fe==null?void 0:fe.get(J))==null?void 0:RV.get(lV);VV&&!Ee(lV,VV)&&(j(),Te(lV,J))}function Ee(lV,J){if(lV.length!==J.length)return!1;for(const UV in J){var VV,RV=Number(UV);if((VV=Number.isInteger(RV))&&(VV=lV[RV],RV=J[RV],VV=!(Number.isNaN(VV)?Number.isNaN(RV):VV===RV)),VV)return!1}return!0}function we(lV){if(lV&&(fe!=null&&fe.has(lV))){var J=lV.u;if(J)for(let VV=0;VV<J.length;VV++){const RV=J[VV];if(VV===J.length-1&&ut(RV))for(const UV in RV){const ZV=RV[UV];Array.isArray(ZV)&&ve(ZV,lV)}else Array.isArray(RV)&&ve(RV,lV)}}}function Te(lV,J){var VV;(VV=fe==null?void 0:fe.get(J))==null||VV.delete(lV)}function Ae(lV,J){return lV=be(lV,J[0],J[1]),Z(lV,16384),lV}function be(lV,J,VV){if(lV==null&&(lV=de),de=void 0,lV==null){var RV=96;VV?(lV=[VV],RV|=512):lV=[],J&&(RV=-33521665&RV|(1023&J)<<15)}else{if(!Array.isArray(lV))throw Error("narr");if(2048&(RV=tt(lV)))throw Error("farr");if(64&RV)return lV;if(RV|=64,VV&&(RV|=512,VV!==lV[0]))throw Error("mid");V:{const UV=(VV=lV).length;if(UV){const ZV=UV-1;if(ut(VV[ZV])){if((J=ZV-(+!!(512&(RV|=256))-1))>=1024)throw Error("pvtlmt");RV=-33521665&RV|(1023&J)<<15;break V}}if(J){if((J=Math.max(J,UV-(+!!(512&RV)-1)))>1024)throw Error("spvt");RV=-33521665&RV|(1023&J)<<15}}}return nt(lV,RV),lV}const ke={};let Se=function(){try{return v(new class extends Map{constructor(){super()}}),!1}catch{return!0}}();class xe{constructor(){this.g=new Map}get(J){return this.g.get(J)}set(J,VV){return this.g.set(J,VV),this.size=this.g.size,this}delete(J){return J=this.g.delete(J),this.size=this.g.size,J}clear(){this.g.clear(),this.size=this.g.size}has(J){return this.g.has(J)}entries(){return this.g.entries()}keys(){return this.g.keys()}values(){return this.g.values()}forEach(J,VV){return this.g.forEach(J,VV)}[Symbol.iterator](){return this.entries()}}const Le=Se?(Object.setPrototypeOf(xe.prototype,Map.prototype),Object.defineProperties(xe.prototype,{size:{value:0,configurable:!0,enumerable:!0,writable:!0}}),xe):class extends Map{constructor(){super()}};function Re(lV){return lV}function Fe(lV){if(2&lV.M)throw Error("Cannot mutate an immutable Map")}var Me=class extends Le{constructor(lV,J,VV=Re,RV=Re){super();let UV=tt(lV);UV|=64,nt(lV,UV),this.M=UV,this.U=J,this.T=VV,this.aa=this.U?Ie:RV;for(let ZV=0;ZV<lV.length;ZV++){const WV=lV[ZV],IV=VV(WV[0],!1,!0);let dV=WV[1];J?dV===void 0&&(dV=null):dV=RV(WV[1],!1,!0,void 0,void 0,UV),super.set(IV,dV)}}pa(lV=Pe){if(this.size!==0)return this.Z(lV)}Z(lV=Pe){const J=[],VV=super.entries();for(var RV;!(RV=VV.next()).done;)(RV=RV.value)[0]=lV(RV[0]),RV[1]=lV(RV[1]),J.push(RV);return J}clear(){Fe(this),super.clear()}delete(lV){return Fe(this),super.delete(this.T(lV,!0,!1))}entries(){var lV=this.oa();return new gt(lV,Oe,this)}keys(){return this.Ka()}values(){var lV=this.oa();return new gt(lV,Me.prototype.get,this)}forEach(lV,J){super.forEach((VV,RV)=>{lV.call(J,this.get(RV),RV,this)})}set(lV,J){return Fe(this),(lV=this.T(lV,!0,!1))==null?this:J==null?(super.delete(lV),this):super.set(lV,this.aa(J,!0,!0,this.U,!1,this.M))}Qa(lV){const J=this.T(lV[0],!1,!0);lV=lV[1],lV=this.U?lV===void 0?null:lV:this.aa(lV,!1,!0,void 0,!1,this.M),super.set(J,lV)}has(lV){return super.has(this.T(lV,!1,!1))}get(lV){lV=this.T(lV,!1,!1);const J=super.get(lV);if(J!==void 0){var VV=this.U;return VV?((VV=this.aa(J,!1,!0,VV,this.va,this.M))!==J&&super.set(lV,VV),VV):J}}oa(){return Array.from(super.keys())}Ka(){return super.keys()}[Symbol.iterator](){return this.entries()}};function Ie(lV,J,VV,RV,UV,ZV){return lV=ie(lV,RV,VV,ZV),UV&&(lV=He(lV)),lV}function Pe(lV){return lV}function Oe(lV){return[lV,this.get(lV)]}let Ce;function Ne(){return Ce||(Ce=new Me(rt([]),void 0,void 0,void 0,ke))}function Ue(lV,J,VV,RV,UV){if(lV!=null){if(Array.isArray(lV))lV=ft(lV)?void 0:UV&&2&tt(lV)?lV:De(lV,J,VV,RV!==void 0,UV);else if(ut(lV)){const ZV={};for(let WV in lV)ZV[WV]=Ue(lV[WV],J,VV,RV,UV);lV=ZV}else lV=J(lV,RV);return lV}}function De(lV,J,VV,RV,UV){const ZV=RV||VV?tt(lV):0;RV=RV?!!(32&ZV):void 0;const WV=H(lV);for(let IV=0;IV<WV.length;IV++)WV[IV]=Ue(WV[IV],J,VV,RV,UV);return VV&&(yt(WV,lV),VV(ZV,WV)),WV}function Be(lV){return Ue(lV,Ge,void 0,void 0,!1)}function Ge(lV){return lV.Y===at?lV.toJSON():lV instanceof Me?lV.pa(Be):function(J){switch(typeof J){case"number":return isFinite(J)?J:String(J);case"bigint":return kt(J)?Number(J):String(J);case"boolean":return J?1:0;case"object":if(J)if(Array.isArray(J)){if(ft(J))return}else{if(I(J))return x(J);if(J instanceof D){const VV=J.ba;return VV==null?"":typeof VV=="string"?VV:J.ba=x(VV)}if(J instanceof Me)return J.pa()}}return J}(lV)}function je(lV,J,VV=st){if(lV!=null){if(k&&lV instanceof Uint8Array)return J?lV:new Uint8Array(lV);if(Array.isArray(lV)){var RV=tt(lV);return 2&RV?lV:(J&&(J=RV===0||!!(32&RV)&&!(64&RV||!(16&RV))),J?(nt(lV,-12293&(34|RV)),lV):De(lV,je,4&RV?st:VV,!0,!0))}return lV.Y===at?(VV=lV.u,lV=2&(RV=et(VV))?lV:Ve(lV,VV,RV,!0)):lV instanceof Me&&!(2&lV.M)&&(VV=rt(lV.Z(je)),lV=new Me(VV,lV.U,lV.T,lV.aa)),lV}}function Ve(lV,J,VV,RV){return we(lV),lV=lV.constructor,de=J=Xe(J,VV,RV),J=new lV(J),de=void 0,J}function Xe(lV,J,VV){const RV=VV||2&J?st:it,UV=!!(32&J);return lV=function(ZV,WV,IV){const dV=H(ZV);var CV=dV.length;const FV=256&WV?dV[CV-1]:void 0;for(CV+=FV?-1:0,WV=512&WV?1:0;WV<CV;WV++)dV[WV]=IV(dV[WV]);if(FV){WV=dV[WV]={};for(const NV in FV)WV[NV]=IV(FV[NV])}return yt(dV,ZV),dV}(lV,J,ZV=>je(ZV,UV,RV)),Z(lV,32|(VV?2:0)),lV}function He(lV){const J=lV.u,VV=et(J);return 2&VV?Ve(lV,J,VV,!1):lV}function We(lV,J,VV,RV){return!(4&J)||VV!=null}function ze(lV,J){return Ye(lV=lV.u,et(lV),J)}function Ke(lV,J,VV,RV){if(!((J=RV+(+!!(512&J)-1))<0||J>=lV.length||J>=VV))return lV[J]}function Ye(lV,J,VV,RV){if(VV===-1)return null;const UV=J>>15&1023||536870912;if(!(VV>=UV)){var ZV=lV.length;return RV&&256&J&&(RV=lV[ZV-1][VV])!=null?(Ke(lV,J,UV,VV)&&$!=null&&((J=(lV=G??(G={}))[$]||0)>=4||(lV[$]=J+1,j())),RV):Ke(lV,J,UV,VV)}return 256&J?lV[lV.length-1][VV]:void 0}function $e(lV,J,VV){const RV=lV.u;let UV=et(RV);return pt(UV),qe(RV,UV,J,VV),lV}function qe(lV,J,VV,RV){const UV=J>>15&1023||536870912;if(VV>=UV){let ZV,WV=J;if(256&J)ZV=lV[lV.length-1];else{if(RV==null)return WV;ZV=lV[UV+(+!!(512&J)-1)]={},WV|=256}return ZV[VV]=RV,VV<UV&&(lV[VV+(+!!(512&J)-1)]=void 0),WV!==J&&nt(lV,WV),WV}return lV[VV+(+!!(512&J)-1)]=RV,256&J&&VV in(lV=lV[lV.length-1])&&delete lV[VV],J}function Je(lV,J,VV,RV,UV){var ZV=2&J;UV=Ye(lV,J,VV,UV),Array.isArray(UV)||(UV=ot);const WV=!(2&RV);RV=!(1&RV);const IV=!!(32&J);let dV=tt(UV);return dV!==0||!IV||ZV||WV?1&dV||(dV|=1,nt(UV,dV)):(dV|=33,nt(UV,dV)),ZV?(lV=!1,2&dV||(rt(UV),lV=!!(4&dV)),(RV||lV)&&Object.freeze(UV)):(ZV=!!(2&dV)||!!(2048&dV),RV&&ZV?(UV=H(UV),ZV=1,IV&&!WV&&(ZV|=32),nt(UV,ZV),qe(lV,J,VV,UV)):WV&&32&dV&&!ZV&&Q(UV,32)),UV}function Ze(lV,J){lV=lV.u;let VV=et(lV);const RV=Ye(lV,VV,J),UV=Ht(RV);return UV!=null&&UV!==RV&&qe(lV,VV,J,UV),UV}function Qe(lV){lV=lV.u;let J=et(lV);const VV=Ye(lV,J,1),RV=lt(VV,!0,!!(34&J));return RV!=null&&RV!==VV&&qe(lV,J,1,RV),RV}function tn(){return _t===void 0?2:5}function en(lV,J,VV,RV,UV,ZV){const WV=lV.u;let IV=et(WV);RV=2&IV?1:RV,ZV=!!ZV,UV=nn(WV,IV,J,UV);var dV=tt(UV),CV=UV;if(ve(CV,lV),RV!==2&&RV!==1||Te(CV,lV),We(lV,dV,void 0)){4&dV&&(UV=H(UV),dV=vn(dV,IV),IV=qe(WV,IV,J,UV));let NV=CV=0;for(;CV<UV.length;CV++){const gV=VV(UV[CV]);gV!=null&&(UV[NV++]=gV)}NV<CV&&(UV.length=NV),dV=-4097&(20|(dV=rn(dV,IV))),nt(UV,dV&=-8193),2&dV&&Object.freeze(UV)}let FV;return RV===1||RV===4&&32&dV?sn(dV)||(lV=dV,(dV|=2)!==lV&&nt(UV,dV),Object.freeze(UV)):(VV=RV===5&&(!!(32&dV)||sn(dV)||!!(ae!=null&&ae.get(UV))),(RV===2||VV)&&sn(dV)&&(UV=H(UV),dV=En(dV=vn(dV,IV),IV,ZV),nt(UV,dV),IV=qe(WV,IV,J,UV)),sn(dV)||(J=dV,(dV=En(dV,IV,ZV))!==J&&nt(UV,dV)),VV?(FV=oe(UV),_e(UV,lV,!0)):RV!==2||ZV||(ae==null||ae.delete(UV))),FV||UV}function nn(lV,J,VV,RV){return lV=Ye(lV,J,VV,RV),Array.isArray(lV)?lV:ot}function rn(lV,J){return lV===0&&(lV=vn(lV,J)),1|lV}function sn(lV){return!!(2&lV)&&!!(4&lV)||!!(2048&lV)}function on(lV){lV=H(lV);for(let J=0;J<lV.length;J++){const VV=lV[J]=H(lV[J]);Array.isArray(VV[1])&&(VV[1]=rt(VV[1]))}return lV}function an(lV,J,VV,RV){lV=lV.u;let UV=et(lV);pt(UV),qe(lV,UV,J,(RV==="0"?Number(VV)===0:VV===RV)?void 0:VV)}function hn(lV,J){var VV=_s;return ln(cn(lV=lV.u),lV,et(lV),VV)===J?J:-1}function cn(lV){if(W)return lV[q]??(lV[q]=new Map);if(q in lV)return lV[q];const J=new Map;return Object.defineProperty(lV,q,{value:J}),J}function un(lV,J,VV,RV){const UV=cn(lV),ZV=ln(UV,lV,J,VV);return ZV!==RV&&(ZV&&(J=qe(lV,J,ZV)),UV.set(VV,RV)),J}function ln(lV,J,VV,RV){let UV=lV.get(RV);if(UV!=null)return UV;UV=0;for(let ZV=0;ZV<RV.length;ZV++){const WV=RV[ZV];Ye(J,VV,WV)!=null&&(UV!==0&&(VV=qe(J,VV,UV)),UV=WV)}return lV.set(RV,UV),UV}function fn(lV,J,VV,RV){let UV,ZV=et(lV);if((RV=Ye(lV,ZV,VV,RV))!=null&&RV.Y===at)return(J=He(RV))!==RV&&qe(lV,ZV,VV,J),J.u;if(Array.isArray(RV)){const WV=tt(RV);UV=2&WV?Xe(RV,WV,!1):RV,UV=Ae(UV,J)}else UV=Ae(void 0,J);return UV!==RV&&qe(lV,ZV,VV,UV),UV}function dn(lV,J,VV,RV){lV=lV.u;let UV=et(lV);return(J=ie(RV=Ye(lV,UV,VV,RV),J,!1,UV))!==RV&&J!=null&&qe(lV,UV,VV,J),J}function pn(lV,J,VV,RV=!1){if((J=dn(lV,J,VV,RV))==null)return J;if(lV=lV.u,!(2&(RV=et(lV)))){const UV=He(J);UV!==J&&qe(lV,RV,VV,J=UV)}return J}function gn(lV,J,VV,RV,UV,ZV,WV){const IV=lV.u;var dV=!!(2&J);UV=dV?1:UV,ZV=!!ZV,WV&&(WV=!dV),dV=nn(IV,J,RV);var CV=tt(dV),FV=dV;if(ve(FV,lV),UV!==2&&UV!==1||Te(FV,lV),!(FV=!!(4&CV))){var NV=dV,gV=J;const JV=!!(2&(CV=rn(CV,J)));JV&&(gV|=2);let nV=!JV,aV=!0,GV=0,cV=0;for(;GV<NV.length;GV++){const TV=ie(NV[GV],VV,!1,gV);if(TV instanceof VV){if(!JV){const iV=!!(2&tt(TV.u));nV&&(nV=!iV),aV&&(aV=iV)}NV[cV++]=TV}}cV<GV&&(NV.length=cV),CV|=4,CV=aV?16|CV:-17&CV,nt(NV,CV=nV?8|CV:-9&CV),JV&&Object.freeze(NV)}if(WV&&!(8&CV||!dV.length&&(UV===1||UV===4&&32&CV))){for(sn(CV)?(dV=H(dV),CV=vn(CV,J),J=qe(IV,J,RV,dV)):Te(dV,lV),VV=dV,WV=CV,NV=0;NV<VV.length;NV++)(CV=VV[NV])!==(gV=He(CV))&&(VV[NV]=gV);WV|=8,WV=VV.length?-17&WV:16|WV,nt(VV,WV),CV=WV}let eV;return UV===1||UV===4&&32&CV?sn(CV)||(lV=CV,(CV|=!dV.length||16&CV&&(!FV||32&CV)?2:2048)!==lV&&nt(dV,CV),Object.freeze(dV)):(FV=UV===5&&(!!(32&CV)||sn(CV)||!!(ae!=null&&ae.get(dV))),(UV===2||FV)&&sn(CV)&&(dV=H(dV),CV=En(CV=vn(CV,J),J,ZV),nt(dV,CV),J=qe(IV,J,RV,dV)),sn(CV)||(RV=CV,(CV=En(CV,J,ZV))!==RV&&nt(dV,CV)),FV?(eV=oe(dV),_e(dV,lV,!0)):UV!==2||ZV||(ae==null||ae.delete(dV))),eV||dV}function mn(lV,J,VV){const RV=et(lV.u);return gn(lV,RV,J,VV,tn(),!1,!(2&RV))}function yn(lV,J,VV,RV){return RV==null&&(RV=void 0),$e(lV,VV,RV)}function _n(lV,J,VV,RV){RV==null&&(RV=void 0);V:{lV=lV.u;let UV=et(lV);if(pt(UV),RV==null){const ZV=cn(lV);if(ln(ZV,lV,UV,VV)!==J)break V;ZV.set(VV,0)}else UV=un(lV,UV,VV,J);qe(lV,UV,J,RV)}}function vn(lV,J){return-2049&(lV=32|(2&J?2|lV:-3&lV))}function En(lV,J,VV){return 32&J&&VV||(lV&=-33),lV}function wn(lV,J,VV,RV){const UV=et(lV.u);pt(UV),lV=gn(lV,UV,VV,J,2,!0),VV=RV??new VV,lV.push(VV),2&tt(VV.u)?Q(lV,8):Q(lV,16)}function Tn(lV,J){return lV??J}function An(lV,J){return Yt(ze(lV,J))}function bn(lV,J){return Tn(Ze(lV,J),0)}function kn(lV,J){return Tn(re(ze(lV,J)),"")}function Sn(lV,J,VV){if(VV!=null&&typeof VV!="boolean")throw lV=typeof VV,Error(`Expected boolean but got ${lV!="object"?lV:VV?Array.isArray(VV)?"array":lV:"null"}: ${VV}`);$e(lV,J,VV)}function xn(lV,J,VV){if(VV!=null){if(typeof VV!="number"||!Number.isFinite(VV))throw V("int32");VV|=0}$e(lV,J,VV)}function Ln(lV,J,VV){if(VV!=null&&typeof VV!="number")throw Error(`Value of float/double field must be a number, found ${typeof VV}: ${VV}`);$e(lV,J,VV)}function Rn(lV,J,VV){{const IV=lV.u;let dV=et(IV);if(pt(dV),VV==null)qe(IV,dV,J);else{VV=(he==null?void 0:he.get(VV))||VV;var RV,UV=tt(VV),ZV=UV,WV=!!(2&UV)||Object.isFrozen(VV);if((RV=!WV)&&(RV=vt===void 0||!1),We(lV,UV)){UV=21,WV&&(VV=H(VV),ZV=0,UV=En(UV=vn(UV,dV),dV,!0));for(let CV=0;CV<VV.length;CV++)VV[CV]=ee(VV[CV])}RV?(VV=H(VV),ZV=0,UV=En(UV=vn(UV,dV),dV,!0)):WV||_e(VV,lV),UV!==ZV&&nt(VV,UV),qe(IV,dV,J,VV)}}}function Fn(lV,J,VV){pt(et(lV.u)),en(lV,J,re,2,void 0,!0).push(ee(VV))}function Mn(lV,J){return Error(`Invalid wire type: ${lV} (at position ${J})`)}function In(){return Error("Failed to read varint, encoding is invalid.")}function Pn(lV,J){return Error(`Tried to read past the end of the data ${J} > ${lV}`)}function On(lV){if(typeof lV=="string")return{buffer:M(lV),O:!1};if(Array.isArray(lV))return{buffer:new Uint8Array(lV),O:!1};if(lV.constructor===Uint8Array)return{buffer:lV,O:!1};if(lV.constructor===ArrayBuffer)return{buffer:new Uint8Array(lV),O:!1};if(lV.constructor===D)return{buffer:U(lV)||new Uint8Array(0),O:!0};if(lV instanceof Uint8Array)return{buffer:new Uint8Array(lV.buffer,lV.byteOffset,lV.byteLength),O:!1};throw Error("Type not convertible to a Uint8Array, expected a Uint8Array, an ArrayBuffer, a base64 encoded string, a ByteString or an Array of numbers")}function Cn(lV,J){let VV,RV=0,UV=0,ZV=0;const WV=lV.h;let IV=lV.g;do VV=WV[IV++],RV|=(127&VV)<<ZV,ZV+=7;while(ZV<32&&128&VV);for(ZV>32&&(UV|=(127&VV)>>4),ZV=3;ZV<32&&128&VV;ZV+=7)VV=WV[IV++],UV|=(127&VV)<<ZV;if(Xn(lV,IV),VV<128)return J(RV>>>0,UV>>>0);throw In()}function Nn(lV){let J=0,VV=lV.g;const RV=VV+10,UV=lV.h;for(;VV<RV;){const ZV=UV[VV++];if(J|=ZV,(128&ZV)==0)return Xn(lV,VV),!!(127&J)}throw In()}function Un(lV){const J=lV.h;let VV=lV.g,RV=J[VV++],UV=127&RV;if(128&RV&&(RV=J[VV++],UV|=(127&RV)<<7,128&RV&&(RV=J[VV++],UV|=(127&RV)<<14,128&RV&&(RV=J[VV++],UV|=(127&RV)<<21,128&RV&&(RV=J[VV++],UV|=RV<<28,128&RV&&128&J[VV++]&&128&J[VV++]&&128&J[VV++]&&128&J[VV++]&&128&J[VV++])))))throw In();return Xn(lV,VV),UV}function Dn(lV){return Un(lV)>>>0}function Bn(lV){var J=lV.h;const VV=lV.g,RV=J[VV],UV=J[VV+1],ZV=J[VV+2];return J=J[VV+3],Xn(lV,lV.g+4),(RV<<0|UV<<8|ZV<<16|J<<24)>>>0}function Gn(lV){var J=Bn(lV);lV=2*(J>>31)+1;const VV=J>>>23&255;return J&=8388607,VV==255?J?NaN:lV*(1/0):VV==0?1401298464324817e-60*lV*J:lV*Math.pow(2,VV-150)*(J+8388608)}function jn(lV){return Un(lV)}function Vn(lV,J,{ea:VV=!1}={}){lV.ea=VV,J&&(J=On(J),lV.h=J.buffer,lV.m=J.O,lV.j=0,lV.l=lV.h.length,lV.g=lV.j)}function Xn(lV,J){if(lV.g=J,J>lV.l)throw Pn(lV.l,J)}function Hn(lV,J){if(J<0)throw Error(`Tried to read a negative byte length: ${J}`);const VV=lV.g,RV=VV+J;if(RV>lV.l)throw Pn(J,lV.l-VV);return lV.g=RV,VV}function Wn(lV,J){if(J==0)return N();var VV=Hn(lV,J);return lV.ea&&lV.m?VV=lV.h.subarray(VV,VV+J):(lV=lV.h,VV=VV===(J=VV+J)?new Uint8Array(0):Mt?lV.slice(VV,J):new Uint8Array(lV.subarray(VV,J))),VV.length==0?N():new D(VV,P)}Me.prototype.toJSON=void 0,Me.prototype.La=ht;var zn=[];function Kn(lV){var J=lV.g;if(J.g==J.l)return!1;lV.l=lV.g.g;var VV=Dn(lV.g);if(J=VV>>>3,!((VV&=7)>=0&&VV<=5))throw Mn(VV,lV.l);if(J<1)throw Error(`Invalid field number: ${J} (at position ${lV.l})`);return lV.m=J,lV.h=VV,!0}function Yn(lV){switch(lV.h){case 0:lV.h!=0?Yn(lV):Nn(lV.g);break;case 1:Xn(lV=lV.g,lV.g+8);break;case 2:if(lV.h!=2)Yn(lV);else{var J=Dn(lV.g);Xn(lV=lV.g,lV.g+J)}break;case 5:Xn(lV=lV.g,lV.g+4);break;case 3:for(J=lV.m;;){if(!Kn(lV))throw Error("Unmatched start-group tag: stream EOF");if(lV.h==4){if(lV.m!=J)throw Error("Unmatched end-group tag");break}Yn(lV)}break;default:throw Mn(lV.h,lV.l)}}function $n(lV,J,VV){const RV=lV.g.l,UV=Dn(lV.g),ZV=lV.g.g+UV;let WV=ZV-RV;if(WV<=0&&(lV.g.l=ZV,VV(J,lV,void 0,void 0,void 0),WV=ZV-lV.g.g),WV)throw Error(`Message parsing ended unexpectedly. Expected to read ${UV} bytes, instead read ${UV-WV} bytes, either the data ended unexpectedly or the message misreported its own length`);return lV.g.g=ZV,lV.g.l=RV,J}function qn(lV){var J=Dn(lV.g),VV=Hn(lV=lV.g,J);if(lV=lV.h,o){var RV,UV=lV;(RV=s)||(RV=s=new TextDecoder("utf-8",{fatal:!0})),J=VV+J,UV=VV===0&&J===UV.length?UV:UV.subarray(VV,J);try{var ZV=RV.decode(UV)}catch(IV){if(i$1===void 0){try{RV.decode(new Uint8Array([128]))}catch{}try{RV.decode(new Uint8Array([97])),i$1=!0}catch{i$1=!1}}throw!i$1&&(s=void 0),IV}}else{J=(ZV=VV)+J,VV=[];let IV,dV=null;for(;ZV<J;){var WV=lV[ZV++];WV<128?VV.push(WV):WV<224?ZV>=J?n():(IV=lV[ZV++],WV<194||(192&IV)!=128?(ZV--,n()):VV.push((31&WV)<<6|63&IV)):WV<240?ZV>=J-1?n():(IV=lV[ZV++],(192&IV)!=128||WV===224&&IV<160||WV===237&&IV>=160||(192&(RV=lV[ZV++]))!=128?(ZV--,n()):VV.push((15&WV)<<12|(63&IV)<<6|63&RV)):WV<=244?ZV>=J-2?n():(IV=lV[ZV++],(192&IV)!=128||IV-144+(WV<<28)>>30||(192&(RV=lV[ZV++]))!=128||(192&(UV=lV[ZV++]))!=128?(ZV--,n()):(WV=(7&WV)<<18|(63&IV)<<12|(63&RV)<<6|63&UV,WV-=65536,VV.push(55296+(WV>>10&1023),56320+(1023&WV)))):n(),VV.length>=8192&&(dV=r(dV,VV),VV.length=0)}ZV=r(dV,VV)}return ZV}function Jn(lV){const J=Dn(lV.g);return Wn(lV.g,J)}function Zn(lV,J,VV){var RV=Dn(lV.g);for(RV=lV.g.g+RV;lV.g.g<RV;)VV.push(J(lV.g))}var Qn=[];let tr;function er(lV,J,VV){J.g?J.m(lV,J.g,J.h,VV,!0):J.m(lV,J.h,VV,!0)}var nr=class{constructor(lV,J){this.u=be(lV,J)}toJSON(){return rr(this)}l(){var lV=vo;return lV.g?lV.l(this,lV.g,lV.h,!0):lV.l(this,lV.h,lV.defaultValue,!0)}clone(){const lV=this.u;return Ve(this,lV,et(lV),!1)}O(){return!!(2&tt(this.u))}};function rr(lV){we(lV),lV=tr?lV.u:De(lV.u,Ge,void 0,void 0,!1);{var J=!tr;let CV=lV.length;if(CV){var VV=lV[CV-1],RV=ut(VV);RV?CV--:VV=void 0;var UV=lV;if(RV){V:{var ZV,WV=VV,IV=!1;if(WV)for(let FV in WV)isNaN(+FV)?(ZV??(ZV={}))[FV]=WV[FV]:(RV=WV[FV],Array.isArray(RV)&&(ft(RV)||ct(RV)&&RV.size===0)&&(RV=null),RV==null&&(IV=!0),RV!=null&&((ZV??(ZV={}))[FV]=RV));if(IV||(ZV=WV),ZV)for(let FV in ZV){IV=ZV;break V}IV=null}WV=IV==null?VV!=null:IV!==VV}for(;CV>0&&((ZV=UV[CV-1])==null||ft(ZV)||ct(ZV)&&ZV.size===0);CV--)var dV=!0;(UV!==lV||WV||dV)&&(J?(dV||WV||IV)&&(UV.length=CV):UV=Array.prototype.slice.call(UV,0,CV),IV&&UV.push(IV)),dV=UV}else dV=lV}return dV}function ir(lV){return lV?/^\d+$/.test(lV)?(Vt(lV),new sr(Pt,Ot)):null:or||(or=new sr(0,0))}nr.prototype.Y=at,nr.prototype.toString=function(){try{return tr=!0,rr(this).toString()}finally{tr=!1}};var sr=class{constructor(lV,J){this.h=lV>>>0,this.g=J>>>0}};let or;function ar(lV){return lV?/^-?\d+$/.test(lV)?(Vt(lV),new hr(Pt,Ot)):null:cr||(cr=new hr(0,0))}var hr=class{constructor(lV,J){this.h=lV>>>0,this.g=J>>>0}};let cr;function ur(lV,J,VV){for(;VV>0||J>127;)lV.g.push(127&J|128),J=(J>>>7|VV<<25)>>>0,VV>>>=7;lV.g.push(J)}function lr(lV,J){for(;J>127;)lV.g.push(127&J|128),J>>>=7;lV.g.push(J)}function fr(lV,J){if(J>=0)lr(lV,J);else{for(let VV=0;VV<9;VV++)lV.g.push(127&J|128),J>>=7;lV.g.push(1)}}function dr(lV,J){lV.g.push(J>>>0&255),lV.g.push(J>>>8&255),lV.g.push(J>>>16&255),lV.g.push(J>>>24&255)}function pr(lV,J){J.length!==0&&(lV.l.push(J),lV.h+=J.length)}function gr(lV,J,VV){lr(lV.g,8*J+VV)}function mr(lV,J){return gr(lV,J,2),J=lV.g.end(),pr(lV,J),J.push(lV.h),J}function yr(lV,J){var VV=J.pop();for(VV=lV.h+lV.g.length()-VV;VV>127;)J.push(127&VV|128),VV>>>=7,lV.h++;J.push(VV),lV.h++}function _r(lV,J,VV){gr(lV,J,2),lr(lV.g,VV.length),pr(lV,lV.g.end()),pr(lV,VV)}function vr(lV,J,VV,RV){VV!=null&&(J=mr(lV,J),RV(VV,lV),yr(lV,J))}class Er{constructor(J,VV,RV){this.g=J,this.h=VV,this.qa=RV}}function wr(lV){return Array.isArray(lV)?lV[0]instanceof Er?lV:[gi,lV]:[lV,void 0]}function Tr(lV,J){if(Array.isArray(J)){var VV=tt(J);if(4&VV)return J;for(var RV=0,UV=0;RV<J.length;RV++){const ZV=lV(J[RV]);ZV!=null&&(J[UV++]=ZV)}return UV<RV&&(J.length=UV),nt(J,-12289&(5|VV)),2&VV&&Object.freeze(J),J}}const Ar=Symbol();function br(lV){let J=lV[Ar];if(!J){const VV=Ur(lV),RV=VV.h;J=RV?(UV,ZV)=>RV(UV,ZV,VV):(UV,ZV)=>{var CV;for(;Kn(ZV)&&ZV.h!=4;){var WV=ZV.m;let FV=VV[WV];const NV=!FV;let gV=!1;if(!FV){var IV=VV.X;if(IV){var dV=IV[WV];dV&&(gV=(CV=IV.P)==null?void 0:CV[WV],(!d||gV)&&(IV=kr(dV))&&(FV=VV[WV]=IV))}}FV&&FV(ZV,UV,WV)||(WV=(IV=ZV).l,Yn(IV),IV.ja?IV=void 0:(dV=IV.g.g-WV,IV.g.g=WV,IV=Wn(IV.g,dV)),WV=UV,IV&&(mt||(mt=Symbol()),(dV=WV[mt])?dV.push(IV):WV[mt]=[IV])),NV&&FV&&!gV&&Wr++<5&&j()}},lV[Ar]=J}return J}function kr(lV){const J=(lV=wr(lV))[0].g;if(lV=lV[1]){const VV=br(lV),RV=Ur(lV).g;return(UV,ZV,WV)=>J(UV,ZV,WV,RV,VV)}return J}function Sr(lV,J,VV){lV[J]=VV}function xr(lV,J,VV,RV){var UV=Sr;J.g=function(NV){switch(typeof NV){case"boolean":return pe||(pe=[0,void 0,!0]);case"number":return NV>0?void 0:NV===0?ge||(ge=[0,void 0]):[-NV,void 0];case"string":return[0,NV];case"object":return NV}}(lV[0]);let ZV=0;var WV=lV[++ZV];WV&&WV.constructor===Object&&(J.X=WV,typeof(WV=lV[++ZV])=="function"&&(J.h=WV,J.l=lV[++ZV],WV=lV[++ZV]));const IV={};for(;Array.isArray(WV)&&typeof WV[0]=="number"&&WV[0]>0;){for(var dV=0;dV<WV.length;dV++)IV[WV[dV]]=WV;WV=lV[++ZV]}for(dV=1;WV!==void 0;){let NV;typeof WV=="number"&&(dV+=WV,WV=lV[++ZV]);var CV=void 0;if(WV instanceof Er?NV=WV:(NV=mi,ZV--),NV.qa){WV=lV[++ZV],CV=lV;var FV=ZV;typeof WV=="function"&&(WV=WV(),CV[FV]=WV),CV=WV}for(FV=dV+1,typeof(WV=lV[++ZV])=="number"&&WV<0&&(FV-=WV,WV=lV[++ZV]);dV<FV;dV++){const gV=IV[dV];UV(J,dV,CV?RV(NV,CV,gV):VV(NV,gV))}}return J}const Lr=Symbol();function Rr(lV){let J=lV[Lr];if(!J){const VV=Pr(lV);J=(RV,UV)=>Br(RV,UV,VV),lV[Lr]=J}return J}const Fr=Symbol();function Mr(lV){return lV.h}function Ir(lV,J){let VV,RV;const UV=lV.h;return(ZV,WV,IV)=>UV(ZV,WV,IV,RV||(RV=Pr(J).g),VV||(VV=Rr(J)))}function Pr(lV){let J=lV[Fr];return J||(J=xr(lV,lV[Fr]={},Mr,Ir))}const Or=Symbol();function Cr(lV,J){const VV=lV.g;return J?(RV,UV,ZV)=>VV(RV,UV,ZV,J):VV}function Nr(lV,J,VV){const RV=lV.g;let UV,ZV;return(WV,IV,dV)=>RV(WV,IV,dV,ZV||(ZV=Ur(J).g),UV||(UV=br(J)),VV)}function Ur(lV){let J=lV[Or];return J||(J=xr(lV,lV[Or]={},Cr,Nr))}function Dr(lV,J){var ZV;var VV=lV[J];if(VV)return VV;if(VV=lV.X){var RV=VV[J];if(RV){var UV=(RV=wr(RV))[0].h;if(RV=RV[1],VV=(ZV=VV.P)==null?void 0:ZV[J],!d||VV){if(RV){const WV=Rr(RV),IV=Pr(RV).g;VV=(VV=lV.l)?VV(IV,WV):(dV,CV,FV)=>UV(dV,CV,FV,IV,WV)}else VV=UV;return lV[J]=VV}}}}function Br(lV,J,VV){var dV,CV,FV;for(var RV=et(lV),UV=+!!(512&RV)-1,ZV=lV.length,WV=512&RV?1:0,IV=ZV+(256&RV?-1:0);WV<IV;WV++){const NV=lV[WV];if(NV==null)continue;const gV=WV-UV,eV=Dr(VV,gV);if(!eV)continue;const JV=VV.X;JV!=null&&JV[gV]&&!((dV=JV==null?void 0:JV.P)!=null&&dV[gV])&&Wr++<5&&j(),eV(J,NV,gV)}if(256&RV){RV=lV[ZV-1];for(let NV in RV)UV=+NV,!Number.isNaN(UV)&&(ZV=RV[NV])!=null&&(IV=Dr(VV,UV))&&((CV=WV=VV.X)!=null&&CV[UV]&&!((FV=WV==null?void 0:WV.P)!=null&&FV[UV])&&Wr++<5&&j(),IV(J,ZV,UV))}if(lV=mt?lV[mt]:void 0)for(pr(J,J.g.end()),VV=0;VV<lV.length;VV++)pr(J,U(lV[VV])||new Uint8Array(0))}function Gr(lV,J){return new Er(lV,J,!1)}function jr(lV,J){return new Er(lV,J,!1)}function Vr(lV,J){return new Er(lV,J,!0)}function Xr(lV,J,VV){qe(lV,et(lV),J,VV)}var Hr=Vr(function(lV,J,VV,RV,UV){return lV.h===2&&(lV=$n(lV,Ae([void 0,void 0],RV),UV),pt(RV=et(J)),(UV=Ye(J,RV,VV))instanceof Me?2&UV.M?((UV=UV.Z()).push(lV),qe(J,RV,VV,UV)):UV.Qa(lV):Array.isArray(UV)?(2&tt(UV)&&qe(J,RV,VV,UV=on(UV)),UV.push(lV)):qe(J,RV,VV,[lV]),!0)},function(lV,J,VV,RV,UV){if(J instanceof Me)J.forEach((ZV,WV)=>{vr(lV,VV,Ae([WV,ZV],RV),UV)});else if(Array.isArray(J))for(let ZV=0;ZV<J.length;ZV++){const WV=J[ZV];Array.isArray(WV)&&vr(lV,VV,Ae(WV,RV),UV)}});let Wr=0;function zr(lV,J,VV){if(J=function(RV){if(RV==null)return RV;const UV=typeof RV;if(UV==="bigint")return String(BigInt.asIntN(64,RV));if(Kt(RV)){if(UV==="string")return Zt(RV);if(UV==="number")return Jt(RV)}}(J),J!=null&&(typeof J=="string"&&ar(J),J!=null))switch(gr(lV,VV,0),typeof J){case"number":lV=lV.g,Nt(J),ur(lV,Pt,Ot);break;case"bigint":VV=BigInt.asUintN(64,J),VV=new hr(Number(VV&BigInt(4294967295)),Number(VV>>BigInt(32))),ur(lV.g,VV.h,VV.g);break;default:VV=ar(J),ur(lV.g,VV.h,VV.g)}}function Kr(lV,J,VV){(J=Yt(J))!=null&&J!=null&&(gr(lV,VV,0),fr(lV.g,J))}function Yr(lV,J,VV){(J=Wt(J))!=null&&(gr(lV,VV,0),lV.g.g.push(J?1:0))}function $r(lV,J,VV){(J=re(J))!=null&&_r(lV,VV,c(J))}function qr(lV,J,VV,RV,UV){J instanceof nr?(we(J),J=J.u):J=Array.isArray(J)?Ae(J,RV):void 0,vr(lV,VV,J,UV)}function Jr(lV,J,VV){(J=J==null||typeof J=="string"||I(J)||J instanceof D?J:void 0)!=null&&_r(lV,VV,On(J).buffer)}function Zr(lV,J,VV){return(lV.h===5||lV.h===2)&&(J=Je(J,et(J),VV,2,!1),lV.h==2?Zn(lV,Gn,J):J.push(Gn(lV.g)),!0)}var Qr,ti=Gr(function(lV,J,VV){if(lV.h!==1)return!1;var RV=lV.g;lV=Bn(RV);const UV=Bn(RV);RV=2*(UV>>31)+1;const ZV=UV>>>20&2047;return lV=4294967296*(1048575&UV)+lV,Xr(J,VV,ZV==2047?lV?NaN:RV*(1/0):ZV==0?5e-324*RV*lV:RV*Math.pow(2,ZV-1075)*(lV+4503599627370496)),!0},function(lV,J,VV){(J=Ht(J))!=null&&(gr(lV,VV,1),lV=lV.g,(VV=It||(It=new DataView(new ArrayBuffer(8)))).setFloat64(0,+J,!0),Pt=VV.getUint32(0,!0),Ot=VV.getUint32(4,!0),dr(lV,Pt),dr(lV,Ot))}),ei=Gr(function(lV,J,VV){return lV.h===5&&(Xr(J,VV,Gn(lV.g)),!0)},function(lV,J,VV){(J=Ht(J))!=null&&(gr(lV,VV,5),lV=lV.g,Ut(J),dr(lV,Pt))}),ni=jr(Zr,function(lV,J,VV){if((J=Tr(Ht,J))!=null)for(let WV=0;WV<J.length;WV++){var RV=lV,UV=VV,ZV=J[WV];ZV!=null&&(gr(RV,UV,5),RV=RV.g,Ut(ZV),dr(RV,Pt))}}),ri=jr(Zr,function(lV,J,VV){if((J=Tr(Ht,J))!=null&&J.length){gr(lV,VV,2),lr(lV.g,4*J.length);for(let RV=0;RV<J.length;RV++)VV=lV.g,Ut(J[RV]),dr(VV,Pt)}}),ii=Gr(function(lV,J,VV){return lV.h===0&&(Xr(J,VV,Cn(lV.g,Bt)),!0)},zr),si=Gr(function(lV,J,VV){return lV.h===0&&(Xr(J,VV,(lV=Cn(lV.g,Bt))===0?void 0:lV),!0)},zr),oi=Gr(function(lV,J,VV){return lV.h===0&&(Xr(J,VV,Cn(lV.g,Dt)),!0)},function(lV,J,VV){if((J=te(J))!=null&&(typeof J=="string"&&ir(J),J!=null))switch(gr(lV,VV,0),typeof J){case"number":lV=lV.g,Nt(J),ur(lV,Pt,Ot);break;case"bigint":VV=BigInt.asUintN(64,J),VV=new sr(Number(VV&BigInt(4294967295)),Number(VV>>BigInt(32))),ur(lV.g,VV.h,VV.g);break;default:VV=ir(J),ur(lV.g,VV.h,VV.g)}}),ai=Gr(function(lV,J,VV){return lV.h===0&&(Xr(J,VV,Un(lV.g)),!0)},Kr),hi=jr(function(lV,J,VV){return(lV.h===0||lV.h===2)&&(J=Je(J,et(J),VV,2,!1),lV.h==2?Zn(lV,Un,J):J.push(Un(lV.g)),!0)},function(lV,J,VV){if((J=Tr(Yt,J))!=null&&J.length){VV=mr(lV,VV);for(let RV=0;RV<J.length;RV++)fr(lV.g,J[RV]);yr(lV,VV)}}),ci=Gr(function(lV,J,VV){return lV.h===0&&(Xr(J,VV,(lV=Un(lV.g))===0?void 0:lV),!0)},Kr),ui=Gr(function(lV,J,VV){return lV.h===0&&(Xr(J,VV,Nn(lV.g)),!0)},Yr),li=Gr(function(lV,J,VV){return lV.h===0&&(Xr(J,VV,(lV=Nn(lV.g))===!1?void 0:lV),!0)},Yr),fi=jr(function(lV,J,VV){if(lV.h!==2)return!1;lV=qn(lV);const RV=et(J);return pt(RV),Je(J,RV,VV,2).push(lV),!0},function(lV,J,VV){if((J=Tr(re,J))!=null)for(let WV=0;WV<J.length;WV++){var RV=lV,UV=VV,ZV=J[WV];ZV!=null&&_r(RV,UV,c(ZV))}}),di=Gr(function(lV,J,VV){return lV.h===2&&(Xr(J,VV,(lV=qn(lV))===""?void 0:lV),!0)},$r),pi=Gr(function(lV,J,VV){return lV.h===2&&(Xr(J,VV,qn(lV)),!0)},$r),gi=Vr(function(lV,J,VV,RV,UV){return lV.h===2&&($n(lV,fn(J,RV,VV,!0),UV),!0)},qr),mi=Vr(function(lV,J,VV,RV,UV){return lV.h===2&&($n(lV,fn(J,RV,VV),UV),!0)},qr);Qr=new Er(function(lV,J,VV,RV,UV){if(lV.h!==2)return!1;RV=Ae(void 0,RV);let ZV=et(J);pt(ZV);let WV=Je(J,ZV,VV,3);return ZV=et(J),4&tt(WV)&&(WV=H(WV),nt(WV,-2079&(1|tt(WV))),qe(J,ZV,VV,WV)),WV.push(RV),$n(lV,RV,UV),!0},function(lV,J,VV,RV,UV){if(Array.isArray(J))for(let ZV=0;ZV<J.length;ZV++)qr(lV,J[ZV],VV,RV,UV)},!0);var yi=Vr(function(lV,J,VV,RV,UV,ZV){return lV.h===2&&(un(J,et(J),ZV,VV),$n(lV,J=fn(J,RV,VV),UV),!0)},qr),_i=Gr(function(lV,J,VV){return lV.h===2&&(Xr(J,VV,Jn(lV)),!0)},Jr),vi=jr(function(lV,J,VV){return(lV.h===0||lV.h===2)&&(J=Je(J,et(J),VV,2,!1),lV.h==2?Zn(lV,Dn,J):J.push(Dn(lV.g)),!0)},function(lV,J,VV){if((J=Tr($t,J))!=null)for(let WV=0;WV<J.length;WV++){var RV=lV,UV=VV,ZV=J[WV];ZV!=null&&(gr(RV,UV,0),lr(RV.g,ZV))}}),Ei=Gr(function(lV,J,VV){return lV.h===0&&(Xr(J,VV,Un(lV.g)),!0)},function(lV,J,VV){(J=Yt(J))!=null&&(J=parseInt(J,10),gr(lV,VV,0),fr(lV.g,J))});class wi{constructor(J,VV){this.h=J,this.g=VV,this.l=pn,this.m=yn,this.defaultValue=void 0}}function Ti(lV,J){return new wi(lV,J)}function Ai(lV,J){return(VV,RV)=>{if(Qn.length){const ZV=Qn.pop();ZV.o(RV),Vn(ZV.g,VV,RV),VV=ZV}else VV=new class{constructor(ZV,WV){if(zn.length){const IV=zn.pop();Vn(IV,ZV,WV),ZV=IV}else ZV=new class{constructor(IV,dV){this.h=null,this.m=!1,this.g=this.l=this.j=0,Vn(this,IV,dV)}clear(){this.h=null,this.m=!1,this.g=this.l=this.j=0,this.ea=!1}}(ZV,WV);this.g=ZV,this.l=this.g.g,this.h=this.m=-1,this.o(WV)}o({ja:ZV=!1}={}){this.ja=ZV}}(VV,RV);try{const ZV=new lV,WV=ZV.u;br(J)(WV,VV);var UV=ZV}finally{VV.g.clear(),VV.m=-1,VV.h=-1,Qn.length<100&&Qn.push(VV)}return UV}}function bi(lV){return function(){we(this);const J=new class{constructor(){this.l=[],this.h=0,this.g=new class{constructor(){this.g=[]}length(){return this.g.length}end(){const WV=this.g;return this.g=[],WV}}}};Br(this.u,J,Pr(lV)),pr(J,J.g.end());const VV=new Uint8Array(J.h),RV=J.l,UV=RV.length;let ZV=0;for(let WV=0;WV<UV;WV++){const IV=RV[WV];VV.set(IV,ZV),ZV+=IV.length}return J.l=[VV],VV}}var ki=class extends nr{constructor(lV){super(lV)}},Si=[0,di,Gr(function(lV,J,VV){return lV.h===2&&(Xr(J,VV,(lV=Jn(lV))===N()?void 0:lV),!0)},function(lV,J,VV){if(J!=null){if(J instanceof nr){const RV=J.Ta;return void(RV&&(J=RV(J),J!=null&&_r(lV,VV,On(J).buffer)))}if(Array.isArray(J))return}Jr(lV,J,VV)})],xi=[0,ai,Ei,ui,-1,hi,Ei,-1],Li=class extends nr{constructor(){super()}},Ri=[0,ui,pi,ui,Ei,-1,jr(function(lV,J,VV){return(lV.h===0||lV.h===2)&&(J=Je(J,et(J),VV,2,!1),lV.h==2?Zn(lV,jn,J):J.push(Un(lV.g)),!0)},function(lV,J,VV){if((J=Tr(Yt,J))!=null&&J.length){VV=mr(lV,VV);for(let RV=0;RV<J.length;RV++)fr(lV.g,J[RV]);yr(lV,VV)}}),pi,-1,[0,ui,-1],Ei,ui,-1],Fi=[0,pi,-2],Mi=class extends nr{constructor(){super()}},Ii=[0],Pi=[0,ai,ui,1,ui,-3],Oi=[0,pi,ui,-1,ai,[0,[1,2,3,4,5,6,7],yi,Ii,yi,Ri,yi,Fi,yi,Pi,yi,xi,yi,[0,pi,-2],yi,[0,pi,Ei]],[0,pi],ui,[0,[1,3],[2,4],yi,[0,hi],-1,yi,[0,fi],-1,Qr,[0,pi,-1]],pi],Ci=class extends nr{constructor(lV){super(lV,2)}},Ni={},Ui=Ni.P={};Ni[336783863]=Oi,Ui[336783863]=1;var Di=[0,si,-1,li,-3,si,hi,di,ci,si,-1,li,ci,li,-2,di];function Bi(lV,J){an(lV,2,ne(J),"")}function Gi(lV,J){Fn(lV,3,J)}function ji(lV,J){Fn(lV,4,J)}var Vi=class extends nr{constructor(lV){super(lV,500)}o(lV){return yn(this,0,7,lV)}},Xi=[-1,{P:{}}],Hi=[0,pi,1,Xi],Wi=[0,pi,fi,Xi];function zi(lV,J){wn(lV,1,Vi,J)}function Ki(lV,J){Fn(lV,10,J)}function Yi(lV,J){Fn(lV,15,J)}var $i=class extends nr{constructor(lV){super(lV,500)}o(lV){return yn(this,0,1001,lV)}},qi=[-500,Qr,[-500,di,-1,fi,-3,[-2,Ni,ui],Qr,Si,ci,-1,Hi,Wi,Qr,[0,di,li],di,Di,ci,fi,987,fi],4,Qr,[-500,pi,-1,[-1,{P:{}}],998,pi],Qr,[-500,pi,fi,-1,[-2,{P:{}},ui],997,fi,-1],ci,Qr,[-500,pi,fi,Xi,998,fi],fi,ci,Hi,Wi,Qr,[0,di,-1,Xi],fi,-2,Di,di,-1,li,979,Xi,Qr,Si];$i.prototype.g=bi(qi);var Ji=Ai($i,qi),Zi=class extends nr{constructor(lV){super(lV)}},Qi=class extends nr{constructor(lV){super(lV)}g(){return mn(this,Zi,1)}},ts=[0,Qr,[0,ai,ei,pi,-1]],es=Ai(Qi,ts),ns=class extends nr{constructor(lV){super(lV)}},rs=class extends nr{constructor(lV){super(lV)}},is=class extends nr{constructor(lV){super(lV)}h(){return pn(this,ns,2)}g(){return mn(this,rs,5)}},ss=Ai(class extends nr{constructor(lV){super(lV)}},[0,fi,hi,ri,[0,Ei,[0,ai,-3],[0,ei,-3],[0,ai,-1,[0,Qr,[0,ai,-2]]],Qr,[0,ei,-1,pi,ei]],pi,-1,ii,Qr,[0,ai,ei],fi,ii]),os=class extends nr{constructor(lV){super(lV)}},as=Ai(class extends nr{constructor(lV){super(lV)}},[0,Qr,[0,ei,-4]]),hs=class extends nr{constructor(lV){super(lV)}},cs=Ai(class extends nr{constructor(lV){super(lV)}},[0,Qr,[0,ei,-4]]),us=class extends nr{constructor(lV){super(lV)}},ls=[0,ai,-1,ri,Ei],fs=class extends nr{constructor(){super()}};fs.prototype.g=bi([0,ei,-4,ii]);var ds=class extends nr{constructor(lV){super(lV)}},ps=Ai(class extends nr{constructor(lV){super(lV)}},[0,Qr,[0,1,ai,pi,ts],ii]),gs=class extends nr{constructor(lV){super(lV)}},ms=class extends nr{constructor(lV){super(lV)}ra(){const lV=Qe(this);return lV??N()}},ys=class extends nr{constructor(lV){super(lV)}},_s=[1,2],vs=Ai(class extends nr{constructor(lV){super(lV)}},[0,Qr,[0,_s,yi,[0,ri],yi,[0,_i],ai,pi],ii]),Es=class extends nr{constructor(lV){super(lV)}},ws=[0,pi,ai,ei,fi,-1],Ts=class extends nr{constructor(lV){super(lV)}},As=[0,ui,-1],bs=class extends nr{constructor(lV){super(lV)}},ks=[1,2,3,4,5],Ss=class extends nr{constructor(lV){super(lV)}g(){return Qe(this)!=null}h(){return re(ze(this,2))!=null}},xs=class extends nr{constructor(lV){super(lV)}g(){return Wt(ze(this,2))??!1}},Ls=[0,_i,pi,[0,ai,ii,-1],[0,oi,ii]],Rs=[0,Ls,ui,[0,ks,yi,Pi,yi,Ri,yi,xi,yi,Ii,yi,Fi],Ei],Fs=class extends nr{constructor(lV){super(lV)}},Ms=[0,Rs,ei,-1,ai],Is=Ti(502141897,Fs);Ni[502141897]=Ms,Ui[502141897]=1;var Ps=[0,Ls];Ni[512499200]=Ps;var Os=[0,Ps];Ni[515723506]=Os;var Cs=Ai(class extends nr{constructor(lV){super(lV)}},[0,[0,Ei,-1,ni,vi],ls]),Ns=[0,Rs];Ni[508981768]=Ns;var Us=class extends nr{constructor(lV){super(lV)}},Ds=class extends nr{constructor(lV){super(lV)}},Bs=[0,Rs,ei,Ns,ui],Gs=[0,Rs,Ms,Bs,ei,Os];Ni[508968149]=Bs;var js=Ti(508968150,Ds);Ni[508968150]=Gs,Ui[508968150]=1,Ui[508968149]=1;var Vs=class extends nr{constructor(lV){super(lV)}},Xs=Ti(513916220,Vs);Ni[513916220]=[0,Rs,Gs,ai],Ui[513916220]=1;var Hs=class extends nr{constructor(lV){super(lV)}h(){return pn(this,Es,2)}g(){$e(this,2)}},Ws=[0,Rs,ws];Ni[478825465]=Ws,Ui[478825465]=1;var zs=[0,Rs];Ni[478825422]=zs;var Ks=class extends nr{constructor(lV){super(lV)}},Ys=class extends nr{constructor(lV){super(lV)}},$s=class extends nr{constructor(lV){super(lV)}},qs=class extends nr{constructor(lV){super(lV)}},Js=class extends nr{constructor(lV){super(lV)}},Zs=[0,Rs,zs,Ws,-1],Qs=[0,Rs,ei,ai],to=[0,Rs,ei],eo=[0,Rs,Qs,to,ei],no=[0,Rs,eo,Zs];Ni[463370452]=Zs,Ni[464864288]=Qs,Ni[474472470]=to;var ro=Ti(462713202,qs);Ni[462713202]=eo;var io=Ti(479097054,Js);Ni[479097054]=no,Ui[479097054]=1,Ui[463370452]=1,Ui[464864288]=1,Ui[462713202]=1,Ui[474472470]=1;var so=class extends nr{constructor(lV){super(lV)}},oo=class extends nr{constructor(lV){super(lV)}},ao=class extends nr{constructor(lV){super(lV)}},ho=class extends nr{constructor(){super()}},co=[0,Rs,ei,-1,ai],uo=[0,Rs,ei,ui];ho.prototype.g=bi([0,Rs,to,[0,Rs],Ms,Bs,co,uo]),Ni[514774813]=co,Ni[518928384]=uo;var lo=class extends nr{constructor(lV){super(lV)}},fo=Ti(456383383,lo);Ni[456383383]=[0,Rs,ws],Ui[456383383]=1;var po=class extends nr{constructor(lV){super(lV)}},go=Ti(476348187,po);Ni[476348187]=[0,Rs,As],Ui[476348187]=1;var mo=class extends nr{constructor(lV){super(lV)}},yo=class extends nr{constructor(lV){super(lV)}},_o=[0,Ei,-1],vo=Ti(458105876,class extends nr{constructor(lV){super(lV)}g(){var lV=this.u;const J=et(lV),VV=2&J;return lV=function(RV,UV,ZV){var WV=yo;const IV=2&UV;let dV=!1;if(ZV==null){if(IV)return Ne();ZV=[]}else if(ZV.constructor===Me){if(!(2&ZV.M)||IV)return ZV;ZV=ZV.Z()}else Array.isArray(ZV)?dV=!!(2&tt(ZV)):ZV=[];if(IV){if(!ZV.length)return Ne();dV||(dV=!0,rt(ZV))}else dV&&(dV=!1,ZV=on(ZV));return dV||(64&tt(ZV)?Q(ZV,32):32&UV&&Z(ZV,32)),qe(RV,UV,2,WV=new Me(ZV,WV,se,void 0)),WV}(lV,J,Ye(lV,J,2)),!VV&&yo&&(lV.va=!0),lV}});Ni[458105876]=[0,_o,Hr,[!0,ii,[0,pi,-1,fi]]],Ui[458105876]=1;var Eo=class extends nr{constructor(lV){super(lV)}},wo=Ti(458105758,Eo);Ni[458105758]=[0,Rs,pi,_o],Ui[458105758]=1;var To=class extends nr{constructor(lV){super(lV)}},Ao=Ti(443442058,To);Ni[443442058]=[0,Rs,pi,ai,ei,fi,-1],Ui[443442058]=1,Ui[514774813]=1;var bo=class extends nr{constructor(lV){super(lV)}},ko=Ti(516587230,bo);function So(lV,J){return J=J?J.clone():new Es,lV.displayNamesLocale!==void 0?$e(J,1,ne(lV.displayNamesLocale)):lV.displayNamesLocale===void 0&&$e(J,1),lV.maxResults!==void 0?xn(J,2,lV.maxResults):"maxResults"in lV&&$e(J,2),lV.scoreThreshold!==void 0?Ln(J,3,lV.scoreThreshold):"scoreThreshold"in lV&&$e(J,3),lV.categoryAllowlist!==void 0?Rn(J,4,lV.categoryAllowlist):"categoryAllowlist"in lV&&$e(J,4),lV.categoryDenylist!==void 0?Rn(J,5,lV.categoryDenylist):"categoryDenylist"in lV&&$e(J,5),J}function xo(lV,J=-1,VV=""){return{categories:lV.map(RV=>({index:Tn(An(RV,1),0)??-1,score:bn(RV,2)??0,categoryName:kn(RV,3)??"",displayName:kn(RV,4)??""})),headIndex:J,headName:VV}}function Lo(lV){var WV,IV;var J=en(lV,3,Ht,tn()),VV=en(lV,2,Yt,tn()),RV=en(lV,1,re,tn()),UV=en(lV,9,re,tn());const ZV={categories:[],keypoints:[]};for(let dV=0;dV<J.length;dV++)ZV.categories.push({score:J[dV],index:VV[dV]??-1,categoryName:RV[dV]??"",displayName:UV[dV]??""});if((J=(WV=pn(lV,is,4))==null?void 0:WV.h())&&(ZV.boundingBox={originX:An(J,1)??0,originY:An(J,2)??0,width:An(J,3)??0,height:An(J,4)??0,angle:0}),(IV=pn(lV,is,4))==null?void 0:IV.g().length)for(const dV of pn(lV,is,4).g())ZV.keypoints.push({x:Ze(dV,1)??0,y:Ze(dV,2)??0,score:Ze(dV,4)??0,label:re(ze(dV,3))??""});return ZV}function Ro(lV){const J=[];for(const VV of mn(lV,hs,1))J.push({x:bn(VV,1)??0,y:bn(VV,2)??0,z:bn(VV,3)??0,visibility:bn(VV,4)??0});return J}function Fo(lV){const J=[];for(const VV of mn(lV,os,1))J.push({x:bn(VV,1)??0,y:bn(VV,2)??0,z:bn(VV,3)??0,visibility:bn(VV,4)??0});return J}function Mo(lV){return Array.from(lV,J=>J>127?J-256:J)}function Io(lV,J){if(lV.length!==J.length)throw Error(`Cannot compute cosine similarity between embeddings of different sizes (${lV.length} vs. ${J.length}).`);let VV=0,RV=0,UV=0;for(let ZV=0;ZV<lV.length;ZV++)VV+=lV[ZV]*J[ZV],RV+=lV[ZV]*lV[ZV],UV+=J[ZV]*J[ZV];if(RV<=0||UV<=0)throw Error("Cannot compute cosine similarity on embedding with 0 norm.");return VV/Math.sqrt(RV*UV)}let Po;Ni[516587230]=[0,Rs,co,uo,ei],Ui[516587230]=1,Ui[518928384]=1;const Oo=new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,10,1,8,0,65,0,253,15,253,98,11]);async function Co(){if(Po===void 0)try{await WebAssembly.instantiate(Oo),Po=!0}catch{Po=!1}return Po}async function No(lV,J=""){const VV=await Co()?"wasm_internal":"wasm_nosimd_internal";return{wasmLoaderPath:`${J}/${lV}_${VV}.js`,wasmBinaryPath:`${J}/${lV}_${VV}.wasm`}}var Uo=class{};function Do(){var lV=navigator;return typeof OffscreenCanvas<"u"&&(!function(J=navigator){return(J=J.userAgent).includes("Safari")&&!J.includes("Chrome")}(lV)||!!((lV=lV.userAgent.match(/Version\/([\d]+).*Safari/))&&lV.length>=1&&Number(lV[1])>=17))}async function Bo(lV){if(typeof importScripts!="function"){const J=document.createElement("script");return J.src=lV.toString(),J.crossOrigin="anonymous",new Promise((VV,RV)=>{J.addEventListener("load",()=>{VV()},!1),J.addEventListener("error",UV=>{RV(UV)},!1),document.body.appendChild(J)})}importScripts(lV.toString())}function Go(lV){return lV.videoWidth!==void 0?[lV.videoWidth,lV.videoHeight]:lV.naturalWidth!==void 0?[lV.naturalWidth,lV.naturalHeight]:lV.displayWidth!==void 0?[lV.displayWidth,lV.displayHeight]:[lV.width,lV.height]}function jo(lV,J,VV){lV.m||console.error("No wasm multistream support detected: ensure dependency inclusion of :gl_graph_runner_internal_multi_input target"),VV(J=lV.i.stringToNewUTF8(J)),lV.i._free(J)}function Vo(lV,J,VV){if(!lV.i.canvas)throw Error("No OpenGL canvas configured.");if(VV?lV.i._bindTextureToStream(VV):lV.i._bindTextureToCanvas(),!(VV=lV.i.canvas.getContext("webgl2")||lV.i.canvas.getContext("webgl")))throw Error("Failed to obtain WebGL context from the provided canvas. `getContext()` should only be invoked with `webgl` or `webgl2`.");lV.i.gpuOriginForWebTexturesIsBottomLeft&&VV.pixelStorei(VV.UNPACK_FLIP_Y_WEBGL,!0),VV.texImage2D(VV.TEXTURE_2D,0,VV.RGBA,VV.RGBA,VV.UNSIGNED_BYTE,J),lV.i.gpuOriginForWebTexturesIsBottomLeft&&VV.pixelStorei(VV.UNPACK_FLIP_Y_WEBGL,!1);const[RV,UV]=Go(J);return!lV.l||RV===lV.i.canvas.width&&UV===lV.i.canvas.height||(lV.i.canvas.width=RV,lV.i.canvas.height=UV),[RV,UV]}function Xo(lV,J,VV){lV.m||console.error("No wasm multistream support detected: ensure dependency inclusion of :gl_graph_runner_internal_multi_input target");const RV=new Uint32Array(J.length);for(let UV=0;UV<J.length;UV++)RV[UV]=lV.i.stringToNewUTF8(J[UV]);J=lV.i._malloc(4*RV.length),lV.i.HEAPU32.set(RV,J>>2),VV(J);for(const UV of RV)lV.i._free(UV);lV.i._free(J)}function Ho(lV,J,VV){lV.i.simpleListeners=lV.i.simpleListeners||{},lV.i.simpleListeners[J]=VV}function Wo(lV,J,VV){let RV=[];lV.i.simpleListeners=lV.i.simpleListeners||{},lV.i.simpleListeners[J]=(UV,ZV,WV)=>{ZV?(VV(RV,WV),RV=[]):RV.push(UV)}}Uo.forVisionTasks=function(lV){return No("vision",lV)},Uo.forTextTasks=function(lV){return No("text",lV)},Uo.forGenAiExperimentalTasks=function(lV){return No("genai_experimental",lV)},Uo.forGenAiTasks=function(lV){return No("genai",lV)},Uo.forAudioTasks=function(lV){return No("audio",lV)},Uo.isSimdSupported=function(){return Co()};async function zo(lV,J,VV,RV){return lV=await(async(UV,ZV,WV,IV,dV)=>{if(ZV&&await Bo(ZV),!self.ModuleFactory||WV&&(await Bo(WV),!self.ModuleFactory))throw Error("ModuleFactory not set.");return self.Module&&dV&&((ZV=self.Module).locateFile=dV.locateFile,dV.mainScriptUrlOrBlob&&(ZV.mainScriptUrlOrBlob=dV.mainScriptUrlOrBlob)),dV=await self.ModuleFactory(self.Module||dV),self.ModuleFactory=self.Module=void 0,new UV(dV,IV)})(lV,VV.wasmLoaderPath,VV.assetLoaderPath,J,{locateFile:UV=>UV.endsWith(".wasm")?VV.wasmBinaryPath.toString():VV.assetBinaryPath&&UV.endsWith(".data")?VV.assetBinaryPath.toString():UV}),await lV.o(RV),lV}function Ko(lV,J){const VV=pn(lV.baseOptions,Ss,1)||new Ss;typeof J=="string"?($e(VV,2,ne(J)),$e(VV,1)):J instanceof Uint8Array&&($e(VV,1,lt(J,!1,!1)),$e(VV,2)),yn(lV.baseOptions,0,1,VV)}function Yo(lV){try{const J=lV.H.length;if(J===1)throw Error(lV.H[0].message);if(J>1)throw Error("Encountered multiple errors: "+lV.H.map(VV=>VV.message).join(", "))}finally{lV.H=[]}}function $o(lV,J){lV.B=Math.max(lV.B,J)}function qo(lV,J){lV.A=new Vi,Bi(lV.A,"PassThroughCalculator"),Gi(lV.A,"free_memory"),ji(lV.A,"free_memory_unused_out"),Ki(J,"free_memory"),zi(J,lV.A)}function Jo(lV,J){Gi(lV.A,J),ji(lV.A,J+"_unused_out")}function Zo(lV){lV.g.addBoolToStream(!0,"free_memory",lV.B)}var Qo=class{constructor(lV){this.g=lV,this.H=[],this.B=0,this.g.setAutoRenderToScreen(!1)}l(lV,J=!0){var VV,RV,UV,ZV,WV,IV;if(J){const dV=lV.baseOptions||{};if((VV=lV.baseOptions)!=null&&VV.modelAssetBuffer&&((RV=lV.baseOptions)!=null&&RV.modelAssetPath))throw Error("Cannot set both baseOptions.modelAssetPath and baseOptions.modelAssetBuffer");if(!((UV=pn(this.baseOptions,Ss,1))!=null&&UV.g()||(ZV=pn(this.baseOptions,Ss,1))!=null&&ZV.h()||(WV=lV.baseOptions)!=null&&WV.modelAssetBuffer||(IV=lV.baseOptions)!=null&&IV.modelAssetPath))throw Error("Either baseOptions.modelAssetPath or baseOptions.modelAssetBuffer must be set");if(function(CV,FV){let NV=pn(CV.baseOptions,bs,3);if(!NV){var gV=NV=new bs,eV=new Mi;_n(gV,4,ks,eV)}"delegate"in FV&&(FV.delegate==="GPU"?(FV=NV,gV=new Li,_n(FV,2,ks,gV)):(FV=NV,gV=new Mi,_n(FV,4,ks,gV))),yn(CV.baseOptions,0,3,NV)}(this,dV),dV.modelAssetPath)return fetch(dV.modelAssetPath.toString()).then(CV=>{if(CV.ok)return CV.arrayBuffer();throw Error(`Failed to fetch model: ${dV.modelAssetPath} (${CV.status})`)}).then(CV=>{try{this.g.i.FS_unlink("/model.dat")}catch{}this.g.i.FS_createDataFile("/","model.dat",new Uint8Array(CV),!0,!1,!1),Ko(this,"/model.dat"),this.m(),this.J()});if(dV.modelAssetBuffer instanceof Uint8Array)Ko(this,dV.modelAssetBuffer);else if(dV.modelAssetBuffer)return async function(CV){const FV=[];for(var NV=0;;){const{done:gV,value:eV}=await CV.read();if(gV)break;FV.push(eV),NV+=eV.length}if(FV.length===0)return new Uint8Array(0);if(FV.length===1)return FV[0];CV=new Uint8Array(NV),NV=0;for(const gV of FV)CV.set(gV,NV),NV+=gV.length;return CV}(dV.modelAssetBuffer).then(CV=>{Ko(this,CV),this.m(),this.J()})}return this.m(),this.J(),Promise.resolve()}J(){}ga(){let lV;if(this.g.ga(J=>{lV=Ji(J)}),!lV)throw Error("Failed to retrieve CalculatorGraphConfig");return lV}setGraph(lV,J){this.g.attachErrorListener((VV,RV)=>{this.H.push(Error(RV))}),this.g.Oa(),this.g.setGraph(lV,J),this.A=void 0,Yo(this)}finishProcessing(){this.g.finishProcessing(),Yo(this)}close(){this.A=void 0,this.g.closeGraph()}};function ta(lV,J){if(!lV)throw Error(`Unable to obtain required WebGL resource: ${J}`);return lV}Qo.prototype.close=Qo.prototype.close,function(lV,J){lV=lV.split(".");var VV,RV=t;for((lV[0]in RV)||RV.execScript===void 0||RV.execScript("var "+lV[0]);lV.length&&(VV=lV.shift());)lV.length||J===void 0?RV=RV[VV]&&RV[VV]!==Object.prototype[VV]?RV[VV]:RV[VV]={}:RV[VV]=J}("TaskRunner",Qo);class ea{constructor(J,VV,RV,UV){this.g=J,this.h=VV,this.m=RV,this.l=UV}bind(){this.g.bindVertexArray(this.h)}close(){this.g.deleteVertexArray(this.h),this.g.deleteBuffer(this.m),this.g.deleteBuffer(this.l)}}function na(lV,J,VV){const RV=lV.g;if(VV=ta(RV.createShader(VV),"Failed to create WebGL shader"),RV.shaderSource(VV,J),RV.compileShader(VV),!RV.getShaderParameter(VV,RV.COMPILE_STATUS))throw Error(`Could not compile WebGL shader: ${RV.getShaderInfoLog(VV)}`);return RV.attachShader(lV.h,VV),VV}function ra(lV,J){const VV=lV.g,RV=ta(VV.createVertexArray(),"Failed to create vertex array");VV.bindVertexArray(RV);const UV=ta(VV.createBuffer(),"Failed to create buffer");VV.bindBuffer(VV.ARRAY_BUFFER,UV),VV.enableVertexAttribArray(lV.R),VV.vertexAttribPointer(lV.R,2,VV.FLOAT,!1,0,0),VV.bufferData(VV.ARRAY_BUFFER,new Float32Array([-1,-1,-1,1,1,1,1,-1]),VV.STATIC_DRAW);const ZV=ta(VV.createBuffer(),"Failed to create buffer");return VV.bindBuffer(VV.ARRAY_BUFFER,ZV),VV.enableVertexAttribArray(lV.J),VV.vertexAttribPointer(lV.J,2,VV.FLOAT,!1,0,0),VV.bufferData(VV.ARRAY_BUFFER,new Float32Array(J?[0,1,0,0,1,0,1,1]:[0,0,0,1,1,1,1,0]),VV.STATIC_DRAW),VV.bindBuffer(VV.ARRAY_BUFFER,null),VV.bindVertexArray(null),new ea(VV,RV,UV,ZV)}function ia(lV,J){if(lV.g){if(J!==lV.g)throw Error("Cannot change GL context once initialized")}else lV.g=J}function sa(lV,J,VV,RV){return ia(lV,J),lV.h||(lV.m(),lV.C()),VV?(lV.s||(lV.s=ra(lV,!0)),VV=lV.s):(lV.v||(lV.v=ra(lV,!1)),VV=lV.v),J.useProgram(lV.h),VV.bind(),lV.l(),lV=RV(),VV.g.bindVertexArray(null),lV}function oa(lV,J,VV){return ia(lV,J),lV=ta(J.createTexture(),"Failed to create texture"),J.bindTexture(J.TEXTURE_2D,lV),J.texParameteri(J.TEXTURE_2D,J.TEXTURE_WRAP_S,J.CLAMP_TO_EDGE),J.texParameteri(J.TEXTURE_2D,J.TEXTURE_WRAP_T,J.CLAMP_TO_EDGE),J.texParameteri(J.TEXTURE_2D,J.TEXTURE_MIN_FILTER,VV??J.LINEAR),J.texParameteri(J.TEXTURE_2D,J.TEXTURE_MAG_FILTER,VV??J.LINEAR),J.bindTexture(J.TEXTURE_2D,null),lV}function aa(lV,J,VV){ia(lV,J),lV.A||(lV.A=ta(J.createFramebuffer(),"Failed to create framebuffe.")),J.bindFramebuffer(J.FRAMEBUFFER,lV.A),J.framebufferTexture2D(J.FRAMEBUFFER,J.COLOR_ATTACHMENT0,J.TEXTURE_2D,VV,0)}function ha(lV){var J;(J=lV.g)==null||J.bindFramebuffer(lV.g.FRAMEBUFFER,null)}var ca=class{H(){return`
|
|
22286
|
+
`);const cV=GV.state[IV];if(cV==null)return;JSON.stringify(UV.getState())!==JSON.stringify(cV)&&eV(cV);return}UV.dispatchFromDevtools&&typeof UV.dispatch=="function"&&UV.dispatch(GV)});case"DISPATCH":switch(nV.payload.type){case"RESET":return eV(JV),IV===void 0?FV==null?void 0:FV.init(UV.getState()):FV==null?void 0:FV.init(getTrackedConnectionState(dV.name));case"COMMIT":if(IV===void 0){FV==null||FV.init(UV.getState());return}return FV==null?void 0:FV.init(getTrackedConnectionState(dV.name));case"ROLLBACK":return parseJsonThen(nV.state,GV=>{if(IV===void 0){eV(GV),FV==null||FV.init(UV.getState());return}eV(GV[IV]),FV==null||FV.init(getTrackedConnectionState(dV.name))});case"JUMP_TO_STATE":case"JUMP_TO_ACTION":return parseJsonThen(nV.state,GV=>{if(IV===void 0){eV(GV);return}JSON.stringify(UV.getState())!==JSON.stringify(GV[IV])&&eV(GV[IV])});case"IMPORT_STATE":{const{nextLiftedState:GV}=nV.payload,cV=(aV=GV.computedStates.slice(-1)[0])==null?void 0:aV.state;if(!cV)return;eV(IV===void 0?cV:cV[IV]),FV==null||FV.send(null,GV);return}case"PAUSE_RECORDING":return gV=!gV}return}}),JV},devtools=devtoolsImpl,parseJsonThen=(lV,J)=>{let VV;try{VV=JSON.parse(lV)}catch(RV){console.error("[zustand devtools middleware] Could not parse the received json",RV)}VV!==void 0&&J(VV)},API_BASE=window.API_BASE_URL??"/api",debug$4=Debug$1("run-frame"),debug$3=debug$4.extend("store");async function upsertFileApi(lV,J){return(await(await fetch(`${API_BASE}/files/upsert`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({file_path:lV,text_content:J})})).json()).file}async function getFileApi(lV){return(await(await fetch(`${API_BASE}/files/get?file_path=${encodeURIComponent(lV)}`)).json()).file}async function getEvents(lV){const J=lV?`${API_BASE}/events/list?since=${encodeURIComponent(lV)}`:`${API_BASE}/events/list`;return(await(await fetch(J)).json()).event_list}async function getInitialFilesApi(){const lV=await fetch(`${API_BASE}/files/list`),{file_list:J}=await lV.json(),VV=new Map;for(const RV of J){const UV=await getFileApi(RV.file_path);VV.set(RV.file_path,UV.text_content)}return VV}const useRunFrameStore=create$1()(devtools((lV,J)=>({fsMap:new Map,lastEventTime:new Date().toISOString(),isPolling:!1,error:null,circuitJson:null,lastManualEditsChangeSentAt:0,recentEvents:[],loadInitialFiles:async()=>{const VV=await getInitialFilesApi();lV({fsMap:VV})},upsertFile:async(VV,RV)=>{try{const UV=await upsertFileApi(VV,RV);lV(ZV=>({fsMap:new Map(ZV.fsMap).set(UV.file_path,UV.text_content)}))}catch(UV){lV({error:UV})}},getFile:async VV=>{try{const RV=await getFileApi(VV);lV(UV=>({fsMap:new Map(UV.fsMap).set(RV.file_path,RV.text_content)}))}catch(RV){lV({error:RV})}},setCircuitJson:VV=>{VV!==J().circuitJson&&lV({circuitJson:VV})},startPolling:()=>{const VV=async()=>{const RV=J();if(RV.isPolling){try{const UV=await getEvents(RV.lastEventTime);if(UV.length>0){lV(IV=>({recentEvents:[...IV.recentEvents,...UV].slice(0,100)}));const ZV=UV[UV.length-1].created_at,WV=new Map(RV.fsMap);for(const IV of UV)if(IV.event_type==="FILE_UPDATED"){const dV=await getFileApi(IV.file_path);if(IV.file_path==="manual_edits.json"&&Date.now()-RV.lastManualEditsChangeSentAt<1e3)continue;WV.set(dV.file_path,dV.text_content)}lV({fsMap:WV,lastEventTime:ZV})}}catch(UV){lV({error:UV})}setTimeout(VV,1e3)}};lV({isPolling:!0}),VV()},stopPolling:()=>{lV({isPolling:!1})},pushEvent:async VV=>{await fetch(`${window.API_BASE_URL??""}/api/events/create`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(VV)})},applyEditEventsAndUpdateManualEditsJson:async VV=>{debug$3("applyEditEventsAndUpdateManualEditsJson",{editEvents:VV});const RV=J();if(!RV.circuitJson)return;const UV=RV.fsMap.get("manual-edits.json"),ZV=UV?JSON.parse(UV):{},WV=applyEditEventsToManualEditsFile({circuitJson:RV.circuitJson,editEvents:VV,manualEditsFile:ZV});debug$3("updatedManualEditsFileContent",WV),lV(IV=>({lastManualEditsChangeSentAt:Date.now(),fsMap:new Map(IV.fsMap).set("manual-edits.json",JSON.stringify(WV))})),await upsertFileApi("manual-edits.json",JSON.stringify(WV,null,2))}}),{name:"run-frame-store"})),getChangesBetweenFsMaps=(lV,J)=>{const VV={};for(const[RV,UV]of lV.entries()){const ZV=J.get(RV);ZV!==UV&&(VV[RV]={old:UV,new:ZV})}for(const[RV,UV]of J.entries())lV.has(RV)||(VV[RV]={old:void 0,new:UV});return VV},debug$2=Debug$1("run-frame:RunFrame"),RunFrame=lV=>{const[J,VV]=useRunFrameStore(IV=>[IV.circuitJson,IV.setCircuitJson]),[RV,UV]=reactExports.useState(null);reactExports.useEffect(()=>{lV.debug&&Debug$1.enable("run-frame*")},[lV.debug]);const ZV=lV.fsMap instanceof Map?lV.fsMap:Object.entries(lV.fsMap??{}).reduce((IV,[dV,CV])=>IV.set(dV,CV),new Map),WV=reactExports.useRef(null);return reactExports.useEffect(()=>{if(!ZV)return;if(WV.current&&J){const dV=getChangesBetweenFsMaps(WV.current,ZV);if(Object.keys(dV).length>0)debug$2("render triggered by changes:",dV);else{debug$2("render triggered without changes to fsMap, skipping");return}}WV.current=ZV;async function IV(){var gV,eV,JV,nV,aV;const dV=globalThis.runFrameWorker??await createCircuitWebWorker({webWorkerUrl:blobUrl,verbose:!0});globalThis.runFrameWorker=dV,(gV=lV.onRenderStarted)==null||gV.call(lV);const CV=ZV instanceof Map?Object.fromEntries(ZV.entries()):ZV,FV=dV.executeWithFsMap({entrypoint:lV.entrypoint,fsMap:CV}).catch(GV=>{const cV=GV.message.split(":")[1];UV({error:cV,stack:GV.stack}),console.error(GV)});debug$2("waiting for initial circuit json...");let NV=await dV.getCircuitJson();debug$2("got initial circuit json"),VV(NV),(eV=lV.onCircuitJsonChange)==null||eV.call(lV,NV),(JV=lV.onInitialRender)==null||JV.call(lV,{circuitJson:NV}),debug$2("waiting for execution to finish..."),await FV,debug$2("getting final circuit json"),NV=await dV.getCircuitJson(),(nV=lV.onCircuitJsonChange)==null||nV.call(lV,NV),VV(NV),(aV=lV.onRenderFinished)==null||aV.call(lV,{circuitJson:NV})}IV()},[lV.fsMap]),jsxRuntimeExports.jsx(CircuitJsonPreview,{defaultActiveTab:"schematic",leftHeaderContent:lV.leftHeaderContent,circuitJson:J,errorMessage:RV==null?void 0:RV.error,onEditEvent:lV.onEditEvent,editEvents:lV.editEvents})},debug$1=debug$4.extend("useEditEventController"),useEditEventController=()=>{const lV=useRunFrameStore(eV=>eV.applyEditEventsAndUpdateManualEditsJson),[J,VV]=reactExports.useState([]),[RV,UV]=reactExports.useState(!1),ZV=J.filter(eV=>!eV._applied),WV=J.filter(eV=>eV._applied),IV=RV?J:ZV,dV=reactExports.useCallback(eV=>{VV(JV=>[...JV,{...eV,_applied:!1}])},[]),CV=reactExports.useCallback(eV=>{VV(JV=>JV.map(nV=>nV===eV?{...nV,_applied:!0}:nV))},[]),FV=reactExports.useCallback(()=>{VV(eV=>eV.map(JV=>({...JV,_applied:!0})))},[]),NV=reactExports.useCallback(()=>{UV(!0),J.length!==0&&(debug$1("removing edit events that are applied"),VV(eV=>eV.filter(JV=>!JV._applied)))},[J]),gV=reactExports.useCallback(()=>{UV(!1)},[]);return reactExports.useEffect(()=>{if(J.filter(JV=>!JV._applied).length===0)return;const eV=setTimeout(()=>{FV(),lV(J)},1e3);return()=>clearTimeout(eV)},[J]),{unappliedEditEvents:ZV,appliedEditEvents:WV,editEventsForRender:IV,pushEditEvent:dV,markEditEventApplied:CV,markRenderStarted:NV,markRenderComplete:gV,markAllEditEventsApplied:FV}},debug=Debug$1("run-frame:RunFrameWithApi"),guessEntrypoint=lV=>lV.find(J=>J.includes("entrypoint."))??lV.find(J=>J.includes("index."))??lV.find(J=>J.includes("main."))??lV.find(J=>J.endsWith(".tsx")),RunFrameWithApi=lV=>{const{apiBaseUrl:J,leftHeaderContent:VV}=lV;reactExports.useEffect(()=>{lV.debug&&Debug$1.enable("run-frame*")},[lV.debug]);const{startPolling:RV,stopPolling:UV,loadInitialFiles:ZV}=useRunFrameStore(gV=>({startPolling:gV.startPolling,stopPolling:gV.stopPolling,loadInitialFiles:gV.loadInitialFiles})),WV=useRunFrameStore(gV=>gV.fsMap);reactExports.useEffect(()=>{ZV()},[]);const{editEventsForRender:IV,pushEditEvent:dV,markRenderStarted:CV,markRenderComplete:FV}=useEditEventController();reactExports.useEffect(()=>{J&&(window.API_BASE_URL=J)},[J]),reactExports.useEffect(()=>(RV(),()=>UV()),[RV,UV]);const NV=guessEntrypoint(Array.from(WV.keys()))??"entrypoint.tsx";return reactExports.useEffect(()=>{debug(`entrypoint set to ${NV}`)},[NV]),WV.get(NV)?jsxRuntimeExports.jsx(RunFrame,{fsMap:WV,leftHeaderContent:VV,onInitialRender:()=>{debug("onInitialRender / markRenderStarted"),CV()},onRenderFinished:()=>{debug("onRenderFinished / markRenderComplete"),FV()},entrypoint:NV,onError:gV=>{console.error("RunFrame error:",gV)},editEvents:IV,onEditEvent:gV=>{dV(gV),fetch(`${API_BASE}/events/create`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({event_type:"USER_CREATED_MANUAL_EDIT",...gV})})}}):jsxRuntimeExports.jsxs("div",{children:["No entrypoint found for Run Frame! Found files:"," ",Array.from(WV.keys()).join(",")]})},SelectSnippetDialog=({snippetNames:lV,onSelect:J,onCancel:VV,isOpen:RV})=>{const[UV,ZV]=reactExports.useState(""),[WV,IV]=reactExports.useState("");if(!RV)return null;const dV=lV.filter(NV=>NV.toLowerCase().includes(WV.toLowerCase())),CV=WV&&!lV.includes(WV),FV=NV=>{NV.key==="Enter"&&(dV.length===1?ZV(dV[0]):CV&&ZV(WV))};return jsxRuntimeExports.jsx("div",{className:"fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-[100]",children:jsxRuntimeExports.jsxs("div",{className:"bg-white rounded-lg p-6 w-96",children:[jsxRuntimeExports.jsx("h2",{className:"text-lg font-semibold mb-4",children:"Select Snippet"}),jsxRuntimeExports.jsx("input",{type:"text",className:"w-full px-4 py-2 border rounded mb-4",placeholder:"Search snippets or new snippet name...",value:WV,onChange:NV=>IV(NV.target.value),onKeyDown:FV}),jsxRuntimeExports.jsxs("div",{className:"h-60 overflow-y-auto",children:[dV.map(NV=>jsxRuntimeExports.jsx("button",{type:"button",className:`w-full text-left px-4 py-2 rounded hover:bg-gray-100 ${UV===NV?"bg-blue-50":""}`,onClick:()=>ZV(NV),children:NV},NV)),CV&&jsxRuntimeExports.jsxs("button",{type:"button",className:`w-full text-left px-4 py-2 rounded hover:bg-gray-100 text-blue-500 ${UV===WV?"bg-blue-50":""}`,onClick:()=>ZV(WV),children:['Create new "',WV,'"']})]}),jsxRuntimeExports.jsxs("div",{className:"mt-4 flex justify-end gap-2",children:[jsxRuntimeExports.jsx("button",{type:"button",className:"px-4 py-2 text-gray-600 hover:text-gray-800",onClick:VV,children:"Cancel"}),jsxRuntimeExports.jsx("button",{type:"button",className:"px-4 py-2 bg-blue-500 text-white rounded hover:bg-blue-600 disabled:opacity-50",onClick:()=>UV&&J(UV),disabled:!UV,children:UV===WV?`Create "${UV}"`:`Save to ${UV}`})]})]})})},useEventHandler=lV=>{const J=reactExports.useRef(null),VV=useRunFrameStore(RV=>RV.recentEvents);reactExports.useEffect(()=>{if(VV.length===0)return;const RV=VV[0];RV.event_id!==J.current&&(lV(RV),J.current=RV.event_id)},[VV,lV])},SaveToSnippetsButton=()=>{const[lV,J]=reactExports.useState(null),[VV,RV]=reactExports.useState(!1),[UV,ZV]=reactExports.useState(!0),WV=useRunFrameStore(GV=>GV.pushEvent),IV=useRunFrameStore(GV=>GV.recentEvents),[dV,CV]=reactExports.useState(!1),[FV,NV]=reactExports.useState(null),[gV,eV]=reactExports.useState(null),[JV,nV]=reactExports.useState(!1),aV=reactExports.useMemo(()=>Date.now(),[]);return useEventHandler(GV=>{if(!(new Date(GV.created_at).valueOf()<aV+500)){if(GV.event_type==="FILE_UPDATED"){RV(!0);return}if(GV.event_type==="SNIPPET_SAVED"){RV(!1),ZV(!1);return}}}),reactExports.useEffect(()=>{if(!dV||FV===null)return;const GV=IV.filter(iV=>new Date(iV.created_at).valueOf()>FV),cV=GV.find(iV=>iV.event_type==="FAILED_TO_SAVE_SNIPPET"),TV=GV.find(iV=>iV.event_type==="SNIPPET_SAVED");cV&&(CV(!1),NV(null),cV.error_code==="SNIPPET_UNSET"&&cV.available_snippet_names&&(eV(cV.available_snippet_names),nV(!0))),TV&&(CV(!1),NV(null))},[IV,dV]),jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsxs("button",{type:"button",onClick:async()=>{CV(!0),NV(Date.now()),await WV({event_type:"REQUEST_TO_SAVE_SNIPPET",snippet_name:lV})},disabled:dV,className:`px-3 flex items-center text-sm py-1.5 rounded-md ${dV?"cursor-not-allowed":"bg-white border border-gray-300 font-medium text-gray-900 shadow-sm"}`,children:[dV?"Saving...":"Save to Snippets",dV||UV?null:jsxRuntimeExports.jsx("span",{className:"ml-1.5 flex items-center",children:VV?jsxRuntimeExports.jsx("div",{className:"text-xs bg-orange-400 text-white p-0.5 px-1.5 rounded",children:"unsaved changes"}):jsxRuntimeExports.jsx(CircleCheck,{className:"w-4 h-4 text-green-500"})})]}),jsxRuntimeExports.jsx(SelectSnippetDialog,{snippetNames:gV??[],onSelect:async GV=>{CV(!0),NV(Date.now()),J(GV),await WV({event_type:"REQUEST_TO_SAVE_SNIPPET",snippet_name:GV}),nV(!1)},onCancel:()=>nV(!1),isOpen:JV})]})},RunFrameForCli=lV=>jsxRuntimeExports.jsx(RunFrameWithApi,{debug:lV.debug,leftHeaderContent:jsxRuntimeExports.jsx("div",{children:jsxRuntimeExports.jsx(SaveToSnippetsButton,{})})}),root=clientExports.createRoot(document.getElementById("root"));root.render(jsxRuntimeExports.jsx(React.StrictMode,{children:jsxRuntimeExports.jsx("div",{style:{width:"100vw",height:"100vh"},children:jsxRuntimeExports.jsx(RunFrameForCli,{debug:window.location.search.includes("debug")})})}));var t=typeof self<"u"?self:{};function e(lV,J){V:{for(var VV=["CLOSURE_FLAGS"],RV=t,UV=0;UV<VV.length;UV++)if((RV=RV[VV[UV]])==null){VV=null;break V}VV=RV}return(lV=VV&&VV[lV])!=null?lV:J}function n(){throw Error("Invalid UTF8")}function r(lV,J){return J=String.fromCharCode.apply(null,J),lV==null?J:lV+J}let i$1,s;const o=typeof TextDecoder<"u";let a;const h=typeof TextEncoder<"u";function c(lV){if(h)lV=(a||(a=new TextEncoder)).encode(lV);else{let VV=0;const RV=new Uint8Array(3*lV.length);for(let UV=0;UV<lV.length;UV++){var J=lV.charCodeAt(UV);if(J<128)RV[VV++]=J;else{if(J<2048)RV[VV++]=J>>6|192;else{if(J>=55296&&J<=57343){if(J<=56319&&UV<lV.length){const ZV=lV.charCodeAt(++UV);if(ZV>=56320&&ZV<=57343){J=1024*(J-55296)+ZV-56320+65536,RV[VV++]=J>>18|240,RV[VV++]=J>>12&63|128,RV[VV++]=J>>6&63|128,RV[VV++]=63&J|128;continue}UV--}J=65533}RV[VV++]=J>>12|224,RV[VV++]=J>>6&63|128}RV[VV++]=63&J|128}}lV=VV===RV.length?RV:RV.subarray(0,VV)}return lV}var u,l=e(610401301,!1),f=e(653718497,e(1,!0)),d=e(660014094,!1);const p=t.navigator;function g(lV){return!!l&&!!u&&u.brands.some(({brand:J})=>J&&J.indexOf(lV)!=-1)}function m(lV){var J;return(J=t.navigator)&&(J=J.userAgent)||(J=""),J.indexOf(lV)!=-1}function y(){return!!l&&!!u&&u.brands.length>0}function _(){return y()?g("Chromium"):(m("Chrome")||m("CriOS"))&&!(!y()&&m("Edge"))||m("Silk")}function v(lV){return v[" "](lV),lV}u=p&&p.userAgentData||null,v[" "]=function(){};var E=!y()&&(m("Trident")||m("MSIE"));!m("Android")||_(),_(),m("Safari")&&(_()||!y()&&m("Coast")||!y()&&m("Opera")||!y()&&m("Edge")||(y()?g("Microsoft Edge"):m("Edg/"))||y()&&g("Opera"));var w={},T=null;function A(lV){var J=lV.length,VV=3*J/4;VV%3?VV=Math.floor(VV):"=.".indexOf(lV[J-1])!=-1&&(VV="=.".indexOf(lV[J-2])!=-1?VV-2:VV-1);var RV=new Uint8Array(VV),UV=0;return function(ZV,WV){function IV(eV){for(;dV<ZV.length;){var JV=ZV.charAt(dV++),nV=T[JV];if(nV!=null)return nV;if(!/^[\s\xa0]*$/.test(JV))throw Error("Unknown base64 encoding at char: "+JV)}return eV}b();for(var dV=0;;){var CV=IV(-1),FV=IV(0),NV=IV(64),gV=IV(64);if(gV===64&&CV===-1)break;WV(CV<<2|FV>>4),NV!=64&&(WV(FV<<4&240|NV>>2),gV!=64&&WV(NV<<6&192|gV))}}(lV,function(ZV){RV[UV++]=ZV}),UV!==VV?RV.subarray(0,UV):RV}function b(){if(!T){T={};for(var lV="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),J=["+/=","+/","-_=","-_.","-_"],VV=0;VV<5;VV++){var RV=lV.concat(J[VV].split(""));w[VV]=RV;for(var UV=0;UV<RV.length;UV++){var ZV=RV[UV];T[ZV]===void 0&&(T[ZV]=UV)}}}}var k=typeof Uint8Array<"u",S=!E&&typeof btoa=="function";function x(lV){if(!S){var J;J===void 0&&(J=0),b(),J=w[J];var VV=Array(Math.floor(lV.length/3)),RV=J[64]||"";let dV=0,CV=0;for(;dV<lV.length-2;dV+=3){var UV=lV[dV],ZV=lV[dV+1],WV=lV[dV+2],IV=J[UV>>2];UV=J[(3&UV)<<4|ZV>>4],ZV=J[(15&ZV)<<2|WV>>6],WV=J[63&WV],VV[CV++]=IV+UV+ZV+WV}switch(IV=0,WV=RV,lV.length-dV){case 2:WV=J[(15&(IV=lV[dV+1]))<<2]||RV;case 1:lV=lV[dV],VV[CV]=J[lV>>2]+J[(3&lV)<<4|IV>>4]+WV+RV}return VV.join("")}for(J="",VV=0,RV=lV.length-10240;VV<RV;)J+=String.fromCharCode.apply(null,lV.subarray(VV,VV+=10240));return J+=String.fromCharCode.apply(null,VV?lV.subarray(VV):lV),btoa(J)}const L=/[-_.]/g,R={"-":"+",_:"/",".":"="};function F(lV){return R[lV]||""}function M(lV){if(!S)return A(lV);L.test(lV)&&(lV=lV.replace(L,F)),lV=atob(lV);const J=new Uint8Array(lV.length);for(let VV=0;VV<lV.length;VV++)J[VV]=lV.charCodeAt(VV);return J}function I(lV){return k&&lV!=null&&lV instanceof Uint8Array}var P={};let O;function C(lV){if(lV!==P)throw Error("illegal external caller")}function N(){return O||(O=new D(null,P))}function U(lV){C(P);var J=lV.ba;return(J=J==null||I(J)?J:typeof J=="string"?M(J):null)==null?J:lV.ba=J}var D=class{constructor(lV,J){if(C(J),this.ba=lV,lV!=null&&lV.length===0)throw Error("ByteString should be constructed with non-empty values")}ua(){return new Uint8Array(U(this)||0)}};function B(lV,J){lV.__closure__error__context__984382||(lV.__closure__error__context__984382={}),lV.__closure__error__context__984382.severity=J}let G;function j(){const lV=Error();B(lV,"incident"),function(J){t.setTimeout(()=>{throw J},0)}(lV)}function V(lV){return B(lV=Error(lV),"warning"),lV}function X(){return typeof BigInt=="function"}function H(lV){return Array.prototype.slice.call(lV)}var W=typeof Symbol=="function"&&typeof Symbol()=="symbol";function z(lV){return typeof Symbol=="function"&&typeof Symbol()=="symbol"?Symbol():lV}var K=z(),Y=z("0di"),$=z("2ex"),q=z("1oa"),Z=W?(lV,J)=>{lV[K]|=J}:(lV,J)=>{lV.G!==void 0?lV.G|=J:Object.defineProperties(lV,{G:{value:J,configurable:!0,writable:!0,enumerable:!1}})},Q=W?(lV,J)=>{lV[K]&=~J}:(lV,J)=>{lV.G!==void 0&&(lV.G&=~J)},tt=W?lV=>0|lV[K]:lV=>0|lV.G,et=W?lV=>lV[K]:lV=>lV.G,nt=W?(lV,J)=>{lV[K]=J}:(lV,J)=>{lV.G!==void 0?lV.G=J:Object.defineProperties(lV,{G:{value:J,configurable:!0,writable:!0,enumerable:!1}})};function rt(lV){return Z(lV,34),lV}function it(lV,J){nt(J,-14591&(0|lV))}function st(lV,J){nt(J,-14557&(34|lV))}var ot,at={},ht={};function ct(lV){return!(!lV||typeof lV!="object"||lV.La!==ht)}function ut(lV){return lV!==null&&typeof lV=="object"&&!Array.isArray(lV)&&lV.constructor===Object}function lt(lV,J,VV){if(lV!=null){if(typeof lV=="string")lV=lV?new D(lV,P):N();else if(lV.constructor!==D)if(I(lV))lV=lV.length?new D(VV?lV:new Uint8Array(lV),P):N();else{if(!J)throw Error();lV=void 0}}return lV}function ft(lV){return!(!Array.isArray(lV)||lV.length)&&!!(1&tt(lV))}const dt=[];function pt(lV){if(2&lV)throw Error()}nt(dt,55),ot=Object.freeze(dt);class gt{constructor(J,VV,RV){this.l=0,this.g=J,this.h=VV,this.m=RV}next(){if(this.l<this.g.length){const J=this.g[this.l++];return{done:!1,value:this.h?this.h.call(this.m,J):J}}return{done:!0,value:void 0}}[Symbol.iterator](){return new gt(this.g,this.h,this.m)}}let mt;function yt(lV,J){(J=mt?J[mt]:void 0)&&(lV[mt]=H(J))}var _t=Object.freeze({}),vt=Object.freeze({});function Et(lV){return lV.Sa=!0,lV}var wt=Et(lV=>typeof lV=="number"),Tt=Et(lV=>typeof lV=="string"),At=Et(lV=>typeof lV=="boolean"),bt=typeof t.BigInt=="function"&&typeof t.BigInt(0)=="bigint",kt=Et(lV=>bt?lV>=xt&&lV<=Rt:lV[0]==="-"?Ft(lV,St):Ft(lV,Lt));const St=Number.MIN_SAFE_INTEGER.toString(),xt=bt?BigInt(Number.MIN_SAFE_INTEGER):void 0,Lt=Number.MAX_SAFE_INTEGER.toString(),Rt=bt?BigInt(Number.MAX_SAFE_INTEGER):void 0;function Ft(lV,J){if(lV.length>J.length)return!1;if(lV.length<J.length||lV===J)return!0;for(let VV=0;VV<lV.length;VV++){const RV=lV[VV],UV=J[VV];if(RV>UV)return!1;if(RV<UV)return!0}}const Mt=typeof Uint8Array.prototype.slice=="function";let It,Pt=0,Ot=0;function Ct(lV){const J=lV>>>0;Pt=J,Ot=(lV-J)/4294967296>>>0}function Nt(lV){if(lV<0){Ct(-lV);const[J,VV]=Xt(Pt,Ot);Pt=J>>>0,Ot=VV>>>0}else Ct(lV)}function Ut(lV){const J=It||(It=new DataView(new ArrayBuffer(8)));J.setFloat32(0,+lV,!0),Ot=0,Pt=J.getUint32(0,!0)}function Dt(lV,J){return 4294967296*J+(lV>>>0)}function Bt(lV,J){const VV=2147483648&J;return VV&&(J=~J>>>0,(lV=1+~lV>>>0)==0&&(J=J+1>>>0)),lV=Dt(lV,J),VV?-lV:lV}function Gt(lV,J){if(lV>>>=0,(J>>>=0)<=2097151)var VV=""+(4294967296*J+lV);else X()?VV=""+(BigInt(J)<<BigInt(32)|BigInt(lV)):(lV=(16777215&lV)+6777216*(VV=16777215&(lV>>>24|J<<8))+6710656*(J=J>>16&65535),VV+=8147497*J,J*=2,lV>=1e7&&(VV+=lV/1e7>>>0,lV%=1e7),VV>=1e7&&(J+=VV/1e7>>>0,VV%=1e7),VV=J+jt(VV)+jt(lV));return VV}function jt(lV){return lV=String(lV),"0000000".slice(lV.length)+lV}function Vt(lV){if(lV.length<16)Nt(Number(lV));else if(X())lV=BigInt(lV),Pt=Number(lV&BigInt(4294967295))>>>0,Ot=Number(lV>>BigInt(32)&BigInt(4294967295));else{const J=+(lV[0]==="-");Ot=Pt=0;const VV=lV.length;for(let RV=J,UV=(VV-J)%6+J;UV<=VV;RV=UV,UV+=6){const ZV=Number(lV.slice(RV,UV));Ot*=1e6,Pt=1e6*Pt+ZV,Pt>=4294967296&&(Ot+=Math.trunc(Pt/4294967296),Ot>>>=0,Pt>>>=0)}if(J){const[RV,UV]=Xt(Pt,Ot);Pt=RV,Ot=UV}}}function Xt(lV,J){return J=~J,lV?lV=1+~lV:J+=1,[lV,J]}function Ht(lV){return lV==null||typeof lV=="number"?lV:lV==="NaN"||lV==="Infinity"||lV==="-Infinity"?Number(lV):void 0}function Wt(lV){return lV==null||typeof lV=="boolean"?lV:typeof lV=="number"?!!lV:void 0}const zt=/^-?([1-9][0-9]*|0)(\.[0-9]+)?$/;function Kt(lV){const J=typeof lV;switch(J){case"bigint":return!0;case"number":return Number.isFinite(lV)}return J==="string"&&zt.test(lV)}function Yt(lV){if(lV==null)return lV;if(typeof lV=="string"){if(!lV)return;lV=+lV}return typeof lV=="number"&&Number.isFinite(lV)?0|lV:void 0}function $t(lV){if(lV==null)return lV;if(typeof lV=="string"){if(!lV)return;lV=+lV}return typeof lV=="number"&&Number.isFinite(lV)?lV>>>0:void 0}function qt(lV){return lV[0]!=="-"&&(lV.length<20||lV.length===20&&Number(lV.substring(0,6))<184467)}function Jt(lV){return lV=Math.trunc(lV),Number.isSafeInteger(lV)||(Nt(lV),lV=Bt(Pt,Ot)),lV}function Zt(lV){var J=Math.trunc(Number(lV));if(Number.isSafeInteger(J))return String(J);if((J=lV.indexOf("."))!==-1&&(lV=lV.substring(0,J)),!(lV[0]==="-"?lV.length<20||lV.length===20&&Number(lV.substring(0,7))>-922337:lV.length<19||lV.length===19&&Number(lV.substring(0,6))<922337))if(Vt(lV),lV=Pt,2147483648&(J=Ot))if(X())lV=""+(BigInt(0|J)<<BigInt(32)|BigInt(lV>>>0));else{const[VV,RV]=Xt(lV,J);lV="-"+Gt(VV,RV)}else lV=Gt(lV,J);return lV}function Qt(lV){return lV==null?lV:typeof lV=="bigint"?(kt(lV)?lV=Number(lV):(lV=BigInt.asIntN(64,lV),lV=kt(lV)?Number(lV):String(lV)),lV):Kt(lV)?typeof lV=="number"?Jt(lV):Zt(lV):void 0}function te(lV){if(lV==null)return lV;var J=typeof lV;if(J==="bigint")return String(BigInt.asUintN(64,lV));if(Kt(lV)){if(J==="string")return J=Math.trunc(Number(lV)),Number.isSafeInteger(J)&&J>=0?lV=String(J):((J=lV.indexOf("."))!==-1&&(lV=lV.substring(0,J)),qt(lV)||(Vt(lV),lV=Gt(Pt,Ot))),lV;if(J==="number")return(lV=Math.trunc(lV))>=0&&Number.isSafeInteger(lV)?lV:function(VV){if(VV<0){Nt(VV);const RV=Gt(Pt,Ot);return VV=Number(RV),Number.isSafeInteger(VV)?VV:RV}return qt(String(VV))?VV:(Nt(VV),Dt(Pt,Ot))}(lV)}}function ee(lV){if(typeof lV!="string")throw Error();return lV}function ne(lV){if(lV!=null&&typeof lV!="string")throw Error();return lV}function re(lV){return lV==null||typeof lV=="string"?lV:void 0}function ie(lV,J,VV,RV){if(lV!=null&&typeof lV=="object"&&lV.Y===at)return lV;if(!Array.isArray(lV))return VV?2&RV?(lV=J[Y])?J=lV:(rt((lV=new J).u),J=J[Y]=lV):J=new J:J=void 0,J;let UV=VV=tt(lV);return UV===0&&(UV|=32&RV),UV|=2&RV,UV!==VV&&nt(lV,UV),new J(lV)}function se(lV,J,VV){if(J)V:{if(!Kt(J=lV))throw V("int64");switch(typeof J){case"string":J=Zt(J);break V;case"bigint":if(lV=J=BigInt.asIntN(64,J),Tt(lV)){if(!/^\s*(?:-?[1-9]\d*|0)?\s*$/.test(lV))throw Error(String(lV))}else if(wt(lV)&&!Number.isSafeInteger(lV))throw Error(String(lV));J=bt?BigInt(J):At(J)?J?"1":"0":Tt(J)?J.trim()||"0":String(J);break V;default:J=Jt(J)}}else J=Qt(lV);return typeof(VV=(lV=J)==null?VV?0:void 0:lV)=="string"&&(J=+VV,Number.isSafeInteger(J))?J:VV}function oe(lV){if(ce===void 0&&(ce=typeof Proxy=="function"?ye(Proxy):null),!ce||!me())return lV;let J=ae==null?void 0:ae.get(lV);return J||(Math.random()>.01?lV:(function(VV){if(le===void 0){const RV=new ce([],{});le=Array.prototype.concat.call([],RV).length===1}le&&typeof Symbol=="function"&&Symbol.isConcatSpreadable&&(VV[Symbol.isConcatSpreadable]=!0)}(lV),J=new ce(lV,{set:(VV,RV,UV)=>(j(),VV[RV]=UV,!0)}),function(VV,RV){(ae||(ae=new ue)).set(VV,RV),(he||(he=new ue)).set(RV,VV)}(lV,J),J))}let ae,he,ce,ue,le,fe,de,pe,ge;function me(){return ue===void 0&&(ue=typeof WeakMap=="function"?ye(WeakMap):null),ue}function ye(lV){try{return lV.toString().indexOf("[native code]")!==-1?lV:null}catch{return null}}function _e(lV,J,VV){var WV;if(f&&me()){if((WV=fe==null?void 0:fe.get(J))!=null&&WV.get(lV)){if(VV)return}else if(Math.random()>.01)return;var RV=lV.length;VV={length:RV};for(var UV=0;UV<Math.min(RV,10);UV++){if(RV<=10)var ZV=UV;else{ZV=RV/10;const IV=Math.floor(UV*ZV);ZV=IV+Math.floor(Math.random()*(Math.floor((UV+1)*ZV)-IV))}VV[ZV]=lV[ZV]}Ee(lV,VV)?((UV=(RV=fe||(fe=new ue)).get(J))||(UV=new ue,RV.set(J,UV)),UV.set(lV,VV)):(j(),Te(lV,J))}}function ve(lV,J){var RV;const VV=(RV=fe==null?void 0:fe.get(J))==null?void 0:RV.get(lV);VV&&!Ee(lV,VV)&&(j(),Te(lV,J))}function Ee(lV,J){if(lV.length!==J.length)return!1;for(const UV in J){var VV,RV=Number(UV);if((VV=Number.isInteger(RV))&&(VV=lV[RV],RV=J[RV],VV=!(Number.isNaN(VV)?Number.isNaN(RV):VV===RV)),VV)return!1}return!0}function we(lV){if(lV&&(fe!=null&&fe.has(lV))){var J=lV.u;if(J)for(let VV=0;VV<J.length;VV++){const RV=J[VV];if(VV===J.length-1&&ut(RV))for(const UV in RV){const ZV=RV[UV];Array.isArray(ZV)&&ve(ZV,lV)}else Array.isArray(RV)&&ve(RV,lV)}}}function Te(lV,J){var VV;(VV=fe==null?void 0:fe.get(J))==null||VV.delete(lV)}function Ae(lV,J){return lV=be(lV,J[0],J[1]),Z(lV,16384),lV}function be(lV,J,VV){if(lV==null&&(lV=de),de=void 0,lV==null){var RV=96;VV?(lV=[VV],RV|=512):lV=[],J&&(RV=-33521665&RV|(1023&J)<<15)}else{if(!Array.isArray(lV))throw Error("narr");if(2048&(RV=tt(lV)))throw Error("farr");if(64&RV)return lV;if(RV|=64,VV&&(RV|=512,VV!==lV[0]))throw Error("mid");V:{const UV=(VV=lV).length;if(UV){const ZV=UV-1;if(ut(VV[ZV])){if((J=ZV-(+!!(512&(RV|=256))-1))>=1024)throw Error("pvtlmt");RV=-33521665&RV|(1023&J)<<15;break V}}if(J){if((J=Math.max(J,UV-(+!!(512&RV)-1)))>1024)throw Error("spvt");RV=-33521665&RV|(1023&J)<<15}}}return nt(lV,RV),lV}const ke={};let Se=function(){try{return v(new class extends Map{constructor(){super()}}),!1}catch{return!0}}();class xe{constructor(){this.g=new Map}get(J){return this.g.get(J)}set(J,VV){return this.g.set(J,VV),this.size=this.g.size,this}delete(J){return J=this.g.delete(J),this.size=this.g.size,J}clear(){this.g.clear(),this.size=this.g.size}has(J){return this.g.has(J)}entries(){return this.g.entries()}keys(){return this.g.keys()}values(){return this.g.values()}forEach(J,VV){return this.g.forEach(J,VV)}[Symbol.iterator](){return this.entries()}}const Le=Se?(Object.setPrototypeOf(xe.prototype,Map.prototype),Object.defineProperties(xe.prototype,{size:{value:0,configurable:!0,enumerable:!0,writable:!0}}),xe):class extends Map{constructor(){super()}};function Re(lV){return lV}function Fe(lV){if(2&lV.M)throw Error("Cannot mutate an immutable Map")}var Me=class extends Le{constructor(lV,J,VV=Re,RV=Re){super();let UV=tt(lV);UV|=64,nt(lV,UV),this.M=UV,this.U=J,this.T=VV,this.aa=this.U?Ie:RV;for(let ZV=0;ZV<lV.length;ZV++){const WV=lV[ZV],IV=VV(WV[0],!1,!0);let dV=WV[1];J?dV===void 0&&(dV=null):dV=RV(WV[1],!1,!0,void 0,void 0,UV),super.set(IV,dV)}}pa(lV=Pe){if(this.size!==0)return this.Z(lV)}Z(lV=Pe){const J=[],VV=super.entries();for(var RV;!(RV=VV.next()).done;)(RV=RV.value)[0]=lV(RV[0]),RV[1]=lV(RV[1]),J.push(RV);return J}clear(){Fe(this),super.clear()}delete(lV){return Fe(this),super.delete(this.T(lV,!0,!1))}entries(){var lV=this.oa();return new gt(lV,Oe,this)}keys(){return this.Ka()}values(){var lV=this.oa();return new gt(lV,Me.prototype.get,this)}forEach(lV,J){super.forEach((VV,RV)=>{lV.call(J,this.get(RV),RV,this)})}set(lV,J){return Fe(this),(lV=this.T(lV,!0,!1))==null?this:J==null?(super.delete(lV),this):super.set(lV,this.aa(J,!0,!0,this.U,!1,this.M))}Qa(lV){const J=this.T(lV[0],!1,!0);lV=lV[1],lV=this.U?lV===void 0?null:lV:this.aa(lV,!1,!0,void 0,!1,this.M),super.set(J,lV)}has(lV){return super.has(this.T(lV,!1,!1))}get(lV){lV=this.T(lV,!1,!1);const J=super.get(lV);if(J!==void 0){var VV=this.U;return VV?((VV=this.aa(J,!1,!0,VV,this.va,this.M))!==J&&super.set(lV,VV),VV):J}}oa(){return Array.from(super.keys())}Ka(){return super.keys()}[Symbol.iterator](){return this.entries()}};function Ie(lV,J,VV,RV,UV,ZV){return lV=ie(lV,RV,VV,ZV),UV&&(lV=He(lV)),lV}function Pe(lV){return lV}function Oe(lV){return[lV,this.get(lV)]}let Ce;function Ne(){return Ce||(Ce=new Me(rt([]),void 0,void 0,void 0,ke))}function Ue(lV,J,VV,RV,UV){if(lV!=null){if(Array.isArray(lV))lV=ft(lV)?void 0:UV&&2&tt(lV)?lV:De(lV,J,VV,RV!==void 0,UV);else if(ut(lV)){const ZV={};for(let WV in lV)ZV[WV]=Ue(lV[WV],J,VV,RV,UV);lV=ZV}else lV=J(lV,RV);return lV}}function De(lV,J,VV,RV,UV){const ZV=RV||VV?tt(lV):0;RV=RV?!!(32&ZV):void 0;const WV=H(lV);for(let IV=0;IV<WV.length;IV++)WV[IV]=Ue(WV[IV],J,VV,RV,UV);return VV&&(yt(WV,lV),VV(ZV,WV)),WV}function Be(lV){return Ue(lV,Ge,void 0,void 0,!1)}function Ge(lV){return lV.Y===at?lV.toJSON():lV instanceof Me?lV.pa(Be):function(J){switch(typeof J){case"number":return isFinite(J)?J:String(J);case"bigint":return kt(J)?Number(J):String(J);case"boolean":return J?1:0;case"object":if(J)if(Array.isArray(J)){if(ft(J))return}else{if(I(J))return x(J);if(J instanceof D){const VV=J.ba;return VV==null?"":typeof VV=="string"?VV:J.ba=x(VV)}if(J instanceof Me)return J.pa()}}return J}(lV)}function je(lV,J,VV=st){if(lV!=null){if(k&&lV instanceof Uint8Array)return J?lV:new Uint8Array(lV);if(Array.isArray(lV)){var RV=tt(lV);return 2&RV?lV:(J&&(J=RV===0||!!(32&RV)&&!(64&RV||!(16&RV))),J?(nt(lV,-12293&(34|RV)),lV):De(lV,je,4&RV?st:VV,!0,!0))}return lV.Y===at?(VV=lV.u,lV=2&(RV=et(VV))?lV:Ve(lV,VV,RV,!0)):lV instanceof Me&&!(2&lV.M)&&(VV=rt(lV.Z(je)),lV=new Me(VV,lV.U,lV.T,lV.aa)),lV}}function Ve(lV,J,VV,RV){return we(lV),lV=lV.constructor,de=J=Xe(J,VV,RV),J=new lV(J),de=void 0,J}function Xe(lV,J,VV){const RV=VV||2&J?st:it,UV=!!(32&J);return lV=function(ZV,WV,IV){const dV=H(ZV);var CV=dV.length;const FV=256&WV?dV[CV-1]:void 0;for(CV+=FV?-1:0,WV=512&WV?1:0;WV<CV;WV++)dV[WV]=IV(dV[WV]);if(FV){WV=dV[WV]={};for(const NV in FV)WV[NV]=IV(FV[NV])}return yt(dV,ZV),dV}(lV,J,ZV=>je(ZV,UV,RV)),Z(lV,32|(VV?2:0)),lV}function He(lV){const J=lV.u,VV=et(J);return 2&VV?Ve(lV,J,VV,!1):lV}function We(lV,J,VV,RV){return!(4&J)||VV!=null}function ze(lV,J){return Ye(lV=lV.u,et(lV),J)}function Ke(lV,J,VV,RV){if(!((J=RV+(+!!(512&J)-1))<0||J>=lV.length||J>=VV))return lV[J]}function Ye(lV,J,VV,RV){if(VV===-1)return null;const UV=J>>15&1023||536870912;if(!(VV>=UV)){var ZV=lV.length;return RV&&256&J&&(RV=lV[ZV-1][VV])!=null?(Ke(lV,J,UV,VV)&&$!=null&&((J=(lV=G??(G={}))[$]||0)>=4||(lV[$]=J+1,j())),RV):Ke(lV,J,UV,VV)}return 256&J?lV[lV.length-1][VV]:void 0}function $e(lV,J,VV){const RV=lV.u;let UV=et(RV);return pt(UV),qe(RV,UV,J,VV),lV}function qe(lV,J,VV,RV){const UV=J>>15&1023||536870912;if(VV>=UV){let ZV,WV=J;if(256&J)ZV=lV[lV.length-1];else{if(RV==null)return WV;ZV=lV[UV+(+!!(512&J)-1)]={},WV|=256}return ZV[VV]=RV,VV<UV&&(lV[VV+(+!!(512&J)-1)]=void 0),WV!==J&&nt(lV,WV),WV}return lV[VV+(+!!(512&J)-1)]=RV,256&J&&VV in(lV=lV[lV.length-1])&&delete lV[VV],J}function Je(lV,J,VV,RV,UV){var ZV=2&J;UV=Ye(lV,J,VV,UV),Array.isArray(UV)||(UV=ot);const WV=!(2&RV);RV=!(1&RV);const IV=!!(32&J);let dV=tt(UV);return dV!==0||!IV||ZV||WV?1&dV||(dV|=1,nt(UV,dV)):(dV|=33,nt(UV,dV)),ZV?(lV=!1,2&dV||(rt(UV),lV=!!(4&dV)),(RV||lV)&&Object.freeze(UV)):(ZV=!!(2&dV)||!!(2048&dV),RV&&ZV?(UV=H(UV),ZV=1,IV&&!WV&&(ZV|=32),nt(UV,ZV),qe(lV,J,VV,UV)):WV&&32&dV&&!ZV&&Q(UV,32)),UV}function Ze(lV,J){lV=lV.u;let VV=et(lV);const RV=Ye(lV,VV,J),UV=Ht(RV);return UV!=null&&UV!==RV&&qe(lV,VV,J,UV),UV}function Qe(lV){lV=lV.u;let J=et(lV);const VV=Ye(lV,J,1),RV=lt(VV,!0,!!(34&J));return RV!=null&&RV!==VV&&qe(lV,J,1,RV),RV}function tn(){return _t===void 0?2:5}function en(lV,J,VV,RV,UV,ZV){const WV=lV.u;let IV=et(WV);RV=2&IV?1:RV,ZV=!!ZV,UV=nn(WV,IV,J,UV);var dV=tt(UV),CV=UV;if(ve(CV,lV),RV!==2&&RV!==1||Te(CV,lV),We(lV,dV,void 0)){4&dV&&(UV=H(UV),dV=vn(dV,IV),IV=qe(WV,IV,J,UV));let NV=CV=0;for(;CV<UV.length;CV++){const gV=VV(UV[CV]);gV!=null&&(UV[NV++]=gV)}NV<CV&&(UV.length=NV),dV=-4097&(20|(dV=rn(dV,IV))),nt(UV,dV&=-8193),2&dV&&Object.freeze(UV)}let FV;return RV===1||RV===4&&32&dV?sn(dV)||(lV=dV,(dV|=2)!==lV&&nt(UV,dV),Object.freeze(UV)):(VV=RV===5&&(!!(32&dV)||sn(dV)||!!(ae!=null&&ae.get(UV))),(RV===2||VV)&&sn(dV)&&(UV=H(UV),dV=En(dV=vn(dV,IV),IV,ZV),nt(UV,dV),IV=qe(WV,IV,J,UV)),sn(dV)||(J=dV,(dV=En(dV,IV,ZV))!==J&&nt(UV,dV)),VV?(FV=oe(UV),_e(UV,lV,!0)):RV!==2||ZV||(ae==null||ae.delete(UV))),FV||UV}function nn(lV,J,VV,RV){return lV=Ye(lV,J,VV,RV),Array.isArray(lV)?lV:ot}function rn(lV,J){return lV===0&&(lV=vn(lV,J)),1|lV}function sn(lV){return!!(2&lV)&&!!(4&lV)||!!(2048&lV)}function on(lV){lV=H(lV);for(let J=0;J<lV.length;J++){const VV=lV[J]=H(lV[J]);Array.isArray(VV[1])&&(VV[1]=rt(VV[1]))}return lV}function an(lV,J,VV,RV){lV=lV.u;let UV=et(lV);pt(UV),qe(lV,UV,J,(RV==="0"?Number(VV)===0:VV===RV)?void 0:VV)}function hn(lV,J){var VV=_s;return ln(cn(lV=lV.u),lV,et(lV),VV)===J?J:-1}function cn(lV){if(W)return lV[q]??(lV[q]=new Map);if(q in lV)return lV[q];const J=new Map;return Object.defineProperty(lV,q,{value:J}),J}function un(lV,J,VV,RV){const UV=cn(lV),ZV=ln(UV,lV,J,VV);return ZV!==RV&&(ZV&&(J=qe(lV,J,ZV)),UV.set(VV,RV)),J}function ln(lV,J,VV,RV){let UV=lV.get(RV);if(UV!=null)return UV;UV=0;for(let ZV=0;ZV<RV.length;ZV++){const WV=RV[ZV];Ye(J,VV,WV)!=null&&(UV!==0&&(VV=qe(J,VV,UV)),UV=WV)}return lV.set(RV,UV),UV}function fn(lV,J,VV,RV){let UV,ZV=et(lV);if((RV=Ye(lV,ZV,VV,RV))!=null&&RV.Y===at)return(J=He(RV))!==RV&&qe(lV,ZV,VV,J),J.u;if(Array.isArray(RV)){const WV=tt(RV);UV=2&WV?Xe(RV,WV,!1):RV,UV=Ae(UV,J)}else UV=Ae(void 0,J);return UV!==RV&&qe(lV,ZV,VV,UV),UV}function dn(lV,J,VV,RV){lV=lV.u;let UV=et(lV);return(J=ie(RV=Ye(lV,UV,VV,RV),J,!1,UV))!==RV&&J!=null&&qe(lV,UV,VV,J),J}function pn(lV,J,VV,RV=!1){if((J=dn(lV,J,VV,RV))==null)return J;if(lV=lV.u,!(2&(RV=et(lV)))){const UV=He(J);UV!==J&&qe(lV,RV,VV,J=UV)}return J}function gn(lV,J,VV,RV,UV,ZV,WV){const IV=lV.u;var dV=!!(2&J);UV=dV?1:UV,ZV=!!ZV,WV&&(WV=!dV),dV=nn(IV,J,RV);var CV=tt(dV),FV=dV;if(ve(FV,lV),UV!==2&&UV!==1||Te(FV,lV),!(FV=!!(4&CV))){var NV=dV,gV=J;const JV=!!(2&(CV=rn(CV,J)));JV&&(gV|=2);let nV=!JV,aV=!0,GV=0,cV=0;for(;GV<NV.length;GV++){const TV=ie(NV[GV],VV,!1,gV);if(TV instanceof VV){if(!JV){const iV=!!(2&tt(TV.u));nV&&(nV=!iV),aV&&(aV=iV)}NV[cV++]=TV}}cV<GV&&(NV.length=cV),CV|=4,CV=aV?16|CV:-17&CV,nt(NV,CV=nV?8|CV:-9&CV),JV&&Object.freeze(NV)}if(WV&&!(8&CV||!dV.length&&(UV===1||UV===4&&32&CV))){for(sn(CV)?(dV=H(dV),CV=vn(CV,J),J=qe(IV,J,RV,dV)):Te(dV,lV),VV=dV,WV=CV,NV=0;NV<VV.length;NV++)(CV=VV[NV])!==(gV=He(CV))&&(VV[NV]=gV);WV|=8,WV=VV.length?-17&WV:16|WV,nt(VV,WV),CV=WV}let eV;return UV===1||UV===4&&32&CV?sn(CV)||(lV=CV,(CV|=!dV.length||16&CV&&(!FV||32&CV)?2:2048)!==lV&&nt(dV,CV),Object.freeze(dV)):(FV=UV===5&&(!!(32&CV)||sn(CV)||!!(ae!=null&&ae.get(dV))),(UV===2||FV)&&sn(CV)&&(dV=H(dV),CV=En(CV=vn(CV,J),J,ZV),nt(dV,CV),J=qe(IV,J,RV,dV)),sn(CV)||(RV=CV,(CV=En(CV,J,ZV))!==RV&&nt(dV,CV)),FV?(eV=oe(dV),_e(dV,lV,!0)):UV!==2||ZV||(ae==null||ae.delete(dV))),eV||dV}function mn(lV,J,VV){const RV=et(lV.u);return gn(lV,RV,J,VV,tn(),!1,!(2&RV))}function yn(lV,J,VV,RV){return RV==null&&(RV=void 0),$e(lV,VV,RV)}function _n(lV,J,VV,RV){RV==null&&(RV=void 0);V:{lV=lV.u;let UV=et(lV);if(pt(UV),RV==null){const ZV=cn(lV);if(ln(ZV,lV,UV,VV)!==J)break V;ZV.set(VV,0)}else UV=un(lV,UV,VV,J);qe(lV,UV,J,RV)}}function vn(lV,J){return-2049&(lV=32|(2&J?2|lV:-3&lV))}function En(lV,J,VV){return 32&J&&VV||(lV&=-33),lV}function wn(lV,J,VV,RV){const UV=et(lV.u);pt(UV),lV=gn(lV,UV,VV,J,2,!0),VV=RV??new VV,lV.push(VV),2&tt(VV.u)?Q(lV,8):Q(lV,16)}function Tn(lV,J){return lV??J}function An(lV,J){return Yt(ze(lV,J))}function bn(lV,J){return Tn(Ze(lV,J),0)}function kn(lV,J){return Tn(re(ze(lV,J)),"")}function Sn(lV,J,VV){if(VV!=null&&typeof VV!="boolean")throw lV=typeof VV,Error(`Expected boolean but got ${lV!="object"?lV:VV?Array.isArray(VV)?"array":lV:"null"}: ${VV}`);$e(lV,J,VV)}function xn(lV,J,VV){if(VV!=null){if(typeof VV!="number"||!Number.isFinite(VV))throw V("int32");VV|=0}$e(lV,J,VV)}function Ln(lV,J,VV){if(VV!=null&&typeof VV!="number")throw Error(`Value of float/double field must be a number, found ${typeof VV}: ${VV}`);$e(lV,J,VV)}function Rn(lV,J,VV){{const IV=lV.u;let dV=et(IV);if(pt(dV),VV==null)qe(IV,dV,J);else{VV=(he==null?void 0:he.get(VV))||VV;var RV,UV=tt(VV),ZV=UV,WV=!!(2&UV)||Object.isFrozen(VV);if((RV=!WV)&&(RV=vt===void 0||!1),We(lV,UV)){UV=21,WV&&(VV=H(VV),ZV=0,UV=En(UV=vn(UV,dV),dV,!0));for(let CV=0;CV<VV.length;CV++)VV[CV]=ee(VV[CV])}RV?(VV=H(VV),ZV=0,UV=En(UV=vn(UV,dV),dV,!0)):WV||_e(VV,lV),UV!==ZV&&nt(VV,UV),qe(IV,dV,J,VV)}}}function Fn(lV,J,VV){pt(et(lV.u)),en(lV,J,re,2,void 0,!0).push(ee(VV))}function Mn(lV,J){return Error(`Invalid wire type: ${lV} (at position ${J})`)}function In(){return Error("Failed to read varint, encoding is invalid.")}function Pn(lV,J){return Error(`Tried to read past the end of the data ${J} > ${lV}`)}function On(lV){if(typeof lV=="string")return{buffer:M(lV),O:!1};if(Array.isArray(lV))return{buffer:new Uint8Array(lV),O:!1};if(lV.constructor===Uint8Array)return{buffer:lV,O:!1};if(lV.constructor===ArrayBuffer)return{buffer:new Uint8Array(lV),O:!1};if(lV.constructor===D)return{buffer:U(lV)||new Uint8Array(0),O:!0};if(lV instanceof Uint8Array)return{buffer:new Uint8Array(lV.buffer,lV.byteOffset,lV.byteLength),O:!1};throw Error("Type not convertible to a Uint8Array, expected a Uint8Array, an ArrayBuffer, a base64 encoded string, a ByteString or an Array of numbers")}function Cn(lV,J){let VV,RV=0,UV=0,ZV=0;const WV=lV.h;let IV=lV.g;do VV=WV[IV++],RV|=(127&VV)<<ZV,ZV+=7;while(ZV<32&&128&VV);for(ZV>32&&(UV|=(127&VV)>>4),ZV=3;ZV<32&&128&VV;ZV+=7)VV=WV[IV++],UV|=(127&VV)<<ZV;if(Xn(lV,IV),VV<128)return J(RV>>>0,UV>>>0);throw In()}function Nn(lV){let J=0,VV=lV.g;const RV=VV+10,UV=lV.h;for(;VV<RV;){const ZV=UV[VV++];if(J|=ZV,(128&ZV)==0)return Xn(lV,VV),!!(127&J)}throw In()}function Un(lV){const J=lV.h;let VV=lV.g,RV=J[VV++],UV=127&RV;if(128&RV&&(RV=J[VV++],UV|=(127&RV)<<7,128&RV&&(RV=J[VV++],UV|=(127&RV)<<14,128&RV&&(RV=J[VV++],UV|=(127&RV)<<21,128&RV&&(RV=J[VV++],UV|=RV<<28,128&RV&&128&J[VV++]&&128&J[VV++]&&128&J[VV++]&&128&J[VV++]&&128&J[VV++])))))throw In();return Xn(lV,VV),UV}function Dn(lV){return Un(lV)>>>0}function Bn(lV){var J=lV.h;const VV=lV.g,RV=J[VV],UV=J[VV+1],ZV=J[VV+2];return J=J[VV+3],Xn(lV,lV.g+4),(RV<<0|UV<<8|ZV<<16|J<<24)>>>0}function Gn(lV){var J=Bn(lV);lV=2*(J>>31)+1;const VV=J>>>23&255;return J&=8388607,VV==255?J?NaN:lV*(1/0):VV==0?1401298464324817e-60*lV*J:lV*Math.pow(2,VV-150)*(J+8388608)}function jn(lV){return Un(lV)}function Vn(lV,J,{ea:VV=!1}={}){lV.ea=VV,J&&(J=On(J),lV.h=J.buffer,lV.m=J.O,lV.j=0,lV.l=lV.h.length,lV.g=lV.j)}function Xn(lV,J){if(lV.g=J,J>lV.l)throw Pn(lV.l,J)}function Hn(lV,J){if(J<0)throw Error(`Tried to read a negative byte length: ${J}`);const VV=lV.g,RV=VV+J;if(RV>lV.l)throw Pn(J,lV.l-VV);return lV.g=RV,VV}function Wn(lV,J){if(J==0)return N();var VV=Hn(lV,J);return lV.ea&&lV.m?VV=lV.h.subarray(VV,VV+J):(lV=lV.h,VV=VV===(J=VV+J)?new Uint8Array(0):Mt?lV.slice(VV,J):new Uint8Array(lV.subarray(VV,J))),VV.length==0?N():new D(VV,P)}Me.prototype.toJSON=void 0,Me.prototype.La=ht;var zn=[];function Kn(lV){var J=lV.g;if(J.g==J.l)return!1;lV.l=lV.g.g;var VV=Dn(lV.g);if(J=VV>>>3,!((VV&=7)>=0&&VV<=5))throw Mn(VV,lV.l);if(J<1)throw Error(`Invalid field number: ${J} (at position ${lV.l})`);return lV.m=J,lV.h=VV,!0}function Yn(lV){switch(lV.h){case 0:lV.h!=0?Yn(lV):Nn(lV.g);break;case 1:Xn(lV=lV.g,lV.g+8);break;case 2:if(lV.h!=2)Yn(lV);else{var J=Dn(lV.g);Xn(lV=lV.g,lV.g+J)}break;case 5:Xn(lV=lV.g,lV.g+4);break;case 3:for(J=lV.m;;){if(!Kn(lV))throw Error("Unmatched start-group tag: stream EOF");if(lV.h==4){if(lV.m!=J)throw Error("Unmatched end-group tag");break}Yn(lV)}break;default:throw Mn(lV.h,lV.l)}}function $n(lV,J,VV){const RV=lV.g.l,UV=Dn(lV.g),ZV=lV.g.g+UV;let WV=ZV-RV;if(WV<=0&&(lV.g.l=ZV,VV(J,lV,void 0,void 0,void 0),WV=ZV-lV.g.g),WV)throw Error(`Message parsing ended unexpectedly. Expected to read ${UV} bytes, instead read ${UV-WV} bytes, either the data ended unexpectedly or the message misreported its own length`);return lV.g.g=ZV,lV.g.l=RV,J}function qn(lV){var J=Dn(lV.g),VV=Hn(lV=lV.g,J);if(lV=lV.h,o){var RV,UV=lV;(RV=s)||(RV=s=new TextDecoder("utf-8",{fatal:!0})),J=VV+J,UV=VV===0&&J===UV.length?UV:UV.subarray(VV,J);try{var ZV=RV.decode(UV)}catch(IV){if(i$1===void 0){try{RV.decode(new Uint8Array([128]))}catch{}try{RV.decode(new Uint8Array([97])),i$1=!0}catch{i$1=!1}}throw!i$1&&(s=void 0),IV}}else{J=(ZV=VV)+J,VV=[];let IV,dV=null;for(;ZV<J;){var WV=lV[ZV++];WV<128?VV.push(WV):WV<224?ZV>=J?n():(IV=lV[ZV++],WV<194||(192&IV)!=128?(ZV--,n()):VV.push((31&WV)<<6|63&IV)):WV<240?ZV>=J-1?n():(IV=lV[ZV++],(192&IV)!=128||WV===224&&IV<160||WV===237&&IV>=160||(192&(RV=lV[ZV++]))!=128?(ZV--,n()):VV.push((15&WV)<<12|(63&IV)<<6|63&RV)):WV<=244?ZV>=J-2?n():(IV=lV[ZV++],(192&IV)!=128||IV-144+(WV<<28)>>30||(192&(RV=lV[ZV++]))!=128||(192&(UV=lV[ZV++]))!=128?(ZV--,n()):(WV=(7&WV)<<18|(63&IV)<<12|(63&RV)<<6|63&UV,WV-=65536,VV.push(55296+(WV>>10&1023),56320+(1023&WV)))):n(),VV.length>=8192&&(dV=r(dV,VV),VV.length=0)}ZV=r(dV,VV)}return ZV}function Jn(lV){const J=Dn(lV.g);return Wn(lV.g,J)}function Zn(lV,J,VV){var RV=Dn(lV.g);for(RV=lV.g.g+RV;lV.g.g<RV;)VV.push(J(lV.g))}var Qn=[];let tr;function er(lV,J,VV){J.g?J.m(lV,J.g,J.h,VV,!0):J.m(lV,J.h,VV,!0)}var nr=class{constructor(lV,J){this.u=be(lV,J)}toJSON(){return rr(this)}l(){var lV=vo;return lV.g?lV.l(this,lV.g,lV.h,!0):lV.l(this,lV.h,lV.defaultValue,!0)}clone(){const lV=this.u;return Ve(this,lV,et(lV),!1)}O(){return!!(2&tt(this.u))}};function rr(lV){we(lV),lV=tr?lV.u:De(lV.u,Ge,void 0,void 0,!1);{var J=!tr;let CV=lV.length;if(CV){var VV=lV[CV-1],RV=ut(VV);RV?CV--:VV=void 0;var UV=lV;if(RV){V:{var ZV,WV=VV,IV=!1;if(WV)for(let FV in WV)isNaN(+FV)?(ZV??(ZV={}))[FV]=WV[FV]:(RV=WV[FV],Array.isArray(RV)&&(ft(RV)||ct(RV)&&RV.size===0)&&(RV=null),RV==null&&(IV=!0),RV!=null&&((ZV??(ZV={}))[FV]=RV));if(IV||(ZV=WV),ZV)for(let FV in ZV){IV=ZV;break V}IV=null}WV=IV==null?VV!=null:IV!==VV}for(;CV>0&&((ZV=UV[CV-1])==null||ft(ZV)||ct(ZV)&&ZV.size===0);CV--)var dV=!0;(UV!==lV||WV||dV)&&(J?(dV||WV||IV)&&(UV.length=CV):UV=Array.prototype.slice.call(UV,0,CV),IV&&UV.push(IV)),dV=UV}else dV=lV}return dV}function ir(lV){return lV?/^\d+$/.test(lV)?(Vt(lV),new sr(Pt,Ot)):null:or||(or=new sr(0,0))}nr.prototype.Y=at,nr.prototype.toString=function(){try{return tr=!0,rr(this).toString()}finally{tr=!1}};var sr=class{constructor(lV,J){this.h=lV>>>0,this.g=J>>>0}};let or;function ar(lV){return lV?/^-?\d+$/.test(lV)?(Vt(lV),new hr(Pt,Ot)):null:cr||(cr=new hr(0,0))}var hr=class{constructor(lV,J){this.h=lV>>>0,this.g=J>>>0}};let cr;function ur(lV,J,VV){for(;VV>0||J>127;)lV.g.push(127&J|128),J=(J>>>7|VV<<25)>>>0,VV>>>=7;lV.g.push(J)}function lr(lV,J){for(;J>127;)lV.g.push(127&J|128),J>>>=7;lV.g.push(J)}function fr(lV,J){if(J>=0)lr(lV,J);else{for(let VV=0;VV<9;VV++)lV.g.push(127&J|128),J>>=7;lV.g.push(1)}}function dr(lV,J){lV.g.push(J>>>0&255),lV.g.push(J>>>8&255),lV.g.push(J>>>16&255),lV.g.push(J>>>24&255)}function pr(lV,J){J.length!==0&&(lV.l.push(J),lV.h+=J.length)}function gr(lV,J,VV){lr(lV.g,8*J+VV)}function mr(lV,J){return gr(lV,J,2),J=lV.g.end(),pr(lV,J),J.push(lV.h),J}function yr(lV,J){var VV=J.pop();for(VV=lV.h+lV.g.length()-VV;VV>127;)J.push(127&VV|128),VV>>>=7,lV.h++;J.push(VV),lV.h++}function _r(lV,J,VV){gr(lV,J,2),lr(lV.g,VV.length),pr(lV,lV.g.end()),pr(lV,VV)}function vr(lV,J,VV,RV){VV!=null&&(J=mr(lV,J),RV(VV,lV),yr(lV,J))}class Er{constructor(J,VV,RV){this.g=J,this.h=VV,this.qa=RV}}function wr(lV){return Array.isArray(lV)?lV[0]instanceof Er?lV:[gi,lV]:[lV,void 0]}function Tr(lV,J){if(Array.isArray(J)){var VV=tt(J);if(4&VV)return J;for(var RV=0,UV=0;RV<J.length;RV++){const ZV=lV(J[RV]);ZV!=null&&(J[UV++]=ZV)}return UV<RV&&(J.length=UV),nt(J,-12289&(5|VV)),2&VV&&Object.freeze(J),J}}const Ar=Symbol();function br(lV){let J=lV[Ar];if(!J){const VV=Ur(lV),RV=VV.h;J=RV?(UV,ZV)=>RV(UV,ZV,VV):(UV,ZV)=>{var CV;for(;Kn(ZV)&&ZV.h!=4;){var WV=ZV.m;let FV=VV[WV];const NV=!FV;let gV=!1;if(!FV){var IV=VV.X;if(IV){var dV=IV[WV];dV&&(gV=(CV=IV.P)==null?void 0:CV[WV],(!d||gV)&&(IV=kr(dV))&&(FV=VV[WV]=IV))}}FV&&FV(ZV,UV,WV)||(WV=(IV=ZV).l,Yn(IV),IV.ja?IV=void 0:(dV=IV.g.g-WV,IV.g.g=WV,IV=Wn(IV.g,dV)),WV=UV,IV&&(mt||(mt=Symbol()),(dV=WV[mt])?dV.push(IV):WV[mt]=[IV])),NV&&FV&&!gV&&Wr++<5&&j()}},lV[Ar]=J}return J}function kr(lV){const J=(lV=wr(lV))[0].g;if(lV=lV[1]){const VV=br(lV),RV=Ur(lV).g;return(UV,ZV,WV)=>J(UV,ZV,WV,RV,VV)}return J}function Sr(lV,J,VV){lV[J]=VV}function xr(lV,J,VV,RV){var UV=Sr;J.g=function(NV){switch(typeof NV){case"boolean":return pe||(pe=[0,void 0,!0]);case"number":return NV>0?void 0:NV===0?ge||(ge=[0,void 0]):[-NV,void 0];case"string":return[0,NV];case"object":return NV}}(lV[0]);let ZV=0;var WV=lV[++ZV];WV&&WV.constructor===Object&&(J.X=WV,typeof(WV=lV[++ZV])=="function"&&(J.h=WV,J.l=lV[++ZV],WV=lV[++ZV]));const IV={};for(;Array.isArray(WV)&&typeof WV[0]=="number"&&WV[0]>0;){for(var dV=0;dV<WV.length;dV++)IV[WV[dV]]=WV;WV=lV[++ZV]}for(dV=1;WV!==void 0;){let NV;typeof WV=="number"&&(dV+=WV,WV=lV[++ZV]);var CV=void 0;if(WV instanceof Er?NV=WV:(NV=mi,ZV--),NV.qa){WV=lV[++ZV],CV=lV;var FV=ZV;typeof WV=="function"&&(WV=WV(),CV[FV]=WV),CV=WV}for(FV=dV+1,typeof(WV=lV[++ZV])=="number"&&WV<0&&(FV-=WV,WV=lV[++ZV]);dV<FV;dV++){const gV=IV[dV];UV(J,dV,CV?RV(NV,CV,gV):VV(NV,gV))}}return J}const Lr=Symbol();function Rr(lV){let J=lV[Lr];if(!J){const VV=Pr(lV);J=(RV,UV)=>Br(RV,UV,VV),lV[Lr]=J}return J}const Fr=Symbol();function Mr(lV){return lV.h}function Ir(lV,J){let VV,RV;const UV=lV.h;return(ZV,WV,IV)=>UV(ZV,WV,IV,RV||(RV=Pr(J).g),VV||(VV=Rr(J)))}function Pr(lV){let J=lV[Fr];return J||(J=xr(lV,lV[Fr]={},Mr,Ir))}const Or=Symbol();function Cr(lV,J){const VV=lV.g;return J?(RV,UV,ZV)=>VV(RV,UV,ZV,J):VV}function Nr(lV,J,VV){const RV=lV.g;let UV,ZV;return(WV,IV,dV)=>RV(WV,IV,dV,ZV||(ZV=Ur(J).g),UV||(UV=br(J)),VV)}function Ur(lV){let J=lV[Or];return J||(J=xr(lV,lV[Or]={},Cr,Nr))}function Dr(lV,J){var ZV;var VV=lV[J];if(VV)return VV;if(VV=lV.X){var RV=VV[J];if(RV){var UV=(RV=wr(RV))[0].h;if(RV=RV[1],VV=(ZV=VV.P)==null?void 0:ZV[J],!d||VV){if(RV){const WV=Rr(RV),IV=Pr(RV).g;VV=(VV=lV.l)?VV(IV,WV):(dV,CV,FV)=>UV(dV,CV,FV,IV,WV)}else VV=UV;return lV[J]=VV}}}}function Br(lV,J,VV){var dV,CV,FV;for(var RV=et(lV),UV=+!!(512&RV)-1,ZV=lV.length,WV=512&RV?1:0,IV=ZV+(256&RV?-1:0);WV<IV;WV++){const NV=lV[WV];if(NV==null)continue;const gV=WV-UV,eV=Dr(VV,gV);if(!eV)continue;const JV=VV.X;JV!=null&&JV[gV]&&!((dV=JV==null?void 0:JV.P)!=null&&dV[gV])&&Wr++<5&&j(),eV(J,NV,gV)}if(256&RV){RV=lV[ZV-1];for(let NV in RV)UV=+NV,!Number.isNaN(UV)&&(ZV=RV[NV])!=null&&(IV=Dr(VV,UV))&&((CV=WV=VV.X)!=null&&CV[UV]&&!((FV=WV==null?void 0:WV.P)!=null&&FV[UV])&&Wr++<5&&j(),IV(J,ZV,UV))}if(lV=mt?lV[mt]:void 0)for(pr(J,J.g.end()),VV=0;VV<lV.length;VV++)pr(J,U(lV[VV])||new Uint8Array(0))}function Gr(lV,J){return new Er(lV,J,!1)}function jr(lV,J){return new Er(lV,J,!1)}function Vr(lV,J){return new Er(lV,J,!0)}function Xr(lV,J,VV){qe(lV,et(lV),J,VV)}var Hr=Vr(function(lV,J,VV,RV,UV){return lV.h===2&&(lV=$n(lV,Ae([void 0,void 0],RV),UV),pt(RV=et(J)),(UV=Ye(J,RV,VV))instanceof Me?2&UV.M?((UV=UV.Z()).push(lV),qe(J,RV,VV,UV)):UV.Qa(lV):Array.isArray(UV)?(2&tt(UV)&&qe(J,RV,VV,UV=on(UV)),UV.push(lV)):qe(J,RV,VV,[lV]),!0)},function(lV,J,VV,RV,UV){if(J instanceof Me)J.forEach((ZV,WV)=>{vr(lV,VV,Ae([WV,ZV],RV),UV)});else if(Array.isArray(J))for(let ZV=0;ZV<J.length;ZV++){const WV=J[ZV];Array.isArray(WV)&&vr(lV,VV,Ae(WV,RV),UV)}});let Wr=0;function zr(lV,J,VV){if(J=function(RV){if(RV==null)return RV;const UV=typeof RV;if(UV==="bigint")return String(BigInt.asIntN(64,RV));if(Kt(RV)){if(UV==="string")return Zt(RV);if(UV==="number")return Jt(RV)}}(J),J!=null&&(typeof J=="string"&&ar(J),J!=null))switch(gr(lV,VV,0),typeof J){case"number":lV=lV.g,Nt(J),ur(lV,Pt,Ot);break;case"bigint":VV=BigInt.asUintN(64,J),VV=new hr(Number(VV&BigInt(4294967295)),Number(VV>>BigInt(32))),ur(lV.g,VV.h,VV.g);break;default:VV=ar(J),ur(lV.g,VV.h,VV.g)}}function Kr(lV,J,VV){(J=Yt(J))!=null&&J!=null&&(gr(lV,VV,0),fr(lV.g,J))}function Yr(lV,J,VV){(J=Wt(J))!=null&&(gr(lV,VV,0),lV.g.g.push(J?1:0))}function $r(lV,J,VV){(J=re(J))!=null&&_r(lV,VV,c(J))}function qr(lV,J,VV,RV,UV){J instanceof nr?(we(J),J=J.u):J=Array.isArray(J)?Ae(J,RV):void 0,vr(lV,VV,J,UV)}function Jr(lV,J,VV){(J=J==null||typeof J=="string"||I(J)||J instanceof D?J:void 0)!=null&&_r(lV,VV,On(J).buffer)}function Zr(lV,J,VV){return(lV.h===5||lV.h===2)&&(J=Je(J,et(J),VV,2,!1),lV.h==2?Zn(lV,Gn,J):J.push(Gn(lV.g)),!0)}var Qr,ti=Gr(function(lV,J,VV){if(lV.h!==1)return!1;var RV=lV.g;lV=Bn(RV);const UV=Bn(RV);RV=2*(UV>>31)+1;const ZV=UV>>>20&2047;return lV=4294967296*(1048575&UV)+lV,Xr(J,VV,ZV==2047?lV?NaN:RV*(1/0):ZV==0?5e-324*RV*lV:RV*Math.pow(2,ZV-1075)*(lV+4503599627370496)),!0},function(lV,J,VV){(J=Ht(J))!=null&&(gr(lV,VV,1),lV=lV.g,(VV=It||(It=new DataView(new ArrayBuffer(8)))).setFloat64(0,+J,!0),Pt=VV.getUint32(0,!0),Ot=VV.getUint32(4,!0),dr(lV,Pt),dr(lV,Ot))}),ei=Gr(function(lV,J,VV){return lV.h===5&&(Xr(J,VV,Gn(lV.g)),!0)},function(lV,J,VV){(J=Ht(J))!=null&&(gr(lV,VV,5),lV=lV.g,Ut(J),dr(lV,Pt))}),ni=jr(Zr,function(lV,J,VV){if((J=Tr(Ht,J))!=null)for(let WV=0;WV<J.length;WV++){var RV=lV,UV=VV,ZV=J[WV];ZV!=null&&(gr(RV,UV,5),RV=RV.g,Ut(ZV),dr(RV,Pt))}}),ri=jr(Zr,function(lV,J,VV){if((J=Tr(Ht,J))!=null&&J.length){gr(lV,VV,2),lr(lV.g,4*J.length);for(let RV=0;RV<J.length;RV++)VV=lV.g,Ut(J[RV]),dr(VV,Pt)}}),ii=Gr(function(lV,J,VV){return lV.h===0&&(Xr(J,VV,Cn(lV.g,Bt)),!0)},zr),si=Gr(function(lV,J,VV){return lV.h===0&&(Xr(J,VV,(lV=Cn(lV.g,Bt))===0?void 0:lV),!0)},zr),oi=Gr(function(lV,J,VV){return lV.h===0&&(Xr(J,VV,Cn(lV.g,Dt)),!0)},function(lV,J,VV){if((J=te(J))!=null&&(typeof J=="string"&&ir(J),J!=null))switch(gr(lV,VV,0),typeof J){case"number":lV=lV.g,Nt(J),ur(lV,Pt,Ot);break;case"bigint":VV=BigInt.asUintN(64,J),VV=new sr(Number(VV&BigInt(4294967295)),Number(VV>>BigInt(32))),ur(lV.g,VV.h,VV.g);break;default:VV=ir(J),ur(lV.g,VV.h,VV.g)}}),ai=Gr(function(lV,J,VV){return lV.h===0&&(Xr(J,VV,Un(lV.g)),!0)},Kr),hi=jr(function(lV,J,VV){return(lV.h===0||lV.h===2)&&(J=Je(J,et(J),VV,2,!1),lV.h==2?Zn(lV,Un,J):J.push(Un(lV.g)),!0)},function(lV,J,VV){if((J=Tr(Yt,J))!=null&&J.length){VV=mr(lV,VV);for(let RV=0;RV<J.length;RV++)fr(lV.g,J[RV]);yr(lV,VV)}}),ci=Gr(function(lV,J,VV){return lV.h===0&&(Xr(J,VV,(lV=Un(lV.g))===0?void 0:lV),!0)},Kr),ui=Gr(function(lV,J,VV){return lV.h===0&&(Xr(J,VV,Nn(lV.g)),!0)},Yr),li=Gr(function(lV,J,VV){return lV.h===0&&(Xr(J,VV,(lV=Nn(lV.g))===!1?void 0:lV),!0)},Yr),fi=jr(function(lV,J,VV){if(lV.h!==2)return!1;lV=qn(lV);const RV=et(J);return pt(RV),Je(J,RV,VV,2).push(lV),!0},function(lV,J,VV){if((J=Tr(re,J))!=null)for(let WV=0;WV<J.length;WV++){var RV=lV,UV=VV,ZV=J[WV];ZV!=null&&_r(RV,UV,c(ZV))}}),di=Gr(function(lV,J,VV){return lV.h===2&&(Xr(J,VV,(lV=qn(lV))===""?void 0:lV),!0)},$r),pi=Gr(function(lV,J,VV){return lV.h===2&&(Xr(J,VV,qn(lV)),!0)},$r),gi=Vr(function(lV,J,VV,RV,UV){return lV.h===2&&($n(lV,fn(J,RV,VV,!0),UV),!0)},qr),mi=Vr(function(lV,J,VV,RV,UV){return lV.h===2&&($n(lV,fn(J,RV,VV),UV),!0)},qr);Qr=new Er(function(lV,J,VV,RV,UV){if(lV.h!==2)return!1;RV=Ae(void 0,RV);let ZV=et(J);pt(ZV);let WV=Je(J,ZV,VV,3);return ZV=et(J),4&tt(WV)&&(WV=H(WV),nt(WV,-2079&(1|tt(WV))),qe(J,ZV,VV,WV)),WV.push(RV),$n(lV,RV,UV),!0},function(lV,J,VV,RV,UV){if(Array.isArray(J))for(let ZV=0;ZV<J.length;ZV++)qr(lV,J[ZV],VV,RV,UV)},!0);var yi=Vr(function(lV,J,VV,RV,UV,ZV){return lV.h===2&&(un(J,et(J),ZV,VV),$n(lV,J=fn(J,RV,VV),UV),!0)},qr),_i=Gr(function(lV,J,VV){return lV.h===2&&(Xr(J,VV,Jn(lV)),!0)},Jr),vi=jr(function(lV,J,VV){return(lV.h===0||lV.h===2)&&(J=Je(J,et(J),VV,2,!1),lV.h==2?Zn(lV,Dn,J):J.push(Dn(lV.g)),!0)},function(lV,J,VV){if((J=Tr($t,J))!=null)for(let WV=0;WV<J.length;WV++){var RV=lV,UV=VV,ZV=J[WV];ZV!=null&&(gr(RV,UV,0),lr(RV.g,ZV))}}),Ei=Gr(function(lV,J,VV){return lV.h===0&&(Xr(J,VV,Un(lV.g)),!0)},function(lV,J,VV){(J=Yt(J))!=null&&(J=parseInt(J,10),gr(lV,VV,0),fr(lV.g,J))});class wi{constructor(J,VV){this.h=J,this.g=VV,this.l=pn,this.m=yn,this.defaultValue=void 0}}function Ti(lV,J){return new wi(lV,J)}function Ai(lV,J){return(VV,RV)=>{if(Qn.length){const ZV=Qn.pop();ZV.o(RV),Vn(ZV.g,VV,RV),VV=ZV}else VV=new class{constructor(ZV,WV){if(zn.length){const IV=zn.pop();Vn(IV,ZV,WV),ZV=IV}else ZV=new class{constructor(IV,dV){this.h=null,this.m=!1,this.g=this.l=this.j=0,Vn(this,IV,dV)}clear(){this.h=null,this.m=!1,this.g=this.l=this.j=0,this.ea=!1}}(ZV,WV);this.g=ZV,this.l=this.g.g,this.h=this.m=-1,this.o(WV)}o({ja:ZV=!1}={}){this.ja=ZV}}(VV,RV);try{const ZV=new lV,WV=ZV.u;br(J)(WV,VV);var UV=ZV}finally{VV.g.clear(),VV.m=-1,VV.h=-1,Qn.length<100&&Qn.push(VV)}return UV}}function bi(lV){return function(){we(this);const J=new class{constructor(){this.l=[],this.h=0,this.g=new class{constructor(){this.g=[]}length(){return this.g.length}end(){const WV=this.g;return this.g=[],WV}}}};Br(this.u,J,Pr(lV)),pr(J,J.g.end());const VV=new Uint8Array(J.h),RV=J.l,UV=RV.length;let ZV=0;for(let WV=0;WV<UV;WV++){const IV=RV[WV];VV.set(IV,ZV),ZV+=IV.length}return J.l=[VV],VV}}var ki=class extends nr{constructor(lV){super(lV)}},Si=[0,di,Gr(function(lV,J,VV){return lV.h===2&&(Xr(J,VV,(lV=Jn(lV))===N()?void 0:lV),!0)},function(lV,J,VV){if(J!=null){if(J instanceof nr){const RV=J.Ta;return void(RV&&(J=RV(J),J!=null&&_r(lV,VV,On(J).buffer)))}if(Array.isArray(J))return}Jr(lV,J,VV)})],xi=[0,ai,Ei,ui,-1,hi,Ei,-1],Li=class extends nr{constructor(){super()}},Ri=[0,ui,pi,ui,Ei,-1,jr(function(lV,J,VV){return(lV.h===0||lV.h===2)&&(J=Je(J,et(J),VV,2,!1),lV.h==2?Zn(lV,jn,J):J.push(Un(lV.g)),!0)},function(lV,J,VV){if((J=Tr(Yt,J))!=null&&J.length){VV=mr(lV,VV);for(let RV=0;RV<J.length;RV++)fr(lV.g,J[RV]);yr(lV,VV)}}),pi,-1,[0,ui,-1],Ei,ui,-1],Fi=[0,pi,-2],Mi=class extends nr{constructor(){super()}},Ii=[0],Pi=[0,ai,ui,1,ui,-3],Oi=[0,pi,ui,-1,ai,[0,[1,2,3,4,5,6,7],yi,Ii,yi,Ri,yi,Fi,yi,Pi,yi,xi,yi,[0,pi,-2],yi,[0,pi,Ei]],[0,pi],ui,[0,[1,3],[2,4],yi,[0,hi],-1,yi,[0,fi],-1,Qr,[0,pi,-1]],pi],Ci=class extends nr{constructor(lV){super(lV,2)}},Ni={},Ui=Ni.P={};Ni[336783863]=Oi,Ui[336783863]=1;var Di=[0,si,-1,li,-3,si,hi,di,ci,si,-1,li,ci,li,-2,di];function Bi(lV,J){an(lV,2,ne(J),"")}function Gi(lV,J){Fn(lV,3,J)}function ji(lV,J){Fn(lV,4,J)}var Vi=class extends nr{constructor(lV){super(lV,500)}o(lV){return yn(this,0,7,lV)}},Xi=[-1,{P:{}}],Hi=[0,pi,1,Xi],Wi=[0,pi,fi,Xi];function zi(lV,J){wn(lV,1,Vi,J)}function Ki(lV,J){Fn(lV,10,J)}function Yi(lV,J){Fn(lV,15,J)}var $i=class extends nr{constructor(lV){super(lV,500)}o(lV){return yn(this,0,1001,lV)}},qi=[-500,Qr,[-500,di,-1,fi,-3,[-2,Ni,ui],Qr,Si,ci,-1,Hi,Wi,Qr,[0,di,li],di,Di,ci,fi,987,fi],4,Qr,[-500,pi,-1,[-1,{P:{}}],998,pi],Qr,[-500,pi,fi,-1,[-2,{P:{}},ui],997,fi,-1],ci,Qr,[-500,pi,fi,Xi,998,fi],fi,ci,Hi,Wi,Qr,[0,di,-1,Xi],fi,-2,Di,di,-1,li,979,Xi,Qr,Si];$i.prototype.g=bi(qi);var Ji=Ai($i,qi),Zi=class extends nr{constructor(lV){super(lV)}},Qi=class extends nr{constructor(lV){super(lV)}g(){return mn(this,Zi,1)}},ts=[0,Qr,[0,ai,ei,pi,-1]],es=Ai(Qi,ts),ns=class extends nr{constructor(lV){super(lV)}},rs=class extends nr{constructor(lV){super(lV)}},is=class extends nr{constructor(lV){super(lV)}h(){return pn(this,ns,2)}g(){return mn(this,rs,5)}},ss=Ai(class extends nr{constructor(lV){super(lV)}},[0,fi,hi,ri,[0,Ei,[0,ai,-3],[0,ei,-3],[0,ai,-1,[0,Qr,[0,ai,-2]]],Qr,[0,ei,-1,pi,ei]],pi,-1,ii,Qr,[0,ai,ei],fi,ii]),os=class extends nr{constructor(lV){super(lV)}},as=Ai(class extends nr{constructor(lV){super(lV)}},[0,Qr,[0,ei,-4]]),hs=class extends nr{constructor(lV){super(lV)}},cs=Ai(class extends nr{constructor(lV){super(lV)}},[0,Qr,[0,ei,-4]]),us=class extends nr{constructor(lV){super(lV)}},ls=[0,ai,-1,ri,Ei],fs=class extends nr{constructor(){super()}};fs.prototype.g=bi([0,ei,-4,ii]);var ds=class extends nr{constructor(lV){super(lV)}},ps=Ai(class extends nr{constructor(lV){super(lV)}},[0,Qr,[0,1,ai,pi,ts],ii]),gs=class extends nr{constructor(lV){super(lV)}},ms=class extends nr{constructor(lV){super(lV)}ra(){const lV=Qe(this);return lV??N()}},ys=class extends nr{constructor(lV){super(lV)}},_s=[1,2],vs=Ai(class extends nr{constructor(lV){super(lV)}},[0,Qr,[0,_s,yi,[0,ri],yi,[0,_i],ai,pi],ii]),Es=class extends nr{constructor(lV){super(lV)}},ws=[0,pi,ai,ei,fi,-1],Ts=class extends nr{constructor(lV){super(lV)}},As=[0,ui,-1],bs=class extends nr{constructor(lV){super(lV)}},ks=[1,2,3,4,5],Ss=class extends nr{constructor(lV){super(lV)}g(){return Qe(this)!=null}h(){return re(ze(this,2))!=null}},xs=class extends nr{constructor(lV){super(lV)}g(){return Wt(ze(this,2))??!1}},Ls=[0,_i,pi,[0,ai,ii,-1],[0,oi,ii]],Rs=[0,Ls,ui,[0,ks,yi,Pi,yi,Ri,yi,xi,yi,Ii,yi,Fi],Ei],Fs=class extends nr{constructor(lV){super(lV)}},Ms=[0,Rs,ei,-1,ai],Is=Ti(502141897,Fs);Ni[502141897]=Ms,Ui[502141897]=1;var Ps=[0,Ls];Ni[512499200]=Ps;var Os=[0,Ps];Ni[515723506]=Os;var Cs=Ai(class extends nr{constructor(lV){super(lV)}},[0,[0,Ei,-1,ni,vi],ls]),Ns=[0,Rs];Ni[508981768]=Ns;var Us=class extends nr{constructor(lV){super(lV)}},Ds=class extends nr{constructor(lV){super(lV)}},Bs=[0,Rs,ei,Ns,ui],Gs=[0,Rs,Ms,Bs,ei,Os];Ni[508968149]=Bs;var js=Ti(508968150,Ds);Ni[508968150]=Gs,Ui[508968150]=1,Ui[508968149]=1;var Vs=class extends nr{constructor(lV){super(lV)}},Xs=Ti(513916220,Vs);Ni[513916220]=[0,Rs,Gs,ai],Ui[513916220]=1;var Hs=class extends nr{constructor(lV){super(lV)}h(){return pn(this,Es,2)}g(){$e(this,2)}},Ws=[0,Rs,ws];Ni[478825465]=Ws,Ui[478825465]=1;var zs=[0,Rs];Ni[478825422]=zs;var Ks=class extends nr{constructor(lV){super(lV)}},Ys=class extends nr{constructor(lV){super(lV)}},$s=class extends nr{constructor(lV){super(lV)}},qs=class extends nr{constructor(lV){super(lV)}},Js=class extends nr{constructor(lV){super(lV)}},Zs=[0,Rs,zs,Ws,-1],Qs=[0,Rs,ei,ai],to=[0,Rs,ei],eo=[0,Rs,Qs,to,ei],no=[0,Rs,eo,Zs];Ni[463370452]=Zs,Ni[464864288]=Qs,Ni[474472470]=to;var ro=Ti(462713202,qs);Ni[462713202]=eo;var io=Ti(479097054,Js);Ni[479097054]=no,Ui[479097054]=1,Ui[463370452]=1,Ui[464864288]=1,Ui[462713202]=1,Ui[474472470]=1;var so=class extends nr{constructor(lV){super(lV)}},oo=class extends nr{constructor(lV){super(lV)}},ao=class extends nr{constructor(lV){super(lV)}},ho=class extends nr{constructor(){super()}},co=[0,Rs,ei,-1,ai],uo=[0,Rs,ei,ui];ho.prototype.g=bi([0,Rs,to,[0,Rs],Ms,Bs,co,uo]),Ni[514774813]=co,Ni[518928384]=uo;var lo=class extends nr{constructor(lV){super(lV)}},fo=Ti(456383383,lo);Ni[456383383]=[0,Rs,ws],Ui[456383383]=1;var po=class extends nr{constructor(lV){super(lV)}},go=Ti(476348187,po);Ni[476348187]=[0,Rs,As],Ui[476348187]=1;var mo=class extends nr{constructor(lV){super(lV)}},yo=class extends nr{constructor(lV){super(lV)}},_o=[0,Ei,-1],vo=Ti(458105876,class extends nr{constructor(lV){super(lV)}g(){var lV=this.u;const J=et(lV),VV=2&J;return lV=function(RV,UV,ZV){var WV=yo;const IV=2&UV;let dV=!1;if(ZV==null){if(IV)return Ne();ZV=[]}else if(ZV.constructor===Me){if(!(2&ZV.M)||IV)return ZV;ZV=ZV.Z()}else Array.isArray(ZV)?dV=!!(2&tt(ZV)):ZV=[];if(IV){if(!ZV.length)return Ne();dV||(dV=!0,rt(ZV))}else dV&&(dV=!1,ZV=on(ZV));return dV||(64&tt(ZV)?Q(ZV,32):32&UV&&Z(ZV,32)),qe(RV,UV,2,WV=new Me(ZV,WV,se,void 0)),WV}(lV,J,Ye(lV,J,2)),!VV&&yo&&(lV.va=!0),lV}});Ni[458105876]=[0,_o,Hr,[!0,ii,[0,pi,-1,fi]]],Ui[458105876]=1;var Eo=class extends nr{constructor(lV){super(lV)}},wo=Ti(458105758,Eo);Ni[458105758]=[0,Rs,pi,_o],Ui[458105758]=1;var To=class extends nr{constructor(lV){super(lV)}},Ao=Ti(443442058,To);Ni[443442058]=[0,Rs,pi,ai,ei,fi,-1],Ui[443442058]=1,Ui[514774813]=1;var bo=class extends nr{constructor(lV){super(lV)}},ko=Ti(516587230,bo);function So(lV,J){return J=J?J.clone():new Es,lV.displayNamesLocale!==void 0?$e(J,1,ne(lV.displayNamesLocale)):lV.displayNamesLocale===void 0&&$e(J,1),lV.maxResults!==void 0?xn(J,2,lV.maxResults):"maxResults"in lV&&$e(J,2),lV.scoreThreshold!==void 0?Ln(J,3,lV.scoreThreshold):"scoreThreshold"in lV&&$e(J,3),lV.categoryAllowlist!==void 0?Rn(J,4,lV.categoryAllowlist):"categoryAllowlist"in lV&&$e(J,4),lV.categoryDenylist!==void 0?Rn(J,5,lV.categoryDenylist):"categoryDenylist"in lV&&$e(J,5),J}function xo(lV,J=-1,VV=""){return{categories:lV.map(RV=>({index:Tn(An(RV,1),0)??-1,score:bn(RV,2)??0,categoryName:kn(RV,3)??"",displayName:kn(RV,4)??""})),headIndex:J,headName:VV}}function Lo(lV){var WV,IV;var J=en(lV,3,Ht,tn()),VV=en(lV,2,Yt,tn()),RV=en(lV,1,re,tn()),UV=en(lV,9,re,tn());const ZV={categories:[],keypoints:[]};for(let dV=0;dV<J.length;dV++)ZV.categories.push({score:J[dV],index:VV[dV]??-1,categoryName:RV[dV]??"",displayName:UV[dV]??""});if((J=(WV=pn(lV,is,4))==null?void 0:WV.h())&&(ZV.boundingBox={originX:An(J,1)??0,originY:An(J,2)??0,width:An(J,3)??0,height:An(J,4)??0,angle:0}),(IV=pn(lV,is,4))==null?void 0:IV.g().length)for(const dV of pn(lV,is,4).g())ZV.keypoints.push({x:Ze(dV,1)??0,y:Ze(dV,2)??0,score:Ze(dV,4)??0,label:re(ze(dV,3))??""});return ZV}function Ro(lV){const J=[];for(const VV of mn(lV,hs,1))J.push({x:bn(VV,1)??0,y:bn(VV,2)??0,z:bn(VV,3)??0,visibility:bn(VV,4)??0});return J}function Fo(lV){const J=[];for(const VV of mn(lV,os,1))J.push({x:bn(VV,1)??0,y:bn(VV,2)??0,z:bn(VV,3)??0,visibility:bn(VV,4)??0});return J}function Mo(lV){return Array.from(lV,J=>J>127?J-256:J)}function Io(lV,J){if(lV.length!==J.length)throw Error(`Cannot compute cosine similarity between embeddings of different sizes (${lV.length} vs. ${J.length}).`);let VV=0,RV=0,UV=0;for(let ZV=0;ZV<lV.length;ZV++)VV+=lV[ZV]*J[ZV],RV+=lV[ZV]*lV[ZV],UV+=J[ZV]*J[ZV];if(RV<=0||UV<=0)throw Error("Cannot compute cosine similarity on embedding with 0 norm.");return VV/Math.sqrt(RV*UV)}let Po;Ni[516587230]=[0,Rs,co,uo,ei],Ui[516587230]=1,Ui[518928384]=1;const Oo=new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,10,1,8,0,65,0,253,15,253,98,11]);async function Co(){if(Po===void 0)try{await WebAssembly.instantiate(Oo),Po=!0}catch{Po=!1}return Po}async function No(lV,J=""){const VV=await Co()?"wasm_internal":"wasm_nosimd_internal";return{wasmLoaderPath:`${J}/${lV}_${VV}.js`,wasmBinaryPath:`${J}/${lV}_${VV}.wasm`}}var Uo=class{};function Do(){var lV=navigator;return typeof OffscreenCanvas<"u"&&(!function(J=navigator){return(J=J.userAgent).includes("Safari")&&!J.includes("Chrome")}(lV)||!!((lV=lV.userAgent.match(/Version\/([\d]+).*Safari/))&&lV.length>=1&&Number(lV[1])>=17))}async function Bo(lV){if(typeof importScripts!="function"){const J=document.createElement("script");return J.src=lV.toString(),J.crossOrigin="anonymous",new Promise((VV,RV)=>{J.addEventListener("load",()=>{VV()},!1),J.addEventListener("error",UV=>{RV(UV)},!1),document.body.appendChild(J)})}importScripts(lV.toString())}function Go(lV){return lV.videoWidth!==void 0?[lV.videoWidth,lV.videoHeight]:lV.naturalWidth!==void 0?[lV.naturalWidth,lV.naturalHeight]:lV.displayWidth!==void 0?[lV.displayWidth,lV.displayHeight]:[lV.width,lV.height]}function jo(lV,J,VV){lV.m||console.error("No wasm multistream support detected: ensure dependency inclusion of :gl_graph_runner_internal_multi_input target"),VV(J=lV.i.stringToNewUTF8(J)),lV.i._free(J)}function Vo(lV,J,VV){if(!lV.i.canvas)throw Error("No OpenGL canvas configured.");if(VV?lV.i._bindTextureToStream(VV):lV.i._bindTextureToCanvas(),!(VV=lV.i.canvas.getContext("webgl2")||lV.i.canvas.getContext("webgl")))throw Error("Failed to obtain WebGL context from the provided canvas. `getContext()` should only be invoked with `webgl` or `webgl2`.");lV.i.gpuOriginForWebTexturesIsBottomLeft&&VV.pixelStorei(VV.UNPACK_FLIP_Y_WEBGL,!0),VV.texImage2D(VV.TEXTURE_2D,0,VV.RGBA,VV.RGBA,VV.UNSIGNED_BYTE,J),lV.i.gpuOriginForWebTexturesIsBottomLeft&&VV.pixelStorei(VV.UNPACK_FLIP_Y_WEBGL,!1);const[RV,UV]=Go(J);return!lV.l||RV===lV.i.canvas.width&&UV===lV.i.canvas.height||(lV.i.canvas.width=RV,lV.i.canvas.height=UV),[RV,UV]}function Xo(lV,J,VV){lV.m||console.error("No wasm multistream support detected: ensure dependency inclusion of :gl_graph_runner_internal_multi_input target");const RV=new Uint32Array(J.length);for(let UV=0;UV<J.length;UV++)RV[UV]=lV.i.stringToNewUTF8(J[UV]);J=lV.i._malloc(4*RV.length),lV.i.HEAPU32.set(RV,J>>2),VV(J);for(const UV of RV)lV.i._free(UV);lV.i._free(J)}function Ho(lV,J,VV){lV.i.simpleListeners=lV.i.simpleListeners||{},lV.i.simpleListeners[J]=VV}function Wo(lV,J,VV){let RV=[];lV.i.simpleListeners=lV.i.simpleListeners||{},lV.i.simpleListeners[J]=(UV,ZV,WV)=>{ZV?(VV(RV,WV),RV=[]):RV.push(UV)}}Uo.forVisionTasks=function(lV){return No("vision",lV)},Uo.forTextTasks=function(lV){return No("text",lV)},Uo.forGenAiExperimentalTasks=function(lV){return No("genai_experimental",lV)},Uo.forGenAiTasks=function(lV){return No("genai",lV)},Uo.forAudioTasks=function(lV){return No("audio",lV)},Uo.isSimdSupported=function(){return Co()};async function zo(lV,J,VV,RV){return lV=await(async(UV,ZV,WV,IV,dV)=>{if(ZV&&await Bo(ZV),!self.ModuleFactory||WV&&(await Bo(WV),!self.ModuleFactory))throw Error("ModuleFactory not set.");return self.Module&&dV&&((ZV=self.Module).locateFile=dV.locateFile,dV.mainScriptUrlOrBlob&&(ZV.mainScriptUrlOrBlob=dV.mainScriptUrlOrBlob)),dV=await self.ModuleFactory(self.Module||dV),self.ModuleFactory=self.Module=void 0,new UV(dV,IV)})(lV,VV.wasmLoaderPath,VV.assetLoaderPath,J,{locateFile:UV=>UV.endsWith(".wasm")?VV.wasmBinaryPath.toString():VV.assetBinaryPath&&UV.endsWith(".data")?VV.assetBinaryPath.toString():UV}),await lV.o(RV),lV}function Ko(lV,J){const VV=pn(lV.baseOptions,Ss,1)||new Ss;typeof J=="string"?($e(VV,2,ne(J)),$e(VV,1)):J instanceof Uint8Array&&($e(VV,1,lt(J,!1,!1)),$e(VV,2)),yn(lV.baseOptions,0,1,VV)}function Yo(lV){try{const J=lV.H.length;if(J===1)throw Error(lV.H[0].message);if(J>1)throw Error("Encountered multiple errors: "+lV.H.map(VV=>VV.message).join(", "))}finally{lV.H=[]}}function $o(lV,J){lV.B=Math.max(lV.B,J)}function qo(lV,J){lV.A=new Vi,Bi(lV.A,"PassThroughCalculator"),Gi(lV.A,"free_memory"),ji(lV.A,"free_memory_unused_out"),Ki(J,"free_memory"),zi(J,lV.A)}function Jo(lV,J){Gi(lV.A,J),ji(lV.A,J+"_unused_out")}function Zo(lV){lV.g.addBoolToStream(!0,"free_memory",lV.B)}var Qo=class{constructor(lV){this.g=lV,this.H=[],this.B=0,this.g.setAutoRenderToScreen(!1)}l(lV,J=!0){var VV,RV,UV,ZV,WV,IV;if(J){const dV=lV.baseOptions||{};if((VV=lV.baseOptions)!=null&&VV.modelAssetBuffer&&((RV=lV.baseOptions)!=null&&RV.modelAssetPath))throw Error("Cannot set both baseOptions.modelAssetPath and baseOptions.modelAssetBuffer");if(!((UV=pn(this.baseOptions,Ss,1))!=null&&UV.g()||(ZV=pn(this.baseOptions,Ss,1))!=null&&ZV.h()||(WV=lV.baseOptions)!=null&&WV.modelAssetBuffer||(IV=lV.baseOptions)!=null&&IV.modelAssetPath))throw Error("Either baseOptions.modelAssetPath or baseOptions.modelAssetBuffer must be set");if(function(CV,FV){let NV=pn(CV.baseOptions,bs,3);if(!NV){var gV=NV=new bs,eV=new Mi;_n(gV,4,ks,eV)}"delegate"in FV&&(FV.delegate==="GPU"?(FV=NV,gV=new Li,_n(FV,2,ks,gV)):(FV=NV,gV=new Mi,_n(FV,4,ks,gV))),yn(CV.baseOptions,0,3,NV)}(this,dV),dV.modelAssetPath)return fetch(dV.modelAssetPath.toString()).then(CV=>{if(CV.ok)return CV.arrayBuffer();throw Error(`Failed to fetch model: ${dV.modelAssetPath} (${CV.status})`)}).then(CV=>{try{this.g.i.FS_unlink("/model.dat")}catch{}this.g.i.FS_createDataFile("/","model.dat",new Uint8Array(CV),!0,!1,!1),Ko(this,"/model.dat"),this.m(),this.J()});if(dV.modelAssetBuffer instanceof Uint8Array)Ko(this,dV.modelAssetBuffer);else if(dV.modelAssetBuffer)return async function(CV){const FV=[];for(var NV=0;;){const{done:gV,value:eV}=await CV.read();if(gV)break;FV.push(eV),NV+=eV.length}if(FV.length===0)return new Uint8Array(0);if(FV.length===1)return FV[0];CV=new Uint8Array(NV),NV=0;for(const gV of FV)CV.set(gV,NV),NV+=gV.length;return CV}(dV.modelAssetBuffer).then(CV=>{Ko(this,CV),this.m(),this.J()})}return this.m(),this.J(),Promise.resolve()}J(){}ga(){let lV;if(this.g.ga(J=>{lV=Ji(J)}),!lV)throw Error("Failed to retrieve CalculatorGraphConfig");return lV}setGraph(lV,J){this.g.attachErrorListener((VV,RV)=>{this.H.push(Error(RV))}),this.g.Oa(),this.g.setGraph(lV,J),this.A=void 0,Yo(this)}finishProcessing(){this.g.finishProcessing(),Yo(this)}close(){this.A=void 0,this.g.closeGraph()}};function ta(lV,J){if(!lV)throw Error(`Unable to obtain required WebGL resource: ${J}`);return lV}Qo.prototype.close=Qo.prototype.close,function(lV,J){lV=lV.split(".");var VV,RV=t;for((lV[0]in RV)||RV.execScript===void 0||RV.execScript("var "+lV[0]);lV.length&&(VV=lV.shift());)lV.length||J===void 0?RV=RV[VV]&&RV[VV]!==Object.prototype[VV]?RV[VV]:RV[VV]={}:RV[VV]=J}("TaskRunner",Qo);class ea{constructor(J,VV,RV,UV){this.g=J,this.h=VV,this.m=RV,this.l=UV}bind(){this.g.bindVertexArray(this.h)}close(){this.g.deleteVertexArray(this.h),this.g.deleteBuffer(this.m),this.g.deleteBuffer(this.l)}}function na(lV,J,VV){const RV=lV.g;if(VV=ta(RV.createShader(VV),"Failed to create WebGL shader"),RV.shaderSource(VV,J),RV.compileShader(VV),!RV.getShaderParameter(VV,RV.COMPILE_STATUS))throw Error(`Could not compile WebGL shader: ${RV.getShaderInfoLog(VV)}`);return RV.attachShader(lV.h,VV),VV}function ra(lV,J){const VV=lV.g,RV=ta(VV.createVertexArray(),"Failed to create vertex array");VV.bindVertexArray(RV);const UV=ta(VV.createBuffer(),"Failed to create buffer");VV.bindBuffer(VV.ARRAY_BUFFER,UV),VV.enableVertexAttribArray(lV.R),VV.vertexAttribPointer(lV.R,2,VV.FLOAT,!1,0,0),VV.bufferData(VV.ARRAY_BUFFER,new Float32Array([-1,-1,-1,1,1,1,1,-1]),VV.STATIC_DRAW);const ZV=ta(VV.createBuffer(),"Failed to create buffer");return VV.bindBuffer(VV.ARRAY_BUFFER,ZV),VV.enableVertexAttribArray(lV.J),VV.vertexAttribPointer(lV.J,2,VV.FLOAT,!1,0,0),VV.bufferData(VV.ARRAY_BUFFER,new Float32Array(J?[0,1,0,0,1,0,1,1]:[0,0,0,1,1,1,1,0]),VV.STATIC_DRAW),VV.bindBuffer(VV.ARRAY_BUFFER,null),VV.bindVertexArray(null),new ea(VV,RV,UV,ZV)}function ia(lV,J){if(lV.g){if(J!==lV.g)throw Error("Cannot change GL context once initialized")}else lV.g=J}function sa(lV,J,VV,RV){return ia(lV,J),lV.h||(lV.m(),lV.C()),VV?(lV.s||(lV.s=ra(lV,!0)),VV=lV.s):(lV.v||(lV.v=ra(lV,!1)),VV=lV.v),J.useProgram(lV.h),VV.bind(),lV.l(),lV=RV(),VV.g.bindVertexArray(null),lV}function oa(lV,J,VV){return ia(lV,J),lV=ta(J.createTexture(),"Failed to create texture"),J.bindTexture(J.TEXTURE_2D,lV),J.texParameteri(J.TEXTURE_2D,J.TEXTURE_WRAP_S,J.CLAMP_TO_EDGE),J.texParameteri(J.TEXTURE_2D,J.TEXTURE_WRAP_T,J.CLAMP_TO_EDGE),J.texParameteri(J.TEXTURE_2D,J.TEXTURE_MIN_FILTER,VV??J.LINEAR),J.texParameteri(J.TEXTURE_2D,J.TEXTURE_MAG_FILTER,VV??J.LINEAR),J.bindTexture(J.TEXTURE_2D,null),lV}function aa(lV,J,VV){ia(lV,J),lV.A||(lV.A=ta(J.createFramebuffer(),"Failed to create framebuffe.")),J.bindFramebuffer(J.FRAMEBUFFER,lV.A),J.framebufferTexture2D(J.FRAMEBUFFER,J.COLOR_ATTACHMENT0,J.TEXTURE_2D,VV,0)}function ha(lV){var J;(J=lV.g)==null||J.bindFramebuffer(lV.g.FRAMEBUFFER,null)}var ca=class{H(){return`
|
|
22287
22287
|
precision mediump float;
|
|
22288
22288
|
varying vec2 vTex;
|
|
22289
22289
|
uniform sampler2D inputTexture;
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@tscircuit/runframe",
|
|
3
3
|
"main": "dist/preview.js",
|
|
4
4
|
"type": "module",
|
|
5
|
-
"version": "0.0.
|
|
5
|
+
"version": "0.0.38",
|
|
6
6
|
"exports": {
|
|
7
7
|
".": "./dist/preview.js",
|
|
8
8
|
"./preview": "./dist/preview.js",
|
|
@@ -56,6 +56,7 @@
|
|
|
56
56
|
"@tscircuit/core": "^0.0.247",
|
|
57
57
|
"@tscircuit/eval-webworker": "^0.0.43",
|
|
58
58
|
"@tscircuit/file-server": "^0.0.10",
|
|
59
|
+
"@tscircuit/assembly-viewer": "^0.0.1",
|
|
59
60
|
"@tscircuit/pcb-viewer": "^1.10.22",
|
|
60
61
|
"@tscircuit/props": "^0.0.123",
|
|
61
62
|
"@tscircuit/schematic-viewer": "2.0.9",
|