pxengine 0.1.41 → 0.1.42

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -33309,9 +33309,14 @@ __export(molecules_exports, {
33309
33309
  CountrySelectDisplay: () => CountrySelectDisplay,
33310
33310
  CountrySelectEdit: () => CountrySelectEdit,
33311
33311
  CreatorActionHeader: () => CreatorActionHeader,
33312
+ CreatorCompactView: () => CreatorCompactView,
33312
33313
  CreatorGridCard: () => CreatorGridCard,
33314
+ CreatorImageList: () => CreatorImageList,
33313
33315
  CreatorProfileSummary: () => CreatorProfileSummary,
33316
+ CreatorProgressBar: () => CreatorProgressBar,
33314
33317
  CreatorSearch: () => CreatorSearch,
33318
+ CreatorWidget: () => CreatorWidget,
33319
+ CreatorWidgetSkeleton: () => CreatorWidgetSkeleton,
33315
33320
  DataGrid: () => DataGrid,
33316
33321
  EditableField: () => EditableField,
33317
33322
  EmptyState: () => EmptyState,
@@ -33339,7 +33344,8 @@ __export(molecules_exports, {
33339
33344
  ToolListCard: () => ToolListCard,
33340
33345
  TopPostsGrid: () => TopPostsGrid,
33341
33346
  UIComponentSelector: () => UIComponentSelector,
33342
- WorkflowVisualizer: () => WorkflowVisualizer
33347
+ WorkflowVisualizer: () => WorkflowVisualizer,
33348
+ useCreatorWidgetPolling: () => useCreatorWidgetPolling
33343
33349
  });
33344
33350
 
33345
33351
  // src/molecules/generic/EditableField/EditableField.tsx
@@ -36349,7 +36355,8 @@ var CampaignConceptCard = React94.memo(
36349
36355
  ...field,
36350
36356
  label: "Budget Allocation",
36351
36357
  renderDisplay: (val) => {
36352
- if (!val) return /* @__PURE__ */ jsx121("span", { className: "text-muted-foreground text-sm", children: "-" });
36358
+ if (!val)
36359
+ return /* @__PURE__ */ jsx121("span", { className: "text-muted-foreground text-sm", children: "-" });
36353
36360
  if (Array.isArray(val)) {
36354
36361
  return /* @__PURE__ */ jsx121("div", { className: "space-y-2", children: val.map((item, idx) => {
36355
36362
  const label = item?.label ?? item?.key ?? `Item ${idx + 1}`;
@@ -36367,7 +36374,8 @@ var CampaignConceptCard = React94.memo(
36367
36374
  }
36368
36375
  if (typeof val === "object") {
36369
36376
  const entries = Object.entries(val);
36370
- if (entries.length === 0) return /* @__PURE__ */ jsx121("span", { className: "text-muted-foreground text-sm", children: "-" });
36377
+ if (entries.length === 0)
36378
+ return /* @__PURE__ */ jsx121("span", { className: "text-muted-foreground text-sm", children: "-" });
36371
36379
  return /* @__PURE__ */ jsx121("div", { className: "space-y-2", children: entries.map(([k, v], idx) => /* @__PURE__ */ jsxs80("div", { className: "flex items-center gap-2", children: [
36372
36380
  /* @__PURE__ */ jsxs80("span", { className: "text-muted-foreground font-medium", children: [
36373
36381
  idx + 1,
@@ -36414,7 +36422,8 @@ var CampaignConceptCard = React94.memo(
36414
36422
  ...field,
36415
36423
  label: "Estimated Creators",
36416
36424
  renderDisplay: (val) => {
36417
- if (!val) return /* @__PURE__ */ jsx121("span", { className: "text-muted-foreground text-sm", children: "-" });
36425
+ if (!val)
36426
+ return /* @__PURE__ */ jsx121("span", { className: "text-muted-foreground text-sm", children: "-" });
36418
36427
  const displayValue = typeof val === "object" && !Array.isArray(val) ? `${val.min ?? 0}-${val.max ?? 0}` : String(val);
36419
36428
  return /* @__PURE__ */ jsx121("span", { className: "text-foreground text-sm", children: displayValue });
36420
36429
  },
@@ -36479,13 +36488,7 @@ var CampaignConceptCard = React94.memo(
36479
36488
  return {
36480
36489
  ...field,
36481
36490
  renderDisplay: (v) => /* @__PURE__ */ jsx121(PlatformSelectDisplay, { value: v }),
36482
- renderEdit: (v, onChange) => /* @__PURE__ */ jsx121(
36483
- PlatformSelectEdit,
36484
- {
36485
- value: v,
36486
- onChange
36487
- }
36488
- )
36491
+ renderEdit: (v, onChange) => /* @__PURE__ */ jsx121(PlatformSelectEdit, { value: v, onChange })
36489
36492
  };
36490
36493
  }
36491
36494
  if (field.key === "description" || field.key === "creator_strategy" || field.key === "creatorStrategy") {
@@ -36499,7 +36502,8 @@ var CampaignConceptCard = React94.memo(
36499
36502
  ...field,
36500
36503
  renderDisplay: (val) => {
36501
36504
  if (Array.isArray(val)) {
36502
- if (val.length === 0) return /* @__PURE__ */ jsx121("span", { className: "text-muted-foreground text-sm", children: "-" });
36505
+ if (val.length === 0)
36506
+ return /* @__PURE__ */ jsx121("span", { className: "text-muted-foreground text-sm", children: "-" });
36503
36507
  return /* @__PURE__ */ jsx121("div", { className: "flex flex-wrap gap-2 pt-1", children: val.map((item, idx) => {
36504
36508
  const label = typeof item === "object" && item !== null ? item.label || item.value || item.name || JSON.stringify(item) : String(item);
36505
36509
  return /* @__PURE__ */ jsx121(
@@ -36524,7 +36528,7 @@ var CampaignConceptCard = React94.memo(
36524
36528
  "div",
36525
36529
  {
36526
36530
  className: cn(
36527
- "w-full max-w-[600px] rounded-xl border bg-background dark:bg-gray100 relative transition-all duration-300",
36531
+ "w-full rounded-xl border bg-background dark:bg-gray100 relative transition-all duration-300",
36528
36532
  isSelected || isRecommended ? "border-2 border-green500" : "border-gray400",
36529
36533
  className
36530
36534
  ),
@@ -36539,7 +36543,8 @@ var CampaignConceptCard = React94.memo(
36539
36543
  /* @__PURE__ */ jsxs80("h3", { className: "mb-1 py-1 text-txtColor font-bold text-lg", children: [
36540
36544
  "Concept ",
36541
36545
  index !== void 0 ? index : "",
36542
- " : ",
36546
+ " :",
36547
+ " ",
36543
36548
  typeof cardTitle === "object" ? JSON.stringify(cardTitle) : String(cardTitle)
36544
36549
  ] }),
36545
36550
  /* @__PURE__ */ jsxs80("div", { className: "flex flex-wrap gap-2", children: [
@@ -36547,25 +36552,32 @@ var CampaignConceptCard = React94.memo(
36547
36552
  !effectiveIsLatest && selectionStatus && /* @__PURE__ */ jsx121("div", { className: "inline-flex text-[10px] font-bold uppercase tracking-widest text-[#3B82F6]", children: /* @__PURE__ */ jsx121("span", { className: "bg-[#3B82F6]/10 px-2 py-0.5 rounded border border-[#3B82F6]/20", children: selectionStatus === "agent" ? "Selected by Agent" : "Selected by You" }) })
36548
36553
  ] })
36549
36554
  ] }),
36550
- /* @__PURE__ */ jsx121("div", { className: "flex items-center gap-2 ml-3", onClick: (e) => e.stopPropagation(), children: /* @__PURE__ */ jsx121(
36551
- "button",
36555
+ /* @__PURE__ */ jsx121(
36556
+ "div",
36552
36557
  {
36553
- onClick: (e) => {
36554
- e.preventDefault();
36555
- e.stopPropagation();
36556
- handleToggle();
36557
- },
36558
- className: "p-2 bg-background hover:bg-gray200 dark:hover:bg-gray200 text-foreground rounded-lg shadow-lg",
36559
- "aria-label": isOpen ? "Collapse" : "Expand",
36560
- title: isOpen ? "Collapse" : "Expand",
36558
+ className: "flex items-center gap-2 ml-3",
36559
+ onClick: (e) => e.stopPropagation(),
36561
36560
  children: /* @__PURE__ */ jsx121(
36562
- ChevronDown,
36561
+ "button",
36563
36562
  {
36564
- className: `h-4 w-4 transition-transform ${isOpen ? "rotate-0" : "-rotate-90"}`
36563
+ onClick: (e) => {
36564
+ e.preventDefault();
36565
+ e.stopPropagation();
36566
+ handleToggle();
36567
+ },
36568
+ className: "p-2 bg-background hover:bg-gray200 dark:hover:bg-gray200 text-foreground rounded-lg shadow-lg",
36569
+ "aria-label": isOpen ? "Collapse" : "Expand",
36570
+ title: isOpen ? "Collapse" : "Expand",
36571
+ children: /* @__PURE__ */ jsx121(
36572
+ ChevronDown,
36573
+ {
36574
+ className: `h-4 w-4 transition-transform ${isOpen ? "rotate-0" : "-rotate-90"}`
36575
+ }
36576
+ )
36565
36577
  }
36566
36578
  )
36567
36579
  }
36568
- ) })
36580
+ )
36569
36581
  ]
36570
36582
  }
36571
36583
  ),
@@ -36577,7 +36589,7 @@ var CampaignConceptCard = React94.memo(
36577
36589
  exit: { height: 0, opacity: 0 },
36578
36590
  transition: { duration: 0.2, ease: "easeIn" },
36579
36591
  className: "overflow-hidden",
36580
- children: /* @__PURE__ */ jsxs80("div", { className: "px-4 py-3 w-full overflow-y-auto max-h-[400px] relative", children: [
36592
+ children: /* @__PURE__ */ jsxs80("div", { className: "px-4 py-3 w-full relative", children: [
36581
36593
  /* @__PURE__ */ jsx121(
36582
36594
  "div",
36583
36595
  {
@@ -36618,8 +36630,506 @@ var CampaignConceptCard = React94.memo(
36618
36630
  );
36619
36631
  CampaignConceptCard.displayName = "CampaignConceptCard";
36620
36632
 
36633
+ // src/molecules/creator-discovery/CreatorWidget/CreatorWidget.tsx
36634
+ import { useCallback as useCallback5, memo } from "react";
36635
+
36636
+ // src/molecules/creator-discovery/CreatorWidget/CreatorImageList.tsx
36637
+ import { useEffect as useEffect7, useState as useState10 } from "react";
36638
+ import { Fragment as Fragment4, jsx as jsx122, jsxs as jsxs81 } from "react/jsx-runtime";
36639
+ function useMediaQuery(query) {
36640
+ const [matches, setMatches] = useState10(false);
36641
+ useEffect7(() => {
36642
+ const media = window.matchMedia(query);
36643
+ const listener = () => setMatches(media.matches);
36644
+ listener();
36645
+ media.addEventListener("change", listener);
36646
+ return () => media.removeEventListener("change", listener);
36647
+ }, [query]);
36648
+ return matches;
36649
+ }
36650
+ function CreatorImage({
36651
+ img,
36652
+ idx,
36653
+ creatorsPercentage,
36654
+ totalCreators
36655
+ }) {
36656
+ const processedCount = Math.floor(creatorsPercentage / 100 * totalCreators);
36657
+ const isProcessed = idx < processedCount;
36658
+ const isCurrentlyProcessing = idx === processedCount;
36659
+ return /* @__PURE__ */ jsxs81("div", { className: "relative w-8 h-8", children: [
36660
+ /* @__PURE__ */ jsx122(
36661
+ "img",
36662
+ {
36663
+ src: img,
36664
+ alt: `Creator ${idx + 1}`,
36665
+ className: `w-8 h-8 rounded-full border-2 ${isProcessed ? "border-green-600" : "border-foreground"} object-cover transition-all duration-300`
36666
+ }
36667
+ ),
36668
+ !isProcessed && /* @__PURE__ */ jsx122("div", { className: "absolute inset-0 bg-black/50 rounded-full pointer-events-none" }),
36669
+ isCurrentlyProcessing && /* @__PURE__ */ jsxs81(Fragment4, { children: [
36670
+ /* @__PURE__ */ jsx122(
36671
+ "div",
36672
+ {
36673
+ className: "absolute inset-0 bg-black/50 rounded-full pointer-events-none",
36674
+ style: {
36675
+ background: `conic-gradient(
36676
+ from 0deg,
36677
+ #FFFFFF80 0deg,
36678
+ #FFFFFF80 60deg,
36679
+ #000000bf 60deg,
36680
+ #000000bf 360deg
36681
+ )`,
36682
+ opacity: 0.9
36683
+ }
36684
+ }
36685
+ ),
36686
+ /* @__PURE__ */ jsx122("div", { className: "absolute inset-0 rounded-full border-2 border-[#9CA3AF]/30 pointer-events-none" })
36687
+ ] })
36688
+ ] });
36689
+ }
36690
+ function CreatorImageList({
36691
+ creatorImages = [],
36692
+ creatorLength = 0,
36693
+ isAgentOutput,
36694
+ initialCreatorsPercentage
36695
+ }) {
36696
+ const isMobile = useMediaQuery("(max-width: 640px)");
36697
+ const isTablet = useMediaQuery("(min-width: 641px) and (max-width: 1024px)");
36698
+ const visibleCount = isMobile ? 7 : isTablet ? 10 : isAgentOutput ? 6 : 15;
36699
+ return /* @__PURE__ */ jsxs81("div", { className: "flex flex-nowrap sm:flex-wrap -space-x-2 w-fit", children: [
36700
+ creatorImages.slice(0, visibleCount).map((img, idx) => /* @__PURE__ */ jsx122(
36701
+ CreatorImage,
36702
+ {
36703
+ img,
36704
+ idx,
36705
+ creatorsPercentage: initialCreatorsPercentage || 0,
36706
+ totalCreators: creatorLength
36707
+ },
36708
+ idx
36709
+ )),
36710
+ creatorLength > visibleCount && /* @__PURE__ */ jsxs81(
36711
+ "div",
36712
+ {
36713
+ className: `relative w-8 h-8 rounded-full text-white flex items-center justify-center text-sm font-medium border-2 ${initialCreatorsPercentage === 100 ? "border-green-600 bg-sliderFill" : "border-foreground bg-black/50"}`,
36714
+ children: [
36715
+ "+",
36716
+ creatorLength - visibleCount
36717
+ ]
36718
+ }
36719
+ )
36720
+ ] });
36721
+ }
36722
+
36723
+ // src/molecules/creator-discovery/CreatorWidget/CreatorProgressBar.tsx
36724
+ import { useEffect as useEffect8, useState as useState11 } from "react";
36725
+ import { motion as motion2, AnimatePresence as AnimatePresence2 } from "framer-motion";
36726
+ import { jsx as jsx123, jsxs as jsxs82 } from "react/jsx-runtime";
36727
+ function truncateName(name, maxLength) {
36728
+ if (!name || name.length <= maxLength) return name || "";
36729
+ return name.substring(0, maxLength) + "...";
36730
+ }
36731
+ function ProgressBar({ overallPercentage }) {
36732
+ const [showTooltip, setShowTooltip] = useState11(true);
36733
+ useEffect8(() => {
36734
+ if (overallPercentage && overallPercentage >= 100) {
36735
+ setShowTooltip(false);
36736
+ }
36737
+ }, [overallPercentage]);
36738
+ return /* @__PURE__ */ jsx123("div", { className: "relative w-full", children: /* @__PURE__ */ jsx123("div", { className: "md:w-full dark:bg-purple500 bg-gray-200 rounded-full h-[6px]", children: /* @__PURE__ */ jsx123(
36739
+ motion2.div,
36740
+ {
36741
+ className: "bg-purple100 h-[6px] rounded-full relative",
36742
+ initial: { width: 0 },
36743
+ animate: { width: `${overallPercentage}%` },
36744
+ transition: { duration: 0.5, ease: "easeOut" },
36745
+ children: /* @__PURE__ */ jsx123(AnimatePresence2, { children: showTooltip && /* @__PURE__ */ jsxs82(
36746
+ motion2.div,
36747
+ {
36748
+ initial: { opacity: 0, y: 5 },
36749
+ animate: { opacity: 1, y: 0 },
36750
+ exit: { opacity: 0, y: 5 },
36751
+ className: "absolute -top-10 right-[-25px] bg-gray50 text-gray900 text-lg px-1 rounded-[6px] shadow-lg whitespace-nowrap border-2 border-gray300",
36752
+ children: [
36753
+ overallPercentage ? Math.round(overallPercentage) : 0,
36754
+ "%",
36755
+ /* @__PURE__ */ jsxs82("div", { className: "absolute left-1/2 top-full -translate-x-1/2", children: [
36756
+ /* @__PURE__ */ jsx123("div", { className: "w-0 h-0 border-l-[6px] border-r-[6px] border-t-[6px] border-transparent border-t-gray300" }),
36757
+ /* @__PURE__ */ jsx123("div", { className: "absolute left-1/2 top-[-1px] -translate-x-1/2 w-0 h-0 border-l-[5px] border-r-[5px] border-t-[5px] border-transparent border-t-gray50" })
36758
+ ] })
36759
+ ]
36760
+ }
36761
+ ) })
36762
+ }
36763
+ ) }) });
36764
+ }
36765
+ function CreatorProgressBar({
36766
+ statusDetails,
36767
+ timeRemaining: _timeRemaining
36768
+ }) {
36769
+ return /* @__PURE__ */ jsxs82("div", { children: [
36770
+ /* @__PURE__ */ jsx123(ProgressBar, { overallPercentage: statusDetails?.overall_percentage }),
36771
+ /* @__PURE__ */ jsx123("div", { className: "dark:text-gray400 text-gray-500 text-xs mt-2", children: (statusDetails?.overall_percentage ?? 0) < 100 && /* @__PURE__ */ jsx123("span", { children: statusDetails?.thinking_message ? truncateName(statusDetails.thinking_message, 200) : "Processing..." }) })
36772
+ ] });
36773
+ }
36774
+
36775
+ // src/molecules/creator-discovery/CreatorWidget/CreatorWidgetSkeleton.tsx
36776
+ import { jsx as jsx124, jsxs as jsxs83 } from "react/jsx-runtime";
36777
+ function CreatorWidgetSkeleton() {
36778
+ return /* @__PURE__ */ jsx124("div", { className: "bg-background dark:bg-gray50 rounded-[25px] border border-gray300 overflow-hidden shadow-sm w-full relative", children: /* @__PURE__ */ jsxs83("div", { className: "p-4 md:p-6 space-y-4", children: [
36779
+ /* @__PURE__ */ jsx124("div", { className: "flex flex-col md:flex-row md:items-center md:justify-between gap-4 relative", children: /* @__PURE__ */ jsxs83("div", { className: "flex flex-col gap-2 md:gap-4", children: [
36780
+ /* @__PURE__ */ jsx124("div", { className: "w-40 h-6 bg-purple200 rounded-md animate-pulse" }),
36781
+ /* @__PURE__ */ jsx124("div", { className: "w-64 h-7 bg-gray200 dark:bg-gray300 rounded animate-pulse" })
36782
+ ] }) }),
36783
+ /* @__PURE__ */ jsxs83("div", { className: "bg-paperBackground rounded-lg px-3 md:px-4 py-4 md:py-5 flex flex-col md:flex-row md:items-center md:justify-between gap-4 md:gap-0", children: [
36784
+ /* @__PURE__ */ jsxs83("div", { className: "flex flex-col gap-4 md:gap-6 min-w-0", children: [
36785
+ /* @__PURE__ */ jsx124("div", { className: "flex -space-x-2", children: Array.from({ length: 10 }).map((_, idx) => /* @__PURE__ */ jsx124(
36786
+ "div",
36787
+ {
36788
+ className: "w-8 h-8 md:w-10 md:h-10 rounded-full border-2 border-gray300 bg-gray200 animate-pulse"
36789
+ },
36790
+ idx
36791
+ )) }),
36792
+ /* @__PURE__ */ jsx124("div", { className: "space-y-2", children: /* @__PURE__ */ jsx124("div", { className: "w-full max-w-xs bg-gray200 rounded-full h-2 animate-pulse" }) })
36793
+ ] }),
36794
+ /* @__PURE__ */ jsx124("div", { className: "px-6 py-2 bg-gray200 rounded-[30px] animate-pulse h-10 w-48" })
36795
+ ] })
36796
+ ] }) });
36797
+ }
36798
+
36799
+ // src/molecules/creator-discovery/CreatorWidget/CreatorCompactView.tsx
36800
+ import { Fragment as Fragment5, jsx as jsx125, jsxs as jsxs84 } from "react/jsx-runtime";
36801
+ function CreatorCompactView({
36802
+ versions,
36803
+ selectedVersion,
36804
+ creatorImages,
36805
+ creatorLength,
36806
+ isAgentOutput,
36807
+ onVersionSelect,
36808
+ onViewCreators,
36809
+ versionStatus,
36810
+ statusDetails,
36811
+ timeDisplay,
36812
+ isLoading
36813
+ }) {
36814
+ const isComplete = versionStatus === "completed" || versionStatus === "complete";
36815
+ const statusTitle = isComplete ? "Creator Search Complete" : versionStatus === "failed" ? "Creator Search Failed" : "Creator Search Processing";
36816
+ if (isLoading) {
36817
+ return /* @__PURE__ */ jsx125(CreatorWidgetSkeleton, {});
36818
+ }
36819
+ return /* @__PURE__ */ jsx125("div", { className: "bg-background dark:bg-gray100 rounded-[25px] border border-gray300 overflow-hidden shadow-sm w-full relative", children: /* @__PURE__ */ jsxs84("div", { className: "p-4 md:p-6 space-y-4", children: [
36820
+ /* @__PURE__ */ jsxs84("div", { className: "flex flex-col md:flex-row md:items-center md:justify-between gap-4 relative", children: [
36821
+ /* @__PURE__ */ jsxs84("div", { className: "flex flex-col gap-2 md:gap-4", children: [
36822
+ /* @__PURE__ */ jsx125("h4", { className: "w-fit rounded-md bg-purple200 px-2 py-[4px] text-xs font-medium text-purpleText", children: "VERIFIED CREATORS LIST" }),
36823
+ /* @__PURE__ */ jsx125("h3", { className: "text-gray900 md:text-lg font-bold", children: statusTitle })
36824
+ ] }),
36825
+ versions.length > 1 && /* @__PURE__ */ jsx125("div", { className: "relative md:self-start", children: /* @__PURE__ */ jsxs84(DropdownMenu, { children: [
36826
+ /* @__PURE__ */ jsxs84(
36827
+ DropdownMenuTrigger,
36828
+ {
36829
+ disabled: !isComplete,
36830
+ className: `flex items-center gap-2 border-2 border-gray400 px-3 md:px-4 py-1 rounded-full text-xs md:text-sm outline-none ${!isComplete ? "bg-gray100 text-gray400 cursor-not-allowed opacity-60" : "text-gray600 hover:bg-purple100/20 cursor-pointer"}`,
36831
+ children: [
36832
+ "Version ",
36833
+ selectedVersion ?? "-",
36834
+ /* @__PURE__ */ jsx125(ChevronDown, { className: "w-3 h-3 md:w-4 md:h-4 transition-transform" })
36835
+ ]
36836
+ }
36837
+ ),
36838
+ /* @__PURE__ */ jsx125(DropdownMenuContent, { className: "bg-gray25 border-2 border-gray400 min-w-[120px] max-h-[150px] overflow-y-auto", children: versions.map((v) => /* @__PURE__ */ jsxs84(
36839
+ DropdownMenuItem,
36840
+ {
36841
+ onClick: () => onVersionSelect(v),
36842
+ className: "cursor-pointer text-sm",
36843
+ children: [
36844
+ "Version ",
36845
+ v
36846
+ ]
36847
+ },
36848
+ v
36849
+ )) })
36850
+ ] }) })
36851
+ ] }),
36852
+ /* @__PURE__ */ jsx125("div", { className: "bg-paperBackground rounded-lg px-3 md:px-4 py-4 md:py-5 flex flex-col md:flex-row md:items-center md:justify-between gap-4 md:gap-0", children: versionStatus === "failed" ? /* @__PURE__ */ jsxs84("div", { className: "flex flex-col items-center justify-center w-full py-6 md:py-8 text-center text-red-500", children: [
36853
+ /* @__PURE__ */ jsx125("p", { className: "text-base md:text-lg font-semibold mb-2", children: "Creator Search Failed" }),
36854
+ /* @__PURE__ */ jsx125("p", { className: "text-xs md:text-sm text-gray600 px-2", children: "Something went wrong while fetching creators. Please try again later or regenerate a new version." })
36855
+ ] }) : /* @__PURE__ */ jsxs84(Fragment5, { children: [
36856
+ /* @__PURE__ */ jsxs84("div", { className: "flex flex-col gap-4 md:gap-6 min-w-0", children: [
36857
+ /* @__PURE__ */ jsx125(
36858
+ CreatorImageList,
36859
+ {
36860
+ creatorImages,
36861
+ creatorLength,
36862
+ isAgentOutput,
36863
+ initialCreatorsPercentage: statusDetails?.social_fetch_percentage
36864
+ }
36865
+ ),
36866
+ /* @__PURE__ */ jsx125(
36867
+ CreatorProgressBar,
36868
+ {
36869
+ statusDetails,
36870
+ timeRemaining: timeDisplay
36871
+ }
36872
+ )
36873
+ ] }),
36874
+ /* @__PURE__ */ jsxs84(
36875
+ "button",
36876
+ {
36877
+ className: `px-4 py-2 text-xs md:text-sm rounded-[30px] shadow flex items-center justify-center gap-2 w-full md:w-auto md:flex-shrink-0 whitespace-nowrap ${!isComplete ? "bg-gray300 text-gray500 border-2 border-gray300 cursor-not-allowed" : "bg-purpleLight dark:bg-purple200 text-purpleText2 dark:text-purpleText border-2 border-purple100 cursor-pointer hover:bg-purpleText1 dark:hover:bg-purple100 dark:hover:text-background"}`,
36878
+ onClick: onViewCreators,
36879
+ disabled: !isComplete,
36880
+ children: [
36881
+ "View ",
36882
+ creatorLength,
36883
+ " Verified Creators",
36884
+ /* @__PURE__ */ jsx125(Triangle, { className: "w-3 h-3 md:w-4 md:h-4 rotate-90 font-bold" })
36885
+ ]
36886
+ }
36887
+ )
36888
+ ] }) })
36889
+ ] }) });
36890
+ }
36891
+
36892
+ // src/molecules/creator-discovery/CreatorWidget/useCreatorWidgetPolling.ts
36893
+ import { useState as useState12, useEffect as useEffect9, useCallback as useCallback4, useMemo as useMemo9, useRef as useRef6 } from "react";
36894
+ var DEFAULT_POLLING_CONFIG = {
36895
+ pollInterval: 5e3,
36896
+ maxDuration: 15 * 60 * 1e3,
36897
+ maxErrors: 10,
36898
+ secondsPerCreator: 13
36899
+ };
36900
+ function useCreatorWidgetPolling({
36901
+ sessionId,
36902
+ currentVersion,
36903
+ fetchVersions,
36904
+ fetchStatus,
36905
+ pollingConfig,
36906
+ onStatusChange
36907
+ }) {
36908
+ const config = useMemo9(
36909
+ () => ({ ...DEFAULT_POLLING_CONFIG, ...pollingConfig }),
36910
+ [pollingConfig]
36911
+ );
36912
+ const [versionData, setVersionData] = useState12(null);
36913
+ const [totalVersions, setTotalVersions] = useState12(0);
36914
+ const [selectedVersion, setSelectedVersion] = useState12();
36915
+ const [isLoadingVersion, setIsLoadingVersion] = useState12(false);
36916
+ const [isValidationComplete, setIsValidationComplete] = useState12(false);
36917
+ const [versionStatus, setVersionStatus] = useState12("checking");
36918
+ const [statusDetails, setStatusDetails] = useState12();
36919
+ const [timeDisplay, setTimeDisplay] = useState12("");
36920
+ const [loadingStatus, setLoadingStatus] = useState12(true);
36921
+ const remainingTimeRef = useRef6(0);
36922
+ const requestedVersion = selectedVersion ?? currentVersion ?? versionData?.currentVersion;
36923
+ const fetchVersionData = useCallback4(async () => {
36924
+ if (!sessionId) return;
36925
+ if (!versionData) setIsLoadingVersion(true);
36926
+ try {
36927
+ const data = await fetchVersions({
36928
+ sessionId,
36929
+ version: requestedVersion,
36930
+ validated: isValidationComplete
36931
+ });
36932
+ if (data.success !== false) {
36933
+ setVersionData(data);
36934
+ setTotalVersions(data.totalVersions || 0);
36935
+ }
36936
+ } catch (err) {
36937
+ if (err.name !== "AbortError") {
36938
+ console.error("Error fetching creator version:", err);
36939
+ }
36940
+ } finally {
36941
+ setIsLoadingVersion(false);
36942
+ }
36943
+ }, [sessionId, requestedVersion, isValidationComplete, fetchVersions, versionData]);
36944
+ useEffect9(() => {
36945
+ fetchVersionData();
36946
+ }, [sessionId, requestedVersion, isValidationComplete]);
36947
+ useEffect9(() => {
36948
+ if (totalVersions > 0 || !sessionId) return;
36949
+ const interval = setInterval(() => {
36950
+ if (totalVersions === 0) fetchVersionData();
36951
+ }, config.pollInterval);
36952
+ return () => clearInterval(interval);
36953
+ }, [totalVersions, sessionId, fetchVersionData, config.pollInterval]);
36954
+ useEffect9(() => {
36955
+ if (!selectedVersion && !requestedVersion) return;
36956
+ const activeVersion = selectedVersion ?? requestedVersion;
36957
+ let isMounted = true;
36958
+ let intervalId = null;
36959
+ let timerIntervalId = null;
36960
+ let elapsed = 0;
36961
+ let errorCount = 0;
36962
+ setLoadingStatus(true);
36963
+ setStatusDetails(void 0);
36964
+ setVersionStatus("checking");
36965
+ const creatorLength2 = versionData?.length || 0;
36966
+ remainingTimeRef.current = creatorLength2 > 0 ? creatorLength2 * config.secondsPerCreator : 60;
36967
+ const formatTime = (seconds) => {
36968
+ if (seconds <= 0) return "to complete";
36969
+ const minutes = Math.floor(seconds / 60);
36970
+ return minutes >= 1 ? `${minutes} min remaining...` : `${seconds} sec remaining...`;
36971
+ };
36972
+ setTimeDisplay(formatTime(remainingTimeRef.current));
36973
+ timerIntervalId = setInterval(() => {
36974
+ if (remainingTimeRef.current > 0) remainingTimeRef.current -= 1;
36975
+ setTimeDisplay(formatTime(remainingTimeRef.current));
36976
+ }, 1e3);
36977
+ const updateStatus = (status) => {
36978
+ setVersionStatus(status);
36979
+ onStatusChange?.(status);
36980
+ };
36981
+ const stopPolling = () => {
36982
+ if (intervalId) clearInterval(intervalId);
36983
+ if (timerIntervalId) clearInterval(timerIntervalId);
36984
+ setTimeDisplay("");
36985
+ };
36986
+ const pollStatus = async () => {
36987
+ try {
36988
+ const data = await fetchStatus({
36989
+ sessionId,
36990
+ versionNo: activeVersion
36991
+ });
36992
+ if (!isMounted) return;
36993
+ if (data?.status) setStatusDetails(data.status);
36994
+ const s = data?.status?.status;
36995
+ if (s === "completed" || s === "complete") {
36996
+ updateStatus(s);
36997
+ setIsValidationComplete(true);
36998
+ stopPolling();
36999
+ return;
37000
+ }
37001
+ if (s === "failed") {
37002
+ updateStatus("failed");
37003
+ stopPolling();
37004
+ return;
37005
+ }
37006
+ errorCount = 0;
37007
+ updateStatus(s || "in-progress");
37008
+ } catch (err) {
37009
+ console.error("Error fetching status:", err);
37010
+ errorCount++;
37011
+ if (errorCount >= config.maxErrors) {
37012
+ console.error(`Polling failed after ${config.maxErrors} consecutive errors`);
37013
+ updateStatus("failed");
37014
+ setLoadingStatus(false);
37015
+ stopPolling();
37016
+ return;
37017
+ }
37018
+ } finally {
37019
+ setLoadingStatus(false);
37020
+ }
37021
+ };
37022
+ pollStatus();
37023
+ intervalId = setInterval(() => {
37024
+ elapsed += config.pollInterval;
37025
+ if (elapsed >= config.maxDuration) {
37026
+ console.warn("Stopped polling after max duration");
37027
+ stopPolling();
37028
+ } else {
37029
+ pollStatus();
37030
+ }
37031
+ }, config.pollInterval);
37032
+ return () => {
37033
+ isMounted = false;
37034
+ stopPolling();
37035
+ };
37036
+ }, [selectedVersion, requestedVersion, sessionId]);
37037
+ const versionNumbers = useMemo9(() => {
37038
+ if (!totalVersions) return [];
37039
+ return Array.from({ length: totalVersions }, (_, i) => i + 1);
37040
+ }, [totalVersions]);
37041
+ const creatorIds = versionData?.ids || [];
37042
+ const creatorImages = versionData?.images || [];
37043
+ const creatorLength = versionData?.length || 0;
37044
+ const searchSpec = versionData?.searchSpec || {};
37045
+ const displayVersion = versionData?.currentVersion ?? requestedVersion;
37046
+ return {
37047
+ versionData,
37048
+ versionNumbers,
37049
+ selectedVersion: displayVersion,
37050
+ setSelectedVersion,
37051
+ creatorImages,
37052
+ creatorLength,
37053
+ creatorIds,
37054
+ searchSpec,
37055
+ versionStatus,
37056
+ statusDetails,
37057
+ timeDisplay,
37058
+ isLoading: loadingStatus || isLoadingVersion,
37059
+ isValidationComplete
37060
+ };
37061
+ }
37062
+
37063
+ // src/molecules/creator-discovery/CreatorWidget/CreatorWidget.tsx
37064
+ import { jsx as jsx126 } from "react/jsx-runtime";
37065
+ function CreatorWidgetInner({
37066
+ sessionId,
37067
+ currentVersion,
37068
+ isAgentOutput = false,
37069
+ fetchVersions,
37070
+ fetchStatus,
37071
+ pollingConfig,
37072
+ onStatusChange,
37073
+ onAction,
37074
+ className
37075
+ }) {
37076
+ const {
37077
+ versionNumbers,
37078
+ selectedVersion,
37079
+ setSelectedVersion,
37080
+ creatorImages,
37081
+ creatorLength,
37082
+ creatorIds,
37083
+ searchSpec,
37084
+ versionStatus,
37085
+ statusDetails,
37086
+ timeDisplay,
37087
+ isLoading
37088
+ } = useCreatorWidgetPolling({
37089
+ sessionId,
37090
+ currentVersion,
37091
+ fetchVersions,
37092
+ fetchStatus,
37093
+ pollingConfig,
37094
+ onStatusChange
37095
+ });
37096
+ const handleVersionSelect = useCallback5(
37097
+ (version) => setSelectedVersion(version),
37098
+ [setSelectedVersion]
37099
+ );
37100
+ const handleViewCreators = useCallback5(() => {
37101
+ onAction?.({
37102
+ type: "view-creators",
37103
+ sessionId,
37104
+ creatorIds,
37105
+ version: selectedVersion,
37106
+ searchSpec
37107
+ });
37108
+ }, [onAction, sessionId, creatorIds, selectedVersion, searchSpec]);
37109
+ if (!fetchVersions || !fetchStatus) {
37110
+ return /* @__PURE__ */ jsx126(CreatorWidgetSkeleton, {});
37111
+ }
37112
+ return /* @__PURE__ */ jsx126("div", { className, children: /* @__PURE__ */ jsx126(
37113
+ CreatorCompactView,
37114
+ {
37115
+ versions: versionNumbers,
37116
+ selectedVersion,
37117
+ creatorImages,
37118
+ creatorLength,
37119
+ isAgentOutput,
37120
+ onVersionSelect: handleVersionSelect,
37121
+ onViewCreators: handleViewCreators,
37122
+ versionStatus,
37123
+ statusDetails,
37124
+ timeDisplay,
37125
+ isLoading
37126
+ }
37127
+ ) });
37128
+ }
37129
+ var CreatorWidget = memo(CreatorWidgetInner);
37130
+
36621
37131
  // src/molecules/agent-builder/ToolListCard/ToolListCard.tsx
36622
- import { jsx as jsx122, jsxs as jsxs81 } from "react/jsx-runtime";
37132
+ import { jsx as jsx127, jsxs as jsxs85 } from "react/jsx-runtime";
36623
37133
  var ICON_MAP = {
36624
37134
  Search,
36625
37135
  Database,
@@ -36676,7 +37186,7 @@ var ToolListCard = ({
36676
37186
  grouped[cat].push(tool);
36677
37187
  }
36678
37188
  const categories = Object.keys(grouped);
36679
- return /* @__PURE__ */ jsxs81(
37189
+ return /* @__PURE__ */ jsxs85(
36680
37190
  "div",
36681
37191
  {
36682
37192
  className: cn(
@@ -36684,33 +37194,33 @@ var ToolListCard = ({
36684
37194
  className
36685
37195
  ),
36686
37196
  children: [
36687
- /* @__PURE__ */ jsxs81("div", { className: "px-4 py-3 border-b border-[var(--border-color)] bg-[var(--foreground)]/[0.03] flex items-center gap-2.5", children: [
36688
- /* @__PURE__ */ jsx122("div", { className: "w-6 h-6 rounded-md bg-interactive/10 flex items-center justify-center", children: /* @__PURE__ */ jsx122(Wrench, { className: "w-3.5 h-3.5 text-interactive" }) }),
36689
- /* @__PURE__ */ jsx122("h4", { className: "text-sm font-semibold text-[var(--foreground)]", children: "Available Tools" }),
36690
- /* @__PURE__ */ jsx122("span", { className: "ml-auto text-[11px] font-medium text-[var(--foreground)]/40 bg-[var(--foreground)]/[0.06] px-2 py-0.5 rounded-full", children: tools.length })
37197
+ /* @__PURE__ */ jsxs85("div", { className: "px-4 py-3 border-b border-[var(--border-color)] bg-[var(--foreground)]/[0.03] flex items-center gap-2.5", children: [
37198
+ /* @__PURE__ */ jsx127("div", { className: "w-6 h-6 rounded-md bg-interactive/10 flex items-center justify-center", children: /* @__PURE__ */ jsx127(Wrench, { className: "w-3.5 h-3.5 text-interactive" }) }),
37199
+ /* @__PURE__ */ jsx127("h4", { className: "text-sm font-semibold text-[var(--foreground)]", children: "Available Tools" }),
37200
+ /* @__PURE__ */ jsx127("span", { className: "ml-auto text-[11px] font-medium text-[var(--foreground)]/40 bg-[var(--foreground)]/[0.06] px-2 py-0.5 rounded-full", children: tools.length })
36691
37201
  ] }),
36692
- /* @__PURE__ */ jsx122("div", { className: "divide-y divide-[var(--border-color)]", children: categories.map((cat) => {
37202
+ /* @__PURE__ */ jsx127("div", { className: "divide-y divide-[var(--border-color)]", children: categories.map((cat) => {
36693
37203
  const CatIcon = resolveCategoryIcon(cat);
36694
- return /* @__PURE__ */ jsxs81("div", { className: "px-4 py-3", children: [
36695
- /* @__PURE__ */ jsxs81("div", { className: "flex items-center gap-2 mb-2.5", children: [
36696
- /* @__PURE__ */ jsx122(CatIcon, { className: "w-3.5 h-3.5 text-interactive/70" }),
36697
- /* @__PURE__ */ jsx122("span", { className: "text-[11px] font-semibold text-[var(--foreground)]/50 uppercase tracking-wider", children: cat }),
36698
- /* @__PURE__ */ jsx122("span", { className: "text-[10px] text-[var(--foreground)]/30", children: grouped[cat].length })
37204
+ return /* @__PURE__ */ jsxs85("div", { className: "px-4 py-3", children: [
37205
+ /* @__PURE__ */ jsxs85("div", { className: "flex items-center gap-2 mb-2.5", children: [
37206
+ /* @__PURE__ */ jsx127(CatIcon, { className: "w-3.5 h-3.5 text-interactive/70" }),
37207
+ /* @__PURE__ */ jsx127("span", { className: "text-[11px] font-semibold text-[var(--foreground)]/50 uppercase tracking-wider", children: cat }),
37208
+ /* @__PURE__ */ jsx127("span", { className: "text-[10px] text-[var(--foreground)]/30", children: grouped[cat].length })
36699
37209
  ] }),
36700
- /* @__PURE__ */ jsx122("div", { className: "space-y-1.5", children: grouped[cat].map((tool) => {
37210
+ /* @__PURE__ */ jsx127("div", { className: "space-y-1.5", children: grouped[cat].map((tool) => {
36701
37211
  const ToolIcon = resolveIcon(tool);
36702
- return /* @__PURE__ */ jsxs81(
37212
+ return /* @__PURE__ */ jsxs85(
36703
37213
  "div",
36704
37214
  {
36705
37215
  className: "group flex items-start gap-3 px-3 py-2 rounded-lg hover:bg-[var(--foreground)]/[0.03] transition-colors",
36706
37216
  children: [
36707
- /* @__PURE__ */ jsx122("div", { className: "shrink-0 mt-0.5 w-5 h-5 rounded flex items-center justify-center bg-interactive/[0.08]", children: /* @__PURE__ */ jsx122(ToolIcon, { className: "w-3 h-3 text-interactive/60" }) }),
36708
- /* @__PURE__ */ jsxs81("div", { className: "flex-1 min-w-0", children: [
36709
- /* @__PURE__ */ jsxs81("div", { className: "flex items-center gap-2 flex-wrap", children: [
36710
- tool.display_name && tool.display_name !== tool.name && /* @__PURE__ */ jsx122("span", { className: "text-[13px] font-medium text-[var(--foreground)] truncate max-w-full", children: tool.display_name }),
36711
- /* @__PURE__ */ jsx122("span", { className: "text-[11px] font-mono px-1.5 py-0.5 rounded bg-[var(--foreground)]/[0.06] text-[var(--foreground)]/50 border border-[var(--foreground)]/[0.06] truncate", children: tool.name })
37217
+ /* @__PURE__ */ jsx127("div", { className: "shrink-0 mt-0.5 w-5 h-5 rounded flex items-center justify-center bg-interactive/[0.08]", children: /* @__PURE__ */ jsx127(ToolIcon, { className: "w-3 h-3 text-interactive/60" }) }),
37218
+ /* @__PURE__ */ jsxs85("div", { className: "flex-1 min-w-0", children: [
37219
+ /* @__PURE__ */ jsxs85("div", { className: "flex items-center gap-2 flex-wrap", children: [
37220
+ tool.display_name && tool.display_name !== tool.name && /* @__PURE__ */ jsx127("span", { className: "text-[13px] font-medium text-[var(--foreground)] truncate max-w-full", children: tool.display_name }),
37221
+ /* @__PURE__ */ jsx127("span", { className: "text-[11px] font-mono px-1.5 py-0.5 rounded bg-[var(--foreground)]/[0.06] text-[var(--foreground)]/50 border border-[var(--foreground)]/[0.06] truncate", children: tool.name })
36712
37222
  ] }),
36713
- tool.description && /* @__PURE__ */ jsx122("p", { className: "text-xs text-[var(--foreground)]/50 leading-relaxed mt-0.5 break-words whitespace-normal", children: tool.description })
37223
+ tool.description && /* @__PURE__ */ jsx127("p", { className: "text-xs text-[var(--foreground)]/50 leading-relaxed mt-0.5 break-words whitespace-normal", children: tool.description })
36714
37224
  ] })
36715
37225
  ]
36716
37226
  },
@@ -36725,8 +37235,8 @@ var ToolListCard = ({
36725
37235
  };
36726
37236
 
36727
37237
  // src/molecules/agent-builder/AgentCard/AgentCard.tsx
36728
- import { useState as useState10, useCallback as useCallback4 } from "react";
36729
- import { Fragment as Fragment4, jsx as jsx123, jsxs as jsxs82 } from "react/jsx-runtime";
37238
+ import { useState as useState13, useCallback as useCallback6 } from "react";
37239
+ import { Fragment as Fragment6, jsx as jsx128, jsxs as jsxs86 } from "react/jsx-runtime";
36730
37240
  var AgentCard = ({
36731
37241
  agent,
36732
37242
  editable = true,
@@ -36734,15 +37244,15 @@ var AgentCard = ({
36734
37244
  onSave,
36735
37245
  className
36736
37246
  }) => {
36737
- const [isEditing, setIsEditing] = useState10(false);
36738
- const [isSaving, setIsSaving] = useState10(false);
36739
- const [editState, setEditState] = useState10({
37247
+ const [isEditing, setIsEditing] = useState13(false);
37248
+ const [isSaving, setIsSaving] = useState13(false);
37249
+ const [editState, setEditState] = useState13({
36740
37250
  display_name: agent.display_name,
36741
37251
  description: agent.description,
36742
37252
  image: agent.image || ""
36743
37253
  });
36744
37254
  const avatarUrl = agent.image || `https://api.dicebear.com/7.x/avataaars/svg?seed=${agent.name}`;
36745
- const handleEdit = useCallback4(() => {
37255
+ const handleEdit = useCallback6(() => {
36746
37256
  setEditState({
36747
37257
  display_name: agent.display_name,
36748
37258
  description: agent.description,
@@ -36750,10 +37260,10 @@ var AgentCard = ({
36750
37260
  });
36751
37261
  setIsEditing(true);
36752
37262
  }, [agent]);
36753
- const handleCancel = useCallback4(() => {
37263
+ const handleCancel = useCallback6(() => {
36754
37264
  setIsEditing(false);
36755
37265
  }, []);
36756
- const handleSave = useCallback4(async () => {
37266
+ const handleSave = useCallback6(async () => {
36757
37267
  if (!onSave) return;
36758
37268
  const updates = {};
36759
37269
  if (editState.display_name !== agent.display_name)
@@ -36777,7 +37287,7 @@ var AgentCard = ({
36777
37287
  }
36778
37288
  }, [onSave, agent, editState]);
36779
37289
  if (compact) {
36780
- return /* @__PURE__ */ jsxs82(
37290
+ return /* @__PURE__ */ jsxs86(
36781
37291
  "div",
36782
37292
  {
36783
37293
  className: cn(
@@ -36785,14 +37295,14 @@ var AgentCard = ({
36785
37295
  className
36786
37296
  ),
36787
37297
  children: [
36788
- /* @__PURE__ */ jsxs82(Avatar, { className: "h-8 w-8 shrink-0", children: [
36789
- /* @__PURE__ */ jsx123(AvatarImage, { src: avatarUrl, alt: agent.display_name }),
36790
- /* @__PURE__ */ jsx123(AvatarFallback, { className: "bg-interactive/10 text-interactive text-xs font-bold", children: agent.display_name.charAt(0) })
37298
+ /* @__PURE__ */ jsxs86(Avatar, { className: "h-8 w-8 shrink-0", children: [
37299
+ /* @__PURE__ */ jsx128(AvatarImage, { src: avatarUrl, alt: agent.display_name }),
37300
+ /* @__PURE__ */ jsx128(AvatarFallback, { className: "bg-interactive/10 text-interactive text-xs font-bold", children: agent.display_name.charAt(0) })
36791
37301
  ] }),
36792
- /* @__PURE__ */ jsxs82("div", { className: "flex-1 min-w-0", children: [
36793
- /* @__PURE__ */ jsxs82("div", { className: "flex items-center gap-2", children: [
36794
- /* @__PURE__ */ jsx123("span", { className: "text-[var(--foreground)] text-sm font-semibold truncate", children: agent.display_name }),
36795
- /* @__PURE__ */ jsx123(
37302
+ /* @__PURE__ */ jsxs86("div", { className: "flex-1 min-w-0", children: [
37303
+ /* @__PURE__ */ jsxs86("div", { className: "flex items-center gap-2", children: [
37304
+ /* @__PURE__ */ jsx128("span", { className: "text-[var(--foreground)] text-sm font-semibold truncate", children: agent.display_name }),
37305
+ /* @__PURE__ */ jsx128(
36796
37306
  "span",
36797
37307
  {
36798
37308
  className: cn(
@@ -36803,13 +37313,13 @@ var AgentCard = ({
36803
37313
  }
36804
37314
  )
36805
37315
  ] }),
36806
- /* @__PURE__ */ jsx123("p", { className: "text-[var(--foreground)]/50 text-xs truncate", children: agent.description })
37316
+ /* @__PURE__ */ jsx128("p", { className: "text-[var(--foreground)]/50 text-xs truncate", children: agent.description })
36807
37317
  ] })
36808
37318
  ]
36809
37319
  }
36810
37320
  );
36811
37321
  }
36812
- return /* @__PURE__ */ jsxs82(
37322
+ return /* @__PURE__ */ jsxs86(
36813
37323
  "div",
36814
37324
  {
36815
37325
  className: cn(
@@ -36817,14 +37327,14 @@ var AgentCard = ({
36817
37327
  className
36818
37328
  ),
36819
37329
  children: [
36820
- /* @__PURE__ */ jsxs82("div", { className: "flex items-start gap-4 px-5 py-4", children: [
36821
- /* @__PURE__ */ jsxs82(Avatar, { className: "h-12 w-12 shrink-0 border-2 border-interactive/20", children: [
36822
- /* @__PURE__ */ jsx123(AvatarImage, { src: isEditing && editState.image ? editState.image : avatarUrl, alt: agent.display_name }),
36823
- /* @__PURE__ */ jsx123(AvatarFallback, { className: "bg-interactive/10 text-interactive text-lg font-bold", children: agent.display_name.charAt(0) })
37330
+ /* @__PURE__ */ jsxs86("div", { className: "flex items-start gap-4 px-5 py-4", children: [
37331
+ /* @__PURE__ */ jsxs86(Avatar, { className: "h-12 w-12 shrink-0 border-2 border-interactive/20", children: [
37332
+ /* @__PURE__ */ jsx128(AvatarImage, { src: isEditing && editState.image ? editState.image : avatarUrl, alt: agent.display_name }),
37333
+ /* @__PURE__ */ jsx128(AvatarFallback, { className: "bg-interactive/10 text-interactive text-lg font-bold", children: agent.display_name.charAt(0) })
36824
37334
  ] }),
36825
- /* @__PURE__ */ jsxs82("div", { className: "flex-1 min-w-0", children: [
36826
- /* @__PURE__ */ jsxs82("div", { className: "flex items-center gap-2", children: [
36827
- isEditing ? /* @__PURE__ */ jsx123(
37335
+ /* @__PURE__ */ jsxs86("div", { className: "flex-1 min-w-0", children: [
37336
+ /* @__PURE__ */ jsxs86("div", { className: "flex items-center gap-2", children: [
37337
+ isEditing ? /* @__PURE__ */ jsx128(
36828
37338
  "input",
36829
37339
  {
36830
37340
  type: "text",
@@ -36834,9 +37344,9 @@ var AgentCard = ({
36834
37344
  className: "flex-1 bg-transparent border-b border-interactive/30 text-sm font-semibold text-foreground outline-none focus:border-interactive transition-all",
36835
37345
  placeholder: "Agent name"
36836
37346
  }
36837
- ) : /* @__PURE__ */ jsx123("h4", { className: "text-sm font-semibold text-[var(--foreground)] truncate", children: agent.display_name }),
36838
- /* @__PURE__ */ jsx123("span", { className: "text-[11px] font-mono text-[var(--foreground)]/40 bg-[var(--foreground)]/[0.05] px-1.5 py-0.5 rounded", children: agent.name }),
36839
- /* @__PURE__ */ jsx123(
37347
+ ) : /* @__PURE__ */ jsx128("h4", { className: "text-sm font-semibold text-[var(--foreground)] truncate", children: agent.display_name }),
37348
+ /* @__PURE__ */ jsx128("span", { className: "text-[11px] font-mono text-[var(--foreground)]/40 bg-[var(--foreground)]/[0.05] px-1.5 py-0.5 rounded", children: agent.name }),
37349
+ /* @__PURE__ */ jsx128(
36840
37350
  "span",
36841
37351
  {
36842
37352
  className: cn(
@@ -36847,7 +37357,7 @@ var AgentCard = ({
36847
37357
  }
36848
37358
  )
36849
37359
  ] }),
36850
- /* @__PURE__ */ jsx123("div", { className: "mt-1", children: isEditing ? /* @__PURE__ */ jsx123(
37360
+ /* @__PURE__ */ jsx128("div", { className: "mt-1", children: isEditing ? /* @__PURE__ */ jsx128(
36851
37361
  "textarea",
36852
37362
  {
36853
37363
  value: editState.description,
@@ -36857,10 +37367,10 @@ var AgentCard = ({
36857
37367
  rows: 2,
36858
37368
  placeholder: "Describe this agent..."
36859
37369
  }
36860
- ) : /* @__PURE__ */ jsx123("p", { className: "text-xs text-[var(--foreground)]/60 leading-relaxed", children: agent.description }) }),
36861
- isEditing && /* @__PURE__ */ jsxs82("div", { className: "mt-2 flex items-center gap-2", children: [
36862
- /* @__PURE__ */ jsx123("span", { className: "text-[10px] text-[var(--foreground)]/30 uppercase font-semibold", children: "Avatar:" }),
36863
- /* @__PURE__ */ jsx123(
37370
+ ) : /* @__PURE__ */ jsx128("p", { className: "text-xs text-[var(--foreground)]/60 leading-relaxed", children: agent.description }) }),
37371
+ isEditing && /* @__PURE__ */ jsxs86("div", { className: "mt-2 flex items-center gap-2", children: [
37372
+ /* @__PURE__ */ jsx128("span", { className: "text-[10px] text-[var(--foreground)]/30 uppercase font-semibold", children: "Avatar:" }),
37373
+ /* @__PURE__ */ jsx128(
36864
37374
  "input",
36865
37375
  {
36866
37376
  type: "text",
@@ -36873,8 +37383,8 @@ var AgentCard = ({
36873
37383
  )
36874
37384
  ] })
36875
37385
  ] }),
36876
- editable && onSave && /* @__PURE__ */ jsx123("div", { className: "flex items-center gap-1.5 shrink-0", children: isEditing ? /* @__PURE__ */ jsxs82(Fragment4, { children: [
36877
- /* @__PURE__ */ jsx123(
37386
+ editable && onSave && /* @__PURE__ */ jsx128("div", { className: "flex items-center gap-1.5 shrink-0", children: isEditing ? /* @__PURE__ */ jsxs86(Fragment6, { children: [
37387
+ /* @__PURE__ */ jsx128(
36878
37388
  "button",
36879
37389
  {
36880
37390
  onClick: handleCancel,
@@ -36883,7 +37393,7 @@ var AgentCard = ({
36883
37393
  children: "Cancel"
36884
37394
  }
36885
37395
  ),
36886
- /* @__PURE__ */ jsx123(
37396
+ /* @__PURE__ */ jsx128(
36887
37397
  "button",
36888
37398
  {
36889
37399
  onClick: handleSave,
@@ -36892,7 +37402,7 @@ var AgentCard = ({
36892
37402
  children: isSaving ? "Saving..." : "Save"
36893
37403
  }
36894
37404
  )
36895
- ] }) : /* @__PURE__ */ jsx123(
37405
+ ] }) : /* @__PURE__ */ jsx128(
36896
37406
  "button",
36897
37407
  {
36898
37408
  onClick: handleEdit,
@@ -36901,18 +37411,18 @@ var AgentCard = ({
36901
37411
  }
36902
37412
  ) })
36903
37413
  ] }),
36904
- /* @__PURE__ */ jsx123("div", { className: "flex flex-wrap items-center gap-3 px-5 pb-3 text-xs", children: /* @__PURE__ */ jsxs82("span", { className: "text-[var(--foreground)]/40", children: [
37414
+ /* @__PURE__ */ jsx128("div", { className: "flex flex-wrap items-center gap-3 px-5 pb-3 text-xs", children: /* @__PURE__ */ jsxs86("span", { className: "text-[var(--foreground)]/40", children: [
36905
37415
  "Model:",
36906
37416
  " ",
36907
- /* @__PURE__ */ jsx123("span", { className: "font-mono text-[var(--foreground)]/70", children: agent.model })
37417
+ /* @__PURE__ */ jsx128("span", { className: "font-mono text-[var(--foreground)]/70", children: agent.model })
36908
37418
  ] }) }),
36909
- agent.tools && agent.tools.length > 0 && /* @__PURE__ */ jsxs82("div", { className: "border-t border-[var(--border-color)] px-5 py-3", children: [
36910
- /* @__PURE__ */ jsxs82("p", { className: "text-[11px] font-semibold text-[var(--foreground)]/40 uppercase tracking-wide mb-2", children: [
37419
+ agent.tools && agent.tools.length > 0 && /* @__PURE__ */ jsxs86("div", { className: "border-t border-[var(--border-color)] px-5 py-3", children: [
37420
+ /* @__PURE__ */ jsxs86("p", { className: "text-[11px] font-semibold text-[var(--foreground)]/40 uppercase tracking-wide mb-2", children: [
36911
37421
  "Tools (",
36912
37422
  agent.tools.length,
36913
37423
  ")"
36914
37424
  ] }),
36915
- /* @__PURE__ */ jsx123("div", { className: "flex flex-wrap gap-1.5", children: agent.tools.map((tool) => /* @__PURE__ */ jsx123(
37425
+ /* @__PURE__ */ jsx128("div", { className: "flex flex-wrap gap-1.5", children: agent.tools.map((tool) => /* @__PURE__ */ jsx128(
36916
37426
  "span",
36917
37427
  {
36918
37428
  className: "text-[11px] px-2 py-0.5 rounded-md bg-interactive/10 text-interactive font-mono border border-interactive/20",
@@ -36927,7 +37437,7 @@ var AgentCard = ({
36927
37437
  };
36928
37438
 
36929
37439
  // src/molecules/agent-builder/AgentDataTable/AgentDataTable.tsx
36930
- import { jsx as jsx124, jsxs as jsxs83 } from "react/jsx-runtime";
37440
+ import { jsx as jsx129, jsxs as jsxs87 } from "react/jsx-runtime";
36931
37441
  var AgentDataTable = ({
36932
37442
  headers,
36933
37443
  rows,
@@ -36935,7 +37445,7 @@ var AgentDataTable = ({
36935
37445
  }) => {
36936
37446
  const renderCell = (value) => {
36937
37447
  if (typeof value === "boolean") {
36938
- return /* @__PURE__ */ jsxs83(
37448
+ return /* @__PURE__ */ jsxs87(
36939
37449
  "span",
36940
37450
  {
36941
37451
  className: cn(
@@ -36943,7 +37453,7 @@ var AgentDataTable = ({
36943
37453
  value ? "bg-emerald-500/10 text-emerald-600" : "bg-red-500/10 text-red-500"
36944
37454
  ),
36945
37455
  children: [
36946
- /* @__PURE__ */ jsx124(
37456
+ /* @__PURE__ */ jsx129(
36947
37457
  "span",
36948
37458
  {
36949
37459
  className: cn(
@@ -36957,17 +37467,17 @@ var AgentDataTable = ({
36957
37467
  }
36958
37468
  );
36959
37469
  }
36960
- return /* @__PURE__ */ jsx124("span", { className: "text-[var(--foreground)]", children: String(value) });
37470
+ return /* @__PURE__ */ jsx129("span", { className: "text-[var(--foreground)]", children: String(value) });
36961
37471
  };
36962
- return /* @__PURE__ */ jsx124(
37472
+ return /* @__PURE__ */ jsx129(
36963
37473
  "div",
36964
37474
  {
36965
37475
  className: cn(
36966
37476
  "text-foreground hover:bg-muted/50 hover:text-foreground my-3 rounded-xl border border-[var(--border-color)] bg-[var(--card-background)] overflow-hidden",
36967
37477
  className
36968
37478
  ),
36969
- children: /* @__PURE__ */ jsx124("div", { className: "overflow-x-auto", children: /* @__PURE__ */ jsxs83("table", { className: "w-full text-xs", children: [
36970
- /* @__PURE__ */ jsx124("thead", { children: /* @__PURE__ */ jsx124("tr", { className: "border-b border-[var(--border-color)] bg-[var(--foreground)]/[0.03]", children: headers.map((header) => /* @__PURE__ */ jsx124(
37479
+ children: /* @__PURE__ */ jsx129("div", { className: "overflow-x-auto", children: /* @__PURE__ */ jsxs87("table", { className: "w-full text-xs", children: [
37480
+ /* @__PURE__ */ jsx129("thead", { children: /* @__PURE__ */ jsx129("tr", { className: "border-b border-[var(--border-color)] bg-[var(--foreground)]/[0.03]", children: headers.map((header) => /* @__PURE__ */ jsx129(
36971
37481
  "th",
36972
37482
  {
36973
37483
  className: "text-left px-4 py-2.5 text-[11px] font-semibold text-[var(--foreground)]/60 uppercase tracking-wide whitespace-nowrap",
@@ -36975,11 +37485,11 @@ var AgentDataTable = ({
36975
37485
  },
36976
37486
  header
36977
37487
  )) }) }),
36978
- /* @__PURE__ */ jsx124("tbody", { children: rows.map((row, rowIdx) => /* @__PURE__ */ jsx124(
37488
+ /* @__PURE__ */ jsx129("tbody", { children: rows.map((row, rowIdx) => /* @__PURE__ */ jsx129(
36979
37489
  "tr",
36980
37490
  {
36981
37491
  className: "border-b border-[var(--border-color)] last:border-b-0 hover:bg-[var(--foreground)]/[0.02] transition-colors",
36982
- children: row.map((cell, cellIdx) => /* @__PURE__ */ jsx124(
37492
+ children: row.map((cell, cellIdx) => /* @__PURE__ */ jsx129(
36983
37493
  "td",
36984
37494
  {
36985
37495
  className: "px-4 py-2.5 text-xs whitespace-nowrap",
@@ -36996,14 +37506,14 @@ var AgentDataTable = ({
36996
37506
  };
36997
37507
 
36998
37508
  // src/molecules/agent-builder/WorkflowVisualizer/WorkflowVisualizer.tsx
36999
- import { useState as useState11 } from "react";
37000
- import { jsx as jsx125, jsxs as jsxs84 } from "react/jsx-runtime";
37509
+ import { useState as useState14 } from "react";
37510
+ import { jsx as jsx130, jsxs as jsxs88 } from "react/jsx-runtime";
37001
37511
  var WorkflowVisualizer = ({
37002
37512
  steps,
37003
37513
  className
37004
37514
  }) => {
37005
- const [expandedStep, setExpandedStep] = useState11(null);
37006
- return /* @__PURE__ */ jsxs84(
37515
+ const [expandedStep, setExpandedStep] = useState14(null);
37516
+ return /* @__PURE__ */ jsxs88(
37007
37517
  "div",
37008
37518
  {
37009
37519
  className: cn(
@@ -37011,8 +37521,8 @@ var WorkflowVisualizer = ({
37011
37521
  className
37012
37522
  ),
37013
37523
  children: [
37014
- /* @__PURE__ */ jsxs84("div", { className: "px-4 py-3 border-b border-[var(--border-color)] bg-[var(--foreground)]/[0.03] flex items-center gap-2.5", children: [
37015
- /* @__PURE__ */ jsx125("div", { className: "w-6 h-6 rounded-md bg-interactive/10 flex items-center justify-center", children: /* @__PURE__ */ jsx125(
37524
+ /* @__PURE__ */ jsxs88("div", { className: "px-4 py-3 border-b border-[var(--border-color)] bg-[var(--foreground)]/[0.03] flex items-center gap-2.5", children: [
37525
+ /* @__PURE__ */ jsx130("div", { className: "w-6 h-6 rounded-md bg-interactive/10 flex items-center justify-center", children: /* @__PURE__ */ jsx130(
37016
37526
  "svg",
37017
37527
  {
37018
37528
  width: "14",
@@ -37024,24 +37534,24 @@ var WorkflowVisualizer = ({
37024
37534
  className: "text-interactive",
37025
37535
  strokeLinecap: "round",
37026
37536
  strokeLinejoin: "round",
37027
- children: /* @__PURE__ */ jsx125("polyline", { points: "22 12 18 12 15 21 9 3 6 12 2 12" })
37537
+ children: /* @__PURE__ */ jsx130("polyline", { points: "22 12 18 12 15 21 9 3 6 12 2 12" })
37028
37538
  }
37029
37539
  ) }),
37030
- /* @__PURE__ */ jsx125("h4", { className: "text-sm font-semibold text-[var(--foreground)]", children: "Workflow" }),
37031
- /* @__PURE__ */ jsxs84("span", { className: "ml-auto text-[11px] font-medium text-[var(--foreground)]/40 bg-[var(--foreground)]/[0.06] px-2 py-0.5 rounded-full", children: [
37540
+ /* @__PURE__ */ jsx130("h4", { className: "text-sm font-semibold text-[var(--foreground)]", children: "Workflow" }),
37541
+ /* @__PURE__ */ jsxs88("span", { className: "ml-auto text-[11px] font-medium text-[var(--foreground)]/40 bg-[var(--foreground)]/[0.06] px-2 py-0.5 rounded-full", children: [
37032
37542
  steps.length,
37033
37543
  " steps"
37034
37544
  ] })
37035
37545
  ] }),
37036
- /* @__PURE__ */ jsx125("div", { className: "px-4 py-3", children: steps.map((step, idx) => {
37546
+ /* @__PURE__ */ jsx130("div", { className: "px-4 py-3", children: steps.map((step, idx) => {
37037
37547
  const isLast = idx === steps.length - 1;
37038
37548
  const isExpanded = expandedStep === step.id;
37039
- return /* @__PURE__ */ jsxs84("div", { className: "flex gap-3", children: [
37040
- /* @__PURE__ */ jsxs84("div", { className: "flex flex-col items-center shrink-0", children: [
37041
- /* @__PURE__ */ jsx125("div", { className: "w-7 h-7 rounded-full bg-interactive/10 border-2 border-interactive/30 flex items-center justify-center", children: /* @__PURE__ */ jsx125("span", { className: "text-[10px] font-bold text-interactive", children: idx + 1 }) }),
37042
- !isLast && /* @__PURE__ */ jsx125("div", { className: "w-0.5 flex-1 min-h-[16px] bg-interactive/15" })
37549
+ return /* @__PURE__ */ jsxs88("div", { className: "flex gap-3", children: [
37550
+ /* @__PURE__ */ jsxs88("div", { className: "flex flex-col items-center shrink-0", children: [
37551
+ /* @__PURE__ */ jsx130("div", { className: "w-7 h-7 rounded-full bg-interactive/10 border-2 border-interactive/30 flex items-center justify-center", children: /* @__PURE__ */ jsx130("span", { className: "text-[10px] font-bold text-interactive", children: idx + 1 }) }),
37552
+ !isLast && /* @__PURE__ */ jsx130("div", { className: "w-0.5 flex-1 min-h-[16px] bg-interactive/15" })
37043
37553
  ] }),
37044
- /* @__PURE__ */ jsxs84(
37554
+ /* @__PURE__ */ jsxs88(
37045
37555
  "div",
37046
37556
  {
37047
37557
  className: cn(
@@ -37049,20 +37559,20 @@ var WorkflowVisualizer = ({
37049
37559
  isExpanded ? "bg-[var(--foreground)]/[0.02]" : "hover:bg-[var(--foreground)]/[0.02]"
37050
37560
  ),
37051
37561
  children: [
37052
- /* @__PURE__ */ jsxs84(
37562
+ /* @__PURE__ */ jsxs88(
37053
37563
  "button",
37054
37564
  {
37055
37565
  onClick: () => setExpandedStep(isExpanded ? null : step.id),
37056
37566
  className: "w-full text-left px-3 py-2.5 flex items-center gap-2",
37057
37567
  children: [
37058
- /* @__PURE__ */ jsxs84("div", { className: "flex-1 min-w-0", children: [
37059
- /* @__PURE__ */ jsx125("span", { className: "text-[13px] font-medium text-[var(--foreground)]", children: step.name }),
37060
- step.description && !isExpanded && /* @__PURE__ */ jsxs84("span", { className: "text-xs text-[var(--foreground)]/40 ml-2", children: [
37568
+ /* @__PURE__ */ jsxs88("div", { className: "flex-1 min-w-0", children: [
37569
+ /* @__PURE__ */ jsx130("span", { className: "text-[13px] font-medium text-[var(--foreground)]", children: step.name }),
37570
+ step.description && !isExpanded && /* @__PURE__ */ jsxs88("span", { className: "text-xs text-[var(--foreground)]/40 ml-2", children: [
37061
37571
  "\u2014 ",
37062
37572
  step.description
37063
37573
  ] })
37064
37574
  ] }),
37065
- /* @__PURE__ */ jsx125(
37575
+ /* @__PURE__ */ jsx130(
37066
37576
  "svg",
37067
37577
  {
37068
37578
  width: "12",
@@ -37075,28 +37585,28 @@ var WorkflowVisualizer = ({
37075
37585
  "shrink-0 text-[var(--foreground)]/30 transition-transform",
37076
37586
  isExpanded && "rotate-180"
37077
37587
  ),
37078
- children: /* @__PURE__ */ jsx125("polyline", { points: "6 9 12 15 18 9" })
37588
+ children: /* @__PURE__ */ jsx130("polyline", { points: "6 9 12 15 18 9" })
37079
37589
  }
37080
37590
  )
37081
37591
  ]
37082
37592
  }
37083
37593
  ),
37084
- isExpanded && /* @__PURE__ */ jsxs84("div", { className: "px-3 pb-3 space-y-2.5", children: [
37085
- step.description && /* @__PURE__ */ jsx125("p", { className: "text-xs text-[var(--foreground)]/50 leading-relaxed", children: step.description }),
37086
- step.sub_steps && step.sub_steps.length > 0 && /* @__PURE__ */ jsx125("div", { className: "space-y-1", children: step.sub_steps.map((sub) => /* @__PURE__ */ jsxs84(
37594
+ isExpanded && /* @__PURE__ */ jsxs88("div", { className: "px-3 pb-3 space-y-2.5", children: [
37595
+ step.description && /* @__PURE__ */ jsx130("p", { className: "text-xs text-[var(--foreground)]/50 leading-relaxed", children: step.description }),
37596
+ step.sub_steps && step.sub_steps.length > 0 && /* @__PURE__ */ jsx130("div", { className: "space-y-1", children: step.sub_steps.map((sub) => /* @__PURE__ */ jsxs88(
37087
37597
  "div",
37088
37598
  {
37089
37599
  className: "flex items-start gap-2 text-xs",
37090
37600
  children: [
37091
- /* @__PURE__ */ jsx125("span", { className: "shrink-0 mt-0.5 w-1.5 h-1.5 rounded-full bg-interactive/40" }),
37092
- /* @__PURE__ */ jsx125("span", { className: "text-[var(--foreground)]/60", children: sub.action })
37601
+ /* @__PURE__ */ jsx130("span", { className: "shrink-0 mt-0.5 w-1.5 h-1.5 rounded-full bg-interactive/40" }),
37602
+ /* @__PURE__ */ jsx130("span", { className: "text-[var(--foreground)]/60", children: sub.action })
37093
37603
  ]
37094
37604
  },
37095
37605
  sub.id
37096
37606
  )) }),
37097
- step.tools && step.tools.length > 0 && /* @__PURE__ */ jsxs84("div", { className: "flex items-center gap-1.5 flex-wrap", children: [
37098
- /* @__PURE__ */ jsx125("span", { className: "text-[10px] text-[var(--foreground)]/30 uppercase font-semibold tracking-wider", children: "Tools:" }),
37099
- step.tools.map((tool) => /* @__PURE__ */ jsx125(
37607
+ step.tools && step.tools.length > 0 && /* @__PURE__ */ jsxs88("div", { className: "flex items-center gap-1.5 flex-wrap", children: [
37608
+ /* @__PURE__ */ jsx130("span", { className: "text-[10px] text-[var(--foreground)]/30 uppercase font-semibold tracking-wider", children: "Tools:" }),
37609
+ step.tools.map((tool) => /* @__PURE__ */ jsx130(
37100
37610
  "span",
37101
37611
  {
37102
37612
  className: "text-[10px] font-mono px-1.5 py-0.5 rounded bg-interactive/[0.08] text-interactive/70 border border-interactive/10",
@@ -37105,9 +37615,9 @@ var WorkflowVisualizer = ({
37105
37615
  tool
37106
37616
  ))
37107
37617
  ] }),
37108
- step.on_failure && /* @__PURE__ */ jsxs84("div", { className: "flex items-start gap-2 text-xs bg-[#ef4444]/[0.06] border border-[#ef4444]/10 rounded-md px-2.5 py-2", children: [
37109
- /* @__PURE__ */ jsx125("span", { className: "shrink-0 text-[10px] font-semibold text-[#ef4444]/70 uppercase tracking-wider mt-px", children: "On failure:" }),
37110
- /* @__PURE__ */ jsx125("span", { className: "text-[var(--foreground)]/50", children: step.on_failure })
37618
+ step.on_failure && /* @__PURE__ */ jsxs88("div", { className: "flex items-start gap-2 text-xs bg-[#ef4444]/[0.06] border border-[#ef4444]/10 rounded-md px-2.5 py-2", children: [
37619
+ /* @__PURE__ */ jsx130("span", { className: "shrink-0 text-[10px] font-semibold text-[#ef4444]/70 uppercase tracking-wider mt-px", children: "On failure:" }),
37620
+ /* @__PURE__ */ jsx130("span", { className: "text-[var(--foreground)]/50", children: step.on_failure })
37111
37621
  ] })
37112
37622
  ] })
37113
37623
  ]
@@ -37121,8 +37631,8 @@ var WorkflowVisualizer = ({
37121
37631
  };
37122
37632
 
37123
37633
  // src/molecules/agent-builder/InstructionPreview/InstructionPreview.tsx
37124
- import { useState as useState12 } from "react";
37125
- import { jsx as jsx126, jsxs as jsxs85 } from "react/jsx-runtime";
37634
+ import { useState as useState15 } from "react";
37635
+ import { jsx as jsx131, jsxs as jsxs89 } from "react/jsx-runtime";
37126
37636
  var InstructionPreview = ({
37127
37637
  agent_name,
37128
37638
  description,
@@ -37131,11 +37641,11 @@ var InstructionPreview = ({
37131
37641
  tools,
37132
37642
  className
37133
37643
  }) => {
37134
- const [isExpanded, setIsExpanded] = useState12(false);
37644
+ const [isExpanded, setIsExpanded] = useState15(false);
37135
37645
  const previewLength = 300;
37136
37646
  const isLong = instruction.length > previewLength;
37137
37647
  const displayText = isExpanded || !isLong ? instruction : instruction.slice(0, previewLength) + "...";
37138
- return /* @__PURE__ */ jsxs85(
37648
+ return /* @__PURE__ */ jsxs89(
37139
37649
  "div",
37140
37650
  {
37141
37651
  className: cn(
@@ -37143,8 +37653,8 @@ var InstructionPreview = ({
37143
37653
  className
37144
37654
  ),
37145
37655
  children: [
37146
- /* @__PURE__ */ jsx126("div", { className: "px-4 py-3 border-b border-[var(--border-color)] bg-[var(--foreground)]/[0.03]", children: /* @__PURE__ */ jsxs85("div", { className: "flex items-center gap-2.5", children: [
37147
- /* @__PURE__ */ jsx126("div", { className: "w-6 h-6 rounded-md bg-interactive/10 flex items-center justify-center", children: /* @__PURE__ */ jsxs85(
37656
+ /* @__PURE__ */ jsx131("div", { className: "px-4 py-3 border-b border-[var(--border-color)] bg-[var(--foreground)]/[0.03]", children: /* @__PURE__ */ jsxs89("div", { className: "flex items-center gap-2.5", children: [
37657
+ /* @__PURE__ */ jsx131("div", { className: "w-6 h-6 rounded-md bg-interactive/10 flex items-center justify-center", children: /* @__PURE__ */ jsxs89(
37148
37658
  "svg",
37149
37659
  {
37150
37660
  width: "14",
@@ -37157,24 +37667,24 @@ var InstructionPreview = ({
37157
37667
  strokeLinecap: "round",
37158
37668
  strokeLinejoin: "round",
37159
37669
  children: [
37160
- /* @__PURE__ */ jsx126("path", { d: "M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z" }),
37161
- /* @__PURE__ */ jsx126("polyline", { points: "14 2 14 8 20 8" }),
37162
- /* @__PURE__ */ jsx126("line", { x1: "16", y1: "13", x2: "8", y2: "13" }),
37163
- /* @__PURE__ */ jsx126("line", { x1: "16", y1: "17", x2: "8", y2: "17" }),
37164
- /* @__PURE__ */ jsx126("polyline", { points: "10 9 9 9 8 9" })
37670
+ /* @__PURE__ */ jsx131("path", { d: "M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z" }),
37671
+ /* @__PURE__ */ jsx131("polyline", { points: "14 2 14 8 20 8" }),
37672
+ /* @__PURE__ */ jsx131("line", { x1: "16", y1: "13", x2: "8", y2: "13" }),
37673
+ /* @__PURE__ */ jsx131("line", { x1: "16", y1: "17", x2: "8", y2: "17" }),
37674
+ /* @__PURE__ */ jsx131("polyline", { points: "10 9 9 9 8 9" })
37165
37675
  ]
37166
37676
  }
37167
37677
  ) }),
37168
- /* @__PURE__ */ jsxs85("div", { className: "flex-1 min-w-0", children: [
37169
- /* @__PURE__ */ jsx126("h4", { className: "text-sm font-semibold text-[var(--foreground)]", children: agent_name }),
37170
- description && /* @__PURE__ */ jsx126("p", { className: "text-[11px] text-[var(--foreground)]/40 mt-0.5", children: description })
37678
+ /* @__PURE__ */ jsxs89("div", { className: "flex-1 min-w-0", children: [
37679
+ /* @__PURE__ */ jsx131("h4", { className: "text-sm font-semibold text-[var(--foreground)]", children: agent_name }),
37680
+ description && /* @__PURE__ */ jsx131("p", { className: "text-[11px] text-[var(--foreground)]/40 mt-0.5", children: description })
37171
37681
  ] })
37172
37682
  ] }) }),
37173
- /* @__PURE__ */ jsxs85("div", { className: "px-4 py-3 space-y-3", children: [
37174
- /* @__PURE__ */ jsxs85("div", { children: [
37175
- /* @__PURE__ */ jsx126("p", { className: "text-[10px] font-semibold text-[var(--foreground)]/30 uppercase tracking-wider mb-1.5", children: "Instruction" }),
37176
- /* @__PURE__ */ jsx126("div", { className: "text-xs text-[var(--foreground)]/60 leading-relaxed whitespace-pre-wrap font-mono bg-[var(--foreground)]/[0.02] border border-[var(--border-color)] rounded-lg p-3", children: displayText }),
37177
- isLong && /* @__PURE__ */ jsx126(
37683
+ /* @__PURE__ */ jsxs89("div", { className: "px-4 py-3 space-y-3", children: [
37684
+ /* @__PURE__ */ jsxs89("div", { children: [
37685
+ /* @__PURE__ */ jsx131("p", { className: "text-[10px] font-semibold text-[var(--foreground)]/30 uppercase tracking-wider mb-1.5", children: "Instruction" }),
37686
+ /* @__PURE__ */ jsx131("div", { className: "text-xs text-[var(--foreground)]/60 leading-relaxed whitespace-pre-wrap font-mono bg-[var(--foreground)]/[0.02] border border-[var(--border-color)] rounded-lg p-3", children: displayText }),
37687
+ isLong && /* @__PURE__ */ jsx131(
37178
37688
  "button",
37179
37689
  {
37180
37690
  onClick: () => setIsExpanded(!isExpanded),
@@ -37183,16 +37693,16 @@ var InstructionPreview = ({
37183
37693
  }
37184
37694
  )
37185
37695
  ] }),
37186
- workflow_summary && workflow_summary.length > 0 && /* @__PURE__ */ jsxs85("div", { children: [
37187
- /* @__PURE__ */ jsx126("p", { className: "text-[10px] font-semibold text-[var(--foreground)]/30 uppercase tracking-wider mb-1.5", children: "Workflow" }),
37188
- /* @__PURE__ */ jsx126("div", { className: "space-y-1", children: workflow_summary.map((step, idx) => /* @__PURE__ */ jsxs85("div", { className: "flex items-start gap-2 text-xs", children: [
37189
- /* @__PURE__ */ jsx126("span", { className: "shrink-0 w-5 h-5 rounded-full bg-interactive/10 flex items-center justify-center text-[10px] font-bold text-interactive", children: idx + 1 }),
37190
- /* @__PURE__ */ jsx126("span", { className: "text-[var(--foreground)]/50 mt-0.5", children: step })
37696
+ workflow_summary && workflow_summary.length > 0 && /* @__PURE__ */ jsxs89("div", { children: [
37697
+ /* @__PURE__ */ jsx131("p", { className: "text-[10px] font-semibold text-[var(--foreground)]/30 uppercase tracking-wider mb-1.5", children: "Workflow" }),
37698
+ /* @__PURE__ */ jsx131("div", { className: "space-y-1", children: workflow_summary.map((step, idx) => /* @__PURE__ */ jsxs89("div", { className: "flex items-start gap-2 text-xs", children: [
37699
+ /* @__PURE__ */ jsx131("span", { className: "shrink-0 w-5 h-5 rounded-full bg-interactive/10 flex items-center justify-center text-[10px] font-bold text-interactive", children: idx + 1 }),
37700
+ /* @__PURE__ */ jsx131("span", { className: "text-[var(--foreground)]/50 mt-0.5", children: step })
37191
37701
  ] }, idx)) })
37192
37702
  ] }),
37193
- tools && tools.length > 0 && /* @__PURE__ */ jsxs85("div", { children: [
37194
- /* @__PURE__ */ jsx126("p", { className: "text-[10px] font-semibold text-[var(--foreground)]/30 uppercase tracking-wider mb-1.5", children: "Tools" }),
37195
- /* @__PURE__ */ jsx126("div", { className: "flex flex-wrap gap-1.5", children: tools.map((tool) => /* @__PURE__ */ jsx126(
37703
+ tools && tools.length > 0 && /* @__PURE__ */ jsxs89("div", { children: [
37704
+ /* @__PURE__ */ jsx131("p", { className: "text-[10px] font-semibold text-[var(--foreground)]/30 uppercase tracking-wider mb-1.5", children: "Tools" }),
37705
+ /* @__PURE__ */ jsx131("div", { className: "flex flex-wrap gap-1.5", children: tools.map((tool) => /* @__PURE__ */ jsx131(
37196
37706
  "span",
37197
37707
  {
37198
37708
  className: "text-[10px] font-mono px-2 py-0.5 rounded bg-interactive/[0.08] text-interactive/70 border border-interactive/10",
@@ -37208,16 +37718,16 @@ var InstructionPreview = ({
37208
37718
  };
37209
37719
 
37210
37720
  // src/molecules/agent-builder/UIComponentSelector/UIComponentSelector.tsx
37211
- import { useState as useState13 } from "react";
37212
- import { jsx as jsx127, jsxs as jsxs86 } from "react/jsx-runtime";
37721
+ import { useState as useState16 } from "react";
37722
+ import { jsx as jsx132, jsxs as jsxs90 } from "react/jsx-runtime";
37213
37723
  function UIComponentSelector({
37214
37724
  components,
37215
37725
  onSelect,
37216
37726
  onPreview,
37217
37727
  className
37218
37728
  }) {
37219
- const [selected, setSelected] = useState13(/* @__PURE__ */ new Set());
37220
- const [submitted, setSubmitted] = useState13(false);
37729
+ const [selected, setSelected] = useState16(/* @__PURE__ */ new Set());
37730
+ const [submitted, setSubmitted] = useState16(false);
37221
37731
  const grouped = components.reduce(
37222
37732
  (acc, comp) => {
37223
37733
  const cat = comp.category || "Other";
@@ -37241,7 +37751,7 @@ function UIComponentSelector({
37241
37751
  onSelect?.(Array.from(selected));
37242
37752
  };
37243
37753
  const categoryOrder = Object.keys(grouped).sort();
37244
- return /* @__PURE__ */ jsxs86(
37754
+ return /* @__PURE__ */ jsxs90(
37245
37755
  "div",
37246
37756
  {
37247
37757
  className: cn(
@@ -37249,13 +37759,13 @@ function UIComponentSelector({
37249
37759
  className
37250
37760
  ),
37251
37761
  children: [
37252
- /* @__PURE__ */ jsxs86("div", { className: "px-4 py-3 border-b border-border bg-muted/50", children: [
37253
- /* @__PURE__ */ jsx127("h3", { className: "text-sm font-semibold text-foreground", children: "Select UI Components" }),
37254
- /* @__PURE__ */ jsx127("p", { className: "text-xs text-muted-foreground mt-0.5", children: "Choose which visual components this agent can use in its responses." })
37762
+ /* @__PURE__ */ jsxs90("div", { className: "px-4 py-3 border-b border-border bg-muted/50", children: [
37763
+ /* @__PURE__ */ jsx132("h3", { className: "text-sm font-semibold text-foreground", children: "Select UI Components" }),
37764
+ /* @__PURE__ */ jsx132("p", { className: "text-xs text-muted-foreground mt-0.5", children: "Choose which visual components this agent can use in its responses." })
37255
37765
  ] }),
37256
- /* @__PURE__ */ jsx127("div", { className: "px-4 py-3 space-y-4", children: categoryOrder.map((category) => /* @__PURE__ */ jsxs86("div", { children: [
37257
- /* @__PURE__ */ jsx127("h4", { className: "text-xs font-medium text-muted-foreground uppercase tracking-wider mb-2", children: category }),
37258
- /* @__PURE__ */ jsx127("div", { className: "space-y-1.5", children: grouped[category].map((comp) => /* @__PURE__ */ jsxs86(
37766
+ /* @__PURE__ */ jsx132("div", { className: "px-4 py-3 space-y-4", children: categoryOrder.map((category) => /* @__PURE__ */ jsxs90("div", { children: [
37767
+ /* @__PURE__ */ jsx132("h4", { className: "text-xs font-medium text-muted-foreground uppercase tracking-wider mb-2", children: category }),
37768
+ /* @__PURE__ */ jsx132("div", { className: "space-y-1.5", children: grouped[category].map((comp) => /* @__PURE__ */ jsxs90(
37259
37769
  "label",
37260
37770
  {
37261
37771
  className: cn(
@@ -37265,7 +37775,7 @@ function UIComponentSelector({
37265
37775
  selected.has(comp.name) && submitted && "bg-interactive/5"
37266
37776
  ),
37267
37777
  children: [
37268
- /* @__PURE__ */ jsx127(
37778
+ /* @__PURE__ */ jsx132(
37269
37779
  "input",
37270
37780
  {
37271
37781
  type: "checkbox",
@@ -37275,10 +37785,10 @@ function UIComponentSelector({
37275
37785
  className: "mt-0.5 h-4 w-4 rounded border-border text-interactive focus:ring-interactive/50 disabled:opacity-50"
37276
37786
  }
37277
37787
  ),
37278
- /* @__PURE__ */ jsxs86("div", { className: "flex-1 min-w-0", children: [
37279
- /* @__PURE__ */ jsxs86("div", { className: "flex items-center gap-1", children: [
37280
- /* @__PURE__ */ jsx127("span", { className: "text-sm font-medium text-foreground", children: comp.display_name }),
37281
- onPreview && /* @__PURE__ */ jsx127(
37788
+ /* @__PURE__ */ jsxs90("div", { className: "flex-1 min-w-0", children: [
37789
+ /* @__PURE__ */ jsxs90("div", { className: "flex items-center gap-1", children: [
37790
+ /* @__PURE__ */ jsx132("span", { className: "text-sm font-medium text-foreground", children: comp.display_name }),
37791
+ onPreview && /* @__PURE__ */ jsx132(
37282
37792
  "button",
37283
37793
  {
37284
37794
  type: "button",
@@ -37289,7 +37799,7 @@ function UIComponentSelector({
37289
37799
  },
37290
37800
  className: "shrink-0 p-0.5 rounded hover:bg-muted transition-colors",
37291
37801
  title: `Preview ${comp.display_name}`,
37292
- children: /* @__PURE__ */ jsxs86(
37802
+ children: /* @__PURE__ */ jsxs90(
37293
37803
  "svg",
37294
37804
  {
37295
37805
  width: "14",
@@ -37302,28 +37812,28 @@ function UIComponentSelector({
37302
37812
  strokeLinejoin: "round",
37303
37813
  className: "text-muted-foreground hover:text-primary",
37304
37814
  children: [
37305
- /* @__PURE__ */ jsx127("circle", { cx: "12", cy: "12", r: "10" }),
37306
- /* @__PURE__ */ jsx127("line", { x1: "12", y1: "16", x2: "12", y2: "12" }),
37307
- /* @__PURE__ */ jsx127("line", { x1: "12", y1: "8", x2: "12.01", y2: "8" })
37815
+ /* @__PURE__ */ jsx132("circle", { cx: "12", cy: "12", r: "10" }),
37816
+ /* @__PURE__ */ jsx132("line", { x1: "12", y1: "16", x2: "12", y2: "12" }),
37817
+ /* @__PURE__ */ jsx132("line", { x1: "12", y1: "8", x2: "12.01", y2: "8" })
37308
37818
  ]
37309
37819
  }
37310
37820
  )
37311
37821
  }
37312
37822
  )
37313
37823
  ] }),
37314
- /* @__PURE__ */ jsx127("span", { className: "ml-0 text-xs text-muted-foreground", children: comp.description })
37824
+ /* @__PURE__ */ jsx132("span", { className: "ml-0 text-xs text-muted-foreground", children: comp.description })
37315
37825
  ] })
37316
37826
  ]
37317
37827
  },
37318
37828
  comp.name
37319
37829
  )) })
37320
37830
  ] }, category)) }),
37321
- !submitted && /* @__PURE__ */ jsxs86("div", { className: "px-4 py-3 border-t border-border flex items-center justify-between", children: [
37322
- /* @__PURE__ */ jsxs86("span", { className: "text-xs text-muted-foreground", children: [
37831
+ !submitted && /* @__PURE__ */ jsxs90("div", { className: "px-4 py-3 border-t border-border flex items-center justify-between", children: [
37832
+ /* @__PURE__ */ jsxs90("span", { className: "text-xs text-muted-foreground", children: [
37323
37833
  selected.size,
37324
37834
  " selected"
37325
37835
  ] }),
37326
- /* @__PURE__ */ jsx127(
37836
+ /* @__PURE__ */ jsx132(
37327
37837
  "button",
37328
37838
  {
37329
37839
  onClick: handleContinue,
@@ -37338,7 +37848,7 @@ function UIComponentSelector({
37338
37848
  }
37339
37849
 
37340
37850
  // src/molecules/agent-builder/MultiAgentCard/MultiAgentCard.tsx
37341
- import { jsx as jsx128, jsxs as jsxs87 } from "react/jsx-runtime";
37851
+ import { jsx as jsx133, jsxs as jsxs91 } from "react/jsx-runtime";
37342
37852
  var MultiAgentCard = ({
37343
37853
  name,
37344
37854
  display_name,
@@ -37348,7 +37858,7 @@ var MultiAgentCard = ({
37348
37858
  className
37349
37859
  }) => {
37350
37860
  const avatarUrl = `https://api.dicebear.com/7.x/avataaars/svg?seed=${name}`;
37351
- return /* @__PURE__ */ jsxs87(
37861
+ return /* @__PURE__ */ jsxs91(
37352
37862
  "div",
37353
37863
  {
37354
37864
  className: cn(
@@ -37356,14 +37866,14 @@ var MultiAgentCard = ({
37356
37866
  className
37357
37867
  ),
37358
37868
  children: [
37359
- /* @__PURE__ */ jsxs87("div", { className: "flex items-start gap-4 px-5 py-4", children: [
37360
- /* @__PURE__ */ jsx128("div", { className: "h-12 w-12 shrink-0 rounded-full border-2 border-interactive/20 overflow-hidden bg-interactive/10 flex items-center justify-center", children: /* @__PURE__ */ jsx128("img", { src: avatarUrl, alt: display_name, className: "h-full w-full" }) }),
37361
- /* @__PURE__ */ jsxs87("div", { className: "flex-1 min-w-0", children: [
37362
- /* @__PURE__ */ jsxs87("div", { className: "flex items-center gap-2", children: [
37363
- /* @__PURE__ */ jsx128("h4", { className: "text-sm font-semibold text-[var(--foreground)] truncate", children: display_name }),
37364
- /* @__PURE__ */ jsx128("span", { className: "text-[11px] font-mono text-[var(--foreground)]/40 bg-[var(--foreground)]/[0.05] px-1.5 py-0.5 rounded", children: name }),
37365
- /* @__PURE__ */ jsx128("span", { className: "text-[10px] px-1.5 py-0.5 rounded-full font-medium bg-interactive/10 text-interactive", children: "Multi-Agent" }),
37366
- /* @__PURE__ */ jsx128(
37869
+ /* @__PURE__ */ jsxs91("div", { className: "flex items-start gap-4 px-5 py-4", children: [
37870
+ /* @__PURE__ */ jsx133("div", { className: "h-12 w-12 shrink-0 rounded-full border-2 border-interactive/20 overflow-hidden bg-interactive/10 flex items-center justify-center", children: /* @__PURE__ */ jsx133("img", { src: avatarUrl, alt: display_name, className: "h-full w-full" }) }),
37871
+ /* @__PURE__ */ jsxs91("div", { className: "flex-1 min-w-0", children: [
37872
+ /* @__PURE__ */ jsxs91("div", { className: "flex items-center gap-2", children: [
37873
+ /* @__PURE__ */ jsx133("h4", { className: "text-sm font-semibold text-[var(--foreground)] truncate", children: display_name }),
37874
+ /* @__PURE__ */ jsx133("span", { className: "text-[11px] font-mono text-[var(--foreground)]/40 bg-[var(--foreground)]/[0.05] px-1.5 py-0.5 rounded", children: name }),
37875
+ /* @__PURE__ */ jsx133("span", { className: "text-[10px] px-1.5 py-0.5 rounded-full font-medium bg-interactive/10 text-interactive", children: "Multi-Agent" }),
37876
+ /* @__PURE__ */ jsx133(
37367
37877
  "span",
37368
37878
  {
37369
37879
  className: cn(
@@ -37374,18 +37884,18 @@ var MultiAgentCard = ({
37374
37884
  }
37375
37885
  )
37376
37886
  ] }),
37377
- /* @__PURE__ */ jsx128("p", { className: "text-xs text-[var(--foreground)]/60 leading-relaxed mt-1 whitespace-normal", style: { textWrap: "auto" }, children: description })
37887
+ /* @__PURE__ */ jsx133("p", { className: "text-xs text-[var(--foreground)]/60 leading-relaxed mt-1 whitespace-normal", style: { textWrap: "auto" }, children: description })
37378
37888
  ] })
37379
37889
  ] }),
37380
- stages.length > 0 && /* @__PURE__ */ jsxs87("div", { className: "border-t border-[var(--border-color)] px-5 py-4", children: [
37381
- /* @__PURE__ */ jsxs87("p", { className: "text-[11px] font-semibold text-[var(--foreground)]/40 uppercase tracking-wide mb-3", children: [
37890
+ stages.length > 0 && /* @__PURE__ */ jsxs91("div", { className: "border-t border-[var(--border-color)] px-5 py-4", children: [
37891
+ /* @__PURE__ */ jsxs91("p", { className: "text-[11px] font-semibold text-[var(--foreground)]/40 uppercase tracking-wide mb-3", children: [
37382
37892
  "Stages (",
37383
37893
  stages.length,
37384
37894
  ")"
37385
37895
  ] }),
37386
- /* @__PURE__ */ jsx128("div", { className: "flex flex-col gap-0", children: stages.map((stage, idx) => /* @__PURE__ */ jsxs87("div", { className: "flex items-stretch", children: [
37387
- /* @__PURE__ */ jsxs87("div", { className: "flex flex-col items-center mr-3 w-5", children: [
37388
- /* @__PURE__ */ jsx128(
37896
+ /* @__PURE__ */ jsx133("div", { className: "flex flex-col gap-0", children: stages.map((stage, idx) => /* @__PURE__ */ jsxs91("div", { className: "flex items-stretch", children: [
37897
+ /* @__PURE__ */ jsxs91("div", { className: "flex flex-col items-center mr-3 w-5", children: [
37898
+ /* @__PURE__ */ jsx133(
37389
37899
  "div",
37390
37900
  {
37391
37901
  className: cn(
@@ -37395,20 +37905,20 @@ var MultiAgentCard = ({
37395
37905
  children: idx + 1
37396
37906
  }
37397
37907
  ),
37398
- idx < stages.length - 1 && /* @__PURE__ */ jsx128("div", { className: "w-px flex-1 bg-interactive/20 min-h-[16px]" })
37908
+ idx < stages.length - 1 && /* @__PURE__ */ jsx133("div", { className: "w-px flex-1 bg-interactive/20 min-h-[16px]" })
37399
37909
  ] }),
37400
- /* @__PURE__ */ jsxs87("div", { className: "flex-1 mb-2 p-3 rounded-lg border border-[var(--border-color)] bg-[var(--foreground)]/[0.02]", children: [
37401
- /* @__PURE__ */ jsxs87("div", { className: "flex items-center gap-2", children: [
37402
- /* @__PURE__ */ jsx128("span", { className: "text-xs font-semibold text-[var(--foreground)]", children: stage.name }),
37403
- /* @__PURE__ */ jsx128("span", { className: "text-[10px] font-mono text-[var(--foreground)]/30", children: stage.agent_name })
37910
+ /* @__PURE__ */ jsxs91("div", { className: "flex-1 mb-2 p-3 rounded-lg border border-[var(--border-color)] bg-[var(--foreground)]/[0.02]", children: [
37911
+ /* @__PURE__ */ jsxs91("div", { className: "flex items-center gap-2", children: [
37912
+ /* @__PURE__ */ jsx133("span", { className: "text-xs font-semibold text-[var(--foreground)]", children: stage.name }),
37913
+ /* @__PURE__ */ jsx133("span", { className: "text-[10px] font-mono text-[var(--foreground)]/30", children: stage.agent_name })
37404
37914
  ] }),
37405
- /* @__PURE__ */ jsxs87("div", { className: "flex items-center gap-3 mt-1.5 text-[10px] text-[var(--foreground)]/50", children: [
37406
- stage.tools && stage.tools.length > 0 && /* @__PURE__ */ jsxs87("span", { children: [
37915
+ /* @__PURE__ */ jsxs91("div", { className: "flex items-center gap-3 mt-1.5 text-[10px] text-[var(--foreground)]/50", children: [
37916
+ stage.tools && stage.tools.length > 0 && /* @__PURE__ */ jsxs91("span", { children: [
37407
37917
  stage.tools.length,
37408
37918
  " tool",
37409
37919
  stage.tools.length !== 1 ? "s" : ""
37410
37920
  ] }),
37411
- stage.ui_components && stage.ui_components.length > 0 && /* @__PURE__ */ jsxs87("span", { children: [
37921
+ stage.ui_components && stage.ui_components.length > 0 && /* @__PURE__ */ jsxs91("span", { children: [
37412
37922
  stage.ui_components.length,
37413
37923
  " component",
37414
37924
  stage.ui_components.length !== 1 ? "s" : ""
@@ -37423,12 +37933,12 @@ var MultiAgentCard = ({
37423
37933
  };
37424
37934
 
37425
37935
  // src/molecules/agent-builder/MultiAgentPlan/MultiAgentPlan.tsx
37426
- import { jsx as jsx129, jsxs as jsxs88 } from "react/jsx-runtime";
37936
+ import { jsx as jsx134, jsxs as jsxs92 } from "react/jsx-runtime";
37427
37937
  var MultiAgentPlan = ({
37428
37938
  stages = [],
37429
37939
  className
37430
37940
  }) => {
37431
- return /* @__PURE__ */ jsxs88(
37941
+ return /* @__PURE__ */ jsxs92(
37432
37942
  "div",
37433
37943
  {
37434
37944
  className: cn(
@@ -37436,8 +37946,8 @@ var MultiAgentPlan = ({
37436
37946
  className
37437
37947
  ),
37438
37948
  children: [
37439
- /* @__PURE__ */ jsx129("div", { className: "px-4 py-3 border-b border-[var(--border-color)] bg-[var(--foreground)]/[0.02]", children: /* @__PURE__ */ jsxs88("div", { className: "flex items-center gap-2", children: [
37440
- /* @__PURE__ */ jsx129("div", { className: "w-4 h-4 rounded bg-violet-500/20 flex items-center justify-center", children: /* @__PURE__ */ jsx129(
37949
+ /* @__PURE__ */ jsx134("div", { className: "px-4 py-3 border-b border-[var(--border-color)] bg-[var(--foreground)]/[0.02]", children: /* @__PURE__ */ jsxs92("div", { className: "flex items-center gap-2", children: [
37950
+ /* @__PURE__ */ jsx134("div", { className: "w-4 h-4 rounded bg-violet-500/20 flex items-center justify-center", children: /* @__PURE__ */ jsx134(
37441
37951
  "svg",
37442
37952
  {
37443
37953
  width: "10",
@@ -37447,20 +37957,20 @@ var MultiAgentPlan = ({
37447
37957
  stroke: "currentColor",
37448
37958
  strokeWidth: "2",
37449
37959
  className: "text-violet-600",
37450
- children: /* @__PURE__ */ jsx129("path", { d: "M16 3h5v5M4 20L21 3M21 16v5h-5M15 15l6 6M4 4l5 5" })
37960
+ children: /* @__PURE__ */ jsx134("path", { d: "M16 3h5v5M4 20L21 3M21 16v5h-5M15 15l6 6M4 4l5 5" })
37451
37961
  }
37452
37962
  ) }),
37453
- /* @__PURE__ */ jsx129("span", { className: "text-xs font-semibold text-[var(--foreground)]", children: "Proposed Multi-Agent Workflow" }),
37454
- /* @__PURE__ */ jsx129("span", { className: "text-[10px] px-1.5 py-0.5 rounded-full bg-amber-500/10 text-amber-600 font-medium", children: "Draft" })
37963
+ /* @__PURE__ */ jsx134("span", { className: "text-xs font-semibold text-[var(--foreground)]", children: "Proposed Multi-Agent Workflow" }),
37964
+ /* @__PURE__ */ jsx134("span", { className: "text-[10px] px-1.5 py-0.5 rounded-full bg-amber-500/10 text-amber-600 font-medium", children: "Draft" })
37455
37965
  ] }) }),
37456
- /* @__PURE__ */ jsx129("div", { className: "px-4 py-3", children: /* @__PURE__ */ jsx129("div", { className: "flex flex-col gap-0", children: stages.map((stage, idx) => /* @__PURE__ */ jsxs88("div", { className: "flex items-stretch min-w-0", children: [
37457
- /* @__PURE__ */ jsxs88("div", { className: "flex flex-col items-center mr-3 w-6", children: [
37458
- /* @__PURE__ */ jsx129("div", { className: "w-6 h-6 rounded-full flex items-center justify-center text-[10px] font-bold shrink-0 bg-interactive/10 text-interactive border border-interactive/30", children: idx + 1 }),
37459
- idx < stages.length - 1 && /* @__PURE__ */ jsx129("div", { className: "w-px flex-1 bg-interactive/20 min-h-[12px]" })
37966
+ /* @__PURE__ */ jsx134("div", { className: "px-4 py-3", children: /* @__PURE__ */ jsx134("div", { className: "flex flex-col gap-0", children: stages.map((stage, idx) => /* @__PURE__ */ jsxs92("div", { className: "flex items-stretch min-w-0", children: [
37967
+ /* @__PURE__ */ jsxs92("div", { className: "flex flex-col items-center mr-3 w-6", children: [
37968
+ /* @__PURE__ */ jsx134("div", { className: "w-6 h-6 rounded-full flex items-center justify-center text-[10px] font-bold shrink-0 bg-interactive/10 text-interactive border border-interactive/30", children: idx + 1 }),
37969
+ idx < stages.length - 1 && /* @__PURE__ */ jsx134("div", { className: "w-px flex-1 bg-interactive/20 min-h-[12px]" })
37460
37970
  ] }),
37461
- /* @__PURE__ */ jsxs88("div", { className: "flex-1 mb-2 pb-2 min-w-0", children: [
37462
- /* @__PURE__ */ jsx129("p", { className: "text-xs font-semibold text-foreground", children: stage.name }),
37463
- stage.description && /* @__PURE__ */ jsx129(
37971
+ /* @__PURE__ */ jsxs92("div", { className: "flex-1 mb-2 pb-2 min-w-0", children: [
37972
+ /* @__PURE__ */ jsx134("p", { className: "text-xs font-semibold text-foreground", children: stage.name }),
37973
+ stage.description && /* @__PURE__ */ jsx134(
37464
37974
  "p",
37465
37975
  {
37466
37976
  className: "text-[11px] text-foreground/50 mt-0.5 whitespace-normal",
@@ -37468,7 +37978,7 @@ var MultiAgentPlan = ({
37468
37978
  children: stage.description
37469
37979
  }
37470
37980
  ),
37471
- stage.proposed_tools && stage.proposed_tools.length > 0 && /* @__PURE__ */ jsx129("div", { className: "flex flex-wrap gap-1 mt-1.5", children: stage.proposed_tools.map((tool) => /* @__PURE__ */ jsx129(
37981
+ stage.proposed_tools && stage.proposed_tools.length > 0 && /* @__PURE__ */ jsx134("div", { className: "flex flex-wrap gap-1 mt-1.5", children: stage.proposed_tools.map((tool) => /* @__PURE__ */ jsx134(
37472
37982
  "span",
37473
37983
  {
37474
37984
  className: "text-[10px] px-1.5 py-0.5 rounded bg-interactive/10 text-interactive font-mono",
@@ -37484,8 +37994,8 @@ var MultiAgentPlan = ({
37484
37994
  };
37485
37995
 
37486
37996
  // src/molecules/agent-builder/MultiAgentUISelector/MultiAgentUISelector.tsx
37487
- import { useState as useState14, useCallback as useCallback5 } from "react";
37488
- import { jsx as jsx130, jsxs as jsxs89 } from "react/jsx-runtime";
37997
+ import { useState as useState17, useCallback as useCallback7 } from "react";
37998
+ import { jsx as jsx135, jsxs as jsxs93 } from "react/jsx-runtime";
37489
37999
  var MultiAgentUISelector = ({
37490
38000
  stages = [],
37491
38001
  components = [],
@@ -37493,8 +38003,8 @@ var MultiAgentUISelector = ({
37493
38003
  onPreview,
37494
38004
  className
37495
38005
  }) => {
37496
- const [activeStageId, setActiveStageId] = useState14(stages[0]?.id || "");
37497
- const [selections, setSelections] = useState14(
38006
+ const [activeStageId, setActiveStageId] = useState17(stages[0]?.id || "");
38007
+ const [selections, setSelections] = useState17(
37498
38008
  () => {
37499
38009
  const init = {};
37500
38010
  for (const stage of stages) {
@@ -37503,14 +38013,14 @@ var MultiAgentUISelector = ({
37503
38013
  return init;
37504
38014
  }
37505
38015
  );
37506
- const [submitted, setSubmitted] = useState14(false);
38016
+ const [submitted, setSubmitted] = useState17(false);
37507
38017
  const grouped = components.reduce((acc, comp) => {
37508
38018
  const cat = comp.category || "Other";
37509
38019
  if (!acc[cat]) acc[cat] = [];
37510
38020
  acc[cat].push(comp);
37511
38021
  return acc;
37512
38022
  }, {});
37513
- const toggleComponent = useCallback5(
38023
+ const toggleComponent = useCallback7(
37514
38024
  (stageId, compName) => {
37515
38025
  if (submitted) return;
37516
38026
  setSelections((prev) => {
@@ -37527,7 +38037,7 @@ var MultiAgentUISelector = ({
37527
38037
  },
37528
38038
  [submitted]
37529
38039
  );
37530
- const handleContinue = useCallback5(() => {
38040
+ const handleContinue = useCallback7(() => {
37531
38041
  setSubmitted(true);
37532
38042
  if (onSelect) {
37533
38043
  const result = {};
@@ -37538,7 +38048,7 @@ var MultiAgentUISelector = ({
37538
38048
  }
37539
38049
  }, [onSelect, selections]);
37540
38050
  const activeStage = stages.find((s) => s.id === activeStageId);
37541
- return /* @__PURE__ */ jsxs89(
38051
+ return /* @__PURE__ */ jsxs93(
37542
38052
  "div",
37543
38053
  {
37544
38054
  className: cn(
@@ -37546,8 +38056,8 @@ var MultiAgentUISelector = ({
37546
38056
  className
37547
38057
  ),
37548
38058
  children: [
37549
- /* @__PURE__ */ jsx130("div", { className: "px-4 py-3 border-b border-[var(--border-color)] bg-[var(--foreground)]/[0.02]", children: /* @__PURE__ */ jsxs89("div", { className: "flex items-center gap-2", children: [
37550
- /* @__PURE__ */ jsx130("div", { className: "w-4 h-4 rounded bg-interactive/20 flex items-center justify-center", children: /* @__PURE__ */ jsxs89(
38059
+ /* @__PURE__ */ jsx135("div", { className: "px-4 py-3 border-b border-[var(--border-color)] bg-[var(--foreground)]/[0.02]", children: /* @__PURE__ */ jsxs93("div", { className: "flex items-center gap-2", children: [
38060
+ /* @__PURE__ */ jsx135("div", { className: "w-4 h-4 rounded bg-interactive/20 flex items-center justify-center", children: /* @__PURE__ */ jsxs93(
37551
38061
  "svg",
37552
38062
  {
37553
38063
  width: "10",
@@ -37558,16 +38068,16 @@ var MultiAgentUISelector = ({
37558
38068
  strokeWidth: "2",
37559
38069
  className: "text-interactive",
37560
38070
  children: [
37561
- /* @__PURE__ */ jsx130("rect", { x: "3", y: "3", width: "7", height: "7" }),
37562
- /* @__PURE__ */ jsx130("rect", { x: "14", y: "3", width: "7", height: "7" }),
37563
- /* @__PURE__ */ jsx130("rect", { x: "3", y: "14", width: "7", height: "7" }),
37564
- /* @__PURE__ */ jsx130("rect", { x: "14", y: "14", width: "7", height: "7" })
38071
+ /* @__PURE__ */ jsx135("rect", { x: "3", y: "3", width: "7", height: "7" }),
38072
+ /* @__PURE__ */ jsx135("rect", { x: "14", y: "3", width: "7", height: "7" }),
38073
+ /* @__PURE__ */ jsx135("rect", { x: "3", y: "14", width: "7", height: "7" }),
38074
+ /* @__PURE__ */ jsx135("rect", { x: "14", y: "14", width: "7", height: "7" })
37565
38075
  ]
37566
38076
  }
37567
38077
  ) }),
37568
- /* @__PURE__ */ jsx130("span", { className: "text-xs font-semibold text-[var(--foreground)]", children: "UI Components per Stage" })
38078
+ /* @__PURE__ */ jsx135("span", { className: "text-xs font-semibold text-[var(--foreground)]", children: "UI Components per Stage" })
37569
38079
  ] }) }),
37570
- /* @__PURE__ */ jsx130("div", { className: "flex border-b border-[var(--border-color)] px-4", children: stages.map((stage) => /* @__PURE__ */ jsx130(
38080
+ /* @__PURE__ */ jsx135("div", { className: "flex border-b border-[var(--border-color)] px-4", children: stages.map((stage) => /* @__PURE__ */ jsx135(
37571
38081
  "button",
37572
38082
  {
37573
38083
  onClick: () => setActiveStageId(stage.id),
@@ -37581,19 +38091,19 @@ var MultiAgentUISelector = ({
37581
38091
  },
37582
38092
  stage.id
37583
38093
  )) }),
37584
- /* @__PURE__ */ jsxs89("div", { className: "px-4 py-3", children: [
37585
- activeStage && /* @__PURE__ */ jsxs89("p", { className: "text-[10px] text-[var(--foreground)]/40 mb-3", children: [
38094
+ /* @__PURE__ */ jsxs93("div", { className: "px-4 py-3", children: [
38095
+ activeStage && /* @__PURE__ */ jsxs93("p", { className: "text-[10px] text-[var(--foreground)]/40 mb-3", children: [
37586
38096
  "Select components for ",
37587
- /* @__PURE__ */ jsx130("strong", { children: activeStage.name }),
38097
+ /* @__PURE__ */ jsx135("strong", { children: activeStage.name }),
37588
38098
  " (",
37589
38099
  activeStage.agent_name,
37590
38100
  ")"
37591
38101
  ] }),
37592
- Object.entries(grouped).map(([category, comps]) => /* @__PURE__ */ jsxs89("div", { className: "mb-3", children: [
37593
- /* @__PURE__ */ jsx130("p", { className: "text-[10px] font-semibold text-[var(--foreground)]/40 uppercase tracking-wide mb-1.5", children: category }),
37594
- /* @__PURE__ */ jsx130("div", { className: "grid grid-cols-2 gap-1.5", children: comps.map((comp) => {
38102
+ Object.entries(grouped).map(([category, comps]) => /* @__PURE__ */ jsxs93("div", { className: "mb-3", children: [
38103
+ /* @__PURE__ */ jsx135("p", { className: "text-[10px] font-semibold text-[var(--foreground)]/40 uppercase tracking-wide mb-1.5", children: category }),
38104
+ /* @__PURE__ */ jsx135("div", { className: "grid grid-cols-2 gap-1.5", children: comps.map((comp) => {
37595
38105
  const isSelected = selections[activeStageId]?.has(comp.name) || false;
37596
- return /* @__PURE__ */ jsxs89(
38106
+ return /* @__PURE__ */ jsxs93(
37597
38107
  "div",
37598
38108
  {
37599
38109
  role: "button",
@@ -37611,15 +38121,15 @@ var MultiAgentUISelector = ({
37611
38121
  submitted && "opacity-60 cursor-default pointer-events-none"
37612
38122
  ),
37613
38123
  children: [
37614
- /* @__PURE__ */ jsxs89("div", { className: "flex items-center gap-1.5", children: [
37615
- /* @__PURE__ */ jsx130(
38124
+ /* @__PURE__ */ jsxs93("div", { className: "flex items-center gap-1.5", children: [
38125
+ /* @__PURE__ */ jsx135(
37616
38126
  "div",
37617
38127
  {
37618
38128
  className: cn(
37619
38129
  "w-3.5 h-3.5 rounded border flex items-center justify-center shrink-0",
37620
38130
  isSelected ? "bg-interactive border-interactive" : "border-[var(--foreground)]/20"
37621
38131
  ),
37622
- children: isSelected && /* @__PURE__ */ jsx130(
38132
+ children: isSelected && /* @__PURE__ */ jsx135(
37623
38133
  "svg",
37624
38134
  {
37625
38135
  width: "8",
@@ -37628,13 +38138,13 @@ var MultiAgentUISelector = ({
37628
38138
  fill: "none",
37629
38139
  stroke: "white",
37630
38140
  strokeWidth: "3",
37631
- children: /* @__PURE__ */ jsx130("polyline", { points: "20 6 9 17 4 12" })
38141
+ children: /* @__PURE__ */ jsx135("polyline", { points: "20 6 9 17 4 12" })
37632
38142
  }
37633
38143
  )
37634
38144
  }
37635
38145
  ),
37636
- /* @__PURE__ */ jsx130("span", { className: "font-medium text-[var(--foreground)]", children: comp.display_name }),
37637
- onPreview && /* @__PURE__ */ jsx130(
38146
+ /* @__PURE__ */ jsx135("span", { className: "font-medium text-[var(--foreground)]", children: comp.display_name }),
38147
+ onPreview && /* @__PURE__ */ jsx135(
37638
38148
  "button",
37639
38149
  {
37640
38150
  type: "button",
@@ -37644,7 +38154,7 @@ var MultiAgentUISelector = ({
37644
38154
  },
37645
38155
  className: "ml-auto shrink-0 p-0.5 rounded hover:bg-[var(--foreground)]/10 transition-colors",
37646
38156
  title: `Preview ${comp.display_name}`,
37647
- children: /* @__PURE__ */ jsxs89(
38157
+ children: /* @__PURE__ */ jsxs93(
37648
38158
  "svg",
37649
38159
  {
37650
38160
  width: "14",
@@ -37657,16 +38167,16 @@ var MultiAgentUISelector = ({
37657
38167
  strokeLinejoin: "round",
37658
38168
  className: "text-[var(--foreground)]/40 hover:text-[var(--primary-color)]",
37659
38169
  children: [
37660
- /* @__PURE__ */ jsx130("circle", { cx: "12", cy: "12", r: "10" }),
37661
- /* @__PURE__ */ jsx130("line", { x1: "12", y1: "16", x2: "12", y2: "12" }),
37662
- /* @__PURE__ */ jsx130("line", { x1: "12", y1: "8", x2: "12.01", y2: "8" })
38170
+ /* @__PURE__ */ jsx135("circle", { cx: "12", cy: "12", r: "10" }),
38171
+ /* @__PURE__ */ jsx135("line", { x1: "12", y1: "16", x2: "12", y2: "12" }),
38172
+ /* @__PURE__ */ jsx135("line", { x1: "12", y1: "8", x2: "12.01", y2: "8" })
37663
38173
  ]
37664
38174
  }
37665
38175
  )
37666
38176
  }
37667
38177
  )
37668
38178
  ] }),
37669
- /* @__PURE__ */ jsx130("p", { className: "text-[10px] text-[var(--foreground)]/40 mt-0.5 ml-5 whitespace-normal", children: comp.description })
38179
+ /* @__PURE__ */ jsx135("p", { className: "text-[10px] text-[var(--foreground)]/40 mt-0.5 ml-5 whitespace-normal", children: comp.description })
37670
38180
  ]
37671
38181
  },
37672
38182
  comp.name
@@ -37674,7 +38184,7 @@ var MultiAgentUISelector = ({
37674
38184
  }) })
37675
38185
  ] }, category))
37676
38186
  ] }),
37677
- !submitted && /* @__PURE__ */ jsx130("div", { className: "px-4 pb-3", children: /* @__PURE__ */ jsx130(
38187
+ !submitted && /* @__PURE__ */ jsx135("div", { className: "px-4 pb-3", children: /* @__PURE__ */ jsx135(
37678
38188
  "button",
37679
38189
  {
37680
38190
  onClick: handleContinue,
@@ -37682,20 +38192,20 @@ var MultiAgentUISelector = ({
37682
38192
  children: "Continue"
37683
38193
  }
37684
38194
  ) }),
37685
- submitted && /* @__PURE__ */ jsx130("div", { className: "px-4 pb-3", children: /* @__PURE__ */ jsx130("div", { className: "text-[10px] text-emerald-600 font-medium text-center py-1.5 ", children: "Selections confirmed" }) })
38195
+ submitted && /* @__PURE__ */ jsx135("div", { className: "px-4 pb-3", children: /* @__PURE__ */ jsx135("div", { className: "text-[10px] text-emerald-600 font-medium text-center py-1.5 ", children: "Selections confirmed" }) })
37686
38196
  ]
37687
38197
  }
37688
38198
  );
37689
38199
  };
37690
38200
 
37691
38201
  // src/molecules/agent-builder/StageIndicator/StageIndicator.tsx
37692
- import { jsx as jsx131, jsxs as jsxs90 } from "react/jsx-runtime";
38202
+ import { jsx as jsx136, jsxs as jsxs94 } from "react/jsx-runtime";
37693
38203
  var StageIndicator = ({
37694
38204
  stage_name,
37695
38205
  agent_name,
37696
38206
  className
37697
38207
  }) => {
37698
- return /* @__PURE__ */ jsxs90(
38208
+ return /* @__PURE__ */ jsxs94(
37699
38209
  "div",
37700
38210
  {
37701
38211
  className: cn(
@@ -37703,12 +38213,12 @@ var StageIndicator = ({
37703
38213
  className
37704
38214
  ),
37705
38215
  children: [
37706
- /* @__PURE__ */ jsx131("div", { className: "flex-1 h-px bg-[var(--border-color)]" }),
37707
- /* @__PURE__ */ jsxs90("div", { className: "flex items-center gap-1.5 px-3 py-1 rounded-full bg-violet-500/10 border border-violet-500/20", children: [
37708
- /* @__PURE__ */ jsx131("div", { className: "w-1.5 h-1.5 rounded-full bg-violet-500 animate-pulse" }),
37709
- /* @__PURE__ */ jsx131("span", { className: "text-[10px] font-medium text-violet-600", children: stage_name || agent_name })
38216
+ /* @__PURE__ */ jsx136("div", { className: "flex-1 h-px bg-[var(--border-color)]" }),
38217
+ /* @__PURE__ */ jsxs94("div", { className: "flex items-center gap-1.5 px-3 py-1 rounded-full bg-violet-500/10 border border-violet-500/20", children: [
38218
+ /* @__PURE__ */ jsx136("div", { className: "w-1.5 h-1.5 rounded-full bg-violet-500 animate-pulse" }),
38219
+ /* @__PURE__ */ jsx136("span", { className: "text-[10px] font-medium text-violet-600", children: stage_name || agent_name })
37710
38220
  ] }),
37711
- /* @__PURE__ */ jsx131("div", { className: "flex-1 h-px bg-[var(--border-color)]" })
38221
+ /* @__PURE__ */ jsx136("div", { className: "flex-1 h-px bg-[var(--border-color)]" })
37712
38222
  ]
37713
38223
  }
37714
38224
  );
@@ -38006,7 +38516,7 @@ __export(ui_exports, {
38006
38516
  // src/components/ui/button-group.tsx
38007
38517
  import { Slot as Slot4 } from "@radix-ui/react-slot";
38008
38518
  import { cva as cva8 } from "class-variance-authority";
38009
- import { jsx as jsx132 } from "react/jsx-runtime";
38519
+ import { jsx as jsx137 } from "react/jsx-runtime";
38010
38520
  var buttonGroupVariants = cva8(
38011
38521
  "flex w-fit items-stretch has-[>[data-slot=button-group]]:gap-2 [&>*]:focus-visible:relative [&>*]:focus-visible:z-10 has-[select[aria-hidden=true]:last-child]:[&>[data-slot=select-trigger]:last-of-type]:rounded-r-md [&>[data-slot=select-trigger]:not([class*='w-'])]:w-fit [&>input]:flex-1",
38012
38522
  {
@@ -38026,7 +38536,7 @@ function ButtonGroup({
38026
38536
  orientation,
38027
38537
  ...props
38028
38538
  }) {
38029
- return /* @__PURE__ */ jsx132(
38539
+ return /* @__PURE__ */ jsx137(
38030
38540
  "div",
38031
38541
  {
38032
38542
  role: "group",
@@ -38043,7 +38553,7 @@ function ButtonGroupText({
38043
38553
  ...props
38044
38554
  }) {
38045
38555
  const Comp = asChild ? Slot4 : "div";
38046
- return /* @__PURE__ */ jsx132(
38556
+ return /* @__PURE__ */ jsx137(
38047
38557
  Comp,
38048
38558
  {
38049
38559
  className: cn(
@@ -38059,7 +38569,7 @@ function ButtonGroupSeparator({
38059
38569
  orientation = "vertical",
38060
38570
  ...props
38061
38571
  }) {
38062
- return /* @__PURE__ */ jsx132(
38572
+ return /* @__PURE__ */ jsx137(
38063
38573
  Separator2,
38064
38574
  {
38065
38575
  "data-slot": "button-group-separator",
@@ -38075,9 +38585,9 @@ function ButtonGroupSeparator({
38075
38585
 
38076
38586
  // src/components/ui/empty.tsx
38077
38587
  import { cva as cva9 } from "class-variance-authority";
38078
- import { jsx as jsx133 } from "react/jsx-runtime";
38588
+ import { jsx as jsx138 } from "react/jsx-runtime";
38079
38589
  function Empty({ className, ...props }) {
38080
- return /* @__PURE__ */ jsx133(
38590
+ return /* @__PURE__ */ jsx138(
38081
38591
  "div",
38082
38592
  {
38083
38593
  "data-slot": "empty",
@@ -38090,7 +38600,7 @@ function Empty({ className, ...props }) {
38090
38600
  );
38091
38601
  }
38092
38602
  function EmptyHeader({ className, ...props }) {
38093
- return /* @__PURE__ */ jsx133(
38603
+ return /* @__PURE__ */ jsx138(
38094
38604
  "div",
38095
38605
  {
38096
38606
  "data-slot": "empty-header",
@@ -38121,7 +38631,7 @@ function EmptyMedia({
38121
38631
  variant = "default",
38122
38632
  ...props
38123
38633
  }) {
38124
- return /* @__PURE__ */ jsx133(
38634
+ return /* @__PURE__ */ jsx138(
38125
38635
  "div",
38126
38636
  {
38127
38637
  "data-slot": "empty-icon",
@@ -38132,7 +38642,7 @@ function EmptyMedia({
38132
38642
  );
38133
38643
  }
38134
38644
  function EmptyTitle({ className, ...props }) {
38135
- return /* @__PURE__ */ jsx133(
38645
+ return /* @__PURE__ */ jsx138(
38136
38646
  "div",
38137
38647
  {
38138
38648
  "data-slot": "empty-title",
@@ -38142,7 +38652,7 @@ function EmptyTitle({ className, ...props }) {
38142
38652
  );
38143
38653
  }
38144
38654
  function EmptyDescription({ className, ...props }) {
38145
- return /* @__PURE__ */ jsx133(
38655
+ return /* @__PURE__ */ jsx138(
38146
38656
  "div",
38147
38657
  {
38148
38658
  "data-slot": "empty-description",
@@ -38155,7 +38665,7 @@ function EmptyDescription({ className, ...props }) {
38155
38665
  );
38156
38666
  }
38157
38667
  function EmptyContent({ className, ...props }) {
38158
- return /* @__PURE__ */ jsx133(
38668
+ return /* @__PURE__ */ jsx138(
38159
38669
  "div",
38160
38670
  {
38161
38671
  "data-slot": "empty-content",
@@ -38169,11 +38679,11 @@ function EmptyContent({ className, ...props }) {
38169
38679
  }
38170
38680
 
38171
38681
  // src/components/ui/field.tsx
38172
- import { useMemo as useMemo9 } from "react";
38682
+ import { useMemo as useMemo10 } from "react";
38173
38683
  import { cva as cva10 } from "class-variance-authority";
38174
- import { jsx as jsx134, jsxs as jsxs91 } from "react/jsx-runtime";
38684
+ import { jsx as jsx139, jsxs as jsxs95 } from "react/jsx-runtime";
38175
38685
  function FieldSet({ className, ...props }) {
38176
- return /* @__PURE__ */ jsx134(
38686
+ return /* @__PURE__ */ jsx139(
38177
38687
  "fieldset",
38178
38688
  {
38179
38689
  "data-slot": "field-set",
@@ -38191,7 +38701,7 @@ function FieldLegend({
38191
38701
  variant = "legend",
38192
38702
  ...props
38193
38703
  }) {
38194
- return /* @__PURE__ */ jsx134(
38704
+ return /* @__PURE__ */ jsx139(
38195
38705
  "legend",
38196
38706
  {
38197
38707
  "data-slot": "field-legend",
@@ -38207,7 +38717,7 @@ function FieldLegend({
38207
38717
  );
38208
38718
  }
38209
38719
  function FieldGroup({ className, ...props }) {
38210
- return /* @__PURE__ */ jsx134(
38720
+ return /* @__PURE__ */ jsx139(
38211
38721
  "div",
38212
38722
  {
38213
38723
  "data-slot": "field-group",
@@ -38247,7 +38757,7 @@ function Field({
38247
38757
  orientation = "vertical",
38248
38758
  ...props
38249
38759
  }) {
38250
- return /* @__PURE__ */ jsx134(
38760
+ return /* @__PURE__ */ jsx139(
38251
38761
  "div",
38252
38762
  {
38253
38763
  role: "group",
@@ -38259,7 +38769,7 @@ function Field({
38259
38769
  );
38260
38770
  }
38261
38771
  function FieldContent({ className, ...props }) {
38262
- return /* @__PURE__ */ jsx134(
38772
+ return /* @__PURE__ */ jsx139(
38263
38773
  "div",
38264
38774
  {
38265
38775
  "data-slot": "field-content",
@@ -38275,7 +38785,7 @@ function FieldLabel({
38275
38785
  className,
38276
38786
  ...props
38277
38787
  }) {
38278
- return /* @__PURE__ */ jsx134(
38788
+ return /* @__PURE__ */ jsx139(
38279
38789
  Label,
38280
38790
  {
38281
38791
  "data-slot": "field-label",
@@ -38290,7 +38800,7 @@ function FieldLabel({
38290
38800
  );
38291
38801
  }
38292
38802
  function FieldTitle({ className, ...props }) {
38293
- return /* @__PURE__ */ jsx134(
38803
+ return /* @__PURE__ */ jsx139(
38294
38804
  "div",
38295
38805
  {
38296
38806
  "data-slot": "field-label",
@@ -38303,7 +38813,7 @@ function FieldTitle({ className, ...props }) {
38303
38813
  );
38304
38814
  }
38305
38815
  function FieldDescription({ className, ...props }) {
38306
- return /* @__PURE__ */ jsx134(
38816
+ return /* @__PURE__ */ jsx139(
38307
38817
  "p",
38308
38818
  {
38309
38819
  "data-slot": "field-description",
@@ -38322,7 +38832,7 @@ function FieldSeparator({
38322
38832
  className,
38323
38833
  ...props
38324
38834
  }) {
38325
- return /* @__PURE__ */ jsxs91(
38835
+ return /* @__PURE__ */ jsxs95(
38326
38836
  "div",
38327
38837
  {
38328
38838
  "data-slot": "field-separator",
@@ -38333,8 +38843,8 @@ function FieldSeparator({
38333
38843
  ),
38334
38844
  ...props,
38335
38845
  children: [
38336
- /* @__PURE__ */ jsx134(Separator2, { className: "absolute inset-0 top-1/2" }),
38337
- children && /* @__PURE__ */ jsx134(
38846
+ /* @__PURE__ */ jsx139(Separator2, { className: "absolute inset-0 top-1/2" }),
38847
+ children && /* @__PURE__ */ jsx139(
38338
38848
  "span",
38339
38849
  {
38340
38850
  className: "bg-background text-muted-foreground relative mx-auto block w-fit px-2",
@@ -38352,7 +38862,7 @@ function FieldError({
38352
38862
  errors,
38353
38863
  ...props
38354
38864
  }) {
38355
- const content = useMemo9(() => {
38865
+ const content = useMemo10(() => {
38356
38866
  if (children) {
38357
38867
  return children;
38358
38868
  }
@@ -38362,14 +38872,14 @@ function FieldError({
38362
38872
  if (errors?.length === 1 && errors[0]?.message) {
38363
38873
  return errors[0].message;
38364
38874
  }
38365
- return /* @__PURE__ */ jsx134("ul", { className: "ml-4 flex list-disc flex-col gap-1", children: errors.map(
38366
- (error, index) => error?.message && /* @__PURE__ */ jsx134("li", { children: error.message }, index)
38875
+ return /* @__PURE__ */ jsx139("ul", { className: "ml-4 flex list-disc flex-col gap-1", children: errors.map(
38876
+ (error, index) => error?.message && /* @__PURE__ */ jsx139("li", { children: error.message }, index)
38367
38877
  ) });
38368
38878
  }, [children, errors]);
38369
38879
  if (!content) {
38370
38880
  return null;
38371
38881
  }
38372
- return /* @__PURE__ */ jsx134(
38882
+ return /* @__PURE__ */ jsx139(
38373
38883
  "div",
38374
38884
  {
38375
38885
  role: "alert",
@@ -38383,9 +38893,9 @@ function FieldError({
38383
38893
 
38384
38894
  // src/components/ui/input-group.tsx
38385
38895
  import { cva as cva11 } from "class-variance-authority";
38386
- import { jsx as jsx135 } from "react/jsx-runtime";
38896
+ import { jsx as jsx140 } from "react/jsx-runtime";
38387
38897
  function InputGroup({ className, ...props }) {
38388
- return /* @__PURE__ */ jsx135(
38898
+ return /* @__PURE__ */ jsx140(
38389
38899
  "div",
38390
38900
  {
38391
38901
  "data-slot": "input-group",
@@ -38429,7 +38939,7 @@ function InputGroupAddon({
38429
38939
  align = "inline-start",
38430
38940
  ...props
38431
38941
  }) {
38432
- return /* @__PURE__ */ jsx135(
38942
+ return /* @__PURE__ */ jsx140(
38433
38943
  "div",
38434
38944
  {
38435
38945
  role: "group",
@@ -38469,7 +38979,7 @@ function InputGroupButton({
38469
38979
  size = "xs",
38470
38980
  ...props
38471
38981
  }) {
38472
- return /* @__PURE__ */ jsx135(
38982
+ return /* @__PURE__ */ jsx140(
38473
38983
  Button,
38474
38984
  {
38475
38985
  type,
@@ -38481,7 +38991,7 @@ function InputGroupButton({
38481
38991
  );
38482
38992
  }
38483
38993
  function InputGroupText({ className, ...props }) {
38484
- return /* @__PURE__ */ jsx135(
38994
+ return /* @__PURE__ */ jsx140(
38485
38995
  "span",
38486
38996
  {
38487
38997
  className: cn(
@@ -38496,7 +39006,7 @@ function InputGroupInput({
38496
39006
  className,
38497
39007
  ...props
38498
39008
  }) {
38499
- return /* @__PURE__ */ jsx135(
39009
+ return /* @__PURE__ */ jsx140(
38500
39010
  Input,
38501
39011
  {
38502
39012
  "data-slot": "input-group-control",
@@ -38512,7 +39022,7 @@ function InputGroupTextarea({
38512
39022
  className,
38513
39023
  ...props
38514
39024
  }) {
38515
- return /* @__PURE__ */ jsx135(
39025
+ return /* @__PURE__ */ jsx140(
38516
39026
  Textarea,
38517
39027
  {
38518
39028
  "data-slot": "input-group-control",
@@ -38528,9 +39038,9 @@ function InputGroupTextarea({
38528
39038
  // src/components/ui/item.tsx
38529
39039
  import { Slot as Slot5 } from "@radix-ui/react-slot";
38530
39040
  import { cva as cva12 } from "class-variance-authority";
38531
- import { jsx as jsx136 } from "react/jsx-runtime";
39041
+ import { jsx as jsx141 } from "react/jsx-runtime";
38532
39042
  function ItemGroup({ className, ...props }) {
38533
- return /* @__PURE__ */ jsx136(
39043
+ return /* @__PURE__ */ jsx141(
38534
39044
  "div",
38535
39045
  {
38536
39046
  role: "list",
@@ -38544,7 +39054,7 @@ function ItemSeparator({
38544
39054
  className,
38545
39055
  ...props
38546
39056
  }) {
38547
- return /* @__PURE__ */ jsx136(
39057
+ return /* @__PURE__ */ jsx141(
38548
39058
  Separator2,
38549
39059
  {
38550
39060
  "data-slot": "item-separator",
@@ -38582,7 +39092,7 @@ function Item8({
38582
39092
  ...props
38583
39093
  }) {
38584
39094
  const Comp = asChild ? Slot5 : "div";
38585
- return /* @__PURE__ */ jsx136(
39095
+ return /* @__PURE__ */ jsx141(
38586
39096
  Comp,
38587
39097
  {
38588
39098
  "data-slot": "item",
@@ -38613,7 +39123,7 @@ function ItemMedia({
38613
39123
  variant = "default",
38614
39124
  ...props
38615
39125
  }) {
38616
- return /* @__PURE__ */ jsx136(
39126
+ return /* @__PURE__ */ jsx141(
38617
39127
  "div",
38618
39128
  {
38619
39129
  "data-slot": "item-media",
@@ -38624,7 +39134,7 @@ function ItemMedia({
38624
39134
  );
38625
39135
  }
38626
39136
  function ItemContent({ className, ...props }) {
38627
- return /* @__PURE__ */ jsx136(
39137
+ return /* @__PURE__ */ jsx141(
38628
39138
  "div",
38629
39139
  {
38630
39140
  "data-slot": "item-content",
@@ -38637,7 +39147,7 @@ function ItemContent({ className, ...props }) {
38637
39147
  );
38638
39148
  }
38639
39149
  function ItemTitle({ className, ...props }) {
38640
- return /* @__PURE__ */ jsx136(
39150
+ return /* @__PURE__ */ jsx141(
38641
39151
  "div",
38642
39152
  {
38643
39153
  "data-slot": "item-title",
@@ -38650,7 +39160,7 @@ function ItemTitle({ className, ...props }) {
38650
39160
  );
38651
39161
  }
38652
39162
  function ItemDescription({ className, ...props }) {
38653
- return /* @__PURE__ */ jsx136(
39163
+ return /* @__PURE__ */ jsx141(
38654
39164
  "p",
38655
39165
  {
38656
39166
  "data-slot": "item-description",
@@ -38664,7 +39174,7 @@ function ItemDescription({ className, ...props }) {
38664
39174
  );
38665
39175
  }
38666
39176
  function ItemActions({ className, ...props }) {
38667
- return /* @__PURE__ */ jsx136(
39177
+ return /* @__PURE__ */ jsx141(
38668
39178
  "div",
38669
39179
  {
38670
39180
  "data-slot": "item-actions",
@@ -38674,7 +39184,7 @@ function ItemActions({ className, ...props }) {
38674
39184
  );
38675
39185
  }
38676
39186
  function ItemHeader({ className, ...props }) {
38677
- return /* @__PURE__ */ jsx136(
39187
+ return /* @__PURE__ */ jsx141(
38678
39188
  "div",
38679
39189
  {
38680
39190
  "data-slot": "item-header",
@@ -38687,7 +39197,7 @@ function ItemHeader({ className, ...props }) {
38687
39197
  );
38688
39198
  }
38689
39199
  function ItemFooter({ className, ...props }) {
38690
- return /* @__PURE__ */ jsx136(
39200
+ return /* @__PURE__ */ jsx141(
38691
39201
  "div",
38692
39202
  {
38693
39203
  "data-slot": "item-footer",
@@ -38701,9 +39211,9 @@ function ItemFooter({ className, ...props }) {
38701
39211
  }
38702
39212
 
38703
39213
  // src/components/ui/kbd.tsx
38704
- import { jsx as jsx137 } from "react/jsx-runtime";
39214
+ import { jsx as jsx142 } from "react/jsx-runtime";
38705
39215
  function Kbd({ className, ...props }) {
38706
- return /* @__PURE__ */ jsx137(
39216
+ return /* @__PURE__ */ jsx142(
38707
39217
  "kbd",
38708
39218
  {
38709
39219
  "data-slot": "kbd",
@@ -38718,7 +39228,7 @@ function Kbd({ className, ...props }) {
38718
39228
  );
38719
39229
  }
38720
39230
  function KbdGroup({ className, ...props }) {
38721
- return /* @__PURE__ */ jsx137(
39231
+ return /* @__PURE__ */ jsx142(
38722
39232
  "kbd",
38723
39233
  {
38724
39234
  "data-slot": "kbd-group",
@@ -38751,7 +39261,7 @@ function useIsMobile() {
38751
39261
  }
38752
39262
 
38753
39263
  // src/components/ui/sidebar.tsx
38754
- import { jsx as jsx138, jsxs as jsxs92 } from "react/jsx-runtime";
39264
+ import { jsx as jsx143, jsxs as jsxs96 } from "react/jsx-runtime";
38755
39265
  var SIDEBAR_COOKIE_NAME = "sidebar_state";
38756
39266
  var SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7;
38757
39267
  var SIDEBAR_WIDTH = "16rem";
@@ -38818,7 +39328,7 @@ var SidebarProvider = React100.forwardRef(
38818
39328
  }),
38819
39329
  [state, open, setOpen, isMobile, openMobile, setOpenMobile, toggleSidebar]
38820
39330
  );
38821
- return /* @__PURE__ */ jsx138(SidebarContext.Provider, { value: contextValue, children: /* @__PURE__ */ jsx138(TooltipProvider, { delayDuration: 0, children: /* @__PURE__ */ jsx138(
39331
+ return /* @__PURE__ */ jsx143(SidebarContext.Provider, { value: contextValue, children: /* @__PURE__ */ jsx143(TooltipProvider, { delayDuration: 0, children: /* @__PURE__ */ jsx143(
38822
39332
  "div",
38823
39333
  {
38824
39334
  style: {
@@ -38849,7 +39359,7 @@ var Sidebar = React100.forwardRef(
38849
39359
  }, ref) => {
38850
39360
  const { isMobile, state, openMobile, setOpenMobile } = useSidebar();
38851
39361
  if (collapsible === "none") {
38852
- return /* @__PURE__ */ jsx138(
39362
+ return /* @__PURE__ */ jsx143(
38853
39363
  "div",
38854
39364
  {
38855
39365
  className: cn(
@@ -38863,7 +39373,7 @@ var Sidebar = React100.forwardRef(
38863
39373
  );
38864
39374
  }
38865
39375
  if (isMobile) {
38866
- return /* @__PURE__ */ jsx138(Sheet2, { open: openMobile, onOpenChange: setOpenMobile, ...props, children: /* @__PURE__ */ jsxs92(
39376
+ return /* @__PURE__ */ jsx143(Sheet2, { open: openMobile, onOpenChange: setOpenMobile, ...props, children: /* @__PURE__ */ jsxs96(
38867
39377
  SheetContent,
38868
39378
  {
38869
39379
  "data-sidebar": "sidebar",
@@ -38874,16 +39384,16 @@ var Sidebar = React100.forwardRef(
38874
39384
  },
38875
39385
  side,
38876
39386
  children: [
38877
- /* @__PURE__ */ jsxs92(SheetHeader, { className: "sr-only", children: [
38878
- /* @__PURE__ */ jsx138(SheetTitle, { children: "Sidebar" }),
38879
- /* @__PURE__ */ jsx138(SheetDescription, { children: "Displays the mobile sidebar." })
39387
+ /* @__PURE__ */ jsxs96(SheetHeader, { className: "sr-only", children: [
39388
+ /* @__PURE__ */ jsx143(SheetTitle, { children: "Sidebar" }),
39389
+ /* @__PURE__ */ jsx143(SheetDescription, { children: "Displays the mobile sidebar." })
38880
39390
  ] }),
38881
- /* @__PURE__ */ jsx138("div", { className: "flex h-full w-full flex-col", children })
39391
+ /* @__PURE__ */ jsx143("div", { className: "flex h-full w-full flex-col", children })
38882
39392
  ]
38883
39393
  }
38884
39394
  ) });
38885
39395
  }
38886
- return /* @__PURE__ */ jsxs92(
39396
+ return /* @__PURE__ */ jsxs96(
38887
39397
  "div",
38888
39398
  {
38889
39399
  ref,
@@ -38893,7 +39403,7 @@ var Sidebar = React100.forwardRef(
38893
39403
  "data-variant": variant,
38894
39404
  "data-side": side,
38895
39405
  children: [
38896
- /* @__PURE__ */ jsx138(
39406
+ /* @__PURE__ */ jsx143(
38897
39407
  "div",
38898
39408
  {
38899
39409
  className: cn(
@@ -38904,7 +39414,7 @@ var Sidebar = React100.forwardRef(
38904
39414
  )
38905
39415
  }
38906
39416
  ),
38907
- /* @__PURE__ */ jsx138(
39417
+ /* @__PURE__ */ jsx143(
38908
39418
  "div",
38909
39419
  {
38910
39420
  className: cn(
@@ -38915,7 +39425,7 @@ var Sidebar = React100.forwardRef(
38915
39425
  className
38916
39426
  ),
38917
39427
  ...props,
38918
- children: /* @__PURE__ */ jsx138(
39428
+ children: /* @__PURE__ */ jsx143(
38919
39429
  "div",
38920
39430
  {
38921
39431
  "data-sidebar": "sidebar",
@@ -38933,7 +39443,7 @@ var Sidebar = React100.forwardRef(
38933
39443
  Sidebar.displayName = "Sidebar";
38934
39444
  var SidebarTrigger = React100.forwardRef(({ className, onClick, ...props }, ref) => {
38935
39445
  const { toggleSidebar } = useSidebar();
38936
- return /* @__PURE__ */ jsxs92(
39446
+ return /* @__PURE__ */ jsxs96(
38937
39447
  Button,
38938
39448
  {
38939
39449
  ref,
@@ -38947,8 +39457,8 @@ var SidebarTrigger = React100.forwardRef(({ className, onClick, ...props }, ref)
38947
39457
  },
38948
39458
  ...props,
38949
39459
  children: [
38950
- /* @__PURE__ */ jsx138(PanelLeft, {}),
38951
- /* @__PURE__ */ jsx138("span", { className: "sr-only", children: "Toggle Sidebar" })
39460
+ /* @__PURE__ */ jsx143(PanelLeft, {}),
39461
+ /* @__PURE__ */ jsx143("span", { className: "sr-only", children: "Toggle Sidebar" })
38952
39462
  ]
38953
39463
  }
38954
39464
  );
@@ -38956,7 +39466,7 @@ var SidebarTrigger = React100.forwardRef(({ className, onClick, ...props }, ref)
38956
39466
  SidebarTrigger.displayName = "SidebarTrigger";
38957
39467
  var SidebarRail = React100.forwardRef(({ className, ...props }, ref) => {
38958
39468
  const { toggleSidebar } = useSidebar();
38959
- return /* @__PURE__ */ jsx138(
39469
+ return /* @__PURE__ */ jsx143(
38960
39470
  "button",
38961
39471
  {
38962
39472
  ref,
@@ -38980,7 +39490,7 @@ var SidebarRail = React100.forwardRef(({ className, ...props }, ref) => {
38980
39490
  });
38981
39491
  SidebarRail.displayName = "SidebarRail";
38982
39492
  var SidebarInset = React100.forwardRef(({ className, ...props }, ref) => {
38983
- return /* @__PURE__ */ jsx138(
39493
+ return /* @__PURE__ */ jsx143(
38984
39494
  "main",
38985
39495
  {
38986
39496
  ref,
@@ -38995,7 +39505,7 @@ var SidebarInset = React100.forwardRef(({ className, ...props }, ref) => {
38995
39505
  });
38996
39506
  SidebarInset.displayName = "SidebarInset";
38997
39507
  var SidebarInput = React100.forwardRef(({ className, ...props }, ref) => {
38998
- return /* @__PURE__ */ jsx138(
39508
+ return /* @__PURE__ */ jsx143(
38999
39509
  Input,
39000
39510
  {
39001
39511
  ref,
@@ -39010,7 +39520,7 @@ var SidebarInput = React100.forwardRef(({ className, ...props }, ref) => {
39010
39520
  });
39011
39521
  SidebarInput.displayName = "SidebarInput";
39012
39522
  var SidebarHeader = React100.forwardRef(({ className, ...props }, ref) => {
39013
- return /* @__PURE__ */ jsx138(
39523
+ return /* @__PURE__ */ jsx143(
39014
39524
  "div",
39015
39525
  {
39016
39526
  ref,
@@ -39022,7 +39532,7 @@ var SidebarHeader = React100.forwardRef(({ className, ...props }, ref) => {
39022
39532
  });
39023
39533
  SidebarHeader.displayName = "SidebarHeader";
39024
39534
  var SidebarFooter = React100.forwardRef(({ className, ...props }, ref) => {
39025
- return /* @__PURE__ */ jsx138(
39535
+ return /* @__PURE__ */ jsx143(
39026
39536
  "div",
39027
39537
  {
39028
39538
  ref,
@@ -39034,7 +39544,7 @@ var SidebarFooter = React100.forwardRef(({ className, ...props }, ref) => {
39034
39544
  });
39035
39545
  SidebarFooter.displayName = "SidebarFooter";
39036
39546
  var SidebarSeparator = React100.forwardRef(({ className, ...props }, ref) => {
39037
- return /* @__PURE__ */ jsx138(
39547
+ return /* @__PURE__ */ jsx143(
39038
39548
  Separator2,
39039
39549
  {
39040
39550
  ref,
@@ -39046,7 +39556,7 @@ var SidebarSeparator = React100.forwardRef(({ className, ...props }, ref) => {
39046
39556
  });
39047
39557
  SidebarSeparator.displayName = "SidebarSeparator";
39048
39558
  var SidebarContent = React100.forwardRef(({ className, ...props }, ref) => {
39049
- return /* @__PURE__ */ jsx138(
39559
+ return /* @__PURE__ */ jsx143(
39050
39560
  "div",
39051
39561
  {
39052
39562
  ref,
@@ -39061,7 +39571,7 @@ var SidebarContent = React100.forwardRef(({ className, ...props }, ref) => {
39061
39571
  });
39062
39572
  SidebarContent.displayName = "SidebarContent";
39063
39573
  var SidebarGroup = React100.forwardRef(({ className, ...props }, ref) => {
39064
- return /* @__PURE__ */ jsx138(
39574
+ return /* @__PURE__ */ jsx143(
39065
39575
  "div",
39066
39576
  {
39067
39577
  ref,
@@ -39074,7 +39584,7 @@ var SidebarGroup = React100.forwardRef(({ className, ...props }, ref) => {
39074
39584
  SidebarGroup.displayName = "SidebarGroup";
39075
39585
  var SidebarGroupLabel = React100.forwardRef(({ className, asChild = false, ...props }, ref) => {
39076
39586
  const Comp = asChild ? Slot6 : "div";
39077
- return /* @__PURE__ */ jsx138(
39587
+ return /* @__PURE__ */ jsx143(
39078
39588
  Comp,
39079
39589
  {
39080
39590
  ref,
@@ -39091,7 +39601,7 @@ var SidebarGroupLabel = React100.forwardRef(({ className, asChild = false, ...pr
39091
39601
  SidebarGroupLabel.displayName = "SidebarGroupLabel";
39092
39602
  var SidebarGroupAction = React100.forwardRef(({ className, asChild = false, ...props }, ref) => {
39093
39603
  const Comp = asChild ? Slot6 : "button";
39094
- return /* @__PURE__ */ jsx138(
39604
+ return /* @__PURE__ */ jsx143(
39095
39605
  Comp,
39096
39606
  {
39097
39607
  ref,
@@ -39108,7 +39618,7 @@ var SidebarGroupAction = React100.forwardRef(({ className, asChild = false, ...p
39108
39618
  );
39109
39619
  });
39110
39620
  SidebarGroupAction.displayName = "SidebarGroupAction";
39111
- var SidebarGroupContent = React100.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx138(
39621
+ var SidebarGroupContent = React100.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx143(
39112
39622
  "div",
39113
39623
  {
39114
39624
  ref,
@@ -39118,7 +39628,7 @@ var SidebarGroupContent = React100.forwardRef(({ className, ...props }, ref) =>
39118
39628
  }
39119
39629
  ));
39120
39630
  SidebarGroupContent.displayName = "SidebarGroupContent";
39121
- var SidebarMenu = React100.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx138(
39631
+ var SidebarMenu = React100.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx143(
39122
39632
  "ul",
39123
39633
  {
39124
39634
  ref,
@@ -39128,7 +39638,7 @@ var SidebarMenu = React100.forwardRef(({ className, ...props }, ref) => /* @__PU
39128
39638
  }
39129
39639
  ));
39130
39640
  SidebarMenu.displayName = "SidebarMenu";
39131
- var SidebarMenuItem = React100.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx138(
39641
+ var SidebarMenuItem = React100.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx143(
39132
39642
  "li",
39133
39643
  {
39134
39644
  ref,
@@ -39170,7 +39680,7 @@ var SidebarMenuButton = React100.forwardRef(
39170
39680
  }, ref) => {
39171
39681
  const Comp = asChild ? Slot6 : "button";
39172
39682
  const { isMobile, state } = useSidebar();
39173
- const button = /* @__PURE__ */ jsx138(
39683
+ const button = /* @__PURE__ */ jsx143(
39174
39684
  Comp,
39175
39685
  {
39176
39686
  ref,
@@ -39189,9 +39699,9 @@ var SidebarMenuButton = React100.forwardRef(
39189
39699
  children: tooltip
39190
39700
  };
39191
39701
  }
39192
- return /* @__PURE__ */ jsxs92(Tooltip, { children: [
39193
- /* @__PURE__ */ jsx138(TooltipTrigger, { asChild: true, children: button }),
39194
- /* @__PURE__ */ jsx138(
39702
+ return /* @__PURE__ */ jsxs96(Tooltip, { children: [
39703
+ /* @__PURE__ */ jsx143(TooltipTrigger, { asChild: true, children: button }),
39704
+ /* @__PURE__ */ jsx143(
39195
39705
  TooltipContent,
39196
39706
  {
39197
39707
  side: "right",
@@ -39206,7 +39716,7 @@ var SidebarMenuButton = React100.forwardRef(
39206
39716
  SidebarMenuButton.displayName = "SidebarMenuButton";
39207
39717
  var SidebarMenuAction = React100.forwardRef(({ className, asChild = false, showOnHover = false, ...props }, ref) => {
39208
39718
  const Comp = asChild ? Slot6 : "button";
39209
- return /* @__PURE__ */ jsx138(
39719
+ return /* @__PURE__ */ jsx143(
39210
39720
  Comp,
39211
39721
  {
39212
39722
  ref,
@@ -39227,7 +39737,7 @@ var SidebarMenuAction = React100.forwardRef(({ className, asChild = false, showO
39227
39737
  );
39228
39738
  });
39229
39739
  SidebarMenuAction.displayName = "SidebarMenuAction";
39230
- var SidebarMenuBadge = React100.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx138(
39740
+ var SidebarMenuBadge = React100.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx143(
39231
39741
  "div",
39232
39742
  {
39233
39743
  ref,
@@ -39249,7 +39759,7 @@ var SidebarMenuSkeleton = React100.forwardRef(({ className, showIcon = false, ..
39249
39759
  const width = React100.useMemo(() => {
39250
39760
  return `${Math.floor(Math.random() * 40) + 50}%`;
39251
39761
  }, []);
39252
- return /* @__PURE__ */ jsxs92(
39762
+ return /* @__PURE__ */ jsxs96(
39253
39763
  "div",
39254
39764
  {
39255
39765
  ref,
@@ -39257,14 +39767,14 @@ var SidebarMenuSkeleton = React100.forwardRef(({ className, showIcon = false, ..
39257
39767
  className: cn("flex h-8 items-center gap-2 rounded-md px-2", className),
39258
39768
  ...props,
39259
39769
  children: [
39260
- showIcon && /* @__PURE__ */ jsx138(
39770
+ showIcon && /* @__PURE__ */ jsx143(
39261
39771
  Skeleton,
39262
39772
  {
39263
39773
  className: "size-4 rounded-md",
39264
39774
  "data-sidebar": "menu-skeleton-icon"
39265
39775
  }
39266
39776
  ),
39267
- /* @__PURE__ */ jsx138(
39777
+ /* @__PURE__ */ jsx143(
39268
39778
  Skeleton,
39269
39779
  {
39270
39780
  className: "h-4 max-w-[--skeleton-width] flex-1",
@@ -39279,7 +39789,7 @@ var SidebarMenuSkeleton = React100.forwardRef(({ className, showIcon = false, ..
39279
39789
  );
39280
39790
  });
39281
39791
  SidebarMenuSkeleton.displayName = "SidebarMenuSkeleton";
39282
- var SidebarMenuSub = React100.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx138(
39792
+ var SidebarMenuSub = React100.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx143(
39283
39793
  "ul",
39284
39794
  {
39285
39795
  ref,
@@ -39293,11 +39803,11 @@ var SidebarMenuSub = React100.forwardRef(({ className, ...props }, ref) => /* @_
39293
39803
  }
39294
39804
  ));
39295
39805
  SidebarMenuSub.displayName = "SidebarMenuSub";
39296
- var SidebarMenuSubItem = React100.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsx138("li", { ref, ...props }));
39806
+ var SidebarMenuSubItem = React100.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsx143("li", { ref, ...props }));
39297
39807
  SidebarMenuSubItem.displayName = "SidebarMenuSubItem";
39298
39808
  var SidebarMenuSubButton = React100.forwardRef(({ asChild = false, size = "md", isActive, className, ...props }, ref) => {
39299
39809
  const Comp = asChild ? Slot6 : "a";
39300
- return /* @__PURE__ */ jsx138(
39810
+ return /* @__PURE__ */ jsx143(
39301
39811
  Comp,
39302
39812
  {
39303
39813
  ref,
@@ -39321,20 +39831,20 @@ SidebarMenuSubButton.displayName = "SidebarMenuSubButton";
39321
39831
  // src/components/ui/sonner.tsx
39322
39832
  import { useTheme } from "next-themes";
39323
39833
  import { Toaster as Sonner } from "sonner";
39324
- import { jsx as jsx139 } from "react/jsx-runtime";
39834
+ import { jsx as jsx144 } from "react/jsx-runtime";
39325
39835
  var Toaster = ({ ...props }) => {
39326
39836
  const { theme = "system" } = useTheme();
39327
- return /* @__PURE__ */ jsx139(
39837
+ return /* @__PURE__ */ jsx144(
39328
39838
  Sonner,
39329
39839
  {
39330
39840
  theme,
39331
39841
  className: "toaster group",
39332
39842
  icons: {
39333
- success: /* @__PURE__ */ jsx139(CircleCheck, { className: "h-4 w-4" }),
39334
- info: /* @__PURE__ */ jsx139(Info, { className: "h-4 w-4" }),
39335
- warning: /* @__PURE__ */ jsx139(TriangleAlert, { className: "h-4 w-4" }),
39336
- error: /* @__PURE__ */ jsx139(OctagonX, { className: "h-4 w-4" }),
39337
- loading: /* @__PURE__ */ jsx139(LoaderCircle, { className: "h-4 w-4 animate-spin" })
39843
+ success: /* @__PURE__ */ jsx144(CircleCheck, { className: "h-4 w-4" }),
39844
+ info: /* @__PURE__ */ jsx144(Info, { className: "h-4 w-4" }),
39845
+ warning: /* @__PURE__ */ jsx144(TriangleAlert, { className: "h-4 w-4" }),
39846
+ error: /* @__PURE__ */ jsx144(OctagonX, { className: "h-4 w-4" }),
39847
+ loading: /* @__PURE__ */ jsx144(LoaderCircle, { className: "h-4 w-4 animate-spin" })
39338
39848
  },
39339
39849
  toastOptions: {
39340
39850
  classNames: {
@@ -39352,24 +39862,24 @@ var Toaster = ({ ...props }) => {
39352
39862
  // src/components/ui/toggle-group.tsx
39353
39863
  import * as React101 from "react";
39354
39864
  import * as ToggleGroupPrimitive from "@radix-ui/react-toggle-group";
39355
- import { jsx as jsx140 } from "react/jsx-runtime";
39865
+ import { jsx as jsx145 } from "react/jsx-runtime";
39356
39866
  var ToggleGroupContext = React101.createContext({
39357
39867
  size: "default",
39358
39868
  variant: "default"
39359
39869
  });
39360
- var ToggleGroup = React101.forwardRef(({ className, variant, size, children, ...props }, ref) => /* @__PURE__ */ jsx140(
39870
+ var ToggleGroup = React101.forwardRef(({ className, variant, size, children, ...props }, ref) => /* @__PURE__ */ jsx145(
39361
39871
  ToggleGroupPrimitive.Root,
39362
39872
  {
39363
39873
  ref,
39364
39874
  className: cn("flex items-center justify-center gap-1", className),
39365
39875
  ...props,
39366
- children: /* @__PURE__ */ jsx140(ToggleGroupContext.Provider, { value: { variant, size }, children })
39876
+ children: /* @__PURE__ */ jsx145(ToggleGroupContext.Provider, { value: { variant, size }, children })
39367
39877
  }
39368
39878
  ));
39369
39879
  ToggleGroup.displayName = ToggleGroupPrimitive.Root.displayName;
39370
39880
  var ToggleGroupItem = React101.forwardRef(({ className, children, variant, size, ...props }, ref) => {
39371
39881
  const context = React101.useContext(ToggleGroupContext);
39372
- return /* @__PURE__ */ jsx140(
39882
+ return /* @__PURE__ */ jsx145(
39373
39883
  ToggleGroupPrimitive.Item,
39374
39884
  {
39375
39885
  ref,
@@ -39388,7 +39898,7 @@ var ToggleGroupItem = React101.forwardRef(({ className, children, variant, size,
39388
39898
  ToggleGroupItem.displayName = ToggleGroupPrimitive.Item.displayName;
39389
39899
 
39390
39900
  // src/render/PXEngineRenderer.tsx
39391
- import { jsx as jsx141, jsxs as jsxs93 } from "react/jsx-runtime";
39901
+ import { jsx as jsx146, jsxs as jsxs97 } from "react/jsx-runtime";
39392
39902
  var CONTEXT_DEPENDENT_COMPONENTS = /* @__PURE__ */ new Set([
39393
39903
  // Form components - require FormField + FormItem context
39394
39904
  "FormLabel",
@@ -39480,24 +39990,24 @@ var COMPONENT_SUGGESTIONS = {
39480
39990
  };
39481
39991
  var renderContextDependentError = (componentName, normalizedName, key) => {
39482
39992
  const suggestion = COMPONENT_SUGGESTIONS[normalizedName] || `${componentName}Atom (if available)`;
39483
- return /* @__PURE__ */ jsxs93(
39993
+ return /* @__PURE__ */ jsxs97(
39484
39994
  "div",
39485
39995
  {
39486
39996
  className: "p-4 border-2 border-amber-500/50 rounded-lg bg-amber-50/80 space-y-2 my-2",
39487
39997
  children: [
39488
- /* @__PURE__ */ jsxs93("div", { className: "flex items-start gap-2", children: [
39489
- /* @__PURE__ */ jsx141("span", { className: "text-amber-600 font-bold text-lg", children: "\u26A0\uFE0F" }),
39490
- /* @__PURE__ */ jsxs93("div", { className: "flex-1", children: [
39491
- /* @__PURE__ */ jsxs93("p", { className: "text-sm font-semibold text-amber-900", children: [
39998
+ /* @__PURE__ */ jsxs97("div", { className: "flex items-start gap-2", children: [
39999
+ /* @__PURE__ */ jsx146("span", { className: "text-amber-600 font-bold text-lg", children: "\u26A0\uFE0F" }),
40000
+ /* @__PURE__ */ jsxs97("div", { className: "flex-1", children: [
40001
+ /* @__PURE__ */ jsxs97("p", { className: "text-sm font-semibold text-amber-900", children: [
39492
40002
  "Invalid Component: ",
39493
40003
  componentName
39494
40004
  ] }),
39495
- /* @__PURE__ */ jsx141("p", { className: "text-xs text-amber-700 mt-1", children: "This component requires React Context and cannot be rendered directly in schemas." })
40005
+ /* @__PURE__ */ jsx146("p", { className: "text-xs text-amber-700 mt-1", children: "This component requires React Context and cannot be rendered directly in schemas." })
39496
40006
  ] })
39497
40007
  ] }),
39498
- /* @__PURE__ */ jsxs93("div", { className: "bg-white/60 p-3 rounded border border-amber-200", children: [
39499
- /* @__PURE__ */ jsx141("p", { className: "text-xs font-semibold text-gray-700 mb-1.5", children: "\u2713 Use instead:" }),
39500
- /* @__PURE__ */ jsx141("code", { className: "text-xs text-blue-700 bg-blue-50 px-2 py-1 rounded", children: suggestion })
40008
+ /* @__PURE__ */ jsxs97("div", { className: "bg-white/60 p-3 rounded border border-amber-200", children: [
40009
+ /* @__PURE__ */ jsx146("p", { className: "text-xs font-semibold text-gray-700 mb-1.5", children: "\u2713 Use instead:" }),
40010
+ /* @__PURE__ */ jsx146("code", { className: "text-xs text-blue-700 bg-blue-50 px-2 py-1 rounded", children: suggestion })
39501
40011
  ] })
39502
40012
  ]
39503
40013
  },
@@ -39656,7 +40166,7 @@ var PXEngineRenderer = ({
39656
40166
  const isAtomWithRenderProp = ATOMS_WITH_RENDER.has(atomName);
39657
40167
  const finalStyle = { ...dynamicStyle, ...finalProps.style || {} };
39658
40168
  if (isAtomWithRenderProp) {
39659
- return /* @__PURE__ */ jsx141(
40169
+ return /* @__PURE__ */ jsx146(
39660
40170
  TargetComponent,
39661
40171
  {
39662
40172
  ...finalProps,
@@ -39668,7 +40178,7 @@ var PXEngineRenderer = ({
39668
40178
  uniqueKey
39669
40179
  );
39670
40180
  } else {
39671
- return /* @__PURE__ */ jsx141(
40181
+ return /* @__PURE__ */ jsx146(
39672
40182
  TargetComponent,
39673
40183
  {
39674
40184
  ...finalProps,
@@ -39680,7 +40190,7 @@ var PXEngineRenderer = ({
39680
40190
  );
39681
40191
  }
39682
40192
  };
39683
- return /* @__PURE__ */ jsx141("div", { className: "px-engine-root relative w-full h-full", children: renderRecursive(root) });
40193
+ return /* @__PURE__ */ jsx146("div", { className: "px-engine-root relative w-full h-full", children: renderRecursive(root) });
39684
40194
  };
39685
40195
  export {
39686
40196
  Accordion,
@@ -39774,9 +40284,14 @@ export {
39774
40284
  CountrySelectDisplay,
39775
40285
  CountrySelectEdit,
39776
40286
  CreatorActionHeader,
40287
+ CreatorCompactView,
39777
40288
  CreatorGridCard,
40289
+ CreatorImageList,
39778
40290
  CreatorProfileSummary,
40291
+ CreatorProgressBar,
39779
40292
  CreatorSearch,
40293
+ CreatorWidget,
40294
+ CreatorWidgetSkeleton,
39780
40295
  DataGrid,
39781
40296
  Dialog,
39782
40297
  DialogAtom,
@@ -39954,7 +40469,8 @@ export {
39954
40469
  UIComponentSelector,
39955
40470
  VideoAtom,
39956
40471
  WorkflowVisualizer,
39957
- cn
40472
+ cn,
40473
+ useCreatorWidgetPolling
39958
40474
  };
39959
40475
  /*! Bundled license information:
39960
40476