@parhelia/core 0.1.12710 → 0.1.12719

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.
@@ -51,7 +51,7 @@ const getToolIcon = (toolName) => {
51
51
  "remove-component": _jsx(Trash2, { strokeWidth: 1, size: 14 }),
52
52
  "move-components": _jsx(Edit, { strokeWidth: 1, size: 14 }),
53
53
  "get-placeholders": _jsx(Code, { strokeWidth: 1, size: 14 }),
54
- "get-component-schema-with-placeholders": _jsx(Code, { strokeWidth: 1, size: 14 }),
54
+ "get-component-schema-with-placeholders": (_jsx(Code, { strokeWidth: 1, size: 14 })),
55
55
  // Search operations
56
56
  "search-content": _jsx(Search, { strokeWidth: 1, size: 14 }),
57
57
  "search-images": _jsx(FileSearch, { strokeWidth: 1, size: 14 }),
@@ -468,7 +468,8 @@ export function ToolCallDisplay({ toolCalls, finished, openPopovers, setOpenPopo
468
468
  return false;
469
469
  return toolCalls.some((tc) => {
470
470
  const normalized = normalizeToolCall(tc);
471
- const originalFunctionName = ("functionName" in tc ? tc.functionName : normalized.function?.name) || "";
471
+ const originalFunctionName = ("functionName" in tc ? tc.functionName : normalized.function?.name) ||
472
+ "";
472
473
  const baseFunctionName = originalFunctionName
473
474
  .replace(" (approved)", "")
474
475
  .replace(" (rejected)", "")
@@ -494,7 +495,8 @@ export function ToolCallDisplay({ toolCalls, finished, openPopovers, setOpenPopo
494
495
  return tc.isCompleted;
495
496
  const normalized = normalizeToolCall(tc);
496
497
  const approvalInfo = tc.requiresApproval || normalized.requiresApproval;
497
- return !!(normalized.function?.result || normalized.function?.error) && !approvalInfo;
498
+ return (!!(normalized.function?.result || normalized.function?.error) &&
499
+ !approvalInfo);
498
500
  });
499
501
  }, [toolCalls]);
500
502
  if (!toolCalls || toolCalls.length === 0) {
@@ -608,9 +610,10 @@ export function ToolCallDisplay({ toolCalls, finished, openPopovers, setOpenPopo
608
610
  return (_jsxs("div", { className: "flex flex-col", children: [showGroupHeader && (_jsxs("div", { className: "group flex cursor-pointer items-center gap-1.5 rounded-md px-1 py-1 text-xs text-gray-500 transition-all hover:bg-gray-100/60 hover:text-gray-700", onClick: () => {
609
611
  setIsGroupExpanded((prev) => !prev);
610
612
  setUserToggled(true);
611
- }, children: [_jsx("div", { className: "flex items-center transition-transform group-hover:scale-110", children: isGroupExpanded ? (_jsx(ChevronDown, { size: 14, strokeWidth: 1.5, className: "text-gray-500" })) : (_jsx(ChevronRight, { size: 14, strokeWidth: 1.5, className: "text-gray-500" })) }), _jsx("div", { className: "flex items-center text-gray-500", children: _jsx(Wrench, { strokeWidth: 1, size: 14 }) }), _jsxs("span", { className: `font-medium ${!allToolCallsCompleted ? "animate-text-shimmer" : ""}`, children: [toolCalls.length, " tool call", toolCalls.length !== 1 ? "s" : ""] }), !isGroupExpanded && groupSummary && (_jsx("span", { className: "ml-1 min-w-0 flex-1 truncate text-[10px] text-gray-400", children: groupSummary.uniqueNames.length <= 3
613
+ }, children: [_jsx("div", { className: "flex h-4 w-4 shrink-0 items-center justify-center transition-transform group-hover:scale-110", children: isGroupExpanded ? (_jsx(ChevronDown, { size: 14, strokeWidth: 1.5, className: "text-gray-500" })) : (_jsx(ChevronRight, { size: 14, strokeWidth: 1.5, className: "text-gray-500" })) }), _jsx("div", { className: "flex h-4 w-4 shrink-0 items-center justify-center text-gray-500", children: _jsx(Wrench, { strokeWidth: 1, size: 14 }) }), _jsxs("span", { className: `leading-4 font-medium ${!allToolCallsCompleted ? "animate-text-shimmer" : ""}`, children: [toolCalls.length, " tool call", toolCalls.length !== 1 ? "s" : ""] }), !isGroupExpanded && groupSummary && (_jsx("span", { className: "ml-1 min-w-0 flex-1 truncate text-[10px] leading-4 text-gray-400", children: groupSummary.uniqueNames.length <= 3
612
614
  ? groupSummary.uniqueNames.join(", ")
613
- : `${groupSummary.uniqueNames.slice(0, 2).join(", ")} +${groupSummary.uniqueNames.length - 2} more` })), groupSummary && groupSummary.errorCount > 0 && (_jsxs("span", { className: "ml-1 shrink-0 text-[10px] text-red-500", children: ["(", groupSummary.errorCount, " error", groupSummary.errorCount !== 1 ? "s" : "", ")"] }))] })), shouldShowGroupBrowserCaptureInlinePrompt && browserCaptureInlinePrompt && (_jsx("div", { className: "mt-2 ml-5 rounded-lg border border-blue-200 bg-blue-50 p-3 text-[11px] text-blue-900", children: _jsxs("div", { className: "flex items-center justify-between gap-3", children: [_jsxs("div", { className: "min-w-0 flex-1", children: [_jsx("div", { className: "font-semibold", children: browserCaptureInlinePrompt.label }), _jsx("div", { className: "mt-1 text-blue-800", children: browserCaptureInlinePrompt.description })] }), _jsxs("div", { className: "flex shrink-0 items-center gap-2", children: [_jsx("button", { type: "button", className: "rounded border border-blue-300 bg-white px-2 py-1 text-[11px] font-medium text-blue-900 disabled:cursor-not-allowed disabled:opacity-60", disabled: browserCaptureInlinePrompt.isPending, onClick: (event) => {
615
+ : `${groupSummary.uniqueNames.slice(0, 2).join(", ")} +${groupSummary.uniqueNames.length - 2} more` })), groupSummary && groupSummary.errorCount > 0 && (_jsxs("span", { className: "ml-1 shrink-0 text-[10px] leading-4 text-red-500", children: ["(", groupSummary.errorCount, " error", groupSummary.errorCount !== 1 ? "s" : "", ")"] }))] })), shouldShowGroupBrowserCaptureInlinePrompt &&
616
+ browserCaptureInlinePrompt && (_jsx("div", { className: "mt-2 ml-5 rounded-lg border border-blue-200 bg-blue-50 p-3 text-[11px] text-blue-900", children: _jsxs("div", { className: "flex items-center justify-between gap-3", children: [_jsxs("div", { className: "min-w-0 flex-1", children: [_jsx("div", { className: "font-semibold", children: browserCaptureInlinePrompt.label }), _jsx("div", { className: "mt-1 text-blue-800", children: browserCaptureInlinePrompt.description })] }), _jsxs("div", { className: "flex shrink-0 items-center gap-2", children: [_jsx("button", { type: "button", className: "rounded border border-blue-300 bg-white px-2 py-1 text-[11px] font-medium text-blue-900 disabled:cursor-not-allowed disabled:opacity-60", disabled: browserCaptureInlinePrompt.isPending, onClick: (event) => {
614
617
  event.stopPropagation();
615
618
  browserCaptureInlinePrompt.onAction();
616
619
  }, children: browserCaptureInlinePrompt.actionLabel }), browserCaptureInlinePrompt.onCancel && (_jsx("button", { type: "button", className: "rounded border border-blue-300 bg-white px-2 py-1 text-[11px] font-medium text-blue-900 disabled:cursor-not-allowed disabled:opacity-60", disabled: browserCaptureInlinePrompt.isPending, onClick: (event) => {
@@ -670,15 +673,15 @@ export function ToolCallDisplay({ toolCalls, finished, openPopovers, setOpenPopo
670
673
  ...prev,
671
674
  [popoverKey]: !prev[popoverKey],
672
675
  }));
673
- }, children: [_jsx("div", { className: "flex items-center transition-transform group-hover:scale-110", children: isExpanded ? (_jsx(ChevronDown, { size: 14, strokeWidth: 1.5, className: "text-gray-500" })) : (_jsx(ChevronRight, { size: 14, strokeWidth: 1.5, className: "text-gray-500" })) }), isCompleted ? (_jsx("div", { className: `flex items-center transition-all ${toolCall.function?.error && !isPruned
676
+ }, children: [_jsx("div", { className: "flex h-4 w-4 shrink-0 items-center justify-center transition-transform group-hover:scale-110", children: isExpanded ? (_jsx(ChevronDown, { size: 14, strokeWidth: 1.5, className: "text-gray-500" })) : (_jsx(ChevronRight, { size: 14, strokeWidth: 1.5, className: "text-gray-500" })) }), isCompleted ? (_jsx("div", { className: `flex h-4 w-4 shrink-0 items-center justify-center transition-all ${toolCall.function?.error && !isPruned
674
677
  ? "text-red-500"
675
678
  : isPruned
676
679
  ? "text-slate-500"
677
- : "text-green-600"}`, children: getToolIcon(toolCall?.function?.name || "") })) : finalApprovalInfo && !hasApprovalStatus ? (_jsx("div", { className: "flex items-center text-amber-600 transition-all", children: getToolIcon(toolCall?.function?.name || "") })) : isStreaming || !finished ? (
680
+ : "text-green-600"}`, children: getToolIcon(toolCall?.function?.name || "") })) : finalApprovalInfo && !hasApprovalStatus ? (_jsx("div", { className: "flex h-4 w-4 shrink-0 items-center justify-center text-amber-600 transition-all", children: getToolIcon(toolCall?.function?.name || "") })) : isStreaming || !finished ? (
678
681
  // Show spinner when tool call arguments are still being streamed or tool is executing
679
682
  _jsx(Spinner, { size: "xs" })) : (
680
683
  // Turn finished but tool call not completed - show static icon
681
- _jsx("div", { className: "flex items-center text-gray-400 transition-all", children: getToolIcon(toolCall?.function?.name || "") })), _jsxs("div", { className: "inline-flex min-w-0 flex-1 items-center gap-2", children: [_jsxs("span", { className: `shrink-0 font-medium transition-colors ${toolCall.function?.error && !isPruned
684
+ _jsx("div", { className: "flex h-4 w-4 shrink-0 items-center justify-center text-gray-400 transition-all", children: getToolIcon(toolCall?.function?.name || "") })), _jsxs("div", { className: "inline-flex min-w-0 flex-1 items-center gap-2", children: [_jsxs("span", { className: `shrink-0 leading-4 font-medium transition-colors ${toolCall.function?.error && !isPruned
682
685
  ? "text-red-600"
683
686
  : isPruned
684
687
  ? "text-slate-600"
@@ -688,9 +691,9 @@ export function ToolCallDisplay({ toolCalls, finished, openPopovers, setOpenPopo
688
691
  "(function name missing)")
689
692
  .replace(" (approved)", "")
690
693
  .replace(" (rejected)", "")
691
- .replace(" (pending approval)", ""), toolCall.function?.error && !isRejected && !isPruned && (_jsx("span", { className: "ml-1 text-red-500", children: "(error)" })), isPruned && (_jsxs("span", { className: "ml-2 inline-flex items-center gap-1 rounded-full bg-slate-100 px-2 py-0.5 text-[10px] font-semibold text-slate-700", children: [_jsx("span", { children: "\u2702" }), " Pruned"] })), finalApprovalInfo && isRejected && (_jsxs("span", { className: "ml-2 inline-flex items-center gap-1 rounded-full bg-red-100 px-2 py-0.5 text-[10px] font-semibold text-red-700", children: [_jsx("span", { children: "\u2717" }), " Rejected"] }))] }), finalApprovalInfo?.summary && (_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx("span", { className: "min-w-0 flex-1 cursor-help truncate text-xs text-gray-500 italic", children: finalApprovalInfo.summary }) }), _jsx(TooltipContent, { side: "top", className: "max-w-md", children: finalApprovalInfo.summary })] })), _jsxs("div", { className: "ml-auto flex shrink-0 items-center gap-1.5", children: [!isCompleted &&
694
+ .replace(" (pending approval)", ""), toolCall.function?.error && !isRejected && !isPruned && (_jsx("span", { className: "ml-1 leading-4 text-red-500", children: "(error)" })), isPruned && (_jsxs("span", { className: "ml-2 inline-flex items-center gap-1 rounded-full bg-slate-100 px-2 py-0.5 text-[10px] font-semibold text-slate-700", children: [_jsx("span", { children: "\u2702" }), " Pruned"] })), finalApprovalInfo && isRejected && (_jsxs("span", { className: "ml-2 inline-flex items-center gap-1 rounded-full bg-red-100 px-2 py-0.5 text-[10px] font-semibold text-red-700", children: [_jsx("span", { children: "\u2717" }), " Rejected"] }))] }), finalApprovalInfo?.summary && (_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx("span", { className: "min-w-0 flex-1 cursor-help truncate text-xs leading-4 text-gray-500 italic", children: finalApprovalInfo.summary }) }), _jsx(TooltipContent, { side: "top", className: "max-w-md", children: finalApprovalInfo.summary })] })), _jsxs("div", { className: "ml-auto flex shrink-0 items-center gap-1.5", children: [!isCompleted &&
692
695
  finalApprovalInfo &&
693
- !hasApprovalStatus && (_jsx(ApprovalDialog, { toolCallId: toolCallIdForApproval, onApprovalDialogShown: onApprovalDialogShown, finalApprovalInfo: finalApprovalInfo, isAgentToolCall: isAgentToolCall, originalToolCall: originalToolCall, toolCall: toolCall, messageId: toolCallMessageId, agentId: agentId })), toolCallMeta && (_jsx("span", { className: "text-[10px] text-gray-400", children: toolCallMeta }))] })] })] }), isExpanded && (_jsx(ToolCallDetails, { toolCall: toolCall, result: toolResult })), !shouldShowGroupBrowserCaptureInlinePrompt &&
696
+ !hasApprovalStatus && (_jsx(ApprovalDialog, { toolCallId: toolCallIdForApproval, onApprovalDialogShown: onApprovalDialogShown, finalApprovalInfo: finalApprovalInfo, isAgentToolCall: isAgentToolCall, originalToolCall: originalToolCall, toolCall: toolCall, messageId: toolCallMessageId, agentId: agentId })), toolCallMeta && (_jsx("span", { className: "text-[10px] leading-4 text-gray-400", children: toolCallMeta }))] })] })] }), isExpanded && (_jsx(ToolCallDetails, { toolCall: toolCall, result: toolResult })), !shouldShowGroupBrowserCaptureInlinePrompt &&
694
697
  shouldShowBrowserCaptureInlinePrompt &&
695
698
  browserCaptureInlinePrompt && (_jsx("div", { className: "mt-2 ml-5 rounded-lg border border-blue-200 bg-blue-50 p-3 text-[11px] text-blue-900", children: _jsxs("div", { className: "flex items-center justify-between gap-3", children: [_jsxs("div", { className: "min-w-0 flex-1", children: [_jsx("div", { className: "font-semibold", children: browserCaptureInlinePrompt.label }), _jsx("div", { className: "mt-1 text-blue-800", children: browserCaptureInlinePrompt.description })] }), _jsxs("div", { className: "flex shrink-0 items-center gap-2", children: [_jsx("button", { type: "button", className: "rounded border border-blue-300 bg-white px-2 py-1 text-[11px] font-medium text-blue-900 disabled:cursor-not-allowed disabled:opacity-60", disabled: browserCaptureInlinePrompt.isPending, onClick: (event) => {
696
699
  event.stopPropagation();
@@ -698,7 +701,8 @@ export function ToolCallDisplay({ toolCalls, finished, openPopovers, setOpenPopo
698
701
  }, children: browserCaptureInlinePrompt.actionLabel }), browserCaptureInlinePrompt.onCancel && (_jsx("button", { type: "button", className: "rounded border border-blue-300 bg-white px-2 py-1 text-[11px] font-medium text-blue-900 disabled:cursor-not-allowed disabled:opacity-60", disabled: browserCaptureInlinePrompt.isPending, onClick: (event) => {
699
702
  event.stopPropagation();
700
703
  browserCaptureInlinePrompt.onCancel?.();
701
- }, children: browserCaptureInlinePrompt.cancelLabel ?? "Cancel" }))] })] }) }))] }, toolCallKey));
704
+ }, children: browserCaptureInlinePrompt.cancelLabel ??
705
+ "Cancel" }))] })] }) }))] }, toolCallKey));
702
706
  }) })), (() => {
703
707
  if (!hasPendingApprovalsInGroup)
704
708
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"ToolCallDisplay.js","sourceRoot":"","sources":["../../../src/editor/ai/ToolCallDisplay.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ToolCallDisplay.js","sourceRoot":"","sources":["../../../src/editor/ai/ToolCallDisplay.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC1E,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,qCAAqC,CAAC;AAE7C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EACL,OAAO,EACP,cAAc,EACd,cAAc,GACf,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,wBAAwB,EACxB,cAAc,EACd,mBAAmB,GACpB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,yCAAyC;AACzC,MAAM,cAAc,GAAG;IACrB,GAAG,aAAa;IAChB,SAAS,EAAE,qBAAqB;IAChC,KAAK,EAAE,iBAAiB;IACxB,WAAW,EAAE,uBAAuB;IACpC,WAAW,EAAE,kBAAkB;IAC/B,WAAW,EAAE,kBAAkB;IAC/B,YAAY,EAAE,mBAAmB;IACjC,SAAS,EAAE,gBAAgB;IAC3B,cAAc,EAAE,qBAAqB;CACtC,CAAC;AAEF,4BAA4B;AAC5B,MAAM,oBAAoB,GAAG,GAAG,EAAE,CAAC,CACjC,0BAAQ;;;;;;;;;GASP,GAAS,CACX,CAAC;AACF,OAAO,EACL,QAAQ,EACR,MAAM,EACN,IAAI,EACJ,UAAU,EACV,UAAU,EACV,MAAM,EACN,KAAK,EACL,KAAK,EACL,WAAW,EACX,IAAI,EACJ,QAAQ,EACR,MAAM,EACN,WAAW,EACX,YAAY,EACZ,KAAK,EACL,CAAC,EACD,WAAW,GACZ,MAAM,cAAc,CAAC;AAEtB,qDAAqD;AACrD,MAAM,WAAW,GAAG,CAAC,QAAgB,EAAE,EAAE;IACvC,MAAM,OAAO,GAA0C;QACrD,qBAAqB;QACrB,kBAAkB,EAAE,KAAC,QAAQ,IAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAI;QAC1D,YAAY,EAAE,KAAC,IAAI,IAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAI;QAChD,oBAAoB,EAAE,KAAC,IAAI,IAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAI;QAExD,kBAAkB;QAClB,aAAa,EAAE,KAAC,QAAQ,IAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAI;QACrD,aAAa,EAAE,KAAC,IAAI,IAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAI;QACjD,WAAW,EAAE,KAAC,QAAQ,IAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAI;QACnD,WAAW,EAAE,KAAC,UAAU,IAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAI;QACrD,cAAc,EAAE,KAAC,UAAU,IAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAI;QACxD,mBAAmB,EAAE,KAAC,UAAU,IAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAI;QAE7D,uBAAuB;QACvB,eAAe,EAAE,KAAC,IAAI,IAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAI;QACnD,kBAAkB,EAAE,KAAC,MAAM,IAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAI;QACxD,iBAAiB,EAAE,KAAC,IAAI,IAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAI;QACrD,kBAAkB,EAAE,KAAC,IAAI,IAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAI;QACtD,wCAAwC,EAAE,CACxC,KAAC,IAAI,IAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAI,CACnC;QAED,oBAAoB;QACpB,gBAAgB,EAAE,KAAC,MAAM,IAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAI;QACtD,eAAe,EAAE,KAAC,UAAU,IAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAI;QACzD,eAAe,EAAE,KAAC,KAAK,IAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAI;QAEpD,mBAAmB;QACnB,YAAY,EAAE,KAAC,QAAQ,IAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAI;QACpD,uBAAuB,EAAE,KAAC,QAAQ,IAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAI;QAE/D,2BAA2B;QAC3B,aAAa,EAAE,KAAC,WAAW,IAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAI;QACxD,cAAc,EAAE,KAAC,WAAW,IAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAI;QACzD,aAAa,EAAE,KAAC,WAAW,IAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAI;QACxD,iBAAiB,EAAE,KAAC,WAAW,IAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAI;QAC5D,iBAAiB,EAAE,KAAC,KAAK,IAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAI;QAEtD,mBAAmB;QACnB,OAAO,EAAE,KAAC,MAAM,IAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAI;KAC9C,CAAC;IAEF,OAAO,OAAO,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC;AAC9C,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,CAAC,UAAmB,EAAiB,EAAE;IAChE,IACE,OAAO,UAAU,KAAK,QAAQ;QAC9B,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC;QAC5B,UAAU,GAAG,CAAC,EACd,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,UAAU,GAAG,IAAI,EAAE,CAAC;QACtB,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC;IACvC,CAAC;IAED,IAAI,UAAU,GAAG,MAAM,EAAE,CAAC;QACxB,OAAO,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IAC9C,CAAC;IAED,IAAI,UAAU,GAAG,MAAM,EAAE,CAAC;QACxB,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC;IAC7C,CAAC;IAED,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC;IACnD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,EAAE,CAAC,CAAC;IAC9C,MAAM,OAAO,GAAG,YAAY,GAAG,EAAE,CAAC;IAElC,IAAI,OAAO,GAAG,EAAE,EAAE,CAAC;QACjB,OAAO,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,KAAK,OAAO,GAAG,CAAC,CAAC,CAAC,GAAG,OAAO,GAAG,CAAC;IACjE,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;IACvC,MAAM,gBAAgB,GAAG,OAAO,GAAG,EAAE,CAAC;IACtC,OAAO,gBAAgB,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,KAAK,gBAAgB,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC;AAC/E,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,CACzB,WAAoB,EACpB,UAAmB,EACJ,EAAE;IACjB,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC;QACrC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;YACpC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAChD,IAAI,QAAQ,EAAE,CAAC;QACb,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACvB,CAAC;IAED,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACrD,CAAC,CAAC;AAwFF,6DAA6D;AAC7D,MAAM,iBAAiB,GAAG,CACxB,QAAsC,EACxB,EAAE;IAChB,IAAI,cAAc,IAAI,QAAQ,EAAE,CAAC;QAC/B,yBAAyB;QACzB,OAAO;YACL,EAAE,EAAE,QAAQ,CAAC,UAAU;YACvB,WAAW,EAAE,QAAQ,CAAC,YAAY;YAClC,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ,CAAC,YAAY;gBAC3B,SAAS,EAAE,QAAQ,CAAC,iBAAiB;gBACrC,MAAM,EAAE,QAAQ,CAAC,yBAAyB,IAAI,QAAQ,CAAC,cAAc;gBACrE,KAAK,EAAE,QAAQ,CAAC,aAAa;aAC9B;YACD,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB;YAC3C,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,cAAc,EAAE,QAAQ,CAAC,cAAc;YACvC,WAAW,EAAE,QAAQ,CAAC,WAAW;SAClC,CAAC;IACJ,CAAC;IACD,yBAAyB;IACzB,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AAEF,wEAAwE;AACxE,MAAM,gBAAgB,GAAG,IAAI,CAC3B,CAAC,EAAE,IAAI,EAAiB,EAAE,EAAE;IAC1B,OAAO,CACL,eAAK,SAAS,EAAC,mBAAmB,EAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,aAC5D,KAAC,oBAAoB,KAAG,EACxB,KAAC,QAAQ,IACP,IAAI,EAAE,IAAI,EACV,gBAAgB,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,EACtC,KAAK,EAAE,cAAc,GACrB,IACE,CACP,CAAC;AACJ,CAAC,EACD,CAAC,SAAS,EAAE,SAAS,EAAE,EAAE;IACvB,gFAAgF;IAChF,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;AAC3E,CAAC,CACF,CAAC;AAEF,gBAAgB,CAAC,WAAW,GAAG,kBAAkB,CAAC;AAElD,iDAAiD;AACjD,MAAM,eAAe,GAAG,CAAC,IAAqB,EAAc,EAAE;IAC5D,gDAAgD;IAChD,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAC9C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,mCAAmC;IACnC,MAAM,UAAU,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAElE,uBAAuB;IACvB,IAAI,CAAC;QACH,IAAI,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAEpC,uEAAuE;QACvE,IACE,OAAO,MAAM,KAAK,QAAQ;YAC1B,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAClD,CAAC;YACD,IAAI,CAAC;gBACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAC9B,CAAC;YAAC,OAAO,EAAE,EAAE,CAAC;gBACZ,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;YACzD,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,CAAC,EAAE,+BAA+B,CAAC,CAAC;QAEtE,oCAAoC;QACpC,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACzE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YACrC,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,EAAE,EAAE,CAAC;YACZ,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,EAAE,CAAC,CAAC;YAC3C,gFAAgF;YAChF,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;AACH,CAAC,CAAC;AASF,MAAM,cAAc,GAAG,CAAC,KAAc,EAAmB,EAAE;IACzD,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;AAC1E,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,KAAc,EAAiB,EAAE;IAC7D,IAAI,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC;IACtB,CAAC;IAED,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACxC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,SAAS,GAAG,KAAgC,CAAC;IACnD,IAAI,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;QACtC,OAAO,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IAClC,CAAC;IACD,IAAI,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;QAClC,OAAO,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;IAC9B,CAAC;IACD,IAAI,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;QAClC,OAAO,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;IAC9B,CAAC;IAED,MAAM,iBAAiB,GAAG,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC,SAAS,CAAC;IACpE,IAAI,iBAAiB,IAAI,OAAO,iBAAiB,KAAK,QAAQ,EAAE,CAAC;QAC/D,MAAM,cAAc,GAAG,iBAA4C,CAAC;QACpE,IAAI,cAAc,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;YACvC,OAAO,cAAc,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QACnC,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,4BAA4B,GAAG,CACnC,KAAc,EACgB,EAAE;IAChC,MAAM,YAAY,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;IACjD,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO;YACL,GAAG,EAAE,YAAY;YACjB,GAAG,EAAE,mBAAmB;SACzB,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;YAC1B,MAAM,OAAO,GAAG,4BAA4B,CAAC,KAAK,CAAC,CAAC;YACpD,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAO,OAAO,CAAC;YACjB,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACxC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,SAAS,GAAG,KAYjB,CAAC;IAEF,MAAM,WAAW,GACf,SAAS,CAAC,KAAK,IAAI,OAAO,SAAS,CAAC,KAAK,KAAK,QAAQ;QACpD,CAAC,CAAC,SAAS,CAAC,KAAK;QACjB,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,eAAe,GAAG,oBAAoB,CACzC,SAAqC,CAAC,QAAQ;QAC5C,SAAqC,CAAC,SAAS,CACnD,CAAC;IACF,MAAM,GAAG,GAAG,cAAc,CAAC,WAAW,EAAE,OAAO,CAAC;QAC9C,CAAC,CAAC,WAAW,EAAE,OAAO,CAAC,IAAI,EAAE;QAC7B,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC;YACjC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE;YAC1B,CAAC,CAAC,eAAe;gBACf,CAAC,CAAC,eAAe;gBACjB,CAAC,CAAC,IAAI,CAAC;IAEb,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,KAAK,GACT,OAAO,SAAS,CAAC,UAAU,KAAK,QAAQ;QACxC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC;QACnC,CAAC,CAAC,SAAS,CAAC,UAAU;QACtB,CAAC,CAAC,OAAO,WAAW,EAAE,KAAK,KAAK,QAAQ;YACpC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC;YACpC,CAAC,CAAC,WAAW,CAAC,KAAK;YACnB,CAAC,CAAC,SAAS,CAAC;IAClB,MAAM,MAAM,GACV,OAAO,SAAS,CAAC,WAAW,KAAK,QAAQ;QACzC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,WAAW,CAAC;QACpC,CAAC,CAAC,SAAS,CAAC,WAAW;QACvB,CAAC,CAAC,OAAO,WAAW,EAAE,MAAM,KAAK,QAAQ;YACrC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC;YACrC,CAAC,CAAC,WAAW,CAAC,MAAM;YACpB,CAAC,CAAC,SAAS,CAAC;IAElB,OAAO;QACL,GAAG;QACH,GAAG,EAAE,SAAS,CAAC,KAAK;YAClB,CAAC,CAAC,sBAAsB,SAAS,CAAC,KAAK,GAAG;YAC1C,CAAC,CAAC,mBAAmB;QACvB,QAAQ,EAAE,WAAW,EAAE,QAAQ,IAAI,SAAS,CAAC,QAAQ;QACrD,UAAU,EACR,KAAK,IAAI,MAAM;YACb,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;YAChD,CAAC,CAAC,SAAS;KAChB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,iCAAiC,GAAG,CAAC,KAAc,EAAW,EAAE;IACpE,IAAI,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,uCAAuC,CAAC;IACjD,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,IAAI,UAAU,GAAG,KAAK,CAAC;QACvB,MAAM,cAAc,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACzC,MAAM,cAAc,GAAG,iCAAiC,CAAC,KAAK,CAAC,CAAC;YAChE,IAAI,cAAc,KAAK,KAAK,EAAE,CAAC;gBAC7B,UAAU,GAAG,IAAI,CAAC;YACpB,CAAC;YACD,OAAO,cAAc,CAAC;QACxB,CAAC,CAAC,CAAC;QACH,OAAO,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC;IAC7C,CAAC;IAED,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACxC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,SAAS,GAAG,KAA4B,CAAC;IAC/C,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,MAAM,KAAK,GAAwB,EAAE,CAAC;IAEtC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,UAAU,CAAC,EAAE,EAAE;QACtD,MAAM,cAAc,GAAG,iCAAiC,CAAC,UAAU,CAAC,CAAC;QACrE,KAAK,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC;QAC5B,IAAI,cAAc,KAAK,UAAU,EAAE,CAAC;YAClC,UAAU,GAAG,IAAI,CAAC;QACpB,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;AACpC,CAAC,CAAC;AAEF,MAAM,uBAAuB,GAAG,CAAC,EAC/B,OAAO,GAGR,EAAE,EAAE;IACH,OAAO,CACL,aACE,IAAI,EAAE,OAAO,CAAC,GAAG,EACjB,MAAM,EAAC,QAAQ,EACf,GAAG,EAAC,qBAAqB,EACzB,SAAS,EAAC,4GAA4G,aAEtH,cACE,GAAG,EAAE,OAAO,CAAC,GAAG,EAChB,GAAG,EAAE,OAAO,CAAC,GAAG,EAChB,OAAO,EAAC,MAAM,EACd,SAAS,EAAC,uDAAuD,GACjE,EACD,CAAC,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,CAC3C,eAAK,SAAS,EAAC,sGAAsG,aACnH,eAAM,SAAS,EAAC,UAAU,YAAE,OAAO,CAAC,QAAQ,IAAI,YAAY,GAAQ,EACnE,OAAO,CAAC,UAAU,IAAI,CACrB,eAAM,SAAS,EAAC,UAAU,YAAE,OAAO,CAAC,UAAU,GAAQ,CACvD,IACG,CACP,IACC,CACL,CAAC;AACJ,CAAC,CAAC;AAEF,yCAAyC;AACzC,MAAM,gBAAgB,GAAG,CAAC,IAAqB,EAAE,EAAE;IACjD,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;IAErC,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,OAAO,KAAC,gBAAgB,IAAC,IAAI,EAAE,MAAM,GAAI,CAAC;IAC5C,CAAC;IAED,2CAA2C;IAC3C,MAAM,UAAU,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAClE,OAAO,CACL,cAAK,SAAS,EAAC,qEAAqE,YACjF,UAAU,GACP,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,6BAA6B;AAC7B,MAAM,eAAe,GAAG,CAAC,EACvB,KAAK,EACL,QAAQ,EACR,eAAe,GAAG,KAAK,EACvB,YAAY,GAMb,EAAE,EAAE;IACH,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,eAAe,CAAC,CAAC;IAE9D,OAAO,CACL,eAAK,SAAS,EAAC,0CAA0C,aACvD,eAAK,SAAS,EAAC,mCAAmC,aAChD,eACE,SAAS,EAAC,mGAAmG,EAC7G,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,CAAC,UAAU,CAAC,aAExC,UAAU,CAAC,CAAC,CAAC,CACZ,KAAC,WAAW,IACV,IAAI,EAAE,EAAE,EACR,WAAW,EAAE,GAAG,EAChB,SAAS,EAAC,oCAAoC,GAC9C,CACH,CAAC,CAAC,CAAC,CACF,KAAC,YAAY,IACX,IAAI,EAAE,EAAE,EACR,WAAW,EAAE,GAAG,EAChB,SAAS,EAAC,oCAAoC,GAC9C,CACH,EACD,eAAM,SAAS,EAAC,uCAAuC,YAAE,KAAK,GAAQ,IAClE,EACL,YAAY,IAAI,CACf,cAAK,SAAS,EAAC,MAAM,EAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,EAAE,YACtD,YAAY,GACT,CACP,IACG,EACL,UAAU,IAAI,CACb,cAAK,SAAS,EAAC,gCAAgC,YAAE,QAAQ,GAAO,CACjE,IACG,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,yDAAyD;AACzD,MAAM,eAAe,GAAG,IAAI,CAC1B,CAAC,EACC,QAAQ,EACR,MAAM,GAIP,EAAE,EAAE;IACH,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;IACrC,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK,IAAI,CAAC,QAAQ,CAAC;IACzD,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,IAAI,QAAQ,IAAI,QAAQ,CAAC;IACnD,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE;QAChC,IAAI,CAAC,QAAQ;YAAE,OAAO,EAAE,CAAC;QACzB,OAAO,MAAM,IAAI,QAAQ,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC;IAClD,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;IAEjD,kEAAkE;IAClE,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE;QAC/B,OAAO,eAAe,CAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,IAAI,EAAE,CAAC,CAAC;IAC7D,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC;IAEnC,mEAAmE;IACnE,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE;QAChC,OAAO,eAAe,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;IACvC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,MAAM,kBAAkB,GAAG,OAAO,CAAC,GAAG,EAAE;QACtC,OAAO,eAAe,CAAC,YAAY,CAAC,CAAC;IACvC,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnB,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE;QACjC,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,4BAA4B,CAAC,kBAAkB,IAAI,YAAY,CAAC,CAAC;QAC1E,CAAC;QACD,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,4BAA4B,CAAC,YAAY,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC;IACtE,CAAC,EAAE;QACD,QAAQ;QACR,QAAQ;QACR,YAAY;QACZ,kBAAkB;QAClB,YAAY;QACZ,MAAM;KACP,CAAC,CAAC;IAEH,MAAM,mBAAmB,GAAG,OAAO,CAAC,GAAG,EAAE;QACvC,OAAO,iCAAiC,CACtC,kBAAkB,IAAI,YAAY,CACnC,CAAC;IACJ,CAAC,EAAE,CAAC,kBAAkB,EAAE,YAAY,CAAC,CAAC,CAAC;IAEvC,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE;QACjC,OAAO,iCAAiC,CAAC,YAAY,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3E,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC;IAE3B,6BAA6B;IAC7B,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,EAAE;QACnC,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,EAAE,SAAS,IAAI,EAAE,CAAC;QAChD,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAC9C,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC;IAEhD,8BAA8B;IAC9B,MAAM,gBAAgB,GAAG,OAAO,CAAC,GAAG,EAAE;QACpC,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,kBAAkB,KAAK,IAAI,EAAE,CAAC;gBAChC,OAAO,IAAI,CAAC,SAAS,CAAC,kBAAkB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACrD,CAAC;YACD,OAAO,OAAO,YAAY,KAAK,QAAQ;gBACrC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;gBACvC,CAAC,CAAC,YAAY,CAAC;QACnB,CAAC;QACD,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,QAAQ,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC;QACxC,CAAC;QACD,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAC/C,CAAC;QACD,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC/B,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACzC,CAAC;QACD,OAAO,MAAM,IAAI,EAAE,CAAC;IACtB,CAAC,EAAE;QACD,QAAQ;QACR,QAAQ;QACR,QAAQ,CAAC,QAAQ,EAAE,KAAK;QACxB,YAAY;QACZ,kBAAkB;QAClB,YAAY;QACZ,MAAM;KACP,CAAC,CAAC;IAEH,OAAO,CACL,eAAK,SAAS,EAAC,2EAA2E,aACxF,KAAC,eAAe,IACd,KAAK,EAAC,OAAO,EACb,eAAe,EAAE,CAAC,SAAS,EAC3B,YAAY,EACV,KAAC,UAAU,IACT,UAAU,EAAE,eAAe,EAC3B,QAAQ,EAAE,IAAI,EACd,SAAS,EAAC,kDAAkD,GAC5D,YAGJ,cAAK,SAAS,EAAC,8BAA8B,YAC1C,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,CACtB,KAAC,gBAAgB,IAAC,IAAI,EAAE,WAAW,GAAI,CACxC,CAAC,CAAC,CAAC,CACF,cAAK,SAAS,EAAC,qEAAqE,YACjF,QAAQ,CAAC,QAAQ,EAAE,SAAS,IAAI,EAAE,GAC/B,CACP,GACG,GACU,EAEjB,SAAS,IAAI,CACZ,KAAC,eAAe,IACd,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,EAC1D,eAAe,EAAE,IAAI,EACrB,YAAY,EACV,KAAC,UAAU,IACT,UAAU,EAAE,gBAAgB,EAC5B,QAAQ,EAAE,IAAI,EACd,SAAS,EAAC,kDAAkD,GAC5D,YAGH,QAAQ,CAAC,CAAC,CAAC,CACV,eAAK,SAAS,EAAC,+EAA+E,aAC5F,cAAK,SAAS,EAAC,6CAA6C,uCAEtD,EACN,cAAK,SAAS,EAAC,qBAAqB,8GAG9B,EACL,YAAY,CAAC,CAAC,CAAC,CACd,eAAK,SAAS,EAAC,8BAA8B,aAC1C,aAAa,IAAI,CAChB,KAAC,uBAAuB,IAAC,OAAO,EAAE,aAAa,GAAI,CACpD,EACA,mBAAmB,KAAK,IAAI;oCAC7B,OAAO,mBAAmB,KAAK,QAAQ,CAAC,CAAC,CAAC,CACxC,KAAC,gBAAgB,IAAC,IAAI,EAAE,mBAAmB,GAAI,CAChD,CAAC,CAAC,CAAC,CACF,cAAK,SAAS,EAAC,qEAAqE,YACjF,MAAM,CAAC,mBAAmB,IAAI,YAAY,CAAC,GACxC,CACP,IACG,CACP,CAAC,CAAC,CAAC,IAAI,IACJ,CACP,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CACb,eAAK,SAAS,EAAC,yEAAyE,aACtF,cAAK,SAAS,EAAC,2CAA2C,sBAEpD,EACN,cAAK,SAAS,EAAC,cAAc,YAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,GAAO,IAC1D,CACP,CAAC,CAAC,CAAC,CACF,eAAK,SAAS,EAAC,8BAA8B,aAC1C,aAAa,IAAI,CAChB,KAAC,uBAAuB,IAAC,OAAO,EAAE,aAAa,GAAI,CACpD,EACA,aAAa,KAAK,IAAI,IAAI,OAAO,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,CAC7D,KAAC,gBAAgB,IAAC,IAAI,EAAE,aAAa,GAAI,CAC1C,CAAC,CAAC,CAAC,CACF,cAAK,SAAS,EAAC,qEAAqE,YACjF,MAAM,CAAC,aAAa,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,GACpC,CACP,IACG,CACP,GACe,CACnB,IACG,CACP,CAAC;AACJ,CAAC,EACD,CAAC,SAAS,EAAE,SAAS,EAAE,EAAE;IACvB,8CAA8C;IAC9C,OAAO,CACL,SAAS,CAAC,QAAQ,CAAC,EAAE,KAAK,SAAS,CAAC,QAAQ,CAAC,EAAE;QAC/C,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS;YACpC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS;QACxC,SAAS,CAAC,MAAM,KAAK,SAAS,CAAC,MAAM;QACrC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK;YAChC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK;QACpC,SAAS,CAAC,QAAQ,CAAC,QAAQ,KAAK,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAC5D,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,eAAe,CAAC,WAAW,GAAG,iBAAiB,CAAC;AAEhD,MAAM,UAAU,eAAe,CAAC,EAC9B,SAAS,EACT,QAAQ,EACR,YAAY,EACZ,eAAe,EACf,SAAS,EACT,OAAO,EACP,mBAAmB,GAAG,EAAE,EACxB,oBAAoB,EACpB,mBAAmB,EACnB,qBAAqB,EACrB,0BAA0B,GACL;IACrB,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAEpD,IAAI,CAAC,CAAC;IACR,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE9D,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE;QAC1D,OAAO,CACL,SAAS,EAAE,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE;YACrB,IAAI,CAAC,EAAE,CAAC,gBAAgB;gBAAE,OAAO,KAAK,CAAC;YACvC,MAAM,QAAQ,GACZ,CAAC,cAAc,IAAI,EAAE;gBACnB,CAAC,CAAC,EAAE,CAAC,YAAY;gBACjB,CAAC,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;YAClD,OAAO,CACL,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,CACrE,CAAC;QACJ,CAAC,CAAC,IAAI,KAAK,CACZ,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEtD,MAAM,0BAA0B,GAAG,OAAO,CAAC,GAAG,EAAE;QAC9C,IAAI,CAAC,SAAS;YAAE,OAAO,KAAK,CAAC;QAC7B,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE;YAC3B,IAAI,CAAC,EAAE,CAAC,gBAAgB;gBAAE,OAAO,KAAK,CAAC;YACvC,MAAM,QAAQ,GACZ,CAAC,cAAc,IAAI,EAAE;gBACnB,CAAC,CAAC,EAAE,CAAC,YAAY;gBACjB,CAAC,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;YAClD,OAAO,CACL,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,CACrE,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,kBAAkB,CAAC,0BAA0B,CAAC,CAAC;QACjD,CAAC;IACH,CAAC,EAAE,CAAC,WAAW,EAAE,0BAA0B,CAAC,CAAC,CAAC;IAE9C,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE;QAChC,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QACtD,MAAM,WAAW,GAAG;YAClB,GAAG,IAAI,GAAG,CACR,SAAS;iBACN,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;gBACV,MAAM,UAAU,GAAG,iBAAiB,CAAC,EAAE,CAAC,CAAC;gBACzC,OAAO,CACL,CAAC,cAAc,IAAI,EAAE;oBACnB,CAAC,CAAC,EAAE,CAAC,YAAY;oBACjB,CAAC,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,CACrC;qBACE,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC;qBAC7B,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC;qBAC7B,OAAO,CAAC,wBAAwB,EAAE,EAAE,CAAC;qBACrC,IAAI,EAAE,CAAC;YACZ,CAAC,CAAC;iBACD,MAAM,CAAC,OAAO,CAAC,CACnB;SACF,CAAC;QACF,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE;YACzC,MAAM,UAAU,GAAG,iBAAiB,CAAC,EAAE,CAAC,CAAC;YACzC,OAAO,CAAC,CAAC,UAAU,CAAC,QAAQ,EAAE,KAAK,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;QAC9D,CAAC,CAAC,CAAC,MAAM,CAAC;QACV,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;IACrC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,MAAM,yCAAyC,GAAG,OAAO,CAAC,GAAG,EAAE;QAC7D,IAAI,CAAC,0BAA0B,IAAI,CAAC,SAAS,EAAE,MAAM;YAAE,OAAO,KAAK,CAAC;QAEpE,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE;YAC3B,MAAM,UAAU,GAAG,iBAAiB,CAAC,EAAE,CAAC,CAAC;YACzC,MAAM,oBAAoB,GACxB,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC;gBACpE,EAAE,CAAC;YACL,MAAM,gBAAgB,GAAG,oBAAoB;iBAC1C,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC;iBAC1B,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC;iBAC1B,OAAO,CAAC,qBAAqB,EAAE,EAAE,CAAC;iBAClC,IAAI,EAAE;iBACN,WAAW,EAAE,CAAC;YACjB,MAAM,YAAY,GAAG,EAAE,CAAC,gBAAgB,IAAI,UAAU,CAAC,gBAAgB,CAAC;YACxE,MAAM,WAAW,GACf,aAAa,IAAI,EAAE;gBACjB,CAAC,CAAC,EAAE,CAAC,WAAW;gBAChB,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,IAAI,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC;oBAC7D,CAAC,YAAY,CAAC;YAEpB,OAAO,CACL,0BAA0B,CAAC,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC;gBAC/D,CAAC,WAAW;gBACZ,CAAC,UAAU,CAAC,QAAQ,EAAE,KAAK,CAC5B,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,0BAA0B,EAAE,SAAS,CAAC,CAAC,CAAC;IAE5C,MAAM,qBAAqB,GAAG,OAAO,CAAC,GAAG,EAAE;QACzC,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QACvD,OAAO,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE;YAC5B,MAAM,eAAe,GAAG,aAAa,IAAI,EAAE,CAAC;YAC5C,IAAI,eAAe;gBAAE,OAAO,EAAE,CAAC,WAAW,CAAC;YAC3C,MAAM,UAAU,GAAG,iBAAiB,CAAC,EAAE,CAAC,CAAC;YACzC,MAAM,YAAY,GAAG,EAAE,CAAC,gBAAgB,IAAI,UAAU,CAAC,gBAAgB,CAAC;YACxE,OAAO,CACL,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,IAAI,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC;gBAC7D,CAAC,YAAY,CACd,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,uBAAuB,GAAG,KAAK,EACnC,gBAAuC,EACvC,QAAiB,EACjB,EAAE;QACF,IAAI,CAAC,OAAO,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAEtD,MAAM,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;QAEpD,IAAI,QAAQ,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5C,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC;gBACpC,OAAO;gBACP,SAAS,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;oBAC5C,SAAS,EAAE,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,SAAS;oBACnD,UAAU,EAAE,OAAO,CAAC,UAAU;iBAC/B,CAAC,CAAC;aACJ,CAAC,CAAC;YAEH,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC;YAEtE,gBAAgB,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBACnC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;oBACjD,OAAO;gBACT,CAAC;gBACD,MAAM,CAAC,aAAa,CAClB,IAAI,WAAW,CAAC,4BAA4B,EAAE;oBAC5C,MAAM,EAAE;wBACN,SAAS,EAAE,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,SAAS;wBACnD,UAAU,EAAE,OAAO,CAAC,UAAU;wBAC9B,QAAQ,EAAE,IAAI;qBACf;iBACF,CAAC,CACH,CAAC;YACJ,CAAC,CAAC,CAAC;YAEH,OAAO;QACT,CAAC;QAED,MAAM,OAAO,CAAC,GAAG,CACf,gBAAgB,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;YACrC,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG;oBACb,OAAO;oBACP,SAAS,EAAE,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,SAAS;oBACnD,UAAU,EAAE,OAAO,CAAC,UAAU;iBAC/B,CAAC;gBAEF,IAAI,QAAQ,EAAE,CAAC;oBACb,MAAM,eAAe,CAAC,MAAM,CAAC,CAAC;gBAChC,CAAC;qBAAM,CAAC;oBACN,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC;gBAC/B,CAAC;gBAED,MAAM,CAAC,aAAa,CAClB,IAAI,WAAW,CAAC,4BAA4B,EAAE;oBAC5C,MAAM,EAAE;wBACN,SAAS,EAAE,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,SAAS;wBACnD,UAAU,EAAE,OAAO,CAAC,UAAU;wBAC9B,QAAQ;qBACT;iBACF,CAAC,CACH,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CACX,aAAa,WAAW,cAAc,OAAO,CAAC,UAAU,GAAG,EAC3D,KAAK,CACN,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CACH,CAAC;IACJ,CAAC,CAAC;IAEF,0DAA0D;IAC1D,MAAM,uBAAuB,GAAG,KAAK,IAAI,EAAE;QACzC,IAAI,CAAC,OAAO,IAAI,eAAe;YAAE,OAAO;QACxC,IAAI,mBAAmB,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAE7C,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAC9B,IAAI,CAAC;YACH,MAAM,uBAAuB,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC;QAC3D,CAAC;gBAAS,CAAC;YACT,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,sBAAsB,GAAG,KAAK,IAAI,EAAE;QACxC,IAAI,CAAC,OAAO,IAAI,eAAe;YAAE,OAAO;QACxC,IAAI,mBAAmB,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAE7C,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,uBAAuB,CAAC,mBAAmB,EAAE,KAAK,CAAC,CAAC;QAC5D,CAAC;gBAAS,CAAC;YACT,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC,CAAC;IAEF,sCAAsC;IACtC,MAAM,wBAAwB,GAAG,KAAK,IAAI,EAAE;QAC1C,IAAI,CAAC,OAAO,IAAI,eAAe;YAAE,OAAO;QAExC,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACzB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;YAC1E,IAAI,MAAM,CAAC,OAAO,KAAK,KAAK,IAAI,MAAM,CAAC,OAAO,EAAE,IAAI,KAAK,KAAK,EAAE,CAAC;gBAC/D,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;YACjD,CAAC;YACD,oBAAoB,EAAE,EAAE,CAAC;YAEzB,0EAA0E;YAC1E,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACnC,MAAM,uBAAuB,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,KAAK,CAAC,CAAC;YAC7D,KAAK,CACH,wCAAwC,KAAK,EAAE,OAAO,IAAI,eAAe,EAAE,CAC5E,CAAC;QACJ,CAAC;gBAAS,CAAC;YACT,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;IAE7C,OAAO,CACL,eAAK,SAAS,EAAC,eAAe,aAC3B,eAAe,IAAI,CAClB,eACE,SAAS,EAAC,mJAAmJ,EAC7J,OAAO,EAAE,GAAG,EAAE;oBACZ,kBAAkB,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;oBACpC,cAAc,CAAC,IAAI,CAAC,CAAC;gBACvB,CAAC,aAED,cAAK,SAAS,EAAC,8FAA8F,YAC1G,eAAe,CAAC,CAAC,CAAC,CACjB,KAAC,WAAW,IACV,IAAI,EAAE,EAAE,EACR,WAAW,EAAE,GAAG,EAChB,SAAS,EAAC,eAAe,GACzB,CACH,CAAC,CAAC,CAAC,CACF,KAAC,YAAY,IACX,IAAI,EAAE,EAAE,EACR,WAAW,EAAE,GAAG,EAChB,SAAS,EAAC,eAAe,GACzB,CACH,GACG,EACN,cAAK,SAAS,EAAC,iEAAiE,YAC9E,KAAC,MAAM,IAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAI,GAChC,EACN,gBACE,SAAS,EAAE,yBAAyB,CAAC,qBAAqB,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,EAAE,EAAE,aAEzF,SAAS,CAAC,MAAM,gBAAY,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IACzD,EACN,CAAC,eAAe,IAAI,YAAY,IAAI,CACnC,eAAM,SAAS,EAAC,kEAAkE,YAC/E,YAAY,CAAC,WAAW,CAAC,MAAM,IAAI,CAAC;4BACnC,CAAC,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;4BACrC,CAAC,CAAC,GAAG,YAAY,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,YAAY,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,OAAO,GAChG,CACR,EACA,YAAY,IAAI,YAAY,CAAC,UAAU,GAAG,CAAC,IAAI,CAC9C,gBAAM,SAAS,EAAC,kDAAkD,kBAC9D,YAAY,CAAC,UAAU,YACxB,YAAY,CAAC,UAAU,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,SACpC,CACR,IACG,CACP,EACA,yCAAyC;gBACxC,0BAA0B,IAAI,CAC5B,cAAK,SAAS,EAAC,sFAAsF,YACnG,eAAK,SAAS,EAAC,yCAAyC,aACtD,eAAK,SAAS,EAAC,gBAAgB,aAC7B,cAAK,SAAS,EAAC,eAAe,YAC3B,0BAA0B,CAAC,KAAK,GAC7B,EACN,cAAK,SAAS,EAAC,oBAAoB,YAChC,0BAA0B,CAAC,WAAW,GACnC,IACF,EACN,eAAK,SAAS,EAAC,kCAAkC,aAC/C,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,yIAAyI,EACnJ,QAAQ,EAAE,0BAA0B,CAAC,SAAS,EAC9C,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;wCACjB,KAAK,CAAC,eAAe,EAAE,CAAC;wCACxB,0BAA0B,CAAC,QAAQ,EAAE,CAAC;oCACxC,CAAC,YAEA,0BAA0B,CAAC,WAAW,GAChC,EACR,0BAA0B,CAAC,QAAQ,IAAI,CACtC,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,yIAAyI,EACnJ,QAAQ,EAAE,0BAA0B,CAAC,SAAS,EAC9C,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;wCACjB,KAAK,CAAC,eAAe,EAAE,CAAC;wCACxB,0BAA0B,CAAC,QAAQ,EAAE,EAAE,CAAC;oCAC1C,CAAC,YAEA,0BAA0B,CAAC,WAAW,IAAI,QAAQ,GAC5C,CACV,IACG,IACF,GACF,CACP,EACF,eAAe,IAAI,CAClB,cAAK,SAAS,EAAC,MAAM,YAClB,SAAS,CAAC,GAAG,CAAC,CAAC,gBAAgB,EAAE,SAAS,EAAE,EAAE;oBAC7C,MAAM,QAAQ,GAAG,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;oBACrD,MAAM,UAAU,GAAG,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;oBAC7C,MAAM,eAAe,GAAG,aAAa,IAAI,gBAAgB,CAAC;oBAC1D,MAAM,WAAW,GACf,CAAC,YAAY,IAAI,gBAAgB;wBAC/B,CAAC,CAAC,gBAAgB,CAAC,UAAU;wBAC7B,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,GAAG,SAAS,IAAI,SAAS,EAAE,CAAC;oBAClD,MAAM,UAAU,GAAG,GAAG,SAAS,IAAI,WAAW,EAAE,CAAC;oBACjD,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;oBACrC,MAAM,YAAY,GAAG,kBAAkB,CACrC,QAAQ,CAAC,WAAW,EACpB,QAAQ,CAAC,cAAc,CACxB,CAAC;oBAEF,qEAAqE;oBACrE,MAAM,YAAY,GAChB,gBAAgB,CAAC,gBAAgB,IAAI,QAAQ,CAAC,gBAAgB,CAAC;oBAEjE,MAAM,WAAW,GAAG,eAAe;wBACjC,CAAC,CAAC,gBAAgB,CAAC,WAAW;wBAC9B,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,IAAI,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC;oBAEhE,8EAA8E;oBAC9E,MAAM,WAAW,GACf,eAAe;wBACf,aAAa,IAAI,gBAAgB;wBACjC,gBAAgB,CAAC,WAAW,KAAK,IAAI,CAAC;oBAExC,yCAAyC;oBACzC,MAAM,iBAAiB,GAAG,YAAY,CAAC;oBAEvC,uFAAuF;oBACvF,MAAM,qBAAqB,GACzB,YAAY,IAAI,gBAAgB;wBAC9B,CAAC,CAAC,gBAAgB,CAAC,UAAU;wBAC7B,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAClB,MAAM,oBAAoB,GACxB,mBAAmB,EAAE,GAAG,CAAC,qBAAqB,CAAC,IAAI,KAAK,CAAC;oBAE3D,mGAAmG;oBACnG,2GAA2G;oBAC3G,MAAM,oBAAoB,GACxB,CAAC,cAAc,IAAI,gBAAgB;wBACjC,CAAC,CAAC,gBAAgB,CAAC,YAAY;wBAC/B,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;oBACtC,MAAM,gBAAgB,GAAG,oBAAoB;yBAC1C,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC;yBAC1B,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC;yBAC1B,OAAO,CAAC,qBAAqB,EAAE,EAAE,CAAC;yBAClC,IAAI,EAAE;yBACN,WAAW,EAAE,CAAC;oBACjB,MAAM,UAAU,GAAG,oBAAoB,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;oBAC/D,MAAM,UAAU,GAAG,oBAAoB,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;oBAC/D,MAAM,SAAS,GACb,oBAAoB,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC;oBACtD,2EAA2E;oBAC3E,MAAM,iBAAiB,GAAG,UAAU,IAAI,UAAU,CAAC;oBAEnD,wCAAwC;oBAExC,MAAM,UAAU,GAAG,YAAY,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC;oBACrD,MAAM,oCAAoC,GACxC,CAAC,CAAC,0BAA0B;wBAC5B,0BAA0B,CAAC,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC;wBAC/D,CAAC,WAAW;wBACZ,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC;oBAC5B,MAAM,iBAAiB,GACrB,gBAAgB,CAAC,SAAS,IAAI,QAAQ,CAAC,SAAS,IAAI,SAAS,CAAC;oBAEhE,OAAO,CACL,0BACE,eACE,SAAS,EAAC,mJAAmJ,EAC7J,OAAO,EAAE,GAAG,EAAE;oCACZ,eAAe,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;wCACzB,GAAG,IAAI;wCACP,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC;qCAChC,CAAC,CAAC,CAAC;gCACN,CAAC,aAED,cAAK,SAAS,EAAC,8FAA8F,YAC1G,UAAU,CAAC,CAAC,CAAC,CACZ,KAAC,WAAW,IACV,IAAI,EAAE,EAAE,EACR,WAAW,EAAE,GAAG,EAChB,SAAS,EAAC,eAAe,GACzB,CACH,CAAC,CAAC,CAAC,CACF,KAAC,YAAY,IACX,IAAI,EAAE,EAAE,EACR,WAAW,EAAE,GAAG,EAChB,SAAS,EAAC,eAAe,GACzB,CACH,GACG,EACL,WAAW,CAAC,CAAC,CAAC,CACb,cACE,SAAS,EAAE,oEACT,QAAQ,CAAC,QAAQ,EAAE,KAAK,IAAI,CAAC,QAAQ;4CACnC,CAAC,CAAC,cAAc;4CAChB,CAAC,CAAC,QAAQ;gDACR,CAAC,CAAC,gBAAgB;gDAClB,CAAC,CAAC,gBACR,EAAE,YAED,WAAW,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC,GACxC,CACP,CAAC,CAAC,CAAC,iBAAiB,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAC5C,cAAK,SAAS,EAAC,iFAAiF,YAC7F,WAAW,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC,GACxC,CACP,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;oCAC7B,sFAAsF;oCACtF,KAAC,OAAO,IAAC,IAAI,EAAC,IAAI,GAAG,CACtB,CAAC,CAAC,CAAC;oCACF,+DAA+D;oCAC/D,cAAK,SAAS,EAAC,gFAAgF,YAC5F,WAAW,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC,GACxC,CACP,EACD,eAAK,SAAS,EAAC,+CAA+C,aAC5D,gBACE,SAAS,EAAE,oDACT,QAAQ,CAAC,QAAQ,EAAE,KAAK,IAAI,CAAC,QAAQ;oDACnC,CAAC,CAAC,cAAc;oDAChB,CAAC,CAAC,QAAQ;wDACR,CAAC,CAAC,gBAAgB;wDAClB,CAAC,CAAC,EACR,EAAE,aAGD,CACC,oBAAoB;wDACpB,QAAQ,EAAE,QAAQ,EAAE,IAAI;wDACxB,QAAQ,EAAE,WAAW;wDACrB,yBAAyB,CAC1B;yDACE,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC;yDAC1B,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC;yDAC1B,OAAO,CAAC,qBAAqB,EAAE,EAAE,CAAC,EACpC,QAAQ,CAAC,QAAQ,EAAE,KAAK,IAAI,CAAC,UAAU,IAAI,CAAC,QAAQ,IAAI,CACvD,eAAM,SAAS,EAAC,6BAA6B,wBAEtC,CACR,EACA,QAAQ,IAAI,CACX,gBAAM,SAAS,EAAC,oHAAoH,aAClI,oCAAc,eACT,CACR,EACA,iBAAiB,IAAI,UAAU,IAAI,CAClC,gBAAM,SAAS,EAAC,gHAAgH,aAC9H,oCAAc,iBACT,CACR,IACI,EACN,iBAAiB,EAAE,OAAO,IAAI,CAC7B,MAAC,OAAO,eACN,KAAC,cAAc,IAAC,OAAO,kBACrB,eAAM,SAAS,EAAC,4EAA4E,YACzF,iBAAiB,CAAC,OAAO,GACrB,GACQ,EACjB,KAAC,cAAc,IAAC,IAAI,EAAC,KAAK,EAAC,SAAS,EAAC,UAAU,YAC5C,iBAAiB,CAAC,OAAO,GACX,IACT,CACX,EACD,eAAK,SAAS,EAAC,4CAA4C,aACxD,CAAC,WAAW;wDACX,iBAAiB;wDACjB,CAAC,iBAAiB,IAAI,CACpB,KAAC,cAAc,IACb,UAAU,EAAE,qBAAqB,EACjC,qBAAqB,EAAE,qBAAqB,EAC5C,iBAAiB,EAAE,iBAAiB,EACpC,eAAe,EAAE,eAAe,EAChC,gBAAgB,EAAE,gBAAgB,EAClC,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,iBAAiB,EAC5B,OAAO,EAAE,OAAO,GAChB,CACH,EACF,YAAY,IAAI,CACf,eAAM,SAAS,EAAC,qCAAqC,YAClD,YAAY,GACR,CACR,IACG,IACF,IACF,EACL,UAAU,IAAI,CACb,KAAC,eAAe,IAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,GAAI,CAC5D,EACA,CAAC,yCAAyC;gCACzC,oCAAoC;gCACpC,0BAA0B,IAAI,CAC5B,cAAK,SAAS,EAAC,sFAAsF,YACnG,eAAK,SAAS,EAAC,yCAAyC,aACtD,eAAK,SAAS,EAAC,gBAAgB,aAC7B,cAAK,SAAS,EAAC,eAAe,YAC3B,0BAA0B,CAAC,KAAK,GAC7B,EACN,cAAK,SAAS,EAAC,oBAAoB,YAChC,0BAA0B,CAAC,WAAW,GACnC,IACF,EACN,eAAK,SAAS,EAAC,kCAAkC,aAC/C,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,yIAAyI,EACnJ,QAAQ,EAAE,0BAA0B,CAAC,SAAS,EAC9C,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;wDACjB,KAAK,CAAC,eAAe,EAAE,CAAC;wDACxB,0BAA0B,CAAC,QAAQ,EAAE,CAAC;oDACxC,CAAC,YAEA,0BAA0B,CAAC,WAAW,GAChC,EACR,0BAA0B,CAAC,QAAQ,IAAI,CACtC,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,yIAAyI,EACnJ,QAAQ,EAAE,0BAA0B,CAAC,SAAS,EAC9C,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;wDACjB,KAAK,CAAC,eAAe,EAAE,CAAC;wDACxB,0BAA0B,CAAC,QAAQ,EAAE,EAAE,CAAC;oDAC1C,CAAC,YAEA,0BAA0B,CAAC,WAAW;wDACrC,QAAQ,GACH,CACV,IACG,IACF,GACF,CACP,KAtKK,WAAW,CAuKf,CACP,CAAC;gBACJ,CAAC,CAAC,GACE,CACP,EAEA,CAAC,GAAG,EAAE;gBACL,IAAI,CAAC,0BAA0B;oBAAE,OAAO,IAAI,CAAC;gBAC7C,MAAM,YAAY,GAAG,mBAAmB,CAAC,MAAM,CAAC;gBAEhD,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAC5B,IAAI,GAAG,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,IAAI,SAAS,CAAC,CAAC,CAClE,CAAC;gBACF,MAAM,UAAU,GACd,WAAW,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;gBACxD,MAAM,SAAS,GAAG,UAAU;oBAC1B,CAAC,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG;oBAChE,CAAC,CAAC,EAAE,CAAC;gBAEP,2EAA2E;gBAC3E,MAAM,oBAAoB,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE;oBACjD,IAAI,CAAC,EAAE,CAAC,gBAAgB;wBAAE,OAAO,KAAK,CAAC;oBACvC,MAAM,IAAI,GACR,CAAC,cAAc,IAAI,EAAE;wBACnB,CAAC,CAAC,EAAE,CAAC,YAAY;wBACjB,CAAC,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;oBAClD,MAAM,IAAI,GAAG,IAAI;yBACd,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC;yBAC1B,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC;yBAC1B,OAAO,CAAC,qBAAqB,EAAE,EAAE,CAAC;yBAClC,IAAI,EAAE;yBACN,WAAW,EAAE,CAAC;oBACjB,OAAO,IAAI,KAAK,aAAa,IAAI,IAAI,KAAK,cAAc,CAAC;gBAC3D,CAAC,CAAC,CAAC;gBAEH,OAAO,CACL,eAAK,SAAS,EAAC,wDAAwD,aACpE,CAAC,oBAAoB,IAAI,CACxB,KAAC,MAAM,IACL,IAAI,EAAC,IAAI,EACT,OAAO,EAAC,SAAS,EACjB,QAAQ,EAAE,eAAe,EACzB,OAAO,EAAE,wBAAwB,EACjC,SAAS,EAAC,SAAS,YAElB,eAAe,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,sBAAsB,GACnD,CACV,EACD,KAAC,MAAM,IACL,IAAI,EAAC,IAAI,EACT,OAAO,EAAC,SAAS,iBACL,yBAAyB,EACrC,QAAQ,EAAE,eAAe,KAAK,IAAI,EAClC,OAAO,EAAE,sBAAsB,EAC/B,SAAS,EAAC,SAAS,YAElB,eAAe,KAAK,QAAQ;gCAC3B,CAAC,CAAC,cAAc;gCAChB,CAAC,CAAC,cAAc,SAAS,IAAI,YAAY,GAAG,GACvC,EACT,KAAC,MAAM,IACL,IAAI,EAAC,IAAI,iBACG,0BAA0B,EACtC,QAAQ,EAAE,eAAe,KAAK,IAAI,EAClC,OAAO,EAAE,uBAAuB,EAChC,SAAS,EAAC,SAAS,YAElB,eAAe,KAAK,SAAS;gCAC5B,CAAC,CAAC,cAAc;gCAChB,CAAC,CAAC,eAAe,SAAS,IAAI,YAAY,GAAG,GACxC,IACL,CACP,CAAC;YACJ,CAAC,CAAC,EAAE,IACA,CACP,CAAC;AACJ,CAAC;AAED,sEAAsE;AACtE,SAAS,cAAc,CAAC,EACtB,UAAU,EACV,qBAAqB,EACrB,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,QAAQ,EACR,SAAS,EACT,OAAO,GAUR;IACC,MAAM,gBAAgB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACvC,MAAM,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEtE,6DAA6D;IAC7D,uFAAuF;IACvF,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,gBAAgB,CAAC,OAAO,IAAI,qBAAqB,IAAI,UAAU,EAAE,CAAC;YACrE,qFAAqF;YACrF,qBAAqB,CAAC,GAAG,EAAE;gBACzB,qBAAqB,CAAC,GAAG,EAAE;oBACzB,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;wBAC9B,qBAAqB,CAAC,UAAU,CAAC,CAAC;wBAClC,gBAAgB,CAAC,OAAO,GAAG,IAAI,CAAC;oBAClC,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC,EAAE,CAAC,qBAAqB,EAAE,UAAU,CAAC,CAAC,CAAC;IAExC,8DAA8D;IAC9D,MAAM,WAAW,GAAG,GAAG,EAAE;QACvB,IAAI,CAAC,gBAAgB,CAAC,OAAO,IAAI,qBAAqB,IAAI,UAAU,EAAE,CAAC;YACrE,qBAAqB,CAAC,UAAU,CAAC,CAAC;YAClC,gBAAgB,CAAC,OAAO,GAAG,IAAI,CAAC;QAClC,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,kBAAkB,GAAG,GAAG,EAAE;QAC9B,OAAO,eAAe;YACpB,CAAC,CAAC,gBAAgB,CAAC,WAAW,IAAI,gBAAgB,CAAC,SAAS;YAC5D,CAAC,CAAC,SAAS,CAAC;IAChB,CAAC,CAAC;IAEF,MAAM,wBAAwB,GAAG,CAC/B,eAAuB,EACvB,QAAiB,EACjB,EAAE;QACF,MAAM,EAAE,GAAG,IAAI,WAAW,CAAC,4BAA4B,EAAE;YACvD,MAAM,EAAE;gBACN,SAAS,EAAE,eAAe;gBAC1B,UAAU,EAAE,QAAQ,CAAC,EAAE;gBACvB,QAAQ;aACT;SACK,CAAC,CAAC;QACV,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IAC3B,CAAC,CAAC;IAEF,MAAM,sBAAsB,GAAG,KAAK,IAAI,EAAE;QACxC,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAC;QAC7C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;YAC9D,OAAO;QACT,CAAC;QACD,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,OAAO,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC;YAChE,OAAO;QACT,CAAC;QAED,MAAM,eAAe,CAAC;YACpB,OAAO;YACP,SAAS,EAAE,eAAe;YAC1B,UAAU,EAAE,QAAQ,CAAC,EAAE;SACxB,CAAC,CAAC;QACH,wBAAwB,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;IAClD,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,iBAAiB,CAAC,cAAc,CAAC;IACxD,MAAM,sBAAsB,GAC1B,CAAC,CAAC,OAAO;QACT,cAAc,EAAE,aAAa,KAAK,QAAQ;QAC1C,CAAC,CAAC,cAAc,CAAC,YAAY;QAC7B,CAAC,CAAC,cAAc,CAAC,cAAc,CAAC;IAElC,MAAM,SAAS,GAAG,iBAAiB,CAAC,SAAS,CAAC;IAC9C,MAAM,YAAY,GAChB,SAAS,KAAK,MAAM;QAClB,CAAC,CAAC,yBAAyB;QAC3B,CAAC,CAAC,SAAS,KAAK,QAAQ;YACtB,CAAC,CAAC,6BAA6B;YAC/B,CAAC,CAAC,6BAA6B,CAAC;IAEtC,OAAO,CACL,8BACG,SAAS,IAAI,CACZ,MAAC,OAAO,eACN,KAAC,cAAc,IAAC,OAAO,kBACrB,eACE,SAAS,EAAE,kFAAkF,YAAY,EAAE,YAE1G,SAAS,GACL,GACQ,EACjB,MAAC,cAAc,IAAC,IAAI,EAAC,KAAK,EAAC,SAAS,EAAC,UAAU,aAC7C,eAAK,SAAS,EAAC,eAAe,uBAAQ,SAAS,CAAC,WAAW,EAAE,IAAO,EACpE,cAAK,SAAS,EAAC,+BAA+B,YAC3C,iBAAiB,CAAC,OAAO,GACtB,IACS,IACT,CACX,EACA,sBAAsB,IAAI,CACzB,MAAC,OAAO,eACN,KAAC,cAAc,IAAC,OAAO,kBACrB,iBACE,IAAI,EAAC,QAAQ,gBAEX,mBAAmB;gCACjB,CAAC,CAAC,aAAa;gCACf,CAAC,CAAC,oBAAoB,cAAc,EAAE,cAAc,EAAE,EAE1D,QAAQ,EAAE,mBAAmB,EAC7B,SAAS,EAAC,8JAA8J,EACxK,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;gCACnB,CAAC,CAAC,eAAe,EAAE,CAAC;gCACpB,WAAW,EAAE,CAAC;gCACd,IAAI,CAAC,OAAO,IAAI,CAAC,cAAc,EAAE,YAAY;oCAAE,OAAO;gCAEtD,sBAAsB,CAAC,IAAI,CAAC,CAAC;gCAC7B,IAAI,CAAC;oCACH,MAAM,wBAAwB,CAAC;wCAC7B,OAAO;wCACP,MAAM,EAAE,cAAc,CAAC,YAAY;wCACnC,aAAa,EAAE,QAAQ;wCACvB,SAAS,EAAE,aAAa;qCACzB,CAAC,CAAC;oCACH,MAAM,sBAAsB,EAAE,CAAC;gCACjC,CAAC;gCAAC,OAAO,KAAU,EAAE,CAAC;oCACpB,OAAO,CAAC,KAAK,CAAC,uCAAuC,EAAE,KAAK,CAAC,CAAC;oCAC9D,KAAK,CACH,qCAAqC,KAAK,EAAE,OAAO,IAAI,eAAe,EAAE,CACzE,CAAC;gCACJ,CAAC;wCAAS,CAAC;oCACT,sBAAsB,CAAC,KAAK,CAAC,CAAC;gCAChC,CAAC;4BACH,CAAC,YAED,KAAC,WAAW,IAAC,SAAS,EAAC,QAAQ,GAAG,GAC3B,GACM,EACjB,KAAC,cAAc,IAAC,IAAI,EAAC,KAAK,YACvB,mBAAmB;4BAClB,CAAC,CAAC,aAAa;4BACf,CAAC,CAAC,oBAAoB,cAAc,EAAE,cAAc,EAAE,GACzC,IACT,CACX,EACD,MAAC,OAAO,eACN,KAAC,cAAc,IAAC,OAAO,kBACrB,iBACE,IAAI,EAAC,QAAQ,gBACF,QAAQ,iBACP,qBAAqB,EACjC,SAAS,EAAC,0GAA0G,EACpH,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;gCACnB,CAAC,CAAC,eAAe,EAAE,CAAC;gCACpB,WAAW,EAAE,CAAC;gCACd,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAC;gCAC7C,IAAI,CAAC,OAAO,EAAE,CAAC;oCACb,OAAO,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC;oCAC/D,OAAO;gCACT,CAAC;gCACD,IAAI,CAAC,eAAe,EAAE,CAAC;oCACrB,OAAO,CAAC,KAAK,CACX,iDAAiD,CAClD,CAAC;oCACF,OAAO;gCACT,CAAC;gCACD,IAAI,CAAC;oCACH,MAAM,cAAc,CAAC;wCACnB,OAAO;wCACP,SAAS,EAAE,eAAe;wCAC1B,UAAU,EAAE,QAAQ,CAAC,EAAE;qCACxB,CAAC,CAAC;oCACH,wBAAwB,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;gCACnD,CAAC;gCAAC,OAAO,KAAK,EAAE,CAAC;oCACf,OAAO,CAAC,KAAK,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;gCAC3C,CAAC;4BACH,CAAC,YAED,KAAC,CAAC,IAAC,SAAS,EAAC,QAAQ,GAAG,GACjB,GACM,EACjB,KAAC,cAAc,IAAC,IAAI,EAAC,KAAK,uBAAwB,IAC1C,EACV,MAAC,OAAO,eACN,KAAC,cAAc,IAAC,OAAO,kBACrB,iBACE,IAAI,EAAC,QAAQ,gBACF,SAAS,iBACR,sBAAsB,EAClC,SAAS,EAAC,gHAAgH,EAC1H,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;gCACnB,CAAC,CAAC,eAAe,EAAE,CAAC;gCACpB,WAAW,EAAE,CAAC;gCACd,IAAI,CAAC;oCACH,MAAM,sBAAsB,EAAE,CAAC;gCACjC,CAAC;gCAAC,OAAO,KAAU,EAAE,CAAC;oCACpB,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,KAAK,CAAC,CAAC;oCAC1C,KAAK,CACH,sBAAsB,KAAK,EAAE,OAAO,IAAI,eAAe,EAAE,CAC1D,CAAC;gCACJ,CAAC;4BACH,CAAC,YAED,KAAC,KAAK,IAAC,SAAS,EAAC,QAAQ,GAAG,GACrB,GACM,EACjB,KAAC,cAAc,IAAC,IAAI,EAAC,KAAK,wBAAyB,IAC3C,IACT,CACJ,CAAC;AACJ,CAAC"}
@@ -0,0 +1,13 @@
1
+ import type { MouseEvent as ReactMouseEvent } from "react";
2
+ import type { EditContextType } from "./client/editContext";
3
+ import type { ItemCommand } from "./commands/itemCommands";
4
+ import type { ItemDescriptor } from "./pageModel";
5
+ export declare function showItemContextMenu({ editContext, event, itemIds, language, version, openInNewSlotItem, commandCallback, }: {
6
+ editContext: EditContextType | undefined;
7
+ event: ReactMouseEvent | MouseEvent;
8
+ itemIds: string[];
9
+ language: string;
10
+ version?: number;
11
+ openInNewSlotItem?: ItemDescriptor;
12
+ commandCallback?: (command: ItemCommand, result: unknown) => void;
13
+ }): Promise<void>;
@@ -0,0 +1,80 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { SquarePlus } from "lucide-react";
3
+ import { Spinner } from "./ui/Spinner";
4
+ export async function showItemContextMenu({ editContext, event, itemIds, language, version = 0, openInNewSlotItem, commandCallback, }) {
5
+ if (!editContext || itemIds.length === 0)
6
+ return;
7
+ event.preventDefault();
8
+ event.stopPropagation();
9
+ const { clientX, clientY, shiftKey, altKey, ctrlKey } = event;
10
+ const syntheticEvent = new MouseEvent("contextmenu", {
11
+ bubbles: true,
12
+ cancelable: true,
13
+ view: window,
14
+ clientX,
15
+ clientY,
16
+ shiftKey,
17
+ altKey,
18
+ ctrlKey,
19
+ });
20
+ let loadingShown = false;
21
+ const loadingTimer = setTimeout(() => {
22
+ loadingShown = true;
23
+ editContext.showContextMenu(syntheticEvent, [
24
+ {
25
+ id: "loading",
26
+ label: "Loading…",
27
+ disabled: true,
28
+ icon: _jsx(Spinner, { size: "sm", className: "mr-2" }),
29
+ },
30
+ ]);
31
+ }, 100);
32
+ const items = await editContext.itemsRepository.getItems(itemIds.map((id) => ({ id, language, version })));
33
+ clearTimeout(loadingTimer);
34
+ const openInNewSlotMenuItems = openInNewSlotItem && !editContext.isMobile
35
+ ? [
36
+ {
37
+ id: "open-in-new-slot",
38
+ label: "Open in new slot",
39
+ icon: _jsx(SquarePlus, { className: "h-4 w-4" }),
40
+ command: async () => {
41
+ await editContext.loadItem(openInNewSlotItem, {
42
+ openInNewSlot: true,
43
+ });
44
+ },
45
+ },
46
+ { id: "sep-open-in-new-slot", separator: true },
47
+ ]
48
+ : [];
49
+ if (!items || items.length === 0) {
50
+ const menuItems = [
51
+ ...openInNewSlotMenuItems,
52
+ { id: "empty", label: "No actions available", disabled: true },
53
+ ];
54
+ if (loadingShown)
55
+ editContext.updateContextMenu(menuItems);
56
+ else
57
+ editContext.showContextMenu(syntheticEvent, menuItems);
58
+ return;
59
+ }
60
+ const menuItems = await editContext.configuration.editor.contentTree.contextMenu.factory({
61
+ items,
62
+ editContext,
63
+ commandCallback,
64
+ });
65
+ if (!menuItems || menuItems.length === 0) {
66
+ const emptyMenuItems = [
67
+ ...openInNewSlotMenuItems,
68
+ { id: "empty", label: "No actions available", disabled: true },
69
+ ];
70
+ if (loadingShown)
71
+ editContext.updateContextMenu(emptyMenuItems);
72
+ return;
73
+ }
74
+ const finalMenuItems = [...openInNewSlotMenuItems, ...menuItems];
75
+ if (loadingShown)
76
+ editContext.updateContextMenu(finalMenuItems);
77
+ else
78
+ editContext.showContextMenu(syntheticEvent, finalMenuItems);
79
+ }
80
+ //# sourceMappingURL=itemContextMenu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"itemContextMenu.js","sourceRoot":"","sources":["../../src/editor/itemContextMenu.tsx"],"names":[],"mappings":"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"}
@@ -10,27 +10,30 @@ import { FilterInput } from "../../components/FilterInput";
10
10
  import { executeSearch } from "../services/searchService";
11
11
  import { useDebouncedCallback } from "use-debounce";
12
12
  import { Spinner } from "../ui/Spinner";
13
+ import { showItemContextMenu } from "../itemContextMenu";
13
14
  // Memoized thumbnail item component to prevent unnecessary re-renders
14
- const ThumbnailItem = memo(({ thumbnail, isSelected, onClick, viewMode, }) => {
15
+ const ThumbnailItem = memo(({ thumbnail, isSelected, onClick, onContextMenu, viewMode, }) => {
15
16
  const hasImage = !!thumbnail.thumbUrl;
16
17
  const iconSrc = thumbnail.largeIcon || thumbnail.icon;
17
18
  if (viewMode === "list") {
18
19
  return (_jsxs("div", { className: cn(isSelected
19
20
  ? "border-blue-300 bg-blue-100"
20
- : "bg-white hover:bg-gray-50", "flex cursor-pointer items-center gap-3 rounded-lg border p-3 transition-colors duration-200"), onClick: onClick, children: [_jsx("div", { className: "flex h-16 w-16 flex-shrink-0 items-center justify-center rounded-md bg-gray-50", children: hasImage ? (_jsx("img", { src: thumbnail.thumbUrl, alt: thumbnail.name, className: "max-h-full max-w-full object-contain" })) : iconSrc ? (_jsx("img", { src: iconSrc, alt: thumbnail.name, className: "object-contain opacity-80", style: { width: "32px", height: "32px" } })) : (_jsx(FileIcon, { className: "h-8 w-8 text-gray-400" })) }), _jsxs("div", { className: "min-w-0 flex-1", children: [_jsx("div", { className: "text-dark truncate text-xs font-medium", children: thumbnail.name }), _jsx("div", { className: "mt-1 text-xs text-gray-500", children: "Media File" })] })] }));
21
+ : "bg-white hover:bg-gray-50", "flex cursor-pointer items-center gap-3 rounded-lg border p-3 transition-colors duration-200"), onClick: onClick, onContextMenu: onContextMenu, children: [_jsx("div", { className: "flex h-16 w-16 flex-shrink-0 items-center justify-center rounded-md bg-gray-50", children: hasImage ? (_jsx("img", { src: thumbnail.thumbUrl, alt: thumbnail.name, className: "max-h-full max-w-full object-contain" })) : iconSrc ? (_jsx("img", { src: iconSrc, alt: thumbnail.name, className: "object-contain opacity-80", style: { width: "32px", height: "32px" } })) : (_jsx(FileIcon, { className: "h-8 w-8 text-gray-400" })) }), _jsxs("div", { className: "min-w-0 flex-1", children: [_jsx("div", { className: "text-dark truncate text-xs font-medium", children: thumbnail.name }), _jsx("div", { className: "mt-1 text-xs text-gray-500", children: "Media File" })] })] }));
21
22
  }
22
23
  const isLarge = viewMode === "large-grid";
23
24
  const gridSrc = isLarge ? thumbnail.previewUrl : thumbnail.thumbUrl;
24
25
  return (_jsxs("div", { className: cn(isSelected
25
26
  ? "shadow-lg ring-2 ring-blue-500"
26
- : "shadow-sm hover:shadow-md", "cursor-pointer overflow-hidden rounded-lg bg-white transition-all duration-200 hover:scale-105"), onClick: onClick, children: [_jsx("div", { className: "flex aspect-square items-center justify-center bg-gray-50", children: gridSrc ? (_jsx("img", { src: gridSrc, alt: thumbnail.name, className: "max-h-full max-w-full object-contain" })) : iconSrc ? (_jsx("img", { src: iconSrc, alt: thumbnail.name, className: "object-contain opacity-80", style: { width: "32px", height: "32px" } })) : (_jsx(FileIcon, { className: cn("text-gray-400", isLarge ? "h-20 w-20" : "h-12 w-12") })) }), _jsx("div", { className: isLarge ? "p-3" : "p-2", children: _jsx("div", { className: cn("line-clamp-2 break-all text-gray-700", isLarge ? "text-sm font-medium" : "text-xs font-medium"), children: thumbnail.name }) })] }));
27
+ : "shadow-sm hover:shadow-md", "cursor-pointer overflow-hidden rounded-lg bg-white transition-all duration-200 hover:scale-105"), onClick: onClick, onContextMenu: onContextMenu, children: [_jsx("div", { className: "flex aspect-square items-center justify-center bg-gray-50", children: gridSrc ? (_jsx("img", { src: gridSrc, alt: thumbnail.name, className: "max-h-full max-w-full object-contain" })) : iconSrc ? (_jsx("img", { src: iconSrc, alt: thumbnail.name, className: "object-contain opacity-80", style: { width: "32px", height: "32px" } })) : (_jsx(FileIcon, { className: cn("text-gray-400", isLarge ? "h-20 w-20" : "h-12 w-12") })) }), _jsx("div", { className: isLarge ? "p-3" : "p-2", children: _jsx("div", { className: cn("line-clamp-2 break-all text-gray-700", isLarge ? "text-sm font-medium" : "text-xs font-medium"), children: thumbnail.name }) })] }));
27
28
  });
28
29
  ThumbnailItem.displayName = "ThumbnailItem";
29
30
  export function MediaFolderBrowser({ folderId, language = "en", onMediaSelected, }) {
30
31
  const [viewMode, setViewMode] = useState("grid");
31
32
  const [images, setImages] = useState([]);
32
33
  const [selectedImage, setSelectedImage] = useState();
34
+ const [selectedImageIds, setSelectedImageIds] = useState([]);
33
35
  const selectedImageRef = useRef(selectedImage);
36
+ const lastSelectedImageId = useRef(undefined);
34
37
  const [loading, setLoading] = useState(false);
35
38
  const [uploading, setUploading] = useState(false);
36
39
  const [searchQuery, setSearchQuery] = useState("");
@@ -40,6 +43,10 @@ export function MediaFolderBrowser({ folderId, language = "en", onMediaSelected,
40
43
  // Keep ref in sync with state
41
44
  useEffect(() => {
42
45
  selectedImageRef.current = selectedImage;
46
+ if (!selectedImage)
47
+ return;
48
+ setSelectedImageIds((ids) => (ids.length === 0 ? [selectedImage.id] : ids));
49
+ lastSelectedImageId.current ??= selectedImage.id;
43
50
  }, [selectedImage]);
44
51
  useEffect(() => {
45
52
  loadMediaFiles();
@@ -110,15 +117,45 @@ export function MediaFolderBrowser({ folderId, language = "en", onMediaSelected,
110
117
  setSearchResults([]);
111
118
  }
112
119
  }, [searchQuery]);
113
- const handleClick = useCallback(async (thumbnail, ev) => {
114
- // Set selected image immediately and update ref - set synchronously for immediate visual feedback
120
+ const displayImages = useMemo(() => {
121
+ return searchQuery.trim() ? searchResults : images;
122
+ }, [searchQuery, searchResults, images]);
123
+ const updateSelection = useCallback((thumbnail, ev) => {
115
124
  selectedImageRef.current = thumbnail;
116
125
  setSelectedImage(thumbnail);
126
+ if (ev.shiftKey && lastSelectedImageId.current) {
127
+ const lastIndex = displayImages.findIndex((x) => x.id === lastSelectedImageId.current);
128
+ const currentIndex = displayImages.findIndex((x) => x.id === thumbnail.id);
129
+ if (lastIndex !== -1 && currentIndex !== -1) {
130
+ const start = Math.min(lastIndex, currentIndex);
131
+ const end = Math.max(lastIndex, currentIndex);
132
+ setSelectedImageIds(displayImages.slice(start, end + 1).map((x) => x.id));
133
+ return;
134
+ }
135
+ }
136
+ if (ev.ctrlKey || ev.metaKey) {
137
+ setSelectedImageIds((ids) => {
138
+ const nextIds = ids.includes(thumbnail.id)
139
+ ? ids.filter((id) => id !== thumbnail.id)
140
+ : [...ids, thumbnail.id];
141
+ return nextIds.length > 0 ? nextIds : [thumbnail.id];
142
+ });
143
+ lastSelectedImageId.current = thumbnail.id;
144
+ return;
145
+ }
146
+ setSelectedImageIds([thumbnail.id]);
147
+ lastSelectedImageId.current = thumbnail.id;
148
+ }, [displayImages]);
149
+ const handleClick = useCallback(async (thumbnail, ev) => {
150
+ updateSelection(thumbnail, ev);
151
+ if (ev.shiftKey || ev.ctrlKey || ev.metaKey)
152
+ return;
117
153
  // Open the media item in the slot next to the active one (or create new if no next slot exists)
118
154
  if (editContext) {
119
155
  // Check if thumbnail has language/version (from ItemTreeNodeData) or use defaults
120
- const itemLanguage = thumbnail.language || language;
121
- const itemVersion = thumbnail.version ?? 0;
156
+ const contextMenuThumbnail = thumbnail;
157
+ const itemLanguage = contextMenuThumbnail.language || language;
158
+ const itemVersion = contextMenuThumbnail.version ?? 0;
122
159
  const slots = editContext.editorSlots;
123
160
  const activeSlotId = editContext.activeSlotId;
124
161
  // If the user clicked inside a non-active slot, `activeSlotId` may still point
@@ -132,7 +169,7 @@ export function MediaFolderBrowser({ folderId, language = "en", onMediaSelected,
132
169
  editContext.setActiveSlot(hostSlotId);
133
170
  }
134
171
  // Check if item is already open in any slot - if so, switch to that slot instead of opening a new one
135
- const existingSlot = slots.find(s => s.itemDescriptor.id === thumbnail.id &&
172
+ const existingSlot = slots.find((s) => s.itemDescriptor.id === thumbnail.id &&
136
173
  s.itemDescriptor.language === itemLanguage &&
137
174
  s.itemDescriptor.version === itemVersion);
138
175
  if (existingSlot) {
@@ -173,7 +210,34 @@ export function MediaFolderBrowser({ folderId, language = "en", onMediaSelected,
173
210
  selectedImageRef.current = thumbnail;
174
211
  }
175
212
  }
176
- }, [editContext, language]);
213
+ }, [editContext, language, updateSelection]);
214
+ const handleContextMenu = useCallback((thumbnail, ev) => {
215
+ const itemIds = selectedImageIds.includes(thumbnail.id)
216
+ ? selectedImageIds
217
+ : [thumbnail.id];
218
+ if (!selectedImageIds.includes(thumbnail.id)) {
219
+ selectedImageRef.current = thumbnail;
220
+ setSelectedImage(thumbnail);
221
+ setSelectedImageIds([thumbnail.id]);
222
+ lastSelectedImageId.current = thumbnail.id;
223
+ }
224
+ const contextMenuThumbnail = thumbnail;
225
+ const itemLanguage = contextMenuThumbnail.language || language;
226
+ const itemVersion = contextMenuThumbnail.version ?? 0;
227
+ void showItemContextMenu({
228
+ editContext,
229
+ event: ev,
230
+ itemIds,
231
+ language: itemLanguage,
232
+ version: itemVersion,
233
+ openInNewSlotItem: {
234
+ id: thumbnail.id,
235
+ language: itemLanguage,
236
+ version: itemVersion,
237
+ database: "master",
238
+ },
239
+ });
240
+ }, [editContext, language, selectedImageIds]);
177
241
  const handleUpload = async () => {
178
242
  if (!folderId)
179
243
  return;
@@ -216,9 +280,6 @@ export function MediaFolderBrowser({ folderId, language = "en", onMediaSelected,
216
280
  setUploading(false);
217
281
  }
218
282
  };
219
- const displayImages = useMemo(() => {
220
- return searchQuery.trim() ? searchResults : images;
221
- }, [searchQuery, searchResults, images]);
222
283
  // Create stable click handlers map to prevent ThumbnailItem re-renders
223
284
  const clickHandlers = useMemo(() => {
224
285
  const handlers = new Map();
@@ -227,19 +288,26 @@ export function MediaFolderBrowser({ folderId, language = "en", onMediaSelected,
227
288
  });
228
289
  return handlers;
229
290
  }, [displayImages, handleClick]);
291
+ const contextMenuHandlers = useMemo(() => {
292
+ const handlers = new Map();
293
+ displayImages.forEach((t) => {
294
+ handlers.set(t.id, (ev) => handleContextMenu(t, ev));
295
+ });
296
+ return handlers;
297
+ }, [displayImages, handleContextMenu]);
230
298
  const GridView = useMemo(() => {
231
299
  return (_jsx("div", { className: "grid gap-3 p-4", style: {
232
300
  gridTemplateColumns: "repeat(auto-fill, minmax(160px, 1fr))",
233
- }, children: displayImages.map((t) => (_jsx(ThumbnailItem, { thumbnail: t, isSelected: selectedImage?.id === t.id, onClick: clickHandlers.get(t.id) || (() => undefined), viewMode: "grid" }, t.id))) }));
234
- }, [displayImages, selectedImage, clickHandlers]);
301
+ }, children: displayImages.map((t) => (_jsx(ThumbnailItem, { thumbnail: t, isSelected: selectedImageIds.includes(t.id), onClick: clickHandlers.get(t.id) || (() => undefined), onContextMenu: contextMenuHandlers.get(t.id) || (() => undefined), viewMode: "grid" }, t.id))) }));
302
+ }, [displayImages, selectedImageIds, clickHandlers, contextMenuHandlers]);
235
303
  const LargeGridView = useMemo(() => {
236
304
  return (_jsx("div", { className: "grid gap-4 p-4", style: {
237
305
  gridTemplateColumns: "repeat(auto-fill, minmax(240px, 1fr))",
238
- }, children: displayImages.map((t) => (_jsx(ThumbnailItem, { thumbnail: t, isSelected: selectedImage?.id === t.id, onClick: clickHandlers.get(t.id) || (() => undefined), viewMode: "large-grid" }, t.id))) }));
239
- }, [displayImages, selectedImage, clickHandlers]);
306
+ }, children: displayImages.map((t) => (_jsx(ThumbnailItem, { thumbnail: t, isSelected: selectedImageIds.includes(t.id), onClick: clickHandlers.get(t.id) || (() => undefined), onContextMenu: contextMenuHandlers.get(t.id) || (() => undefined), viewMode: "large-grid" }, t.id))) }));
307
+ }, [displayImages, selectedImageIds, clickHandlers, contextMenuHandlers]);
240
308
  const ListView = useMemo(() => {
241
- return (_jsx("div", { className: "flex flex-col gap-1 p-2", children: displayImages.map((t) => (_jsx(ThumbnailItem, { thumbnail: t, isSelected: selectedImage?.id === t.id, onClick: clickHandlers.get(t.id) || (() => undefined), viewMode: "list" }, t.id))) }));
242
- }, [displayImages, selectedImage, clickHandlers]);
309
+ return (_jsx("div", { className: "flex flex-col gap-1 p-2", children: displayImages.map((t) => (_jsx(ThumbnailItem, { thumbnail: t, isSelected: selectedImageIds.includes(t.id), onClick: clickHandlers.get(t.id) || (() => undefined), onContextMenu: contextMenuHandlers.get(t.id) || (() => undefined), viewMode: "list" }, t.id))) }));
310
+ }, [displayImages, selectedImageIds, clickHandlers, contextMenuHandlers]);
243
311
  const renderContent = useMemo(() => {
244
312
  const isDisplayingSearch = searchQuery.trim();
245
313
  const currentLoading = isDisplayingSearch ? searching : loading;
@@ -261,7 +329,16 @@ export function MediaFolderBrowser({ folderId, language = "en", onMediaSelected,
261
329
  default:
262
330
  return GridView;
263
331
  }
264
- }, [viewMode, displayImages, searchQuery, searching, loading, GridView, LargeGridView, ListView]);
332
+ }, [
333
+ viewMode,
334
+ displayImages,
335
+ searchQuery,
336
+ searching,
337
+ loading,
338
+ GridView,
339
+ LargeGridView,
340
+ ListView,
341
+ ]);
265
342
  return (_jsxs("div", { className: "relative flex h-full flex-col", children: [uploading && (_jsxs("div", { className: "absolute inset-0 z-10 flex items-center justify-center gap-2 bg-white/50 backdrop-blur-[1px]", children: [_jsx(Spinner, { size: "3xl" }), _jsx("span", { className: "text-sm font-medium text-gray-500", children: "Uploading media..." })] })), _jsxs("div", { className: "flex items-center justify-between border-b bg-gray-50 px-4 py-2", children: [_jsxs("div", { className: "text-xs font-medium text-gray-700", children: [searchQuery.trim() ? searchResults.length : images.length, " media file", (searchQuery.trim() ? searchResults.length : images.length) !== 1
266
343
  ? "s"
267
344
  : "", searchQuery.trim() && " found"] }), _jsxs("div", { className: "flex gap-1", children: [_jsx(Button, { size: "sm", variant: viewMode === "grid" ? "outline" : "default", onClick: () => setViewMode("grid"), title: "Grid View", className: "p-1", children: _jsx(Grid3X3, { className: "h-4 w-4" }) }), _jsx(Button, { size: "sm", variant: viewMode === "large-grid" ? "outline" : "default", onClick: () => setViewMode("large-grid"), title: "Large Grid View", className: "p-1", children: _jsx(Square, { className: "h-4 w-4" }) }), _jsx(Button, { size: "sm", variant: viewMode === "list" ? "outline" : "default", onClick: () => setViewMode("list"), title: "List View", className: "p-1", children: _jsx(List, { className: "h-4 w-4" }) }), _jsx(Button, { size: "sm", onClick: handleUpload, disabled: uploading || !folderId, title: "Upload Files", className: "ml-2 p-1", children: _jsx(Upload, { className: "h-4 w-4" }) }), _jsx(Button, { size: "sm", onClick: loadMediaFiles, title: "Refresh", className: "ml-1 p-1", children: _jsx(RefreshCw, { className: "h-4 w-4" }) })] })] }), _jsx("div", { className: "border-b bg-white px-4 py-2", children: _jsx(FilterInput, { value: searchQuery, onChange: setSearchQuery, placeholder: "Search media files...", loading: searching, onClear: () => setSearchQuery("") }) }), _jsx("div", { className: "min-h-0 flex-1 overflow-x-hidden overflow-y-auto", style: {